궁극적 인 실시간 전략 게임 AI를 개선하기 위해 무엇을 할 수 있습니까?


12

나는 실시간 전략 게임에서 자원 부정 행위없이 AI를 만들 수 있는지 여부에 대해 내 친구 와이 채팅을했습니다. 거의 완벽하게 재생되는 AI. 오늘날 게임의 AI에는 개선 할 수있는 많은 영역이 있으며, 대부분은 자원 부정 행위, 그로 인해 더 나은 초기 기반 개발 및 파도 공격에 의존합니다.

그럼에도 불구하고 궁극적 인 AI를 얻기 위해이를 개선하기 위해 무엇을해야 하는가가 문제입니다. 또한 특정 기능이 사용 된 게임의 예가 있다면 좋을 것입니다.

편집 : 제목을 읽지 않은 사람들이나 문제를 설명하는 몇 가지 단락을 제공 할 수있는 설명이 거의 없습니다. 이것은 실시간 전략 게임과 최고의 AI에 관한 것입니다. 그것은 Strarcraft, Warcraft, Generals, Red Alert, Age of Empires, AI War 등을 의미합니다. 하나 이상의 난이도가있는 게임이지만 여기서의 초점은 궁극적 인 도전에 있습니다.

tenpn에는 훌륭한 리소스로 가득 찬 환상적인 게시물이 있습니다. tenpn 감사합니다! 더 많은 사람들이 그 방향에 기여하기를 바랍니다.


6
실제로이 질문은 특정 사례가 없으면 의미가 없습니다. 모든 게임에는 관련 게임 메커니즘에 따라 AI를 구현하는 다양한 방법이 있으며 '게임 개선 방법'은 크게 다릅니다. 최소한 여기에 '올바른'답변이 없으므로 Community Wiki이어야합니다.
MrCranky

2
전자에 더하여 : 체스는 전략 게임이라고 생각하십시오.
Rushyo

1
왜 하시겠습니까? Pong 게임을위한 완벽한 AI를 만드는 것은 결코 사소한 일이 아니며 게임을 즐기는 재미도 없습니다. 게임 AI의 목표는 컴퓨터가 아닌 플레이어가 재미 있어야하기 때문에 플레이어를이기는 것이 아닙니다.
Ian Schreiber

1
Ian : OP는 Pong과는 매우 다른 것에 대해 이야기하고 있습니다. 탁월한 Pong AI 또는 Tic-Tac-Toe AI를 쉽게 만들 수 있습니다. 체스는 최고, 최고, 최고 만이 물리 칠 수있는 AI로 가져갈 수 있습니다. 그러나 RTS는 다른 볼 게임입니다.
공산주의 오리

2
STRIPS 알고리즘에 관심이있을 수 있습니다 .
user712092

답변:


12

대답하기 어려운 질문입니다. 개선이 필요한 사항을 설명하려면 알려진 AI가 있어야합니다. 그러나 다음은 aigamedev.com의 RTS AI에 대한 몇 가지 예입니다 (등록 필요).

불행히도 정말 좋은 것들의 대부분은 페이 월 뒤에 있습니다.

일반적인 AI 솔루션은 목표 지향 액션 플래너 (Goal-Orientated Action Planner)로, 규칙을 사용하여 목표를 충족시키기위한 계획을 수립합니다. 지금은 꽤 오래되었지만 매우 시원합니다. 거기의 간단한 개요 가 FPS 게임에 적용된 방법에 대한 제프 Orkin의 사이트에서 사용할 수 (PDF 파일)하지만 (다른 규칙과 목표에) 정확히 같은 원리는 RTSS 작동합니다.

많은 RTS는 GOAP의 계층 구조를 사용하며, 위의 레벨에서 목표를 달성하는 다른 레벨과 전장의 다른 레벨의 세부 사항과 관련됩니다. 나는 이런 식으로 구성 된 2 차 세계 대전 16 진수 전쟁 게임의 AI에 대한 훌륭한 기사를 읽었지만 Google의 모든 것에서는 지금 링크를 찾을 수 없습니다. 나를 도울 수있는 사람을위한 골드 스타.

물론 GOAP 및 기타 플래너의 효과는 게임 세계를 얼마나 잘 파싱하고 액션과 목표를 개선했는지에 달려 있습니다.

다른 일반적인 기술로는 점수 및 우선 순위를위한 유틸리티 아키텍처 (pdf)와 게임 세계를 파싱하기위한 칠판 이 있습니다.


6

요점은 AI가 있다면

실시간 전략 게임에서 자원 부정 행위없이 모든 사람을 이길 수있는

그들이 당신이 첫 번째 레벨을 넘어서지 못했기 때문에 아무도 게임을하지 않을 것입니다.

AI 프로그래밍의 가장 어려운 부분은 AI를 능가하지만 약간의 기술을 가진 사람이 능가하는 것입니다. 이기기가 너무 쉬워지면 플레이어는 도전의 부족으로 인해 해고 당하고 너무 힘들게 만들면 사람들은 항상 구타 당하게됩니다.

따라서 복잡한 AI를 만드는 것이 아닙니다 (결국 AI는 게임 영역 내에서 동시에 모든 것을 처리 할 수 ​​있지만 플레이어는 화면상의 내용 만 처리 할 수는 없습니다). 균형 잡힌 게임을 만드는 것이 더 중요합니다.


1
분명히 말하면, AI가 인간이 기대할 수있는 것보다 더 세밀하게 단위를 제어 할 수 있기 때문에 (UI 제약 때문에) 인간을 이길 수있는 AI를 만드는 것은 그리 어렵지 않습니다. 인간은 이벤트에 반응하고, 유닛을 선택하고 명령하는 데 몇 초가 걸리지 만 AI는 모든 이벤트에 대한 응답으로 모든 '게임 턴'마다 개별적으로 모든 유닛의 주문을 업데이트 할 수 있습니다. 그러나 실제로 이것은 게임을 지루하게 만들므로 수행되지 않습니다. 정말 어려운 부분은 AI 바보를 이길만큼 충분히 만드는 것입니다.
Skizz

3
설명을 명확하게하는 것 – 탁월한 AI를 만드는 것은 그리 어렵지 않습니다. AI를 능가하고 도전적이며 참여시키는 것은 훨씬 어렵습니다.
Skizz

3

많은 것을 할 수 있었지만이 질문에 대한 나의 즉각적인 반응은 반대 질문이었습니다. 왜 누군가 RTS AI를 원할까요? 그리고 왜이 사람이 다른 사람을 상대로 온라인 게임을하지 않습니까?

요점은 다음과 같습니다는 AI 매우 저렴한을 할 수있는 문제가 아니에요, 그것은 충분히 빨리 생각하고의 문제입니다. (예를 들어, 그것은 3를 상대로 게임을 할 수 있도록하거나와 같은지도도 7 AI 상대의 바로 가기를 취할) 일반 컴퓨터. 오늘과 내일도 지금부터 10 년이 지나도 바뀌지 않을 것으로 기대합니다.

다음 문제는 AI가 엄격한 규칙을 따르는 한 악용 될 수 있다는 것입니다. 퍼지 규칙조차도 악용에 취약합니다. AI는 배워야 할 것이며 의도적이거나 의도적이지 않은 실수를해야합니다. 또한 당신을 놀라게해야합니다. 그리고 다른 인간과 대결하고 있습니다. 인공 지능은 알고리즘 및 처리 능력 측면에서 인간의 사고 방식을 복사하는 것에 가깝지 않기 때문에 다른 플레이어와 경쟁하기가 쉽지 않은 단일 플레이어 AI에서 시간을 낭비하지 않는 것이 좋습니다. 관련된 사회적 요인에 대해서만 인간.


1

'리소스 부정 행위'로 정의하는 것은 레이싱 게임의 '부스트 밸런싱'과 같습니다. '부스트 (boost)'는 팩을 서로 근접하게 유지하여 타이트한 레이스의 착시를 만들어내는 데 사용됩니다. 플레이어가 리드에 있지 않으면 CPU 플레이어가 시야에있을 수 있으며 플레이어 리드에 있으면 CPU 자체가 평범한 드라이버 일지라도 상대방을 꼬리에 직접 대고 압력을가합니다.

RTS에서는 최적으로 배열 할 수있는 값 모음을보고 있습니다. 자원을 얻는 데 걸리는 시간, 건물 항목 비용,지도 통과 시간 등을 정확히 알고 있습니다.

테이블을 만든 사람이고 정보를 쉽게 사용할 수있는 경우 출력에 가장 적합한 비율을 찾기 위해 데이터를 크런치하는 것이 문제입니다.

그러나 경기장의 상황에 따라 항상 똑같은 일을하는 적을 상대하는 것이 얼마나 재미 있습니까?

그래서 당신은 혼돈을 추가합니다. 슬라이딩 스케일에서 AI에 효율성을 제공합니다. 당신은 플레이어를 괴롭 히고 있습니다. 플레이어가 너무 잘하는 것처럼 보이면 AI에 약간의 바람을 피우고 플레이어에게 발끝을 유지하기 위해 추가 자원이나 강화를 제공하십시오.

AI가 약한 AI를 때리거나 Hal9000에 의해 학살되는 대신 도전적인 상대를 향한 만족감을 느끼기를 원합니다. CPU 상대방의 완벽 함은 결함에 있습니다. :)


2
그리고 다르지만 관련성 : AI가 기술적으로 최선의 선택이 아닌 일을하는 경우가 있지만, 특이한 유닛이나 이동 (예 : 플레이어 기지 뒷면의 에어 드롭 핑 부대 사용)과 같이 게임에 약간의 재미를 더하는 것이 좋습니다 )
바트 반 Heukelom

0

한 가지 큰 것은 게임의 전략적 개발을 따라야한다는 것입니다. 인공 지능의 핵심 군대가 Terran vs Terran 게임을하는 방법이라고 생각한다면 AI가 스타 크래프트 1 매치 (페어 플레이)에서 이길 수는 없습니다.

이것은 구식 전략의 선택으로 인해 AI가 지속적으로 구타를 당하지 못하게 할뿐만 아니라 AI가 실행 가능한 선택을 할 경우 게임에 대한 접근 방식의 레퍼토리가 더 커지면 AI가 더 매력적입니다.

풍부한 전략 트리는 난이도 슬라이더를 허용합니다. 예를 들어, 미친 저그 AI는 적에게 적응할 수 있고 기회가 주어질 때 빠르게 확장 할 수있는 유연한 접근 방식을 취하는 경향이 있지만, 보통 난이도에서는 더 단단한 구조를 선택하고 대량 확장에 덜 취약합니다.

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