Paper Dynamic Path Planning
Paper Dynamic Path Planning
8, AUGUST 2015 1
Abstract—Nowadays, the use of differential drive mobile robots move on a plane with only two wheels, the ease with which
has become widespread in a wide variety of activities. Some of its movement can be described, the simplicity of its control,
their most relevant applications are transportation, inspection, its relative low cost, and its universality as it is present in a
surveillance, and rehabilitation. In many of these applications,
mobile robots operate in scenarios with dynamic obstacles (e.g., wide variety of applications [10].
moving robots, objects, people, and animals). In this sense, path One of the main problems faced by the differential mobile
planning is a crucial activity that allows a mobile robot to move robot and, in general, by any type of mobile robot is path
from one location to another safely and at an affordable cost. Path planning [11]. Without loss of generality, path planning refers
planning has been studied extensively for static scenarios, i.e., to the task of getting the mobile robot from an initial configu-
operating spaces in which obstacles preserve their configuration
over time. However, when the scenarios are dynamic, research ration (this may include its position and orientation in space) to
is limited due to the complexity and high cost of continuously a final one safely (i.e., avoiding obstacles or threats) and with
re-planning the robot’s movements to ensure its safety, i.e., the least possible cost (e.g., using the least energy, traveling
avoiding moving obstacles. This paper proposes a new, simple, the shortest distance, or with the greatest speed) [12].
reliable, and affordable method to plan safe and optimized Path planning, by its nature, is a complex task [9]. Depend-
paths for differential mobile robots in dynamic scenarios. The
method is based on the online re-optimization of a state-of-the- ing on the features of the robot and its operating environ-
art deterministic path planner using a metaheuristic algorithm ment, this task can be further complicated. Here, it is worth
when necessary. Simulation results show the effectiveness of the distinguishing two cases: (1) When the operating environment
proposal. includes static obstacles (i.e., when the obstacles maintain their
Index Terms—Dynamic path planning, differential drive mo- original configuration over time) and (2) when these obstacles
bile robot, online optimization, metaheuristics, bug0. are dynamic (i.e., when the obstacles are moving).
Case (1) has been widely studied in the specialized literature
from different approaches. This has given rise to well-known
I. I NTRODUCTION
and currently used path planners. In [13], four main types
The use of mobile robots is now widespread in a number of planners are distinguished. Among these are reactive-
of applications, including the transport of people and goods computing-based, which are able to plan the next maneuver
[1], [2], border surveillance, rescue, and monitoring [3], [4], quickly and continuously as they receive information from the
[5], health and rehabilitation [6], and even entertainment [7]. operating environment. Relevant planners include Bug algo-
The growth of this type of robot can be attributed to its ability rithms [14] and artificial potential fields [15]. For their part,
to operate in extended environments compared to the classic soft-computing-based planners use soft-computing algorithms
fixed-base robots [8]. to approximate paths that meet certain performance criteria.
Mobile robots can be distinguished by the environment In this field, evolutionary computation and swarm intelligence
in which they operate (i.e., terrestrial, aquatic, aerial, or algorithms [16], neural networks [17], and fuzzy logic [18]
hybrid), the type of element that produces their motion (e.g., stand out. On the other hand, C-space-search-based methods
legs, wheels, caterpillars, propellers, etc.), or the ability to discretize the operation space to reduce the number of possible
change direction (unidirectional, multi-directional, or omni- paths and make planning more efficient. The A* [19] and
directional) [9]. Among the great diversity of mobile robots, rapidly random tree [20] algorithms are representative of this
the differential drive mobile robot stands out for its ability to category. Finally, in the Optimal-Control-Based methods, the
path is the solution to the optimal control problem [21].
* Corresponding author: M. Aldape-Pérez (maldape@ipn.mx)
A. Rodrı́guez-Molina and A. Herroz Herrera are with the Research and As for case (2), it adds difficulty to the planning problem
Postgraduate Division, Tecnológico Nacional de México/IT de Tlalnepantla, inherent to dynamic obstacles. In this case, the methods
Tlalnepantla de Baz 54070, Mexico. conceived to solve the path planning problem considering
M. Aldape-Pérez is with the Postgraduate Department, Centro de Inno-
vación y Desarrollo Tecnológico en Cómputo, Instituto Politécnico Nacional, case (1) are not sufficiently effective and require additional
Mexico City 07700, Mexico. mechanisms to handle the dynamism of the environment
G. Flores-Caballero is with the Universidad Aeronáutica de Querétaro, [13]. Some approaches to handle case (2) that have been
Querétaro 76278, Mexico.
J. A. Antón-Vargas is with the Department of Computer Science, University successfully tested consist of hybridization of different path
of Ciego de Ávila, Ciego de Ávila 65100, Cuba. planners [22], continuous re-planning of paths as soon as
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 2
A. Kinematic model
The kinematic model describes the robot’s motion in terms
of the generalized coordinates and the input rotation speeds
of the wheels. This model can be utilized to simulate the
behavior of the robot. To determine the kinematic model of
the differential mobile robot, the geometrical elements that
influence its positioning and orientation must be considered.
These elements are the radius of the wheels r and the length
of the axis separating them L. So, this model is derived below.
When both wheels rotate at given speeds, the robot platform
travels with tangential velocity v, and rotates with angular
speed ω and radius R around the Instantaneous Center of
Rotation (ICR). Then, from Fig. 1, it is easy to observe that:
ẋ = v cos(θ)
Fig. 1. The differential drive mobile robot. ẏ = v sin(θ) (1)
θ̇ = ω
a change in the operating environment is detected [23], or where ẋ = dx/dt and ẏ = dy/dt are the components of
inclusion of new operators in existing planning methods [24]. the velocity v at X and Y , respectively, and θ̇ = dθ/dt is the
Thus, many of the planners proposed to date for case (2) rotational speed of the robot, with t as the time.
are very sophisticated and require advanced theoretical and Both v and ω in (1) can be considered as the inputs of the
practical tools to be implemented. Some of these have high robot since they can be expressed in terms of the rotational
computational costs that may be unfeasible, and in many cases, speeds of the two wheels, as described next.
their operation may be limited to conditions that are difficult From Fig. 1, the velocity v can be determined as:
to meet in practice.
v = Rω (2)
Because of the above, this work proposes a new, simple,
reliable, and affordable method to plan safe and optimized Likewise, the tangential velocities vl and vr of the wheels
paths for the differential mobile robot in dynamic scenarios. can be expressed in terms of R, L, and ω as:
The method is based on a simple and efficient Bug-type
planner [13]. This proposal re-optimizes the Bug planner L
vl = R l ω = R − ω
online through a simple and effective metaheuristic optimizer 2
(3)
when necessary to make it affordable. This new planner is L
vr = R r ω = R + ω
tested in simulation using a scenario with several moving 2
obstacles and is compared to the original Bug algorithm.
where Rl and Rr are the rotation radius of each wheel with
The rest of the paper is organized as follows. Section respect to ICR.
II describes the differential drive mobile robot. Section III Solving the equation system given in (3) for ω and R leads:
introduces the features of deterministic path planners with
a special focus on Bug methods. The proposed dynamic vr − vl
ω=
path planner based on the online optimization of a Bug-type l (4)
method through the Differential Evolution metaheuristic is L vl + v r
R=
developed in section IV. The experimental details and results 2 vr − vl
are discussed in Section V. Conclusions are drawn in Section Substituting ω and R in (2) gives:
VI.
vr + vl
v= (5)
2
From (4) and (5), it is clear that v and ω depend on the
II. D IFFERENTIAL D RIVE M OBILE ROBOT
tangential velocities of the wheels vl and vr . In turn, the above
velocities can be determined if one knows the rotation speeds
The differential drive mobile robot is a mechanical system of the wheels ωl and ωr as vl = rωl and vr = rωr .
with the ability to move in the plane XY by using two identi-
cal wheels placed on the same axis of rotation. The orientation
and position of this robot depend on the difference in the B. State-space model
rotation speeds of the two wheels. The above configuration Simulating the differential mobile robot’s kinematic behav-
can be described by three generalized coordinates as seen in ior requires first defining the state concept. The state of a
Fig. 1. These coordinates include the position x, y of the robot system is a vector with a minimum set of variables that define
on the plane, and the angular position θ measured with respect its behavior for any instant of time. In the case of mechanical
to the axis X. systems, including the differential mobile robot, the states that
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 3
define their kinematic behavior can be given by the generalized • The mobile robot always moves in a straight line from
coordinates. Therefore, the vector of states for this robot is: its current position and towards the goal.
• The mobile robot changes its moving direction only when
z(t) = [x(t), y(t), θ(t)]T (6) it approaches an obstacle.
Based on the above state vector, it is possible to define a Mobile robots using Bug-type algorithms can avoid ob-
state equation as follows: stacles and move toward the goal. These algorithms require
low memory and processing, and the obtained path is often
ż(t) = f (z, u, t) (7) not optimal but is generally effective in reaching the final
configuration without collision [26].
where z(t) is the state vector, u(t) includes the system
inputs (these are v(t) and w(t), which allow the differential B. The Bug0 path planner
robot to move), and t is the time. Among the Bug-type planners, different variants are distin-
Thus, the state equation can be obtained using the results guished by the complexity of their operations and the way
from the previous kinematic analysis: they perform the two activities mentioned above. All of them
ẋ
v cos(θ)
have different benefits and limitations. The simplest of these
ż = ẏ = v sin(θ) (8) algorithms is known as Bug0 and has two basic behaviors [26]:
θ̇ ω • The robot moves towards the goal until an obstacle is
detected or the final configuration is reached. A variable-
C. Robot simulation gain linear speed controller and a fixed-gain angular
speed controller are used for this, where the variable gain
State equation (8) is an ordinary differential equation whose depends on the distance between the robot and the goal.
independent variable is t. If an initial condition z0 (i.e., an • If a nearby obstacle is detected, the robot turns −π/2
initial mobile configuration with an initial position x0 , y0 , or π/2 (only one choice) with respect to the collision
and orientation θ0 ) is imposed on this differential equation, direction and follows the contour of the obstacle until
an initial value problem is obtained. When this problem is it is able to follow a straight line to the goal. In this
solved, e.g., through a numerical integration method, the result case, fixed-gain linear and angular speed controllers are
includes the robot’s predicted future states z(t + dt) after a utilized.
short time interval dt when the input u(t) is considered. This
Algorithm 1 describes Bug0. At fixed time intervals while
prediction is utilized to simulate the mobile robot for a given
moving the differential mobile robot, Bug0 uses the distance to
time window.
the nearest obstacle dobs , the orientation of the nearest obstacle
with respect to the robot θobs , the position of the goal ξg =
III. D ETERMINISTIC PATH P LANNING
[xg , yg ]T , and the current position and orientation of the robot,
Without losing generality, path planning is a task that allows respectively ξ(t) = [x(t), y(t)]T and θ, to calculate the control
taking a mobile robot from an initial configuration to a final inputs v and ω (linear and angular velocities) that take the
one with the lowest possible risk and cost. robot closer to the goal avoiding obstacles in the path. For
The above task is performed by a path planner. Determinis- this, it is assessed whether the distance to the nearest obstacle
tic path planners are algorithms that can always find the same is safe enough using an appropriate threshold dmin (line 2).
paths under the same operating conditions [25]. This type of In that case, the robot must steer in the direction of the goal
planner is effective when dealing with static environments. using a variable gain for the linear velocity controller v, and
Moreover, its implementation is relatively simple and low cost, a fixed gain for the angular speed controller ω (lines 3 to
so it is widely used. Nevertheless, deterministic planners are 7). The variable gain depends on the distance to the goal.
less effective when a mobile robot operates within a dynamic Otherwise, the robot will go around the nearest obstacle using
scenario due to its changing conditions and unpredictable fixed-gain linear and angular speed controllers in the direction
behaviors of its obstacles. θobs + s(π/2), i.e., to the left or right of the obstacle direction
Among the wide variety of available deterministic path plan- (when s = 1 or s = −1, respectively), but always in the
ners, the Bug-type is one of the simplest and most affordable same direction (lines 9 to 12). Using the control gains (fixed
[13]. or variable), Bug0 calculates the inputs v and ω (lines 14 to
16) that move the robot toward the goal avoiding obstacles in
A. Bug-type path planners the path.
Bug-type planners are simple state-of-the-art alternatives
as they only require feedback from the environment (via IV. P ROPOSED DYNAMIC PATH P LANNER
sensors or transducers) and do not require a complete map As mentioned above, the Bug0 algorithm is effective in
of the environment [26], i.e., the path is planned based on handling the path planning problem for static scenarios. If the
the scenario information that they can acquire within a given environment is dynamic, Bug0 may encounter some difficulties
radius. related to its fixed parameters:
The operation of this type of path planner can be summa- • In this algorithm, when the robot is near an obstacle, it
rized in two simple behaviors [26]: always evades it in the same direction (to the left or to the
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 4
B. Differential Evolution
The optimization problem in (12)-(11) includes highly non-
where the increase in the differential variation is controlled by
linear, discontinuous, and non-differentiable elements, which
the scaling factor F ∈ [0, 1].
makes it difficult to solve by traditional search or opti-
mization methods. For this reason, approximate optimization
techniques, such as metaheuristics, may be suitable alternatives vi = pr1 + F (pr2 − pr3 ) (15)
to find good solutions to this kind of problem [29].
Differential Evolution (DE) [30] is a metaheuristic opti- 2) Crossover: DE rand/1/bin applies binomial recombina-
mization technique inspired by natural evolution. This al- tion to generate the offspring ui by combining the original
gorithm has a population of individuals that searches for vector pi and the mutant vector vi , using (16) with CR ∈ [0, 1]
the approximate solution to a complex optimization problem. as the crossover rate and jrand a randomly chosen design
The general operation of the most widely used variant of variable.
ED, the rand/1/bin, is described in Algorithm 2. In DE,
each D-dimensional vector pi = [xi1 , pi2 , . . . , piD ]T , i =
vi,j , if rand(0, 1) < CR or j = jrand
1, 2, . . . , N P in a population with N P individuals, is used ui,j = (16)
pi,j , otherwise
to represent a candidate solution to the optimization problem.
At the beginning of the algorithm, the initial population (for 3) Selection: The selection in rand/1/bin consists of choos-
G = 0) includes individuals randomly generated in the search ing the best alternative between a pair of solutions. When
space delimited by dmin y dmax (lines 1 and 2). During a evolutionary algorithms solve problems with constraints, it
maximum of Gmax iterations, each of the individuals in the is necessary to incorporate a handler that allows working
current population PG generates first a mutant individual and with non-feasible solutions into their operation. Deb’s rules
then an offspring with which it competes to determine the mechanism is a simple and efficient alternative to handle
fittest solution, which persists in the next generation (lines 3 infeasible solutions over generations [32]. For this purpose,
to 9). ED includes three operators: mutation, crossover, and the rules first weigh the feasibility and then the optimality
selection, detailed below. At the end of the last generation, when comparing two solutions.
the best individual from the final population is selected as the Deb’s feasibility rules are determined by the following three
approximated solution to the optimization problem (line 10). simple conditions [32]:
Because of its simplicity and high efficiency [31], DE in its
variant rand/1/bin is used in this work to continuously solve 1) If a feasible solution is compared against a non-feasible
the dynamic optimization problem in (12)-(11). The operators solution, then the former is preferred.
of DE rand/1/bin are described below. 2) If two feasible solutions are compared, the one with the
1) Mutation: This operator is used in DE rand/1/bin to best objective function value is preferred.
generate a mutant vector vi , which is then used in the crossover 3) If two infeasible solutions are compared, the one with
to obtain an offspring vector ui . For each individual in the lowest constraint violation sum is preferred.
the current population pi , the mutation operator uses three The constraint violation sum is represented as follows for a
different parent individuals to generate the mutant with (15), dynamic optimization problem:
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 6
TABLE II
R ESULTS OF D-B UG 0 AFTER 30 INDEPENDENT RUNS .
Run Path length (m) Collisions Arriving time (s) Speed (m/s) Execution time (s)
1 4.1185 0 12.3000 0.3348 2.3460
2 4.1228 0 12.3000 0.3351 2.2770
3 4.1188 0 12.3000 0.3348 2.1370
4 4.1085 0 12.2700 0.3348 2.1770
5 4.1138 0 12.2700 0.3352 2.1450
6 4.1185 0 12.3000 0.3348 2.1160
7 4.1220 0 12.3000 0.3351 2.1090
8 4.1124 0 12.2700 0.3351 2.1830
9 4.1205 0 12.3000 0.3350 2.1400
10 4.1190 0 12.3000 0.3348 2.1850
11 4.1197 0 12.3000 0.3349 2.1330
12 4.1194 0 12.3000 0.3349 2.1110
13 4.1177 0 12.3000 0.3347 2.1080
14 4.1226 0 12.3000 0.3351 2.1240
15 4.1212 0 12.3000 0.3350 2.0780
16 4.1205 0 12.3000 0.3350 2.1170
17 4.1177 0 12.3000 0.3347 2.1060
18 4.1185 0 12.3000 0.3348 2.1450
19 4.1152 0 12.2700 0.3353 2.1510
20 4.1185 0 12.3000 0.3348 2.1780
21 4.1181 0 12.3000 0.3348 2.1360
22 4.1253 0 12.3000 0.3353 2.0710
23 4.1240 0 12.3000 0.3352 2.1500
24 4.1103 0 12.2700 0.3349 2.1920
25 4.1212 0 12.3000 0.3350 2.1210
26 4.1125 0 12.2700 0.3351 2.1410
27 4.1176 0 12.3000 0.3347 2.1410
28 4.1173 0 12.3000 0.3347 2.1600
29 4.1163 0 12.2700 0.3354 2.2520
30 4.1095 0 12.2700 0.3349 2.1690
Mean 4.1179 0 12.2920 0.3350 2.1533
Std. 0.0040 0 0.0134 0.0002 0.0568
Max. 4.1253 0 12.3000 0.3354 2.3460
Min. 4.1085 0 12.2700 0.3347 2.0710
shows how D-Bug0 changes the avoidance direction and robot above means that although the null variation in the results of
speed to avoid collisions with dynamic obstacles. the runs could be desirable, the generated paths do not meet
Tables III and IV include the results obtained with Bug0+ the objective of collision avoidance and may lead to additional
and Bug0− (i.e., Bug0 with fixed parameters and different ob- costs during physical testing. Because of this, Bug0 may not
stacle avoidance directions), respectively, after 30 independent be suitable for path planning in dynamic environments.
runs under the same experimental conditions as D-Bug0. The Based on Tables II-IV, it can be noted that the paths
first column of these tables shows the number of the run, and generated by D-Bug0 have, in all cases, reduced path lengths,
the following columns show the travel distance, the number of collisions, and arrival times, and consequently, higher speed
times the robot collided with the dynamic obstacles, the time values. Based on the above, the paths generated by D-Bug0
it took for the robot to reach the goal, the speed and the time are better than those of the original Bug0 planning method. In
it took for the computer to process each variant of the Bug0 particular, the fact that the number of collisions in the paths
algorithm as well as the simulation. As in Table II, the lower generated by D-Bug0 is zero, while in the paths obtained by
part of these two tables shows the same statistical measures Bug0+ and Bug0− it is different, indicates a great advantage
for each column, and, similarly, the best results are shown in of the first method since it can lead to significant savings
boldface. in robot damage costs in a real scenario. Therefore, after
Tables III and IV show that the standard deviation is zero observing the data yielded by the path planners, it is clear the
for path length, arrival time, and speed, highlighting the high efficiency of the D-Bug0 since it obtains better results
deterministic behavior of the Bug0 algorithms. Therefore, the in all the aspects listed in the Tables II-IV, except for the
same results of these columns are always observed in each simulation execution time, although this last is still affordable
of the 30 independent runs of the Bug0 algorithms. With for eventual experimentation with the physical device.
respect to the execution time values, there are small variations Figures 3 and 4 describe the behavior of an arbitrary
attributed to other tasks executed in the computer’s operating execution of Bug0+ and Bug0−, respectively. These figures
system. On the other hand, one of the most important findings include plots of the full scenario every 1.5 (s). The red, green,
in these two tables is that the paths generated by Bug0+ and black, and blue circles represent the obstacles, the goal, the
Bug0− always collide with dynamic obstacles. In the case of differential mobile robot, and the start of the path, respectively.
Bug0+, Table III shows that the number of collisions is 4, These figures show how the Bug0 path planner tries to avoid
while in the case of Bug0−, Table IV indicates it is 23. The dynamic obstacles by changing the direction of the robot to
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 8
0.5 0.5
y(m)
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
the left (for Bug0+) or right (for Bug0−) of the potential since the best possible path varies with time, and the planner
collision point. must periodically recalculate it.
It has been proven that deterministic path planners effec-
VI. C ONCLUSIONS tively solve the path planning problem in static scenarios
Path planning determines the most appropriate path to take under given conditions. However, in dynamic scenarios, they
a mobile robot from a starting configuration to a particular cannot be effective enough. On the other hand, advanced
goal as efficiently as possible and without generating collisions computational methods can deal with this kind of scenario,
with obstacles in the operating space. By its very nature, the but their implementation complexity and cost may not be
path planning problem is complex due to the fact that the suitable for all applications. Therefore, in this work, a new path
kinematic behavior of the mobile robot must be considered, planning method was proposed that combines the performance
the environment may have various obstacles or threats, and of a simple deterministic path planner such as Bug0 and a
the immeasurable number of possible paths between two robot metaheuristic to optimize it in the achievement of optimized
configurations. The complexity of this problem is even greater and collision-free paths with an affordable computational cost.
when there are dynamic obstacles in the operating environment Bug0 is effective in static scenarios where obstacles can
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 9
1 1
0.5 0.5
y(m)
y(m)
0 0
-0.5 -0.5
-1 -1
0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.5 1 1.5 2 2.5 3 3.5 4
x(m) x(m)
0.5 0.5
y(m)
y(m)
0 0
-0.5 -0.5
-1 -1
0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.5 1 1.5 2 2.5 3 3.5 4
x(m) x(m)
0.5 0.5
y(m)
y(m)
0 0
-0.5 -0.5
-1 -1
0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.5 1 1.5 2 2.5 3 3.5 4
x(m) x(m)
0.5 0.5
y(m)
y(m)
0 0
-0.5 -0.5
-1 -1
0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.5 1 1.5 2 2.5 3 3.5 4
x(m) x(m)
0.5 0.5
y(m)
y(m)
0 0
-0.5 -0.5
-1 -1
0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.5 1 1.5 2 2.5 3 3.5 4
x(m) x(m)
TABLE III
R ESULTS OF B UG 0− AFTER 30 INDEPENDENT RUNS .
Run Path length (m) Collisions Arriving time (s) Speed (m/s) Execution time (s)
1 4.6004 4 14.1000 0.3262 0.0030
2 4.6004 4 14.1000 0.3262 0.0020
3 4.6004 4 14.1000 0.3262 0.0020
4 4.6004 4 14.1000 0.3262 0.0010
5 4.6004 4 14.1000 0.3262 0.0020
6 4.6004 4 14.1000 0.3262 0.0040
7 4.6004 4 14.1000 0.3262 0.0020
8 4.6004 4 14.1000 0.3262 0.0030
9 4.6004 4 14.1000 0.3262 0.0020
10 4.6004 4 14.1000 0.3262 0.0030
11 4.6004 4 14.1000 0.3262 0.0030
12 4.6004 4 14.1000 0.3262 0.0030
13 4.6004 4 14.1000 0.3262 0.0040
14 4.6004 4 14.1000 0.3262 0.0030
15 4.6004 4 14.1000 0.3262 0.0030
16 4.6004 4 14.1000 0.3262 0.0030
17 4.6004 4 14.1000 0.3262 0.0030
18 4.6004 4 14.1000 0.3262 0.0030
19 4.6004 4 14.1000 0.3262 0.0030
20 4.6004 4 14.1000 0.3262 0.0020
21 4.6004 4 14.1000 0.3262 0.0030
22 4.6004 4 14.1000 0.3262 0.0020
23 4.6004 4 14.1000 0.3262 0.0020
24 4.6004 4 14.1000 0.3262 0.0030
25 4.6004 4 14.1000 0.3262 0.0020
26 4.6004 4 14.1000 0.3262 0.0030
27 4.6004 4 14.1000 0.3262 0.0020
28 4.6004 4 14.1000 0.3262 0.0040
29 4.6004 4 14.1000 0.3262 0.0030
30 4.6004 4 14.1000 0.3262 0.0030
Mean 4.6004 4 14.1000 0.3262 0.0027
Std. 0 0 0 0 0.0007
Max. 4.6004 4 14.1000 0.3262 0.0040
Min. 4.6004 4 14.1000 0.3262 0.0010
TABLE IV
R ESULTS OF B UG 0+ AFTER 30 INDEPENDENT RUNS .
Run Path length (m) Collisions Arriving time (s) Speed (m/s) Execution time (s)
1 4.2359 23 13.2300 0.3201 0.0020
2 4.2359 23 13.2300 0.3201 0.0020
3 4.2359 23 13.2300 0.3201 0.0020
4 4.2359 23 13.2300 0.3201 0.0020
5 4.2359 23 13.2300 0.3201 0.0020
6 4.2359 23 13.2300 0.3201 0.0030
7 4.2359 23 13.2300 0.3201 0.0040
8 4.2359 23 13.2300 0.3201 0.0030
9 4.2359 23 13.2300 0.3201 0.0030
10 4.2359 23 13.2300 0.3201 0.0020
11 4.2359 23 13.2300 0.3201 0.0030
12 4.2359 23 13.2300 0.3201 0.0040
13 4.2359 23 13.2300 0.3201 0.0030
14 4.2359 23 13.2300 0.3201 0.0020
15 4.2359 23 13.2300 0.3201 0.0020
16 4.2359 23 13.2300 0.3201 0.0010
17 4.2359 23 13.2300 0.3201 0.0020
18 4.2359 23 13.2300 0.3201 0.0020
19 4.2359 23 13.2300 0.3201 0.0030
20 4.2359 23 13.2300 0.3201 0.0030
21 4.2359 23 13.2300 0.3201 0.0030
22 4.2359 23 13.2300 0.3201 0.0030
23 4.2359 23 13.2300 0.3201 0.0030
24 4.2359 23 13.2300 0.3201 0.0030
25 4.2359 23 13.2300 0.3201 0.0040
26 4.2359 23 13.2300 0.3201 0.0030
27 4.2359 23 13.2300 0.3201 0.0020
28 4.2359 23 13.2300 0.3201 0.0030
29 4.2359 23 13.2300 0.3201 0.0030
30 4.2359 23 13.2300 0.3201 0.0030
Mean 4.2359 23 13.2300 0.3201 0.0026
Std. 0 0 0 0 0.0007
Max. 4.2359 23 13.2300 0.3201 0.0040
Min. 4.2359 23 13.2300 0.3201 0.0010
0.5 0.5
y(m)
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
y(m)
0 0
-0.5 -0.5
learner robot trajectory prediction method for iot mobile robot NY, USA: Association for Computing Machinery, 2006, p. 485–492.
systems,” Electronics, vol. 11, no. 13, 2022. [Online]. Available: [Online]. Available: https://doi.org/10.1145/1143997.1144086
https://www.mdpi.com/2079-9292/11/13/2094 [32] K. Deb, “An efficient constraint handling method for genetic
[28] C. Wang, L. Ma, R. Li, T. S. Durrani, and H. Zhang, “Exploring algorithms,” Computer Methods in Applied Mechanics and Engineering,
trajectory prediction through machine learning methods,” IEEE Access, vol. 186, no. 2, pp. 311–338, 2000. [Online]. Available:
vol. 7, pp. 101 441–101 452, 2019. https://www.sciencedirect.com/science/article/pii/S0045782599003898
[29] N. Xiong, D. Molina, M. L. Ortiz, and F. Herrera, “A walk into [33] F. Wang, H. Zhang, and A. Zhou, “A particle swarm optimization
metaheuristics for engineering optimization: Principles, methods and algorithm for mixed-variable optimization problems,” Swarm and Evo-
recent trends,” International Journal of Computational Intelligence lutionary Computation, vol. 60, p. 100808, 2021. [Online]. Available:
Systems, vol. 8, no. 4, pp. 606–636, 2015. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S2210650220304612
https://doi.org/10.1080/18756891.2015.1046324
[30] R. Storn and K. Price, “Differential evolution – a simple and efficient
heuristic for global optimization over continuous spaces,” Journal of
Global Optimization, vol. 11, no. 4, pp. 341–359, Dec 1997. [Online].
Available: https://doi.org/10.1023/A:1008202821328
[31] E. Mezura-Montes, J. Velázquez-Reyes, and C. A. Coello Coello,
“A comparative study of differential evolution variants for global
optimization,” in Proceedings of the 8th Annual Conference on
Genetic and Evolutionary Computation, ser. GECCO ’06. New York,