B
Bicriteria trajectory planning in demining
operations
Michael Morin1 Armand Fruitet2 Irène Abi-Zeid3
Claude-Guy Quimper1
1Dep. of Computer Science and Software Engineering, Université Laval, Québec, Canada2Dép. SES, Université Toulouse le Mirail, Toulouse, France
3Dep. of Operations and Decision Systems, Université Laval, Québec, Canada
This work has been possible due to the collaboration with Yvan R. Petillot from the OceanSystems Lab, Edinburgh, Scotland, UK
May 28, 2014
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 1 / 44
IntroductionCoverage?
Coverage path planning (CPP) problem [Choset, 2001]
Plan an agent's path to guarantee complete coverage of theenvironment [Mannadiar and Rekleitis, 2010]
Objectives
Minimize the traveled distanceMinimize the number of turns
O�-line and sensor-based approaches
Usual order of priority of the objectives: distance then turns
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 2 / 44
IntroductionContext
Context [Reed et al., 2003]
Underwater minesweeping operations using robots
A naval mine [Lippsett, 2004] A robot underwater [Linder, 2006]
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 3 / 44
IntroductionContext
The robots: REMUS1 [Nicholson and Healey, 2008, Fang and Anstee, 2010]
Swim long distancesConstant speed and altitudeInfrequent turns
A REMUS 100 swimming in Western Greenland [Kukulya, 2012]
1Remote Environmental Monitoring UnitS
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 4 / 44
IntroductionContext
SensorsSidescan sonar�Gap �ller� forward looking sonar
A side-scan sonar [Wikipedia, 2013]
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 5 / 44
Coverage path planning with imperfect extended detectionSpeci�c formalism
Coverage path planning problem with imperfect extended detection(CPPIED) [Drabovich, 2008]
Imperfect sensors: (conditional) detection probability [Gage, 1995]
Minimal required coverage instead of complete coverageExtended detection range
Objectives
Minimize the traveled distanceMinimize the number of turns
O�-line path planning
Grids of square cells
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 6 / 44
Coverage path planning with imperfect extended detectionSeabed types
ff
f
r
c
c
c
f
f
r
r
r
r
f
f
r
r
f
f
f
f
r
r
f
f
f
f
r
r
r
f
f
f
r
r
r
f complex
sand ripples
�at
The di�erent seabed type of a cell in�uences the sensor's performance.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 7 / 44
Coverage path planning with imperfect extended detectionSensors scans
1 scan
2 scans
3 scans
4 scans
Scans with a range
of r = 3 cells; darker
cells have a higher
scan frequency.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 8 / 44
Coverage path planning with imperfect extended detectionMinimal required coverage
De�nition
A feasible path achieves the minimal required coverage in each cell of
matrix D.
ff
f
r
c
c
c
f
f
r
r
r
r
f
f
r
r
f
f
f
f
r
r
f
f
f
f
r
r
r
f
f
f
r
r
r
f
.5
.5
.5
.5
.5
.5
.5
.5
.7
.7
.5
.5
.5
.7
.8
.8
.7
.5
.5
.7
.8
.8
.7
.5
.5
.5
.7
.7
.5
.5
.5
.5
.5
.5
.5
.5
Minimal required coverage on a seabed grid
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 9 / 44
Coverage path planning with imperfect extended detectionConditional detection probability (imperfect sensor)
De�nition
The conditional detection probability of a scan in a given cell is a function
of
the seabed type, and
the distance (and the maximal lateral range r).
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 10 / 44
Coverage path planning with imperfect extended detectionConditional detection probability
.9
.9
.8
.8
.9
.9
.9
.9
.8
.8
.9
.9
.6
.4
.4
.4
.6
.6
.4
.4
.4
.4
.6
.6
.3
.2
.2
.2
.3
.3
.1
.1
.1
.2
.3
.3
complex
sand ripples
�at
Scans with a range of r = 3
cells on a heterogeneous
seabed
The distance between the robot's position and the scanned cell in�uences
the sensor's performance.
pscan =
pscan(1, c) pscan(2, c) pscan(3, c)pscan(1, r) pscan(2, r) pscan(3, r)pscan(1, f) pscan(2, f) pscan(3, f)
=
0.7 0.3 0.10.8 0.4 0.20.9 0.6 0.3
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 11 / 44
Coverage path planning with imperfect extended detectionCoverage
De�nition
Let C be the current coverage matrix.a
aThe initial coverage is null.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 12 / 44
Coverage path planning with imperfect extended detectionUpdated coverage
De�nition
C′ is the updated coverage matrix after one or more scans, i.e., C′ij is the
(bayesian) updated coverage in cell (i , j) after a scan in (i , j):
C′ij := Cij + (1− Cij)× pscan(d(x ′, y ′, i , j),Oij).
pscan =
pscan(1, c)pscan(1, r)pscan(1, f)
=
0.70.80.99
ff
f
r
c
c
c
f
f
r
r
r
r
f
f
r
r
f
f
f
f
r
r
f
f
f
f
r
r
r
f
f
f
r
r
r
f
.99
.99
.96
.91
.7
.7
.99
.99
.8
.8
.8
.8
.99
.99
.8
.8
.99
.99
.99
.99
.8
.8
.99
.99
.99
.99
.8
.8
.8
.99
≈1
≈1
.8
.8
96
≈1
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 13 / 44
Coverage path planning with imperfect extended detectionUpdated coverage
The following cases may occur in our bayesian update:
a mine may have already been detected in (i , j) with a probability Cij ;orit has not been detected before with a probability 1− Cij , and
it will be detected now with a conditional probabilitypscan(d(x , y , i , j),Oij ).
The updated coverage of a cell (i , j), C′ij , is de�ned as:
Previously detected︷︸︸︷Cij +︸︷︷︸
or
No mine detected yet︷ ︸︸ ︷(1− Cij) ×︸︷︷︸
and
A mine is detected now︷ ︸︸ ︷pscan(d(x ′, y ′, i , j),Oij),
where cell (x ′, y ′) is the current robot position.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 14 / 44
Coverage path planning with imperfect extended detectionUpdated coverage
The following cases may occur in our bayesian update:
a mine may have already been detected in (i , j) with a probability Cij ;orit has not been detected before with a probability 1− Cij , and
it will be detected now with a conditional probabilitypscan(d(x , y , i , j),Oij ).
The updated coverage of a cell (i , j), C′ij , is de�ned as:
Previously detected︷︸︸︷Cij +︸︷︷︸
or
No mine detected yet︷ ︸︸ ︷(1− Cij) ×︸︷︷︸
and
A mine is detected now︷ ︸︸ ︷pscan(d(x ′, y ′, i , j),Oij),
where cell (x ′, y ′) is the current robot position.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 14 / 44
Coverage path planning with imperfect extended detectionUpdated coverage
The following cases may occur in our bayesian update:
a mine may have already been detected in (i , j) with a probability Cij ;orit has not been detected before with a probability 1− Cij , and
it will be detected now with a conditional probabilitypscan(d(x , y , i , j),Oij ).
The updated coverage of a cell (i , j), C′ij , is de�ned as:
Previously detected︷︸︸︷Cij +︸︷︷︸
or
No mine detected yet︷ ︸︸ ︷(1− Cij) ×︸︷︷︸
and
A mine is detected now︷ ︸︸ ︷pscan(d(x ′, y ′, i , j),Oij),
where cell (x ′, y ′) is the current robot position.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 14 / 44
Coverage path planning with imperfect extended detectionUpdated coverage
The following cases may occur in our bayesian update:
a mine may have already been detected in (i , j) with a probability Cij ;orit has not been detected before with a probability 1− Cij , and
it will be detected now with a conditional probabilitypscan(d(x , y , i , j),Oij ).
The updated coverage of a cell (i , j), C′ij , is de�ned as:
Previously detected︷︸︸︷Cij +︸︷︷︸
or
No mine detected yet︷ ︸︸ ︷(1− Cij) ×︸︷︷︸
and
A mine is detected now︷ ︸︸ ︷pscan(d(x ′, y ′, i , j),Oij),
where cell (x ′, y ′) is the current robot position.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 14 / 44
Coverage path planning with imperfect extended detectionUpdated coverage
The following cases may occur in our bayesian update:
a mine may have already been detected in (i , j) with a probability Cij ;orit has not been detected before with a probability 1− Cij , and
it will be detected now with a conditional probabilitypscan(d(x , y , i , j),Oij ).
The updated coverage of a cell (i , j), C′ij , is de�ned as:
Previously detected︷︸︸︷Cij +︸︷︷︸
or
No mine detected yet︷ ︸︸ ︷(1− Cij) ×︸︷︷︸
and
A mine is detected now︷ ︸︸ ︷pscan(d(x ′, y ′, i , j),Oij),
where cell (x ′, y ′) is the current robot position.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 14 / 44
Coverage path planning with imperfect extended detectionProblem instance
De�nition
A CPPIED problem instance consists of:
a seabed type set T ;a seabed matrix O;
a required coverage matrix D;
a conditional detection function pscan; and
an initial position (i init, j init) (optional).
pscan =
pscan(1, c)pscan(1, r)pscan(1, f)
=
0.70.80.99
ff
f
r
c
c
c
f
f
r
r
r
r
f
f
r
r
f
f
f
f
r
r
f
f
f
f
r
r
r
f
f
f
r
r
r
f
.5
.5
.5
.5
.5
.5
.5
.5
.7
.7
.5
.5
.5
.7
.8
.8
.7
.5
.5
.7
.8
.8
.7
.5
.5
.5
.7
.7
.5
.5
.5
.5
.5
.5
.5
.5
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 15 / 44
Coverage path planning with imperfect extended detectionE�cient coverage path
De�nition
An e�cient path achieves the required coverage and minimizes
the length of the path (distance, robot's moves, etc.); and
the number of turns.
pscan =
pscan(1, c)pscan(1, r)pscan(1, f)
=
0.70.80.99
ff
f
r
c
c
c
f
f
r
r
r
r
f
f
r
r
f
f
f
f
r
r
f
f
f
f
r
r
r
f
f
f
r
r
r
f
.5
.5
.5
.5
.5
.5
.5
.5
.7
.7
.5
.5
.5
.7
.8
.8
.7
.5
.5
.7
.8
.8
.7
.5
.5
.5
.7
.7
.5
.5
.5
.5
.5
.5
.5
.5
ff
f
r
c
c
c
f
f
r
r
r
r
f
f
r
r
f
f
f
f
r
r
f
f
f
f
r
r
r
f
f
f
r
r
r
f
.99
.99
.96
.91
.7
.7
.99
.99
.8
.8
.8
.8
.99
.99
.8
.8
.99
.99
.99
.99
.8
.8
.99
.99
.99
.99
.8
.8
.8
.99
≈1
≈1
.8
.8
96
≈1
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 16 / 44
An Algorithmic StoryA complex coverage path
More than 21,000 cells of a complex seabed topology
Path planning on a cell by cell basis is not realistic due to the
intractability of the problem...
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 17 / 44
An Algorithmic StoryA complex coverage path
More than 21,000 cells of a complex seabed topology
... clever algorithms are required.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 18 / 44
The HCPP algorithm [Drabovich, 2008]
The problem was �rst a lexicographic optimization problem:
Heterogeneous Coverage Path Planning algorithm [Drabovich, 2008]
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 19 / 44
The HCPP algorithm [Drabovich, 2008]
Parameterized Heuristic
HCPP is a parameterized heuristic algorithm
Construct the path segment by segment.
The segment length is entirely determined by the algorithms
parameters.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 20 / 44
The HCPP algorithm [Drabovich, 2008]
Parameterized Heuristic
The HCPP algorithm does the following:1 Con�gure the parameters on a given instance or set of instances.
The parameters that lead to the shortest path with the lowest numberof turns are retained.
2 Using the parameters from the con�guration phase:
Generate one path segment.Link the segment to the current path.If the required coverage is not achieved, iterate.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 21 / 44
The HCPP algorithm [Drabovich, 2008]
We started to explore the problem in its bicriteria form
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 22 / 44
The HCPP algorithm [Drabovich, 2008]
6500 7000 7500 8000 8500140
160
180
200
220
240
260
280
300
320
340
Path length
Numnber
ofturns
HCPP solutions
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 23 / 44
The HCPP algorithm [Drabovich, 2008]
6500 7000 7500 8000 8500140
160
180
200
220
240
260
280
300
320
340
Path length
Numnber
ofturns
HCPP solutionsHCPP Pareto
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 24 / 44
The HCPP algorithm [Drabovich, 2008]
Parameterized Heuristic
The HCPP algorithm does the following:1 First con�gure the parameters on a given instance or set of instances.
The parameters that lead to the shortest path with the lowest numberof turns are retained.
2 Using the parameters from the con�guration phase:
Generate one path segment.Link the segment to the current path.If the required coverage is not achieved, iterate.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 25 / 44
The HCPP algorithm [Drabovich, 2008]
Parameterized Heuristic
The HCPP algorithm does the following:1 First con�gure the parameters on a given instance or set of instances.
The parameters that lead to the shortest path with the lowest numberof turns are retained.We may as well retain the parameters which minimize the number of
turns and then the length.
2 Using the parameters from the con�guration phase:
Generate one path segment.Link the segment to the current path.If the required coverage is not achieved, iterate.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 25 / 44
The HCPP algorithm [Drabovich, 2008]
Parameterized Heuristic
The HCPP algorithm does the following:1 First con�gure the parameters on a given instance or set of instances.
The parameters that lead to the shortest path with the lowest numberof turns are retained.We may as well retain the parameters which minimize the number of
turns and then the length.
2 Using the parameters from the con�guration phase:
Generate one path segment.Link the segment to the current path.If the required coverage is not achieved, iterate.
Alternatively we may retain all the solutions and approximate the Pareto
front.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 25 / 44
The DpSweeper algorithm [Morin et al., 2013]
Dynamic Programming Sweeper algorithm [Morin et al., 2013]
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 26 / 44
The DpSweeper algorithm [Morin et al., 2013]
Hybrid?
Dynamic programming
Traveling salesman problem reduction
External solver: Concorde solver [Applegate et al., 2011]
... The Dynamic Programming Sweeper (DpSweeper) algorithm...
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 27 / 44
The DpSweeper algorithm [Morin et al., 2013]
A CPPIED problem decomposition in two steps
DpSweeper does the following:
1 It greedily constructs a partial path
made of disconnected segments in set
S to guarantee that the required
coverage is achieved (dynamic
programming).
2 It optimally links segments to create a
path that is within the robot's physical
constraints (TSP reduction).
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 28 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
De�nition
A segment is de�ned as a set of adjacent cells without any turn.
De�nition
Two segments are independent if their scans do not overlap.
Independent
segments (r = 3)
Dependent
segments (r = 3)
Overlapping
detections
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 29 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
The good:
Computing the optimal segment length for independent segments isdone in polynomial-time using dynamic programming.2
The bad:
Independent segments do not allow for minimal required coverage inmany instances.That is, overlapping segments are required to solve many instances.
The pretty:
When two detections (scans) overlap their order is not important:
C′ij := Cij + (1− Cij)× pscan(d(x ′, y ′, i , j),Oij).
2Using Kadane's algorithm [Bentley, 1984] for computing a segment's length.M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 30 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
The good:
Computing the optimal segment length for independent segments isdone in polynomial-time using dynamic programming.2
The bad:
Independent segments do not allow for minimal required coverage inmany instances.That is, overlapping segments are required to solve many instances.
The pretty:
When two detections (scans) overlap their order is not important:
C′ij := Cij + (1− Cij)× pscan(d(x ′, y ′, i , j),Oij).
2Using Kadane's algorithm [Bentley, 1984] for computing a segment's length.M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 30 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
The good:
Computing the optimal segment length for independent segments isdone in polynomial-time using dynamic programming.2
The bad:
Independent segments do not allow for minimal required coverage inmany instances.That is, overlapping segments are required to solve many instances.
The pretty:
When two detections (scans) overlap their order is not important:
C′ij := Cij + (1− Cij)× pscan(d(x ′, y ′, i , j),Oij).
2Using Kadane's algorithm [Bentley, 1984] for computing a segment's length.M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 30 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
1
1
2
3
3
3
1
1
2
2
2
2
1
1
2
2
1
1
1
1
2
2
1
1
1
1
2
2
2
1
1
1
2
2
2
1
Suppose that the lateral range is r = 1.
Each cell contains the number of scans left
which depends on:
the seabed types;
the required coverage matrix; and
the conditional probability of detection.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 31 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
Suppose that the lateral range is r = 1.
Each cell contains the number of scans left
which depends on:
the seabed types;
the required coverage matrix; and
the conditional probability of detection.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 31 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
1
1
1
Suppose that the lateral range is r = 1.
Each cell contains the number of scans left
which depends on:
the seabed types;
the required coverage matrix; and
the conditional probability of detection.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 31 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 1: Greedily Choosing a Set of Segments S
Suppose that the lateral range is r = 1.
Each cell contains the number of scans left
which depends on:
the seabed types;
the required coverage matrix; and
the conditional probability of detection.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 31 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 2: Reducing to a TSP and Reconstructing the Path P
Once S has been determined, we need to compute an optimal path
crossing each segment of S once.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 32 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 2: Reducing to a TSP and Reconstructing the Path P
First, we forget about the map...
... to think about an optimal TSP tour.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 32 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 2: Reducing to a TSP and Reconstructing the Path P
• • •
• • •
• • •
•••
•
•
•
•••
•••
Each segment is modeled as 3 vertices in the TSP.
The cost of the edges of a segment is null.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 32 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 2: Reducing to a TSP and Reconstructing the Path P
u v w
• • •
u′
v′
w′
• • •
We link the endpoints of each pair of segments.
The cost of the edges between the ends of two di�erent segments
is in number of moves (dotted edges).
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 32 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 2: Reducing to a TSP and Reconstructing the Path P
• • •
• • •
• • •
•••
•
•
•
•••
•••
We obtain the optimal TSP tour using Concorde solver3.
3[Applegate et al., 2011]M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 32 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 2: Reducing to a TSP and Reconstructing the Path P
• • •
• • •
• • •
•••
•
•
•
•••
•••
We reconstruct the path.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 32 / 44
The DpSweeper algorithm [Morin et al., 2013]
Part 2: Reducing to a TSP and Reconstructing the Path P
DpSweeper plans the optimal tour and reconstructs the path
Reduce to a TSP and obtain an optimal tour:
minimize the length then the number of turns;or minimize the number of turns then the length.
Reconstruct the path from the optimal tour.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 33 / 44
The DpSweeper algorithm [Morin et al., 2013]
6500 7000 7500 8000 8500140
160
180
200
220
240
260
280
300
320
340
Path length
Numnber
ofturns
HCPP solutionsHCPP Pareto
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 34 / 44
The DpSweeper algorithm [Morin et al., 2013]
5500 6000 6500 7000 7500 8000 8500140
160
180
200
220
240
260
280
300
320
340
Path length
Numnber
ofturns
HCPP solutionsHCPP ParetoDpSweeper Pareto
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 35 / 44
The DpSweeper algorithm [Morin et al., 2013]
Is the DpSweeper algorithm a �awless heuristic on all instances?
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 36 / 44
The DpSweeper algorithm [Morin et al., 2013]
No, but it is especially e�ective in terms of path length.
5000 6000 7000 8000 9000 10000140
160
180
200
220
240
260
280
Path length
Numnb
erofturns
HCPP solutionsHCPP ParetoDpSweeper Pareto
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 37 / 44
Wrap Up
HCPP:
Lengthty con�guration (from hours to days)Per instance (or instance set) con�guration requiredFast for predetermined parameters ©
DpSweeper:
No parameter ©Fast even in presence of a TSP (running time under a minute)High performance in terms of path length ©
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 38 / 44
Conclusion
Contributions:
Coverage path planning with imperfect extended detection formalismThe extension of the HCPP algorithm to a bicriteria caseThe DpSweeper algorithm and its evaluation in a bicriteria context
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 39 / 44
Discussion
Thank you for yourattention.
More information at
http://www.MichaelMorin.info
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 40 / 44
References I
[Applegate et al., 2011] Applegate, D., Bixby, R., Chvatal, V., and Cook, W. (2011).Concorde TSP solver.http://www.tsp.gatech.edu/concorde.Accessed: 2013/03/15.
[Bentley, 1984] Bentley, J. (1984).Programming pearls: algorithm design techniques.Communications of the ACM, 27(9):865�873.
[Choset, 2001] Choset, H. (2001).Coverage for robotics.Annals of Mathematics and Arti�cial Intelligence, 31(1-4):113�126.
[Drabovich, 2008] Drabovich, M. (2008).Automated mission trajectory planning for mine countermeasures operations.Master's thesis, Heriot Watt University, Edinburgh, Scotland, UK.
[Fang and Anstee, 2010] Fang, C. and Anstee, S. (2010).Coverage path planning for harbour seabed surveys using an autonomous underwater vehicle.In Proc. of OCEANS 2010 IEEE-Sydney, pages 1�8, Sydney, Australia.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 41 / 44
References II
[Gage, 1995] Gage, D. W. (1995).Many-robot MCM search systems.In Bottoms, A., Eagle, J., and Bayless, H., editors, Proc. of Autonomous Vehicles in MineCountermeasures Symposium, Monterey, CA.
[Kukulya, 2012] Kukulya, A. (2012).Remus 100 surveys glacier and remote fjord in western greenland.http://www.whoi.edu/cms/images/IMG_4705_244853.jpg.Woods Hole Oceanographic Institution, Accessed: 2014-01.
[Linder, 2006] Linder, C. (2006).GNU Octave.http:
//www.whoi.edu/cms/images/media-linder_belize1-belize1_cl_87419_99318.jpg.Woods Hole Oceanographic Institution, Accessed: 2014-01.
[Lippsett, 2004] Lippsett, L. (2004).Where are mines hiding on the sea�oor?Oceanus Magazine, 43(1).
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 42 / 44
References III
[Mannadiar and Rekleitis, 2010] Mannadiar, R. and Rekleitis, I. (2010).Optimal coverage of a known arbitrary environment.In Proc. of IEEE International Conference on Robotics and Automation (ICRA'10), pages5525�5530, Anchorage, AK.
[Morin et al., 2013] Morin, M., Abi-Zeid, I., Nguyen, T. T., Lamontagne, L., and Maupin, P.(2013).Search and surveillance in emergency situations - a gis based approach to construct optimalvisibility graphs.In Comes, T., Fiedrich, F., Fortier, S., Geldermann, J., and Müller, T., editors, Proceedingsof the 10th International Conference on Information Systems for Crisis Response andManagement, pages 452�456. Information Systems for Crisis Response and Management(ISCRAM).
[Nicholson and Healey, 2008] Nicholson, J. and Healey, A. (2008).The present state of autonomous underwater vehicle (AUV) applications and technologies.Marine Technology Society Journal, 42(1):44�51.
[Reed et al., 2003] Reed, S., Petillot, Y., and Bell, J. (2003).An automatic approach to the detection and extraction of mine features in sidescan sonar.28(1):90�105.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 43 / 44
References IV
[Wikipedia, 2013] Wikipedia (2013).Side-scan sonar.http://en.wikipedia.org/wiki/Side-scan_sonar.Accessed: 2014-01.
M. Morin et al. (U.Laval, U.T.leMirail) Hybrid Algorithm for CPPIED May 28, 2014 44 / 44