A pattern-based genetic algorithm for multi-robot coverage path planning minimizing completion time

11
J Intell Manuf (2012) 23:1035–1045 DOI 10.1007/s10845-010-0404-5 A pattern-based genetic algorithm for multi-robot coverage path planning minimizing completion time Muzaffer Kapanoglu · Mete Alikalfa · Metin Ozkan · Ahmet Yazıcı · Osman Parlaktuna Received: 15 August 2009 / Accepted: 21 April 2010 / Published online: 13 May 2010 © Springer Science+Business Media, LLC 2010 Abstract Sensor-based multi-robot coverage path plan- ning problem is one of the challenging problems in managing flexible, computer-integrated, intelligent manufacturing sys- tems. A novel pattern-based genetic algorithm is proposed for this problem. The area subject to coverage is modeled with disks representing the range of sensing devices. Then the problem is defined as finding a sequence of the disks for each robot to minimize the coverage completion time determined by the maximum time traveled by a robot in a mobile robot group. So the environment needs to be partitioned among robots considering their travel times. Robot turns cause the robot to slow down, turn and accelerate inevitably. Therefore, the actual travel time of a mobile robot is calculated based on the traveled distance and the number of turns. The algorithm is designed to handle routing and partitioning concurrently. Experiments are conducted using P3-DX mobile robots in the laboratory and simulation environment to validate the results. Keywords Genetic algorithms · Multi-robot · Sensor-based coverage · Path planning · Intelligent manufacturing M. Kapanoglu (B ) · M. Alikalfa · M. Ozkan · A. Yazıcı · O. Parlaktuna College of Engineering, Eskisehir Osmangazi University, Eskisehir, Turkey e-mail: [email protected] M. Alikalfa e-mail: [email protected] M. Ozkan e-mail: [email protected] A. Yazıcı e-mail: [email protected] O. Parlaktuna e-mail: [email protected] Introduction Mobile robots are excellent means for overcoming human inadequacies such as discovering toxic/hazardous regions, performing monotonous and/or high-precision repetitive manufacturing tasks. Most of the advanced manufacturing systems use mobile robots for realizing a seamless integra- tion of intelligent and flexible automation components pri- marily for moving materials between workstations as well as tracking parts in the facility, removing industrial wastes, inspecting spills and leaks (Prassler et al. 2000). In particu- lar, AGVs are a key element in Flexible Manufacturing Sys- tems where they are used along with automatic storage and retrieval systems (Bruno et al. 2000). Some sterile or del- icate products must be prevented from any contamination, and cannot be manufactured in a traditional working area. Strict rules and regulations imposed on the “contamination controlled” production processes cause food and pharmaceu- tics industry to employ robots for many operations such as maintaining cleanroom standards such as ISO 14644 (ANSI 2010). Nano and high-technology manufacturing operations are also subject to similar cleanroom conditions that can only be maintained by substituting human operators with specific robots where viable. Some of these industrial applications require moving robot so that all the points in the given envi- ronment are covered by the sensors of the robots. Such prob- lems are called sensor-based coverage path planning (Choset 2001; Acar et al. 2006). Multi-robot systems have recently received a great deal of attention due to the ability of performing the assigned task in a more reliable and faster way (Arai et al. 2002; Hasgül et al. 2009). Although there are various approaches in the literature about multi-robot teams, the researches continue on many directions depending on the type of robots (Bi et al. 2008). In Kong et al. (2006), authors build their approach on 123

Transcript of A pattern-based genetic algorithm for multi-robot coverage path planning minimizing completion time

J Intell Manuf (2012) 23:1035–1045DOI 10.1007/s10845-010-0404-5

A pattern-based genetic algorithm for multi-robot coverage pathplanning minimizing completion time

Muzaffer Kapanoglu · Mete Alikalfa · Metin Ozkan ·Ahmet Yazıcı · Osman Parlaktuna

Received: 15 August 2009 / Accepted: 21 April 2010 / Published online: 13 May 2010© Springer Science+Business Media, LLC 2010

Abstract Sensor-based multi-robot coverage path plan-ning problem is one of the challenging problems in managingflexible, computer-integrated, intelligent manufacturing sys-tems. A novel pattern-based genetic algorithm is proposedfor this problem. The area subject to coverage is modeledwith disks representing the range of sensing devices. Then theproblem is defined as finding a sequence of the disks for eachrobot to minimize the coverage completion time determinedby the maximum time traveled by a robot in a mobile robotgroup. So the environment needs to be partitioned amongrobots considering their travel times. Robot turns cause therobot to slow down, turn and accelerate inevitably. Therefore,the actual travel time of a mobile robot is calculated based onthe traveled distance and the number of turns. The algorithmis designed to handle routing and partitioning concurrently.Experiments are conducted using P3-DX mobile robots inthe laboratory and simulation environment to validate theresults.

Keywords Genetic algorithms · Multi-robot · Sensor-basedcoverage · Path planning · Intelligent manufacturing

M. Kapanoglu (B) · M. Alikalfa · M. Ozkan · A. Yazıcı · O. ParlaktunaCollege of Engineering, Eskisehir Osmangazi University, Eskisehir,Turkeye-mail: [email protected]

M. Alikalfae-mail: [email protected]

M. Ozkane-mail: [email protected]

A. Yazıcıe-mail: [email protected]

O. Parlaktunae-mail: [email protected]

Introduction

Mobile robots are excellent means for overcoming humaninadequacies such as discovering toxic/hazardous regions,performing monotonous and/or high-precision repetitivemanufacturing tasks. Most of the advanced manufacturingsystems use mobile robots for realizing a seamless integra-tion of intelligent and flexible automation components pri-marily for moving materials between workstations as wellas tracking parts in the facility, removing industrial wastes,inspecting spills and leaks (Prassler et al. 2000). In particu-lar, AGVs are a key element in Flexible Manufacturing Sys-tems where they are used along with automatic storage andretrieval systems (Bruno et al. 2000). Some sterile or del-icate products must be prevented from any contamination,and cannot be manufactured in a traditional working area.Strict rules and regulations imposed on the “contaminationcontrolled” production processes cause food and pharmaceu-tics industry to employ robots for many operations such asmaintaining cleanroom standards such as ISO 14644 (ANSI2010). Nano and high-technology manufacturing operationsare also subject to similar cleanroom conditions that can onlybe maintained by substituting human operators with specificrobots where viable. Some of these industrial applicationsrequire moving robot so that all the points in the given envi-ronment are covered by the sensors of the robots. Such prob-lems are called sensor-based coverage path planning (Choset2001; Acar et al. 2006).

Multi-robot systems have recently received a great deal ofattention due to the ability of performing the assigned taskin a more reliable and faster way (Arai et al. 2002; Hasgület al. 2009). Although there are various approaches in theliterature about multi-robot teams, the researches continueon many directions depending on the type of robots (Bi et al.2008). In Kong et al. (2006), authors build their approach on

123

1036 J Intell Manuf (2012) 23:1035–1045

a single-robot coverage algorithm, boustrophedon decom-position. The robots are initially distributed through the freespace. Then, each robot is allocated a virtually bounded areato cover. The area is decomposed into cells where each cellwidth is fixed. The decomposed area is represented usingan adjacency graph, which is incrementally constructed andshared among all the robots. In Agmon et al. (2006), a multi-robot coverage algorithm is proposed based on spanning-tree coverage (STC) algorithm. The environment is modeledwith a grid of robot-tool-size squares with dimension D. Thegrid was then coarsened such that each new cell is of size2D × 2D, and m-spanning tree is created. A second stage isused to connect the trees for minimizing the time to completecoverage. The algorithm may give near time-optimal resultsfor vast obstacle-free environments. The performance of thealgorithm may get worse as the environment has someobstacles.

In another work (Yongguo et al. 2006), robot deploymentfor coverage tasks considering both timing and energy con-straints is investigated. Each robot in the team is assumedto use scanning lines for coverage route. Power model formobile robots is developed and the energy cost of possi-ble scanning lines for coverage can be calculated. Then, thedeployment problem for the members of the team is solvedfor each robot considering their energy capacities. Whenrobots go to the determined points, they cover the area usingscanning lines. In Guo and Balakrishnan (2006), they packthe area by a minimum number of disks, which may be moreeffective because of the real sensor shape, and then a neuralnetwork-based path planning method is adopted to constructcomplete coverage paths avoiding collisions with stationaryand moving objects. They extend the algorithm to multiplerobots to conduct a cooperative coverage, by partitioning theregion into M (number of robots) approximately equal sub-regions.

In Kapanoglu et al. (2008), a disk placement pattern thatimposes rectilinear moves for sensor-based coverage prob-lem is proposed. Disk visiting plans are carried out usinggenetic algorithms. Genetic algorithms utilize the Darwinianand Mendelian principles of genetic evolution. Following itsproposal by Holland in 1975, GAs have achieved a high levelof popularity owing to its success in non-convex, non-linear,and combinatorial problem domains. GAs work on the list ofdecision variables called chromosomes in which a solutioncan be obtained directly or by decoding. For further discus-sion, see Goldberg (1989).

Based on this disk placement pattern (Kapanoglu et al.2008), in (Ozkan et al. 2009a) the multi-robot sensor-basedcoverage plans are done by considering distance costs, andthe results are compared with those of multi robot spanning-tree-based coverage (m-STC) approach (Agmon et al. 2006).But, the proposed algorithm in Ozkan et al. (2009a) and mostof the coverage path planning algorithms mentioned above

force the robot to take sharp turns. These turns take signifi-cant time, since the robot must slow down, orient itself, andthen accelerate. For a time-efficient coverage, turns should betaken into consideration. In Ozkan et al. (2009b), a hierarchi-cal oriented genetic algorithm (HOGA) that firstly proposedin Ozkan et al. (2009a) is extended to consider the travel timerather than just the traveled distances. The HOGA consists oftwo stages. In the first stage, a previously proposed orientedgenetic algorithm is used to find a single route with mini-mum repeated coverage. Then, in the second stage, a directedgenetic algorithm is used to partition the route among robotsconsidering actual travel time costs.

In this study, a novel single-stage, pattern-based geneticalgorithm is proposed to minimize multi-robot sensor basedcoverage completion time. The results of the proposedgenetic algorithm outperformed the two-stage hierarchicalgenetic algorithm for the test problems. In the following sec-tion, the proposed genetic algorithm is presented. In Sec-tion “Experimental results”, simulation results are given fordifferent settings of number of robots, layouts, and initiallocations. Also the efficiency of the proposed approach iscompared to two-stage hierarchical approach, and the algo-rithm is tested on a larger environment. Conclusions are givenin Section “Conclusion”.

Proposed genetic algorithm for mobile robot pathplanning

A pattern-based genetic algorithm utilizing rectilinear movesrepresented by eight neighbor-disk prioritization patterns isproposed. The coverage area is divided into overlappingdisks, such that, no redundant overlaps are generated andno area is left out of robot’s coverage as in Fig. 1. The radiusof each disk equals to sensing range of the robot sensor whichis much greater than robot’s physical dimension.

In Fig. 1, obstacles are shown with gray disks. Here weassume that a disk is either fully occupied or completely

Fig. 1 Disk placement pattern

123

J Intell Manuf (2012) 23:1035–1045 1037

Fig. 2 Neighbor-disk prioritization patterns

free. With this modeling, when a robot passes through thecenter of each disk, the environment is supposed to be fullycovered. Therefore, the sensor based coverage problem turnsinto planning a path for each robot to ensure the visit of thedisk centroids. The objective is to minimize the coveragecompletion time which is the time spent by the robot withlatest finishing time. The completion time contains the linearmoving times between disk centroids as well as rectilinearturning times.

To determine the visiting order of the disks, a GA-basedmethod with a compact chromosome structure is devel-oped. Eight premeditated neighbor-disk-prioritization pat-terns (PP) given in Fig. 2 are designed to provide disciplined,reasonable rectilinear moves. Each robot is relatively locatedin the middle of the each pattern indicated by P-prefix inFig. 2. The numbers in the patterns indicate the preferredneighbor-disks. In other words, each pattern prioritizes theneighbors in ascending order so that the disk numbered 1has the highest priority if unvisited yet. 1–4 numbered disksare one-disk away from the robot’s current disk, while 5–12disks are two-disks away, and so on. Although 1–4 num-bered disks are in the same distance, they are also prioritizedaccording to the direction they represent. The patterns willguide the robot until a dead-end is arrived. In this case, anunvisited neighbor disk at the shortest rectilinear distanceis sought. If one found, the path is directed to that disk, bydouble-visiting at least one disk. The operation taking therobot from a dead-end to an unvisited disk is called recov-ery. The disks that are visited multiple times due to recoveryare called repeated coverage. Since a pattern may guide therobot to a dead-end while another may never cause such adead-end, different premeditated patterns are used to obtainsophisticated possible patterns for the path.

The proposed genetic algorithm is designed to allow theuser to select the number of patterns within the range of oneand eight that will be associated with each robot. The mainidea behind this new pattern-based GA is to let robots to claimthe tasks (i.e., disks) that will improve the time-based per-formance by assigning patterns to robots and by allocating

disks to robots with respect to a priority index. The geneticalgorithm will search for the best set of patterns for eachrobot. Since the robot will complete its path according tothe patterns it adopted, each pattern is also associated witha number of moves. Therefore, robots visit disk centroidsaccording to their patterns and their associated number ofmoves. This approach compresses the chromosome lengthsignificantly leading to smaller search space with respect toprevious pattern-based GA (Kapanoglu et al. 2009).

Representation

The representation developed contains three pieces of infor-mation for each robot: The priority index, the pattern cho-sen, and the number of moves to be made with respect tothat pattern. The chromosome length depends on the numberof robots, and the number of patterns allowed. Order (loci)of genes in the chromosome represents robot numbers. Forinstance, if a 15-gene-chromosome is divided among threerobots, the first five-gene part corresponds to the parametersof the first robot, second five to the second and so on (Fig. 3a).The first gene of each part represents the priority index ofeach robot, the smaller the index the higher the priority. Theremaining genes of each part should be interpreted in pairs,in which the first element is the pattern index and the secondis the number of disks taken by the corresponding robot withrespect to the pattern given in the first. The length of chro-mosomes are computed as {number of robots*[number ofpatterns allowed per robot*2+priority index]}. An exampleof the chromosome representation is depicted in Fig. 3a for aproblem with a given layout in Fig. 3b for three robots start-ing to visit disks from their initial locations. For this case,robots are allowed to build their route based on two patterns.The proposed algorithm assigns the first 17 disks with respectto P3 and the following 19 disks with respect to P2 of Fig. 2to robot#1 due to its highest priority. In a similar manner,robot#2 is assigned the 39 uncovered disks with respect toP3. Finally, the remaining uncovered disks are assigned torobot#3 using patterns P2 and P1 for 36 disks.

123

1038 J Intell Manuf (2012) 23:1035–1045

Fig. 3 a Sample chromosomefor a solution [No of patternsallowed: 2; No of robots: 3].b Decoded chromosome

17 2 19 2 3 22 3 17 3 2 18 1 18 3 1

Robot#1 Robot#2 Robot#3

(a)

(b)

In Fig. 3, the shapes (circle, square, and diamond) repre-sent (i) if numbered 1, the initial location of a robot, (ii) ifnumbered 2 or more, starting and ending points of a shortestpath associated with a repeated coverage. Each robot pathis matched with a line type. Each path starts with the initiallocation of that robot and terminates with a thick dash. Forexample, robot 1 is represented by circles, and its path withsolid lines. Circle numbered 1 represents its initial location.First circle numbered 2 on the path indicates a repeated cov-erage until second circle numbered 2. Having circles num-bered no more than 2 means robot 1 passes over a previouslycovered area only once, and it is between these two circles.

The outline of the proposed pattern-based GA is asfollows:

Generate Initial Population;While (stopping criteria are not satisfied)

Evaluation & SelectionReproductionCrossoverMutationNew Population

LoopThese steps are explained in the following subsections.

Generation of initial population

The members of the initial population are generated ran-domly with some user-controlled parameters. The settingsare the population size, the number of patterns, and the num-ber of moves allowed for each robot. Pattern indexes arechosen arbitrarily between the values of 1 and 8. For the ini-tial population, the number of moves that would be madeby each robot is restricted to total number of disks/numberof robots ±10%. This restriction is not imposed on in thefollowing stages of the algorithm and in the following itera-tions, therefore crossover and mutation operators can extendthe number of moves of a robot to a value out of the intervalset in this step. The priority indexes are chosen randomly asunique values between 1 and number of robots. One shouldnote that number of disks visited by a robot includes num-ber of disks solely covered by that robot, and also the diskscovered by others but must be trespassed to resume the route.

Evaluation and selection

The fitness value of a chromosome indicates the total or min-max completion time in seconds. The completion time of

123

J Intell Manuf (2012) 23:1035–1045 1039

Fig. 4 Illustration of theproposed crossover operator

17 2 19 2 3 22 3 17 3 2 18 1 183 1

Robot#1 Robot#2 Robot#3

11 1 25 3 4 28 7 11 1 6 8 8 285 2

Crossover Point

BeforeCrossover

17 2 19 2 3 22 7 11 1 6 8 8 283 1

11 1 25 3 4 28 3 17 3 2 18 1 185 2

AfterCrossoverBeforeRepair

18 2 20 2 3 23 7 12 3 6 8 8 303 1

10 1 24 3 4 27 3 16 1 2 17 1 175 2

AfterCrossoverand Repair

each robot is calculated as {[# of straight disk moves]∗ts+ [# of right-angle turns]∗tra + [# of rotations (180◦turns)]∗2∗tra} where ts and tra denote the time robot spendsmoving from one disk to another and the time to make a rightangle turn, respectively. The fitness value of each chromo-some is the largest completion time over robots. The objec-tive is the minimization of the largest completion time. Thisobjective can support better load balance among robots aswell. Since an ideal solution would contain no repeated cov-erage and no turns, the optimal fitness would be a tradeoffbetween the minimum number of repeated coverage and thenumber of turns.

Stochastic tournament selection with elitism is adoptedfor reproduction. In the experiments, a single elite migrationwith tournament size equals to 3 is adopted.

Crossover operator

The designed crossover operator performs a traditional one-point crossover with a repair procedure. This repair procedurecan process three types of genes as follows:

(i) Priority index: If the crossover destroys the order ofthe priority index, then the genes of the left-hand sideof the child chromosome are kept intact, the right-hand side is repaired to maintain the moving priorityof the robots.

(ii) Pattern index: Since pattern indexes are independentof each other, no illegality or infeasibility can beobserved.

(iii) Number of moves: Total number of moves for eachrobot to be performed with respect to patterns can-not be more than the number of disks. Additionally,the total number of moves in a chromosome shouldremain the same, which is equal to the number ofdisks. If such cases are observed, then the increase ordecrease in the number of moves is distributed amongthe robots proportional to the number of disks belong-ing to each robot.

In Fig. 4, the crossover operator is illustrated for two chro-mosomes, one taken from Fig. 3.

Mutation operator

The mutation operator is designed to incorporate the explo-ration impact. A randomly selected gene’s value is changedfrom its current value to a feasible one arbitrarily. Akin tocrossover operator, mutation can result in processing prior-ity index, pattern indexes, and number of moves with thatpattern. If a gene to be mutated corresponds to a priorityindex, then the priority index is randomly changed resultingin an exchange between the priorities of two robots. If themutation falls on a pattern index, then it can be changed inde-pendently to a value between 1 and 8. For genes that representnumber of moves to be made with a specific pattern, the muta-tion operator picks a value uniformly distributed between 1and maximum number of disks. In such cases, the increaseor decrease in the number of moves is distributed among therobots proportional to the number of disks belonging to eachrobot. The mutation operator is illustrated in Fig. 5.

123

1040 J Intell Manuf (2012) 23:1035–1045

Fig. 5 Illustration of themutation operator

Robot#1 Robot#2 Robot#3

17 2 19 2 3 22

3 17 3 2 18 1 18 3 1

After mutation17 2 19 2 3 5

3 17 3 2 18 1 18 3 1

After repair20 2 23 2 3 6 3 3 2 21 1 21 3 1 20

The pattern-based GA developed here is unique and robustwith its compact and effective representation to overcomethe challenge of task assignment and routing concurrentlyfor multiple robots in varying sizes of environments withrelatively simple operators.

Experimental results

The performance of the proposed GA has been tested in sim-ulation and in real environments at Artificial Intelligence &Robotics laboratory (AIRLAB 2009) test platform. Thesetests are: (i) Application of the proposed method for tworobots in laboratory environment (ii) Set of 16 problemsdesigned for 4 layouts and 4 initial locations of three robots(iii) Improvements of the proposed method over hierarchicaloriented genetic algorithm, and (iv) Performance in a largerenvironment. The proposed algorithm is applied to sensor-based coverage of an indoor environment using Pioneer 3-DXrobots. The robots have an onboard P3-800 computer withLinux OS. The sensors on the robot are: SICK LMS 200 laserrange finder, sonar ring sensors, camera, and compass. Aria-ARNL software module is used for the localization purpose(ARNL 2009). SICK LMS 200 laser range sensor is usedfor the sensor based coverage task. The sensor has normallya range of 50 m, but for experimental purposes the range isrestricted to 45 cm with software.

Application for two robots in laboratory environment

The performance of the algorithm is tested on the platformgiven in Fig. 6a. The map of the platform is presented inFig. 6b. The size of the platform is 840 × 720 cm. The envi-ronment has three rooms with a hallway to connect the rooms,and was modeled with 116 disks. During the tests, severaladditional obstacles are placed into different parts of thisenvironment to increase the complexity of the environment.

The algorithm was run for two robots which are initiallylocated at the depot (lower left corner at Fig. 6). The planned

path for each robot is given in the Fig. 7a. Figure 7b exhib-its the track of each robot, drawn using log values of therobots during the experiment. The algorithm for this two-robot problem has generated two paths having no repeatedcoverage with a completion time of 198 s. Figure 7c shows asnapshot of the recorded video during the movement of therobots. The full video of the live performance of the robotsis recorded, and can be reached from the web site of thelaboratory (AIRLAB 2009).

Performance of the proposed GA for three robots

In order to analyze the performance of the proposed GA,we designed 16 problems for three robots with four differentlayouts and four different initial locations on the same testplatform (Fig. 6). The proposed pattern-based GA’s typicalparameters are set as follows: population size: 100, maxi-mum number of generations: 400, mutation probability: 5%,crossover probability: 65%, tournament size: 3, number ofmigrated elite: 1. The results in terms of coverage comple-tion time (in seconds) are presented in Table 1. In the table,L and S indicate layout settings, and initial staging locationsettings subsequently.

Figure 8 displays the paths found for 8 out of 16 problems.The paths presented in the figure are selected to reveal theperformance of the algorithm for two initial location settingswith significantly different features. On the first column, therobots are at the depot with different obstacles placement. Onthe second column, same layouts are used with arbitrary ini-tial locations. As seen on Fig. 8, in certain cases robots chooseto move remote locations due to the cost of turns and the loadbalancing nature of the min-max objective. For example, incase L1-S2, robot#2 (square legend with a dashed-line path)trespass over the other two robots paths to cover the lower-right section of the environment. Having considered the otherobjectives such as minimizing total distance traveled orminimizing energy consumption, the algorithm would finddifferent paths for robots. Although the algorithm has beendeveloped to handle the aforementioned objectives, in this

123

J Intell Manuf (2012) 23:1035–1045 1041

Fig. 6 AI&Robotic laboratory. a Picture of the test platform. b Map of the platform

Fig. 7 a Planned path using the proposed method. b Path followed by Pioneer-3 DX mobile robots in the laboratory. c Snapshot of the recordedvideo

Table 1 Coverage times (inseconds) for designedexperiments

Layout Initial staging location settings

S1 S2 S3 S4

L1 144.5 137 130 141

L2 146 138.5 138.5 145

L3 139.5 138 131.5 136

L4 143 147 138.5 133.5

study we focused on the coverage completion time due itspractical value.

For each setting of Table 1, ten replications are carriedout to analyze the impacts of the layout obstacles, initiallocations, and their interactions. The results of the varianceanalysis of the two-factors with replications are presented inTable 2.

According to the analysis of variance, the initial locationsof the robots have a significant effect on the coverage time ofthe environment for this setting of experiments. This resultcan be concluded in case of “same/nearby” initial locations,the robots likely have to pass through certain areas already

covered before accessing uncovered areas at the expenseof the increased completion times. In case of “remote/dis-persed” initial locations, the robots would have higher free-dom in building their own paths with shorter completion timealong with less interference of other robots’ coverage areas.

On the other hand, the analysis of variance table indicatesno significant impact of the layout settings. This result can beconstrued as the obstacles do not challenge to the proposedalgorithm for the settings provided. The interaction betweenthe two factors (layout settings and the initial locations ofrobots) does not have any significant effect on the coveragecompletion time. The insignificant interaction may be inter-

123

1042 J Intell Manuf (2012) 23:1035–1045

Fig. 8 Some examples of thepaths found for 3 robots withdepot and arbitrary initiallocations

Table 2 ANOVA

Source of variation SS df MS F P-value F crit

Layout settings 181.5422 3 60.51406 1.868148 0.137619 2.667443

Initial location 1375.63 3 458.5432 14.15583 3.9E-08 2.667443

Interaction (layout settings × initiallocations)

371.6016 9 41.28906 1.274647 0.255531 1.94545

Within 4664.525 144 32.39253

Total 6593.298 159

123

J Intell Manuf (2012) 23:1035–1045 1043

Fig. 9 Paths found for the depot initial location by a HOGA. b Proposed method

Fig. 10 Paths found for the arbitrary initial locations by a HOGA. b Proposed method

preted as that the initial locations and the layout settings donot favor each other for the experiments studied above.

Improvements of the proposed method over two-stagegenetic algorithm

In this subsection, the results of the proposed method arecompared with the results of the hierarchical two-stagegenetic algorithm presented in Ozkan et al. (2009b). For thelaboratory environment given in Fig. 6, results of both algo-rithms for two different initial location settings are given inFigs. 9, and 10. In Fig. 9, all robots are at the depot. Thecompletion times are 181 and 148 s for HOGA and the pro-

posed GA, respectively, indicating over 18% improvementin completion time. In Fig. 10, robots are at arbitrary initiallocations. The completion times are 159 and 137 s with about14% improvement.

As mentioned before the method in Ozkan et al. (2009b)consists of two stages; (i) find a single time-based route withminimum repeated coverage, (ii) partition the route amongrobots considering travel time costs. Since the HOGA parti-tions the initial route, the resulting partitioning is not changedso much depending on initial conditions (compare Figs. 9a,10a). Therefore, the robots cause repeated coverage duringthe deployments to their coverage starting points. On theother hand, the proposed algorithm determines new paths for

123

1044 J Intell Manuf (2012) 23:1035–1045

Fig. 11 Topological map of the first floor

each robot depending on initial conditions as seen in Figs. 9band 10b. In both cases, the repeated coverage of the proposedmethod is less than that of the HOGA.

Tests on a larger environment

In order to test the proposed algorithm on a large environ-ment, the first floor of the Eskisehir Osmangazi UniversityElectrical Engineering laboratory building is used as the testenvironment. In this floor, there are four laboratories. Insideeach laboratory, there are three rooms, tables, storage cab-inets, and columns. A corridor connects the laboratories.Topological map of the first floor is given in Fig. 11. Theenvironment is modeled with 1,176 disks.

GA’s parameters are set as follows: population size: 200,number of generations: 1,000, mutation probability: 5%,crossover probability: 65%, tournament size: 3, number ofmigrated elite: 1.

Simulations are carried out up to 20 robots using the pro-posed approach when the robots are at the depot initially(right bottom corner of Lab-2). Figure 12 shows the totalcoverage time, repeated number of disks versus number ofrobots, and percent coverage per robot. Figure 12a shows aconsiderable decrease in the coverage completion time upto four robots. After 10 robots, additional robots cannot bejustified in terms of coverage completion time based on thegraph.

Figure 12b shows a steep decrease in the repeated cover-age per robot until four robots followed by a stationary state.Figure 12c expresses a clear relation between the percentrepeated coverage and the number of robots, varying fromabout 10 to 70%. The Fig. 12a, b, and c can be interpretedto determine the optimum number of robots for this cov-erage task. If the prime concern is completion time, thenFig. 12a shows that allocating up to ten robots can be jus-tified. However, if the prime concern is operating cost, thenFig. 12b implies significant savings up to four robots. Fig-ure 12c indicates how many percent of the repeated coveragecan be attributed to the additional robots. For instance, whentwenty robots are allocated to this coverage task, 70% ofrobot performances will have no contribution to the coverage.

Fig. 12 a Coverage completion time versus number of robots.b Repeated coverage per robot. c Percent repeated coverage

This sort of analysis can be used to determine the maximumnumber of robots to assign for a given coverage task. There-fore, for this environment, a maximum of ten robots may beassigned to the above coverage task. The optimum numberof robots can only be determined based on these findings aswell as financial considerations.

Conclusion

Sensor based coverage path planning for multi-robot teams isone of the recent research issues. Among several approachesproposed, a few articles have addressed the use of the geneticalgorithms for this problem. This article proposes a pattern-

123

J Intell Manuf (2012) 23:1035–1045 1045

based genetic algorithm to minimize the coverage comple-tion time. The proposed algorithm performs routing andpartitioning of the coverage area among the robots concur-rently. The performance analysis indicates the superiority ofthis concurrent approach over two-stage (first routing thenpartitioning) approach. The proposed GA is designed to planpaths using fitness functions that may also incorporate multi-criteria objectives along with the coverage completion timeremaining to be a future research issue.

Acknowledgments This work is supported by the Scientific and Tech-nical Research Council of Turkey (TUBITAK), Contract No 107E064,project title: “Mobile Robot Route Planning for Complete Coverage ofDynamic Indoor Environments”.

References

Acar, E. U., Choset, H., & Lee, J. Y. (2006). Sensor-based cover-age with extended range detectors. IEEE Transactions on Robot-ics, 22(1), 189–198.

Agmon, N., Hazon, N., & Kaminka, G. A. (2006). Constructingspanning trees for efficient multi-robot coverage. Proceedings of2006 IEEE International Conference on Robotics and Automation,1698–1703.

AIRLAB. (2009). Artificial Intelligence and Robotic laboratory, Tur-key: Eskisehir Osmangazi University, http://www.ai-robotlab.ogu.edu.tr.

ANSI. (2010). American National Standards Institute. Accessed Feb-ruary 20, 2010, http://www.webstore.ansi.org.

Arai, T., Pagello, E., & Parker, L. E. (2002). Advances inmulti-robot systems. IEEE Transactions on Robotics and Auto-mation, 18(5), 655–661.

ARNL. (2009). Aria-ARNL software module. Accessed July 25, 2009,http://robots.mobilerobots.com.

Bi, Z. M., Lang, SY. T., & Wang, L. (2008). Improved control andsimulation models of a tricycle collaborative robot. Journal ofIntelligent Manufacturing, 19, 715–722.

Bruno, G., Ghiani, G., & Improta, G. (2000). Dynamic positioningof idle automated guided vehicles. Journal of Intelligent Manu-facturing, 11, 209–215.

Choset, H. (2001). Coverage for robotics—a survey of recentresults. Annals of Mathematics and Artificial Intelligence, 31,113–126.

Goldberg, D. E. (1989). Genetic algorithm in search, optimization,and machine learning. Reading: Addison Wesley.

Guo, Y., & Balakrishnan, M. (2006). Complete coverage controlfor nonholonomic mobile robots in dynamic environments. Pro-ceedings of 2006 IEEE International Conference on Robotics andAutomation, 1704–1709.

Hasgül, S., Saricicek, I., Ozkan, M., & Parlaktuna, O. (2009). Pro-ject-oriented task scheduling for mobile robot team. Journal ofIntelligent Manufacturing, 20, 151–158.

Kapanoglu, M., Ozkan, M., Yazici, A., & Parlaktuna, O. (2008). Agenetic algorithm with orientation compasses for single or multi-robot coverage path planning. Proceedings of 6th InternationalSymposium on Intelligent & Manufacturing Systems, 668–678.

Kapanoglu, M., Ozkan, M., Yazici, A., & Parlaktuna, O. (2009).Pattern-based genetic algorithm approach to coverage path plan-ning for mobile robots. In G. Allen et al. (Eds.), LNCS 5544:ICCS 2009, Part I, (pp. 33–42).

Kong, C. S., New, A. P., & Rekleitis, I. (2006). Distributed coveragewith multi-robot system. Proceedings of 2006 IEEE InternationalConference on Robotics and Automation, 2423–2429.

Ozkan, M., Yazici, A., Kapanoglu, M., & Parlaktuna, O. (2009a).Hierarchical oriented genetic algorithms for coverage path plan-ning of multi-robot teams with load balancing. In Proceedings ofthe 2009 World Summit on Genetic and Evolutionary ComputationGEC09 (pp. 451–458).

Ozkan, M., Yazici, A., Kapanoglu, M., & Parlaktuna, O. (2009b).A genetic algorithm for task completion time minimizationfor multi-robot sensor-based coverage. In Proceedings of IEEEInternational Symposium on Intelligent Control ISIC09 (pp. 1164–1169).

Prassler, E., Ritter, A., Schaeffer, C., & Fiorini, P. (2000). A shorthistory of cleaning robots. Autonomous Robots, 9, 211–226.

Yongguo, M., Yung-Hsiang, L., Hu, Y. C., & Lee, C. S. G. (2006).Deployment of mobile robots with energy and tim-ing constraints. IEEE Transactions on Robotics and Automa-tion, 22(3), 507–522.

123