Page 1

20

Multi-Robot Task Allocation Based on

Swarm Intelligence

Shuhua Liu1, Tieli Sun1 and Chih-Cheng Hung2

1Northeast Normal University

2Southern Polytechnic State University

1China

2USA

1. Introduction

In the field of cooperative robotics, task allocation is an issue receiving much attention.

When researchers design, build, and use cooperative multi-robot system, they invariably try

to answer the question of which robot should execute which task. This is in fact a multi-

robot task allocation problem (MRTA). The task allocation problem addresses the question

of finding the task-to-robot assignments that optimize global cost or utility objectives.

Finding an optimal task allocation, even in a relatively simplified case, is an NP-hard

problem. Therefore, the majority of common approaches are approximate or heuristic in

nature. Those approaches usually give suboptimal solutions. MRTA is a fundamental issue

of the multi-robot systems, which embodies the high-level system organization and

operation mechanism. The quality of task allocation algorithm directly affects the

performance of multi-robot system. With an increase in the number of robots and difficulty

of tasks within a system, the issue of task allocation has risen to prominence and become a

key research topic in the multi-robot domain. In 2005, the International Conference on

Robotics and Automation (ICRA 2005) set special panels on multi-robot task allocation, in

which the latest research and the progress are discussed.

Gerkey and Mataric (2004) presented a particular taxonomy for the task allocation problem.

It is described as follows:

•

Single-task robots (ST) vs. multi-task robots (MT): ST means that each robot is capable

of executing at most one task at a time, while MT means that some robots can execute

multiple tasks simultaneously.

•

Single-robot tasks (SR) and multi-robot tasks (MR): SR means that each task requires

exactly one robot to achieve it, while MR means that some tasks can require multiple

robots.

•

Instantaneous (IA) and time-extended (TA) assignment: In the instantaneous

assignment, robots do not plan for future allocations and are only concerned with the

one task they are carrying out at the moment (or for which they are considering

executing). In the time-extended assignment, robots have more information and can

come up with longer-term plans involving task sequences or schedules.

Based on above categorization, there are eight types of task allocation combination. ST-SR-

IA is the simplest, as it is actually a trivial instance of the Optimal Assignment Problem

Page 2

Multi-Robot Systems, Trends and Development

394

(OAP). ST-MR-IA often appears in real world applications; that is, some tasks require the

combined effort of multiple robots. These two types of tasks are also called loosely-coupled

tasks and tightly-coupled tasks, respectively. Although some approaches for solving either

loosely-coupled task or tightly-coupled task allocation have been proposed, few approaches

for solving both loosely-coupled and tightly-coupled task allocation have been developed.

In this chapter, we present a task allocation mechanism based on swarm intelligence for the

large-scale multi-robot system, with both loosely-coupled and tightly-coupled task

allocation. The mechanism adopts a hierarchical architecture. At the high level, we employ

an Ant Colony Algorithm to find optimal allocations. Namely, each ant performs a task

allocation so as to choose an undertaker for every task. At the low level, each ant forms a

task-oriented robot coalition to perform a tightly-coupled task. Ant colony optimization

(ACO), the particle swarm and ant colony optimization (PSACO) and the quantum-inspired

ant colony optimization (QACO) are adopted to form the coalition. Finally, the algorithm is

implemented in the TeamBots simulation platform. Simulation results show that the

proposed mechanism can effectively solve loosely-coupled and tightly-coupled task

allocation in the large-scale multi-robot system.

2. Related work

Recently a number of solutions have been proposed in the literature to MRTA problems

(Zhang & Liu, 2008). These include behaviour based approaches such as ALLCANCE (Parker,

1998), BLE (Werger & Mataric, 2000) and ASyMTRe(Tang & Parker, 2005). The advantage of

these approaches possesses real-time, fault-tolerance and robustness; the solution, however,

can only be locally optimal. The market-based approach is the current mainstream of task

allocation methods. The representative method is CNP (Contract Network Protocol) which

proposed by Smith (1980). Other typical examples include First-price auctions (Zlot et al, 2002),

Dynamic Role Assignment (Chaimowicz et al, 2002), Traderbots (Dias, 2004), M+ (Botelho &

Alami, 1999), MURDOCH (Gerkey & Mataric, 2002a) and DEMiR-CF (Sanem & Tucker, 2006).

Because of better scalability, this method is particularly well-suited to the distributed robotic

domain. Furthermore, it is guaranteed to produce optimal allocations, but robots must

cooperate through explicit communication and more resource consumption. Once the

communication is interrupted, the performance of this method will degrade significantly

(Kalra & Martinoli, 2006). Therefore, it is suitable for small- to medium- scale task allocation

problems. Derived from the behaviours of social insects, the swarm intelligence approach is

exhibiting several good features such as self-organizing ability in unknown environments, and

emergent and adaptive behaviours through simple interaction among individuals. Since

cooperative individuals are distributed and there is no central control and global data in the

group, the system will be more robust. The failure of one or several individuals will not affect

the whole solution. Additionally, individuals cooperate through implicit communications. As

the number of the individuals in the system increases, the amount of communication grows

quite slowly. Therefore the swarm intelligence approach is the most suitable for distributed

multi-robot systems and as such more and more researchers have applied it to the multi-robot

task allocation, especially in dynamic environments. Ding et al. (2003) and Yang &Wang (2004)

adopted Ant colony algorithm for multi-robot cooperation. Zhang et al. (2007) employed

swarm intelligence for adaptive task assignment. Zhang & Liu (2008 b, 2009) and Liu & Zhang

(2009, 2010) conducted intensive research on swarm intelligence and applied it to the task

allocation of large-scale multi-robot system.

Page 3

Multi-Robot Task Allocation Based on Swarm Intelligence

395

3. Architecture

Ant Colony Algorithm is a new intelligent optimization algorithm and first proposed by

Colorni et al. (1992). In ant colony algorithm, each ant searches for solutions

independently in the candidate solution space, and lays some pheromone on the found

solution. The better the solution, the more pheromone the ant lays. A solution with higher

pheromone has a much greater chance of being chosen, and consequently this gives a kind

of positive feedback. Through this positive feedback, ants can eventually find the optimal

solution. Via this process the algorithm effectively solves combinatorial optimization

problems and performs especially well in solving complicated problems (Jiang et al, 2003;

Xia et al, 2005).

The paper adopts a hierarchical architecture, as shown in Fig.1. At the high level, we employ

the Ant Colony Algorithm to find optimal allocations. Let an ant denote a task; each ant

forms its task allocation so as to choose an undertaker for every task. At the low level, each

ant forms a task-oriented robot coalition to perform a tightly-coupled task by the ant colony

optimization (ACO), the particle swarm and ant colony optimization (PSACO) and the

quantum-inspired ant colony optimization (QACO). It is worth mentioning that the

proposed mechanism can not only solve loosely-coupled task allocation, but also tightly-

coupled task allocation because ants in the high level denote tasks instead of individual

robots. Finally, simulation results give a performance comparison, and then conclusions

follow.

ACO based task allocation

Low-level

coalition

formation

High-level

Task allocation

Task 1

R2

R

Rm

…

coalition

formation

R1

Rn

…

Task N

R1

Rm

…

coalition

formation

R2

Rn

…

Fig. 1. Hierarchical architecture of the system

4. Key issues of robot coalition formation

4.1 Validity of robot coalition

Similar to agent coalition formation, robot coalition formation also tries to find the robot

coalition with the greatest value that can complete a task t. A coalition may be formed by

several arbitrary robots in the system. However, in order to obtain a satisfactory result, we

must consider all or most of the combinations. Therefore it is a complex combinatorial

optimization problem. In addition, although there are many similarities between agent

coalition and robot coalition, there are also inherent differences which should not be

overlooked.

Page 4

Multi-Robot Systems, Trends and Development

396

Firstly, software agents are simply code fragments whose capabilities corresponding to

software functionality and current data knowledge while robots are tangible entities that

occupy physical space and whose capabilities correspond to sensors, actuators, etc. Multi-

robot systems must handle real world sensory noise, full or partial robot failures, and

communication latency or even loss of communications.

Secondly, agents are allowed to exchange resources, so the formed coalition freely

redistributes resources amongst the members. However, this is not possible in a multiple-

robot domain. Robot capabilities in handling sensors (camera, laser, sonar, or bumper) and

actuators (wheels or gripper) cannot be autonomously exchanged. This implies that a robot

coalition that simply possesses the adequate resources is not necessarily up to performing a

given task, and other locational constraints have to be represented and met in order for the

coalition to succeed.

Finally, correct resource distribution is an important issue in the robot coalition formation.

The box-pushing task (Gerkey & Mataric, 2002 b) is used to illustrate this point. Three

robots, two pushers (with one bumper and one camera) and one watcher (with one laser

range finder and one camera) cooperate to complete the task. The total resource

requirements are: two bumpers, three cameras and one laser range finder. However, this

information is incomplete, as it does not accurately represent the constraints related to

sensor locations. Correct task execution requires that the laser range finder and camera

reside on a single robot while the bumper and laser range finder reside on different robots.

Therefore each candidate coalition must be verified feasibly.

Checking the feasibility of robot coalition is a Constraint Satisfaction Problem (CSP). It is

defined by a set of variables, a set of the domain values for each variable and a set of

constraint relationships between variables, which is denoted as (V,D,C). Where V is the set

of variables {V1,…,Vn} which are resources and capabilities requirements, in box-pushing

task, V1,…,Vn are the bumper, camera and laser range finder. D is the set of the domain

values which is the sum of the available robots possessing the required resources and

capabilities, D={D1,…,Dn}, where Di is the limited domain of Vi‘s all possible values. C is the

set of constraint relationships between variables, C={C1,…,Cm}, each constraint includes a

subset of V, that is {Vi,…,Vj} and a constraint relationship R ⊆ Di×…×Dj. For the box-

pushing task, two types of constraints exist, the sensors and actuators must reside either on

the same robot or on different robots. As shown in Fig. 2, locational constraints are

represented as solid arcs (same robot) and dash arcs (different robot).

B1

C1

B2

C2

L1

C3

Fig. 2. Box-pushing task constraint graph

Page 5

Multi-Robot Task Allocation Based on Swarm Intelligence

397

4.2 The evaluation criteria of robot coalition formation

Because robots are typically unable to redistribute their resources, it is possible that the

coalition will have one or a few robots as main resource providers. This kind of coalition

tends to be heavily dependent on these members for task execution that these dominating

members become indispensable. Such coalitions should be avoided in order to improve

fault tolerance. The coalition imbalance is defined as the degree of unevenness of resource

contributions made by individual members to the coalition. The perfectly balanced

coalition is where each member contributes equally (taskvalue/n) to the task. The Balance

Coefficient (BC) quantifies the coalition imbalance level. The BC can be calculated as

follows:

12n

n

BC

taskvalue

n

γ

⎡

⎢

⎣

γγ

⎤

⎥

⎦

×××

=

?

(1)

where (γ1,γ2,...,γn) is a resource distribution with a coalition C. For the coalitions of the same

size, the higher BC, the more balanced the coalition is.

In general, larger coalitions imply that the average individual contribution and the

capability requirements from each member are lower; thus larger coalitions are more

balanced. However, larger coalitions have much more costs and therefore it is necessary to

consider coalition balance and coalition size simultaneously. The Fault Tolerance Coefficient

(FTC) metric can be used to solve this problem and it is defined as follows:

( )

f n

μ

FTCBC

δ=+

(2)

where δ+μ=1, f(n)=1-e-λn is the function of coalition size. After a particular point, increasing

n will not result in a significant increase to the function value. This means that enlarging

coalition size does not yield improved performance when the number of robots increases

beyond a threshold value. This, as one might imagine, is in accordance with a realistic robot

application.

4.3 The description of robot coalition formation problem

1.

The Ability Description of Robots

All robots in the system form a robot set R={R1,R2,…,Rn}. The ability vector of Ri is

BRi=(bi1,bi2,...,bim)T, and the ability cost vector is costRi=(costi1,costi2,...,costim)T ,where costij is the

cost of the ability bij. When bij=0, it denotes Ri without the ability bij. The cost of Ri is

m

cost b , which has m kinds of abilities.

ij ij

j 1

2.

Robot coalition is a set of robots in which robots can cooperate to complete a task. A

coalition C is the nonempty subset of R. Based on the different ability attributes of the

robots, there are different ability vectors of the coalition. For the additive capacity (such as

handling, etc.), the ability of the coalition C is as follows:

=∑

The Ability Description of Robot Coalition

i

i

CR

RC

BB

∈

=∑

(3)