1. Introduction
Autonomous Underwater Vehicles (AUVs) and underwater gliders have found important applications in ocean exploration, oil and gas production, environmental monitoring, underwater infrastructure monitoring, weather services, and coastal surveillance [
1,
2,
3]. Typically, these vehicles are programmed to visit a number of predetermined targets, perform some tasks at the target locations, and then return home. With the increased demand and commercial success of the AUVs and gliders, it is of increasing interests to employ a fleet of vehicles simultaneously and cooperatively to perform a mission. Therefore, multi-vehicle task assignment and path planning become an important research topic in recent years.
Due to the size, weight, and fuel constraints, these vehicles have strong limitations in underwater missions, such as limited mission length, stringent nonholonomic motion constraints, and limited communication with each other or with the home base. A nonholonomic motion constraint requires that the vehicle motion is along a smooth curvature without reversing direction. This often requires that the vehicle paths satisfy geometric continuity to support their kinematic constraints [
4,
5]. For point-to-point path planning, Dubins curves have been widely utilized to achieve
continuity and shortest path length [
6,
7]. Recent literatures on Dubins vehicles also consider environmental conditions such as ocean currents [
8,
9], obstacle avoidance [
10,
11], and vehicle/glider characteristics [
12,
13]. However, most of the works only consider 2-dimensional (2D) Dubins curve, and the extension to 3D Dubins curve is recently proposed in [
14] for unmanned aerial vehicles by using linear interpolation. This method is also adopted in [
12,
13] for path planning of gliders and AUVs.
The multi-target multi-AUV task assignment and path planning problem is commonly modeled by the multiple traveling salesperson (MTSP) problem. In the review paper [
10], Zhu et al. provided a detailed report on the recent progress in this area. The MTSP problems are often solved by the K-means clustering method [
8], the genetic algorithm (GA) [
15,
16], or the heuristic search algorithms [
17,
18]. Due to the high computational complexity, the MTSP problem is often solved by using the Euclidean distances between targets as the cost function. The resulting task assignments and tour sequences are then post-processed to account for vehicle dynamics, environmental constraints, and possible environmental changes. Ocean environmental conditions, such as the effect of strong ocean current, are considered in many recent works [
8,
9,
17,
19,
20]. In addition, several approaches have been developed to adapt to changing environment, including the fast marching-based approach in [
20], the Self Organizing Map (SOM) neural network approach in [
21], and the dynamic task assignment approach in [
22].
To account for the nonholonomic motion constraint, the tour sequence is mapped to point-to-point Dubins curves with a constraint that the incoming and outgoing headings at the joints are the same. In a large tour sequence where the number of targets to be visited is large, the search for shortest Dubins path is also computationally intensive. Several approaches have been proposed in the literature. An Alternating Algorithm is proposed in [
23], which only maps half of the tour points to Dubins curves, thus reducing the search size for the shortest Dubins path. Two beading methods have also been presented in [
23] to map the point-to-point paths with shortest bead-shaped paths. Other path-smoothing methods are presented in [
24], which use continuous-curvature paths such as Clothoids, Bezier curves, and B-splines.
Most of the Dubins TSP solutions also have the limitation of using the 2D Dubins curves without considering the 3D underwater space. A few recent works extend the 2D Dubins curves to 3D [
12,
13,
14] without considering multiple targets. Some works in 3D multi-target task assignment [
11] consider targets in the 3D space without path smoothing. In this paper, we integrate the 3D Dubins curve with the MTSP model for 3D multi-target task assignment and path planning. We impose the energy consumption constraint of each AUV with the Tour Hop Balance (THB) and Tour Length Balance (TLB) criteria in the GA algorithm when solving for the tour sequences of multiple AUVs. We call these algorithms the THB-3Dubins-MTSP algorithm and TLB-3Dubins-MTSP algorithm, respectively. We investigate the simple linear interpolation method of 3D Dubins curve in the multi-target path planning scenario and demonstrate that the simple 3D Dubins curves fail to meet with
continuity at multiple targets, because although the 3D Dubins path may be
continuous in the
plane, they are discontinuous in the
Z-domain.
Based on this finding, we propose a simple solution for accommodating the vehicle dynamics. The interpolated 3D Dubins curves are checked against the AUV dynamics constraint in the Z-domain and the ones satisfying the constraint are accepted to finalize the 3D Dubins curve selection. We call this rejection-acceptance method. Simulation results demonstrate that the integration of the 3D Dubins curve with the MTSP model is successful and effective for solving the 3D target assignment and path planning problem.
2. Problem Statement
Consider multiple AUVs constituting a collaborative team and performing the mission of tracking multiple underwater targets in a 3D underwater environment, as shown in
Figure 1. Assume a set of static targets
and a set of homogeneous mobile AUVs
that are randomly deployed in the
three dimensional underwater space, with
N and
K denoting the total numbers of static targets and mobile AUVs, respectively. Also assume
, as this is commonly encountered in many practical applications. Each AUV has the same initial energy
and the same energy consumption model which is a linear function of its tour length. In order to illustrate design detailed methodology of proposed algorithm, we summarize the simplified notation in
Table 1 for the reader’s convenience.
The objective of task assignment and path planning is to assign a tour sequence of targets from the target set to each AUV such that each target is visited by an AUV once and only once, and the total cost of visiting all targets is minimized.
Let
and
denote the number of targets and tour length of sequence
, respectively. The tour cost of tour sequence
is denoted as
, and the task assignment and path planning problem is to minimize
subject to
where Equations (
4) and (
5) are the Tour Hop Balance (THB) constraint and the Tour Length Balance (TLB) constraint, respectively, and
denotes the intra-AUV variance which is calculated in the following section, → means as small as possible. For example,
if
N is divisible by
K.
2.1. Vehicle Kinematic Constraints
An AUV belongs to a body-fixed coordinate system with six degrees of freedom, and so its motion can be described relative to an inertial-fixed reference frame. However, we only consider the position value and motion heading of an AUV in this paper since it is enough for path planning with Z-axis linear interpolation method. The location and motion of an AUV in three-dimensional Cartesian space are shown in
Figure 2, where the position of the AUV is denoted as
, and its motion heading is denoted as
, where
and
are the X-Y plane angle and Z-axis angle projected from the AUV’s motion heading, respectively. The velocity scalar of the AUV is denoted as
F, and the projected X-Y plane angle and Z-axis angle are bounded, making its motion nonholonomic constraints [
8] such that
where the dot operator is the derivative, and
where
and
represent the curvature bounds. The nonholonomic constraints requires that the AUV paths satisfy the
and
continuities [
24,
25] which are defined as follows:
continuity: and be two regular parametric 3D curves in the space, where and are the parameters with 0 and 1 denoting the starting and ending points, respectively. If , then the two parametric curves meet at joint J with continuity.
continuity: If , then the two parametric curves meet at joint J with continuity.
2.2. The 2D Dubins Curve
For 2D path planning kinematic constraints, a classical path model is to use the 2D Dubins curve [
6,
7] to satisfy the
continuity. Given any two points in the
plane, starting at
and ending at
, the Dubins curves satisfy the dynamic constraints expressed in Equations (
6) and (
7) by a combination of maximum curvature arcs (C) and/or a straight line segment (S) to form two families of curves: family CCC and family CSC. Note that all arcs are with radius
. The family CCC contains curves with types
and
, where
R and
L denote a right turn arc (or clockwise) and a left turn arc (counter clock), respectively; The family CSC includes four types:
,
,
, and
, where
S is a straight line segment. Therefore, the shortest Dubins path between two points are selected from the six types
. For example,
Figure 3 shows the four CSC types of Dubins curves with
and
and two points
and
. Note that
and
are measured counter-clockwise with respect to the positive x-axis. It is obvious that the Type 1 Dubins curve has the shortest length.
The 2D Dubins curves have been well investigated in the literature. It has been shown [
7] that for the long path case where the distance between the starting point and ending point, denoted as
d and normalized by the turning radius
, satisfies
, the shortest path cannot be in the CCC family. The shortest paths with given
and
can be easily determined by the quadrants that the two angles fall in Ref. [
7]. The elements of the
matrix,
, represents the quadrant number
i of the starting angle and the quadrant number
j of the ending angle. The shortest 2D Dubins curves starting from
and ending at
are then determined by
Table 2, where the different types in
Table 2 are determined by certain switching functions defined in [
7].
The exact path and its length can be calculated by the three operators,
for left turn,
for right turn, and
for straight, which transform an arbitrary point
into its corresponding image point
where
, and the index
means that the path segment is of length
. For example, the
path with respective lengths of
between point
and
is solved by
or
The solution is denoted
,
, and
, respectively. The total path length is then
. Details of other types of paths can be found in [
7].
2.3. The Multiple Traveling Salesmen Problem for Dubins Vehicle
Multi-vehicle path planning is often casted as a Multiple Traveling Salesmen Problem (MTSP) [
15] which is to find a set of closed paths for multiple traveling salesmen to visit a set of cities such that each and every city is visited exactly once and the total cost of visiting all cities are minimized. In the AUV path planning problem, the cost is the sum of Euclidean distances along the paths. It is difficult to find the optimal solution to the MTSP and heuristic iterative algorithms, such as the Genetic Algorithm (GA), Reactive Tabu Search, and Clustering and Actioning [
8] are often used. In this work, we use the GA algorithm [
15].
The MTSP is first converted into an equivalent mixed integer programming (MIP) problem [
15] by introducing a binary selection variable
defined as the indicator for the
kth iteration of GA algorithm. If
, then the AUV
is assigned to travel from target
to target
. Otherwise, if
, then AUV
is assigned not to visit targets
and
. Given an undirected graph
, where
is the set of static targets (nodes),
is the set of edges, and
with
and
denoting the home node or the starting/returning location of the AUVs. A cost matrix
is defined on edges
associated with
. The MIP optimization is to
subject to
The constraints (
13) and (
14) ensure that the
K salesmen start from the home node and return to the home node. Constraints (
15) and (
16) ensure that each node is visited (entered and left) only once. The constraint (
17) is to ensure that the cost of each AUV is capped at
S. Note that the constraints in (
4) and (
5) are used as the stop criterion.
The GA algorithm solves the MTSP by treating all possible tour sequences as the population, a specific tour sequence as an individual, the nodes in a tour sequence as a chromosome, and the travel length of a tour sequence as the fitness function. The GA algorithm starts with a random population with
M individuals, and calculates the fitness function for each of the
M individuals; then it creates new population by parent selection, parent crossover, chromosome mutation, and descendant acceptance; A new population results from replacing individuals by descendants with better fitness. Next the generated new population is used in the next iteration that iterates through the new population generation process, until the stop condition is satisfied. The solution to the MTSP is the set of selection variables
. The tour sequence for the
kth AUV is the set of edges selected by the GA algorithm with
. That is
Note that the AUV dynamics and continuity constraints have to be considered when applying the MTSP model to AUVs target assignment and path planning. Using Dubins curves, the MTSP model can be applied to solve the Dubins target assignment and path planning problem in three steps:
Step 1 uses the Euclidean distances between the nodes as the cost and assigns the N targets to the K AUVs through the GA algorithm.
Step 2 converts the tour sequence of each AUV into the Dubins paths by selecting a set of headings at each node and computing the lengths of Dubins curves;
Step 3 chooses the Dubins path and its associated headings with the shortest total distance.
The headings of the AUVs are discretized to
angles such that
and
take values at
with
and excluding multiples of
. The discretization can greatly reduce the computational complexity in searching for the shortest Dubins path. The total length of a tour sequence is then calculated as
for
, and the total cost of all AUVs is computed as in (
1).
In comparison, an existing method called the Alternating Algorithm [
23] also uses the first approach that solves the Euclidean MTSP then maps the tour sequences to Dubins path. However, to reduce the computational complexity of the Dubins search, only odd-indexed edges in the tour sequence are replaced by minimum length Dubins paths, the even-indexed edges keep the straight Euclidean path.
3. Target Assignment and Path Planning in 3D Space
This section extends the target assignment and path planning algorithms from 2D to 3D by incorporating the 3D Dubins curves. We use the first approach in which the GA algorithm solves the Euclidean MTSP for the multiple targets and multiple AUVs, then maps the Dubins curves in 3D. We follow the simple linear interpolation method in [
13,
14] and analyze the
continuity of the resulting 3D Dubins paths.
3.1. The 3D Dubins Curves and Their Path Lengths
To extend the 2D Dubins curves to 3D space using the linear interpolation method, the 3D tour sequences are first projected on to the 2D
plane in a global coordinate system. Taking a starting point
and an ending point
in the 3D space and project them on to the 2D plane, as shown in
Figure 4. Then the starting and ending points become 2D parameters
and
. The 2D Dubins curve is designed as described in
Section 2.2, and the lengths of the arcs and line segment are calculated by (
10). Let
and
denote the lengths along the 2D Dubins curve from
to
and from
to
, respectively.
The linear interpolation adds the
z coordinate by
where
and
are the
Z coordinates of the starting and ending points. The resulting 3D Dubins curve is illustrated in
Figure 4a.
The length of the interpolated 3D Dubins curve is calculated as
where
, and
q are the CSC segment lengths of the 2D Dubins curve, and
and
are the
Z coordinates of the segment joints which are linearly interpolated as
Equation (
21) is easily derived from
Figure 5, since for the straight segment, the sides with length
, and
form a right triangle. Thus,
. For the left turn segment (the ending segment in this example),
if the cylinder containing the arc segments
and
q is opened and laid flat, thus the segments
and
form a right triangle. Similar to the left turn segment, the right turn segment satisfies
. As a result, the total length of the 3D Dubins curve is
.
Next, we show that the shortest 2D Dubins curve results in the shortest 3D Dubins curve and present the proof in Theorem 1. We also analyze the continuity of the interpolated 3D Dubins curves and present the results in Theorem 2.
Theorem 1. The shortest 2D Dubins curve corresponds to the shortest 3D Dubins curve if linear interpolation is used to generate the Z coordinates.
Proof. Let
be the length of the 2D Dubins curve. Substituting (
22) into (
21) yields
Therefore, the shortest length of 2D Dubins curve leads to the shortest 3D Dubins curve. ☐
Theorem 2. The 3D Dubins curves generated by linear interpolation of Z coordinates from the 2D Dubins curve can preserve continuity in the plane but would lose the continuity in Z.
Proof. As shown in
Figure 4, the 2D Dubins curve between a starting and an ending target is composed of three segments: arc, line, and arc, which joint at two joints. These three segments meet at the joints with
continuity because the line segment designed by (
10) ensures the
continuity of each Dubins curve on the
plane. When the tour sequence contains multiple targets, the two Dubins curves meet at one target location, and the
continuity can be preserved by forcing the end heading
of the first Dubins curve equal to the start heading
of the second Durbins curve.
However, in the Z domain, the linear interpolation among three or more targets cannot guarantee the continuity at the joints. For example, let targets 1, 2, and 3 be linked by two line segments. The end of the first line segment joins the start of the second line segment. when the two line segments are not aligned, the start heading of the second line segment (in Z domain) is not equal to the end heading of the first line segment. Therefore, the two line segments meet at the joint without continuity. For a particular example: , , , so the AUV will have to increase its height from to , and it must decrease its height from to . If the AUV has an initial upward heading angle because , then it might turn to a downward heading at because . Therefore, the AUV will have to change its heading angle suddenly before traveling down to . ☐
3.2. Path Planning for Multiple AUVs in 3D Space
This section describes the detailed solution to the multiple targets tracking task assignment problem in three dimensional underwater workspace with constraints of Tour Hop Balance (THB) or Tour Length Balance (TLB). The three step approach in
Section 2.3 is used, where step 1 applies the multiple traveling salesman problem (MTSP) algorithm with Euclidean distances as the fitness function.
To incorporate the Tour Hop Balance (THB) or Tour Length Balance (TLB) constraints into the Genetic Algorithm, the variances of
and
are estimated as
where
and
are the estimated expectations of
and
, respectively. These variances are used by the GA as the termination rule. The resulting algorithms are called the THB-3Dubins-MTSP algorithm and TLB-3Dubins-MTSP algorithm, respectively. The outputs of the GA algorithms are a set of tour sequences for all AUVs.
Then step 2 maps the direct paths in a tour sequence into 2D Dubins curves, which is accomplished by projecting the 3D target locations onto the plane and design 2D Dubins curves. Since different headings on the 2D plane can result in different solutions, the curves include all possible starting and ending for all target pairs. The shortest 2D path is selected by computing the total distances and selecting the smallest one.
The last step converts the 2D Dubins path into 3D curves by linear interpolation of the Z coordinates at each target pair. Then the headings and are calculated. Since linear interpolation loses the continuity, the difference between and at each joint J of the 3D Dubins path is computed as . The results for all J are compared against the bound . If any joint of the Dubins path has a , then the 3D Dubins path is rejected, and another 2D Dubins path, computed in Step 2, has to be used to be interpolated to the 3D Dubins curve. The process is repeated until the 3D Dubins path satisfies the vehicle dynamics constraint. This method is called rejection-acceptance method.
In summary, the pseudo-code of the proposed algorithms is described in Algorithm 1. For all we know, there are a small collision probabilities when multiple robots cruising in the same 3D underwater space. Two and more than two AUVs will be collided when multiple AUVs are arriving at the same coordinates at the same time. However, we run simulations of MTSP for collision check and find the collision between AUVs is negligible since the quantity of AUVs is small because of its high cost. Moreover, another sub-optimal paths can be generated with GA if there is a collision.
Algorithm 1 The pseudo-code of the proposed algorithms |
Input: |
| Set of static targets ; |
| Set of mobile AUVs ; |
| Total number of static targets N; |
| Total number of mobile AUVs K; |
Output: |
| Tour sequence for the kth AUV: , ; |
| Tour trajectory for the kth AUV: , ; |
1: | Initialization: ; |
2: | while do |
3: | if(THB-3Dubins-MTSP) |
4: | # GA based MTSP calculation |
5: | # Break when reaching THB constraint; |
6: | else if (TLB-3Dubins-MTSP) |
7: | #GA based MTSP calculation |
8: | Break when reaching TLB constraint; |
9: | end if |
10: | ; |
11: | end while |
12: | Initialization: , ; |
13: | while do |
14: | Initialization: ; |
15: | while do |
16: | # 3D Dubins curve plotting |
17: | ; |
18: | ; |
19: | end while |
20: | ; |
21: | ; |
22: | end while |
23: | return, for |
4. Simulation Results
Simulations were set up with multiple underwater targets deployed randomly in a cube of
units, where 1 unit is the minimum turning radius
of each AUV. For example, the turning radius of Iver2 AUV used in [
8] is set to 5 m, so the proposed unit equals to 5 m. The number of targets varied from 10 to 50 in increments of 5, and the number of AUVs varied between 2 and 5. For the sake of simplicity, we choose the typical azimuth headings set for AUV movement as
with
. The proposed algorithm was implemented in Matlab and was developed on an Intel 2.5GHz i5-3210M CPU with 4GB RAM and running Windows 7. The computing time of the proposed algorithm with different targets number and AUV number are compared in
Figure 6. The parameters for the GA is listed in
Table 3.
Figure 7 illustrates 3D Dubins based MTSP trajectories of 2 or 4 AUVs generated by 3Dubins-MTSP algorithm. The x-axis and y-axis coordinates with their differential values are compared in
Figure 8. In comparison, the 3D Alternating Algorithm (AA-3DTSP) extended the 2D Alternating Algorithm [
23] by assigning
Z-coordinates with linear interpolation and the resulting path is shown in
Figure 9. A DTSP tour in (AA-3DTSP) can be constructed by retaining all odd-numbered edges (except the n-th), and replacing all even-numbered edges with minimum-length Dubins’ paths preserving the point ordering. In
Figure 9, the Green curves denote odd-numbered edges, and the Blue curves denote even-numbered edges. It is clear non-smooth trajectories fail to
continuity in either the
X–
Y plane nor the z-axis, as shown in
Figure 10. Comparing
Figure 10 to
Figure 8, it is evident that cruise trajectories derived from our algorithm are
continuous, however, cruise trajectories derived from Alternating Algorithm are only
continuous because the tangent angle of each point on the path is not continuous. Therefore, 3D Alternating Algorithm (AA-3DTSP) is not appropriate for nonholonomic AUV and so it is excluded in the following simulations.
Next, we demonstrate the effectiveness of the THB-3Dubins-MTSP algorithm and TLB-3Dubins-MTSP constraints in comparison with the TSP without constraints and the Random Tour (RT) Algorithm. The Random Tour (RT) algorithm uses a set of random headings to achieve cruise paths without any constraints. The 3D Dubins based TSP (3Dubins-TSP) algorithm use only one AUV to trace all targets while cruising along 3D Dubins curves. Performance metrics include energy consumption, energy balance rate, cruise speed, and task life cycle. Energy consumption denotes the total energy consumption of all AUVs in the mission of tracking all targets, which is measured by the total tour length with assumption that each AUV consumes one unit energy at each unit tour length. Energy balance rate denotes with RMS (root mean square) value of energy consumption of each AUV, which is defined as Equation (
28). Cruise speed is defined the maximal tour length of the AUV team in one cruise process, which denotes that the maximal time needed to finish one cruise for all targets. Task life cycle denotes the repeated number of each cruise mission, and it equals to the round number when one of AUV exhausts its energy. In this paper, it is assumed that the mobile AUV will carry out targets detection mission iteratively, and cruise lifetime is measured as the number of targets detection mission.
For a given number of targets, we simulated 100 Monte Carlo trails and computed the average length of 3D tours generated by different algorithms. The standard deviation value is relatively small since the proposed algorithms can achieve progressive optimization using a large number of iterations of GA. The comparison results of energy consumption, energy balance, cruise speed and task life cycle are shown in
Figure 11,
Figure 12,
Figure 13 and
Figure 14, respectively.
Figure 11 shows that our proposed algorithms consume almost the same energy comparing to Random Tour algorithm, but they are much lower than 3Dubins-TSP algorithm.
Figure 12 shows the improvements of energy balance ratio, there is at most 50% improvement with Random Tour algorithm on the RMS metric.
Figure 13 shows the cruise speed comparisons of different mechanism, we find the cruise distance (e.g., the maximal cruise time) will decrease with the proposed algorithms clearly, and it is even obvious with more AUVs.
Figure 14 shows the task life cycle comparisons, it is obvious the lifetime can be extended with our proposed algorithms, especially with more targets in the underwater region. In summary, the proposed THB-3Dubins-MTSP and TLB-3Dubins-MTSP algorithms will improve performances such as energy balance ratio, cruise speed and task life cycle comparing to Random Tour (RT) algorithm greatly, thus verify that the proposed algorithms can achieve better performance with
continuous constraints. Moreover, the proposed THB-3Dubins-MTSP and TLB-3Dubins-MTSP algorithms have similar performances.