A Constant-Factor Approximation Algorithm For Onli
A Constant-Factor Approximation Algorithm For Onli
net/publication/334082300
CITATIONS READS
0 132
2 authors:
All content following this page was uploaded by Ayan Dutta on 30 June 2019.
Abstract— In this paper, we study the problem of coverage runs out. Due to practical relevance, in the recent years,
planning by a mobile robot with a limited energy budget. The there has been a significant volume of work on the energy-
objective of the robot is to cover every point in the environment constrained coverage planning problem [18], [14], [20], [19],
while minimizing the travelled path length. The environment is
initially unknown to the robot. Therefore, it needs to avoid the [17], [16]. The offline version of the problem, denoted as
obstacles in the environment on-the-fly during the exploration. O FFLINE CPP, is studied in [17], [20], [19] and the online
arXiv:1906.11750v1 [cs.RO] 27 Jun 2019
As the robot has a specific energy budget, it might not be able version, denoted as O NLINE CPP, is studied in [16], [17].
to cover the complete environment in one traversal. Instead, it The state-of-the-art algorithm for O FFLINE CPP is due to
will need to visit a static charging station periodically in order [19], which provides O(1)-approximation. For O NLINE CPP,
to recharge its energy. To solve the stated problem, we propose
a budgeted depth first search (DFS)-based exploration strategy the state-of-the-art algorithm is due to [16], which provides
that helps the robot to cover any unknown planar environment O(log(B/L))-approximation, where B is the energy budget
while bounding the maximum path length to a constant-factor and L is the size of the robot (assuming a L×L square robot).
of the shortest-possible path length. Our O(1)-approximation Our goal in this paper is to provide a better approximation
guarantee advances the state-of-the-art of log-approximation algorithm for O NLINE CPP, i.e., to reduce the O(log(B/L))-
for this problem. Simulation results show that our proposed
algorithm outperforms the current state-of-the-art algorithm approximation of [16] to O(1). This will show that asymptot-
both in terms of the travelled path length and run time in all ically there is no approximation gap between O NLINE CPP
the tested environments with concave and convex obstacles. and O FFLINE CPP.
Our proposed algorithm covers an unknown environment
I. I NTRODUCTION through a DFS traversal approach tailored for the limited
Coverage planning is the task of finding a path or a set energy budget B. Robot r performs a depth first search
of paths to cover all the points in an environment [5]. In traversal while building a tree map of the environment on-
robotics, this problem has many potential real-world appli- the-fly. It returns to the charging station to get its battery
cations including autonomous sweeping, vacuum cleaning, fully recharged (stopping the DFS exploration) when the path
and lawn mowing. In an online version of the problem, the length of the traversal becomes at most B. After the battery
area of interest is initially unknown to the robot. Therefore is fully charged, r then moves to the cell where it stopped the
it needs to discover and avoid the unknown obstacles in the DFS process, and continues traversing P . Simulation results
environment while covering all the points in the free space show that our proposed algorithm is up to 5.80 times faster
by traveling as minimum distance as possible [5]. and up to 2.53 times less costlier (in terms of traversed path
Traditionally, this problem has been studied assuming that length) than the state-of-the-art algorithm [16].
the robot has an unlimited energy budget, where given a Contributions. Initially, the robot is at the charging station
robot, a single path can be planned to cover the given S that is inside P . The goal of O NLINE CPP is to find a set
environment. The offline version of the problem where the of paths Q = {Q1 , . . . , Qk } for the robot such that
robot(s) have a priori knowledge of the environment includ- • Condition (a): Each path Qi starts and ends at S
ing obstacles has been well studied, e.g., see [9]. Many • Condition (b): Each path Qi has length l(Qi ) ≤ B
algorithms have been proposed such as the boustrophedon • Condition (c): The paths in Q collectively cover the
decomposition based coverage [4], [13], the spiral path cov- environment P , i.e., ∪ni=1 Qi = P ,
erage [10], and the spanning-tree based coverage [8]. These
and the following two performance metrics are optimized:
techniques can also be adapted to solve online coverage
• Performance metric 1: The number of paths in Q,
planning [20], [3].
In practice however, the robots do not have unlimited denoted as |Q|, is minimized, and
• Performance metric 2: The total lengths of the paths
energy available. Therefore, even covering a standard-size Pn
environment (e.g., a farm) while simultaneously using on- in Q, denoted as l(Q) = i=1 l(Qi ), is minimized.
board sensors (e.g., camera) becomes prohibitive with a We establish the following main theorem for O NLINE CPP.
single charge. A battery-powered robot needs to return to Theorem 1 (Main Result): Given an unknown planar
the charging station to get recharged before the battery polygonal environment P possibly containing obstacles and
a robot r of size L×L consisting of position and obstacle de-
A. Dutta is with the School of Computing, University of North Florida, tection sensors initially situated at a charging station S inside
Jacksonville, FL 32224, USA a.dutta@unf.edu
G. Sharma is with the Department of Computer Science, Kent State P with energy budget B, there is an algorithm that correctly
University, Kent, OH 44242, USA sharma@cs.kent.edu solves O NLINE CPP and guarantees 10-approximation to
both performance metrics compared to the optimal algorithm coordinate system through a compass on-board, that means
that has complete knowledge about P . it knows left (West), right (East), up (North), and down
This result clearly advances the current state-of-the-art as (South) cells consistently from its current cell. Robot r is
it improves upon the log-approximation provided in [16] and equipped with a position sensor (e.g., GPS) and an obstacle-
provides a constant-factor approximation. Furthermore, the detection sensor (e.g., laser rangefinder). We assume that
proposed algorithm is easier to implement than [16]. with the laser rangefinder, the robot can detect obstacles
Related Work. The most closely related works to ours are in any of its neighbor cells. The robot has sufficient on-
[16], [20], [19], [17]. Shnaps and Rimon [17] proposed an board memory to store information necessary to facilitate
1/(1 − ρ)-approximation algorithm for O FFLINE CPP, where the coverage process. Moreover, we assume that initially r
ρ is the ratio between the furthest distance between any two does not have any knowledge about P , i.e., P is an unknown
cells in the environment and half of the energy budget [17]. environment. For the feasibility of covering all cells of P ,
For O NLINE CPP, they proposed an O(B/L)-approximation we assume that P is as big as a circle of radius bB/2c with
algorithm. Wei and Isler [20] presented an O(log(B/L))- center at S. It is assumed that the energy consumption of the
approximation algorithm for O FFLINE CPP, which has been robot is proportional to the distance travelled, i.e., the energy
improved to a constant-factor approximation by them in [19]. budget of B allows the robot to move B units distance.
Recently, Sharma et al. [16] provided an O(log(B/L))- A path (route) Qi is a list of cells that r visits starting
approximation algorithm for O NLINE CPP. In this paper, we and ending with S. Notice that if there are some obstacles
improve upon the log-approximation bound and provide the within P located in such a way that they divide P into two
O(1)-approximation to O NLINE CPP. sub-polygons P1 and P2 with P1 and P2 sharing no common
The other related work is the coverage of a graph. The boundary, then r cannot fully cover P . Therefore, we assume
goal is to design paths to visit every vertex of the given that there is no such cell c in P . That means, there is (at least)
graph. Without energy constraints, it becomes the well- a route from S to any obstacle-free cell of P .
known Traveling Salesperson Problem (TSP) [1] and a We call a cell free if it is not occupied by an obstacle. We
DFS traversal provides a constant-approximation of the TSP. call a cell reachable if it satisfies the definition below.
With energy constraints, this coverage problem becomes the Definition 1 (Reachable Cell): Any cell c in P is called
Vehicle Routing Problem (VRP) [11]. One version of VRP reachable by the robot r, if and only if (a) it is a free cell,
is the Distance Vehicle Routing Problem (DVRP), which (b) it is within distance bB/2c from S, and (c) there must
models the energy consumption proportional to the distance be at least a route of consecutive free cells from S to c.
travelled. For DVPR on tree metrics, Nagarajan and Ravi [15] O NLINE CPP. The problem is formally defined as follows.
proposed a 2-approximation algorithm. Li et al. [12] used Definition 2: Given an unknown planar polygonal envi-
a TSP-partition method and their algorithm has a similar ronment P possibly containing obstacles with a robot r
approximation to the work in [17]. Most of these work having battery budget of B initially positioned at a charging
studied the offline version so that pre-processing on the station S inside P , O NLINE CPP is for r to visit all the
environment can be done prior to exploration obtaining better reachable cells of P through a set of paths so that
approximation. This is also the case in the algorithm of
• Conditions (a)–(c) are satisfied, and
[20], [19] for O FFLINE CPP. Coverage with multiple robots
• Performance metrics (1) and (2) are minimized.
has also received a lot of attention (e.g., see [2], [7]). In
Following [16], [19], we measure the efficiency of any
some cases, the paths planned for a single robot under
algorithm for O NLINE CPP in terms of approximation ratio
energy constraints can also be executed by multiple robots by
which is the worst-case ratio of the cost of the online
assigning the planned paths to the robots, without affecting
algorithm for some environment P over the cost of the
the total cost. In this paper, we consider coverage planning
optimal, offline algorithm for the same environment.
with a single robot.
III. P ROCESSING U NKNOWN E NVIRONMENT
II. P ROBLEM SETUP
In this section, we discuss how the robot decomposes the
In this paper, we use the same model as in [16], [20], [17]. environment into square grid cells and then construct a tree
Environment. The environment P is a planar polygon con- map of the environment on-the-fly.
taining a single charging station S inside it. P may possibly Decomposition of the Environment. Following [16], [19],
contain polygonal, static obstacles. See left of Fig. 1 for an we decompose the environment P into square cells of size
illustration of P with an obstacle O1 . The environment P is L × L, which is the size of the robot itself. An equi-distance
discretized into cells forming a 4-connected grid. contour is a poly-line where the cells on it has the same
Robot. We consider the robot r to be initially positioned distance to/from the base point S (the left of Fig. 1). The
at the charging station S. r has size L × L that it fits cells on a contour can be ordered from one side to the other.
within a grid-cell in P . The robot r moves rectilinearly in Let c be a cell and C be a contour. Let d(c) denote the
P , i.e., it may move to any of the four neighbor cells (if distance to S from c and let d(C) denote the distance to S
the cell is not occupied by an obstacle) from its current from C. If d(Cj ) = d(Ci ) + 1, we say that contour Cj is
cell. We also assume that r has the knowledge of the global contour Ci ’s next contour. The contour C with d(C) = 1 is
11 12
12 13
Latitude
Latitude
Latitude
Latitude
4 4 4 4 4
3 3 3 3 3
2 2 2 2 2
1 1 1 1 1
0 0 0 0 0
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
Longitude Longitude Longitude Longitude Longitude
Fig. 4. An illustration of five different configurations (Conf1 to Conf5) and the paths followed by r using O NLINE CPPA LG. The obstacles are represented
with ‘x’. S is in the bottom-left corner cell. When plotted, later paths have been given higher priority and they are shown in the foreground.
4 450
3.5 400
ONLINECPPALG
Log-approx. algo.
is also submitted.
Total Path Travelled (m.)
3 350
Approximation
Our proposed
Log(B)-approximation
VII. C ONCLUSION AND F UTURE W ORK
2.5 300
MIN
2 250 We have presented an algorithm for O NLINE CPP by an
1.5 200 energy-constrained robot achieving 10-approximation, im-
1 150 proving significantly on the state-of-the-art O(log(B/L))-
0.5
Conf1 Conf2 Conf3 Conf4 Conf5
100
Conf1 Conf2 Conf3 Conf4 Conf5 approximation [16]. It is also simpler to implement compared
Test Environments Test Environments
to [16]. Our simulation results validate the approximation
(a) (b) bound established theoretically. We have empirically shown
Fig. 5. a) Empirical validation of the constant-factor approximation
on different environment configurations; b) Comparison of path lengths that our proposed approach outperforms the state-of-the-art
travelled by the robot using our algorithm and the algorithm in [16]. algorithm both in terms of run time and total traversal cost
for the complete coverage. In the future, we plan to test our
250
B=4l
7
B=4l
algorithm in a real-world setting.
B=6l 6 B=6l
Total Path Travelled (m.)
5
150 4 [1] D. L. Applegate, R. E. Bixby, V. Chvatal, and W. J. Cook. The
3
Traveling Salesman Problem: A Computational Study. Princeton
100
University Press, Princeton, NJ, USA, 2007.
2
50
[2] P. Brass, A. Gasparri, F. Cabrera-Mora, and J. Xiao. Multi-robot tree
1 and graph exploration. In ICRA, pages 495–500, 2009.
0 0 [3] Y. Choi, T. Lee, S. Baek, and S. Oh. Online complete coverage
Conf1 Conf2 Conf3 Conf4 Conf5 Conf1 Conf2 Conf3 Conf4 Conf5
Test Environments Test Environments
path planning for mobile robots based on linked spiral paths using
constrained inverse distance transform. In IROS, pages 5788–5793,
(a) (b) 2009.
Fig. 6. Varying the budget: a) Comparison of travelled path lengths; b) [4] H. Choset. Coverage of known spaces: The boustrophedon cellular
Comparison of total number of paths (i.e., number of visits to S). decomposition. Auton. Robots, 9(3):247–253, Dec. 2000.
[5] H. Choset. Coverage for robotics–a survey of recent results. Annals
of mathematics and artificial intelligence, 31(1-4):113–126, 2001.
[6] S. Das, D. Dereniowski, and P. Uznanski. Brief announcement: Energy
in Fig. 6(b). On average, r visited S 2.30 times more with constrained depth first search. In ICALP, pages 165:1–165:5, 2018 (A
B = 4l than with B = 8l. full version in http://arxiv.org/abs/1709.10146).
[7] P. Fraigniaud, L. Ga̧sieniec, D. R. Kowalski, and A. Pelc. Collective
tree exploration. Netw., 48(3):166–177, 2006.
16 [8] Y. Gabriely and E. Rimon. Spanning-tree based coverage of continuous
14 areas by a mobile robot. Annals of Mathematics and Artificial
Intelligence, 31(1-4):77–98, May 2001.
12
Run time (ms.)