ICA enhances the state of the art in team-work mod-
els, as it provides a further step towards a compre-
hensive approach that provides support for all aspects
of team coordination and also for explicit program-
ming of team behaviour from a global perspective at
the same time. With its approach to allow agents to
decide and act towards a certain team-goal without
explicit establishment of a joint commitment, it is also
very suitable for highly dynamic domains that require
fast decisions and actions and do not allow explicit
communication and negotiations beforehand.
3 THE LANGUAGE
The central notion within ALICA are plans. A plan
describes specific activities, a team of agents has to
execute in order to achieve a certain goal. Plans
are modelled similar to petri-nets, containing states
and transitions between the states. Each transition is
guarded by a condition, which must be believed to
hold by an agent in order to progress along it.
The set of all plans in an ALICA program is de-
noted by P . Z denotes all states. The belief base of
each agent is described in a logic with language L,
hence all conditions are elements of L. Each transi-
tion τ is an element of Z × Z ×L.
ALICA abstracts two-fold from agents, by tasks
and roles. A role is assigned to an agent based on
its capabilities. This assignment is treated to be com-
partively static, i.e., it holds until the team compo-
sition changes. This is the case if an agent joins or
leaves the team, e.g., due to being incapacitated.
Tasks on the other hand abstract from specific
paths within plans. As such, they denote similar ac-
tivities in different plans. If a group of agents is
to execute a plan, the corresponding tasks are allo-
cated to the available agents based on the situation at
hand and the roles the agents are assigned. This two-
layered abstraction allows for programs to be speci-
fied independently of the team composition that will
be on hand during execution. A team composition
can be described solely by the roles each agent is as-
signed, while plans can be described without referring
to roles. Each role has a numeric preference towards
tasks, which allows roles to be mapped onto tasks dy-
namically during runtime (see Section 4.1).
Since plans describe activities for multiple agents,
they have multiple initial states, each of which is an-
notated by a task. Hence, a task abstracts from spe-
cific activities within plans, and multiple plans can be
annotated with the same tasks. For instance, a plan to
build a tower and one to build a bridge might both
contain the task of moving building blocks. Since
tasks might require multiple agents, each task-plan
pair (p, τ) is annotated by a cardinality, i.e., by an in-
terval over N
0
∪{∞}, denoting how many agents must
at least and may at most be allocated to τ in p.
The applicability of a plan in a situation is mea-
sured in two ways. Firstly, each plan p is annotated
by a precondition Pre(p), which has to hold when
the agents start to execute it, and a runtime condition
Run(p), which has to hold throughout its execution.
Secondly, each plan p is annotated by a utility func-
tion U
p
, which is used to evaluate the plan together
with a potential allocation of agents to tasks within p
wrt. a situation. A utility function maps believed or
potential situations onto the real numbers. Both con-
ditions and utility functions solely refer to the belief
base of an agent, which contains believed allocations.
Plans can be grouped together in plan types, pro-
viding the agents with sets of alternatives for solv-
ing a particular problem. Choosing a specific plan
from a plan type is done autonomously by the agents
in question. This selection is guided by the utility
functions and conditions of the plans involved. Each
state contains an arbitrary number of plan types. For
each plan type, the agents involved have to choose
a plan and execute it, i.e., multiple plans, one from
each plan type, are executed in parallel. Additionally,
each state contains an arbitrary number of behaviours.
Behaviours are atomic single-agent action programs.
The set of all behaviours is denoted by B. Each be-
haviour within a state is meant to be executed by all
agents inhabiting the corresponding state.
The relationship between states, plans and plan
types spans a hierarchical structure, called the plan
tree of an ALICA program.
4 SEMANTICS
The semantics of ALICA is given by a transitional
rule system, which describes how the internal states
of agents change over time. These internal states are
referred to as agent configurations. Additionally, a set
of axioms, Σ
B
, constrains these configurations.
Definition 4.1 (Agent Configuration). An agent con-
figuration is a tuple (B, ϒ, E, θ, R), where B is the
agent’s belief base, ϒ its plan base, E ⊆ B × Z the
set of behaviours b the agent executes together with
the state in which b occurs, θ a substitution, and R is
a set of roles assigned to the agent.
The plan base contains triples (p, τ, z), indicating
that the agent is committed to task τ in plan p and cur-
rently inhabits state z within p. Each triple is reflected
by a literal in the belief base, In(a, p, τ, z), represent-
ing the belief that (p, τ, z) is an element of agent a’s
TOWARDS A COMPREHENSIVE TEAMWORK MODEL FOR HIGHLY DYNAMIC DOMAINS
123