DampeS8N의 시작 문단에 동의하지만 (즉, 게임 AI는 플레이어 가 현명 하다고 생각할 수있을 정도로 똑똑해야합니다 ),이 질문은 좀 더 정교 해질 필요가 있다고 생각 합니다. 사용중인 데이터 구조는 모든 수준에서 FSM이 될 수 있지만 개별 시스템의 작동 방식에 대한 질문에 실제로 대답하지는 않습니다 .
면책 조항 : 나는 문명 게임을 거의하지 않았으므로 게임 플레이에 대한 나의 이해가 제한적입니다. 명백한 오류가 있으면 사과드립니다. 저를 바로 잡으십시오. 기꺼이 편집하겠습니다.
원본 IGN 기사 에서 인용을 할 것 입니다.
1. 전술 AI
최하위 레벨에서 전술 AI는 현재의 부대를 사용하여 지역 규모의 전투에서 승리합니다.
이것은 아마도 서브 시스템의 가장 표준적인 부분 일 것입니다. FSM, 비헤이비어 트리 (또는 AI의 난이도에 따라 임의의 동작을 수행)를 사용하여이를 수행 할 수있는 방법은 무한합니다.
그러나이 게임은 위험과 유사한 턴 기반 게임이므로 각 유닛에 점수가 부여 될 가능성이 높습니다. 그런 다음 다양한 변수 (충성도, 지형 보너스 등)에 따라이 점수에 승수가 추가됩니다.
결과는 다음과 같이 계산됩니다.
If (AI unit score >> (much greater) enemy unit score) Then Completely destroy enemy unit
If (AI unit score > (somewhat greater) enemy unit score) Then Partially destroy enemy unit
If (AI unit score < (somewhat less) enemy unit score) Then Partially destroy AI unit
If (AI unit score << (much less) enemy unit score) Then Completely destroy AI unit
AI가 전투 중에이 점수를 극대화하려고 시도하는 것이 합리적입니다.
엡실론 값을 추가하면 (예 : 작은 무작위 실패 / 실패 가능성) AI가 꽤 괜찮아 보입니다 (아무도 완벽한 상대를 원하는 사람은 없습니다!).
2. 운영 AI
그로부터 한 걸음 더 나아가서, 인공 지능 인공 지능은 어떤 전투와 싸울 것인지 선택하고 필요한 부대를 이용할 수있게합니다.
나는 이것에 몇 가지 포인트가 있다고 생각합니다.
- 현재 강도 평가
- 유닛 강화
- 선택 / 피해야 할 싸움 평가
현재 힘 평가 -이것은 단지 영향 맵 을 비명을 지 릅니다 . 16 진 격자에 쉽게 표현할 수 있습니다. 이 하위 시스템은 전투 지향적이므로 영향 값은 주변에있는 각 유닛의 강도 값을 나타낼 수 있습니다. 작은 육각형 지역에 집중된 대규모 군대가 있다면 영향 값이 크며 작전 AI는 이것을 선택하여 전투를 평가할 때 이것을 고려합니다. 잊지 말고, 상대 군대의 영향력 값도 계산됩니다. 이를 통해 운영 AI는 잠재적 인 들어오는 위협을 예측할 수 있습니다.
유닛의 강화 -AI는 영향 맵에서 반대 진영에 대한 정보를 수신하여 어떤 유닛이 가장 위협이 많은지를 결정할 수 있습니다. 그런 다음 AI는 근접 유닛에게 명령을 내려 위협 당을 강화하고 강화할 수 있습니다.
선택 / 피해야 할 싸움 평가 -여기에서 몇 가지 상황이 발생할 수 있습니다. AI가 유닛이 위협에 처한 것을 감지하고이를 도울 수있는 근처 유닛이없는 경우 a) 유닛을 희생하기로 결정 (예를 들어 대체 할 수없는 장군 대신 보병이 적은 경우) 또는 b) 유닛 주문 후퇴합니다. 반대로, AI가 군대 근처에서 약한 적 유닛을 감지하면 유닛이이 적을 꺼내도록 명령 할 수 있습니다.
실시간 전략 게임에서 영향 맵을 사용 하는 괜찮은 논문 이 있습니다.
3. 전략적 AI
전략적 AI는 도시를 건설 할 위치와 도시와의 관계에 중점을두고 제국 전체를 관리합니다.
"어디에서 도시를 건설해야합니까?" 위치 평가처럼 들립니다. 체스 프로그램 및 기타 게임은이를 사용하여 주어진 위치의 바람직 성을 결정합니다. 예를 들면 다음과 같습니다.
16 진 A : 자원과 근접, 높은 지형, 아군과 근접, 적과 근접 16 진 B : 자원과, 중간 레벨 지형, 아군과 중간 거리, 적과 거리
위치 평가 기능은 다음과 같은 세 가지 요소를 취할 수 있습니다.
Score = Proximity to resources (closer yields a higher score) +
terrain elevation (higher yields higher score) +
proximity to allies (closer is better) +
proximity to enemies (farther is better)
그리고 어느 육각형이 더 높은 점수를 얻었는지, 도시가 세워지는 곳이 될 것입니다. 평가 기능에 대한 자세한 내용은 여기를 참조하십시오 .
나는 전략적 인공 지능이 인공 지능이 추구하는 승리의 유형에 따라 게임에 많은 의사 프리 베이크 전략을 가지고 있다고 생각한다.
4. 그랜드 전략 AI
사다리의 맨 위에는 게임을 이길 방법을 결정하는 거대한 전략적 AI가 있습니다.
나는 이것이 아마도 가장 간단한 것 같아서, 그것이 실제로보다 인상적이라는 인상을줍니다. 이와 같은 게임에서는 한정된 수의 승리 유형 만 있습니다. 이 기사에서는 얼라이언스 승리 등이 있다고 가정 할 때 정복 승리를 언급합니다.이 유형 중 하나를 임의로 선택하여 다른 시스템으로 전달하는 것만 큼 간단합니다.
편집 : 물론 DampeS8N이 지적한 것처럼 맵 유형은 최상의 승리 조건을 지시 할 수 있습니다.이 경우 디자이너 또는 다른 변수를 고려하여 평가 기능에 의해 하드 코딩 될 수 있습니다.
요약
나는 이런 종류의 시스템에 대해 정말로 중요하게 생각하는 것은 서브 시스템이 계층화되는 방식이며 실제로 서로에게 많은 통신을 할 필요는 없다는 것입니다. 구성 요소가 느슨하게 결합 된 하향식 아키텍처로 보입니다. 기술 설계 관점에서 보면 깨끗하고 유연하며 아마도 신흥 행동 및 / 또는 Subsumption Architecture 에서 영감을 얻습니다 .
나는이 게시물의 길이에 대해 정말로 사과한다. 그것은 약간의 짐승으로 바뀌었다 :(
어느 쪽이든, 그것이 도움이되기를 바랍니다!