We implemented several different formations, ranging from very
defensive (8-2-0) to very offensive (2-4-4). The full definitions of all of the
formations are a part of the locker-room agreement. Therefore, they
are all known to all teammates. However during the periods of full
autonomy and limited communication, it is not necessarily known what
formation the rest of the teammates are using. Three approaches can
be taken to address this problem:
Both run-time formation switches and communication-triggered formation switches are internal behaviors. The run-time triggers and communication protocols are defined in the locker-room agreement. When a run-time evaluation metric indicates that the formation should change, or when a heard communication triggers a formation change, an internal behavior changes the player's opinion of the team's formation in its internal state.
This change in internal state can then affect external behaviors. For example, a switch in formations changes the output of the CurrentFormation() function in Equation 1. The outputs of MyPosition() and HomeRange() are also altered: the new formation consists of a different collection of roles with different home ranges. Thus the passive offense external behavior changes as a result of the formation switch.
The CMUnited-97 simulator team uses run-time formation switches. Based
on the amount of time left relative to the difference in score: the
team switches to an offensive formation if it was losing near the end
of the game and a defensive formation if it was winning.
Specifically, the team starts out in a 4-4-2 formation. If
is the number of minutes left in the game, and
is the difference in score (
if the team is winning;
if the team is losing), then the team uses the following
run-time algorithm:
Communication-triggered formation switches have also been implemented and tested. Details are presented in the context of the communication paradigm implementation (Section 6.2).