Multi-tiered AI
Patrick Schmid
Multi-tiered AI
We already saw a presentation about this topic
Remember Ke‘s presentation? Short recap
Multi-Tiered AI Framework
The Intelligence Structure: Strategic Intelligence (SI) Operational Intelligence (OI) Tactical Intelligence (TI) Individual Unit (IU)
SI
OI
TI
IU
SI makes general goals and plans
OI is concerned with implementing the general orders from SITI Prepares the data for IU
Situational Projects
SPs: the basic messages for communications between different levels of AIs
OI1
SISP1
OI2OI1
SP2 SP2
TI2TI1 TI3
IU1 IU2 IUn…
The MTAIF Class Architecture
Unit Object
Empire Manager
Player Object
City Manager Objects
Player Object
Player Core (basic functionality)
Offensive Defensive Neutral
City Manager Object
Field Manager Objects
Field Manager Object
Unit Objects
SI
OI TI IU
package of functions and strategies
US Army
Soldier AI
All RTS games already have some rudimentary form
Follow orders Stay alive Report occurrences to the squad AI
(completed or failed orders, newly spotted enemies)
Select and engage targets Path finding
Squad AI
Already used in many games Receive orders from the platoon AI Translate them into soldier orders Distribute them to squad members Evaluate feedback from soldiers
New orders to soldiers Pass feedback to platoon AI
Most complex job: translating orders Move orders need to account for relative positions of
soldiers according to formation, terrain, posture More complicated orders are built by combining basic
ones, e.g. Move & Attack
Platoon AI
Similar tasks to squad AI Passing orders and feedback from one
level to the other Message translation is again the bulk
of the processing Individual squad‘s locations with
respect to rest of platoon is paramount concern
Company AI, Brigade AI, Division AI, Army AI, etc.
Similar to platoon AI, but dealing with bigger blocks of units
Formations are less rigid, allowing for more involved tactics
Highest level AI below computer player AI has extra duties: Each is assigned a different portion of the world
to operate in Passes upwards only important strategic
information Most tactical data is analyzed and acted upon in
this level
Computer Player AI (CPAI)
Many roles in RTS games: Civilization growth Construction Economics Research Politics Combat
Analyzes the relative strengths of the friendly and enemy troops and their disposition
Decide on overall strategy: attack or defend Deploy armies Adjust armies as combat progresses Reinforce
Augment decimated squads Build new armies
Example: Platoon AI
World War II Game Heavy firepower of tank Infantry’s better detection
ability Platoon AI decides
formation (triangle) Infantry engages enemy Tank supports with heavy
firepower
Example: Brigade AI Medieval Game Goal: capture fortress
defended by company strength enemy
Brigade AI approaches while staying out of engagement range
Two infantry companies attack in front
Cavalry goes behind fortress to cut off reinforcements and possibly attack from behind
One infantry company is held in reserve
Maps
Each AI needs its own map Why?
Plan paths Identify locations Implement tactics Each AI needs different information
Static map data, e.g. location of roads, updated only if a change occurs
Dynamic map data, e.g. troop locations, updated once or twice a second
Maps (cont.)
Element map Finest level of detail (~1 to 3 m squares) Some games: actual map element data Soldier’s path is calculated on this map Tracks actual enemy troops
Tile map Next level of detail (~10 m squares) Squad paths are calculated Troop data is represented only as combined
strengths
Maps (cont.)
Mega-Tile Map Platoon scale (~25-50 m) Finds paths for platoons
Larger Scale Maps You get the picture...
a) Platoon moves to defend a pass on the mega-tile map
b) Scout squad defends pass on the tile map
c) Scout soldier moves into trench on element map
Reference
Tom Kent “Multi-Tiered AI Layers and Terrain Analysis for RTS Games” AI Game Programming Wisdom 2