인기있는 게임에서 AI는 어떻게 가장 일반적으로 구현됩니까?


16

나는 gamedev가 아니며 게임이 아닌 호기심 많은 코더입니다. FPS와 같은 인기있는 현대 게임에서 AI가 어떻게 작동하는지 궁금합니다. 하드 코딩 된 규칙을 기반으로합니까? 자율 주행 차 등에 사용되는 것과 같은 다른 종류의 AI와 얼마나 공통점이 있습니까? 개발자는 AI가 자연스럽게 동작하고 재미있게 플레이 할 수 있도록 어떻게 보장합니까?

나는 구글에서 MinMax의 다른 파생 상품을 언급했지만 AI가 보상하는 행동 / 상태와 AI가 보상하는 행동 및 다른 행동의 성공 가능성을 파악하는 방법에 대해 AI가 어떻게 처리 하는가에 대답하지 못했습니다. 기계 학습이 여기에 언급되어 있지만 심각한 게임에는 사용되지 않는 것 같습니다.


나는 대부분의 게임이 적응 형 AI를 사용한다는 것을 의심한다.
jcora

답변:


16

많은 방법이 있습니다. 각 장르마다 고유 한 문제가 있기 때문에 FPS에 대해 답변하겠습니다. AI 접근 방식은 문제 영역과이를 가장 잘 표현하는 방법에 크게 의존합니다.

일반적인 FPS 접근 방식은 다음과 같습니다.

그리고 위의 다양한 순열과 변형.

Minimax는 일반적으로 FPS와 같은 연속 상태의 게임에는 사용되지 않으며, Chess와 같은 개별 게임 공간의 턴 기반 게임에는 더 많이 사용됩니다. 높은 수준에서 계획하는 데 사용될 수 있지만 일반적으로 더 나은 시스템이 없기 때문에 아닙니다 (예 : 위와 같은) 여러 적, 불완전한 정보, 그러나 간단한 계획에 직면했을 때.

그들은 플레이 테스팅을 통해 AI가 재미 있다는 것을 보장합니다. 너무 어려운 경우 의사 결정 휴리스틱 스에 오류가 발생하거나 반응이 지연되거나 목표에 임의의 요인을 적용 할 수 있습니다. 충분히 어려우면 알고리즘에 제공되는 데이터를 개선하기 만하면됩니다. .



2

두 가지 더 일반적인 방법

UCT 검색. 형식주의가 있지만 아이디어는 기본적으로 게임이 끝날 때까지 무작위로 플레이하는 것입니다. 순수한 형태의 이것에 대한 좋은 점은 AI가 더 나은 또는 더 나쁜 움직임에 대한 지식이 필요 없다는 것입니다.

일반적으로 알파-베타 트리 가지 치기와 결합 된 Minmax 검색은 기본적으로 게임 공간을 어느 정도 깊이 검색하여 모든 터미널 노드를 숫자 값을 할당하는 정적 평가기로 평가합니다. 이것은 승리를 향한 진전을 측정하는 명백한 지표가있는 게임에 적합합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.