Optimizing Micro-Management in RTS Games
Gabriel Synnaeve and Pierre Bessière (University of Grenoble, INRIA, CNRS)

Unit HFSM
Each unit is controlled by a hierarchical/model
FSM. When in scouting mode, it flees all possible
damages while steering towards its scouting goal.
When in a move mode (no ennemy around), it either
move simply or flock if there are many allied units.
When in fight mode, it either fires, or flee or movetowards a better position when reloading. The target
selection algorithm is the only centralized (decidedwith help of the units group level) algorithm here.

P(Dmgi|Diri) can be learned or hand-specified

Question (fight mode)

ExampleRepulsive

Micro-management is a central part of fastpaced RTS games in which it can change the courseof whole matches. It is a task requiring coordinationof multiple units as well as reasoning withincomplete information: we do not know what theopponent moves will be. We propose a reactive
Bayesian model allowing decentralized moves
selection and formations traversal (without thefeeling that blocking units are being pushed away as
they move themselves), damages dodging in fights,
best fleeing local routes and it deals with collisions.
The modeling approach that we present here canalso be applied to FPS games (particularly involvingsquads).

Decomposition

AU

Damage map influence

Attractive

Introduction and Motivation

AU

Objective influence

Different sensory
influences separated(repulsive on the left
A U
and attractive on theright), which
Allied collision map influence combine to form theunit behavior. The
group behavior
emerges
andisA U
piloted by higher
level sensory inputs
Total fusion (with weights) (objectives).

Results

ScoutMoveFightFireReloadFleeMove

Bayesian Model
We use Bayesian programming, a formalism able todescribe any kind of Bayesian model to build oursensory-motor (sensors fusion) model:
Variables- Diri∈⟦0..n⟧∈{True, False}: one variable for each atomic
direction the unit can go to. P(Diri) = 1 means theunit will certainly go in direction i.
- Obji∈⟦0..n⟧∈{True, False}: direction of the objective,
being it a scouting one, a priority target to movetowards or the formation destination.
- Dmgi∈⟦0..n⟧∈[DmgValues]: a subjective (DmgValues
varies with unit types) potential fields to repulse
the units from high (potential) damages directions.
- Ai∈⟦0..n⟧∈{None, Small, Big}: occupation of thedirection i by an (interpolation of an) allied unit.
- Ei∈⟦0..n⟧∈{None, Small, Big}: same with enemy units.
- Occi∈⟦0..n⟧∈{None, Building, Terrain}: static occupation

Real battle prob. table of a dragoon in a fight setup.
White directions are of the highest probabilities anddeep blue are the lowest. Effects of above variables.

Future Work and Conclusion
Future work on this model would be to have ageneric and efficient mechanism to learn theconditional probability tables alltogether. throughreinforcement learning and/or genetic optimization.
Our model is used in our BroodwarBotQ
Starcraft’s bot and won 2 of the 3 micromanagements setups against current AIIDE 2010
micro-management champion with hand-specified
P(Dmg|Dir) and P(A,E|Dir) probability tables (worse
than learned ones). This model allows for any kind ofsensory input to have a weighted effect over the unit
behavior in a unified, distributed framework.