1. Introduction
Autonomous underwater vehicles (AUVs) are one of the research hotspots in the field of marine equipment development, and they play an irreplaceable role in ocean exploration, mineral investigation, and hydrology surveys with their autonomy and intelligence [
1,
2,
3]. Typically, an AUV carries limited battery power for underwater operations with little human intervention, so how to maximize the efficiency of an AUV autonomously is very meaningful. One of the most effective and intuitive ways to improve efficiency is to optimize the sequence of task execution and achieve certain optimization goals, such as minimizing the planning path length. Moreover, the optimization can also enhance the intelligence of AUVs to adapt to the complex and dynamic environment. Therefore, this paper takes the classic lawnmower traverse task as an example to introduce and verify a task-sequencing optimization method for an AUV, since the lawnmower traverse task is often performed when detecting and collecting marine data [
4,
5,
6]. For a task-sequencing problem, its optimization is similar to the traveling salesman problem (TSP), which is in discrete space and is an NP-Hard problem [
7,
8]. Generally, there are two solutions to this problem; one is the exact calculation method, and the other is based on a metaheuristic algorithm. The former includes branch and bound [
9], branch and cut [
10], dynamic programming [
11], etc., which can obtain the optimal solution, but the amount of computation increases exponentially as the scale of the problem increases. The latter is mainly represented by an evolutionary algorithm and swarm intelligent algorithm, such as the genetic algorithm (GA) [
12], particle swarm algorithm (PSO) [
13], ant colony algorithm (ACO) [
14], quantum-based avian navigation optimizer algorithm (QANA) [
15], nonlinear marine predator algorithm (NMPA) [
16], etc. Although the result is sub-optimal using these metaheuristic algorithms, computation complexity does not change significantly with change of problem scale compared with exact calculation method, and in most cases, a sub-optimal solution has met the actual requirements. Therefore, a metaheuristic algorithm is selected for task-sequencing optimization in this paper.
Specifically, discrete salp swarm algorithm (DSSA), which combines salp swarm algorithm (SSA) and genetic algorithm (GA), is selected and applied to optimize task-sequencing for AUV, due to its advantages, such as few parameters and good effect. The algorithm is inspired and improved from discrete salp swarm algorithm (DSSA) for the traveling salesman problem (TSP) [
17,
18]. For the AUV application scenario of this paper, there are two key problems that need to be solved when using the optimization algorithm based on DSSA. One is how to encode the individual chromosome and the other is how to perform genetic operations on chromosomes of different lengths. The solutions to these two problems are proposed in this paper.
The main contributions of this paper are as follows:
Considering identity number and entry point of different task areas, a two-layer encoding scheme is proposed for individual chromosomes.
Due to the constraint of limited endurance of an AUV, genetic operators, such as mutation and crossover operators, are modified and improved to process chromosomes of variable size.
DSSA is modified and improved for the optimization of lawnmower task sequencing and the algorithm is implemented and verified in a physical AUV.
The rest of the paper is organized as follows.
Section 1 introduces the related research work.
Section 2 formulates the optimization model, and describes the application of the DSSA algorithm in detail. In
Section 3, simulation and experiment results are shown and discussed. Finally, conclusions and future work are given in
Section 4.
2. Related Works
Metaheuristic algorithms, represented by the evolutionary algorithm and swarm intelligent algorithm, have been applied to robot task sequencing. As described in [
8], metaheuristics have been proved to be efficient for tour-searching problems and, as a consequence, are well-suited for task sequencing in robotics.
GA is a well-known evolutionary algorithm inspired by natural selection and the result is generated from one generation to the next without depending on strict mathematical formulation [
19,
20]. The GA algorithm has inherently discrete properties and is suitable for problems in discrete space. Therefore, GA has been successfully applied in many fields. For example, GA was used to solve a task-planning problem of manipulator arms, which optimized the joint configuration and end movement path of manipulator arms [
21,
22]. In [
21], each individual adopted a special coding method in which double-layer coding of path-point sequencing and joint configuration was used. In [
23], an ant colony optimization (ACO) algorithm was used for the optimization of the industrial robot base layout and robotic task sequence. In [
24], particle swarm optimization (PSO) was used to solve the problem of manipulator system selection for a multiple-goal task considering completion time and cost with computational time. However, for the manipulator arm, task-planning optimization is not constrained by battery power, which is different from the scenario of AUVs with limited endurance.
Besides these applications, several studies also investigated the advantages of metaheuristic methods on robot mission management in terms of vehicle routing and task assignment [
25]. In [
26,
27], vehicle-routing problems (VRPs) were classified and the solving algorithms were analyzed. As mentioned in the literature, the evolutionary algorithm represented by GA can approach the optimal solution and shorten the operation time, and it is a promising method. In [
28], the GA algorithm was utilized to solve a vehicle-routing problem with simultaneous pick-up and deliveries. In [
29], the GA-algorithm-based approach to multi-depot heterogeneous limited fleet VRP with time windows was proposed. However, these studies rarely involve solutions of variable lengths.
For the task allocation of AUVs, there are also some studies on metaheuristic algorithms. In [
30,
31], L-SHADE algorithm was used to optimize multi-area coverage planning path for AUV, aiming at the shortest path length. The method in the literature focuses on path planning and does not take into account the endurance constraint of AUV. In [
7], GA algorithm was used to optimize task sequence in large-scale operation areas. In [
32], differential evolution (DE) algorithm was employed for the waypoint sequence generation and mission time management. In addition, other metaheuristic algorithms were also applied to sequence optimization. In [
33,
34], biogeography-based optimization (BBO) and particle swarm optimization (PSO) were adapted to provide real-time optimal solutions for task sequence selection and mission time management of AUVs. In [
35], ACO algorithm was utilized to find an optimum order of tasks for the underwater mission of AUVs. During these optimization processes, the limited endurance of AUVs was considered in a few studies. However, in these studies, tasks were simplified into a network connected by points and the classic lawnmower traverse task was not analyzed. For the lawnmower traverse task, entry points of different areas have a significant impact on total path length when optimizing task-sequencing.
In this paper, discrete salp swarm algorithm (DSSA), which combines salp swarm algorithm (SSA) and GA, is used to optimize traverse task sequencing for AUVs. As a new algorithm proposed in recent years, SSA mimics the swarming behavior of salps and has simple and effective features [
36]. In the algorithm, most parameters are random values, which reduces the computational complexity. SSA has been successfully utilized in a wide range of optimization problems in different fields and scenarios, such as machine learning, engineering design, wireless networking, image processing, and power energy [
37]. Since the traditional SSA algorithm is used in continuous space, it needs to be modified in discrete space by some methods, such as combining genetic operators. For example, in [
38], hybrid salp swarm algorithm and genetic algorithm (HSSAGA) was used to optimize the allocation of nurses to COVID-19 patients. And in [
17,
18], DSSA combined with genetic operators was introduced for the traveling salesman problem. In [
39], manta ray foraging optimization (MRFO) and SSA were discretized using GA to solve controller placement problem (CPP) in software defined network (SDN). In [
40], an enhanced opposition-based learning salp swarm algorithm (EOSSA) was presented for solving the feature selection (FS) problem in intrusion detection systems (IDSs). However, these existing discrete SSA algorithms cannot be used to solve the problems for the scenario with variable length of each individual solution. In this paper, the improved DSSA, which combines SSA and GA, is proposed for the scenario.
4. Results
This section discusses and analyzes the application results of DSSA from the perspectives of the simulation and lake experiment. Before the lake experiment, the task-sequencing process was simulated in Matlab2019B. In the simulation, GA was selected and compared with DSSA in this paper, since it has been successfully applied and verified in many task-sequencing problems. When applying GA in task-sequencing of AUV, similar improvement methods proposed in the paper were used, such as the methods of individual encoding and crossover operation.
4.1. Simulation Results
4.1.1. Simulation Results Using GA
In GA algorithm simulation, the number
of iterations is 300 and the population size
is 100. Besides that, there are also some other parameters, such as the number of mutated bits
, mutation rate
and crossover rate
. The values of these parameters are shown in
Table 2. In the simulation, scenarios with 8 tasks and 20 tasks whose locations are randomly distributed in the map are taken as examples, and the endurance mileage of an AUV is 10 km. The performance metrics of two scenarios are listed in
Table 3 and the evolution curve is shown in
Figure 7. The parameters in the simulation are set as follows:
−2,
−0.5,
−1. From the result, it can be seen that whether the path length exceeds the endurance or not, the algorithm can optimize the task-sequencing after finite iterations. When the number of tasks is 8, there are no remaining areas because the total length of the planned path (9.647 km) is less than the endurance (10 km). When the number is 20, there are 12 areas left because of the limited endurance of the AUV. Although the dimension of optimization space is changed from 8 to 20, the computation time increases by just over one second.
Figure 8 shows the planning trajectory after optimization in the simulation. In the diagram, the task areas are represented by blue rectangles and the planning trajectory is marked with a red line. And each task area is identified by a green identity number. The side length of one grid in the figure is 50 m and the distance between survey lines is 100 m. The point marked with “Begin” is the start-point of the AUV and the point marked with “End” is the end-point. In the 8-area scenario, the optimized task sequence is 8-2-5-6-7-4-1-3. The entry-point for each area is 1-1-1-1-1-1-4-2. In the 20-area scenario, the optimized task sequence is 17-1-7-4-14-8-5-3 and the entry-point for each area is 1-4-4-1-1-4-1-4.
The box plot of statistic data for the scenario with 20 areas after 100 executions of the GA simulation is shown in
Figure 9 and the key metrics of box plots are listed in
Table 4. From the statistics, it can be seen that although computation time and total distance have a significant volatility, the value of best fitness and the number of covered areas have a certain stability.
4.1.2. Simulation Results Using DSSA
During the simulation of DSSA, the number
of iterations is set to 300 and the population size
is 100. The other parameters in DSSA, such as
and
, are generated randomly. The parameters of DSSA are shown in
Table 5. In the simulation, scenarios with 8 tasks and 20 tasks are also taken as examples, and the endurance mileage of AUV is 10 km. The performance metrics of two scenarios are listed in
Table 6 and the evolution curve is shown in
Figure 10. From the result, it can be seen that the algorithm can optimize the task-sequencing after finite iterations. When the number of areas is 8, the total length of the planned path is 9.6745 km, which is less than the endurance (10 km). When the number is 20, there are 12 areas left and the total path length is 9.472 km. Compared with GA, DSSA performs similarly in a single simulation.
Figure 11 shows the planning trajectory after optimization for DSSA. In the 8-area scenario, the optimized task sequence is 8-2-5-6-7-4-1-3. The entry-point sequence is 3-1-1-2-2-4-4-3. Compared with GA algorithm, the task sequence is the same and entry-point sequence is different. According to the value of best fitness, the result obtained by GA algorithm, whose fitness value is 0.1989, is slightly better than DSSA, whose fitness value is 0.1990. In the 20-area scenario, the optimized task sequence is 7-4-17-1-5-3-13-10 and the entry-point sequence is 4-2-2-4-1-2-3-2. According to value of the best fitness, the result obtained by DSSA algorithm, whose fitness value is 2.3419, is better than GA algorithm, whose fitness value is 2.3421.
Figure 12 shows the box plot of statistic data for the scenario with 20 areas after 100 executions and
Table 7 lists the key metrics.
4.2. Comparison of GA and DSSA in Simulation
From the simulation results and data, it can be seen that both algorithms can optimize task-sequencing for an AUV with limited endurance, but the effect and performance of the two algorithms are still different. First of all, it can be seen from
Table 3 and
Table 6 that GA algorithm is slightly better than DSSA since the calculation time of GA algorithm is less than that of DSSA although the best fitness of both algorithms is similar. Secondly, in order to make a more accurate comparison, statistic data for the scenario with 20 areas after 100 episodes are analyzed. According to the key metrics of statistic data from
Table 3 and
Table 7, it can be seen that each quantile value of best fitness of DSSA is universally less than that of GA. And the total distance and covered areas of DSSA is more than these of GA. It can be shown that DSSA algorithm can make full use of endurance of AUV to obtain as many task benefits as possible compared with GA algorithm. Moreover, the optimization using GA algorithm presents some instability, for example, its interquartile value of computation time and total distance is larger. In addition, DSSA algorithm also has the advantage of fewer input parameters, which are mainly randomly generated except for the sizes of iteration and population.
In summary, DSSA has more advantages compared with GA. Therefore, in the following experiment, DSSA is selected and deployed in a physical AUV for verification.
4.3. Experiment Results
In order to verify the effect in actual equipment, DSSA was implemented and deployed in Sailfish AUV shown in
Figure 13a. It is a kind of small underwater vehicle and developed in the Underwater Vehicle Laboratory of Ocean University of China. The diameter of the vehicle is 260 mm and weight is about 100 kg.
Figure 13b presents the control architecture of Sailfish AUV and logical flow chart of DSSA implementation. Users can provision and send tasks from the deck monitoring interface to the control system in Sailfish AUV. The control system in Sailfish AUV consists of 4-layer function modules, i.e., task layer, behavior layer, motion layer and actuator. Optimization based on DSSA is mainly implemented at the task layer. As shown in
Figure 13c, since the path planning function is in the behavior layer of Sailfish AUV, path planning requests need to be sent to the behavior layer to obtain path information before optimization. And considering the optimization process takes some time, a thread is set up to perform the optimization operation. After optimization, tasks are scheduled, decomposed into behaviors and sent to the behavior layer.
The experiments were carried out in a lake at Qingdao and were divided into two types. One type was that the total path length was less than the endurance of AUV, and the other was that the path length exceeded the endurance. In the experiments, the endurance of AUV was set to 5 km for the sake of simplicity, although the actual endurance of Sailfish AUV is much greater.
In the first experiment, there were 4 traverse tasks provisioned through the interface shown in
Figure 14. In
Figure 14a, each rectangular area is determined by the latitude and longitude values of four vertices, survey line space is 50 m, desired speed is 1.5 m/s and desired depth is 0m. In
Figure 14b, the triangular arrow represents the start-point. The simulation result is shown in
Figure 15a. In the diagram of the simulation, the width of a grid is 25 m. And the motion trajectory displayed in the deck monitoring interface is shown in
Figure 15b. In the simulation, the optimized task sequence is 1-2-3-4 and the entry-point sequence is 3-3-3-1. In the experiment, the optimized task sequence is 1-2-3-4 and the entry-point sequence is 3-3-3-1. For this scenario, both results are optimal solutions. It can be seen that DSSA algorithm can work successfully and generate an optimization result in a physical AUV.
Like the first experiment, 4 traverse tasks were also provisioned in the second experiment, but the endurance was reduced to 2 km. The simulation result is shown in
Figure 16a and the actual motion trajectory displayed in the deck monitoring interface is shown in
Figure 16b. In the simulation, the optimized task sequence is 1-2-3 and the entry-point sequence is 3-3-3. In the experiment, the optimized task sequence is 1-2-3 and the entry-point sequence is 3-3-3. Due to the limit of endurance, three tasks were finally selected and executed after optimization.
5. Discussion
In this paper, DSSA algorithm is improved and applied to optimize the execution sequence of traverse tasks for an AUV. During the optimization, each individual chromosome consists of a task sequence and entry-point sequence, since both of them together determine the total path length. Besides that, the endurance of AUV is also taken into account, so that the total planning path length is not larger than the limited endurance. And by comparing the simulation results, DSSA has more advantages, such as fewer parameters, smaller best fitness, more covered areas and more stable performance. Therefore, DSSA is selected for deployment in a physical AUV and verified in the experiments. The experiment results show that DSSA is successfully applied to optimize the task sequence for AUV.
However, for the scenarios where the task execution time is uncertain or the shape of the task area is more complex, the method described in this paper needs to be improved further. Furthermore, in future study, re-optimization would be considered, since the endurance of AUV may change during the execution of tasks or the planned path may be different from the actual trajectory of AUV. Besides these, the optimization of task allocation and sequencing for multiple AUVs is also an important research direction.