게임 인공지능
IT 위키
더 많은 작업
게임 인공지능(Game AI)은 게임 속 캐릭터·적·환경이 플레이어에게 그럴듯하고 재미있게 반응하도록, 행동을 결정하고 경로를 찾으며 콘텐츠와 난이도를 조절하는 기술이다.
게임 인공지능의 목표는 학문적 인공지능과 다르다. 가장 똑똑한 상대가 아니라 플레이어가 재미를 느끼는 상대를 만드는 것이 목적이다. 그래서 일부러 실수하게 하거나, 정해진 프레임 시간 안에 계산을 끝내도록 단순한 규칙과 휴리스틱을 즐겨 쓴다. 최근에는 강화 학습과 생성형 모델이 개발·운영 쪽으로 들어오고 있다.
| 기법 | 쓰임 |
|---|---|
| 유한 상태 기계(FSM) | 순찰 → 추적 → 공격 → 도주처럼 상태와 전이 조건으로 NPC 행동을 짠다 |
| 행동 트리(Behavior Tree) | 조건·순서·선택 노드를 트리로 엮어 복잡한 행동을 모듈 단위로 만든다 |
| 규칙 기반·스크립트 | 미리 정한 규칙과 이벤트 스크립트로 퀘스트·대사를 진행한다 |
| 경로 탐색 | A* 알고리즘과 내비게이션 메시로 장애물을 피해 목적지까지 간다 |
| 게임 트리 탐색 | 바둑·체스 같은 턴제 게임에서 미니맥스·알파베타 가지치기, 몬테카를로 트리 탐색으로 수를 고른다 |
| 강화 학습 | 보상을 최대화하는 정책을 학습한다. 대전 AI, 밸런스 시험, 자동 플레이 테스트에 쓴다 |
| 절차적 콘텐츠 생성 | 지형·던전·아이템을 알고리즘으로 만든다 |
| 플레이어 모델링 | 플레이 기록을 분석해 난이도를 맞추고(동적 난이도 조절) 이탈을 예측한다 |
MMORPG(Massively Multiplayer Online Role-Playing Game, 다중 접속 역할 수행 게임)는 수천~수만 명이 하나의 지속되는 가상 세계에 함께 접속한다. 혼자 또는 소수가 하는 기존 온라인 게임(대전·방 단위 게임)의 인공지능과 비교하면 다음이 다르다.
| 구분 | 기존 온라인 게임(세션형·소규모) | MMORPG |
|---|---|---|
| 대상 | 한 판(세션)에 참여한 소수 플레이어 | 같은 세계를 공유하는 대규모 플레이어 집단 |
| 세계 | 판이 끝나면 초기화 | 서버가 꺼지지 않는 지속 세계. NPC·경제·생태계 상태가 계속 이어진다 |
| 계산 위치 | 클라이언트나 호스트 하나에서 계산해도 된다 | 서버 측 계산이 원칙(부정행위 방지). 수많은 NPC 를 동시에 돌려야 해 확장성·부하 분산이 핵심 |
| 상대 | AI 가 주로 플레이어의 대전 상대 | NPC 가 상대이자 상인·퀘스트 제공자·사회 구성원. 플레이어끼리의 상호작용이 크다 |
| 집단 행동 | 개별 NPC 위주 | 몬스터 무리·공성전의 군집·협동 AI, 파티 단위 전투(어그로·역할 분담) 대응 |
| 경제·사회 | 거의 없음 | 아이템 시세·자원 순환 같은 가상 경제의 균형 유지, 길드·평판 같은 사회 시스템 |
| 적응 | 판마다 같은 난이도 | 플레이어 수준이 크게 다르므로 지역·시간대·인원에 따른 동적 난이도 조절 |
| 운영 | 출시 후 변화가 적음 | 장기 운영 중 로그 분석으로 밸런스를 고치고, 작업장·봇 탐지와 부정행위 방지에 AI 를 쓴다 |
| 실시간성 | 지연이 짧은 소규모 통신 | 네트워크 지연과 동기화를 감안해 NPC 반응을 서버·클라이언트로 나눠 처리 |
정리하면 MMORPG 의 인공지능은 한 명을 상대하는 똑똑함보다 많은 사람이 함께 사는 세계를 오래 유지하는 능력이 중요하다. 대규모 동시 처리, 지속 세계의 상태 관리, 집단·사회적 행동, 가상 경제 균형, 운영 데이터 기반의 학습과 부정행위 탐지가 기존 온라인 게임과 구별되는 특이점이다.