Professional Documents
Culture Documents
a r t i c l e i n f o a b s t r a c t
Article history: Mobile robots must calculate the appropriate navigation path before starting to move to its destination.
Received 13 February 2015 This calculation is known as the Path Planning (PP) problem. The PP problem is one of the most re-
Revised 20 March 2016
searched topics in mobile robotics. Taking into account that the PP problem is an NP-hard problem, Multi-
Accepted 21 March 2016
Objective Evolutionary Algorithms (MOEAs) are good candidates to solve this problem. In this work, a new
Available online 1 April 2016
multi-objective evolutionary approach based on the Variable Neighborhood Search (MOVNS) is proposed
Keywords: to solve the PP problem. To the best of our knowledge, this is the first time that MOVNS is proposed
Path planning to solve the path planning of mobile robots. The proposed MOVNS handles three different objectives in
MOVNS order to obtain accurate and efficient paths. These objectives are: the path safety, the path length, and the
Multi-objective optimization path smoothness (related to the energy consumption). Furthermore, in order to test the proposed MOEA,
Robotics we have used eight realistic scenarios for the paths calculation. On the other hand, we also compared our
Realistic maps
proposal with other approaches of the state of the art, showing the advantages of MOVNS. In particular, in
Energy consumption
order to evaluate the obtained results we applied different quality metrics. Moreover, to demonstrate the
statistical robustness of the obtained results we also performed a statistical analysis. Finally, the study
shows that the proposed MOVNS is a good alternative to solve the PP problem, producing good paths
with less length, more safety, and more smooth movements. We think this is an important contribution
to the mobile robotics, and therefore, to the field of expert and intelligent systems.
© 2016 Elsevier Ltd. All rights reserved.
http://dx.doi.org/10.1016/j.eswa.2016.03.035
0957-4174/© 2016 Elsevier Ltd. All rights reserved.
A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35 21
Path Planning is an NP-hard optimization problem (Davoodi, difficulty to solve the problem in Sedaghat (2011), also ignoring
Panahi, Mohades, & Hashemi, 2013) and for this reason it can be the energy consumption. These studies took into account only two
tackled by using Multi-Objective Evolutionary Algorithms (MOEAs). objectives and the MOEA we present in this study uses three
In this manuscript, we present an efficient multi-objective objectives to solve the problem (our third objective is the path
version of the Variable Neighborhood Search (VNS) Algorithm smoothness, related to the energy consumption). For this reason,
(Mladenović & Hansen, 1997), a metaheuristic method for solv- we could not compare with their obtained results. Other variants
ing global optimization problems. Unlike many previous works, of MOEAs which optimize two different objectives, in this case the
we tackle the PP problem in a multi-objective manner, applying a path length and the path smoothness, can be found in Mo, Xu, and
MOEA not previously used, and using realistic maps for the calcu- Tang (2013) and Wang and Zhu (2013).
lation of the paths. These are some important contributions of our On the other side, some authors applied MOEAs optimizing
work. For the PP problem, we handle the three essential objectives three different objectives, for example, Ahmed and Deb (2013) and
explained above, that is, the path safety, the path length, and the Jun and Qingbao (2010) used an NSGA-II algorithm that took into
path smoothness (directly related to the energy consumption). This account the path length, the path safety, and the path smoothness.
is also important because many previous works use less objectives These authors optimized the same objectives as we handle in our
or are not aware of the energy consumption. Another important work. For this reason, we have used these proposals in order to do
contribution of our work is that we developed our own specific a fair comparison with the state of the art, showing the goodness
evolutionary operators to solve PP. of our approach.
Due to NSGA-II (Non-dominated Sorting Genetic Algorithm II) The algorithm (MOVNS) proposed in this work is different to
(Deb, Pratap, Agarwal, & Meyarivan, 2002) is the MOEA mainly the one used in our previous research based on swarm intelligence
used by other authors who tackled the same problem (with the (Hidalgo-Paniagua, Vega-Rodríguez, Ferruz, & Pavón, 2015; 2016).
same objectives) in a multi-objective manner, we used this algo- In fact, to the best of our knowledge, this is the first time that a
rithm as a reference, comparing the results of MOVNS with several multi-objective trajectory-based algorithm is used for solving the
implementations of NSGA-II proposed by other authors. This com- PP problem.
parison is based on a complete statistical study, with eight scenar- Lavin (2014) and Lavin (2015) proposed the A∗-PO and D∗-PO
ios and 31 independent repetitions per experiment. algorithms. These algorithms are based on A∗ and D∗ search al-
The rest of the paper is organized as follows. The related work gorithms with Pareto Optimality. However, he focused on a very
can be found in Section 2. In Section 3 the environment model- different PP problem. In fact, he modeled a planetary exploration
ing, the path encoding, and the objectives considered in order to rover in a Mars environment. For this reason, the objectives that
solve the PP problem are clearly explained. The evolutionary oper- he optimized were very different to ours. In particular, he used
ators, mechanism to improve the initial population of MOEAs, and objectives like the average elevation of the path (for obtaining the
the considered MOEAs are explained in Section 4. In Section 5, the path that climbs up the least amount of incline) or the solar in-
methodology used to test MOEAs, that is; the datasets (scenarios), cidence (to minimize the total angular deviation of sunlight from
the parameters configuration, and the metrics used are presented. the rover’s rear solar panel).
To finish, the results, comparisons with the state of the art, and Finally, Kim and Kim (2009) and Kim, Kim, Choi, and Park
conclusions are discussed and analyzed in Sections 6 and 7. (2009) , applied MOEAs to solve the PP problem in a robot soccer
system. This robotics environment is very different to our robotics
2. Related work environment. In fact, they used very different objectives. More
specifically, they used the following three objectives: path time,
In recent years, several studies have been proposed in which heading direction, and posture angle error. Furthermore, none of
MOEAs are applied to tackle the PP problem. Despite of this, some them takes into account the energy consumption. Again, all of
of these works really handle a single objective (EAs). For exam- these authors compared their obtained results with the corre-
ple, in Geetha, Chitra, and Jayalakshmi (2011), Guo, Wang, and Tian sponding NSGA-II algorithm.
(2009), Hao and Qin (2011), Masehian and Sedighizadeh (2010a), Taking into account the previous literature review, the main
Masehian and Sedighizadeh (2010b), Masehian and Sedighizadeh contributions of our present work are:
(2010c), and Krishnan, Paw, and Kiong (2009) the authors use
single-objective optimization although in the paper titles they in- • We tackle the Path Planning problem, one of the most impor-
dicate that multiple objectives are used. On the other hand, almost tant topics in mobile robotics, by using a multi-objective meta-
all the real MOEAs applied to the PP problem used the popular heuristic algorithm known as MOVNS (Multi-Objective Variable
NSGA-II algorithm. In Wei and Liu (2010), J.-H. Wei and J.-S. Liu Neighborhood Search). To the best of our knowledge, no other
presented an NSGA-II which manages only two objectives. In par- works have tackled the PP problem by using a Multi-Objective
ticular, the algorithm optimizes the path length and the path cur- Variable Neighborhood Search algorithm.
vature. In the same way, (Ferariu & Cimpanu, 2014a; 2014b) also • Moreover, to the best of our knowledge, this is the first time
proposed a multi-objective genetic algorithm (combined with Di- that a multi-objective trajectory-based algorithm is used to
jkstra’s algorithm) in order to optimize two objectives: the path solve the PP problem.
length and the total steering angle. Ahmed and Deb (2011), Chang • The proposed MOVNS handles three different objectives in or-
and Liu (2009), and Davoodi et al. (2013) proposed different vari- der to obtain accurate and efficient paths: the path safety, the
ants of NSGA-II which also use two objectives: the path length and path length, and the path smoothness (related to the energy con-
the path safety (referred to the obstacles), but ignoring the en- sumption).
ergy consumption. Other works in which the authors used these • Unlike other authors, in this work we use realistic maps of
same objectives, also without taking into account the energy con- the environment. More specifically, eight realistic scenarios are
sumption, can be found in Salmanpour, Monfared, and Omranpour used. These datasets can be downloaded from http://arco.unex.
(2016), Gong, Zhang, and Zhang (2011), Geng, Gong, and Zhang es/mavega/pathplanning.html. Making easy the reproduction of
(2013), Wang, Kwok, Liu, and Ha (2009), and Zhang, Gong, and the research and the future comparison with the results of this
Zhang (2013). On the other hand, N. Sedaghat also applied NSGA-II paper.
and proposed a variant of these two previous objectives, in par- • Our work also proposes new evolutionary operators specifically
ticular she used the path length in combination with the path designed for solving the PP problem and improving the paths.
22 A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35
Fig. 1. Example of map partitioning: (A) Source map, and (B) Partitioned map.
3. Path planning
Before starting to calculate the appropriate path to allow the cell with a value between 0% and 100%. In order to detect the ob-
robot to move to its target destination, it is essential to build jects existing in the environment, we used two different colors in
an understandable computational representation of the environ- the source map. The background of the map is always white. This
ment by the robot. Thus, the robot could carry out motion plan- color represents the empty space. The walls of the environment
ning operations. As we said previously, the environment is mod- have always associated the green color. Any other object of the
eled in a 2D space using a grid structure. Therefore, the resolution environment will have any other color (neither white nor green).
of the final 2D representation will depend on the grid size (rows ∗ The reason of representing the walls with a different color is that
columns) used to model the source environment. Unlike other au- we consider them as dangerous objects. Note that, if the robot col-
thors who tackled the PP problem too, we have used realistic maps lides with a wall the most likely result is that the robot will be
of the environment for this study. The process to get the final 2D damaged. For this reason, the partitions (cells) in which walls ap-
representation of the environment involves two steps. The first one pear will correspond with a special value in the final 2D structure.
consists of partitioning the real map of the environment into sev- This value is equal to 10 0 0%. By using this penalty, the danger-
eral rows and columns. Each region of the map determined by a ous objects will be avoided before the non-dangerous objects along
specific row and column is known as a partition. Fig. 1 shows an the algorithm process. Finally, the final 2D structure is shown as a
example of the map partitioning. gray level image in which cells with values equal to or greater than
Taking as input the partitioned map, the second step aims to 100% correspond with the black color, the completely empty cells
obtain a 2D structure representing the occupancy of each parti- with the white color, and those cells not fully occupied with a gray
tion. The occupancy of a partition refers to the amount of objects level color. Fig. 2 shows an example of a final 2D representation.
contained in it, and is expressed as a percentage. Therefore, if in a
partition does not appear any object, the value in the correspond- 3.2. Path encoding
ing cell of the final grid will be 0%. Conversely, if a partition is
fully occupied by objects the corresponding value of the cell in the In this work, we manage a path as a sorted list of 2D coordi-
final grid will be equal to 100%. In the same way, a partition nei- nates, that is to say, a list of pairs (X, Y) or (row, column). The first
ther fully occupied nor completely empty will have associated a element of a list corresponds with the starting point of the path
A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35 23
and, respectively, the last element of the list corresponds with the of the path, P1 = (x1 , y1 ) and P2 = (x2 , y2 ), is calculated by using
target point of the path. The number of intermediate coordinates Eq. 2
in the list is variable and, in theory, without limit. This represen-
d (P1 , P2 ) = ( x1 − x2 )2 + ( y1 − y2 )2 . (2)
tation of the paths implicitly encodes the segments forming the
paths; thus, two consecutive coordinates in the list corresponds Remembering that the path is encoded as a sorted list of n grid
with a segment of the path. Fig. 3 shows an example of path en- coordinates, the total length of a specific path can be calculated by
coding. using Eq. 3
n−1
3.3. Path planning objectives PL = d (L[i], L[i + 1] ) , (3)
i=1
All the MOEAs used in this study handle three different objec- where L refers to the sorted list of points (grid coordinates)
tives with the aim of getting accurate and efficient solutions. These forming the path, and L[i] and L[i + 1] refer to the path segment
objectives are the following: defined by the i−th and (i + 1 )-th points of the list.
1. Path safety (related to avoiding obstacles). Note that, this objective is directly related to the robot opera-
2. Path length (related to the robot operation time). tion time, thus, a shorter path implies less time in order to walk
3. Path smoothness (related to the energy consumption). the path.
These objectives are calculated in such a way that all of them 3.3.3. Path smoothness objective
are to be minimized by the MOEAs. In the following subsections The path smoothness objective has as a goal to measure how
an explanation of the calculation of these objectives can be found. much snaky is a specific path. This objective is directly related
to the robot energy consumption. In order to calculate the path
3.3.1. Path safety objective smoothness for a specific path, we add the angles between each
When the robot moves through the space, it is important to do two consecutive segments of the path. Note that, the best an-
it safely, that is to say, without colliding with the objects of the en- gle is the closest to 180° (this number defines a straight path).
vironment. The aim of this objective is to avoid collisions along the Eq. 4 shows how the path smoothness is calculated
navigation path. The path safety objective is calculated by adding
nα
the occupancy (see Section 3.1) of the grid cells stepped by the Pα = (180◦ − αi ) , (4)
robot along the path. In this work, we consider that the robot has i=1
the same size as a cell of the grid representing the environment. where, nα is the number of angles of the path, and α i refers to
Eq. 1 shows how to calculate the value of this objective the value of the i − th angle of the path (measured in degrees in
n−1 the range from 0° to 180°). Note that the equation has the oper-
PS = SCel l si , (1) ation (180◦ − αi ). The reason for this is that the best angle value
i=1 is 180° (a straight segment) and the objective is to be minimized
by the MOEAs. Fig. 4 shows a graphical explanation of the path
where SCellsi is the sum of the occupancies of the cells stepped
smoothness.
by the robot in the segment i−th of the path. The size of the path,
in terms of number of coordinates, is determined by n. 4. Multi-objective evolutionary algorithms
3.3.2. Path length objective In the following subsections, the MOEAs used to solve the PP
Usually, the best option when a robot needs to move from a problem (MOVNS and the two versions of NSGA-II) are clearly ex-
starting point to a target point is to choose the shortest path. For plained.
this reason, the path length objective aims to get paths as short as
possible. Mathematically it is the sum of the lengths of each seg- 4.1. MOVNS
ment of a path. The segment length is based on the euclidean dis-
tance between the extreme points (coordinates) forming the seg- In this work, the proposal to solve the PP problem is the
ment. The euclidean distance between two points (coordinates) MOVNS (Multi-Objective Variable Neighborhood Search) algorithm.
24 A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35
In Fig. 5, pm is the point to be modified (the collision point), Finally, if the object is irregularly-shaped, the operator behaves
cp1 (candidate point 1) and cp2 (candidate point 2) refer to the as a mixture of the cases in which the object is horizontally-
candidate points determined to avoid the object, and ss1 (supe- shaped or vertically-shaped. Fig. 7 shows a graphical explanation
rior segment 1), ss2 (superior segment 2), is1 (inferior segment 1), of this operator applied to an irregularly-shaped object.
and is2 (inferior segment 2) correspond with the possible candi- Regarding Fig. 7, at first glance the object has not a well-defined
date segments that could appear when the collision point is re- shape so we need to handle four candidate points, two correspond-
placed by one of the candidate points. ing with the vertical candidates and the other ones corresponding
In the case of horizontally-shaped objects the procedure is ba- with the horizontal candidates. In this figure pm is again the point
sically the same but with the difference that the candidate points to be modified (the collision point). The parameters hcp1 (hori-
for replacing the collision point will be searched in the horizontal zontal candidate point 1), hcp2 (horizontal candidate point 2), hls1
direction of the collision point. Fig. 6 shows an example of the path (horizontal left segment 1), hls2 (horizontal left segment 2), hrs1
safety operator applied to a horizontally-shaped object. (horizontal right segment 1), and hrs2 (horizontal right segment
In Fig. 6, pm refers to the point to be modified (the collision 2) are handled when the possible solutions are searched horizon-
point), cp1 (candidate point 1) and cp2 (candidate point 2) refer to tally. Conversely, parameters vcp1 (vertical candidate point 1), vcp2
the candidate points determined to avoid the object, and ls1 (left (vertical candidate point 2), vss1 (vertical superior segment 1), vss2
segment 1), ls2 (left segment 2), rs1 (right segment 1), and rs2 (vertical superior segment 2), vis1 (vertical inferior segment 1),
(right segment 2) are the candidate segments that could appear and vis2 (vertical inferior segment 2) are handled when the pos-
by replacing the collision point with one of the candidate points. sible solutions are searched vertically.
26 A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35
Note that, in all the cases, a contour window is used to find the this work, for this step, we developed a selection window to gen-
new candidate points far from objects. The contour window identi- erate new population individuals. On the one hand, the selection
fies as candidate points those which are far enough from the dan- window selects the new valid candidate points to add to the path
gerous object, reducing thus the possibility that the candidate seg- in the surrounding area of the last point added to the path. Among
ments collide with the object to be avoided. all these valid candidate points, one of them will be randomly se-
lected. A point is considered valid when it can be safely-linked
4.1.2. Path length operator (without crossing objects) with the last point added to the navi-
The path length operator aims to reduce the length of a path gation path. It is possible that no valid candidate points exist, then
when it is too long. The length of a path is directly related to the the new point to be added to the path will be selected randomly.
robot operation time, thus, a shorter path will be walked by the In this sense, by using the selection window we try to generate
robot in less time (see Section 3.3.2). To reduce the path length, paths with less segments crossing objects. On the other hand, the
this operator deletes a path coordinate (point). This operation im- selection window is used to search the new candidate points in the
plies that a new segment from the previous to the next coordinate target point (destination point) direction with the aim of obtaining
appears, reducing thus the whole length of the path (see Fig. 8). paths as short as possible. In order to select the new points in the
target point direction we place the selection window in different
places of the map, affecting this to the area in where the new can-
4.1.3. Path smoothness operator
didate points will be searched. For example, if the starting point
The path smoothness operator tries to obtain paths as straight
of the search is in the lower-left corner of the map and the target
as possible. In order to reduce the turns magnitude of a path, the
point is in the upper-right corner of the map, then the lower-left
operator takes as input two consecutive segments of the path and
corner of the selection window will match with the starting point
then tries to improve the angle between them. The angle is better
of the search. As paths are variable size (see Section 3.2), the gen-
when it is close to 180° and, conversely, is worse when it is close
eration of an individual ends when the last point added to the path
to 0°. The operator changes the point of the path that matches
can be safely-linked with the target point (destination point) of the
with the vertex of the angle by the middle point of the next or
path. Fig. 10 shows an example of the selection window behavior.
previous segment of the path with the aim of obtaining a better
angle. The selection between the next and the previous segment is 4.1.5. Mechanism for improving length
random. Accordingly, the segments forming the angle will be mod- Once the population initialization has finished, usually, the gen-
ified too. This operation produces a better angle in the path, reduc- erated items correspond with non-optimized individuals. In this
ing thus the turn magnitude. Remember that the smoothness is an sense they are usually composed by extra segments and loops. This
important parameter in the PP problem due to it is directly related mechanism has as a goal to delete the extra segments presented
to the energy consumption. Fig. 9 shows a graphical explanation of in the individuals of the initial population. In order to delete these
this PP operator. segments, this mechanism, for each coordinate, tries to find the
farthest point of the path with it can be safely-linked; that is to
4.1.4. Generation of the initial population say, a collision-free link. The searching process starts from the tar-
When working with EAs (Evolutionary Algorithms), the first get point (destination point) and it finishes when the starting point
step is always the generation of the initial population. This step is reached. Fig. 11 shows a graphical explanation of this mech-
consists of generating a certain number of possible solutions (in- anism. Note that this operation deletes points and, consequently,
dividuals) to make them evolve along the algorithm procedure. In some segments belonging to the original navigation path will dis-
A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35 27
appear too. Furthermore, this improving step is only used after the as we handle in our work, that is: the path length, the path safety,
population initialization. At the end of the process the EA starts and the path smoothness. For this reason, in Section 6, we include
running with a more or less good population at the input. comparisons with this algorithm, and in this Section we present a
brief explanation of this well-known algorithm. The NSGA-II algo-
4.1.6. Mechanism for deleting loops rithm tries to improve an initial solution set (population) by apply-
This mechanism aims to delete the loops presented in the in- ing classical genetic operators: selection, crossover, mutation, and
dividuals of the initial population. In order to delete these use- replacement. Algorithm 2 shows the NSGA-II pseudocode.
less segments of a specific path, the mechanism tries to deter- The NSGA-II algorithm (Algorithm 2) begins with the popula-
mine if two different and non-consecutive segments are crossing tion initialization (line 4). The initialization consists of generating
themselves. This indicates that a loop exists in the path. To remove a random set of individuals (paths). Once the initialization is com-
this loop, the mechanism deletes all the coordinates and segments pleted, the algorithm tries to evolve the population by executing
forming the loop and then adding to the path a new point, corre- four basic steps. The first step has as a goal to crossover the ini-
sponding with the intersection point of the segments determining tial population in order to obtain the offspring population (line 9).
the loop. The process finishes when there are no segments crossing The crossover uses the binary tournament to select the parents of
themselves. At the end of the process, the EA starts running with each generated offspring. The second step consists of a mutation
a loop-free population. Like the mechanism for improving length process. The mutation step is performed for each new obtained in-
(see Section 4.1.5), this mechanism is only used after the popula- dividual (line 11). Note that, for both; the crossover step and the
tion initialization step. Fig. 12 shows a graphical explanation of this mutation step, two different probabilities are used with the aim
mechanism. of determining when the operation should be performed. Before
executing the last step, a new population formed by the initial in-
4.2. NSGA-II from Jun and Qingbao (2010): Optimizing the 3 dividuals and the obtained offspring is generated, sorted, and eval-
objectives uated by using the crowding distance (lines 12 − 14). Finally, in the
fourth step the best individuals are considered to continue evolv-
NSGA-II (Non-dominated Sorting Genetic Algorithm II) is a ing in the process (line 16). For a more detailed explanation of the
well-known multi-objective metaheuristics proposed by Deb et al. algorithm see Jun and Qingbao (2010).
(2002). This algorithm has been used in Jun and Qingbao (2010) for Note that, in this case, the evolutionary operators for muta-
solving the Path Planning problem with the same three objectives tions, the population initialization, and the mechanisms for im-
28 A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35
Table 1
Algorithm 2 NSGA-II Pseudocode.
Scenarios.
1: popSize ← Number o f individuals.
Configuration\ Scenario A B C D
2: NDSArchive ← ∅.
3: #Init ializat ion. Starting point (93,6) (93,93) (31,8) (83,32)
4: populat ion ← init ial izatePopul ation( popSize ) Target point (23,75) (6,11) (35,89) (11,26)
5: generations ← Number o f iterations o f the algorithm. Path direction SD MD HA VA
Map A A A A
6: for i = 1 to generations do
Configuration\Scenario E F G H
7: Starting point (94,6) (94,90) (28,17) (93,48)
8: #Crossover. Target point (9,90) (6,6) (46,91) (6,49)
9: o f f spring ← crossPopulation( population ) Path direction SD MD HA VA
10: #Mutation. Map B B B B
Fig. 15. Approximate Pareto fronts for the scenario A. MOVNS vs. NSGA-II from Jun and Qingbao (2010).
Fig. 16. Approximate Pareto fronts for the scenario A. MOVNS vs. NSGA-II from Ahmed and Deb (2013).
Table 5 Table 7
Set coverage results (MOVNS, NSGA-II from Jun & Qingbao Scenarios reference points (path safety, path length,
(2010)). path smoothness).
Table 6
Set coverage results (MOVNS, NSGA-II from Ahmed & Deb of the problem objectives) which is calculated as follows. For the
(2013)). path safety, the ideal value is obtained when a specific path does
SC(NSGA-II, MOVNS) SC(MOVNS, NSGA-II) not cross any of the objects appearing in the environment, that is
to say, a value equal to 0. In the case of the path length, the ideal
Scenario A 0.074 0.791 value is obtained when the starting and the target points of the
Scenario B 0.348 0.280
path can be linked by a single segment. For this reason the best
Scenario C 0.167 0.659
Scenario D 0.043 0.909 value for this objective is the euclidean distance from the start-
Scenario E 0.380 0.548 ing point to the target point of the path. Taking into account that
Scenario F 0.077 0.691 the best hypothetical path is formed by a single segment, the ideal
Scenario G 0.013 0.954 value for the path smoothness is 0. This is due to the fact that in
Scenario H 0.025 0.847
Average 0.140 0.710
a path formed by a single segment no turns exist. On the other
hand, a nadir reference point which is formed by the worst values
of the considered objectives. These values are calculated by adding
an offset equal to 30% to the worst values of the objectives, which
Ahmed and Deb (2013), MOVNS) is equal to 14% as average. For were obtained as result of the configuration tests (see Section 5.2).
these reasons, we can state that the MOVNS algorithm is a better Table 7 shows the reference points considered for each scenario.
alternative versus the NSGA-II (in any of its two versions) algo- In order to view results graphically, the following figures
rithm to solve the PP problem. (Figs. 15–18) show the approximate Pareto front corresponding with
Note that, in this study, two reference points were used for the results obtained by applying the MOEAs over the scenarios A
each scenario in order to compute the hypervolume and test the and G. Please, observe that we have selected a scenario per each
MOEAs. On the one hand, an ideal reference point (the best values map (see Fig. 13 and Table 1). The Pareto fronts represented are
32 A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35
Fig. 17. Approximate Pareto fronts for the scenario G. MOVNS vs. NSGA-II from Jun and Qingbao (2010).
Fig. 18. Approximate Pareto fronts for the scenario G. MOVNS vs. NSGA-II from Ahmed and Deb (2013).
A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35 33
Fig. 19. Graphical solution for the scenario A: (A) MOVNS, and (B) NSGA-II from Jun and Qingbao (2010).
Fig. 20. Graphical solution for the scenario A: (A) MOVNS, and (B) NSGA-II from Ahmed and Deb (2013).
Fig. 21. Graphical solution for the scenario G: (A) MOVNS, and (B) NSGA-II from Jun and Qingbao (2010).
those that obtain the median hypervolume for that algorithm in main farther from the ideal solution. This again demonstrates that
each scenario. MOVNS is a better alternative versus NSGA-II in order to solve the
In all graphics (Figs. 15–18), points representing non-dominated PP problem.
solutions of the MOVNS algorithm (circles) clearly tend to ap- Finally, Figs. 19–22 show the best paths corresponding with
proach to the ideal point (represented as a yellow translucent cir- the approximate Pareto fronts showed in Figs. 15–18 respectively.
cle); while the points belonging to NSGA-II (any of its two ver- These paths represent the solution closer to the ideal reference
sions, from Jun and Qingbao (2010) or Ahmed and Deb (2013)) re- point in each case (euclidean distance is used for this). Again, these
34 A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35
Fig. 22. Graphical solution for the scenario G: (A) MOVNS, and (B) NSGA-II from Ahmed and Deb (2013).
images show the advantages of using MOVNS versus NSGA-II when algorithm (specifically the approaches proposed by Jun and Qing-
they are applied to the PP problem. bao (2010) and Ahmed and Deb (2013)), which has been the al-
As conclusion of the experimental outcomes, the following in- gorithm most commonly used by other authors in the literature.
sights can be highlighted: Regarding the obtained results, they have been evaluated by using
both, multi-objective metrics (hypervolume and set coverage) to en-
• From a multi-objective point of view, MOVNS has better hyper- sure the quality of the obtained results and a statistical analysis to
volume and set coverage than the proposals from the other au- demonstrate the statistical relevance of the results. The comparison
thors. This means that MOVNS covers a higher area of the so- showed differences in the approximate Pareto fronts and the solu-
lution search space, obtaining solutions of better quality from tions provided by each MOEA; that is, MOVNS and NSGA-II (from
a multi-objective perspective (that is, taking into account the Jun and Qingbao (2010) and Ahmed and Deb (2013)) (see figures in
three objectives to optimize: path length, safety, and smooth- Section 6). In order to test the MOEAs, and unlike other authors,
ness). we used eight different realistic scenarios. These datasets can be
• MOVNS also has less interquartile range values than the pro- freely downloaded, making easy the reproduction of the research
posals from the other authors. This means that the results ob- and the future comparison with the results of this paper. Taking
tained by MOVNS are more stable and reliable. into account the results presented in Section 6, we can assert that
• The statistical analysis of the variances of the different algo- MOVNS is a better alternative than NSGA-II when they are applied
rithms is positive in almost all the cases. This means that to solve the PP problem. We think this is an important contribu-
the improvements obtained by MOVNS regarding the propos- tion to the mobile robotics, and therefore, to the field of expert
als from the other authors are statistically significant in almost and intelligent systems.
all the cases. As future work, it could be interesting to calculate paths in dy-
• The graphical representation of the Pareto fronts shows that the namic environments since this work only considers static environ-
solutions obtained by MOVNS are nearer to the ideal point (so- ments. Local and dynamic path planners may improve by using
lution). This means that the solutions obtained by MOVNS have multi-objective optimization algorithms like MOVNS.
better quality than the ones obtained by the proposals from the The MOVNS algorithm could be beneficial to many applications
other authors. for mobile robots with global path planning, including residen-
• The graphical representation of the paths shows that the paths tial and factory robot workers, agricultural harvesting, information
obtained by MOVNS have less length, more safety, and/or more gathering (i.e. drones), disaster relief, and exploration rovers. Fur-
smooth movements than the ones obtained by the proposals thermore, MOVNS is a general algorithm and could be applied to
from the other authors. This confirms, from a graphical point of other problems in the field of expert and intelligent systems where
view, the insights previously mentioned. a multi-objective optimization is required.
In this work, the use of a multi-objective approach of the This work was partially funded by the Projects of Excellence
VNS (Variable Neighborhood Search) method has been proposed from the Junta de Andalucía (Spain) ROMOCOG I and ROMOCOG
to solve the Path Planning problem. To the best of our knowledge, II (P09-TEP-4479 and P10-TEP-6412). The work was also partially
no other works have tackled the PP problem by using a Multi- funded by the Spanish Ministry of Economy and Competitiveness
Objective Variable Neighborhood Search algorithm. Moreover, to and the ERDF (European Regional Development Fund), under the
the best of our knowledge, this is the first time that a multi- contract TIN2012-30685 (BIO project).
objective trajectory-based algorithm is used to solve the PP prob-
References
lem. In this study, our approach handles three different objec-
tives: the path safety, the path length, and the path smoothness (see Ahmed, F., & Deb, K. (2011). Multi-objective path planning using spline representa-
Section 3.3). Furthermore, in order to obtain accurate and effec- tion. In Proceedings of the IEEE international conference on robotics and biomimet-
tive paths (solutions), we proposed new evolutionary operators too ics (IEEE-ROBIO 2011) (pp. 1047–1052). doi:10.1109/ROBIO.2011.6181426.
Ahmed, F., & Deb, K. (2013). Multi-objective optimal path planning using elitist non-
(see Sections 4.1.1–4.1.6). In addition, with the aim of comparing dominated sorting genetic algorithms. Soft Computing, 17(7), 1283–1299. doi:10.
with the state of the art, we also used the well-known NSGA-II 10 07/s0 050 0- 012- 0964- 8.
A. Hidalgo-Paniagua et al. / Expert Systems With Applications 58 (2016) 20–35 35
Bartle, R. (2011). The Elements of integration and lebesgue measure. Wiley classics Krishnan, P., Paw, J., & Kiong, T. S. (2009). Cognitive map approach for mobility
library. New York: Wiley. path optimization using multiple objectives genetic algorithm. In Autonomous
Chang, H.-C., & Liu, J.-S. (2009). High-quality path planning for autonomous mo- robots and agents, 2009. ICARA 2009. 4th international conference on (pp. 267–
bile robots with n3-splines and parallel genetic algorithms. In Robotics and 272). doi:10.1109/ICARA.20 0 0.4803970.
biomimetics, 2008. ROBIO 2008. IEEE international conference on (pp. 1671–1677). LaValle, S. M. (2006). Planning algorithms. Cambridge: Cambridge University Press.
doi:10.1109/ROBIO.2009.4913252. Lavin, A. (2014). A pareto front-based multiobjective path planning algorithm. In
Davoodi, M., Panahi, F., Mohades, A., & Hashemi, S. N. (2013). Multi-objective path 2014 IEEE/RSJ international conference on intelligent robots and systems (IROS),
planning in discrete space. Applied Soft Computing, 13(1), 709–720. http://dx.doi. 6th workshop on planning, perception and navigation for intelligent vehicles
org/10.1016/j.asoc.2012.07.023. (pp. 123–130).
Deb, K., Pratap, A., Agarwal, S., & Meyarivan, T. (2002). A fast and elitist multiobjec- Lavin, A. (2015). A pareto optimal D∗ search algorithm for multiobjective path plan-
tive genetic algorithm: NSGA-II. Evolutionary Computation, IEEE Transactions on, ning. CoRR, abs/1511.00787, 1–8.
6(2), 182–197. doi:10.1109/4235.996017. Masehian, E., & Sedighizadeh, D. (2010a). Multi-objective PSO- and NPSO-based al-
Ferariu, L., & Cimpanu, C. (2014a). Multiobjective hybrid evolutionary path planning gorithms for robot path planning. Advances in Electrical and Computer Engineer-
with adaptive pareto ranking of variable-length chromosomes. In Applied ma- ing, 10(4), 69–76. doi:10.4316/AECE.2010.04011.
chine intelligence and informatics (SAMI), 2014 IEEE 12th international symposium Masehian, E., & Sedighizadeh, D. (2010b). A multi-objective PSO-based algorithm for
on (pp. 73–78). doi:10.1109/SAMI.2014.6822417. robot path planning. In Industrial technology (icit), 2010 ieee international confer-
Ferariu, L., & Cimpanu, C. (2014b). Pareto genetic path planning hybridized with ence on (pp. 465–470). doi:10.1109/ICIT.2010.5472755.
multi-objective Dijkstra’s algorithm. In System theory, control and computing (IC- Masehian, E., & Sedighizadeh, D. (2010c). Multi-objective robot motion planning us-
STCC), 2014 18th international conference on (pp. 341–346). doi:10.1109/ICSTCC. ing a particle swarm optimization model. Journal of Zhejiang University SCIENCE
2014.6982439. C, 11(8), 607–619. doi:10.1631/jzus.C0910525.
Geetha, S., Chitra, G., & Jayalakshmi, V. (2011). Multi objective mobile robot path Mladenović, N., & Hansen, P. (1997). Variable neighborhood Search. Computers & Op-
planning based on hybrid algorithm. In Electronics computer technology (ICECT), erations Research, 24(11), 1097–1100. doi:10.1016/S0305-0548(97)0 0 031-2.
2011 3rd international conference on: vol. 6 (pp. 251–255). doi:10.1109/ICECTECH. Mo, H., Xu, Z., & Tang, Q. (2013). Constrained multi-objective biogeography opti-
2011.5942092. mization algorithm for robot path planning. In Y. Tan, Y. Shi, & H. Mo (Eds.),
Geng, N., Gong, D., & Zhang, Y. (2013). Robot path planning in an environment with Advances in swarm intelligence. In Lecture notes in computer science: vol. 7928
many terrains based on interval multi-objective PSO. In Evolutionary computa- (pp. 323–329). Berlin Heidelberg: Springer. doi:10.1007/978- 3- 642- 38703- 6_38.
tion (CEC), 2013 IEEE congress on (pp. 813–820). doi:10.1109/CEC.2013.6557652. Salmanpour, S., Monfared, H., & Omranpour, H. (2016). Solving robot path planning
Gong, D.-W., Zhang, J.-H., & Zhang, Y. (2011). Multi-objective particle swarm opti- problem by using a new elitist multi-objective IWD algorithm based on coeffi-
mization for robot path planning in environment with danger sources. Journal cient of variation. Soft Computing, 1–17. doi:10.10 07/s0 050 0- 015- 1991- z.
of Computers, 6(8), 1554–1561. doi:10.4304/jcp.6.8.1554-1561. Sedaghat, N. (2011). Mobile robot path planning by new structured multi-objective
Guo, F., Wang, H., & Tian, Y. (2009). Multi-objective path planning for unrestricted genetic algorithm. In Soft computing and pattern recognition (SoCPaR), 2011 inter-
mobile. In Automation and logistics, 2009. ICAL ’09. IEEE international conference national conference of (pp. 79–83). doi:10.1109/SoCPaR.2011.6089099.
on (pp. 1046–1051). doi:10.1109/ICAL.2009.5262574. Sheskin, D. (2011). Handbook of parametric and nonparametric statistical proce-
Hansen, P., Mladenović, N., & Moreno Pérez, J. A. (2010). Variable neighbourhood dures (5th ed.). Boca Raton: Chapman & Hall/CRC.
search: Methods and applications. Annals of Operations Research, 175(1), 367– Shih, B.-Y., Chang, H., & Chen, C.-Y. (2013). Path planning for autonomous robots - a
407. doi:10.1007/s10479- 009- 0657- 6. comprehensive analysis by a greedy algorithm. Journal of Vibration and Control,
Hao, W., & Qin, S. (2011). Multi-objective path planning for space exploration robot 19(1), 130–142. doi:10.1177/1077546311429841.
Based on Chaos immune particle swarm optimization algorithm. In H. Deng, Wang, D., Kwok, N., Liu, D., & Ha, Q. (2009). Ranked pareto particle swarm op-
D. Miao, J. Lei, & F. Wang (Eds.), Artificial intelligence and computational intelli- timization for mobile robot motion planning. In D. Liu, L. Wang, & K. Tan
gence. In Lecture notes in computer science: vol. 7003 (pp. 42–52). Berlin Heidel- (Eds.), Design and control of intelligent robotic systems. In Studies in computa-
berg: Springer. doi:10.1007/978- 3- 642- 23887- 1_6. tional intelligence: vol. 177 (pp. 97–118). Berlin Heidelberg: Springer. doi:10.1007/
Hidalgo-Paniagua, A., Vega-Rodríguez, M. A., Ferruz, J., & Pavón, N. (2015). MOSFLA- 978- 3- 540- 89933- 4_5.
MRPP: Multi-objective shuffled frog-leaping algorithm applied to mobile robot Wang, F., & Zhu, Z. (2013). Global path planning of wheeled robots using a multi-
path planning. Engineering Applications of Artificial Intelligence, 44, 123–136. objective memetic algorithm. In H. Yin, K. Tang, Y. Gao, F. Klawonn, M. Lee,
doi:10.1016/j.engappai.2015.05.011. T. Weise, B. Li, & X. Yao (Eds.), Intelligent data engineering and automated learn-
Hidalgo-Paniagua, A., Vega-Rodríguez, M. A., Ferruz, J., & Pavón, N. (2016). Solving ing IDEAL 2013. In Lecture notes in computer science: vol. 8206 (pp. 437–444).
the multi-objective path planning problem in mobile robotics with a firefly- Berlin Heidelberg: Springer. doi:10.1007/978- 3- 642- 41278- 3_53.
based approach. Soft Computing, 1–16. doi:10.10 07/s0 050 0- 015- 1825- z. Wei, J.-H., & Liu, J.-S. (2010). Generating minimax-curvature and shorter n3-spline
Jun, H., & Qingbao, Z. (2010). Multi-objective mobile robot path planning based on path using multi-objective variable-length genetic algorithm. In Networking,
improved genetic algorithm. In Intelligent computation technology and automa- sensing and control (ICNSC, 2010 international conference on (pp. 319–324).
tion (ICICTA), 2010 international conference on: vol. 2 (pp. 752–756). doi:10.1109/ doi:10.1109/ICNSC.2010.5461496.
ICICTA.2010.300. Zhang, Y., Gong, D.-W., & Zhang, J.-H. (2013). Robot path planning in uncertain en-
Kim, J.-H., Kim, Y.-H., Choi, S.-H., & Park, I.-W. (2009). Evolutionary multi-objective vironment using multi-objective particle swarm optimization. Neurocomputing,
optimization in robot soccer system for education. Computational Intelligence 103, 172–185. http://dx.doi.org/10.1016/j.neucom.2012.09.019.
Magazine, IEEE, 4(1), 31–41. doi:10.1109/MCI.2008.930985. Zitzler, E., Deb, K., & Thiele, L. (20 0 0). Comparison of multiobjective evolutionary
Kim, Y.-H., & Kim, J.-H. (2009). Multiobjective quantum-inspired evolutionary al- algorithms: Empirical results. Evolutionary Computation, 8, 173–195. doi:10.1162/
gorithm for fuzzy path planning of mobile robot. In Evolutionary computation, 106365600568202.
2009. CEC ’09. IEEE congress on (pp. 1185–1192). doi:10.1109/CEC.2009.4983080. Zitzler, E., & Thiele, L. (1999). Multiobjective evolutionary algorithms: A compara-
tive case study and the strength Pareto approach. Evolutionary Computation, IEEE
Transactions on, 3(4), 257–271. doi:10.1109/4235.797969.