1. Introduction
Compared to manned surface ships, unmanned surface vehicles (USVs) have significant advantages when carrying out dangerous and boring tasks. However, there are some limitations when a single USV performs tasks, such as the limitation of maximum range, lack of scalability, etc. These problems can be effectively overcome using multiple USVs. A USV swarm is a typical multi-agent system. A multiple USV system, which is one of the most actively studied topics within multi-agent systems, generally aims to drive multiple agents to meet prescribed constraints on their states [
1]. To research the multi-USV system more conveniently, it is divided into two sub-problems: multiple task assignment and path planning.
Recently, there has been progress regarding multiple task assignment in multi-agent systems. For example, a new intelligent multi-task allocation is proposed based upon the self-organizing map (SOM) [
2]. The SOM adopts ring topology, with
k SOMs for
k USVs. In [
3], an improved SOM is proposed for intelligent hybrid multi-task allocation of a single USV. However, for a single USV with multi-task allocation, this is equivalent to the path-planning problem, or the traveling salesman problem. In [
4], an intelligent self-organized algorithm is proposed to solve a cooperative search–attack mission-planning problem for multiple unmanned aerial vehicles (UAVs). In [
5], an integrated multiple autonomous underwater vehicle (AUV) dynamic task assignment and path-planning algorithm is proposed by combing the improved self-organizing map neural network with a novel velocity synthesis approach. In [
6], a SOM-based neural network approach is proposed for multiple task assignment of a multi-robot system. In [
7], a SOM with the shortest load-balancing constraints is proposed for AUVs. In contrast to our methods, which used distributed methods to deal with multi-task assignment and path planning, a centralized treatment approach is adopted in [
2,
3,
4,
5,
6,
7]. Each SOM corresponds to an object and outputs an ordered task array. Such a solution is theoretically feasible, but not practically applicable.
Path planning is another sub-problem of a multiple USV system. The method has two parts: an exact algorithm and a heuristic algorithm. A deterministic method can provide accurate results, but it takes a long time. A heuristic algorithm improves running speed by sacrificing the calculation accuracy to obtain an approximate optimal solution. In this case, a heuristic algorithm, such as the improved quantum ant colony algorithm [
8], order-first split-second approach [
9], fast marching method [
10], interpolation algorithm [
11], virtual spring method [
12], improved genetic algorithm [
13], artificial intelligence [
14], A
algorithm [
15], self-organizing map [
16], virtual target approach [
17], etc., is mostly used in path planning. GA takes all individuals in a population as the object, and uses randomization technology to search an encoded parameter space efficiently.
Obstacle avoidance is a very important part of path planning. Researchers have paid extensive attention to obstacle avoidance. In [
7], a hybrid path-planning approach is proposed to guide AUVs to reach their targets safely. In [
15], an artificial potential field-based path-following approach with dynamic collision avoidance is proposed. In [
18], a method based on a finite-control set model-predictive control is proposed. In [
19], a distributed coordination mechanism is proposed for collision avoidance of multiple ships. In [
20], an approach to normalize pseudo-distances is proposed. By ensuring the pseudo-distance was always larger than the safety threshold value, collisions with obstacles were avoided. In [
21], a collision-avoidance potential function based on position estimation is proposed. The effectiveness of the collision-avoidance potential function assumes that the estimator has converged to stability. In actual engineering, the stability of the estimator cannot be guaranteed.
Due to the complexity of the multiple USV system, this paper divides it into two sub-problems, namely multi-task assignment and path planning. In the first stage, an improved self-organizing mapping (ISOM) for multiple task assignment of all USVs is proposed for multiple task allocation. An ISOM can be used to achieve the multiple task assignment of all USVs, with the resulting task set corresponding to USV being an unordered array. In the second stage, which aims at the path-planning problem of the USV accessing tasks, an improved genetic algorithm (IGA) is proposed. To solve the problem of USVs colliding during navigation, an artificial potential field function (APFF) based on position information measured by the sensor system is proposed. The accuracy of the information measured by the sensor system can be guaranteed in engineering. Finally, collision-free trajectories are generated for each USV.
In summary, the main contributions of this paper are summarized as follows.
For multiple task assignment, an improved self-organizing mapping algorithm is proposed. In this case, all tasks are distributed uniformly using the ISOM, and a set of tasks corresponds to each USV.
For path planning, an improved genetic algorithm with the shortest path as the cost function is proposed. By improving the genetic algorithm, we calculate the unordered array from multi-task assignment to obtain a set of ordered arrays with the shortest track.
Obstacle avoidance is a very important part of path planning. To avoid obstacles in USV path planning, an APFF based on position information measured by the sensor system is proposed.
This paper is organized as follows:
Section 2 describes the problem of multi-USV systems, the model of USV and some necessary preliminaries.
Section 3 proposes an ISOM for multiple task allocation.
Section 4 designs an IGA and APFF for path planning.
Section 5 gives simulation and comparison results to verify the effectiveness of the proposed method.
Section 6 concludes the paper.
2. Problem Description and Notation
2.1. Problem Description
A multiple USV system is a complex system. In much of the literature, path planning is combined into SOM to provide multi-task allocation and path planning at the same time. This method is feasible in theory, but not in practice, because path planning is a very time-consuming algorithm. In this case, multiple task assignment and path planning are executed in the same program, which will run slowly. The distributed processing of a multiple USV system mainly focuses on two areas: multiple task assignment and path planning. The multiple USV system framework based on multi-task assignment and path planning is shown in
Figure 1.
The first challenge is the multi-task allocation problem of the multiple USV system. Aiming to solve the problem of multiple task assignment, an ISOM is proposed. An ISOM can allocate all tasks for all USVs. Through ISOM, the task set accessed by each USV is obtained, and each task belongs to only one task set. Moreover, the ISOM has good extensibility and scalability. For example, the number of USVs needs to be added or reduced, and some tasks are added or modified, etc.
The second challenge is to give all USVs access to their task node sets along an optimum path. Multiple tasks can be regarded as multiple task points, and access to the set of tasks can be considered to be the traveling salesman problem (TSP). Based on traditional path planning, an IGA with the shortest path is proposed. At the same time, to avoid USV collisions during navigation, an APFF is proposed.
A real USV is in a three-dimensional space, which makes path planning problems of multiple USVs complex. The USV motion can be decoupled into two motions in a two-dimensional plane and a vertical direction, respectively. As shown in the
Figure 2, the mission area is two-dimensional [
4].
Assumption 1. All the tasks are in the mission area, and the priority of each task is the same.
Assumption 2. The USVs are homogeneous USVs with basic capabilities for navigation, obstacle avoidance, and location recognition [4]. 2.2. Modeling of the USV
The 3 degrees of freedom (DOFs) kinematic equations of the USV can be expressed in vector form as [
22]
where
is the rotation matrix, it is given as:
with the properties:
and
.
is the position and yaw angle in the earth-fixed frame
(see
Figure 3).
is the velocity vector in the body-fixed frame
, where
u,
v, and
r represent the surge, sway, and yaw angular velocities, respectively. The system inertia matrix
M is positive, definite, and constant, where
and
. The damping matrix
D is also symmetric and positive definite, i.e.,
.
is the control input, which is produced by propellers.
is the total environment disturbance by wind, waves, and ocean currents, respectively.
Assumption 3. The position-yaw and velocity information for each vessel are available.
Remark 1. The environmental disturbances consist of a low-frequency part and high-frequency part. In this paper, only the low-frequency part is considered during the control process.
2.3. Notation
For the multi-USV system of multiple task assignment and path planning, the following notations will be used in this paper. T = represents the M tasks randomly distributed in the mission area. Throughout the paper, represents the ith task, i.e., . represents the ith target node is K-dimensional, i.e., . U = represents the set of N USVs in the multiple USV system. Throughout the paper, represents the task set of the jth USV needs to access, i.e., . At the same time, M is the number of neurons in the input layer, which is the same size as the number of task nodes in multiple USVs system. N is the number of cluster centers in the ISOM network, and the size is consistent with the number of USVs in multi-USV system. O = represents the set of Q obstacles in the mission area, i.e., . means to take the maximum value of the •. represents the transpose of a matrix.
3. Improved Self-Organizing Mapping
The self-organizing mapping network and multiple USV system multi-task allocation module have many similar characteristics and phenomena. First, the number of input objects in a SOM network can be changed arbitrarily. It is not affected by the design principle of the SOM network. Second, SOM adopts a mechanism of competitive learning, which gives adjacent neurons similar characteristics. In the multiple USV system, each USV can be understood as the “cluster center” in SOM. Because of these similar characteristics and phenomena, it is feasible to apply SOM in the multiple task assignment module of the multi-USV system.
3.1. The Principle of Self-Organizing Mapping
Self-organizing mapping, also known as the Kohonen network, was first proposed by Kohonen, and can realize unsupervised learning and clustering of data [
23,
24]. The Kohonen network is a neural network with only an input layer and a computational layer, as shown in
Figure 4. SOM assumes that there are some topological structures or orders in the input objects, which can realize mapping from the input layer to the computational layer. The mapping can preserve topological features.
Suppose
M tasks and
N USVs are randomly distributed in the mission area. The SOM network model with an input layer and computational layer is shown in
Figure 4. The first layer is the input layer. It contains
M neurons, and the dimension of each neuron is
K-dimensional. Therefore, the expression pattern of the
ith neuron is
,
,
. The second layer is the output layer. It contains
neurons
. It represents the coordinates of the
N USVs and the corresponding set of
task nodes (
).
represents the connection weight of the output neurons to the input neurons,
,
,
. At the beginning, the SOM is initialized with the connection weights
,
, which are the initial locations of the
N USVs.
3.2. Initialization Parameters
These initialization parameters mainly include a training set (
), test set (
), maximum value of iterations (
), learning rate (
), learning rate parameter (
), neighborhood radius (
), neighborhood parameter (
), weight of connecting all neurons (
w), etc. In addition, we focus on one of the parameters
w, which meets the following condition
where
represents the
-dimensional Euclidean Space, in which the elements are randomly distributed in (0,1).
N and
M represent the numbers of USVs and tasks, respectively.
3.3. Winner Selection Rules
For a given task as an input object, the output neurons compete to be the winner according to a specified criterion described as [
6] references
where
,
,
.
denotes that the
ith neuron from the
nth group of the computational layer is the winner of the
mth input layer object.
is the Euclidean distance between
and
, which is calculated by
where
where
,
,
,
is the target coordinate of the
ith input node.
,
,
is the coordinate of the
mth neuron from the
nth group of the computational layer.
Parameter
P in (
6) represents the equitable distribution of workload for
jth USV [
7], and it is defined as
where
.
and
are the actual cruise path length and the average cruise path length of the
jth USV, respectively.
Without losing generality, we need to consider the workload and energy consumption of each USV to ensure that all USVs can return to the supply point for fuel consumption. Considering different types of USV, their equipment is different, which will lead to different basic technical parameters. For example, the basic technical parameters of the US Navy “ship-class” unmanned combat surface craft are as follows: the maximum speed is between 32 knots and 35 knots, the cruise speed of towing and other mine-sweeping tasks can reach 20 to 25 knots, and the sea self-sustaining capacity can reach 48 h. The cruise speed of the remote-control multi-mission surface craft designed by the US Navy is 16 knots, and its self-sustaining power can reach 24 h during the operation. Here, we choose the cruising speed of USV at 20 knots and cruise duration of 24 h. The track length (
) of USV is calculated as follows:
After the above calculation, the cruise path reaches 888.96 km, which can fully meet our design requirements. In this case, the influence of parameter
P can be ignored, and Formula (
6) can be rewritten as follows:
3.4. Neighborhood Updating Rules
The next step is to calculate the distance between the other neurons and the winner neuron, which is the weight (
w). The key is to determine the neighborhood function (
). We choose the function as the neighborhood function of the winner neuron, and the specific expression is as follows:
where
,
,
.
represents the distance between the
ith neuron and the winner neuron in the
jth output neuron.
is a monotone decreasing function, and
is a small constant. The
provides a percentage-like measure of how close the neurons are.
The initial neighborhood radius (
) should be half the length of the whole output plane at least. The neighborhood radius (
) is defined as follows
where
is a monotone decreasing function.
is a very large constant.
represents neighborhood parameter. After iteration, the neighborhood radius will converge to a small normal value.
The update rule without considering the ocean current is defined as
where
represents the range of topological neighborhood structure. After calculation,
is a large enough number. After iteration, once
,
is expressed as
3.5. Weight Updating Rules
The learning rate is represented by the character
, which is defined as follows
where
is a monotone decreasing function denoting learning rate,
,
is a constant,
represents learning rate parameter.
Through the above description,
is expressed as
3.6. Improved Self-Organizing Mapping
Next, the improved SOM is divided into the following two areas.
(1) The target set is divided into a training set and test set. In the training process of the ISOM algorithm, only the training set is used. When the training is completed and the classification effect is achieved, the test set is processed. This can ensure the accuracy of test-set classification.
(2) The verification of the test set is divided into two steps: storage and grouping. After testing, M neurons were stored. According to the serial number of the task node in the storage data, the grouping is completed. Finally, the set of tasks is the effect of the multi-USV system’s multiple task allocation.
3.7. Pseudocode and Flowchart of Improved Self-Organizing Mapping
After the above comprehensive analysis and overall design, we can configure the ISOM algorithm. The pseudocode is shown in Algorithm 1 and the flowchart of the ISOM, as shown in
Figure 5.
Algorithm 1 ISOM algorithm-based multiple USVs system multi-task assignment module. |
Input: Parameter Initialization. training set (), test set (), number of targets in the test set (N), number of neuron nodes (M), maximum number of iterations (), learning rate (), learning rate parameter (), neighborhood radius (), neighborhood parameter (), weight of connecting all neurons (w), etc. Output:; : , , …, // for t = 1: do for j = 1: do Through the calculation of Formulas (2)–(7), the winner neuron is found ; Through Formulas (8)–(11), calculate the neighborhood function ; for i = 1: N do Through the calculation of Formula (13), update the weight of connecting all neurons w; end for end for Through the calculation of Formula (9), update the neighborhood radius ; Through the calculation of Formula (12), update the learning rate ; end for // ; for i = 1: do : ; end for for i = 1: do : , , …, ; end for
|
5. Simulation and Results
Simulations were carried out with Matlab 2018a. The simulations were run on a PC with a dual-core 2.30 GHz Intel(R) Core(TM) i5-8300H CPU and 8 GB of RAM.
To verify the proposed algorithm, two different simulations were set up in this section, namely three experimental groups and one comparision group.
In simulations, the model of surface ship Cybership II was used [
25]. The time-varying environmental disturbances were modeled as first-order Markov processes [
26].
In the simulation results, the blue area represents high potential value, and the white area means a low potential value, which is approximately zero. When the mission area is a grid, the black area represents an obstacle, and the white area indicates an allowed area. The simulation results are shown in
Figure 7,
Figure 8,
Figure 9 and
Figure 10, where
represents the
ith USV. The ★ indicates the location of the tasks.
5.1. Experimental Group of Proposed Algorithms
In this subsection, the simulation results show the effectiveness of the proposed algorithm. As an experimental group, the algorithm proposed in this paper is used. The ISOM is used for multiple task allocation. The parameters are as follows: , = 10,000, , = 10,000. The IGA is used for path planning. The APFF is used to realize USV obstacle avoidance. The parameters are as follows: , , , , , .
The experimental group includes three groups of experiments, which are experimental group 1, experimental group 2, and experimental group 3. The purpose of experimental group 1 is to test the effectiveness of the proposed method. Experimental group 2 aims to verify the stability and scalability of the ISOM. The purpose of experimental group 3 is to validate the effective of the APFF.
5.1.1. Experimental Group 1
According to the proposed algorithms, the number of tasks and the number of USVs are selected to be , and , , respectively.
The multiple USV system simulation results of experimental group 1 are shown in
Figure 7.
Figure 7a shows the simulation effect of 20 tasks and 2 USVs.
Figure 7b shows the simulation of 20 missions and 4 USVs. Through
Figure 7, it can be verified that the proposed algorithm is effective.
5.1.2. Experimental Group 2
Compared with experimental group 1, and with other parameters unchanged, only the number of tasks and the number of USVs are selected as , and , , respectively.
The multi-USV system simulation results of experimental group 2 are shown in
Figure 8.
Figure 8a shows the simulation of 15 tasks and 2 USVs.
Figure 8b shows the simulation effect of 15 missions and 4 USVs. From
Figure 8, it also can be verified that the proposed algorithm can achieve multiple task allocation and path planning. By comparing
Figure 7 and
Figure 8, it can be validated that the ISOM has good scalability, increasing or reducing the number of USV, and adding or deleting tasks, etc.
5.1.3. Experimental Group 3
In this subsection, the effectiveness of the proposed APFF has been verified. Only one parameter in the APFF was changed: the threat level coefficient (a). Other simulation conditions are the same as those in experimental group 1. and are the parameters of experimental group 1 and experimental group 3, respectively.
Simulation results are shown in
Figure 9.
Figure 9a shows the simulation of 20 tasks and 2 USVs.
Figure 9b shows the simulation of 20 missions and 4 USVs.
Figure 7 and
Figure 9 show the avoidance obstacle effect of USV when
and
, respectively. When
, the track lengths of USV1 and USV2 are shown in
Table 1. When
, the track lengths of USV1, USV2, USV3, and USV4 are shown in
Table 2.
5.2. Comparison and Analysis
In this subsection, traditional path planning is used in the simulation process, but the obstacles in the task area were not considered in [
6]. In this paper, the proposed method considers the improved genetic algorithm and the threat level coefficient (
a) regarding obstacles in the path planning of a multiple USV system.
The multi-USV system simulation results of comparison group 1 are shown in
Figure 10.
Figure 10a,b show the multi-USV system simulation effect of each USV when
and
, respectively. Traditional SOM can realize multi-task allocation of a multiple USV system. However, in the process of path planning, the existence of obstacles in the mission area was not considered. Comparing
Figure 7 and
Figure 10, the trajectories of multiple USVs will pass through the high-risk area, and some of them will even pass directly through obstacles.
The route lengths of each USV when
and
are shown in
Table 1 and
Table 2. Through a comprehensive comparison of the contents in
Table 1 and
Table 2, it can be found that when the threat level of the obstacle decreases, the length of the route is approximately equal to the straight route.
By comparing
Figure 7 and
Figure 10, when changing the threat level coefficient (
a) in the APFF, the trajectory of the USV has already violated obstacles in the mission area. However, each USV has a different track length. As shown in
Table 1, the trajectory length of USV1 for
is 39.6, which is 5.6% above that of
. The trajectory length of USV2 for
is 81.7, which is 3.8% above that of
. The same conclusion can be drawn from the comparison of USV sailing length in
Table 2. It can be concluded that the trajectory is safe at the expense of the total length of the route. The smaller the value of
a, the higher the threat degree of obstacles. At the same time, the route is far from obstacles, safety is improved, and the path length is increased.