비디오 게임의 인공지능

비디오 게임의 인공지능에 관한 문서이다.

비디오 게임에서 인공지능(AI)은 주로 논플레이어 캐릭터(NPC)에서 인간 지능과 유사하게 반응적, 적응적 또는 지능적인 행동을 생성하는 데 사용된다. 인공지능은 1948년 게임 님에서 처음 등장한 이래로 비디오 게임의 필수적인 부분이었다. 비디오 게임의 AI는 별개의 하위 분야이며 학술적 AI와는 다르다. 기계 학습이나 의사 결정보다는 게임 플레이어 경험을 향상시키는 역할을 한다. 아케이드 비디오 게임의 황금기 동안 AI 적의 아이디어는 난이도 수준의 증가, 뚜렷한 움직임 패턴, 플레이어의 입력에 따른 게임 내 이벤트 형태로 크게 대중화되었다. 현대 게임은 종종 NPC의 행동을 안내하기 위해 경로 탐색 및 결정 트리 학습법과 같은 기존 기술을 구현한다. AI는 데이터 마이닝 및 절차적 생성과 같이 사용자에게 즉시 보이지 않는 메커니즘에도 자주 사용된다.

일반적으로 게임 AI는 생각되거나 때때로 묘사되는 것처럼 튜링 검사 또는 인공 일반 지능의 방식대로 NPC에 해당하는 인공적인 사람을 실현하는 것을 의미하지 않는다.

개요
게임 AI라는 용어는 제어이론, 로봇공학, 컴퓨터 그래픽스 및 일반적인 컴퓨터 과학의 기술을 포함하는 광범위한 알고리즘 세트를 지칭하는 데 사용되므로, 비디오 게임 AI는 이러한 기술이 반드시 컴퓨터 학습 또는 기타 표준 기준을 용이하게 하는 것이 아니라 "자동화된 계산" 또는 미리 정해진 제한된 입력 세트에 대한 미리 정해진 제한된 응답 세트만을 구성하기 때문에 종종 "진정한 AI"를 구성하지 않을 수 있다.

많은 산업계와 기업은 게임 AI가 인간이 모든 형태의 기술과 상호작용하는 방식을 혁명적으로 변화시켰다는 점에서 많은 발전을 이루었다고 주장하지만, 많은 전문 연구자들은 그러한 주장에 회의적이며, 특히 그러한 기술이 인지 과학에서 일반적으로 사용되는 "지능"의 정의에 부합하는지에 대해 회의적이다. 업계는 AI가 기술이 여러 방식으로 작동하도록 허용함으로써, 의도된 목적 이상으로 모든 기술 장치를 사용하는 방식에서 더욱 다재다능해졌다고 주장하며, 이는 기술이 스스로 개성을 발전시키고 사용자의 복잡한 지침을 수행한다고 주장한다.

AI 분야의 사람들은 비디오 게임 AI가 진정한 지능이 아니라, 단순한 정렬 및 매칭 알고리즘을 사용하여 지능적인 행동의 환상을 만들면서 소프트웨어에 과학적 또는 기술적 복잡성과 발전의 오해의 소지가 있는 분위기를 부여하는 데 사용되는 광고용 유행어라고 주장했다. NPC를 위한 게임 AI는 환경 제약 내에서 지능과 좋은 게임 플레이를 나타내는 것에 중점을 두기 때문에, 그 접근 방식은 전통적인 AI의 접근 방식과는 매우 다르다.

역사
게임 플레이는 AI 연구의 시작부터 연구 분야였다. AI의 초기 사례 중 하나는 1951년에 만들어지고 1952년에 출판된 전산화된 님 (게임) 게임이다. 이 게임은 만들어진 해에는 첨단 기술이었고 퐁보다 20년 앞선 기술이었음에도 불구하고, 비교적 작은 상자 형태로 고도로 숙련된 플레이어와 대결하여도 정기적으로 게임에서 이길 수 있었다. 1951년, 맨체스터 대학교의 페란티 마크 1 기계를 사용하여 크리스토퍼 스트래치는 체커 프로그램을, 디트리히 프린츠는 체스 프로그램을 작성했다.See "A Brief History of Computing" at AlanTuring.net. 이것들은 최초로 작성된 컴퓨터 프로그램 중 일부였다. 아서 새뮤얼의 체커 프로그램은 1950년대 중반과 1960년대 초반에 개발되었으며, 결국 존경받는 아마추어에게 도전할 만큼 충분한 기술을 획득했다., Schaeffer, Jonathan. One Jump Ahead:: Challenging Human Supremacy in Checkers, 1997, 2009, Springer, . Chapter 6. 체커와 체스에 대한 연구는 1997년 IBM의 딥 블루 컴퓨터에 의해 가리 카스파로프가 패배하면서 절정에 달했다., pp. 480–483 1960년대와 1970년대 초에 개발된 최초의 비디오 게임인 스페이스워!, 퐁, 그리고 갓차(1973)는 논리 회로에 구현되었고 AI 없이 두 플레이어의 경쟁에 엄격하게 기반한 게임이었다.

적과 함께 일인용 비디오 게임 모드를 특징으로 하는 게임은 1970년대에 나타나기 시작했다. 아케이드 게임에서 처음으로 주목할 만한 게임은 1974년에 등장했다: 타이토 게임 스피드 레이스(레이싱 비디오 게임)와 아타리 게임 쾍(오리 사냥 라이트 건 슈터) 및 퍼슈트(전투기 공중전 시뮬레이터). 두 가지 텍스트 기반 컴퓨터 게임인 스타 트렉(1971)과 왐퍼스 사냥(1973)에도 적이 있었다. 적의 움직임은 저장된 패턴을 기반으로 했다. 마이크로프로세서의 통합은 움직임 패턴에 더 많은 계산과 무작위 요소를 추가할 수 있게 했다.

섬네일|left|GLtron에서 라이트 사이클 캐릭터들이 마지막까지 타는 사람이 되기 위해 경쟁한다.

아케이드 비디오 게임의 황금기에 AI 적의 개념이 크게 대중화되었는데, 이는 스페이스 인베이더(1978)의 성공 덕분이었다. 이 게임은 난이도 수준이 증가하고, 뚜렷한 움직임 패턴을 가졌으며, 플레이어의 입력에 기반한 해시 함수에 의존하는 게임 내 이벤트를 포함했다. 갤럭시안(1979)은 대형에서 벗어나는 개별 적의 기동을 포함하여 더 복잡하고 다양한 적의 움직임을 추가했다. 팩맨(1980)은 각 적에게 다른 성격을 부여하는 추가적인 특징과 함께 미로 게임에 AI 패턴을 도입했다. 가라테 챔프(1984)는 나중에 대전 격투 게임에 AI 패턴을 도입했다. 퍼스트 퀸(1988)은 리더를 따르는 컴퓨터 AI에 의해 제어될 수 있는 캐릭터를 특징으로 하는 전술 액션 롤플레잉 게임이었다. (Translation) 롤플레잉 비디오 게임 드래곤 퀘스트 IV(1990)는 전투 중에 논플레이어 캐릭터의 AI 루틴을 조정할 수 있는 "전술" 시스템을 도입했으며, 이 개념은 나중에 성검전설 2(1993)에 의해 액션 롤플레잉 게임 장르에 도입되었다.

매든 풋볼, 얼 위버 베이스볼, 토니 라 루사 베이스볼과 같은 게임들은 모두 선택된 유명인의 코칭 또는 관리 스타일을 컴퓨터에서 재현하려는 시도를 기반으로 AI를 구성했다. 매든, 위버, 라 루사 모두 이 게임 개발 팀과 광범위한 작업을 통해 게임의 정확성을 극대화했다. 나중에 스포츠 게임들은 사용자가 AI의 변수를 "조정"하여 플레이어가 정의한 관리 또는 코칭 전략을 생성할 수 있도록 허용했다.

1990년대에 새로운 게임 장르의 출현은 유한 상태 기계와 같은 공식 AI 도구의 사용을 촉발했다. 실시간 전략 게임은 많은 오브젝트, 불완전한 정보, 경로 탐색 문제, 실시간 의사 결정 및 경제 계획 등으로 AI에 부담을 주었다.Schwab, 2004, pp. 97–112 이 장르의 초기 게임들은 악명 높은 문제들을 가지고 있었다. 예를 들어, 헤르초크 츠바이(1989)는 거의 망가진 경로 탐색과 유닛 제어에 대한 매우 기본적인 3단계 상태 머신을 가지고 있었고, 듄 II(1992)는 플레이어의 기지를 직선으로 공격하고 수많은 치트를 사용했다.Schwab, 2004, p. 107 이 장르의 후기 게임들은 더 정교한 AI를 보여주었다.

후기 게임들은 상향식 AI 방법, 예를 들어 크리처스나 블랙 & 화이트와 같은 게임에서 플레이어 행동의 창발적 행동과 평가를 사용했다. 파사드 (인터랙티브 스토리)는 2005년에 출시되었으며, 인터랙티브 다중 경로 대화와 AI를 게임의 주요 측면으로 사용했다.
alt=로봇이 공을 향해 나아가 로보컵에서 경쟁한다.|섬네일|upright|로봇이 공을 향해 나아가 로보컵에서 경쟁한다.
게임은 게임플레이를 넘어 잠재적인 응용 프로그램을 가진 인공지능 개발을 위한 환경을 제공했다. 예시로는 제퍼디!를 플레이하는 컴퓨터인 왓슨과 로봇들이 축구 경기에 경쟁하도록 훈련되는 로보컵 토너먼트가 있다.Emergent Intelligence in Games .

견해
많은 전문가들은 게임 AI라는 용어에서 "AI"가 그 가치를 과장한다고 불평한다. 왜냐하면 게임 AI는 지능에 관한 것이 아니며, 학문 분야 AI의 목표와는 거의 관련이 없기 때문이다. "진정한 AI"가 기계 학습, 임의의 데이터 입력에 기반한 의사 결정, 심지어 추론할 수 있는 강한 AI의 궁극적인 목표와 같은 분야를 다루는 반면, "게임 AI"는 종종 좋은 게임플레이 경험을 제공하기에 충분한 몇 가지 경험 법칙 또는 휴리스틱으로 구성된다. 역사적으로 학술적 게임-AI 프로젝트는 학술적 접근 방식이 단순하고 확장 불가능한 경향이 있었기 때문에 상업 제품과 비교적 분리되어 있었다. 상업적 게임 AI는 자체적인 도구 세트를 개발했으며, 이는 많은 경우에 좋은 성능을 제공하기에 충분했다.

게임 개발자들의 학문적 AI에 대한 인식이 높아지고 학계의 컴퓨터 게임에 대한 관심이 증가하면서 게임 내에서 AI로 간주되는 것의 정의가 덜 특이해지고 있다. 그럼에도 불구하고, AI의 다른 응용 분야 간의 중요한 차이점은 게임 AI가 여전히 AI의 별개의 하위 분야로 간주될 수 있음을 의미한다. 특히, 치팅을 통해 게임 내에서 일부 AI 문제를 합법적으로 해결할 수 있다는 점은 중요한 차이점을 만든다. 예를 들어, 과거 관찰로부터 보이지 않는 객체의 위치를 추론하는 것은 AI가 로봇공학에 적용될 때 어려운 문제일 수 있지만, 컴퓨터 게임에서는 NPC가 게임의 장면 그래프에서 단순히 위치를 조회할 수 있다. 이러한 치팅은 비현실적인 행동으로 이어질 수 있으므로 항상 바람직하지는 않다. 그러나 이러한 가능성은 게임 AI를 구별하고 언제, 어떻게 치팅할 것인지와 같은 새로운 문제들을 해결하게 한다.

강한 AI의 주요 한계는 내재된 사고의 깊이와 의사 결정 과정의 극심한 복잡성이다. 이는 이론적으로 "스마트" AI를 만드는 것이 가능하겠지만, 상당한 처리 능력이 필요하다는 것을 의미한다.

사용
보드 게임의 컴퓨터 시뮬레이션에서
 컴퓨터 체스
 컴퓨터 쇼기
 컴퓨터 바둑
 컴퓨터 체커
 컴퓨터 오델로
 컴퓨터 포커 플레이어
 아키네이터
 컴퓨터 아리마
 오델로를 플레이하는 Logistello
 로그를 플레이하는 Rog-O-Matic
 스크래블의 컴퓨터 플레이어
 컴퓨터 올림피아드의 다양한 보드 게임
 일반 게임 플레이
 풀린 게임은 최적이라고 보장되는 컴퓨터 전략을 가지고 있으며, 일부 경우에는 승리 또는 무승부를 강제한다.

현대 비디오 게임에서

게임 AI/휴리스틱 알고리즘은 게임 내에서 상당히 이질적인 다양한 분야에서 사용된다. 가장 명백한 것은 게임 내 모든 NPC의 제어이지만, 현재는 "스크립팅"(결정 트리)이 가장 일반적인 제어 수단이다. 이러한 수동으로 작성된 결정 트리는 종종 반복적인 행동, 몰입감 상실, 또는 개발자가 계획하지 않은 상황에서의 비정상적인 행동과 같은 "인공적인 어리석음"을 초래한다.Lara-Cabrera, R., Nogueira-Collazo, M., Cotta, C., & Fernández-Leiva, A. J. (2015). Game artificial intelligence: challenges for the scientific community.

AI의 또 다른 일반적인 용도인 경로 탐색은 실시간 전략 게임에서 널리 볼 수 있다. 경로 탐색은 지형, 장애물, 그리고 전장의 안개를 고려하여 NPC를 맵의 한 지점에서 다른 지점으로 이동시키는 방법을 결정하는 방법이다.Yannakakis, G. N. (2012, May). Game AI revisited. In Proceedings of the 9th conference on Computing Frontiers (pp. 285–292). ACM.Hagelback, Johan, and Stefan J. Johansson. "Dealing with fog of war in a real-time strategy game environment." In Computational Intelligence and Games, 2008. CIG'08. IEEE Symposium On, pp. 55-62. IEEE, 2008. 상업용 비디오 게임은 종종 빠르고 간단한 "그리드 기반 경로 탐색"을 사용하는데, 여기서 지형은 균일한 정사각형의 견고한 그리드에 매핑되고, A* 또는 IDA*와 같은 경로 탐색 알고리즘이 그리드에 적용된다.Yap, Peter. "Grid-based path-finding." In Conference of the Canadian Society for Computational Studies of Intelligence, pp. 44-55. Springer, Berlin, Heidelberg, 2002. 단순히 견고한 그리드 대신, 일부 게임은 불규칙한 다각형을 사용하고 NPC가 걸을 수 있는 맵 영역에서 내비게이션 메시를 조립한다.Goodwin, S. D., Menon, S., & Price, R. G. (2006). Pathfinding in open terrain. In Proceedings of International Academic Conference on the Future of Game Design and Technology. 세 번째 방법으로, 개발자가 NPC가 이동하는 데 사용해야 하는 "웨이포인트"를 수동으로 선택하는 것이 때로는 편리하다. 단점은 이러한 웨이포인트가 부자연스러운 움직임을 만들 수 있다는 것이다. 또한 웨이포인트는 복잡한 환경에서 내비게이션 메시보다 성능이 떨어지는 경향이 있다.Nareyek, A. (2004). AI in computer games. Queue, 1(10).Cui, X., & Shi, H. (2011). A*-based pathfinding in modern computer games. International Journal of Computer Science and Network Security, 11(1), 125-130. 정적 경로 탐색을 넘어, 내비게이션 (AI)는 동적인 환경에서 NPC에게 탐색 능력을 부여하는 게임 AI의 하위 분야로, 다른 엔티티(다른 NPC, 플레이어 등)와의 충돌을 피하거나 그들과 협력(그룹 탐색)하면서 목표로 가는 경로를 찾는 데 중점을 둔다. 에이지 오브 엠파이어(1997)나 문명 V(2010)와 같이 많은 유닛이 있는 동적인 전략 게임에서의 내비게이션은 종종 성능이 좋지 않다. 유닛들이 종종 다른 유닛들의 길을 막는다.

가상 환경에서 어려운 문제를 제대로 해결하기 위해 게임 AI를 개선하는 것보다, 시나리오를 더 다루기 쉽게 수정하는 것이 종종 더 비용 효율적이다. 특정 장애물 때문에 경로 탐색이 늦어지면, 개발자는 단순히 장애물을 이동하거나 삭제하게 될 수 있다. 하프라이프(1998)에서는 경로 탐색 알고리즘이 던져진 수류탄을 모든 NPC가 피할 합리적인 방법을 찾지 못하는 경우가 있었다. NPC가 어설프게 피하려고 시도하여 어리석게 보일 위험을 감수하는 대신, 개발자들은 그 상황에서 NPC가 웅크리고 숨도록 스크립팅했다.Lidén, L. (2003). Artificial stupidity: The art of intentional mistakes. AI game programming wisdom, 2, 41-48.

비디오 게임 전투 AI
많은 현대 비디오 게임은 액션, 1인칭 슈팅 게임 또는 어드벤처 범주에 속한다. 이러한 유형의 게임 대부분에는 어느 정도의 전투가 일어난다. AI가 전투에서 효율적일 수 있는 능력은 이러한 장르에서 중요하다. 오늘날의 일반적인 목표는 AI를 더욱 인간적으로 만들거나 적어도 그렇게 보이게 하는 것이다.

현대 비디오 게임 AI에서 발견되는 더욱 긍정적이고 효율적인 기능 중 하나는 사냥 능력이다. AI는 원래 매우 흑백 논리적인 방식으로 반응했다. 플레이어가 특정 영역에 있으면 AI는 완전한 공격적인 방식으로 반응하거나 완전히 방어적이었다. 최근 몇 년 동안 "사냥" 개념이 도입되었다. 이 '사냥' 상태에서 AI는 캐릭터가 내는 소리나 남긴 발자국과 같은 현실적인 표식을 찾을 것이다. 이러한 발전은 궁극적으로 더욱 복잡한 형태의 플레이를 가능하게 한다. 이 기능을 통해 플레이어는 실제로 적에게 접근하거나 피하는 방법을 고려할 수 있다. 이는 특히 잠입 게임 장르에서 두드러지는 기능이다.

최근 게임 AI의 또 다른 발전은 "생존 본능"의 개발이었다. 게임 내 컴퓨터는 환경에서 다른 물체를 인식하고 그것이 생존에 유익한지 해로운지 판단할 수 있다. 사용자처럼 AI는 총격전에서 엄폐물을 찾아 무기를 재장전하거나 수류탄을 던지는 등 취약하게 만들 수 있는 행동을 하기 전에 엄폐물을 찾을 수 있다. 특정 방식으로 반응해야 할 때를 알려주는 마커를 설정할 수 있다. 예를 들어, 게임 내내 체력을 확인하라는 명령이 AI에 주어지면, 특정 체력 비율에서 특정 방식으로 반응하도록 추가 명령을 설정할 수 있다. 체력이 특정 임계값 미만이면, AI는 플레이어로부터 도망쳐 다른 기능이 트리거될 때까지 피하도록 설정할 수 있다. 또 다른 예로는 AI가 탄약이 떨어졌음을 알아채면 엄폐물을 찾아 그 뒤에 숨어 재장전할 때까지 기다리는 것이 있을 수 있다. 이러한 행동은 AI를 더욱 인간적으로 보이게 한다. 그러나 이 분야에서는 아직 개선이 필요하다.

전투 AI의 또 다른 부작용은 두 AI 제어 캐릭터가 서로 마주칠 때 발생한다. 이는 이드 소프트웨어 게임 둠에서 처음 대중화되었는데, 특정 상황에서 이른바 '괴물끼리 싸우기'가 발생할 수 있다. 특히 적대적인 공격에 반응하도록 프로그래밍된 AI 에이전트는 동료의 공격이 너무 가까이 착탄하면 때때로 서로를 공격한다. 둠의 경우, 출판된 게임플레이 매뉴얼에는 특정 레벨과 난이도 설정에서 살아남기 위해 괴물끼리 싸우기를 이용하는 것이 제안되기도 한다.

 절차적 콘텐츠 생성 
절차적 생성(PCG)은 최소한의 디자이너 입력으로 알고리즘을 통해 게임 내 콘텐츠를 자율적으로 생성하는 AI 기술이다. PCG는 일반적으로 레벨, NPC 대화, 사운드와 같은 게임 기능을 동적으로 생성하는 데 사용된다. 개발자는 특정 매개변수를 입력하여 알고리즘이 콘텐츠를 만들도록 안내한다. PCG는 개발 및 플레이어 경험 관점에서 수많은 이점을 제공한다. 게임 스튜디오는 아티스트에게 지출하는 비용을 줄이고 제작 시간을 절약할 수 있다.R. van der Linden, R. Lopes and R. Bidarra, "Procedural Generation of Dungeons," in IEEE Transactions on Computational Intelligence and AI in Games, vol. 6, no. 1, March 2014, pp. 78-89. doi: 10.1109/TCIAIG.2013.2290371. 플레이어는 게임이 플레이할 때마다 새로운 콘텐츠를 생성하므로 신선하고 반복성이 높은 경험을 할 수 있다. PCG를 통해 게임 콘텐츠는 플레이어의 행동에 실시간으로 적응할 수 있다.Seidel, S., et al. "Artificial Intelligence and Video Game Creation: A Framework for the New Logic of Autonomous Design." Journal of Digital Social Research, vol. 2, no. 3, Nov. 2020, pp. 126–157. doi:10.33621/jdsr.v2i3.46.

 절차적으로 생성된 레벨 
생성 알고리즘(AI의 기초적인 형태)은 수십 년 동안 레벨 생성에 사용되어 왔다. 1980년대의 상징적인 던전 탐험 컴퓨터 게임 로그가 대표적인 예이다. 플레이어는 점점 더 어려워지는 던전 레벨을 내려가 옌도르의 부적을 회수해야 한다. 던전 레벨은 각 게임 시작 시 알고리즘적으로 생성된다. 플레이어가 사망할 때마다 저장 파일은 삭제된다. 알고리즘적인 던전 생성은 부적 회수라는 목표가 매번 같더라도, 그렇지 않았다면 존재하지 않았을 독특한 게임플레이를 만들어낸다.

로그와 같은 게임에서 볼 수 있는 전체 레벨 생성에 대한 의견은 다양할 수 있다. 일부 개발자는 생성된 콘텐츠의 품질에 회의적이며 "인간적인" 느낌을 가진 세계를 만들기를 원하므로 PCG를 더 적게 사용할 것이다. 따라서 그들은 수작업으로 만든 레벨의 특정 구성 요소를 생성하는 데에만 PCG를 사용할 것이다. 이의 주목할 만한 예는 유비소프트의 2017년 전술 슈팅 게임인 톰 클랜시의 고스트 리콘 와일드랜드이다. 개발자들은 실제 지도의 자료 집합으로 훈련된 경로 탐색 알고리즘을 사용하여 게임 세계 내의 수작업으로 만든 마을들을 관통하는 도로망을 만들었다. 이는 AI가 방대한 실제 데이터를 다룰 수 있고 도로가 생성하기 쉽기 때문에 PCG를 지능적으로 사용한 사례이다. 그러나 AI가 사람들이 사는 마을을 만드는 임무를 맡았다면 미묘한 차이를 놓칠 가능성이 높다.

AI가 발전함에 따라, 개발자들의 목표는 데이터 세트로부터 방대한 양의 레벨 저장소를 만드는 것으로 바뀌고 있다. 2023년에 뉴욕 대학교와 비트바테르스란트 대학교의 연구원들은 대형 언어 모델을 훈련하여 1981년 퍼즐 비디오 게임인 창고지기 스타일의 레벨을 생성했다. 그들은 모델이 난이도나 레이아웃과 같이 특별히 요청된 특성을 가진 레벨을 생성하는 데 탁월하다는 것을 발견했다. 그러나 이 연구에 사용된 모델과 같은 현재 모델은 효과적이려면 대규모의 레벨 데이터 세트가 필요하다. 그들은 유망하지만, 대형 언어 모델의 높은 데이터 비용이 현재 이 응용 프로그램의 이점보다 크다고 결론지었다. 이 분야의 지속적인 발전은 미래에 더 주류적인 사용으로 이어질 가능성이 높다.

 절차적으로 생성된 음악 및 음향효과 
비디오 게임의 음악 점수는 플레이어에게 장면에 대한 감정적인 톤을 표현하는 중요한 요소이다. 무기가 적을 때리는 소리와 같은 음향효과는 플레이어 행동의 효과를 나타내는 데 도움이 된다. 이러한 것들을 실시간으로 생성하면 게임이 플레이어의 입력에 더 잘 반응하므로 플레이어에게 매력적인 경험을 제공한다. 예를 들어, 2013년 어드벤처 게임 프로테우스는 플레이어가 게임 내 풍경을 보는 각도에 따라 음악을 동적으로 조정하는 알고리즘을 사용한다.

AI의 최근 돌파구는 개발자의 최소한의 입력으로 진화하는 요인에 기반하여 음악과 사운드를 생성할 수 있는 고급 도구의 탄생으로 이어졌다. 그러한 예시 중 하나가 MetaComposure 음악 생성기이다. MetaComposure는 현재 환경의 분위기와 일치하도록 실시간 게임 플레이 중에 오리지널 음악 구성을 생성하도록 설계된 진화 알고리즘이다.Scirea, Marco, et al. "Affective Evolutionary Music Composition with MetaCompose." Genetic Programming and Evolvable Machines, vol. 18, no. 4, December 2017, pp. 433–465. doi:10.1007/s10710-017-9307-y. 이 알고리즘은 "무드 태그"를 통해 게임 상태의 현재 분위기를 평가할 수 있다. 연구 결과에 따르면 플레이어가 평가한 게임 몰입도와 동적으로 생성된 음악 구성이 현재 감정과 정확하게 일치할 때 긍정적인 통계적 상관관계가 유의미하게 나타났다.Scirea, Marco, et al. "Evolving In-Game Mood-Expressive Music with MetaCompose." Proceedings of the Audio Mostly 2018 on Sound in Immersion and Emotion (AM '18), Association for Computing Machinery, 2018, Article 8, pp. 1-8. doi:10.1145/3243274.3243292.

 몬테카를로 트리 탐색 방법 

게임 AI는 종종 경로 탐색과 유한 상태 기계에 해당한다. 경로 탐색은 AI를 한 지점에서 다른 지점으로, 일반적으로 가장 직접적인 방법으로 이동시킨다. 상태 기계는 다른 행동 간의 전환을 허용한다. 몬테카를로 트리 탐색 방법은 플레이어가 극복해야 할 추가적인 장애물을 만들어 더 몰입감 있는 게임 경험을 제공한다. MCTS는 AI가 본질적으로 틱택토를 플레이하는 트리 다이어그램으로 구성된다. 결과에 따라 플레이어에게 다음 장애물을 제공하는 경로를 선택한다. 복잡한 비디오 게임에서는 플레이어가 장애물을 통과하기 위해 여러 전략을 생각해낼 수 있다면 이러한 트리는 더 많은 가지를 가질 수 있다.

NPC 이외의 게임에서의 사용

학술 AI는 NPC 행동을 제어하는 전통적인 관심사 외에 게임 AI 내에서 역할을 할 수 있다. 게오르기오스 N. 야나카키스는 네 가지 잠재적 응용 분야를 강조했다.
 플레이어 경험 모델링: 플레이어의 능력과 감정 상태를 파악하여 게임을 적절하게 맞춤 설정한다. 여기에는 플레이어의 능력에 따라 비디오 게임의 난이도를 실시간으로 조정하는 동적 게임 난이도 조정이 포함될 수 있다. 게임 AI는 또한 플레이어의 의도를 추론하는 데 도움을 줄 수 있다(제스처 인식 등).
 절차적 생성: 환경 조건, 레벨, 심지어 음악과 같은 게임 환경 요소를 자동화된 방식으로 생성한다. AI 방법은 새로운 콘텐츠나 대화형 스토리를 생성할 수 있다.
 사용자 행동에 대한 데이터 마이닝: 게임 디자이너가 사람들이 게임을 어떻게 사용하는지, 어떤 부분을 가장 많이 플레이하는지, 그리고 무엇 때문에 플레이를 중단하는지 탐색하여 개발자가 게임플레이를 조정하거나 수익화를 개선할 수 있도록 한다.
 NPC에 대한 대체 접근 방식: 여기에는 NPC의 신뢰성을 높이기 위해 게임 설정을 변경하고 개별 NPC 행동보다는 사회적 NPC 행동을 탐색하는 것이 포함된다.

절차적 생성 대신 일부 연구자들은 생성적 적대 신경망(GAN)을 사용하여 새로운 콘텐츠를 만들었다. 2018년 콘월 대학교의 연구원들은 둠을 위해 인간이 만든 천 개의 레벨로 GAN을 훈련시켰다. 훈련 후 신경망 프로토타입은 자체적으로 새로운 플레이 가능한 레벨을 설계할 수 있었다. 유사하게, 캘리포니아 대학교의 연구원들은 슈퍼 마리오의 레벨을 생성하기 위해 GAN을 프로토타이핑했다. 2020년 엔비디아는 GAN이 만든 팩맨의 비디오 게임 클론을 선보였다. GAN은 50,000번의(대부분 봇이 생성한) 플레이를 시청하여 게임을 재현하는 방법을 학습했다.

논플레이어 캐릭터(NPC)
논플레이어 캐릭터는 플레이어가 제어하지 않고 AI 시스템에 의해 관리되는 비디오 게임 내의 엔티티이다. NPC는 게임의 몰입감, 스토리텔링, 게임 역학에 기여한다. 그들은 종종 동반자, 퀘스트 부여자, 상인 등으로 봉사한다. AI 기술의 개선 덕분에 지난 몇 년 동안 그들의 사실성은 크게 발전했다.

내러티브 및 게임플레이 역할

NPC는 내러티브 중심 게임뿐만 아니라 오픈 월드 게임에서도 필수적이다. 그들은 게임의 배경 지식과 맥락을 전달하는 데 도움을 주어, 세계관 구축과 내러티브 진행에 중요한 역할을 한다. 예를 들어, NPC는 중요한 정보를 제공하거나, 퀘스트를 제공하거나, 단순히 세계를 채워 넣어 게임에 현실감을 더할 수 있다. 또한, 퀘스트 부여자나 상인으로서의 역할은 그들을 게임플레이 루프의 필수적인 부분으로 만들며, 플레이어가 더 나아갈 수 있도록 자원, 임무 또는 서비스에 접근할 수 있게 한다.

또한, NPC는 상인과 같이 게임에서 기능적인 역할을 하도록 설계되거나 플레이어에게 서비스를 제공하도록 설계될 수 있다. 이 캐릭터들은 플레이어와 게임 내 시스템 사이의 중개자 역할을 하여 게임 역학을 용이하게 하는 데 핵심적인 역할을 한다. 학계는 플레이어와 NPC 간의 상호작용이 종종 간단하지만 맥락적으로 관련성 있게 설계되어, 플레이어가 게임 플레이 지속성을 위해 필요한 피드백이나 자원을 받을 수 있도록 한다고 말한다.

NPC 인공지능의 발전

최근의 인공지능 발전은 NPC의 복잡성과 사실성을 크게 향상시켰다. 이러한 발전 이전에 AI는 사전 프로그래밍된 행동으로 작동하여 예측 가능하고 반복적이었다. AI가 발전함에 따라 NPC는 플레이어에게 더욱 적응하고 동적으로 반응할 수 있게 되었다. 전문가들은 딥러닝과 강화 학습 기술의 통합으로 NPC가 플레이어의 행동에 반응하여 자신의 행동을 조정할 수 있게 되어, 더욱 상호 작용적이고 개인화된 게임플레이 경험을 제공한다고 생각한다.

그러한 발전 중 하나는 적응형 행동 모델의 사용이다. 이는 NPC가 실시간으로 플레이어의 결정을 분석하고 학습할 수 있도록 한다. 이러한 행동은 훨씬 더 매력적인 경험을 가능하게 한다. 예를 들어, 해당 분야의 전문가들이 말했듯이, 현대 비디오 게임의 NPC는 이제 전투에서 전술을 조정하거나 과거 상호 작용에 따라 대화를 변경하는 등 플레이어의 행동에 더욱 정교하게 반응할 수 있다. 딥러닝 알고리즘을 사용함으로써 이러한 시스템은 인간과 유사한 의사 결정을 모방하여 NPC가 정적인 게임 요소가 아닌 실제 사람처럼 느껴지도록 한다.

NPC AI의 또 다른 발전은 자연어 처리의 사용으로, 이를 통해 NPC는 플레이어와 더 현실적인 대화를 나눌 수 있다. 이전에는 NPC 대화가 고정된 응답 세트로 제한되었다. NLP는 NPC 대화의 유동성을 향상시켜 플레이어 입력에 더 맥락적으로 응답할 수 있게 한다. 이러한 발전은 플레이어가 스토리라인과 게임 플레이 결과에 영향을 미치는 더 복잡한 대화에 참여할 수 있게 되면서 플레이어-NPC 상호 작용의 깊이와 몰입감을 증가시켰다.

또한, 딥러닝 모델은 NPC가 플레이어의 행동을 예측하는 능력을 향상시켰다. 딥러닝은 NPC가 대량의 데이터를 처리하고 플레이어 전략에 적응할 수 있도록 하여, 그들과의 상호 작용을 덜 예측 가능하고 더 다양하게 만든다. 이는 NPC가 플레이어 행동으로부터 "학습"할 수 있게 됨에 따라 게임 내에서 더 큰 현실감을 제공하므로, 더욱 몰입감 있는 경험을 만들어낸다.

NPC 개발의 과제

NPC AI의 모든 발전에도 불구하고, 개발자들이 NPC를 설계하는 데에는 여전히 상당한 과제가 남아 있다. 그들은 현실성, 기능성, 그리고 플레이어의 기대치 사이의 균형을 맞춰야 한다. 핵심 과제는 NPC가 게임플레이를 방해하는 대신 플레이어 경험을 향상시키도록 하는 것이다. 예측 불가능하게 행동하는 지나치게 현실적인 NPC는 진행을 방해하거나 몰입감을 깨뜨려 플레이어를 좌절시킬 수 있다. 반대로, 너무 예측 가능하거나 단순한 NPC는 플레이어의 참여를 유도하지 못하여 게임의 내러티브와 메커니즘의 전반적인 효과를 감소시킬 수 있다.

고려해야 할 또 다른 요소는 NPC에 고급 AI를 구현하는 데 드는 계산 비용이다. 이러한 고급 AI 기술을 사용하려면 많은 양의 처리 능력이 필요하며, 이는 사용을 제한할 수 있다. AI 기반 NPC의 성능과 게임의 전반적인 기술적 한계 사이의 균형을 맞추는 것은 원활한 게임플레이를 보장하는 데 중요하다. 전문가들은 특히 수많은 NPC가 플레이어와 동시에 상호 작용해야 하는 대규모 오픈 월드 게임에서 게임 시스템에 과부하가 걸리지 않도록 개발자들이 자원을 효율적으로 할당해야 한다고 언급했다.

마지막으로, 광범위한 플레이어 행동에 동적으로 반응할 수 있는 NPC를 만드는 것은 여전히 어려운 과제이다. NPC는 스크립트화된 상호 작용과 플레이어가 예상치 못한 방식으로 행동할 수 있는 비스크립트화된 시나리오를 모두 처리할 수 있어야 한다. 이러한 가변성에 적응할 수 있는 NPC를 설계하려면 수많은 가능한 상호 작용을 설명할 수 있는 복잡한 AI 모델이 필요하며, 이는 개발자에게 자원 집약적이고 시간이 많이 소요될 수 있다.

치팅 AI

비디오 게임의 인공지능 맥락에서, 치팅이란 프로그래머가 에이전트에게 동일한 상황에서 플레이어가 사용할 수 없는 행동과 정보에 대한 접근 권한을 부여하는 것을 의미한다. 아타리 8비트가 인간 플레이어와 경쟁할 수 없다고 믿은 크리스 크로퍼드는 컴퓨터가 제어하는 러시아 측에 유리한 이스턴 프론트 (1941)의 버그를 고치지 않았다. 컴퓨터 게이밍 월드는 1994년에 "많은 AI가 인간 플레이어와 보조를 맞추기 위해 '치팅'하거나 (적어도) '속임수'를 쓰는 것은 잘 알려진 사실"이라고 보도했다.

예를 들어, 에이전트가 플레이어가 근처에 있는지 알고 싶다면 복잡하고 인간과 유사한 센서(시각, 청각 등)를 부여받거나 단순히 게임 엔진에 플레이어의 위치를 물어봄으로써 치팅할 수 있다. 일반적인 변형에는 레이싱 게임에서 AI에 더 빠른 속도를 부여하여 플레이어를 따라잡거나 1인칭 슈팅 게임에서 유리한 위치에 AI를 생성하는 것이 포함된다. AI에서 치팅을 사용하는 것은 인공적으로 달성할 수 있는 "지능"의 한계를 보여준다. 일반적으로 전략적 창의성이 중요한 게임에서 인간은 이러한 이점이 없었다면 최소한의 시행착오 끝에 AI를 쉽게 이길 수 있었을 것이다. 치팅은 성능상의 이유로 종종 구현되며, 많은 경우 그 효과가 플레이어에게 명백하지 않은 한 허용될 수 있다고 간주될 수 있다. 치팅은 AI에 특별히 부여된 특권만을 의미하며, 컴퓨터에 내재된 비인간적인 신속성과 정확성은 포함하지 않지만, 플레이어는 에이전트가 인간 플레이어와 다르게 행동하는 결과를 초래하면 컴퓨터의 내재된 이점을 "치팅"이라고 부를 수 있다. 시드 마이어는 문명에서 멀티플레이어 동맹을 생략했는데, 컴퓨터가 인간만큼 동맹을 잘 사용한다는 것을 발견했고, 이로 인해 플레이어들은 컴퓨터가 치팅한다고 생각했기 때문이라고 밝혔다. 개발자들은 대부분의 게임 AI는 정직하지만, 플레이어들이 "치팅" AI에 대해 잘못 불평하는 것을 싫어한다고 말한다. 또한, 인간은 다른 사람들에게는 사용하지 않을 전술을 컴퓨터에 대해 사용한다.

사례
1996년 게임 크리처스에서 사용자는 작은 털복숭이 동물을 "부화"시켜 행동하는 방법을 가르친다. 이 "노른"들은 말하고, 스스로 먹이를 먹고, 사악한 생물로부터 자신을 보호할 수 있다. 이 게임은 대화형 시뮬레이션에서 기계 학습을 처음으로 대중적으로 적용한 사례였다. 생물들은 인공 신경망을 사용하여 무엇을 해야 할지 배운다. 이 게임은 환경과 상호 작용하는 생물의 행동을 모델링하는 것을 목표로 하는 인공생명 연구의 돌파구로 여겨진다.

2001년 1인칭 슈팅 게임 헤일로: 컴뱃 이볼브드에서 플레이어는 마스터 치프 역할을 맡아 다양한 외계인과 도보 또는 차량으로 싸운다. 적들은 엄폐물을 현명하게 사용하고, 제압 사격과 수류탄을 사용한다. 분대 상황은 개인에게 영향을 미치므로, 특정 적들은 지도자가 죽으면 도망친다. 적들이 수류탄을 다시 던지거나 팀원들이 귀찮게 굴면 반응하는 등 작은 세부 사항에도 신경을 쓴다. 근본적인 "행동 트리" 기술은 헤일로 2 이후 게임 산업에서 매우 인기를 얻었다.

2005년 심리적 공포 1인칭 슈팅 게임 F.E.A.R.는 플레이어 캐릭터가 대대의 복제된 슈퍼솔저, 로봇 및 초상현상 생물체와 교전한다. AI는 메인스트림 게임에서 처음으로 플래너를 사용하여 상황에 맞는 행동을 생성한다. 이 기술은 여전히 많은 스튜디오에서 참고 자료로 사용된다. 복제 인간들은 테이블과 선반을 뒤집어 엄폐물을 만들거나, 문을 열거나, 창문을 부수거나, 심지어 플레이어의 손전등을 감지하고 동료들에게 경고하는 등 게임 환경을 자신에게 유리하게 활용할 수 있다. 또한 AI는 측면 공격 기동을 수행하고, 제압 사격을 사용하고, 플레이어를 엄폐물 밖으로 내보내기 위해 수류탄을 던지거나, 심지어 죽은 척할 수도 있다. 이러한 행동 중 대부분, 특히 측면 공격은 창발적 행동의 결과이다.

생존 공포 시리즈인 S.T.A.L.K.E.R. (2007–)는 플레이어를 인간이 만든 실험체, 군인, 그리고 스토커로 알려진 용병들과 마주하게 한다. 만약 난이도가 최고로 설정되어 있다면, 마주치는 다양한 적들은 부상당한 아군을 치유하고, 명령을 내리고, 플레이어를 포위하고, 정확하게 무기를 사용하는 것과 같은 전투 전술과 행동을 사용한다.

2010년 실시간 전략 게임인 스타크래프트 II: 자유의 날개는 플레이어에게 1대1, 2대2 또는 3대3 전투 경기장에서 세 진영 중 하나를 제어할 수 있는 권한을 부여한다. 플레이어는 모든 유닛과 기지를 파괴하여 상대방을 물리쳐야 한다. 이는 상대방의 유닛에 효과적인 유닛을 생성함으로써 달성된다. 플레이어는 매우 쉬움부터 치터 3(미친)까지 다양한 AI 난이도와 대결할 수 있다. AI는 치터 1(시야) 난이도에서 치팅할 수 있는데, 이는 플레이어가 동일한 상황에서는 볼 수 없는 유닛과 기지를 볼 수 있음을 의미한다. 치터 2는 AI에게 추가 자원을 제공하며, 치터 3은 상대방에게 광범위한 이점을 제공한다.

2018년 락스타 게임즈가 출시한 레드 데드 리뎀션 2는 현대 비디오 게임에서 AI가 고급으로 사용된 사례를 보여준다. 이 게임은 NPC의 행동과 동적인 게임 세계를 지배하는 매우 상세한 AI 시스템을 통합한다. 게임 내 NPC는 환경, 플레이어 상호작용, 시간 등 다양한 요인을 기반으로 복잡하고 다양한 행동을 보여준다. 이러한 수준의 AI 통합은 캐릭터가 플레이어에게 현실적인 방식으로 반응하는 풍부하고 몰입감 있는 경험을 만들어내며, 이는 게임이 가장 진보된 오픈 월드 게임 중 하나라는 명성에 기여한다.

비디오 게임의 생성형 인공지능
생성형 인공지능, 즉 프롬프트에 반응하여 텍스트, 이미지, 오디오 및 비디오 클립을 생성할 수 있는 AI 시스템은 2023년 챗GPT 및 스테이블 디퓨전과 같은 시스템과 함께 등장했다. 비디오 게임에서 이러한 시스템은 게임 자산이 무한히 생성될 수 있는 잠재력을 창출하여 인간 창작의 일반적인 한계를 우회할 수 있다.

예를 들어, 2024년 웹 게임 샌드박스 게임인 인피니트 크래프트는 생성형 인공지능 소프트웨어, 그 중 LLaMA를 사용한다. 두 요소가 결합될 때, AI에 의해 새로운 요소가 생성된다.
2024년 브라우저 기반 게임 오아시스는 생성형 AI를 사용하여 비디오 게임 마인크래프트를 시뮬레이션한다. 오아시스는 수백만 시간의 마인크래프트 영상을 학습하여 이 데이터셋을 사용하여 게임 플레이의 다음 프레임이 어떻게 보일지 예측한다. 오아시스는 데이터를 저장하지 않기 때문에 객체 영구성이 없다.

그러나 다른 분야, 특히 이러한 자산 생성에 일반적으로 사용되는 일자리의 손실 가능성에 대한 유사한 우려가 있다.
2024년 1월, 미국 배우 노동조합인 SAG-AFTRA는 레플리카 스튜디오와 계약을 맺어 레플리카가 노조 배우들의 음성 작업을 캡처하여 비디오 게임에서 그들의 목소리를 기반으로 한 AI 음성 시스템을 만들 수 있도록 했으며, 이 계약은 급여와 권리 보호를 보장했다. SAG-AFTRA 위원회는 이 계약에 동의했지만, 많은 회원들은 계약이 완료될 때까지 통보받지 못했고 거래가 배우들을 충분히 보호하지 못했다는 비판을 표명했다.

AI의 발전
비디오 게임 AI의 최근 발전은 논플레이어 캐릭터(NPC)에서 더 복잡하고 적응적인 행동을 가능하게 했다. 예를 들어, "게임 속 인공지능"에서 논의된 바와 같이 AI 시스템은 이제 결정 트리 및 상태 기계와 같은 정교한 기술을 사용하여 NPC 상호 작용 및 현실감을 향상시킨다.[*Artificial Intelligence in Games*](https://link.springer.com/content/pdf/10.1007/978-3-319-42716-4.pdf). SpringerLink, 2016. 비디오 게임 AI의 최근 발전은 NPC의 동적이고 적응적인 행동을 개선하는 데도 초점을 맞췄다. 예를 들어, 최근 연구는 NPC가 플레이어 행동을 기반으로 자신의 행동을 학습하고 적응할 수 있도록 복잡한 인공 신경망을 사용하는 것을 탐구하여 전반적인 게임 경험을 향상시킨다. 이 접근 방식은 IEEE 논문 "대화형 게임 시스템을 위한 AI 기술"에 자세히 설명되어 있다.[*AI Techniques for Interactive Game Systems*](https://ieeexplore.ieee.org/abstract/document/6363215). IEEE, 2012.

 같이 보기 
 비디오 게임 봇
 인공지능의 개요

 각주 

 외부 링크 
 Special Interest Group on Artificial Intelligence @IGDA
 AI Game Programming Wisdom on aiwisdom.com
 Georgios N. Yannakakis and Julian Togelius

분류:게임 인공지능
분류:비디오 게임 개발