0% found this document useful (0 votes)
46 views12 pages

Paper Dynamic Path Planning

This document presents a new method for dynamic path planning for differential drive mobile robots in changing environments. Dynamic path planning is challenging due to the need to continuously replan paths as obstacles move. The proposed method replans paths online using a metaheuristic algorithm when needed, building on an existing deterministic path planner. Simulation results demonstrate the effectiveness of continuously optimizing paths in dynamic scenarios through online metaheuristic optimization.

Uploaded by

mahtlactli.gc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views12 pages

Paper Dynamic Path Planning

This document presents a new method for dynamic path planning for differential drive mobile robots in changing environments. Dynamic path planning is challenging due to the need to continuously replan paths as obstacles move. The proposed method replans paths online using a metaheuristic algorithm when needed, building on an existing deterministic path planner. Simulation results demonstrate the effectiveness of continuously optimizing paths in dynamic scenarios through online metaheuristic optimization.

Uploaded by

mahtlactli.gc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

JOURNAL OF LATEX CLASS FILES, VOL. 14, NO.

8, AUGUST 2015 1

Dynamic Path Planning for the Differential Drive


Mobile Robot based on Online Metaheuristic
Optimization
Alejandro Rodrı́guez-Molina, Axel Herroz Herrera, Mario Aldape-Pérez*, Geovanni Flores-Caballero,
Jarvin Alberto Antón-Vargas

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

Algorithm 1: Bug0 path planner. be conditioned by ng inequality constraints in (10) or nh


Input: Distance to the nearest obstacle (dobs ), Orientation of equality constraints in (11). The objective functions quantify
the nearest obstacle with respect to the robot (θobs ), the fulfillment of different performance indicators. On the
Goal position (ξg = [xg , yg ]T ), Current robot other hand, inequality constraints (a.k.a. soft constraints) are
position (ξ(t) = [x(t), y(t)]T ) and orientation (θ), conditions that can be met with some degree of slack. Finally,
Controller gains (g1 and g2 ), Avoidance direction (s).
Output: Input linear speed (v) and input angular speed (ω) equality constraints (a.k.a. hard constraints) are conditions
for the robot. that must be met exactly. Additionally, the search space, i.e.,
1 Control based on the distance to the nearest obstacle: the possible values that the vector p can acquire, is limited
2 if dobs > dmin then by the box constraints, which include each design variable’s
3 Variable-gain control: minimum and maximum values.
4 θref ← arctan 2(yg − y, xg − x)
5 eθ ← θp ref − θ
In a dynamic optimization problem as the one in (9)-(11),
6 dg ← (xg − x)2 + (yg − y)2 the time t introduces dynamism. Thus, at each instant of time,
iT
the objective functions and constraints can change their value
h
d
7 g ← 2g , g2
for the same vector of design variables p.
8 else
1) Design variables: Since one of the problems of Bug0
9 Fixed-gain control:
10 θref ← θobs + s π2 lies in its fixed parameters, as described above, it is proposed
11 eθ ← θref − θv to use a vector of design variables as follows:
12 g ← [g1 , g2 ]T
13 Simple control of the differential mobile robot:
14 v ← g1 |cos(eθ )| p = [s, g1 , g2 ]T (12)
15 w ← g2 · eθ
16 return v, ω where s is the direction of avoidance (either left or right by
π/2) in case of detecting a nearby obstacle, and g1 , g2 are the
gains of the mobile speed controllers (see Algorithm 1).
right, i.e., at ±π/2 from the collision direction). Because 2) Objective function: The objective function must quantify
of this, there may be scenarios where the distance traveled the quality of the paths generated by the differential mobile
increases, where the robot fails to reach the goal, or where robot when using a given p.
there is a collision with obstacles going to the same place.
An essential aspect of path planning is that the paths
• In addition, Bug0 uses a fixed gain control when ap-
developed by the mobile robot are low-cost. This may be
proaching an obstacle. Consequently, there may be sce-
related to traveling the greatest possible distance in the shortest
narios where the movements generated by the fixed gain
time or using the least amount of energy.
control (these could be too slow or too fast) do not allow
for evading dynamic obstacles on time. Therefore, it is proposed to use the objective function in
(13). This function considers the Euclidean distance between
The proposed dynamic path planning method is based on
the goal position ξg = [xg , yg ]T and the robot position
the Bug0 algorithm for its simplicity and low cost, and ˆ + h dt) = [x̂(t + h dt), ŷ(t + h dt)]T estimated by the
ξ(t
aims to address the above difficulties through a metaheuristic
kinematic model for the instant t + h dt by using Bug0 with
online optimization approach. In this sense, it is necessary
the parameters in p, with h as the future prediction horizon,
to formulate a formal dynamic optimization problem whose
i.e., the number of future steps of dt that are simulated by the
solution includes the Bug0 parameters that help it handle dy-
kinematic model.
namic scenarios. The problem should be solved continuously,
whenever necessary (when a threat is near the robot, i.e., when
dobs < dmin ). q
The elements of the dynamic optimization problem and the J(p, t) = (xg − x̂(t + h dt))2 + (yg − ŷ(t + h dt))2 (13)
metaheuristic solution approach are described below.
Therefore, the dynamic planner will be able to perform a
A. Dynamic Optimization Problem simulation of the robot’s behavior using the kinematic model
In general, a formal dynamic optimization problem can be from its current configuration. The above aims to determine
defined as follows: the parameters of Bug0 that best bring it closer to the goal.
3) Constraints: The operation of the differential mobile
min J(p, t) = [J1 (p, t), J2 (p, t), . . . , Jm (p, t)]T (9)
robot is limited to collision-free paths with moving obstacles
s.t.: in the environment.
gi (p, t) ≤ 0, i = 1, 2, . . . , ng (10) In the dynamic path planning problem, the constraints
count the number of collisions the robot could have when
hj (p, t) = 0, j = 1, 2, . . . , nh (11)
using a given vector p in Bug0 within the same prediction
The above problem is to find the value of the design horizon h discussed in the previous section. Then, the dynamic
variables in the vector p that minimizes the m objective optimization problem only considers equality constraints as
functions in J, as seen in (9). Solutions to this problem can follows:
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 5

Algorithm 2: Differential Evolution (rand/1/bin variant)


L Lk

1, if dk (t + l dt) < + Input: Maximum number of generations (Gmax ), Number
hj (p, t) = 2 2 ,
0, otherwise of individuals in population (N P ), Crossover rate
(CR), Scaling factor (F ), Objective function (J),
j = 1, 2, . . . , nobs h, (14) Equality constraints (hj , j = 1, . . . , nh ), Box
k = 1, 2, . . . , nobs , constraints (dmin and dmax ).
Output: Best design vector (pbest ).
l = 1, 2, . . . , h 1 G←0
2 Generate an initial population PG with N P individuals
where dk (t + l dt) is the Euclidean distance between robot randomly selected between dmin and dmax .
ˆ
position ξ(t+l dt) = [x̂(t+l dt), ŷ(t+l dt)]T (estimated by the 3 while G < Gmax do
kinematic model for the instant t+l dt by using Bug0 with the 4 foreach pi ∈ PG do
parameters in p) and the k-th obstacle location ξˆk (t + l dt) = 5 Select three parent individuals pr1 , pr2 , and pr3
randomly from the population PG such that
[x̂k (t + l dt), ŷk (t + l dt)]T (predicted or calculated for the r1 ̸= r2 ̸= r3 ̸= i.
instant t + l dt), Lk is the length of the k-th obstacle, and 6 Generate a mutant individual vi using (15).
nobs is the number of dynamic obstacles. It is assumed that 7 Generates an offspring individual ui using (16).
the location of every dynamic obstacle ξˆk (t + l dt) can be 8 Select between pi and ui the individual which
predicted or calculated [27], [28]. remains for the population XG+1 based on J and
hj , j = 1, . . . , nh .
With the above, the planner can simulate the mobile robot’s
kinematic behavior and use the positional information of the 9 G←G+1
dynamic obstacles to determine if a configuration p of the 10 Select pbest as the best individual from the population XG
Bug0 algorithm can avoid collisions. based on J and hj , j = 1, . . . , nh .
11 return pbest

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 I a population size N P = 20 and a maximum number of


DYNAMIC BEHAVIOR OF OBSTACLES IN THE TEST SCENARIO FOR generations Gmax = 100. The above aiming that the compu-
t ∈ [0, 15] (s).
tational cost of the optimization can be affordable in possible
Obstacle x (m) y (m) physical experimentation. It is worth mentioning that the re-
1 1.0 0.1 sin 2t

optimization of the Bug0 algorithm is carried out with ED
2.0 + 0.2 cos 2t t
 
2 −0.2 + 0.2 sin 2 rand/1/bin every dt. The optimization procedure with DE is
3 3.0 0.1 cos 2t launched when dobs < dmin .
1.0 + 0.5 cos 2t 

4 0.25
t
5 3.0 + 0.5 sin 2 −0.25
6 2.0 + 2.0 sin (2t) 0.5 B. Results and discussion
7 2.0 + 2.0 cos (2t) −0.5
In order to generate simulation results and obtain sufficient
evidence of the performance of the proposal (from now on,
D-Bug0), 30 independent runs of the simulation experiments
ng nh
X 2
X are performed. Subsequently, these results are compared with
ϕ(p, t) = max {0, gi (p, t)} + |hj (p, t)| (17) those obtained with the original Bug0 algorithm considering
i=1 j=1 obstacle avoidance always to the left and to the right (from
4) Handling mixed variables: As could be observed in now on, Bug0+ and Bug0−, respectively).
the problem in (12)-(11), the design variables considered are Table II shows the results obtained with D-Bug0 after 30
mixed [33]. This is because the control gains g1 and q2 in (12) independent runs under the experimental conditions described
are continuous, while the avoidance direction s ∈ {−1, 1}. in the previous section. The first column includes the run
By its very nature, DE is capable of handling only continuous number, while the following columns show the total path
variables. However, a simple mechanism is incorporated to length, the number of collisions with the dynamic obstacles,
handle mixed variables to solve the dynamic planning problem. the time it took the differential mobile robot to reach the goal,
The mechanism consists of mapping the value of s to the its average speed, and the computational time to process the
values in the set {−1, 1} with (18) each time the problem proposed both the path planning algorithm and the simulation.
needs to be evaluated. At the bottom of the table are the summary statistics for each
 of the above columns. This summary includes each column’s
1, if s ≥ 0 average, standard deviation, maximum and minimum values.
s= (18)
−1, otherwise The results in bold refer to the best results of the 30 runs.
Based on the results in Table II, it is found that, despite the
V. E XPERIMENTS AND R ESULTS
scenario having multiple moving obstacles, D-Bug0 generated
The dynamic path planner described in the previous section collision-free paths in each of the 30 independent runs. This is
is tested in simulation. highly relevant because it could help safeguard the integrity of
the actual differential mobile robot in a physical experimental
A. Experiments details environment to avoid unnecessary repair costs. In the same
For the experimentation, the kinematic parameters of the table, the small value of the standard deviation, compared to
mobile robot are L = 15 (cm) and r = 2.4 (cm). On the mean, for path length, arrival time, and speed, indicates
the other hand, the scenario is not bounded and matches the that the results obtained are very similar in each run, which
horizontal XY plane. Moreover, the start and goal points are highlights the reliability of D-Bug0. It can also be seen that
fixed in the scenario. The start point is ξ0 = [0, 0]T (m) and the difference between the minimum and maximum values is
the goal is (ξg = [4, 0]T (m). The initial orientation of the approximately 0.02 (m) for the path length, 0.03 (s) for the
differential mobile robot is θ0 = 0 (rad). Seven dynamic arrival time, and 0.001 (m/s) for the speed, which further
obstacles are considered within the scenario (nobs = 7), denotes such reliability in spite that D-Bug0 is stochastic
each of them with the same size of the mobile robot, i.e., (because it uses DE as an optimizer). On the other hand,
Lk = L, k = 1, 2, . . . , nobs . The dynamic behavior of each D-Bug0 shows to be efficient since all the simulation runs
obstacle in the scenario is described in Table I. The simulation are carried out in an acceptable time in proportion to the
of the mobile robot is carried out using the numerical Euler total time of the run. This is observed in the execution time
integration method with a step size dt = 0.03 (s). The column, where the results do not exceed 2.346 (s). In contrast,
threshold used in Bug0 is set as dmin = 0.2 (m). the standard deviation for this column is slightly higher in
Concerning the dynamic optimization problem, the box con- proportion to the mean with respect to the rest of the columns.
straints used to limit the values of the design variables are as This is due to the fact that the simulations are carried out on a
follows: pmin = [0.0, 0.0, −1.0]T y pmax = [1.0, 10.0, 1.0]T . conventional computer where, in addition, multiple processes
As for the kinematic simulation of the mobile robot required derived from the operational functioning are executed at the
to make future predictions, a sampling interval dt, a prediction same time.
horizon h = 10, and Euler’s numerical integration method are Figure 2 shows the behavior of an arbitrary execution of D-
used. Bug0. This figure plots the complete scenario every 1.5 (s).
In the case of DE rand/1/bin, the parameters used are The red, green, black, and blue circles represent the obstacles,
a scaling factor F = 0.5, a crossover rate CR = 0.5, the goal, the robot, and the path’s starting point. This figure
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 7

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

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)

t = 0.0 (s) t = 1.5 (s)


0.5 0.5
y(m)

y(m)
0 0

-0.5 -0.5

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)

t = 3.0 (s) t = 4.5 (s)


0.5 0.5
y(m)

y(m)
0 0

-0.5 -0.5

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)

t = 6.0 (s) t = 7.5 (s)


0.5 0.5
y(m)

y(m)

0 0

-0.5 -0.5

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)

t = 9.0 (s) t = 10.5 (s)


0.5 0.5
y(m)

y(m)

0 0

-0.5 -0.5

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)

t = 12.0 (s) t = 13.5 (s)


Fig. 2. Behavior of D-Bug0 for an arbitrary run. The complete scenario is shown every 1.5 (s).

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)

t = 0.0 (s) t = 1.5 (s)


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)

t = 3.0 (s) t = 4.5 (s)


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)

t = 6.0 (s) t = 7.5 (s)


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)

t = 9.0 (s) t = 10.5 (s)


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)

t = 12.0 (s) t = 13.5 (s)


Fig. 3. Behavior of Bug0+ for an arbitrary run. The complete scenario is shown every 1.5 (s).
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 10

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

always be avoided in the same direction. When the scenarios R EFERENCES


are dynamic, Bug0 may collide since it cannot predict a
[1] Y. Morales, T. Miyashita, and N. Hagita, “Social robotic wheelchair
future interaction between the moving obstacles and the robot. centered on passenger and pedestrian comfort,” Robotics and
Because of this, the proposal includes a predictive stage, which Autonomous Systems, vol. 87, pp. 355–362, 2017. [Online]. Available:
allows the planner to estimate the behavior of the robot within https://www.sciencedirect.com/science/article/pii/S092188901630570X
a future time window (prediction horizon) and thus determine [2] A. Yamashita, T. Arai, J. Ota, and H. Asama, “Motion planning of
multiple mobile robots for cooperative manipulation and transportation,”
the best speed control parameters and avoidance direction. IEEE Transactions on Robotics and Automation, vol. 19, no. 2, pp. 223–
For this, the Differential Evolution metaheuristic technique is 237, 2003.
implemented in the proposal to test different combinations of [3] D. D. Paola, A. Milella, G. Cicirelli, and A. Distante, “An autonomous
mobile robotic system for surveillance of indoor environments,”
the above values and thus determine the best alternative that International Journal of Advanced Robotic Systems, vol. 7, no. 1, p. 8,
allows the mobile robot to approach the goal without colliding. 2010. [Online]. Available: https://doi.org/10.5772/7254
Based on the results obtained in simulation when testing the [4] R. R. Murphy, J. Kravitz, S. L. Stover, and R. Shoureshi, “Mobile robots
in mine rescue and recovery,” IEEE Robotics & Automation Magazine,
proposal in a scenario with a considerable number of dynamic vol. 16, no. 2, pp. 91–103, 2009.
obstacles, it is observed that the robot is able to reach the goal, [5] A. S. Matveev, C. Wang, and A. V. Savkin, “Real-time navigation of
efficiently avoiding the obstacles that intervene in its path. mobile robots in problems of border patrolling and avoiding collisions
with moving and deforming obstacles,” Robotics and Autonomous
Likewise, the computational time required by the proposal is Systems, vol. 60, no. 6, pp. 769–788, 2012. [Online]. Available:
affordable and can be used in a physical prototype. https://www.sciencedirect.com/science/article/pii/S0921889012000346
When the proposal is compared with the original Bug0 [6] G. Bolmsjo, H. Neveryd, and H. Eftring, “Robotics in rehabilitation,”
IEEE Transactions on Rehabilitation Engineering, vol. 3, no. 1, pp. 77–
technique, it proves to be more effective since the latter 83, 1995.
generates paths with collisions, and the robot moves at lower [7] R. Dieter Schraft, B. Graf, A. Traub, and D. John, “A mobile
speeds. In terms of computational efficiency, Bug0 is better robot platform for assistance and entertainment,” Industrial Robot: An
than the proposal, but the cost of the collisions involved in the International Journal, vol. 28, no. 1, pp. 29–35, Jan 2001. [Online].
Available: https://doi.org/10.1108/01439910110380424
former may turn out to be much higher than the computational [8] Y. Wang, H. Lang, and C. W. de Silva, “A hybrid visual servo
cost. controller for robust grasping by wheeled mobile robots,” IEEE/ASME
Transactions on Mechatronics, vol. 15, no. 5, pp. 757–769, 2010.
ACKNOWLEDGMENT [9] F. Rubio, F. Valero, and C. Llopis-Albert, “A review of
mobile robots: Concepts, methods, theoretical framework, and
... applications,” International Journal of Advanced Robotic Systems,
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 11

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

vol. 16, no. 2, p. 1729881419839596, 2019. [Online]. Available: https://www.sciencedirect.com/science/article/pii/0893608094E0045M


https://doi.org/10.1177/1729881419839596 [18] A. Pandey, R. K. Sonkar, K. K. Pandey, and D. R. Parhi, “Path planning
[10] C. Ben Jabeur and H. Seddik, “Design of a pid optimized neural navigation of mobile robot with obstacles avoidance using fuzzy logic
networks and pd fuzzy logic controllers for a two-wheeled mobile robot,” controller,” in 2014 IEEE 8th International Conference on Intelligent
Asian Journal of Control, vol. 23, no. 1, pp. 23–41, 2021. [Online]. Systems and Control (ISCO), 2014, pp. 39–41.
Available: https://onlinelibrary.wiley.com/doi/abs/10.1002/asjc.2356 [19] P. E. Hart, N. J. Nilsson, and B. Raphael, “A formal basis for the heuristic
[11] M. A. Hossain and I. Ferdous, “Autonomous robot path determination of minimum cost paths,” IEEE Transactions on Systems
planning in dynamic environment using a new optimization Science and Cybernetics, vol. 4, no. 2, pp. 100–107, 1968.
technique inspired by bacterial foraging technique,” Robotics and [20] S. M. LaValle et al., “Rapidly-exploring random trees: A new tool for
Autonomous Systems, vol. 64, pp. 137–141, 2015. [Online]. Available: path planning,” 1998.
https://www.sciencedirect.com/science/article/pii/S0921889014001274 [21] C. Martin, S. Sun, and M. Egerstedt, “Optimal control, statistics
[12] K. Bergman, O. Ljungqvist, and D. Axehill, “Improved path planning and path planning,” Mathematical and Computer Modelling,
by tightly combining lattice-based path planning and optimal control,” vol. 33, no. 1, pp. 237–253, 2001, computation and control VI
IEEE Transactions on Intelligent Vehicles, vol. 6, no. 1, pp. 57–66, 2021. proceedings of the sixth Bozeman conference. [Online]. Available:
[13] J. R. Sánchez-Ibáñez, C. J. Pérez-del Pulgar, and A. Garcı́a-Cerezo, https://www.sciencedirect.com/science/article/pii/S0895717700002417
“Path planning for autonomous mobile robots: A review,” Sensors, [22] V. Sangeetha, R. Krishankumar, K. S. Ravichandran, F. Cavallaro,
vol. 21, no. 23, 2021. [Online]. Available: https://www.mdpi.com/1424- S. Kar, D. Pamucar, and A. Mardani, “A fuzzy gain-based
8220/21/23/7898 dynamic ant colony optimization for path planning in dynamic
[14] V. J. Lumelsky and A. A. Stepanov, “Path-planning strategies for a environments,” Symmetry, vol. 13, no. 2, 2021. [Online]. Available:
point mobile automaton moving amidst unknown obstacles of arbitrary https://www.mdpi.com/2073-8994/13/2/280
shape,” Algorithmica, vol. 2, no. 1, pp. 403–430, Nov 1987. [Online]. [23] A. Stentz, “Optimal and efficient path planning for partially-known en-
Available: https://doi.org/10.1007/BF01840369 vironments,” in Proceedings of the 1994 IEEE International Conference
[15] C. Warren, “Global path planning using artificial potential on Robotics and Automation, 1994, pp. 3310–3317 vol.4.
fields,” in 1989 IEEE International Conference on Robotics [24] S. S. Ge and Y. J. Cui, “Dynamic motion planning for
and Automation. Los Alamitos, CA, USA: IEEE Computer mobile robots using potential field method,” Autonomous Robots,
Society, may 1989, pp. 316,317,318,319,320,321. [Online]. Available: vol. 13, no. 3, pp. 207–222, Nov 2002. [Online]. Available:
https://doi.ieeecomputersociety.org/10.1109/ROBOT.1989.100007 https://doi.org/10.1023/A:1020564024509
[16] M. P. Aghababa, M. H. Amrollahi, and M. Borjkhani, “Application [25] C. Tam and R. Bucknall, “Cooperative path planning
of ga, pso, and aco algorithms to path planning of autonomous algorithm for marine surface vessels,” Ocean Engineer-
underwater vehicles,” Journal of Marine Science and Application, ing, vol. 57, pp. 25–33, 2013. [Online]. Available:
vol. 11, no. 3, pp. 378–386, Sep 2012. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S0029801812003472
https://doi.org/10.1007/s11804-012-1146-x [26] G. Klancar, A. Zdesar, S. Blazic, and I. Skrjanc, Wheeled mobile
[17] R. Glasius, A. Komoda, and S. C. Gielen, “Neural network robotics: from fundamentals towards autonomous systems. Butterworth-
dynamics for path planning and obstacle avoidance,” Neural Heinemann, 2017.
Networks, vol. 8, no. 1, pp. 125–133, 1995. [Online]. Available: [27] F. Peng, L. Zheng, Z. Duan, and Y. Xia, “Multi-objective multi-
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2015 12

0.5 0.5

y(m)

y(m)
0 0

-0.5 -0.5

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)

t = 0.0 (s) t = 1.5 (s)


0.5 0.5
y(m)

y(m)
0 0

-0.5 -0.5

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)

t = 3.0 (s) t = 4.5 (s)


0.5 0.5
y(m)

y(m)
0 0

-0.5 -0.5

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)

t = 6.0 (s) t = 7.5 (s)


0.5 0.5
y(m)

y(m)

0 0

-0.5 -0.5

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)

t = 9.0 (s) t = 10.5 (s)


0.5 0.5
y(m)

y(m)

0 0

-0.5 -0.5

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)

t = 12.0 (s) t = 13.5 (s)


Fig. 4. Behavior of Bug0− for an arbitrary run. The complete scenario is shown every 1.5 (s).

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,

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy