1 2 3
Comparison of Eulerian and Hamiltonian circuits for evolutionary-based path planning of an autonomous surface vehicle for Monitoring Ypacarai Lake
4 5
M. Arzamendia1, I. Espartza2, D. G. Reina3, S. L. Toral2, D. Gregor1
6 7
Abstract — an evolutionary-based path planning is designed for an Autonomous Surface Vehicle (ASV) used in
8
environmental monitoring tasks. The main objective is that the ASV covers the maximum area of a mass of water like
9
the Ypacarai Lake while taking water samples for sensing pollution conditions. Such coverage problem is transformed
10
into a path planning optimization problem through the placement of a set of data beacons located at the shore of the
11
lake and considering the relationship between the distance traveled by the ASV and the area of the lake covered. The
12
optimal set of beacons to be visited by the ASV has been modeled through two different approaches such as Hamiltonian
13
and Eulerian circuits. In the case of Hamiltonian circuits, all the beacons should be visited only once. In the case of
14
Eulerian circuits, the only limitation is that repeated routes cannot exist between two beacons. Both models have
15
important implications in the possible trajectories of ASV throughout the lake. In this paper, we compare the
16
application of both models for the optimization of the proposed evolutionary-based path planning. Due to the
17
complexity of the optimization problem, a metaheuristic technique like a Genetic Algorithm (GA) is used to obtain
18
quasi-optimal solutions in both models. The models have been compared by simulation and the results reveal that the
19
Eulerian circuit approach can reach an improvement of 2% when comparing to the Hamiltonian circuit approach.
Sergio Luis Toral
[email protected] https://orcid.org/0000-0003-2612-0388 Mario Arzamendia
[email protected] https://orcid.org/0000-0002-6486-8402 Iratxe Esparza
[email protected] Daniel Gutierrez Reina (Corresponding Author)
[email protected] Derlis Gregor
[email protected] https://orcid.org/0000-0003-2606-5980 1
Research Department, Faculty of Engineering, National University of Asuncion, San Lorenzo, Paraguay 2
Electronic Engineering Department, University of Seville, Seville, Spain 3
Engineering Department, Loyola University Andalusia, Seville, Spain
2 1 2
Index Terms— Autonomous Surface Vehicle, Coverage Path Planning, Eulerian Circuits, Hamiltonian Circuits, Genetic Algorithm.
I. INTRODUCTION
3 4
utonomous Surface Vehicles (ASVs) have great potential for applications in aquatic environments, such as seas, rivers,
5
lakes and streams [1]. ASVs do not require a crew on them, which leads to the possibility of building smaller vehicles,
A
6
and consequently, reducing significantly the production and operation costs. Some examples of target applications are
7
surveillance, security, monitoring, Search and Rescue operations (SAR), among others.
8
The Ypacarai Lake, which is located in Paraguay, is an adequate test scenario for monitoring applications of ASVs since it
9
has been recently under observation for problems related to water pollution. The monitoring of the Ypacarai Lake requires
10
carrying out periodic analysis of water quality. Such tasks can be easily accomplished by equipping an ASV with the
11
appropriate sensors, such as temperature, pH, dissolved oxygen (DO), turbidity, oxidation-reduction potential (ORP), etc.
12
Thus, the ASV can take samples of water and analyze them as it moves throughout the lake. An area of the Ypacarai Lake is
13
said to be covered if the ASV goes through such area and takes a sample of water. Therefore, the monitoring task can be
14
described as a coverage problem. An adequate coverage strategy is therefore necessary to take these samples and develop an
15
up-to-date map of the conditions of the lake. It is even more challenging since the water conditions can vary periodically due
16
to environmental factors, such as changes of temperature and rains, and for human-made events such as massive and
17
uncontrolled waste disposal.
18
Furthermore, the mentioned coverage problem, which is also called Coverage Path Planning (CPP) [2], can be transformed
19
into a Path Planning Problem (PPP) since the distance traveled by the ASV is highly correlated with the area of the lake sensed
20
by the ASV. Therefore, the main challenge for an efficient monitoring of the Ypacarai Lake is to find an optimal path planning
21
for the ASV to follow so that the coverage of the Ypacarai Lake is maximized. Path planning problem in autonomous vehicles
22
is a main research topic because it allows a robot to tactically move over a specific region [3]. Generally, this region is
23
represented as a map, and the path planning finds intermediate waypoints between a starting and a destination point, which in
24
turn gives intermediate routes. Therefore, a visiting tour can be defined between the starting and the destination points through
25
several waypoints. In general, the objective of a path planning optimization algorithm is to minimize the distance traveled by
26
the robot since it implies lower operation costs. Conversely, for the proposed coverage application transformed into a path
27
planning, the objective is now to maximize the distance, which implies a higher coverage of the lake as long as redundancy is
28
avoided.
29
The intermediate waypoints can be used to build a graph, which are described as a set of vertices and edges that connect the
30
vertices between them. If the destination and starting points are the same, then it is said that the path is a cycle or circuit. In
31
graph theory, a circuit that visits each vertex once is called a Hamiltonian Circuit (HC). Similarly, a circuit that visits all the
3 1
edges of a graph once and all the vertices at least once (it can be more times), then it is called an Eulerian Circuit (EC).
2
Hamiltonian Circuits are important in PPP and CPP problems because they are used to study the Travelling Salesman Problem
3
(TSP), which is the problem of finding the minimum HC in a weighted graph. Both types of circuits present important
4
implications in the movements and coverage of the resulting ASV path planning.
5
This paper explores, by means of a comparison, the suitability of both types of circuits for CPPs. ECs allow constructing a
6
path that repeats regions of a map since waypoints can be visited as many times as desired. However, HCs limit the utilization
7
of the waypoints, restricting the movements of the ASV. Therefore, it is expected that the flexibility gained by applying EC
8
influences positively on the distance traveled by the ASV, and consequently, on the total covered area. Furthermore by using
9
an EC (non-repeated edges) it is guaranteed that paths are not repeated and in this way achieving a higher coverage of the lake.
10
Regarding complexity, finding a Hamiltonian circuit for a given number of waypoints is very high (NP-complete problem)
11
since it is well-studied and known as the Travelling Salesman Problem (TSP), which is a classical combinatorial optimization
12
problem [4]. In contrast, finding an EC for a given number of waypoints is easier since there is only one main condition to be
13
met by the graph of waypoints to be Eulerian; that is, all the vertex (waypoints) should have even number of links [5]. Notice
14
that in this case the links are the routes taken by the ASV. Yet, the complexity in the Eulerian-based approach comes from
15
finding the best subset of selected waypoints and their connections that form an Eulerian graph, so that at least one EC can be
16
obtained from the graph. With the help of a wireless network of beacons located at the shore of the lake that act as the waypoints
17
and data collections points, a complete graph can be built. Furthermore, each edge of this graph provides coverage for all the
18
regions of the lake, and therefore, the optimization challenge is to find the circuit that provides a satisfactory coverage of the
19
lake.
20
Nowadays, there is no algorithm that solves these types of combinatorial optimization problems in polynomial time [4].
21
However, there are some techniques like metaheuristics that can give a quasi-optimal solution in a reasonable time [6]. These
22
techniques are for example Ant Colony Optimization (ACO), Particle Swarm Optimization (PSO), and Genetic Algorithms
23
(GA), among others [7][8]. In this paper, we demonstrate the GAs are suitable search engines for finding HCs and ECs for a
24
set of waypoints in a CPP for the monitoring of Ypacarai Lake.
25
In previous work, the problem of the Ypacarai Lake is presented and evaluated the use of modeling the problem as the TSP
26
and solved by using the GA with different objectives functions, such as the distance [9] and coverage [10]. Furthermore, in the
27
last study the GA approach has been compared with random and greedy algorithms, and performed some GA parameters
28
tuning to obtain the best results. In this work, we improve the previous work by applying the EC model, which we demonstrate
29
that achieves better results than the HC model. Then the main contributions of this paper are twofold:
30
•
Modeling the coverage problem of an ASV as a CPP using Hamiltonian and Eulerian circuits.
31
•
The comparison of both models using a genetic algorithm as search engine in a real-life scenario such as the Ypacarai
32
Lake.
4 1
The structure of the paper is as follows, Section II describes some relevant related works. Section III presents the statement
2
of the problem, including the application scenario and the Eulerian and Hamiltonian circuit definitions. Section IV contains
3
the details of the proposed approach based on genetic algorithm. Section V contains a comparison between the performances
4
of HCs and ECs in the target CPP and a comparison of the performance of GA-based approach with other metaheuristics. In
5
addition, the effects of the number of beacons used is evaluated. Finally, Section VI summarizes the main conclusion of this
6
paper.
II. RELATED WORK
7 8
GA is a technique that has been used in several works related to the generation of HCs for the TSP. In [11], the authors
9
present the constrained covering solid travelling salesman problems (CCSTSP), in which a salesman visits a subset of cities
10
and the remained cities are covered within an imprecise predetermined distance and comes back to the initial city within a
11
restricted time. They solve this problem by using a combined method of random insertion deletion with a modified genetic
12
algorithm (RID-MGA). This work is different to the presented one in a way that the cities that are not visited should be covered
13
by the visited ones within a certain distance. Additionally, there is a time restriction because this problem was thought for
14
emergency cases, like an occurrence of an earthquake. In [12], the authors improve a GA with two local optimization strategies
15
that are applied to find the shortest HC such as the four vertices and three line inequalities and reversion of local Hamiltonian
16
paths with more than 2 vertices.
17
Regarding the CPP, it has been mostly study in agriculture applications, and many examples with TSP modeling and the
18
use of meta-heuristics can be found [13][14]. In [13], the authors propose a path planning method that generates a feasible area
19
coverage plan for agricultural machines in a region that includes obstacles. They formulated the problem as a TSP and solve
20
it using the ACO approach. In [14], the authors study the use of GA to find optimal path to completely cover a farm field while
21
avoiding known obstacles. They analyze different aspects of the GA such as, representations of the field, obstacles, grid, path,
22
etc.; and its adaptation towards the application in this area. In [15], the authors use a GA to find the best coverage solution by
23
dividing the field in small squares of the size of the vehicle, and then calculate the sequence of movements of a robot that
24
covers the whole field and minimizes the energy costs.
25
CPP research in agriculture involves not only UGV (Unmanned Ground Vehicles), but also UAV (Unmanned Aerial
26
Vehicle), which can be used to take images of a crop from high distance for evaluating its conditions, or for weed detection,
27
or even for irrigation and application of fertilizers. In this line, Pham et al. [16] propose a cellular decomposition of the field
28
for a given CPP with concave obstacles based on the generalization of the Boustrophedon variant, using Morse functions.
29
Regarding ASV and monitoring tasks, Tokekar et al. [17] present a coverage algorithm for finding tagged fish and a localization
30
algorithm to effectively finding them in a lake. Instead of covering the entire lake the algorithm searches for covering specific
31
regions inside the lake. First they model the problem of visiting all the regions as a TSP with neighbors (TSPN) and then inside
5 1
each region the ASV follows a π shape path.
2
EC and HC circuit models are the base for other approaches like the Chinese Postman Problem (CPP) [18] and its extension
3
Rural Postal Problem (RPP)[19], which are widely applied in logistics, where paths are chosen to deliver goods, in
4
transportation services like garbage collection, in mail delivery and snow plowing, among others. The main advantage of the
5
study of these problems is that billions of dollars are spent and its optimization can save large amounts of money. The CPP is
6
more to the EC because it searches a solution that visits all the edges in a graph minimizing the distance traveled. The RPP,
7
on the other hand, is more practical in the sense that only one sub-set is obligatory to visit and a path should be constructed
8
with the rest of edges and minimizing the distance traveled as well.
9
The present work is a step forward in the evaluation of HC and EC for CPP problems. The described related work shows
10
that several studies have employed HCs for CPP problems using GA as search engine [11][12]. This metaheuristics engine is
11
adequate to solve high complex optimization problem like CPP. However, as far as authors’ knowledge this is the first work
12
that models the CPP using Eulerian circuits for Autonomous Surface Vehicles (ASV). To validate such approach, we compare
13
the results of a target CPP problem like the monitoring of the Ypacarai Lake when using both HC and EC models. Furthermore,
14
an evaluation of the GA as an optimization tool versus other metaheuristics is also introduced. Finally, the flexibility of using
15
ECs in CPP is introduced by showing how the distance travelled, which is related to the coverage, can be adjusted according
16
to the ASV autonomy requirements
17
III. STATEMENT OF THE PROBLEM
18
A. Coverage Path Problem transformed into Path Planning Problem
19
The studied problem calculates the best path planning for an ASV to take water samples and deliver to a network of data
20
beacons located at the shore of the lake. Therefore, this problem can be formulated as having a set of beacons and determining
21
how the ASV can take the largest number of samples to be delivered to the beacons. These beacons can be considered as
22
intermediate waypoints and the sum of the routes between the first and last waypoints leads to the total path. An image of the
23
Ypacarai Lake is shown in Figure 1, which shows the set of beacons. The number and position of beacons were chosen such
24
that there is an equally spaced network with wireless capabilities for collecting data with an average distance between them of
25
about 1 km. Still, these can be adapted in the future for a better integration with an existing data infrastructure. This distance
26
is estimated so that it is feasible to deploy links in the 2.4 GHz (Zigbee technology, IEEE 802.15.4 standard). Under these
27
conditions, the total number of beacons required is n = 60.
6
1 2
Figure 1. Ypacarai Lake and the data wireless beacons
3
Using Figure 1 a reference map is created. The origin of this map is selected as coordinates (25˚ 22’ 21” S, 57˚ 22’ 57” W)
4
and all the beacons coordinates are translated into this new reference. In addition, each beacon is given an identification number
5
that will be used throughout this study, from b0 to b59. This convention is shown in Figure 2. For example, in this map beacon
6
0 is located at (4,860; 13,500).
7 8
Figure 2. Reference map
9 10
Regarding the coverage performed by the ASV, in this work it is assumed that one sample taken at a given point represents
11
the conditions of the water of an area SASV around the point. Then, the total coverage Ctot is calculated by multiplying this area
12
SASV with the distance traveled by the ASV, which is denoted as PL. The distance traveled is calculated by finding the sum of
7 1
Euclidean distances between the adjacent beacons in the sequence that forms the final path solution. Moreover, the route
2
intersections are considered as duplicated sampled data. Therefore, the term 𝑛𝑟𝑜𝑢𝑡𝑒𝑖𝑛𝑡 is used to account for the number of
3
intersection among routes, which should be subtracted from the area covered. The final expression is:
4
2 𝐶𝑡𝑜𝑡 = 𝑆𝐴𝑆𝑉 ∗ 𝑃𝐿 − 𝑛𝑟𝑜𝑢𝑡𝑒𝑖𝑛𝑡 ∗ 𝑆𝐴𝑆𝑉 (1)
5
These concepts are illustrated in Figure 3, where the green rectangle is the covered area by the ASV and the red area is the
6
duplicated sensing.
7 8 9
Figure 3. Illustration of ASV coverage
B. Hamiltonian Circuits vs Eulerian Circuits
10
The set of beacons and their possible connections, which are determined by the routes taken by the ASV, can be modeled
11
as a complete and connected graph G{V,E} where V ={v1,v2,...,vn} is the set of vertices and E={e1, e2,.., en} is the set of edges
12
such that ei connects vi and vj , ∀𝑖, 𝑗 = {1,2, … , 𝑛}, where each edge has also a weight dij (dij > 0; dii = ∞). Furthermore, it is
13
assumed that the path conditions between a pair of beacons is identical in either direction, then the weight is equal in both
14
directions (dij = dji) and it is said that the graph is undirected. In the presented model the weight of an edge is the Euclidean
15
distance between vi and vj, ∀𝑖, 𝑗 = {1,2, … , 𝑛}. For the proposed CPP the beacons are the vertices, the routes are the edges, and
16
the distance between two beacons is the weight of the corresponding route. The order of a graph is |V| and it is calculated as
17
the number of vertices while the size of a graph is |E| and it is calculated as the number of edges. The degree of a vertex is the
18
number of edges that connect to it, where an edge that connects to the vertex at both ends (a loop) is counted twice.
19
By definition, a Hamiltonian cycle is a tour in a graph that visits all the vertices and edges of a graph once and starts and
20
ends at the same vertex [4]. For having this, each vertex should have only a pair of edges, one incoming and one outgoing
21
edge, or what is the same, all the vertices of the graph should have a degree equal to 2. Then, a Hamiltonian cycle (HC) is
22
defined for a given graph G{V,E} as:
23 24 25 26
HC = G’{V’,E’} s. t.
V’ = V, E’ E , deg(vi) = 2 ∀i={1,2,….,n} ej is valid, ∀i={1,2,….,n}
(2)
8 1
An edge e is valid if that edge remains entirely inside the perimeter of the lake. If not, then the edge cannot be considered
2
part of the sub-graph G’. As a consequence of this definition, the order and the size of G’ are the same, i.e., |V’| = |G’|. In a
3
graph with n vertices there are (n-1)!/2 possible Hamiltonian circuits. The problem of finding the Hamiltonian circuit with
4
minimum length is the widely studied TSP [4].
5
An Eulerian circuit (EC) is a closed tour that visits all the edges [5]. However, it can visit each vertex more than once. One
6
graph has at least an EC if the degree of all the nodes is even. This condition was established by Euler in 1736 when studying
7
the Koningsberg bridge problem [20]. One additional condition is to verify that it is a connected graph, meaning that there is
8
a path between every pair of vertices in the graph. Similarly to the HC, the definition of EC is:
9 10 11 12
EC = G”{V”,E”} s. t.
V” V, E” E, deg(vi) ≤ 2m ∀i={1,2,….,o} and m ≥ 1, o