x: Decimal
y: Decimal
z[0..1]: PositiveDecimal
yaw[0..1]: Angle
AbsolutePositioning
observerID: String
theta: Angle
distance: PositiveDecimal
altitude [0..1]: PositiveDecimal
yaw[0..1]: Angle
RelativePositioning
Positioning
targetIdentificationConfidence[0..1]: Decimal
thetaSU[0..1]: Angle
distanceSU[0..1]: PositiveDecimal
altitudeSU[0..1]: PositiveDecimal
yawSU[0..1]: Angle
RelativePositioningWithSU
targetIdentificationConfidence[0..1]: Decimal
xSU[0..1]: Angle
ySU[0..1]: PositiveDecimal
zSU[0..1]: PositiveDecimal
yawSU[0..1]: Angle
AbsolutePositioningWithSU
PhysicalObject
hasPosition
0..1
1
Fig.3. Positioning related concepts.
2.2 Game Events, Player Moves, Actions and Tactics
During the game, some events occur and may be reported to team-mates, since they are
relevant to the world state. Such events are related to temporarily absent players, which
may influence decisions or even strategy changes. These events are: sentOff(player),
returnedToGame(player), malfunctioning(player) and functioning(player).
Co-operation can be enhanced by the intentional exchange of messages to co-ordinate
robots’ behaviour. When a robot well positioned to score a goal decides to ask its
team-mate holding the ball to perform a pass. Coach-Unilang[3] defines a set of ac-
tions, which will be used. Some of these actions have added arguments. These ac-
tions and moves are: shoot(), pass(player), forward(fieldRegion), dribble(direction),
run(direction), hold(), clear(), intercept(), tackle(player), mark( player), markPassLine
(player1, player2), gotoBall() and move(fieldRegion).
Tactics define the players’ preferred positioning on the field, as well as the team’s
pressure and mentality. These definitions will influence the players’ options. During a
game, a tactics change may have to be communicated to all the players. A set of classes
for this purpose can be seen in figure 4. Most of the attributes in the ’Tactics’ class have
a discrete set of possible values, e.g. from veryDefensive to veryOffensive or from 0 to
100. There are predefined formations, like 442 and 433. There may be the need to use
arbitrary formations, using the ArbitraryFormation class, as represented in figure 4 by
FormationPosition. In this class, the positioning of each player is characterised by an
horizontal and vertical position. playerRole will define the attitude of the player.
3 Inter-robot Communicative Interactions
Since the information in the previous section is to be shared between heterogeneous
agents, one also needs to establish how this exchange will be managed. The autonomous
agents’ community has been dealing with these problems for several years, and one can
profit from the results previously obtained.
The transmission of observed information needs only a simple interaction, where
one player (Sender) will inform some other players (Receivers). The acknowledgement
is optional. This interaction protocol is represented as an AUML diagram
4
. This proto-
4
http://www.auml.org