3 MODEL
The model simplifies the problem in the following
ways: the act of re-allocating a task from one agent to
another (stealing) is assumed to be instantaneous and
cost free. In each iteration, all agents are activated in
randomized order, and finally, agents have a starting
location (depot) and maintain individual schedules.
Parameters: The problem model has the following
parameters: numbers of both, agents and tasks, the ca-
pacity of each individual agent (which is the same for
all agents), the visibility range, the map size (we used
100 × 100 for all the simulations discussed in this pa-
per) and finally a flag determining whether a single
depot is used or whether there are multiple depots.
Furthermore, formula 1, given below, includes the
tuning parameter α. Changes in α will affect the
speed with which the approach converges towards a
stable state, and on the other hand, the degree of
change in the problem that the algorithm can handle.
Formulae: The decision to re-allocate a task from
the active agent A to the passive agent B is stochastic.
If agent A is balanced this probability (P
bal
A
) is:
P
bal
A
= 1−
(rem.cap
B
)
α
(rem.cap
A
)
α
+ (rem.cap
B
)
α
(1)
with rem.cap
X
the remaining capacity of X. The prob-
ability for a maximizing agent A (P
max
A
) is the inverse:
P
max
A
= 1− P
bal
A
(2)
4 METHOD, APPROACH AND
ALGORITHM
There is plenty of evidence (e.g. (Bartholdi and
Eisenstein, 1996)) for the potential of nature-inspired
scheduling to be extremely efficient; our work is in-
spired by the behavior of social insects (Camazine
et al., 2001). It is known (Bonabeau et al., 2000) that
colonies of social insects like bees, termites or ants
seem to operate in a semi-stable pattern until some
catalyzing event like e.g. the discovery of a new food
source or an attack on the colony takes place. This
then triggers a paradigm shift in the whole colony
which persists until the event is dealt with, after which
the system returns to the semi-stable state.
We present our work on 3 levels: the method, the
approach and the implemented algorithm. By method
we mean the generic description of how a population
of agents can cooperate to collectively cope with a
large number of tasks in dynamic environments. The
approach describes how this method can be applied in
computer science and to our example.
4.1 Method
Two opposing mechanisms govern the interaction be-
tween the agents: one to exchange tasks between
themselves with the aim to balance the length of their
respective schedules; and the other to re-schedule
tasks in order to largely reduce some agents’ loads.
Both mechanisms define interaction between ex-
actly two agents and in both cases the decision to
re-allocate a task is stochastic (using the formulae 1
and 2, respectively). The process is applied continu-
ously; converging towards balanced or highly unbal-
anced workloads. As the mechanisms are stochastic
they rely in a large number of interactions to achieve
their goals, but on the other hand facilitate the ability
to overcome deadlocks and local optima.
The first mechanism enforces a semi-stable equi-
table state where agents exchange tasks to maintain a
level of fairness: individual tasks can be moved from
one schedule to another if this decreases the differ-
ence in the respective agents’ loads.
The second mechanism, which differs only
marginally from the first, is used to achieve its ex-
act opposite: the re-allocation of tasks between two
agents is determined on the basis of whether the re-
allocation increases the difference in loads. This
mechanism is used when unallocated tasks appear /
are discovered in the vicinity of an agent. The im-
balance this creates reduces the load on some of the
agents, thus allowing them to take on some of these
unallocated tasks, even if this require a significant
portion of the agent’s entire capacity.
The decision which of the two mechanisms to
use is based on the stance or behaviour paradigm of
an agent, which corresponds to whether the agent is
aware of any allocated tasks. To maintain the anal-
ogy to social insects, the presence of unallocated tasks
constitutes the catalyzing event that causes a (local)
behaviour shift of the population. Agents that are
unaware of unallocated tasks operate under the bal-
anced stance which follows the “rich gets poorer”
paradigm. Conversely, if an agent becomes aware of
unallocated tasks it switches to the maximizing stance
and adopts the “rich gets richer” paradigm.
Note that as, we defined it, P
bal
A
= P
max
B
(cf. formu-
lae 1 and 2). This is in line with the idea that switch-
ing stances reverses the probabilities of the outcomes,
i.e. if A is likely to succeed at stealing a task for rich
gets richer then it should be equally likely to have it
stolen for rich gets poorer.
ResourceAllocationandSchedulingbasedonEmergentbehavioursinMulti-AgentScenarios
141