Optimized Path Planning for Uninhabited Vehicles

TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Optimized Path Planning for Uninhabited
Vehicles
Nikos Tsourveloudis, Yannis Nikolos
Kimon Valavanis
Department of Production Engineering and
Management
Technical University of Crete,
73 100 Chania, GREECE
Department of Computer Science and
Engineering
University of South Florida
Tampa, FL, USA
E-mail: [email protected], [email protected]
E-mail: [email protected]
[email protected]
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
EVOLUTIONARY ALGORITHM BASED OFFLINE / ON-LINE PATH PLANNING FOR UAV
NAVIGATION
Project Team
Dr. J. Nikolos, TUC
Dr. N. Tsourveloudis,
TUC
Dr. K. Valavanis, USF
A. Kostaras, LSE
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
OUTLINE
Introduction
Off-Line Planner
On-Line Planner
Results
Discussion
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
INTRODUCTION
UAV navigation using off-line (known environment) / on-line (unknown
environment- during “flying”) planner.
Off-line planner ! single continuous 3-D B-Spline curve with curvature
continuity, known initial and final points, as well as initial flight direction.
On-line planner ! smooth, continuous 3-D line consisting of successive BSpline curves.
On-board sensor information is used; a near optimum path segment is
produced, guiding the UAV to intermediate position within sensors’ range.
Process repeated until best path is created.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Evolutionary Algorithms (EA) fundamentals
Natural selection process simulated in EA using a
number/population of individuals (solutions to the problem)
evolving through certain procedures.
Each individual represented with string of numbers (bit strings,
integers, floating point numbers), similar to “genes” and
“chromosomes” in nature.
Each individual’s quality is represented by a fitness function, f
= Σfi, serving as the environment in the natural selection
mechanism.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Classical References for EAs and GAs
Holland, J. J., Adaptation in Natural and Artificial Systems, University of
Michigan Press, Ann Arbor Michigan, 1975.
D.B. Fogel, Evolutionary Computation, Toward a New Philosophy of
Machine Intelligence, 2nd Ed., IEEE Press, Piscataway, NJ, 2000.
M. Mitchell, An Introduction to Genetic Algorithms, The MIT Press,
Cambridge, Massachusetts, 1998.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
EA fundamentals, cont…
EA generates randomly initial chromosome population with genes
taking values within the constrained space. Genes are the coordinates
of the path’s control points. All genes of each individual (solution) form
its chromosome.
Special operators are applied to the population ! selection,
recombination, mutation, used to provide the next generation
chromosomes.
The new generation evaluation and creation process is successively
repeated, providing individuals with high values of fitness function.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
EA operators used
Classical crossover scheme: 2 randomly selected chromosomes
divided in the same (random) position, while the 1st part of the 1st one is
connected to the 2nd part of the 2nd one and vice-versa.
Crossover
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
EA operators used, cont…
Classical uniform mutation scheme: This operator alters a
randomly selected chromosome gene. New gene takes its
random value from constrained space.
Classic Mutation
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
EA operators used, cont…
Non-uniform mutation scheme: Search space for new gene
not fixed; it shrinks close to previous value of the corresponding
gene as the algorithm converges.
Heuristic crossover scheme: It generates a single offspring x3
from two parents x1 and x2. If x2 is not worse than x1, then x3 is
given as
x 3 = r ( x 2 − x1 ) + x 2
where r is a random number between 0 and 1. In this way a
search direction is adopted, providing fine local tuning and
search in the most promising direction.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
EA Selection procedure
Hybrid selection scheme used: truncation model of Breeder GAs and
roulette procedure of traditional Gas (combination).
Each individual’s relative fitness, its selection probability, is calculated:
fi’=fi/Σfi
Only T% elements, showing best fitness chosen to give origin to the
next generation individuals (T being the threshold taking values
between 40% - 70%). (1-T)% is rejected.
Once chosen, these individuals are used for the generation of a new
population through the roulette wheel selection.
An elitist model assures that the best individual of each generation
always survives the selection procedure, and goes to the next
generation .
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Why floating point representation of chromosome
Each chromosome genes are the path line control points physical
coordinates. Floating point coding moves the EA closer to the
problem space, allowing the operators to be more problem specific.
Better physical representation of path line control points and easier
control of space constraints.
Two points that are close to the physical space are also close in the
representation space (the genotype encoding), and vice versa.
Directed search techniques gain physical representation and they
are easily applicable.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The solid boundary representation
The path-planning algorithm considers the scanned surface as a
group of quadratic mesh nodes with known coordinates.
The solid terrain under the UAV is most generally represented by a
meshed 3-D surface, produced using mathematical functions of the
form:
z( x , y ) = sin( y + a ) + b × sin( x ) +
c × cos( d × ( y 2 + x 2 ) 0.5 ) + e × cos( y ) +
f × sin( f × ( y 2 + x 2 ) 0.5 ) + g × cos( y )
where a, b, c, d, e, f, g are constants experimentally defined, in order
to produce a surface simulating a rough terrain with mountains
and valleys.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The solid boundary representation, cont…
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The solid boundary representation, cont…
In order to generate concave terrains the following mathematical
function has been used:
 a cos (b (x 2 + y 2 ) − c exp (- y ) - f exp (- x - 2 )


z(x,y) =  a cos (b (x 2 + y 2 ) + d sin (g (x 2 + y 2 ) 0 .5 )

cos (m (x + y))
sin (n (x + y))
2
2
-h x
 a cos (b (x + y ) + e x

if
y < 1.5 and 5 < x < 5 .5
if 5 < x < 8 or 5 <
if ( y > 4 .5 or
y < 8
x > 4 .5 )
where a, b, c, d, e, f, g, h, m, n are again proper constants,
experimentally defined.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The solid boundary representation, cont…
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The path line B-Spline modeling
B-Splines define the UAV desired path, providing at least first
order derivative continuity.
The coordinates of their control points are the genes of the EA.
Final
destination
1st
2nd
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Why B-Splines ?
B-Spline curves are well fitted in the evolutionary procedure, as
they need a few variables (coordinates of the control points) in
order to define complicated curved paths.
Each control point has a very local effect on the curve’s shape, and
small perturbations in its position produce changes in the curve
only in the neighbourhood of the changing control point.
The curve is tangential to the control polygon at the starting and
ending points, which is used in order to define the starting direction
of the curve.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Off-line path planning
Generates a B-Spline curve over known, simulated or real,
environments.
The starting and ending points of the curve are fixed.
A third point close to the starting one is also fixed, determining
the initial flight direction. The fixed points are not used for the
chromosome construction.
Between the fixed control points, 4 - 6 free to move control points
determine the shape of the curve.
The coordinates of the free-to-move control points are the genes
of the EA artificial chromosome.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The Off-line fitness function
The optimisation problem to be solved minimises a set of four
terms.
The constraints are associated with the feasibility and the length
of the path line, a safety distance from the obstacles and the
UAV’s flight envelope restrictions.
The fitness function is given as:
f =
1
4
∑a f
i i
i =1
where αi are weights and fi are the above mentioned terms.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The Off-line fitness function terms
Term f1 penalizes the non-feasible curves that pass through the
solid boundary.
The penalty value is proportional to the number of discretized curve
points (not the B-spline control points) located inside the solid
boundary.
In this way, the fitter of the non-feasible curves may survive the
selection procedure and produce acceptable off-springs through
the heuristic crossover operation.
Term f2 is the length of the curve (non-dimensional with the
distance between the starting and destination points).
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The Off-line fitness function terms
Term f3 is designed to provide flight paths with a safety distance
from solid boundaries, given as:
nline nground
f3 = ∑
i =1
1
∑
2
j =1 ( ri , j / rsafe )
nline the number of discrete curve points,
nground the number of discrete mesh points,
ri,j is the distance between the boundary nodes and curve points,
rsafe is the minimum safety distance from the solid boundary.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The Off-line fitness function terms
Term f4 is designed to provide curves with a prescribed minimum
curvature radius.
The angle θ that is determined by two successive discrete
segments of the curve is calculated, and if less than a
prescribed value, a penalty is added to the fourth term of the
fitness function.
θ
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The Off-line path planner flow chart
Input of the ground, initial point and destination point coordinates, and initial
flight direction.
• Initialisation of population
For chromosome 1 to population
- Make random chromosomes
For generation 1 to maxgen
For chromosome 1 to population, Evaluate the new chromosomes
using fitness function f
- Calculate the new intermediate population, using the modified roulette
procedure and elitist model
- Apply the crossover and mutation operators between the
chromosomes to make the new generation
End main Loop
For the best chromosome calculate the B-spline curve
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
On-line path planning
• Terrain unknown, only an area near the UAV is scanned by the
on board radar.
• Path line generated connecting a temporary starting point with
a temporary ending point.
• While UAV travels about 2/3 (3/4) of the segment, radar returns a
new set of visible nodes. The on-line planner produces a new
segment.
• Each temporary ending point is the next segment’s starting point.
•A
group of smooth curve segments are gradually generated,
connecting the starting point with the final destination.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
• Yellow dots: ending point of each segment (starting point of the next one).
•Dashed curves: radar covered area in the position where the algorithm starts to calculate the
new segment. The corresponding circle centers are marked with the same colour.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Radar simulation
• Path-planner considers scanned surface as a group of
quadratic mesh nodes.
• All ground nodes are initially considered unknown.
• An algorithm is used to distinguish between nodes visible by the
radar and nodes not visible.
• A node is not visible by the UAV if it is not within the radar’ s
range or if it is within the radar’s range but is hidden by a
ground section that lies between it and the UAV.
visible
Non
visible
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Radar simulation, cont…
• Calculate line connecting UAV and each discrete ground node
within the radar range.
• Calculate successive point coordinates along this line.
xr =
(x
a ∗ ( xnow − xground )
− x ground ) + ( ynow − y ground ) + (z now − z ground )
2
now
2
2
xR = xnow− xr
• If one of the discrete points is under the ground surface, the final
ground node is not visible.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Initial population of the EA
Random numbers are
generated between the
temporary
lower
and
upper bounds, being the
coordinates of each BSpline
control
points.
These coordinates must
be within the radar’s range
and
the
terrain’s
boundaries.
Terrain boundaries
Upper
boundaries
Lower
boundaries
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Connection between the successive segments
• The 1st control point of each segment is the last control point of
the previous B-Spline segment.
• The 2nd control point of each segment is on the straight line
determined by the last two control points of the previous segment.
In this way a curvature continuity is obtained.
3
2
1
14
2
4
3
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Calculation of the second control point of the new curve
bb =
((x
Rsec ond
− x3 ) + ( y now − y3 ) + ( z now − z3 )
2
now
2
)
2 1/ 2
x2 = xnow + ( xnow − x3 ) ∗ bb
y 2 = y now + ( y now − y3 ) ∗ bb
z 2 = z now + ( z now − z 3 ) ∗ bb
•xxnow, ynow, znow are the coordinates of the first control point (the last of the
previous curve).
• x3, y3, z3, are the coordinates of the 3rd control point of the previous curve.
•RRsecond : a small number defining the distance between the first and second
control points.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Driving potential for the last control point of
each curve segment
Each curve segment calculation requires a driving force that moves
the last control point of each curve segment closer to the final
destination.
This driving force should have the ability to bypass obstacles existing
between the UAV and the final destination.
A driving potential is used for this reason between the starting point
and the final destination.
This potential is integrated in the EA calculation procedure.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The driving potential
r2 + c ⋅ r0
Φ = ln
r1 + c ⋅ r0
The dashed lines are the equal-potential lines, the solid lines are
the “streamlines” normal to the previous ones. The points in the
intersection of the streamlines are the starting and the final ones. All
the points that lie on an equal-potential curve have the same
probability for being chosen as a final point for each B-Spline
segment.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
target
The potential allows for selecting
curved
paths
that
bypass
obstacles lying between the
starting and ending point of each
B-Spline curve.
Radar range
target
In the case of a concave obstacle
the introduced potential will fail to
guide the UAV towards the final
destination.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The On-line fitness function
•The optimisation problem to be solved minimises a set of
eight terms.
• The fitness function is given as:
f =
1
8
∑ ai f i
i =1
where αi are experimentally determined weights and fi are
the above mentioned terms.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The On-line fitness function terms
• Term f1 is the same as term f1 used by the off-line path planner,
determining the path feasibility.
• Term f2 depends on the value of the potential between the
starting point and the final destination, which is the main driving
force for the gradual development of the path line.
r2 + c ⋅ r0
Φ = ln
r1 + c ⋅ r0
r1 is the distance between the last point of the current curve and the
starting point, r2 is the distance between the last point of the current
curve and the final destination, r0 is the distance between the starting
and final destination and c is a constant.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The On-line fitness function terms, cont…
Term f3 is the same as term f2 used by the off-line path planner
(non-dimensional segment length).
Term f4 is the same as term f3 used by the off-line path planner
(safety distance from the ground).
Term f5 is a function of the distance between the current path’s last
point and the solid boundary, similar to term f4, and it penalizes a
curve that ends too close to it.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The On-line fitness function terms, cont…
• Term f6 is designed to prevent the UAV from being trapped in
local concaves and to force it move towards unexplored areas.
npo int
1
f6 = ∑
k =1 rk
npoint is the number of the discrete curve points produced so far,
rk is their distance from the last point of the current curve.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The On-line fitness function terms, cont…
• Term f7 is the same as term f4 used by the off-line path planner
(path line curvature).
• Term f8 represents another potential field, which is developed in
a small area around the final destination.
• When the UAV is away from the final target, the term is given a
(high) constant value.
•When the UAV is very close to the target, the term’s value
decreases proportionally to the square of the distance between the
current curve’s last point and the target.
•Thus, when the UAV is near its target, the value of this term is
quite small and prevents the UAV from moving away.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The calculation of the fitness function weights
• Weights αi are experimentally determined, using as criterion
the almost uniform effect of all the terms, except the first one.
•Term α1f1 has a dominant role, in order to provide feasible
curves in a few generations, since path feasibility is the main
concern.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The second mode of the On-line planner
• The ground formation may cause the UAV to be trapped in a
local optimum area (concave obstacle). A second fitness
function and an algorithm is used in this case.
• It forces the UAV to move around the border of the obstacle,
ignoring its final destination.
• The algorithm returns to the first mode when the obstacle is no
longer between the UAV and the final destination.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The second mode of the On-line planner, cont…
• The second mode is activated (takes control) if:
" There is an obstacle very close to the UAV in the direction of
its flight.
" There is an obstacle very close to the UAV in the direction of
its final destination.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Targ
G
et
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The second mode of the On-line planner, cont…
# An algorithm generates a map of all groups of nodes that
form obstacles visible by the radar (obstacles are ground
formations higher than the flight level).
# The nodes that belong to the same obstacle are identified
(by assigned to them the same identification number).
# The obstacle closer to the UAV is being considered.
# The borders (the corresponding nodes) of this obstacle
are assigned a numerical value, so that the node with the
greater value is far from the UAV’s current position.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Ground
nodes
Step 1: Obstacle
identification
2
2
2
2
2
2
2
2
2
Υ
2
2
2
1
1
Χ
2
1
1
1
1
2
1
1
1
1
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Step 2: Value assignment to the obstacle’s border nodes
The borders (the corresponding nodes) of the obstacle are located
and are assigned a numerical value so that the node with the
greater value is far from the UAV’s current position.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Border nodes enumeration
Ground
nodes
Υ
UAV
1
2
3
Χ
4
5
6
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The second fitness function forces the UAV to move
towards the border node with the larger value.
obstacl
e
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The fitness function of the second mode
• It is the inverse of the weighted sum of 3 different terms:
f =
1
3
∑ a′ f ′
i =1
i
i
• Term
f1΄ is the same as the term f1 used by the off-line path planner
(feasibility of the path line).
• The value of term f2΄ penalizes curves when their last point is far from
the border node whose identification number was given the greater value.
This term is used to enforce the curve to circle the obstacle.
• Term f3΄ is the non-dimensional length of the current curve.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The On-line path planner flow chart
• Input initial point and destination point coordinates, as well as initial flight
direction.
• Scan the area, using the radar.
Do until the final destination has been reached
- Check if the UAV has been trapped within an obstacle.
If not, produce a pathline inside the scanned area, using the first mode of
the EA.
If yes, produce a pathline inside the scanned area, using the second
mode of the EA, to by pass the obstacle. Keep in this mode until the obstacle
has been completely by-passed.
- Check if the final point of the new pathline is close to the destination point.
If yes, follow the new path and terminate the procedure.
If not, travel along the path line until a predefined position has been
reached and scan a new area.
- Continue the procedure, taking as a starting point of the new path line, the
ending point of the previous one.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Off-line experiments
All experiments have been designed in order to search for path
lines between “mountains”. For this reason, an upper ceiling for
flight height was enforced.
The (experimentally optimised) EA settings are: population
size = 100, threshold = 0.5, heuristic crossover probability =
0.75, classic crossover probability = 0.15, mutation probability
= 0.05, non-uniform mutation probability = 0.15. The algorithm
was defined to terminate after 50 generations, although feasible
solutions can be reached in less than 20 generations.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 1st off-line test case
Four free control points are used, with a prefixed direction of the curve
at the starting position. The starting position is marked with a circle.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 2nd off-line test case
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 3rd off-line test case
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 3rd off-line test case
Early feasible solution of the third off-line test case.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 4th off-line test case
4 free control points were used, and a very low upper limit
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 5th off-line test case
A wider terrain was used, along with 6 free control points and very low
upper limit.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 6th off-line test case
A different terrain was used, demonstrating the ability of the method in
dealing with difficult obstacle shapes.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
On-line experiments
All experiments have been designed in order to search for path
lines between “mountains”. For this reason, an upper ceiling for
flight height was enforced.
The (experimentally optimised) EA settings are: population
size = 50, threshold = 0.5, heuristic crossover probability =
0.75, classic crossover probability = 0.15, mutation probability
= 0.05, non-uniform mutation probability = 0.15. The algorithm
was defined to terminate after 25 generations, although feasible
solutions can be reached in less than 10 generations.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Testing of the 2nd mode of the on-line planner
The figure demonstrates the ability of the second mode of the on-line
planner in driving the UAV to by-pass an obstacle.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 1st test case for the on-line planner
The starting position is in the left corner.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 2nd test case for the on-line planner
The starting position is in the left side.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 3rd test case for the on-line planner
The starting position is near the upper corner.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 4th test case for the on-line planner
The starting position is near the left corner.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 5th test case for the on-line planner
The starting position is near the left corner.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The 6th test case for the on-line planner
The algorithm passed to the second mode, in order to avoid an obstacle (at the
second abrupt turn). The UAV surrounds the obstacle and then the first mode of the
algorithm takes over, in order to guide it to the target.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
Discussion
The trajectory of a UAV cannot be, adequately, represented using
line segments. The proposed method uses parametric curves to
produce a continuous path line, which is described by a small set
of parameters – the coordinates of the control points.
The construction of the B-Splines based on control points, proved
suitable for coupling with an EA.
The direction of the curve can easily be prescribed at its starting
position, by inserting a second fixed point.
The off-line planner takes into consideration the vehicle flight
capabilities, in the form of a prescribed minimum curvature angle
and a maximum flight height.
Center for Robot Assisted
Search And Rescue
TECHNICAL UNIVERSITY
OF CRETE
Intelligent Systems &
Robotics Lab
Unmanned Robotic Systems
The easy implementation of the various constraints of the problem
proved to be a valuable characteristic of EA.
The introduced potential field proved to be effective in producing
curves that bypass the solid ground obstacles, positioned between
the starting and target positions, providing that they do not have a
concave shape.
In this case the second mode of the on-line procedure governs the
path planning, producing smooth flight paths that by-pass the
obstacle.
The proposed EA method proved capable for providing feasible
solutions after a small number of generations, rendering it suitable
for real-time calculations.
Center for Robot Assisted
Search And Rescue