IEEE Robotics & Automation Magazine - September 2013 - 36
assume that these regions are connected in the sense
that there is a path between any two points. We also
assume that the fish remain stationary for the duration
of covering a region, which reduces the search problem
to a coverage problem.
The radio antenna has a limited sensing range. A given
robot path is said to cover a point if the point lies within the
sensing range of the robot at some instance along the path.
The coverage problem can be defined as follows: Given a set
of connected regions
R = {R 1, R 2, f, R n}, find
a
minimum length tour
Instead of using a fixed
that covers every point in
each region R i ! R.
path for k measurements,
A possible approach to
solving
this problem is
an adaptive algorithm
based on the traveling
salesperson problem
is used to choose
(TSP). We can discretize
each region with a resolumeasurement locations.
tion dependent on the
sensing range (Figure 3)
and compute a TSP tour of this set of points. However,
approximation algorithms for TSP usually require a metric
graph, which is typically represented as a complete graph
whose vertex set is the point set to be covered. In such a representation, the number of edges is quadratic in the number
of points. As the lake size or the sampling granularity
increases, maintaining and operating on this large graph can
become infeasible.
The coverage problem defined above is a generalization of
Euclidean TSP and, consequently, nondeterministic polynomial-time hard (NP-hard). Next, we present a general
approach for solving the coverage problem and show that the
length of the path using this approach does not deviate significantly from the length of an optimal tour.
Algorithm Description
Our general approach is composed of two steps. First, we
compute a tour xR that visits all the regions in R exactly
once. We say that region R i is visited if any point in R i is
visited by the tour. The tour xR imposes an ordering on
the regions, and defines (possibly the same) entry and exit
points for each region. The entry and exit points are
where xR intersects a region for the first and the last time,
respectively. Such a tour is not necessarily a solution to
the original problem, since it is not guaranteed to cover all
points in each region. We compute a coverage tour C R i for
each region R i ! R independently, starting and finishing
at the entry and exit points for each R i . The final tour x is
constructed by augmenting the coverage tours of each
region to the visiting tour xR .
We now analyze the performance of this algorithm. Let
OPT be an optimal tour that visits and covers all the regions
in R in minimum time. Let x )R be the optimal tour that visits
all the regions in R. Since OPT also visits all the regions in R,
36
*
IEEE ROBOTICS & AUTOMATION MAGAZINE
*
september 2013
we have OPT $ x )R , where x denotes the length of tour
)
x . Let C R be the optimal coverage tour for a region R i . OPT
covers ever y region in R: therefore, we have
OPT $ / R i ! R C )R i .
Suppose we use an α-approximation algorithm for computing x R and a b -approximation algorithm for finding the
coverage tour of each region. Then the tour x obtained by
visiting the regions according to the order given by xR and
covering each region independently when it is visited has a
cost of at most a x )R + / R i ! R b C R) i . Equivalently,
i
x
`
x
#a
)
xR
+
/
b
Ri ! R
C )R i # a OPT + b OPT
# (a + b) OPT .
Therefore, this approach costs at most a factor (a + b) of an
optimal algorithm.
We now present algorithms for the following two components of the strategy: computing a tour that visits the
regions and covering the regions with specified entry and
exit points.
Visiting the Regions: TSP with Neighborhoods
and the Zookeeper Problems
Computing a tour xR that visits all the regions depends on the
geometric properties of the regions. This problem is commonly known as TSP with neighborhoods (TSPN). Most geometric instances of the TSPN problem are NP-hard. In
general, we can use constant-factor approximation algorithms
for TSPN such as [15] to find xR and a .
In our application, it is reasonable to model the lake as a
simply connected region, i.e., without any holes. Furthermore,
more regions of interest where the fish are located are usually
close to the shore. If the regions are convex polygons touching
the boundary of a simply connected lake, the tour can be
computed using the so-called zookeeper's route [16]. This
special case of the TSPN can be solved optimally ^a = 1h in
polynomial time due to the following lemma.
Lemma 1 ([16]): Let R = {R 1, R 2, ..., R i, ..., R n} be a set of
convex regions located along the perimeter of a simply connected polygon P. An optimal solution exists for visiting the
regions in R, which visits them in the order they appear along
the boundary of P.
Once the ordering of the regions is known, the shortest
tour visiting all regions can be calculated using dynamic
programing. The exact solution is given in [16]. We use a
simpler solution by discretizing the boundary of the
regions to determine the entry and exit locations for each
region. We build a table C (i, s i) , which stores the length
of a tour that enters the region R i at location s i for the
first time. The entries of the table are computed using the
following recurrence:
C (i, s i) = min
8min (C (i - 1, s i -1)) + d (t i -1, s i)B,
t
i -1
S i -1
(1)
where s i -1 and t i -1 lie on the boundary of R i -1 , and d (x, y)
is the Euclidean distance between points x and y. The cost of
Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - September 2013
IEEE Robotics & Automation Magazine - September 2013 - Cover1
IEEE Robotics & Automation Magazine - September 2013 - Cover2
IEEE Robotics & Automation Magazine - September 2013 - 1
IEEE Robotics & Automation Magazine - September 2013 - 2
IEEE Robotics & Automation Magazine - September 2013 - 3
IEEE Robotics & Automation Magazine - September 2013 - 4
IEEE Robotics & Automation Magazine - September 2013 - 5
IEEE Robotics & Automation Magazine - September 2013 - 6
IEEE Robotics & Automation Magazine - September 2013 - 7
IEEE Robotics & Automation Magazine - September 2013 - 8
IEEE Robotics & Automation Magazine - September 2013 - 9
IEEE Robotics & Automation Magazine - September 2013 - 10
IEEE Robotics & Automation Magazine - September 2013 - 11
IEEE Robotics & Automation Magazine - September 2013 - 12
IEEE Robotics & Automation Magazine - September 2013 - 13
IEEE Robotics & Automation Magazine - September 2013 - 14
IEEE Robotics & Automation Magazine - September 2013 - 15
IEEE Robotics & Automation Magazine - September 2013 - 16
IEEE Robotics & Automation Magazine - September 2013 - 17
IEEE Robotics & Automation Magazine - September 2013 - 18
IEEE Robotics & Automation Magazine - September 2013 - 19
IEEE Robotics & Automation Magazine - September 2013 - 20
IEEE Robotics & Automation Magazine - September 2013 - 21
IEEE Robotics & Automation Magazine - September 2013 - 22
IEEE Robotics & Automation Magazine - September 2013 - 23
IEEE Robotics & Automation Magazine - September 2013 - 24
IEEE Robotics & Automation Magazine - September 2013 - 25
IEEE Robotics & Automation Magazine - September 2013 - 26
IEEE Robotics & Automation Magazine - September 2013 - 27
IEEE Robotics & Automation Magazine - September 2013 - 28
IEEE Robotics & Automation Magazine - September 2013 - 29
IEEE Robotics & Automation Magazine - September 2013 - 30
IEEE Robotics & Automation Magazine - September 2013 - 31
IEEE Robotics & Automation Magazine - September 2013 - 32
IEEE Robotics & Automation Magazine - September 2013 - 33
IEEE Robotics & Automation Magazine - September 2013 - 34
IEEE Robotics & Automation Magazine - September 2013 - 35
IEEE Robotics & Automation Magazine - September 2013 - 36
IEEE Robotics & Automation Magazine - September 2013 - 37
IEEE Robotics & Automation Magazine - September 2013 - 38
IEEE Robotics & Automation Magazine - September 2013 - 39
IEEE Robotics & Automation Magazine - September 2013 - 40
IEEE Robotics & Automation Magazine - September 2013 - 41
IEEE Robotics & Automation Magazine - September 2013 - 42
IEEE Robotics & Automation Magazine - September 2013 - 43
IEEE Robotics & Automation Magazine - September 2013 - 44
IEEE Robotics & Automation Magazine - September 2013 - 45
IEEE Robotics & Automation Magazine - September 2013 - 46
IEEE Robotics & Automation Magazine - September 2013 - 47
IEEE Robotics & Automation Magazine - September 2013 - 48
IEEE Robotics & Automation Magazine - September 2013 - 49
IEEE Robotics & Automation Magazine - September 2013 - 50
IEEE Robotics & Automation Magazine - September 2013 - 51
IEEE Robotics & Automation Magazine - September 2013 - 52
IEEE Robotics & Automation Magazine - September 2013 - 53
IEEE Robotics & Automation Magazine - September 2013 - 54
IEEE Robotics & Automation Magazine - September 2013 - 55
IEEE Robotics & Automation Magazine - September 2013 - 56
IEEE Robotics & Automation Magazine - September 2013 - 57
IEEE Robotics & Automation Magazine - September 2013 - 58
IEEE Robotics & Automation Magazine - September 2013 - 59
IEEE Robotics & Automation Magazine - September 2013 - 60
IEEE Robotics & Automation Magazine - September 2013 - 61
IEEE Robotics & Automation Magazine - September 2013 - 62
IEEE Robotics & Automation Magazine - September 2013 - 63
IEEE Robotics & Automation Magazine - September 2013 - 64
IEEE Robotics & Automation Magazine - September 2013 - 65
IEEE Robotics & Automation Magazine - September 2013 - 66
IEEE Robotics & Automation Magazine - September 2013 - 67
IEEE Robotics & Automation Magazine - September 2013 - 68
IEEE Robotics & Automation Magazine - September 2013 - 69
IEEE Robotics & Automation Magazine - September 2013 - 70
IEEE Robotics & Automation Magazine - September 2013 - 71
IEEE Robotics & Automation Magazine - September 2013 - 72
IEEE Robotics & Automation Magazine - September 2013 - 73
IEEE Robotics & Automation Magazine - September 2013 - 74
IEEE Robotics & Automation Magazine - September 2013 - 75
IEEE Robotics & Automation Magazine - September 2013 - 76
IEEE Robotics & Automation Magazine - September 2013 - 77
IEEE Robotics & Automation Magazine - September 2013 - 78
IEEE Robotics & Automation Magazine - September 2013 - 79
IEEE Robotics & Automation Magazine - September 2013 - 80
IEEE Robotics & Automation Magazine - September 2013 - 81
IEEE Robotics & Automation Magazine - September 2013 - 82
IEEE Robotics & Automation Magazine - September 2013 - 83
IEEE Robotics & Automation Magazine - September 2013 - 84
IEEE Robotics & Automation Magazine - September 2013 - 85
IEEE Robotics & Automation Magazine - September 2013 - 86
IEEE Robotics & Automation Magazine - September 2013 - 87
IEEE Robotics & Automation Magazine - September 2013 - 88
IEEE Robotics & Automation Magazine - September 2013 - 89
IEEE Robotics & Automation Magazine - September 2013 - 90
IEEE Robotics & Automation Magazine - September 2013 - 91
IEEE Robotics & Automation Magazine - September 2013 - 92
IEEE Robotics & Automation Magazine - September 2013 - 93
IEEE Robotics & Automation Magazine - September 2013 - 94
IEEE Robotics & Automation Magazine - September 2013 - 95
IEEE Robotics & Automation Magazine - September 2013 - 96
IEEE Robotics & Automation Magazine - September 2013 - 97
IEEE Robotics & Automation Magazine - September 2013 - 98
IEEE Robotics & Automation Magazine - September 2013 - 99
IEEE Robotics & Automation Magazine - September 2013 - 100
IEEE Robotics & Automation Magazine - September 2013 - 101
IEEE Robotics & Automation Magazine - September 2013 - 102
IEEE Robotics & Automation Magazine - September 2013 - 103
IEEE Robotics & Automation Magazine - September 2013 - 104
IEEE Robotics & Automation Magazine - September 2013 - Cover3
IEEE Robotics & Automation Magazine - September 2013 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com