KR20090008714A - 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템 - Google Patents

단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템 Download PDF

Info

Publication number
KR20090008714A
KR20090008714A KR1020070071886A KR20070071886A KR20090008714A KR 20090008714 A KR20090008714 A KR 20090008714A KR 1020070071886 A KR1020070071886 A KR 1020070071886A KR 20070071886 A KR20070071886 A KR 20070071886A KR 20090008714 A KR20090008714 A KR 20090008714A
Authority
KR
South Korea
Prior art keywords
fuzzy logic
fuzzy
rule
strategy
information
Prior art date
Application number
KR1020070071886A
Other languages
English (en)
Other versions
KR100913030B1 (ko
Inventor
이원희
김태용
Original Assignee
중앙대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 중앙대학교 산학협력단 filed Critical 중앙대학교 산학협력단
Priority to KR1020070071886A priority Critical patent/KR100913030B1/ko
Publication of KR20090008714A publication Critical patent/KR20090008714A/ko
Application granted granted Critical
Publication of KR100913030B1 publication Critical patent/KR100913030B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템을 개시한다.
단계별 퍼지 로직을 이용한 게임 전략 시스템은 맵(map) 정보와 에이전트(agent) 정보에 따른 전략 정보를 퍼지(fuzzy)화하는 퍼지 로직을 제공하는 퍼지 로직부; 및, 상기 퍼지 로직에 의한 전략 정보를 기초로 사용자 에이전트의 전략적 위치를 결정하는 전략위치 생성부를 포함한다.
온라인 게임, 대전 게임, 인공지능 캐릭터, 에이전트, 단계적 퍼지, 퍼지 로직, 퍼지화(fuzzification), 퍼지추론 규칙(fuzzy inference rules), 비퍼지화(defuzzification), 전략적 위치

Description

단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템{METHOD AND SYSTEM FOR GAME STRATEGY USING CASCADE-FUZZY LOSIC}
본 발명은 게임 시스템에 관한 것으로, 보다 상세하게는 높은 수준의 인공지능 캐릭터를 생성하여 게임을 진행하기 위한 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템에 관한 것이다.
최근 정보통신 분야의 비약적인 발전으로 업무의 효율을 획기적으로 증진시킬 뿐만 아니라, 우리의 일상적인 생활 방식도 크게 변화하고 있다. 초고속 망의 급속한 보급으로 인하여 많은 사람들이 인터넷을 이용하고 있으며, 또한, 인터넷 사용자에게 컴퓨터 통신망을 이용한 다양한 온라인 게임 서비스가 제공되고 있다.
일반적으로 온라인 게임은 게임에서 사용되는 배경 및 캐릭터를 담당하는 그래픽 이미지 분야, 배경음악 및 효과음 등을 담당하는 사운드 분야, 게임의 진행을 위하여 상기 그래픽 이미지 및 사운드를 호출하는 프로그램 분야 등으로 이루어지는데, 게임제작 도구는 상기 각 분야를 효과적으로 결합할 수 있도록 하여 사용자의 편의를 도모하고자 하는 것이다.
상기 게임제작 도구는 게임 모델링 과정과, 모델링 된 게임의 분석과정과, 그리고 모델링 된 게임의 소스 코드 전환과정을 포함하고 있으며, 최근 게임 모델링 방법에 인공지능 기법의 접목이 시도되고 있다.
기존의 인공지능 기법은 유한 상태 머신(finite state machine)(이하, FSM이라 칭함), 인공생명, 신경 회로망, 퍼지 로직(fuzzy logic) 등이 주로 이용되고 있다.
FSM은 상태들 간의 전이에 의해 통제되는 그래프 내에 유한개의 상태들이 연결되어 있는 규칙기반 시스템으로서, 현재 가장 널리 사용되는 인공지능 기법이다. FSM은 if-else나 switch-case문장만으로 구현할 수 있기 때문에 이해하기 쉽고 프로그램으로 구현하기 쉬워 널리 사용된다. 예를 들어, 캐릭터가 이동 중에 적을 발견하게 되면, 이동 상태에서 추적 상태로 바뀌어 발견한 적을 쫓아간다. 그리고 적이 일정한 거리 내에 들어오면, 공격 상태로 바뀌어 적을 공격한다. 이와 같이 FSM을 이용하면 구현이 쉽고 행동이 정확히 정의되는 장점이 있으나 게임의 진행이 미리 정의된 방식으로만 동작하는 단점이 있다. 즉 게임의 상대방이 FSM으로 구현된 경우 상대방의 행동 양식이 일정하기 때문에 일정시간 게임을 한 후에는 쉽게 예측할 수 있어 게임의 흥미를 반감시키는 요인으로 작용한다.
인공생명이란 생명체가 나타내는 현상을 컴퓨터, 로봇 등과 같은 인공 매체 상에 재현함으로써 생명을 일반적인 특성에 대해 연구하는 학문이다. 생물학이 생물 현상에 대해 분석적인 방법으로 접근하였다면, 인공생명은 종합적인 방법으로 접근한다. 인공생명의 기본적인 특성인 적응성, 창발성 등을 게임에 적용하게 되면 복잡한 환경이나 사용자의 조작에 적응하거나 전혀 예상치 못한 창발적인 행동 으로 인하여 게임의 흥미를 높일 수 있다. 그러나, 인공생명의 예측 불가능한 특성 때문에 제한적으로 사용되어 왔으며 아직 기초적인 단계에 머물고 있다.
신경회로망은 인간의 신경 체제를 모사한 것으로서 수많은 콤포넌트가 연결된 구조를 가지고, 입력 데이터의 패턴 인식에 기반하여 출력을 산출한다. 신경회로망이 게임에 적용되었을 때의 가장 큰 장점으로는, 신경회로망은 학습능력을 가지고 있기 때문에 게임을 진행하면서 계속적으로 지능이 향상될 수 있다는 점이다. 그래서 지금까지 신경회로망을 게임에 적용하려는 시도가 많이 진행되고 있는데, 대부분이 오목, Tic-Tac-Toe 등 보드 게임이 주류를 이룬다. 그 이유는 미리 학습을 시켜놔야 하기 때문으로 예상되는 패턴을 미리 학습시키기에는 보드게임이 수월하기 때문이다. 그러나, 대전게임 같은 액션게임에서는 상황패턴을 유저가 학습시킨다면 굉장히 많은 시간을 필요로 한다.
퍼지 로직의 경우에는 입력과 출력에 퍼지 함수를 적용하여 어느 정도 무작위적으로 동작할 수 있도록 한다. 무작위 요소가 포함되어 있기 때문에 게임에서의 상대방이 동일한 상황에서 다른 행동을 할 가능성이 있어서 상대방의 행동을 예측하기가 어렵게 된다. 즉, 항상 같은 패턴의 행동이 나오지 않게 하여 상대방이 예측하기 힘들게 하고 상황판단을 사람처럼 한다고 느끼게 하는 특성을 가지고 있다.
기존의 인공지능기법은 대부분이 보드 게임 등과 같이 게임 전체의 상황을 인식하여 대처하는 게임을 위한 것으로 게임 설계자가 모든 상황을 미리 규정해 설계하고 일일이 코딩해야 하는 단점이 있다. 또한 이렇게 제작된 게임이라고 할지라도 스스로 환경을 인식하여 적응하는 능력이 없어 상황이나 게임의 규칙이 변화하면 다시 코딩을 해야 한다.
그리고, 기존의 인공지능 기법을 이용하여 캐릭터에 지능을 부여하였을 경우 그 지능을 향상시키거나 갱신하기 위해서는 프로그램을 새로 만들어야 하는 문제가 있다.
최근 인공생명 또는 신경 회로망 등을 이용하여 게임에 지능을 부여하려는 시도가 있으나, 이러한 시도들은 주로 인공생명에 근간을 둔 것으로서 게임분야에 적용하기에는 아직 기초적인 단계에 머물고 있다.
또한, 대전 게임에는 주로 FSM을 사용하여 캐릭터에 지능을 부여하기 때문에 사용자가 해당 캐릭터와 대전할 경우 캐릭터의 패턴 등을 쉽게 파악하여 게임에 대한 싫증을 느끼게 되는 문제가 있다.
이에 대하여, 본 발명은 대전 게임에서 높은 수준으로 게임을 수행하는 캐릭터를 생성하기 위한 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템을 제공한다.
본 발명은 캐릭터의 지능 향상이나 갱신이 보다 용이한 게임 전략 방법 및 그 시스템을 제공한다.
본 발명은 게임에 대한 사용자의 흥미를 극대화시키고 개발자들이 손쉽게 게임 인공지능을 구현할 수 있도록 한 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템을 제공한다.
본 발명은 맵(map) 정보와 에이전트(agent) 정보에 따른 전략 정보를 퍼지(fuzzy)화하는 퍼지 로직을 제공하는 퍼지 로직부; 및, 상기 퍼지 로직에 의한 전략 정보를 기초로 사용자 에이전트의 전략적 위치를 결정하는 전략위치 생성부를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 시스템을 제공한다.
본 발명은 맵 정보와 에이전트 정보에 따른 전략 정보를 정의하는 단계; 및, 상기 정의된 전략 정보를 기초로 단계적 퍼지 로직에 의해 사용자 에이전트의 전략적 위치를 결정하는 단계를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 방법을 제공한다.
본 발명에 의하면, 인공지능 캐릭터 간의 대전 게임에서 사용자 에이전트가 상대보다 최적의 전략 위치를 선점하여 게임을 유지하게 이끌어 갈 수 있도록 한 게임 전략 모듈을 제공한다.
본 발명에 따른 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템은 규칙요소에 대한 퍼지 값을 다양하게 적용하여 다양한 수준의 인공지능 캐릭터를 구현할 뿐 아니라, 캐릭터의 행동양식에 따른 추론 규칙을 조정함으로써 예측 불가능한 기준으로 움직이는 인공지능 캐릭터를 구현할 수 있다.
따라서, 본 발명은 높은 수준의 게임을 수행하는 인공지능 캐릭터로 하여금 게임에 대한 사용자의 흥미를 지속적으로 유지하고 극대화시킬 수 있는 효과가 있 다.
그리고, 본 발명은 단계적 퍼지 로직을 사용함으로써 높은 수준의 게임을 수행하는 인공지능 캐릭터를 간단하게 프로그램 할 수 있어 개발의 편리성과 효율성을 향상시킬 수 있다.
이하에서는, 첨부한 도면을 참조하여 본 발명에 따른 단계적 퍼지 로직을 이용한 게임 전략 시스템 및 게임 전략 방법을 설명한다.
도1을 참조하여 본 발명의 단계적 퍼지 로직을 이용한 게임 전략 시스템을 설명한다. 도1은 단계적 퍼지 로직을 이용한 게임 전략 모듈의 구성을 도시한 것이다.
인터넷을 통하여 온라인 게임을 제공하는 게임 시스템은, 게임을 제공하는 서버 장치(미도시)에 접속하여 사용자가 원하는 게임을 구동하는 게임 구동장치인 게임 인터페이스(110)를 포함한다.
본 발명에 따른 게임 시스템은, 인공지능 캐릭터 간의 대전 게임에서 에이전트에 대한 최적의 전략 위치를 제공할 수 있도록 단계적 퍼지 로직을 이용하여 맵(대전 영역)의 각 셀에 대한 전략적 위치 값을 얻기 위한 전략 모듈(130)을 제공한다.
대전 게임에서 에이전트에 대한 최적의 전략적 위치를 찾아야 하는데, 이때, 전략적 위치는 우선 상대 에이전트의 공격을 피할 수 있고 상대와 교전시 이길 수 있는 위치적 조건을 만족시켜야 한다. 이러한 조건을 고려하여 본 발명의 전략 모듈은 전략적 위치를 산출하기 위한 요소(이하, '전략 정보'라 칭함)로 엄폐물과의 관계(obstacle-select), 공격 가능 정도(attack-first), 안전도(safety)를 사용한다.
상기 전략 정보를 도출하기 위해서는 맵 정보와 에이전트 정보에 대한 각종 규칙 요소(rule factor)를 사용하게 되는데, 상기 맵 정보로는 셀의 위치 정보와, 각 셀에 대한 지형정보(높은-지형 또는 낮은-지형) 등을 이용하고, 상기 에이전트 정보로는 에이전트의 에너지, 공격력, 방어력, 사정거리, 시야범위, 이동속도, 공격지연, 현재위치, 생존한 아군의 수, 생존한 적군의 수, 목포 에이전트와의 거리, 목표 에이전트를 기준으로 주변의 아군/적군 수, 현재위치를 기준으로 주변의 아군/적군 수, 시야 내의 아군/적군 수 등을 이용할 수 있다.
상기 전략 모듈(130)은 상기 게임 인터페이스(110)를 통해 구동하고 있는 대전 게임에 대한 상기한 규칙요소를 저장하기 위한 메모리(131)와, 상기 규칙요소를 기초로 상기 전략 정보(엄폐물과의 관계, 공격 가능 정도, 안전도)에 대한 퍼지 로직을 단계적으로 수행하는 퍼지 로직부(135)와, 각 전략 정보의 퍼지 값으로부터 전략적 위치 값을 산출하고 사용자 에이전트의 최적의 전략적 위치를 상기 게임 인터페이스(110)에 전달하기 위한 전략 위치 생성부(137)를 포함한다.
그리고, 상기 메모리(131)에 저장된 규칙요소 중 각 전략 정보를 도출하기 위해 필요한 규칙 요소를 선택적으로 상기 퍼지 로직부(135)에 입력하는 규칙 선택부(133)를 더 포함한다. 상기 규칙 선택부(133)는 에이전트의 행동양식에 따라 엄폐물과의 관계, 공격 가능 정도, 안전도의 퍼지화 과정에서 추론 규칙을 정할 때 결과 값을 행동양식에 맞게 선택하게 해주는 과정(rule-select)을 수행한다.
상기 퍼지 로직부(135)는 엄폐물과의 관계에 대한 퍼지화를 수행하는 엄폐물 퍼지 로직과, 공격 가능 정도에 대한 퍼지화를 수행하는 공격도 퍼지 로직과, 안전도에 대한 퍼지화를 수행하는 안전도 퍼지 로직으로 구성된다.
상기 퍼지 로직부(135)는 상기 퍼지화된 전략 정보를 기초로 추론 규칙 과정을 수행하는 퍼지 추론 로직과, 상기 추론 규칙 과정에 의한 각 전략 정보의 전체 집합에서 정의된 퍼지 값을 비퍼지(de-fuzzy)화 하는 비퍼지 로직을 더 포함한다.
상기한 구성에 의하면, 상기 퍼지 로직부(135)는 하나의 명확한 값(crisp value)으로 측정된 입력 변수의 값을 적절한 퍼지 값으로 바꾸는 퍼지화(fuzzification)와, 조건부와 결론부의 조건문(if-then)으로 이루어지는 퍼지추론 규칙(fuzzy inference rules)과, 퍼지추론 규칙에 따른 전체 집합에서 정의된 퍼지 값을 명확한 비퍼지 값으로 변환시켜주는 비퍼지화(defuzzification)로 이루어진다.
상기 엄폐물 퍼지 로직, 공격도 퍼지 로직, 안전도 퍼지 로직은 상기 규칙 선택부(133)로부터 입력되는 규칙 요소를 입력 값으로 하여 각각의 퍼지 로직에 맞게 퍼지화를 수행한다. 이때, 상기 퍼지추론 규칙을 거치게 되는데 규칙 값으로는 상기 규칙 선택부(133)에서 선택된 규칙 요소를 사용하고 그 방식으로는 min-max 방식을 사용하는 것이 바람직하다. 그리고, 상기 퍼지추론 규칙을 거쳐 도출된 퍼지 값은 비퍼지화가 이루어진다. 상기 비퍼지화는 최대값 방법, 최대 평균법, 무 게 중심법(center of gravity method)에 의해 가능하며 그 중 무게 중심법을 사용하는 것이 바람직하다.
상기 전략 위치 생성부(137)는 상기 퍼지 로직부(135)에서 도출된 엄폐물과의 관계, 공격 가능 정도, 안전도의 퍼지 값을 입력으로 하여 맵의 각 셀에 대한 전략적 위치를 퍼지화하는 전략 위치 퍼지 로직으로 구성된다. 마찬가지로, 상기 전략 위치 생성부(137)는 상기 입력 값을 기초로 추론 규칙 과정을 수행하는 퍼지 추론 로직과, 상기 전략적 위치에 대한 퍼지 값을 비퍼지화하는 비퍼지 로직을 포함한다.
상기 전략 정보에 대한 각각의 퍼지 로직과 상기 전략 위치 퍼지 로직을 상세하게 설명하면 다음과 같다.
먼저, 도2 내지 도4를 참조하여 상기 엄폐물 퍼지 로직을 설명한다.
상기 엄폐물 퍼지 로직은 상대 에이전트의 공격을 피할 수 있는 엄폐물을 찾아주는 퍼지 모듈이다. 상기 엄폐물 퍼지 로직에서 최적의 엄폐물을 찾기 위해서는 상기 규칙 요소 중 엄폐물 주위의 적군 수와, 엄폐물과의 거리를 입력 값으로 하고, 상기 2개의 규칙 요소로부터 엄폐물과의 관계에 대한 퍼지 값을 도출한다. 도2는 엄폐물 주위의 적군 수에 대한 소속 함수를, 도3은 엄폐물과의 거리에 대한 소속 함수를 도시한 것이다.
상기 엄폐물 주위의 적군 수와 엄폐물과의 거리는 각각 3개의 퍼지 값을 가지고 있고 추론 규칙으로 min-max 방식을 사용하기 때문에 상기 엄폐물 퍼지 로직은 총 9개의 룰 세트(rule set)를 가지게 된다.
예를 들어, 상기 규칙 선택 과정(rule-select)에서 룰 값을 균등하게 적용한다고 가정할 경우, 상기 엄폐물 퍼지 로직은 도4에 도시한 바와 같이,
(1) <엄폐물과의 거리가 Close> 이고 <엄폐물 주위의 적군 수가 Normal> 이면 <Obstacle-Select은 Good> 이다.
(2) <엄폐물과의 거리가 Medium> 이고 <엄폐물 주위의 적군 수가 Little> 이면 <Obstacle-Select은 Normal> 이다.
(3) <엄폐물과의 거리가 Far> 이고 <엄폐물 주위의 적군 수가 Many> 이면 <Obstacle-Select은 No Good> 이다.
의 룰을 정의할 수 있다. 이러한 엄폐물과의 관계에 대한 퍼지 값을 무게 중심법으로 비퍼지화하여 상기 엄폐물과의 관계의 desirable 값을 도출할 수 있다.
도5 내지 도8을 참조하여 상기 공격도 퍼지 로직을 설명한다.
상기 공격도 퍼지 로직은 현재 위치에서 공격을 할 수 있는지 여부를 알아보는 것으로, 현재 공격지연 상태(attack-delay)와, 지형의 시야범위 관계와, 목표 에이전트와 사정거리의 관계를 입력 값으로 하고 이러한 3개의 규칙 요소로부터 상기 공격 가능 정도의 퍼지 값을 도출한다. 도5는 현재 공격지연 상태에 대한 소속 함수를, 도6은 지형의 시야범위 관계에 대한 소속 함수를, 도7은 목표 에이전트와 사정거리의 관계에 대한 소속 함수를 도시한 것이다.
상기 현재 공격지연 상태와, 목표 에이전트와 사정거리의 관계는 3개씩의 퍼지 값을 가지고 상기 지형의 시야범위 관계가 2개의 퍼지 값을 가지며 추론 규칙으로 min-max 방식을 사용하기 때문에 상기 공격도 퍼지 로직은 총 18개의 룰 세트 를 가지게 된다.
예를 들어, 상기 공격도 퍼지 로직은 도8에 도시한 바와 같이,
(1) <Attack-Delay가 Now> 이고 <목표 에이전트와 사정거리의 관계가 Close> 이고 <지형의 시야범위 관계가 안보임> 이면 <Attack-First는 같이 공격> 이다.
(2) <Attack-Delay가 Wait> 이고 <목표 에이전트와 사정거리의 관계가 Medium> 이고 <지형의 시야범위 관계가 보임> 이면 <Attack-First는 먼저 공격> 이다.
(3) <Attack-Delay가 Long> 이고 <목표 에이전트와 사정거리의 관계가 Far> 이고 <지형의 시야범위 관계가 보임> 이면 <Attack-First는 공격 못함> 이다.
의 룰을 정의할 수 있다. 이러한 공격 가능 정도에 대한 퍼지 값을 무게 중심법으로 비퍼지화하여 상기 공격 가능 정도의 desirable 값을 도출할 수 있다.
도9 내지 도12를 참조하여 상기 안전도 퍼지 로직을 설명한다.
상기 안전도 퍼지 로직은 자신이 선택한 위치의 위험 정도를 알아보는 것으로, 시야 내의 적군 수와, 자신 주위의 아군 수와, 에너지 상태를 입력 값으로 하고 이러한 3개의 규칙 요소로부터 상기 안전도에 대한 퍼지 값을 도출한다. 도9는 시야 내의 적군 수에 대한 소속 함수를, 도10은 자신 주위의 아군 수에 대한 소속 함수를, 도11은 에너지 상태에 대한 소속 함수를 도시한 것이다.
상기 시야 내의 적군 수, 자신 주위의 아군 수, 에너지 상태는 3개씩의 퍼지 값을 가지고 있고 추론규칙으로 min-max 방식을 사용하기 때문에 상기 안전도 퍼지 로직은 총 27개의 룰 세트를 가지게 된다.
예를 들어, 상기 안전도 퍼지 로직은 도12에 도시한 바와 같이,
(1) <시야 내의 적군 수가 Little> 이고 <자신 주위의 아군 수가 Many> 이고 <에너지 상태가 Good> 이면 <Safety는 High> 이다.
(2) <시야 내의 적군 수가 Normal> 이고 <자신 주위의 아군 수가 Normal> 이고 <에너지 상태가 Normal> 이면 <Safety는 Normal> 이다.
(3) <시야 내의 적군 수가 Many> 이고 <자신 주위의 아군 수가 Many> 이고 <에너지 상태가 No Good> 이면 <Safety는 Low> 이다.
의 룰을 정의할 수 있다. 이러한 안전도에 대한 퍼지 값을 무게 중심법으로 비퍼지화하여 상기 안전도에 대한 desirable 값을 도출할 수 있다.
마지막으로, 도13을 참조하여 상기 전략 위치 퍼지 로직을 설명한다.
상기 전략 위치 퍼지 로직은 상기 엄폐물 퍼지 로직, 공격도 퍼지 로직, 안전도 퍼지 로직에서 도출된 엄폐물과의 관계, 공격 가능 정도, 안전도의 퍼지 값을 입력으로 하고 상기한 전략 정보의 퍼지 값으로부터 맵의 각 셀에 대한 전략적 위치 값을 산출할 수 있다. 도13은 전략적 위치에 대한 소속 함수를 도시한 것이다.
상기 엄폐물과의 관계, 공격 가능 정도, 안전도는 각각 3개씩의 퍼지 값을 가지므로 상기 전략 위치 퍼지 로직은 총 27개의 룰 세트를 가지게 된다.
예를 들어, 상기 전략 위치 퍼지 로직은 도 13에 도시한 바와 같이,
(1) <Obstacle-Select가 Good> 이고 <Attack-First가 공격 못함> 이고 <Safety가 High> 이면 <전략 Position은 Good> 이다.
(2) <Obstacle-Select가 Normal> 이고 <Attack-First가 같이 공격> 이고 <Safety가 Normal> 이면 <전략 Position은 No Good> 이다.
(3) <Obstacle-Select가 No Good> 이고 <Attack-First가 먼저 공격> 이고 <Safety가 High> 이면 <전략 Position은 Normal> 이다.
의 룰을 정의할 수 있다. 이러한 전략적 위치에 대한 퍼지 값을 무게 중심법으로 비퍼지화하여 desirable 값을 도출할 수 있으며, 이를 각 셀의 전략적 위치 값으로 사용할 수 있다.
따라서, 상기 전략 위치 생성부(137)는 각 셀의 위치를 기준으로 엄폐물과의 관계, 공격 가능 정도, 안전도에 대한 퍼지 값을 도출하고 이 퍼지 값을 기초로 해당 셀의 전략적 위치 값을 산출한다.
상기 전략 위치 생성부(137)는 맵 전체 또는 소정의 대전 영역을 이루는 모든 셀에 대하여 각 셀의 전략적 위치 값을 도출한 후, 최종적으로 가장 높은 위치 값을 가지는 셀의 위치 정보를 게임 인터페이스(110)로 전달한다. 이때, 상기 게임 인터페이스(110)는 전략 위치 생성부(137)로부터 전달받은 셀을 에이전트에 대한 최적의 전략적 위치로 판단한 후 이를 기초로 해당 게임 구동을 제어한다.
상기한 단계적 퍼지 로직에 의한 전략 모듈에서의 게임 전략 방법을 정리하면 다음과 같다. 도14는 본 발명에 따른 단계적 퍼지 로직을 이용한 게임 전략 과정을 도시한 도면이다.
앞서 기술한 바와 같이, 본 발명에서 에이전트의 전략적 위치를 판단하기 위한 전략정보로서 엄폐물과의 관계, 공격 가능 정도, 안전도를 사용한다.
상기 전략정보를 도출하기 위해 필요한 규칙 요소를 각각 정의하게 되는데, 상기 엄폐물과의 관계를 도출하기 위해서는 엄폐물과의 거리, 엄폐물 주변의 적군 수에 대한 소속 함수를 이용하고, 상기 공격 가능 정도를 도출하기 위해서는 현재 공격지연 상태, 목표 에이전트와 사정거리의 관계, 지형의 시야범위 관계에 대한 소속 함수를 이용하며, 상기 안전도를 도출하기 위해서는 시야 내의 적군 수, 자신 주위의 아군 수, 에너지 상태를 이용한다(S210).
에이전트 간의 대결이 진행되는 대전 게임에서 사용자 에이전트가 위치하는 셀을 기준으로 맵 전체 또는 소정의 대전 영역을 이루는 모든 셀에 대하여 상기 전략 정보에 대한 퍼지 로직을 수행한다(S220).
상기 퍼지 로직은 규칙 요소, 전략 정보, 전략 위치 순으로 단계적으로 퍼지 로직을 수행한다.
다시 말해, 엄폐물과의 거리, 엄폐물 주변의 적군 수를 입력으로 하여 엄폐물과의 관계에 대한 퍼지화를 수행하고, 현재 공격지연 상태, 목표 에이전트와 사정거리의 관계, 지형의 시야범위 관계를 입력으로 하여 공격 가능 정도에 대한 퍼지화를 수행하며, 시야 내의 적군 수, 자신 주위의 아군 수, 에너지 상태를 입력으로 하여 안전도에 대한 퍼지화를 수행한다.
그리고, 상기 엄폐물과의 관계, 공격 가능 정도, 안전도에 대한 퍼지 값을 입력으로 하여 전략 위치에 대한 퍼지화를 수행한다. 이때, 상기한 퍼지 로직에 의해 도출된 엄폐물과의 관계, 공격 가능 정도, 안전도에 대하여 추론 규칙 과정을 거친 후 무게 중심법에 의해 비 퍼지화를 차례로 수행한다.
상기한 과정을 거쳐 각 셀에 대한 전략적 위치 값 즉, 해당 셀에 대한 엄폐물과의 관계와, 공격 가능 정도와, 안전도에 대한 각각의 비퍼지 값을 합산하는 방식으로 산출한다(S230).
맵 전체 또는 대전 영역의 모든 셀에 대해서 전력적 위치 값 산출이 완료되면 최종적으로 가장 높은 위치 값에 해당하는 셀을 사용자 에이전트의 전략적 위치로 결정한다(S240)(S250).
따라서, 본 발명은 인공지능 캐릭터 간의 대전 게임에서 사용자 에이전트가 최적의 전략 위치를 선점할 수 있는 전략 모듈을 제공한다. 상기한 규칙 요소나 전략 정보에 한정되지 않고 퍼지 값을 달리 적용함으로써 다양한 형태의 캐릭터 생성이 가능하며, 추론 규칙을 조절하여 전혀 다른 기준으로 게임을 수행하는 캐릭터 생성 또한 가능하다. 그리고, 단계적 퍼지 로직을 이용한 전략 모듈을 사용함으로써 높은 수준의 게임을 수행하는 캐릭터를 보다 쉽고 편리하게 개발할 수 있다.
본 발명에 따른 단계별 퍼지 로직을 이용한 게임 전략 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도1은 본 발명에 따른 단계적 퍼지 로직을 이용한 게임 전략 시스템의 구성을 도시한 도면이다.
도2는 엄폐물과의 관계를 도출하기 위한 엄폐물 주위의 적군 수에 해당하는 규칙요소의 퍼지 값을 도시한 도면이다.
도3은 엄폐물과의 관계를 도출하기 위한 엄폐물과의 거리에 해당하는 규칙요소의 퍼지 값을 도시한 도면이다.
도4는 도2와 도3의 규칙요소로부터 도출된 엄폐물과의 관계에 대한 퍼지 로직을 설명하기 위한 도면이다.
도5는 공격 가능 정도를 도출하기 위한 현재 공격지연 상태에 해당하는 규칙요소의 퍼지 값을 도시한 도면이다.
도6은 공격 가능 정도를 도출하기 위한 지형의 시야범위 관계에 해당하는 규칙요소의 퍼지 값을 도시한 도면이다.
도7은 공격 가능 정도를 도출하기 위한 목표 에이전트와 사정거리의 관계에 해당하는 규칙요소의 퍼지 값을 도시한 도면이다.
도8은 도5 내지 도7의 규칙요소로부터 도출된 공격 가능 정도에 대한 퍼지 로직을 설명하기 위한 도면이다.
도9는 안전도를 도출하기 위한 시야 내의 적군 수에 해당하는 규칙요소의 퍼지 값을 도시한 도면이다.
도10은 안전도를 도출하기 위한 주위의 아군 수에 해당하는 규칙요소의 퍼 지 값을 도시한 도면이다.
도11은 안전도를 도출하기 위한 에너지 상태에 해당하는 규칙요소의 퍼지 값을 도시한 도면이다.
도12는 도9 내지 도11의 규칙요소로부터 도출된 안전도에 대한 퍼지 로직을 설명하기 위한 도면이다.
도13은 엄폐물과의 관계, 공격 가능 정도, 안전도의 퍼지 로직에 의해 도출된 전략적 위치에 대한 퍼지 로직을 설명하기 위한 도면이다.
도14는 본 발명에 따른 단계적 퍼지 로직을 이용한 게임 전략 과정을 도시한 도면이다.
<도면의 주요 부분에 대한 부호의 설명>
130: 전략 모듈
131: 메모리
133: 규칙 선택부
135: 퍼지 로직부
137: 전략 위치 생성부

Claims (13)

  1. 맵(map) 정보와 에이전트(agent) 정보에 따른 전략 정보를 퍼지(fuzzy)화하는 퍼지 로직을 제공하는 퍼지 로직부; 및,
    상기 퍼지 로직에 의한 전략 정보를 기초로 사용자 에이전트의 전략적 위치를 결정하는 전략위치 생성부
    를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 시스템.
  2. 제1항에 있어서,
    상기 전략 정보는,
    엄폐물과의 관계(obstacle-select), 공격 가능 정도(attack-first), 안전도(safety) 중 적어도 하나를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 시스템.
  3. 제2항에 있어서,
    상기 퍼지 로직부는,
    상기 엄폐물과의 관계에 대한 퍼지 로직을 수행하는 엄폐물 퍼지 로직과,
    상기 공격 가능 정도에 대한 퍼지 로직을 수행하는 공격도 퍼지 로직과,
    상기 안전도에 대한 퍼지 로직을 수행하는 안전도 퍼지 로직
    을 포함하는 단계적 퍼지 로직을 이용한 게임 전략 시스템.
  4. 제2항에 있어서,
    상기 맵 정보와 에이전트 정보를 기초로 다수의 규칙 요소(rule factor)가 기 정의되어 각 전략 정보를 도출하기 위한 규칙 요소를 선택적으로 상기 퍼지 로직부로 입력하는 규칙 선택부
    를 더 포함하는 단계적 퍼지 로직을 이용한 게임 전략 시스템.
  5. 제4항에 있어서,
    상기 규칙 선택부는,
    상기 엄폐물과의 관계를 도출하기 위한 규칙 요소로 엄폐물과의 거리, 엄폐물 주변의 적군 수를 입력하고,
    상기 공격 가능 정도를 도출하기 위한 규칙 요소로 현재 공격지연 상태, 목표 에이전트와 사정거리의 관계, 시야범위 관계를 입력하고,
    상기 안전도를 도출하기 위한 규칙 요소로 시야범위 내의 적군 수, 아군 수, 에너지 상태를 입력하는 것을 특징으로 하는 단계적 퍼지 로직을 이용한 게임 전략 시스템.
  6. 제3항에 있어서,
    상기 퍼지 로직부는,
    상기 퍼지화된 전략 정보를 기초로 min-max 방식에 의해 추론 규칙 과정을 수행하는 퍼지 추론 로직과,
    상기 추론 규칙 과정에 의한 전체 집합에서 정의된 퍼지 값을 무게 중심법에 의해 비퍼지(de-fuzzy) 값으로 변환하는 비퍼지 로직
    를 더 포함하는 단계적 퍼지 로직을 이용한 게임 전략 시스템.
  7. 제6항에 있어서,
    상기 전략위치 생성부는,
    상기 맵의 각 셀에 대하여 각 셀에 해당하는 전략 정보의 비퍼지 값으로부터 해당 셀의 전략적 위치 값을 산출하고 가장 큰 위치 값의 셀을 상기 사용자 에이전트의 전략적 위치로 결정하는 것을 특징으로 하는 단계적 퍼지 로직을 이용한 게임 전략 시스템.
  8. 맵(map) 정보와 에이전트(agent) 정보에 따른 전략 정보를 정의하는 단계; 및,
    상기 정의된 전략 정보를 기초로 단계적 퍼지 로직에 의해 사용자 에이전트의 전략적 위치를 결정하는 단계
    를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 방법.
  9. 제8항에 있어서,
    상기 전략 정보는,
    엄폐물과의 관계(obstacle select), 공격 가능 정도(attack-first), 안전도(safety) 중 적어도 하나를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 방법.
  10. 제9항에 있어서,
    상기 단계적 퍼지 로직은,
    상기 전략 정보를 도출하기 위한 규칙 요소를 기 정의하고,
    상기 규칙 요소 중 엄폐물과의 거리, 엄폐물 주변의 적군 수를 기초로 상기 엄폐물과의 관계에 대한 퍼지화를 수행하는 단계와,
    상기 규칙 요소 중 현재 공격지연 상태, 목표 에이전트와 사정거리의 관계, 시야범위 관계를 기초로 상기 공격 가능 정도에 대한 퍼지화를 수행하는 단계와,
    상기 규칙 요소 중 시야범위 내의 적군 수, 아군 수, 에너지 상태를 기초로 상기 안전도에 대한 퍼지화를 수행하는 단계
    를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 방법.
  11. 제10항에 있어서,
    상기 단계적 퍼지 로직에 의해 사용자 에이전트의 전략적 위치를 결정하는 단계는,
    상기 맵의 각 셀에 대하여, 각 셀에 해당하는 엄폐물과의 관계, 공격 가능 정도, 안전도에 대한 각 퍼지 값으로부터 해당 셀의 전략적 위치 값을 산출하는 단 계와,
    상기 산출된 전략적 위치 값 중 가장 큰 위치 값의 셀을 상기 사용자 에이전트에 대한 전략적 위치로 결정하는 단계
    를 포함하는 단계적 퍼지 로직을 이용한 게임 전략 방법.
  12. 제11항에 있어서,
    상기 단계적 퍼지 로직에 의해 사용자 에이전트의 전략적 위치를 결정하는 단계는,
    상기 퍼지 로직에 의해 퍼지화된 전략 정보를 기초로 min-max 방식에 의해 추론 규칙 과정을 수행하는 단계와,
    상기 추론 규칙 과정에 의한 전체 집합에서 정의된 퍼지 값을 무게 중심법에 의해 비퍼지(de-fuzzy) 값으로 변환하는 단계
    를 더 포함하는 단계적 퍼지 로직을 이용한 게임 전략 방법.
  13. 제8항 내지 제12항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
KR1020070071886A 2007-07-18 2007-07-18 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템 KR100913030B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070071886A KR100913030B1 (ko) 2007-07-18 2007-07-18 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070071886A KR100913030B1 (ko) 2007-07-18 2007-07-18 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템

Publications (2)

Publication Number Publication Date
KR20090008714A true KR20090008714A (ko) 2009-01-22
KR100913030B1 KR100913030B1 (ko) 2009-08-20

Family

ID=40488745

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070071886A KR100913030B1 (ko) 2007-07-18 2007-07-18 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR100913030B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220071B1 (ko) * 2008-03-26 2013-01-08 인텔 코오퍼레이션 추론적 피직스 모델링과 목적-기반 인공 지능의 결합

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111450533B (zh) * 2020-03-31 2022-06-24 腾讯科技(深圳)有限公司 虚拟场景中的虚拟对象控制方法、装置、终端及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070043126A (ko) * 2005-10-20 2007-04-25 (주)아라게이트 게임용 인공지능 엔진시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220071B1 (ko) * 2008-03-26 2013-01-08 인텔 코오퍼레이션 추론적 피직스 모델링과 목적-기반 인공 지능의 결합

Also Published As

Publication number Publication date
KR100913030B1 (ko) 2009-08-20

Similar Documents

Publication Publication Date Title
Treanor et al. Game-o-matic: Generating videogames that represent ideas
Dormans et al. Generating missions and spaces for adaptable play experiences
Bakkes et al. Player behavioural modelling for video games
Lara-Cabrera et al. On balance and dynamism in procedural content generation with self-adaptive evolutionary algorithms
Uludağlı et al. Non-player character decision-making in computer games
Cowling et al. Search in real-time video games
Künzel et al. Coping with opponents: multi-objective evolutionary neural networks for fighting games
Karavolos et al. Pairing character classes in a deathmatch shooter game via a deep-learning surrogate model
KR100913030B1 (ko) 단계별 퍼지 로직을 이용한 게임 전략 방법 및 그 시스템
Vorachart et al. Evolving fuzzy logic rule-based game player model for game development
Sagredo-Olivenza et al. Combining neural networks for controlling non-player characters in games
Charity et al. Amorphous Fortress: Observing Emergent Behavior in Multi-Agent FSMs
Nakashima et al. Designing high-level decision making systems based on fuzzy if–then rules for a point-to-point car racing game
KR100850913B1 (ko) 게임 캐릭터 형성방법
Lach Dynamic difficulty adjustment for serious game using modified evolutionary algorithm
Braathen et al. A hybrid fuzzy logic/constraint satisfaction problem approach to automatic decision making in simulation game models
Thompson et al. Scaling-up behaviours in evotanks: Applying subsumption principles to artificial neural networks
Niu et al. A neural-evolutionary model for case-based planning in real time strategy games
Duc et al. Hierarchical pathfinding and ai-based learning approach in strategy game design
Karavolos Orchestrating the generation of game facets via a model of gameplay
Tan et al. Tactical agent personality
Kumar et al. Artificial Intelligent Player Character Using Neuroevolution of Augmenting Topologies and Neural Networks
Traichioiu et al. Grammar-based Procedural Content Generation from Designer-provided Difficulty Curves.
Tang et al. Neural network versus behavior based approach in simulated car racing game
Moreno et al. Ithaca. A Tool for Integrating Fuzzy Logic in Unity

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130805

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140701

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151028

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160801

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee