19
2 Swarm Intelligence for Collective Robotic Search Lisa L. Grant 1 and Ganesh K. Venayagamoorthy 2 1 Real-Time Power and Intelligent Systems Laboratory, Missouri University of Science and Technology, Rolla, MO 65409, USA [email protected] 2 Real-Time Power and Intelligent Systems Laboratory, Missouri University of Science and Technology, Rolla, MO 65409, USA [email protected] Abstract. This chapter presents three strategies for the navigation of a swarm of robots for a tar- get search application in a hazardous environment. The strategies explored include greedy search and two computational intelligence techniques—particle swarm optimization and fuzzy logic. Results for the collective search are presented for simulated environments containing single and multiple targets, with and without obstacles. The proposed navigation strategies can be further developed and applied to real-world applications such as aiding in disaster recovery, detection of hazardous materials, and many other high-risk tasks. 2.1 Collective Robotic Search The use of robots to remove the need for human involvement in dangerous tasks has been an area of great interest [2, 6, 15, 21, 26]. For high-risk applications such as land- mine and radioactive material detection, the robots need to be inexpensive and dispens- able. A multi-robot search using simple or specialized robots has a higher chance for success than a search utilizing a single more complex and expensive robot attempting the task alone, by reducing the impact of robot loss, equipment failure, and communi- cation failure on the system. One approach is to have a group of robots searching in parallel, but individually with little to no communication or interaction with the group, adding redundancy and fault tolerance to the system. Another common method to con- trol a multi-robot system is the centralized approach where a central server or controller coordinates the robots actions for optimal performance in completing the specified task. This method can prove computationally intensive and vulnerable if the central con- troller becomes disabled or destroyed. Introducing coordination among the robots in an equally distributed system allows for a more efficient search and the ability to im- plement cooperative task completion. When performing a group-oriented search, the robot’s independent behavior is mainly based on its locally available sensory informa- tion allowing for adaptation to changing and hazardous environments, where utilization of the available swarm information increases the efficiency of the overall search. Per- forming a multiple robot based search also has the advantage of greater coverage of the search environment and simpler implementation [28]. In Collective Robotic Search (CRS), a group of small, inexpensive, and dispens- able mobile robots collectively explore a dangerous environment in order to locate and D. Liu, L. Wang, and K.C. Tan (Eds.): Design and Control of Intel. Robotic Systems, SCI 177, pp. 29–47. springerlink.com c Springer-Verlag Berlin Heidelberg 2009

[Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

Embed Size (px)

Citation preview

Page 1: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2

Swarm Intelligence for Collective Robotic Search

Lisa L. Grant1 and Ganesh K. Venayagamoorthy2

1 Real-Time Power and Intelligent Systems Laboratory, Missouri University of Science andTechnology, Rolla, MO 65409, [email protected]

2 Real-Time Power and Intelligent Systems Laboratory, Missouri University of Science andTechnology, Rolla, MO 65409, [email protected]

Abstract. This chapter presents three strategies for the navigation of a swarm of robots for a tar-get search application in a hazardous environment. The strategies explored include greedy searchand two computational intelligence techniques—particle swarm optimization and fuzzy logic.Results for the collective search are presented for simulated environments containing single andmultiple targets, with and without obstacles. The proposed navigation strategies can be furtherdeveloped and applied to real-world applications such as aiding in disaster recovery, detection ofhazardous materials, and many other high-risk tasks.

2.1 Collective Robotic Search

The use of robots to remove the need for human involvement in dangerous tasks hasbeen an area of great interest [2, 6, 15, 21, 26]. For high-risk applications such as land-mine and radioactive material detection, the robots need to be inexpensive and dispens-able. A multi-robot search using simple or specialized robots has a higher chance forsuccess than a search utilizing a single more complex and expensive robot attemptingthe task alone, by reducing the impact of robot loss, equipment failure, and communi-cation failure on the system. One approach is to have a group of robots searching inparallel, but individually with little to no communication or interaction with the group,adding redundancy and fault tolerance to the system. Another common method to con-trol a multi-robot system is the centralized approach where a central server or controllercoordinates the robots actions for optimal performance in completing the specified task.This method can prove computationally intensive and vulnerable if the central con-troller becomes disabled or destroyed. Introducing coordination among the robots inan equally distributed system allows for a more efficient search and the ability to im-plement cooperative task completion. When performing a group-oriented search, therobot’s independent behavior is mainly based on its locally available sensory informa-tion allowing for adaptation to changing and hazardous environments, where utilizationof the available swarm information increases the efficiency of the overall search. Per-forming a multiple robot based search also has the advantage of greater coverage of thesearch environment and simpler implementation [28].

In Collective Robotic Search (CRS), a group of small, inexpensive, and dispens-able mobile robots collectively explore a dangerous environment in order to locate and

D. Liu, L. Wang, and K.C. Tan (Eds.): Design and Control of Intel. Robotic Systems, SCI 177, pp. 29–47.springerlink.com c© Springer-Verlag Berlin Heidelberg 2009

Page 2: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

30 L.L. Grant and G.K. Venayagamoorthy

Local

Swarms

Global Level

Neighborhood

level

PdLd

Ld

Local

Swarms

Global Level

Neighborhood

level

PdLd

Ld

Fig. 2.1. Random deployment of robots in the search space

converge on a known target [7, 9]. For the CRS application in this study, a three-tier ar-chitecture is proposed for the implementation of a collective robotic search as shown inFig. 2.1. The robots are randomly deployed in the search space. Since CRS is targetedto applications where human intervention is undesirable, deployment of the robots intoan area of interest can be carried out by dropping the robots from an aircraft. As seen inFig. 2.1, the search area can be divided into neighborhoods to restrict the robots motionto a smaller area based on a divide and conquer scheme [27]. The robots within eachneighborhood form a local team or swarm. Each swarm operates individually of theswarms in the other neighborhoods. In environments with extreme terrain, this divisionof the search area ensures that the entire search space is explored and the targets areindependently pursued. In some cases not all robots are able to access the entire searcharea due to natural boundary restrictions such as a large body of water or a mountainrange. The division allows the robots to perform a fast, efficient and parallel search.

The goal of CRS is to identify target locations and the targets can be of different kindsfrom one application to the other. The simulated environment in this study assumes thatmost desired targets have an identifiable gradient and uses light sources as the targetgoal. The robots are equipped with light sensors to detect the total light intensity at theircurrent location relative to the location and number of target light sources. A diagramof the robot’s light intensity sensor is provided in Fig. 2.2.

The swarm pursues the target closest to the robot with the highest overall fitnessreading. The target fitness is based on the relative intensity, RI, given in Eq. (2.1) whichis calculated using the intensity (I) read from each of the n targets in relation to thedistance d from the robot to each target.

RI =I1

(d1)2 + . . .+In

(dn)2 (2.1)

Page 3: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 31

Target with

Intensity In

Target with

Intensity I1

Robot

dn

d1

Fig. 2.2. Intensity of targets measured at the robot

2.2 Navigation Strategies

There are three strategies studied for navigation of the robots in the proposed CRSproblem. A traditional approach known as greedy search is compared with two Com-putational Intelligence (CI) techniques, namely particle swarm optimization and fuzzylogic. These strategies are described in the following subsections.

2.2.1 Greedy Search - A Conventional Method

The greedy search algorithm is a conventional method used to follow a local gradient.When applied to CRS, a robot implementing a greedy search chooses its path basedsolely on the positions that orient it closest to its goal. The algorithm is called greedybecause it grabs the best solution without calculating long-term cost. The robot movesto the position with highest intensity after sampling the intensities at positions aroundits current location. For the greedy search, essentially only one robot is needed to findthe target because each robot acts as an individual agent. In a search utilizing a swarmof greedy robots, no communication between robots is necessary since each robot canlocate the target on its own. Since the algorithm relies on little to no communicationbetween robots, it is fairly robust against communication and robot loss [4]. Similarstrategies have been proposed to produce agent convergence where global informationand communication are not required, but global group behavior is still observed [5, 14,18, 25].

The version of the greedy search algorithm used in this study is the ordinal greedysearch method [24]. In order to find its next position, each robot maps out four possiblepositions, one in each of the ordinal directions (NE, SE, SW, and NW) from its cur-rent position. As the robot visits each of the four search points, it evaluates the targetfitness at every position and ultimately chooses the search point with the best fitnessor the shortest straight-line distance from the robot to the goal for its next position.The process repeats for every iteration, or position change. The robot is basically usedas a mobile sensor. A detailed example of the mapping of one robot’s search pointsfor a number of iterations using the greedy ordinal method is provided in Fig. 2.3. Aflowchart of the greedy algorithm applied to a CRS problem is illustrated in Fig. 2.4.

Page 4: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

32 L.L. Grant and G.K. Venayagamoorthy

tth

move

(t+1)th

move

(t+2)th

move

(t+3)th

move

(t+4)th

move

Pos. 1(t)

Pos. 2(t)

Pos. 3(t)

Pos. 4(t)

Pos. 1(t+1)

Pos. 3(t+1)

Pos. 4(t+2)

Pos. 4(t+1)

Target

Pos. 1(t+2)

Pos. 1(t+3)

Pos. 1(t+4)

Pos. 4(t+3)

Pos. 4(t+4)

Pos. 3(t+3)

Pos. 3(t+2)

Original

Pos. (t)

(Next Pos. (t+1))

(Next Pos. (t+4))

(Next Pos. (t+3))

(Next Pos. (t+2))

r2

r1

Fig. 2.3. A robot scanning positions for its next move using the greedy method

Initialize search area.

Move to NE (Northeast) search point.

Check and store fitness of first search point.

Compare fitness of search points to determine

position of best fitness.

Move to search point of best fitness.

Have all

robots converged on

the target?

Initialize robots positions and velocities.

End

Move to SE (Southeast), SW (Southwest), and

NW (Northwest) search points. Check and

store fitness at each point.

Yes

Start

No

Fig. 2.4. Flowchart of greedy ordinal search as applied to CRS

Page 5: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 33

2.2.2 Particle Swarm Optimization

Particle Swarm Optimization (PSO) is a swarm intelligence based algorithm developedby James Kennedy and Russell Eberhart in 1995 [10, 16, 17, 23]. This algorithm isbased on the behavior of a school of fish or flock of birds. In PSO, better solutionsare evolved through the collective interactions of the individuals in the swarm. For thisstudy, PSO particles are referred to as robots. The success of the group depends onthe success of the individuals in the swarm which occurs due to the social interactionsbetween individual robots in the swarm. Each robot randomly searches the environmentby updating its position using its own memory and social information gathered from theother robots.

The robots are randomly deployed into a defined search area as previously describedin Fig. 2.1. Each robot is given an initial random velocity and ‘flown’ through the prob-lem space. The robots use memory to keep track of the position that resulted in theirhighest fitness reading, known as the ‘Pbest’ value. The best value of all the ‘Pbest’ valuesis defined as the local best position, ‘Lbest’ with respect to the target. The velocities andpositions are updated every iteration until all of the robots have converged on the targetlocation [28]. PSO only requires four values for memory requirements: ‘Pbest’, ‘Lbest’,and the previous iteration’s velocity and position values.

The PSO velocity and position update equations are given by Eqs. (2.2) and (2.3).The parameters w, c1, and c2 are adjusted to determine to what degree the current ve-locity, ‘Pbest’, or ‘Lbest’ values affects a robot’s next position, respectively [22]. ‘rand1’and ‘rand2’ are random numbers from a uniform distribution. Several versions of PSOare detailed in [8].

Vnew = w×Vcur + c1 × rand1 × (Pbest − Pcur)+ c2 × rand2 × (Lbest − Pcur) (2.2)

Pnew = Pcur +Vnew (2.3)

Where,

Vnew - New velocity calculated for each robot

Vcur - Velocity of the robot from the current iteration

Pnew - New position calculated for each robot

Pcur - Position of the robot from the current iteration

w - Inertia weight

c1 and c2

rand

- Cognitive and social acceleration constants respectively

- Generates a uniform random value in the range [0 1]

A vector representation of the PSO algorithm in a 2-dimensional search space isgiven in Fig. 2.5. The robots are represented by stars and the target is represented bythe labeled circle. The vectors Vpd and Vgd represent the effect of the ‘Pbest’ and ‘Lbest’positions on the robots, respectively. To associate Eq. (2.2) with Fig. 2.5, the term Vpd in

Page 6: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

34 L.L. Grant and G.K. Venayagamoorthy

Pcur

V

T

Pnew

X

Y

Vpd

Vgd

Vnew

P

V

T

Pnew

X

Y

Vpd

V

Vnew

P

Vcur

Target

Pnew

X

Y

Vpd

Vgd

Vnew

P

V Pnew

X

Y

Vpd

V

Vnew

Pcur

V

T

Pnew

X

Y

Vpd

Vgd

Vnew

P

V

T

Pnew

X

Y

Vpd

V

Vnew

P

Vcur

Target

Pnew

X

Y

Vpd

Vgd

Vnew

P

V Pnew

X

Y

Vpd

V

Vnew

Pcur

V

T

Pnew

X

Y

Vpd

Vgd

Vnew

P

V

T

Pnew

X

Y

Vpd

V

Vnew

P

Vcur

Target

Pnew

X

Y

Vpd

Vgd

Vnew

P

V Pnew

X

Y

Vpd

V

Vnew

Pnew

Fig. 2.5. Vector representation of PSO

the figure represents ‘c1 ×rand ×(Pbest −Pcur)’ and the term Vgd in the figure represents‘c2 × rand × (Lbest −Pcur)’. The robots use the values of ‘Pbest’ and ‘Lbest’ to find a newposition closer to the target. The PSO algorithm can be summarized into the followingsteps:

1. Randomly initialize a swarm of robots in a defined n-dimensional search space withinitial random velocities, Pbest , and Lbest values.

2. Evaluate each robot’s current position using the fitness function (the Euclidean dis-tance from the robot to the target(s) based on sensory readings). Select the Lbest

from all Pbests.3. Compute the new velocities and positions using Eqs. (2.2) and (2.3).4. Check if the robots’ positions are within the problem space and if the velocity

exceeds the predefined limits. If not then set the velocity to the maximum velocity(Vmax) and set the new position to its Pbests.

5. Calculate the new fitness for the robots’ new positions. Determine the new Pbest .Compare with the previous Pbest and update the value if necessary.

6. Calculate the new local best position Lbest among all the new Pbest positions. Com-pare with the previous best and update the Lbest .

7. Repeat procedure from step (3), until all robots converge on the target(s).

A flowchart of the PSO algorithm applied to a CRS problem is illustrated in Fig. 2.6.

2.2.3 Fuzzy Logic

Fuzzy logic was pioneered by Lofti Zadeh in the 1960s [9, 29, 31]. This logic com-bines human knowledge with sensory measurements and mathematical formulas to tryto model commonsense. A system incorporating fuzzy logic utilizes linguistic variablesto represent real world parameters. Membership functions define the degree of the in-put and output variables in the fuzzy system. A rule set developed by heuristics defines

Page 7: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 35

Initialize search area.

Evaluate fitness function to determine

Lbest.

Compute new velocities and positions

for all robots.

Calculate new fitness value for each of

the robots new positions.

Update Pbest and Lbest values.

Have all

robots converged on

the target?

Initialize robots positions and velocities

and set initial Pbest.

End

Check new velocities and positions and

reset if they are not within defined

limits.

Yes

No

Start

Fig. 2.6. Flowchart of the PSO based strategy as applied to a CRS problem

the relationship between the input and output variable to tie the whole system together.During the fuzzification process, the inputs are transferred into the linguistic variablesand then formed into fuzzy sets. An inference engine uses the defined rules to developthe fuzzy outputs from the inputs. Finally, in the defuzzification process, the outputsare mapped back to real world variables for use in controlling a real world application.Since the system’s performance depends strongly on the way the membership functionsand rules are defined, it is essential to optimize these parameters [28]. A block diagramof a fuzzy control system is shown in Fig. 2.7.

In this study, a swarm of robots guided by fuzzy logic controllers is used to locatetargets in a CRS problem. Each robot has an identical fuzzy controller whose mem-bership functions and rules are developed based on heuristics. The inputs to the fuzzycontroller are the measured light intensities of the targets read by the robot’s sensor andthe Euclidean distance of the robot’s current position to the position of the robot withthe highest fitness or ‘Lbest ’ value in the swarm. The outputs of the fuzzy controllerare displacements in the X-axis and Y-axis directions, which are added to the robot’scurrent position. Eqs. (2.4) and (2.5) are used to find each robot’s next position [28].In Eqs. (2.4) and (2.5), Ldx = Lbestx − Px and Ldy = Lbesty − Py, where ‘Px’ and ‘Py’ arethe X-Y coordinates of the robot’s current position and ‘Lbestx’ and ‘Lbesty’ are the X-Ycoordinates of the ‘Lbest’ of the swarm. The ‘Lbest’ value is the position of the robot in

Page 8: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

36 L.L. Grant and G.K. Venayagamoorthy

Inference Engine

Rule base

Real World

Inputs

Real World

Outputs

DefuzzificationFuzzification

Fuzzy Logic Controller

Fig. 2.7. Block diagram illustrating the stages involved in a fuzzy control system

the swarm with the highest intensity reading. If Ldx is negative then the X coordinatein Eq. (2.5) becomes (Xi − ΔXi) and if it is positive then it becomes (Xi + ΔXi). Thesame logic is applied to the Y coordinates as well. The inference engine used for thissimulation is Mamdani’s product inference engine and the defuzzification is based oncenter average.

Pi = (Xi ± ΔXi,Yi ± ΔYi) (2.4)

ΔXi = f (Ii,Ldx);ΔYi = f (Ii,Ldy) (2.5)

The membership functions of the three input variables to each robot’s fuzzy controllerare described below.

• The intensity reading of the sensor on each robot (Ii) has zero (Z), small (S), medium(M) and large (L) triangular membership functions.

• The difference of the X coordinates of the current position of the robot from therobot having the best position in the swarm given by ‘Ldx’ has zero (Z), very small(VS), small (S), medium (M) and large (L) triangular membership functions.

• The difference of the Y coordinates of the current position of the robot from therobot having the best position in the swarm given by ‘Ldy’ has zero (Z), very small(VS), small (S), medium (M) and large (L) triangular membership functions.

The membership functions of the two output variables from each fuzzy logic controllerare described below.

• The displacement amount ΔXi to be added to the robot’s current X-axis positionhas very small (VS), small (S), medium (M) and large (L) triangular membershipfunctions.

• The displacement amount ΔYi to be added to the robot’s current Y-axis positionhas very small (VS), small (S), medium (M) and large (L) triangular membershipfunctions.

Page 9: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 37

A target isidentified?

Coarse Rules

Fine RulesYes

No

Fuzzy

Inputs

Fuzzy

Outputs

Fig. 2.8. Rule base switching logic

Table 2.1. Coarse Rule Set

Ldx/Ldy Z VS S M LIntensity(I)

Z M M L L LS S M M L LM S S M M ML VS VS S S M

Table 2.2. Fine Rule Set

Ldx/Ldy Z VS S M LIntensity(I)

Z VS VS S M MS VS VS S S MM VS VS VS S ML VS VS VS S S

There are two different rule sets for the fuzzy controllers. The first set of rules is calledthe ‘coarse rule set’, which makes the robots move in larger steps if they are far fromthe target. This rule set helps to advance exploration of the search area. Once a target hasbeen identified, the second rule set referred to as the ‘fine rule set’ is used to make therobots move toward the target in smaller steps. Fig. 2.8 shows the relationship betweenthe robot’s position relative to the target, and the coarse and fine rule sets. Tables 2.1and 2.2 show the coarse and fine rule sets, respectively. Both rule sets have a total of 40rules. There are 20 rules each for X- and Y-axis.

The rules are used in IF-THEN statements to determine the output or which size stepthe robot should take. An example is given in Eq. (2.6) taken from the coarse rule set [28].A flowchart of the fuzzy algorithm applied to a CRS problem is illustrated in Fig. 2.9.

IF Intensity is small(S) and Ldx is large(L) THEN ΔXi is Large (L) (2.6)

Page 10: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

38 L.L. Grant and G.K. Venayagamoorthy

Initialize search area.

Evaluate fitness function to determine

Lbest.

Check intensity/fitness of each robot’s

current position.

Move to next position based on fuzzy

displacements.

Evaluate fitness of new position to

determine new Lbest.

Have all

robots converged on

the target?

Initialize robots positions and velocities

and set initial Lbest.

End

Use robot’s fitness and location relative

to the Lbest to calculate X- and Y- axis

fuzzy displacements.

Yes

No

Start

Fig. 2.9. Flowchart of the fuzzy logic based strategy as applied to a CRS problem

2.3 Single Target Obstacle-Free Environment

The PSO algorithm was simulated in a simple single-target, obstacle-free environmentto determine the best combination of values to use for the PSO strategy parameters w,c1, and c2. Fig. 2.10 shows a search space containing a single target. The target locationis fixed and 10 robots are randomly dispersed throughout the search environment. Theperformance of the swarm based on changes in PSO’s parameter values is shown inTable 2.3. The results are averaged over 100 trials. For the c1 and c2 variables, valuesof 0.5 and 2 were tested and values of 0.6 and 0.8 were tested for the w parameter. Ascan be seen from Table 2.3, the values producing the fastest swarm convergence andminimum iterations are w = 0.6, c1 = 0.5, and c2 = 2. The higher value of the desiredsocial acceleration constant, c2, as compared to the desired cognitive acceleration con-stant, c1, indicates the PSO algorithm’s dependency on social interactions among theswarm and the importance of the Lbest parameter.

The PSO parameters can be further optimized during the search process by usingoptimal PSO. For optimal PSO, there is an outer PSO algorithm and an inner PSO algo-rithm. The inner swarm provides the actual implementation of the target search problemwhile the outer swarm optimizes the PSO parameter values. Every time a cycle of the

Page 11: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 39

-1010

10

Y

X

Mobile Robots/

PSO Particles

Target

-10

-1010

10

Y

X

Mobile Robots/

PSO Particles

Target

-10

Fig. 2.10. Graphical representation of a single target case

Table 2.3. Effect on PSO results in single target case with parameter changes

c1 c2 # of Iterations # of Iterations(w=0.6) (w=0.8)

2 2 135.45 491.950.5 2 79.63 348.202 0.5 – 498.140.5 0.5 110.29 145.08

Table 2.4. Optimization of PSO parameters using optimal PSO strategy

w c1 c2 # of Iterations

0.60 0.50 2.00 79.630.45 0.60 1.50 39.500.45 1.19 1.52 60.800.45 0.35 1.45 83.40

algorithm runs, a new set of PSO parameter values are calculated in the outer swarmand plugged into the inner swarm. Fig. 2.11 contains the flowchart for performing anoptimal PSO algorithm [9].

Table 2.4 presents the parameter values tested in the optimal PSO trials. It is evidentfrom the table that the combination of 0.45, 0.6, and 1.5 for w, c1, and c2 respectively,provide the fastest search. The results in Tables 2.3 and 2.4 show that swarm com-munication has a large influence on the success of the search. The social accelerationconstant, c2, which controls the how much information is shared among the swarm ismuch higher than the cognitive acceleration constant, c1 which controls the robot’s useof it’s own gathered information for a faster search.

Page 12: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

40 L.L. Grant and G.K. Venayagamoorthy

Uses the values win, c1in, & c2in as

passed into it

Fitness: lowest number of iterations

The target search application

program that uses PSO

Chooses the values of win, c1in, & c2in

that corresponds to the particle with the

least number of iterations

Initialize the values of win, c1in, & c2in to

be used in the inner swarm

Initialize PSO parameters for the outer swarm

(wout, c1out, & c2out)

TARGET SEARCHING

OUTER PSO

INNER SWARM FOR TARGET

SEARCHING

Best values of win, c1in, &

c2in (Lbest for outer PSO)

Fig. 2.11. Flowchart for Optimal PSO

2.4 Multiple Target/Obstacle Environment

There are two types of case studies performed for the multi-target/obstacle case. Forthe first case study, a single swarm performs a global search of the entire environmentspace. In the second case study, the environment is divided into 4 neighborhoods andthe swarm is broken down into four local groups, one searching each neighborhood.With the introduction of obstacles into the search space it is necessary to provide therobots with a method for obstacle avoidance. The following sub-sections present a briefexplanation of the obstacle avoidance technique chosen, followed by sections detailingboth case studies and simulation results for the greedy, PSO, and fuzzy algorithms.

2.4.1 Obstacle Avoidance Method

Obstacle avoidance is a real-world issue in robot navigation implementation. A vari-ety of methods have been proposed for obstacle avoidance [1, 11, 12, 13, 30]. Thesemethods incorporate various CI and computational techniques, but many of the existingmethods are computationally intensive and the necessary coordination scheme amongstthe robots diminishes the robot’s ability to effectively explore the search space. The

Page 13: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 41

� �

� �� �

� �

� �

ForEnd

ForEnd

IfEnd

sinSet

Set

,ThenIf

,...,1where;||||

,Do:1For

,Do1For

ijijijii

ij

jiij

ijij

jiij

ZpPP

d

XPZ

rd

mjXPd

mj

:Ni

�����

��

���

Fig. 2.12. Pseudo code for the repulsion algorithm

obstacle avoidance method considered in this study is a modification of the repulsionalgorithm presented in [20]. This algorithm is chosen because of its computational sim-plicity as compared to other existing methods, and its compatibility with numerousrobot coordination strategies.

The repulsion strategy is used to repel the robots away from detected obstacles. Thepseudocode for the repulsion algorithm is provided in Fig. 2.12 for a swarm of N robotsand a search area containing m obstacles. Repulsion from an obstacle occurs if therobot’s next projected position lies within a prescribed boundary area around the obsta-cle, called the obstacle’s repulsion range - ri j [24].

The swarm of robot’s current positions are represented by Pi at a single iteration,where {i = 1, . . . ,N}. The obstacles are represented by Xi for { j = 1, . . . ,m}. The robot’snext position relative to the obstacle boundary condition is calculated in di j, if this vari-able is less than the value of the obstacle’s repulsion range (ri j), then the robot’s nextposition will lie within an obstacle. To calculate the robot’s new adjusted position, thefollowing are added to the robots current position: the repulsion strength (pi j), a unitvector with the direction from the obstacle to the robots position (Zi j), and a deflectionangle (θi j). For a real-world implementation, the robot would desirably have touch sen-sors which would activate the repulsion algorithm once a robot made contact with anobstacle.

2.4.2 Case Study 1: Single Swarm

The search environment used for simulation in the single swarm case study is providedin Fig. 2.13. The search area is restricted to a 200 by 300-unit space in the X-Y plane.Four stationary targets and three obstacles reside within the search area. In Fig. 2.13,the targets are represented by circles and each one is assumed to emit a different in-tensity level. The targets simulate radiation or other volatile sources, depending on thedesired application. Obstacles in the environment, such as buildings, impassable moun-tain ranges and large bodies of water, are approximated by basic geometric shapes thatthe robots must navigate around in order to converge on the target of interest. The obsta-cles shown in Fig. 2.13 include: a lake approximated by a circle, a cluster of three small

Page 14: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

42 L.L. Grant and G.K. Venayagamoorthy

Fig. 2.13. Graphical representation of multi-target/obstacle case utilizing single swarm.(♦=robots, o=targets)

square buildings approximated by a triangle, and a large irregularly shaped buildingapproximated by a rectangle. The solid figures are the actual obstacles and the shapesenclosing them represent the obstacle approximation boundaries. Thirty robots, repre-sented by stars, are randomly distributed in the search area. For simulation, any numberof robots, obstacles, or targets is applicable.

The PSO and greedy algorithms are applied to solve the CRS problem in this envi-ronment. The simulation results are provided in Table 2.5. The algorithms are analyzedbased on the simulation run-time, fitness evaluations until swarm convergence, distancetraveled by the robots, and percent convergence on all targets. The results are furtherbroken down by the average value with standard deviation for one trial, and the maxi-mum and minimum values observed out of 100 total trials. One trial involves the con-vergence of the entire swarm on all targets in the search environment. A single iterationis equal to each of the thirty robots completing one change in position. A fitness eval-uation occurs at every instance when a robot checks the fitness of its current positionrelative to the targets. The distance traveled is the total distance traveled by the swarmin units. The convergence percentage is obtained by tracking whether or not each robotreaches every target by a distance of less than 0.01 units for a single trial within the set

Table 2.5. PSO and Greedy Multi-Target/Obstacle Results (Averaged over 100 trials)

Mean ± std Max Min

PSO Greedy PSO Greedy PSO GreedyTime(sec) 15 ± 0.83 23.8 ± 1 17.91 28.24 14.02 22.33Fitness Evaluations 15,666 ± 711 70,471 ± 2,188 18,660 78,536 14,580 65,836Distance Traveled 19,848 ± 2,054 158,720 ± 6,988 31,588 179,200 16,864 146,200

Page 15: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 43

Fig. 2.14. Trajectories of a greedy swarm converging on a target

Fig. 2.15. Trajectories of a PSO swarm converging on a target

Page 16: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

44 L.L. Grant and G.K. Venayagamoorthy

limit of a maximum of 500 iterations per target. If the final fitness of a single robot isgreater then 0.01 for any target, then the convergence for that trial is 0%.

Both the PSO and greedy algorithms had 100% convergence on all targets over 100trials. For time, fitness evaluations, and distance traveled, PSO performs better thangreedy search. PSO converges around 1.6 times faster and performs around five timesfewer fitness evaluations than the greedy search. The robots driven by PSO also cov-ered eight times less distance than the greedy robots in order to locate the targets. Mostof the extra distance gained by the greedy robots occurs during the mapping of thesearch points when the robot tries to locate the next position of best fitness. Also, thegreedy algorithm is less compatible with the repulsion algorithm than PSO. The repul-sion algorithm is unable to overcome the tendency of the greedy drive to keep the robotsmoving directly towards the target. The robots try repeatedly to move straight throughthe obstacles, attempting to reach the target on the other side. In some instances, thiscauses the robot to become trapped on one side of the obstacle, requiring more time,evaluations, and distance traveled while attempting to maneuver around the obstacle.This disturbance does not happen in PSO due to the swarm communication, which al-lows for more freedom in exploration of the search space instead of requiring a directtrajectory to the target. This phenomenon can be seen in Figs. 2.14 and 2.15 with robotpaths traced for the greedy and PSO algorithms, respectively. The robot’s have the sameinitial positions for each algorithm indicated by the star symbols.

In Fig. 2.14, the greedy robot paths are straighter than the PSO paths in Fig. 2.15because the greedy robots are driven to take the most direct path to the target, and thePSO robot’s ability to communicate helps them avoid becoming trapped since they arenot only drawn to the target but also to other robots with better fitness [3]. From theenlarged portions of the figures it can be seen that the greedy robot must re-positionitself using the repulsion algorithm multiple times to get around the triangle shapedobstacle while the PSO robot is pulled toward the robots beside it and smoothly passesaround the obstacle.

2.4.3 Case Study 2: Multiple Swarms

For cases where there is a large amount of terrain to explore or boundary restrictionssuch as large bodies of water exist and restrict explorations, it is necessary to confinethe robot’s motion to a smaller area based on a divide and conquer scheme [27]. Multi-ple swarms are used to search smaller portions of the environment ensuring a fast andefficient parallel search. Fig. 2.16 presents a search area similar to the one in Fig. 2.13,but segregated into four neighborhoods. Two targets reside in swarm area 1 and a singletarget resides in swarm area 4. There are also obstacles present in swarm areas 1, 2, and4. The robots are randomly dispersed throughout the search area and assigned to theswarm corresponding to the location of their initial search position.

The fuzzy and greedy methods are applied to solve the CRS problem in this envi-ronment set-up. The results for both methods obtained over 100 trials are presented inTable 2.6. As seen in Table 2.6, the fuzzy method outperforms the greedy method witharound 50% fewer iterations and a much shorter overall run-time. The greedy searchalso has a lower convergence percentage than the fuzzy method.

Page 17: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 45

Fig. 2.16. Graphical representation of multi-target/obstacle case utilizing multiple swarms.(♦=robots, o=targets)

Table 2.6. Multiple Swarm Results for Fuzzy and Greedy Searches

Time Iterations Convergence

Fuzzy 214.04 256.14 94%Greedy 622.81 662.56 87%

2.5 Conclusion

This chapter has introduced two computational intelligence techniques and comparedthem with the greedy search approach for application to the navigation of a swarmof robots for a target search in a hazardous environment. All algorithms have beenshown to be suitable for CRS applications based on reliability in performance whenevaluating convergence. Both CI techniques, fuzzy and PSO, outperform the greedysearch in terms of time, target convergence, fitness evaluations, and compatibility withan obstacle avoidance method. Greedy search requires no communication among therobots, in contrast to the other methods, but does not adapt well to the simple obstacleavoidance technique presented. Comparing the results for the greedy search in the singletarget search versus the multiple target search, convergence drops significantly from100% to 87% for a more complex environmental setup. The PSO algorithm can befurther optimized by the adjustment of its velocity equation parameters for a faster,more efficient search and this optimization can be carried out by PSO.

Page 18: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

46 L.L. Grant and G.K. Venayagamoorthy

Future work involves an investigation of the effect of optimizing the membershipfunctions and rules of the fuzzy controllers. Optimization of the membership functions,rule bases, and PSO parameter ‘w’, is expected to improve the performance of the CRS.Also, a hybrid combination of the PSO and greedy algorithms for implementing botha local and global search would be useful for this application. Recently, a collectiverobotic search platform has been developed for evaluating search algorithms in a labo-ratory setting and a successful implementation of PSO has been accomplished [19].

References

1. An, D., Wang, H.: VPH: a new laser radar based obstacle avoidance method for intelligentmobile robots. In: 5th World Congress on Intelligent Control and Automation, vol. 5, pp.4681–4685 (2004)

2. Cassinis, R.: Landmines detection methods using swarms of simple robots. Intelligent Au-tonomous Systems 6 (2000)

3. Chuang-xin, G., Zhao, B.: A pooled-neighbor swarm intelligence approach to optimal reac-tive power dispatch. Zhejiang University SCIENCE A 7, 615–622 (2006)

4. Cook, B., Marthaler, D., Topaz, C., Bertozzi, A., Kemp, M.: Fractional bandwidth reac-quisition algorithms for VSW-MCM. In: Multi-robot Systems from Swarms to IntelligentAutonoma, vol. 2, pp. 77–86. Kluwer Academic Publishers, Dordrecht (2003)

5. Cortes, J., Martinez, S., Bullo, F.: Robust rendezvous for mobile autonomous agents via prox-imity graphs in arbitrary dimensions. IEEE Transactions on Automatic Control 51, 1289–1298 (2004)

6. Cui, X., Hardin, T., Ragade, R.K., Elmaghraby, A.S.: A swarm-based fuzzy logic controlmobile sensor network for hazardous contaminants localization. In: IEEE International Con-ference on Mobile Ad-hoc and Sensor Systems, pp. 194–203 (2004)

7. Dadios, E.P., Maravillas Jr., O.A.: Cooperative mobile robots with obstacle and collisionavoidance using fuzzy logic. In: IEEE International Symposium on Intelligent Control, pp.75–80 (2002)

8. del Valle, Y., Venayagamoorthy, G.K., Mohagheghi, S., Hernandez, J.C., Harley, R.G.: Par-ticle swarm optimization: basic concepts, variants and applications in power systems. IEEETransactions on Evolutionary Computation (accepted, 2003)

9. Doctor, S., Venayagamoorthy, G.K., Gudise, V.G.: Optimal PSO for collective robotic searchapplications. In: IEEE Congress on Evolutionary Computation, vol. 2, pp. 1390–1395 (2004)

10. Eberhart, R., Shi, Y.: Particle swarm optimization: developments, applications and resources.In: IEEE Congress on Evolutionary Computation, vol. 1, pp. 81–86 (2001)

11. Er, M.J., Deng, C.: Obstacle avoidance of a mobile robot using hybrid learning approach.IEEE Transactions on Industrial Electronics 52, 898–905 (2005)

12. Fujimori, A., Nikiforuk, P.N., Gupta, M.M.: Adaptive navigation of mobile robots with ob-stacle avoidance. IEEE Transactions on Robotics and Automation 13, 596–601 (1997)

13. Hu, E., Yang, S.X., Chiu, D.K.Y., Smith, W.R.: Real-time tracking control with obstacleavoidance of multiple mobile robots. In: IEEE International Symposium on Intelligent Con-trol, pp. 87–92 (2002)

14. Jadbabaie, A., Lin, J., Morse, A.S.: Coordination of groups of mobile autonomous agentsusing nearest neighbor rules. IEEE Transactions on Automatic Control 48, 988–1001 (2003)

15. Jennings, J.S., Whelan, G., Evans, W.F.: Cooperative search and rescue with a team of mobilerobots. In: 8th International Conference on Advance Robotics, pp. 193–200 (1997)

16. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: IEEE International Conferenceon Neural Networks, vol. 4, pp. 1942–1948 (1995)

Page 19: [Studies in Computational Intelligence] Design and Control of Intelligent Robotic Systems Volume 177 || Swarm Intelligence for Collective Robotic Search

2 Swarm Intelligence for Collective Robotic Search 47

17. Kennedy, J., Eberhart, R.C., Shi, Y.: Swarm Intelligence. Morgan Kauffman, San Francisco(2001)

18. Lin, Z., Broucke, M., Francis, B.: Local control strategies for groups of mobile autonomousagents. IEEE Transactions on Automatic Control 49, 622–629 (2004)

19. Palangpour, P., Parrott, C., Grant, L.: Collective robotic search in software and hardwareimplementation. IEEE Industry Applications Magazine 14, 71–73 (2008)

20. Parsopoulos, K.E., Vrahatis, M.N.: On the computation of all global minimizers throughparticle swarm optimization. IEEE Transactions on Evolutionary Computation 8, 211–214(2004)

21. Russell, R.A., Thiel, D., Deveza, R., Mackay-Sim, A.: A robotic system to locate hazardouschemical leaks. In: IEEE International Conference on Robotics and Automation 1 (1995)

22. Shi, Y., Eberhart, R.C.: Parameter selection in particle swarm optimization. EvolutionaryProgramming 7, 611–616 (1998)

23. Shi, Y., Eberhart, R.C.: Empirical study of particle swarm optimization. In: Congress onEvolutionary Computation, vol. 3, p. 1950 (1999)

24. Smith, L., Venayagamoorthy, G.K.: Optimized pso for collective robotic search in an envi-ronment with multiple targets and obstacles. In: The International Journal of EngineeringApplications of Artificial Intelligence (in preparation, 2007)

25. Tang, Z., Ozguner, U.: Motion planning for multitarget surveillance with mobile sensoragents. IEEE Transactions on Robotics 21, 898–908 (2005)

26. Thayer, S., Digney, B., Dias, M.B., Stentz, A., Nabbe, B., Hebert, M.: Distributed roboticmapping of extreme environments. SPIE Mobile Robots XV and Telemanipulator and Telep-resence Technologies VII, p. 4195 (2000)

27. Venayagamoorthy, G.K., Doctor, S.: Navigation of mobile sensors using PSO and embeddedPSO in a fuzzy logic controller. In: 39th IEEE IAS Annual Meeting on Industry Applications,vol. 2, pp. 1200–1206 (2004)

28. Venayagamoorthy, G.K., Doctor, S., Smith, L.: Collective robotic search using hybrid tech-niques: fuzzy logic and Swarm intelligence inspired by nature. The International Journal ofEngineering Applications of Artificial Intelligence (submitted, 2007)

29. Wang, L.X.: A course in fuzzy systems and control. Prentice Hall, Inc., Upper Saddle River(1996)

30. Ye, C., Yung, N.H.C., Wang, D.: A fuzzy controller with supervised learning assisted rein-forcement learning algorithm for obstacle avoidance. IEEE Transactions on Systems, Man,and Cybernetics 33, 17–27 (2003)

31. Zadeh, L.A.: Fuzzy Logic. CSLI, 83–93 (1988)