This introduced a new challenge to the rescue
agents due to blockades. A series of blocked roads
can divide a single region into disconnected parts pro-
hibiting, or delaying in the case of police forces, other
agents from reaching some parts in the region. This
challenge was solved in our approach with the use
of fuzzy c-means (FCM) clustering (Bezdek, 1981;
Bezdek et al., 1984). Unlike many of the clustering
algorithms that produce disjoint non-empty clusters,
such as K-means, FCM clustering algorithm has the
ability to assign a data point to several clusters with a
specific membership function. This allows some de-
gree of overlap between the clusters.
Since FCM clustering produces intersecting clus-
ters, the produced regions will have common build-
ings and roads. This will allow some of the buildings
and roads within each region to be visited by at least
two agents. If it happens that the area of intersection
is disconnected in one cluster, it could be reachable
by agents from a different cluster the area is covered
by. This will increase the chance that agents will be
able to visit all buildings and roads in proper time.
2.3 Coordination before Planning
Coordination is required before planning to define the
rules and constraints that must be applied on planning
to guarantee the satisfaction of the main goal, which
is performing and optimizing the rescue process in
our case. The approach we used in task allocation in-
cluded coordination: 1) divide the map into regions,
2) assign agents to regions provided constraints on
which agents will perform the rescue process in which
region.
Another coordination challenge presented itself
when it came to optimizing the rescue process. In
many cases, it was noticed that blockades can cause
some agents to be initially stuck and some refuges
unreachable. An agent is considered to be stuck when
it is surrounded by blockades from all directions and
cannot move. A refuge is considered to be unreach-
able if all roads leading to it are blocked. The ap-
proach used in task allocation and coordination de-
pends on dividing the map and distributing the agents
on the regions. Since blockades are initially unknown,
stuck agents will be considered in this distribution,
which has a big negative effect on the rescue perfor-
mance, especially for regions with a small number of
agents. On the other hand, refuges are used for treat-
ing injured civilians and refilling fire brigade tanks
and they are the only buildings that do not catch fire.
Blocked refuges will prevent the rescue process from
being complete and also has a big negative effect on
the rescue performance.
Since police forces are the only agents capable of
clearing blockades, they are the only ones that do not
get stuck. Normally, police forces are assigned to re-
gions as discussed earlier. The approach devised in
this paper gives the police forces first the task of free-
ing all stuck agents and unreachable refuges, then of
performing rescue processes in their assigned regions.
2.4 Planning
The planning phase involves the creation of the indi-
vidual plans created for each agent putting in mind the
global goal. In our case, planning is carried through
considering the actions required to carry out the indi-
vidual tasks the agents should perform and the con-
straints added in the coordination step. Each agent
creates its own individual plan taking into consider-
ation its type (police, fire, or ambulance agent) and
the cluster the agent is assigned to. All agents will
follow the routes that passes by all roads/buildings in
their regions. Ambulance teams Ambulance teams
are assigned the task of rescuing buried civilians and
moving injured civilians to refuges. Fire brigades are
required to scan all the buildings on its route and ex-
tinguish any building on fire. When it runs out water,
the fire brigade will head to the nearest refuge to refill
its tank. Police forces will execute two consecutive
plans. First they will move to their assigned region
for freeing all stuck agents and blocked refuges. Then
they will move to their main region in which they will
keep searching for blocked roads and clear them.
2.5 Coordination after Planning and
Execution
Coordination after planning was carried out dynam-
ically during the execution of the agents’ plans. It
mainly consists of utilizing multi-agent communica-
tion and adding a criteria to have agents change it’s
region.
Communication. Communication is mainly used
to exchange information on the rescue events that re-
quire attention. Communication messages are divided
into informative and query messages. Informative
messages inform other agents of sensed fires, block-
ades, and buried civilians.They are sent by agents that
detect events they cannot act up on. On the other
hand, query messages ask for help from agents of the
same type as the sender. They are sent when an agent
realizes that it cannot perform a rescue action on it’s
own.
MULTI-AGENT PLANNING FOR THE ROBOCUP RESCUE SIMULATION - Applying Clustering into Task Allocation
and Coordination
341