Next Article in Journal
Towards a Global Surveillance System for Lost Containers at Sea
Next Article in Special Issue
An Improved VO Method for Collision Avoidance of Ships in Open Sea
Previous Article in Journal / Special Issue
Application of Modified BP Neural Network in Identification of Unmanned Surface Vehicle Dynamics
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Distributed Swarm Trajectory Planning for Autonomous Surface Vehicles in Complex Sea Environments

1
College of Marine Electrical Engineering, Dalian Maritime University, Dalian 116026, China
2
College of Marine Engineering, Dalian Maritime University, Dalian 116026, China
3
Shanghai Ship and Shipping Research Institute Co., Ltd., Shanghai 200135, China
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2024, 12(2), 298; https://doi.org/10.3390/jmse12020298
Submission received: 20 December 2023 / Revised: 28 January 2024 / Accepted: 30 January 2024 / Published: 7 February 2024

Abstract

:
In this paper, a swarm trajectory-planning method is proposed for multiple autonomous surface vehicles (ASVs) in an unknown and obstacle-rich environment. Specifically, based on the point cloud information of the surrounding environment obtained from local sensors, a kinodynamic path-searching method is used to generate a series of waypoints in the discretized control space at first. Next, after fitting B-spline curves to the obtained waypoints, a nonlinear optimization problem is formulated to optimize the B-spline curves based on gradient-based local planning. Finally, a numerical optimization method is used to solve the optimization problems in real time to obtain collision-free, smooth and dynamically feasible trajectories relying on a shared network. The simulation results demonstrate the effectiveness and efficiency of the proposed swarm trajectory-planning method for a network of ASVs.

1. Introduction

The autonomous surface vehicle (ASV), as an intelligent, miniaturized, and versatile unmanned marine transport platform that operates through remote control or autonomous navigation, has a variety of applications in offshore ocean engineering [1,2,3,4,5,6,7,8,9,10,11,12,13]. Among the various applications of ASVs, the trajectory planning of ASVs is particularly crucial to provide a safe trajectory. In order to obtain the optimal trajectory, trajectory planning of the ASV is described as a constrained optimization problem by using local sensor and global map information.
The trajectory-planning problem of an ASV has been widely studied in the literature [14,15,16,17,18,19,20,21]. Specifically, in [14], a temporal-logic-based ASV path-planning method is employed, which enables the ASV to pass through heavy harbor traffic to an intended destination in a collision-free manner. In [15], an evolutionary-based path-planning approach is proposed for an ASV to accomplish environmental monitoring tasks. In [16], an extension of the hybrid-A* algorithm is proposed to plan optimal ASV paths under kinodynamic constraints in a leader-following scenario. Another hybrid-A*-based two-stage method is provided in [17] for energy-optimized ASV trajectory planning with experimental validation. In [18], a novel receding horizon multi-objective planner is developed for an ASV performing path planning in complex urban waterways. In [19], an essential visibility graph approach is proposed to generate optimal paths for an ASV with real-time collision avoidance. Furthermore, in [20], the particle swarm optimization algorithm together with the visibility graph is applied to the ASV path-planning problem among complex shorelines and spatiotemporal environmental forces. Recently, in [21], a hybrid artificial potential field method is proposed for an ASV cruising in a dynamic riverine environment. However, it is worth mentioning that the works [14,15,16,17,18,19,20,21] are dedicated to the path planning of a single ASV.
Compared to a single ASV, multiple ASVs are more likely to complete difficult tasks such as exploration and development, territorial sea monitoring and route planning [4,22,23,24,25,26,27,28,29,30,31,32]. Therefore, the trajectory planning of multiple ASVs, as one of the key topics in the field of marine science, has attracted increasing interest in scientific research, and much success has been achieved. Existing path-planning methods for multiple ASVs include model predictive control [33,34,35], the RRT method [36], satellite maps [37], the priority target assignment method [38], the Voronoi-Visibility roadmap [39], and the multidimensional rapidly exploring random trees star algorithm [40], to list just a few. However, due to the uncertainties of obstacles, and limitations in sensor range and communication bandwidth, the trajectory planning of multiple ASVs in an unknown—an especially an obstacle-rich—marine environment still presents a great challenge. In fact, to the best of the our knowledge, as for the autonomous navigation of multiple ASVs, little research is available that constructs a multi-objective optimization problem with optimal energy consumption, dynamic feasibility, and obstacle avoidance distance in unknown environments based on local sensor information.
In light of the above discussions, this paper focuses on the distributed swarm trajectory-planning problem for multiple ASVs in a complex and obstacle-rich marine environment. Firstly, by utilizing local sensors, the surrounding environment’s point cloud data are acquired, and a kinodynamic path-search technique is employed to generate a series of waypoints within a discretized control space. Subsequently, B-spline curves are fitted to these waypoints, and a nonlinear optimization problem is formulated. This problem is optimized using a gradient-based local planning approach, which allows the generation of collision-free, smooth, and dynamically feasible trajectories through a shared network. Compared with the existing trajectory-planning methods, the proposed trajectory-planning method has the following features:
  • In contrast to the existing trajectory-planning methods dedicated to a single ASV [14,15,16,17,18,19,20,21] and multiple USVs [36,37,38,39,40], this work constructs a multi-objective optimization problem with optimal energy consumption, dynamic feasibility, curve smoothness, obstacle avoidance distance, and endpoint distance constraints based on local sensor information. By utilizing local onboard sensor information, ASVs can accomplish autonomous navigation requiring no external localization and computation or a pre-built map in unknown complex environments.
  • By adopting the proposed planning method, the optimal trajectory generation problem for multiple ASVs is divided into initial trajectory generation and back-end trajectory optimization. A heuristic-based kinodynamic path search is employed to efficiently find a safe, feasible, and minimum-time initial path. The initial path is then optimized by a B-spline optimization incorporating gradient-based local planning. By this means, the generated trajectories are able to meet the dynamic feasibility with enhanced safety.
  • By adopting the proposed planning method, ASVs can perceive the surrounding environment in real time, using point cloud information obtained from local sensors to generate real-time local optimal trajectories. Moreover, this work utilizes multiple local optimal trajectories to form a global trajectory, which better meets the requirements of real-time obstacle avoidance and generates shorter sail distance for short-range autonomous navigation.
The rest of this paper is organized as follows. Some preliminaries and the problem formulation are given in Section 2. Section 3 discusses the process of swarm trajectory planning of ASVs. Section 4 provides some simulation results to demonstrate the effectiveness of the proposed method. Section 5 concludes this paper with some concluding remarks and future works.

2. Preliminaries and Problem Formulation

2.1. Preliminaries

R n denotes the n-dimensional Euclidean space. The Euclidean norm is denoted by · . λ min ( · ) and λ max ( · ) represent the minimum and maximum eigenvalues of a square matrix ( · ) , respectively. N + denotes a positive integer. R + and R represent the positive and negative real numbers, respectively.

2.2. Problem Formulation

In the trajectory planning, each ASV is governed by the kinematic model expressed as follows:
x ˙ = u c o s ψ v s i n ψ y ˙ = u s i n ψ + v c o s ψ ψ ˙ = r
where [ x , y ] and ψ denote the position and yaw angle in an earth-fixed frame, respectively. u , v , and r are the surge velocity, sway velocity, and yaw rate in a body-fixed frame, respectively. For the trajectory-planning task, it is assumed that v = 0 such that
x ˙ = u c o s ψ y ˙ = u s i n ψ ψ ˙ = r
In this paper, a real-time trajectory-planning method is proposed for multiple ASVs to reach the designated target points in a complex and obstacle-rich environment, as shown in Figure 1.

3. Swarm Trajectory Planning

This section gives a general description of the proposed swarm trajectory-planning method, including the construction of occupancy grid maps, the kinodynamic path-searching method, the curve-fitting method based on cubic uniform B-spline, the construction of nonlinear optimization problems under multiple constraint conditions, and the numerical optimization algorithm for solving the formulated optimization problem. The proposed trajectory-planning framework for multiple ASVs is shown in Figure 2.

3.1. Construction of Occupancy Grid Map

The sensing radius of the sensor is set to r i d and takes a circular area for point cloud acquisition. The position of the ASV is set to p i d = [ x i d , y i d , z i d ] R 3 . The point cloud position coordinates obtained by sampling the surrounding environment are set to p t i d = [ x t i d , y t i d , z t i d ] R 3 , and the quaternion of the ASV is set to q i d = [ w q i d , x q i d , y q i d , z q i d ] R 4 . In order to obtain the point cloud data within the desired range, the angle value corresponding to the maximum height of point cloud collection is set to α R ; then, the constraints for point cloud acquisition are given as
z t i d z i d r i d tan ( α ) x t i d x i d y t i d y i d z t i d z i d 1 2 ( y q i d 2 + z q i d 2 ) 2 ( x q i d y q i d + z q i d w q i d ) 2 ( x q i d z q i d y q i d w q i d ) 0
According to (3), a dense point cloud map of the ASVs’ forward direction can be obtained. To represent the presence of obstacles, an occupied grid map is constructed by partitioning the point cloud into grids with each being one of two states: filled or empty. For a grid m i in an occupancy grid map, the probability of the grid state being occupied is denoted as p ( m i ) and the probability of the grid state being free is denoted as p ( m i ¯ ) . The t-th observation is set to z t . To calculate the posterior probability of the grid state based on existing observations, p ( m i | z 1 : t ) and p ( m i ¯ | z 1 : t ) should be calculated. A grid is occupied if p ( m i | z 1 : t ) κ with κ being a preset threshold. The probability of the grid state being occupied can be specifically denoted as
p ( m i | z 1 : t ) = p ( z t | z 1 : t 1 , m i ) p ( m i | z 1 : t 1 ) p ( z t | z 1 : t 1 )
and the t-th observation is obtained as follows:
p ( m i | z t ) = p ( z t | m i ) p ( m i ) p ( z t )
According to the Markov assumption that the results of the first t 1 observations are independent of the result of the t-th observation, one has that
p ( z t | z 1 : t 1 , m i ) = p ( z t | m i )
Expanding (4) based on the Bayes formula, it follows that
p ( m i | z 1 : t ) = p ( m i | z t ) p ( z t ) p ( m i | z 1 : t 1 ) p ( m i ) p ( z t | z 1 : t 1 )
and
p ( m i ¯ | z 1 : t ) = p ( m i ¯ | z t ) p ( z t ) p ( m i ¯ | z 1 : t 1 ) p ( m i ¯ ) p ( z t | z 1 : t 1 )
Define l t ( m i ) as the t-th update posterior probability for a grid m i ; then, one has that
l t ( m i ) = log p ( m i | z 1 : t ) p ( m i ¯ | z 1 : t ) l t 1 ( m i ) = log p ( m i | z 1 : t 1 ) p ( m i ¯ | z 1 : t 1 )
Further simplifying the above equation using (7), l t ( m i ) can be described as
l t ( m i ) = log p ( m i | z t ) p ( m i ¯ | z t ) log p ( m i ) p ( m i ¯ ) + l t 1 ( m i )
Substituting (5) into (10) yields
l t ( m i ) = log p ( z t | m i ) p ( z t | m i ¯ ) + l t 1 ( m i )
By assuming that the sensor model will not change during the environmental modeling process, the sensor model formulas p ( z t | m i ) and p ( z t | m i ¯ ) are constant. Then, according to (9), one has that
p ( m i | z 1 : t ) = a l t ( m i ) 1 + a l t ( m i )
where a is the base of the l o g function. Based on the posterior probability, the occupied grid map can be updated. The occupied grid map constructed by ASVs during autonomous navigation is depicted in Figure 3.

3.2. Kinodynamic Path Searching

Inspired by the hybrid A* search proposed for autonomous vehicles in [41], the kinodynamic path searching is applied for ASV to obtain a safe and reliable trajectory in an occupancy grid map while minimizing time cost. The mechanism of the kinodynamic path searching is illustrated in Figure 4.
Similar to the standard A*, we use openlist and closelist to denote the open set and the closed set, respectively. A structure node is used to record the position of the expansion point as well as the g c and f c cost (Section 3.2.2). The nodes expand iteratively, and the one with the smallest f c is saved in openlist. Then, CheckCollision(·) checks the safety and dynamic feasibility of the nodes. The searching process ends once any node reaches its goal successfully or the AnalyticExpand(·) succeeds. Details of the kinodynamic path searching are shown in Algorithm 1.
Algorithm 1 Kinodynamic Path Searching
  • while o p e n l i s t . empty ( ) do
  • o p e n l i s t pop n c
  • c l o s e l i s t insert n c
  • if R e a c h g o a l ( n c ) or A n a l y t i c E x p a n d ( n c ) then
  •    r e t u r n P a t h ( )
  •  end if
  • e x p a n d n o d e s N o d e E x p a n d ( n c )
  • n o d e s N o d e P r u n e ( e x p a n d n o d e s )
  • end while
  • for each n i n o d e s   do
  • if  c l o s e l i s t contain n i and C h e c k C o l l i s i o n ( n i )  then
  •    g t n c . g c + C u r r e n t C o s t ( n i )
  •   if  o p e n l i s t contain n i then
  •     o p e n l i s t add n i
  •    if  g t n i . g c  then
  •      c o n t i n u e
  •    end if
  •   end if
  • end if
  • end for
  • n i . p a r e n t n c , n i . g c g t
  • n i . f c n i . g c + h ( n i )

3.2.1. Primitives Generation

The motion primitives are generated by using NodeExpand(·) in Algorithm 1. Accordingly, we firstly define the discretization sampling of r i , T j , and u k , i = 1 , 2 , , m , j = 1 , 2 , , n , k = 1 , 2 with m , n N + as follows:
r i { r 0 , r 1 , r m } T j { T 0 , T 1 , , T n } u k { u m a x , u m a x }
where r i , i = 1 , 2 , , m denotes a set of discretized yaw rates, T j , j = 1 , 2 , , n , denotes a set of durations, and u k , k = 1 , 2 denotes the control input.
Let p 0 = [ x 0 , y 0 , ψ 0 ] R 3 be the node recording the current pose of the ASV, and let p t = [ x t , y t , ψ t ] R 3 be the pose of the ASV after sampling. Recalling the ASV kinematic model (2) and applying the control variables u k and r i for duration T j , the pose of the ASV can be calculated by
x t = x 0 + 0 T j u k cos ( ψ t ) d τ y t = y 0 + 0 T j u k sin ( ψ t ) d τ ψ t = ψ 0 + 0 T j r i d τ

3.2.2. Heuristic Cost

In this subsection, a heuristic function h ( · ) is designed to speed up the searching in Algorithm 1 as used in A*. Heuristic cost refers to constructing a boundary optimal problem using the Pontryagin extremum principle, considering multiple target points generated by the A* path search method. Computing the cost values of all candidate target points, the one with the minimal cost is selected as the optimal target point. Then, based on the selected optimal target point, the A* algorithm is used to iteratively search toward the endpoint.
In order to find a trajectory that is optimal in time, the Pontryagins minimum principle is applied to design a heuristic cost function J ( T ) as follows:
J ( T ) = T + μ x , y ( 1 3 α μ 2 T 3 + α μ β μ T 2 + β μ 2 T ) α μ β μ = 12 T 3 6 T 2 6 T 2 2 T p μ f p μ 0 v μ 0 T v μ f v μ 0
where p μ 0 , p μ f are the current and goal position, respectively, and v μ 0 , v μ f are the current and goal velocity, respectively.
In order to obtain the minimum heuristic cost, α μ and β μ are substituted into J ( T ) to obtain the solutions of J ( T ) / T = 0 . The solution which minimizes J ( T ) is denoted as T min , and J ( T min ) represents the heuristic cost h c for the current node. Moreover, g c is used to represent the actual cost of the trajectory from the start position ( x s , y s ) to the current state ( x c , y c ) , and it is calculated as g c = ( x s x c ) 2 + ( y s y c ) 2 . Thus, the final cost of the current state is obtained by f c = g c + h c .

3.2.3. Collision Check

Collisions are checked based on the occupied grid map constructed by point clouds from local sensors. We assume that the entire ASV is included in a maximum rectangular box; then, a series of rectangular boxes is constructed sequentially on the trajectory points along the generated trajectory. All rectangular boxes are detected at a frequency of 20 Hz to determine whether they overlap with the surrounding point clouds or not. If there is overlap, it is determined that a collision has occurred, and multiple ASVs’ trajectories need to be replanned. Otherwise, it is determined that the trajectory is safe.
To be specific, approximating an ASV by a rectangle, a set of footprints S representing the area occupied by the ASV is obtained by x i , y i and ψ i along the footprints, as illustrated in Figure 5. The union of footprints S is called the swath along trajectory, which needs to be checked for collisions, as can be found in CheckCollision(·) in Algorithm 1. With the obtained swath, the occupancy grids of the swath are calculated to see if they overlap with obstacles on the occupancy grid map, as shown in Figure 6.

3.2.4. Analytic Expansion

Generally speaking, it is difficult for discretized input to reach the endpoint accurately. To this end, an analytic expansion scheme AnalyticExpand(·) in Algorithm 1 is induced to speed up the trajectory searching. When the current node p μ 0 is close to the endpoint p μ f , the same approach used in Section 3.2.2 is directly applied to compute a trajectory from p μ 0 to p μ f without generating primitives. If the trajectory can pass the safety and dynamic feasibility check, the path searching is terminated in advance. This strategy proves to be beneficial in enhancing efficiency, particularly in a sparse environment, as it greatly improves the success rate of the algorithm and terminates the searching earlier.

3.3. Trajectory Smoothing

Theoretically, the safety and dynamic feasibility of the path generated by kinodynamic path searching cannot be strictly guaranteed, as kinodynamic path searching ignores the distance information of obstacles and does not consider curve smoothness. Therefore, a B-spline curve is used in this section to fit the path curve.

3.3.1. Cubic Uniform B-spline

Let q = q 0 , q 1 , , q n be the control points obtained from kinodynamic path searching and Θ = θ 0 , θ 1 , , θ m be the knot vector with q k R 2 , θ i R and m = n + p + 1 . A B-spline is a piecewise polynomial determined by its degree p and n + 1 control points q and Θ . A cubic B-spline trajectory, used to fit the above control points, is parameterized by θ . For a uniform cubic B-spline trajectory, it is noted that each knot span satisfies Δ θ k = θ k + 1 θ k = Δ θ .
The convex hull property of B-spline curves is illustrated in Figure 7. For θ [ θ i , θ i + 1 ) , i = 0 , 1 , , m 1 , the four control points of a cubic uniform B-spline trajectory set within the knot vector θ are q k 3 , q k 2 , q k 1 , q k , where 3 k n . To construct B-spline curves, the B-spline basis function firstly needs to be calculated, of which the degree is set to p. Denoting the k-th B-spline basis function of degree p as N k , p , the 0-order and the p k -order basis function are given as follows:
N k , 0 = 0 i f θ i θ < θ i + 1 1 o t h e r w i s e N k , p = θ θ i θ i + p θ i N k , p 1 ( θ ) + θ i + p + 1 θ θ i + p + 1 θ i + 1 N k + 1 , p 1 ( θ )
For ease of implementation, p is set to p = 3 . Correspondingly, the four basis functions are set to N k 3 , 3 , N k 2 , 3 , N k 1 , 3 , and N k , 3 .
Defining a normalized variable s ( θ ) = ( θ θ i ) / Δ θ , and substituting s ( θ ) into (16), one has that
N k 3 , 3 = 1 6 ( 1 s ( θ ) ) 3 N k 2 , 3 = 1 2 s ( θ ) 3 s ( θ ) 2 + 2 3 N k 1 , 3 = 1 2 s ( θ ) 3 + 1 2 s ( θ ) 2 + 1 2 s ( θ ) + 1 6 N k , 3 = 1 6 s ( θ ) 3
Therefore, the following matrix can be calculated to represent the coefficients of cubic uniform B-spline trajectories:
p ( s ( θ ) ) = n k Q k n k = N k 3 , 3 N k 2 , 3 N k 1 , 3 N k , 3 Q k = q k 3 q k 2 q k 1 q k T

3.3.2. Convex Hull Property

In order to ensure the dynamic feasibility, it is necessary to construct a nonlinear constrained optimization problem for the first-order and second-order derivatives of B-spline trajectory. For this purpose, it is necessary to prove that the derivative of a B-spline is also a B-spline. With control points q 0 , q 1 , , q n and basis functions N k , p defined above, a p-degree B-Spline C ( θ ) can be obtained as follows:
C ( θ ) = k = 0 n N k , p ( θ ) q k
with its first-order and second-order derivatives being
C ˙ ( θ ) = k = 0 n 1 N k + 1 , p 1 ( θ ) v k C ¨ ( θ ) = k = 0 n 2 N k + 2 , p 2 ( θ ) a k
Moreover, the first derivative of the basis function is given as follows:
d N k , p ( θ ) d θ = p N k , p 1 ( θ ) θ i + p θ i + p N k + 1 , p 1 ( θ ) θ i + p + 1 θ i + 1
Substituting (21) into (20) yields
C ˙ ( θ ) = k = 0 n 1 N k + 1 , p 1 ( θ ) ( p q k + 1 θ i + p + 1 θ i + 1 + p q k θ i + p + 1 θ i + 1 )
Thus, the control points of the B-spline C ( θ ) ’s first derivative v k can be computed by
v k = p q k + 1 θ i + p + 1 θ k + 1 + p q k θ i + p + 1 θ i + 1
Since the B-spline trajectory used in Section 3.3.1 is uniform, Equation (23) is further simplified as follows:
v k = q k + 1 q k Δ θ
Similarly, the second-order and third-order derivatives of the B-spline trajectory can be further derived as follows:
a k = v k + 1 v k Δ θ = 1 Δ θ 2 ( q k + 2 2 q k + 1 + q k ) j k = a k + 1 a k Δ θ = 1 Δ θ 3 ( q k + 3 3 q k + 2 + 3 q k + 1 q k )

3.4. Nonlinear Optimization

For the B-spline trajectory defined by a set of control points q 0 , q 1 , , q n in Section 3.3, a nonlinear optimization method is constructed in this subsection to further ensure the safety of the curve. The overall optimization function is defined as follows:
f t o t a l = λ 1 f s m + λ 2 f c + λ 3 ( f v + f a ) + λ 4 f s w + λ 5 f t ,
where f s m and f c are optimization terms for trajectory smoothness and collision distance, respectively. f v and f a are constrained optimization terms of velocity and acceleration, respectively. f s w and f t are optimization terms for the collision distance between ASVs and endpoint arrival, respectively. λ 1 , λ 2 , λ 3 , λ 4 and λ 5 are the designed weight coefficients.

3.4.1. Smoothness Penalty

The smoothness cost f s m is defined by a function that uses the integral of the squared jerk. According to (25), the jerk (i.e., the 3rd-order derivative of the position) of the trajectory is minimized to obtain a smooth trajectory. f s m is defined as follows:
f s m = k = 2 n 3 | | j k | | 2 = k = 2 n 3 | | q k + 2 3 q k + 1 + 3 q k q k 1 | | 2

3.4.2. Collision Distance Penalty

Initially, a naive B-spline trajectory is given regardless of whether the control points collide with an obstacle or not, as depicted by the black solid line passing though the obstacle in Figure 8. Therefore, the naive trajectory needs to be optimized by the A* algorithm to obtain a collision-free trajectory Γ .
Specifically, for control points q k on the colliding segment, points on the obstacle boundary denoted by p k are assigned with corresponding repulsive direction vectors v k . The distance between q k and p k is denoted by d k = ( q k p k ) T v k , as shown in Figure 8. In order to avoid generating p k , v k repeatedly, the B-spline trajectory can only be optimized when d k > 0 . By ensuring that d k is less than the safe distance s f , the control points can be kept away from the obstacles. In order to optimize the collision distance of the B-spline trajectory, a twice continuously differentiable function F c is applied as follows:
c k = s f d k F c = 0 c k 0 c k 3 0 < c k s f 3 s f c k 2 3 s f 2 c k + s f 3 s f < c k
The collision penalty function is denoted as f c and its derivative can be obtained as follows:
f c = k = 2 N 3 F c ( q k ) J c = δ f c δ q k = 3 c k v k c k s f 6 s f c k + 3 s f 2 s f < c k

3.4.3. Dynamic Feasibility Penalty

The dynamic feasibility can be ensured by constraining the high-order derivatives of B-spline trajectories at discrete control points q 0 , q 1 , , q n . Specifically, due to the convex hull property, constraining derivatives of the control points is sufficient for constraining the whole B-spline. Therefore, the constrained optimization terms of velocity and acceleration are given, respectively, as follows:
f v = k = 3 N 3 F v ( v k ) F v ( v k ) = 0 ( 0 v k v m a x ) ( v k v m a x ) 3 ( v m a x v k v j ) a 1 v k 2 + b 1 v k + c 1 ( v k v j ) f a = k = 4 N 3 F a ( a k ) F a ( a k ) = 0 ( 0 a k a m a x ) ( a k a m a x ) 3 ( a m a x a k a j ) a 2 a k 2 + b 2 a k + c 2 ( a k a j )
where a 1 , b 1 , c 1 , a 2 , b 2 , and c 2 are design parameters to ensure the second-order continuous differentiability of F v and F a . v m a x and a m a x are the derivative limits, respectively. v j and a j are the splitting points of quadratic and cubic curves, respectively. According to (24) and (25), the first-order derivatives corresponding to f v and f a are given, respectively, as follows:
δ v k δ q k = 1 Δ θ δ f v k δ q k = k = 3 N 3 3 δ v k δ q k ( v k v m a x ) 2 ( v m a x v k v j ) k = 3 N 3 2 δ v k δ q k a 2 v k + δ v k δ q m b 2 ( v k v j ) δ a k δ q k = 1 Δ θ 2 δ f a k δ q k = k = 3 N 3 3 δ a k δ q k ( a k a m a x ) 2 ( a m a x a k a j ) k = 3 N 3 2 δ a k δ q k a 2 a k + δ a μ δ q k b 2 ( a k a j )

3.4.4. Swarm Distance Penalty

An illustration of swarm distance penalty is depicted in Figure 9. Similar to the collision distance penalty and dynamic feasibility penalty, the swarm distance penalty function is formulated as follows:
d s w = ( q i , k q j , k ) 2 s μ = s s w d s w f s w = k = 0 1 / 2 N F s ( s μ ) F s w ( s μ ) = s μ 2 ( s μ 0 ) 0 ( s μ < 0 )
where d s w and s s w represent the actual distance between swarm trajectories and the preset safety distance, respectively; q i , k and q j , k represent the control point of the i-th and j-th trajectories at time k, respectively. The derivative of the swarm distance penalty function can be obtained as follows:
J s w = δ f s w δ q k = k = 0 1 / 2 N 2 ( q i , k q j , k ) ( s μ 0 ) 0 ( s μ < 0 )

3.4.5. Endpoint Arrival Penalty

To ensure that each ASV can reach the endpoint, the last three control points of the B-spline trajectory are set to q k 2 , q k 1 , q k , and k [ 2 , n ] , respectively. Let f t be the penalty function for reaching the endpoint; then, one has that
f t = ( 1 6 ( q k 2 + 4 q k 1 + q k ) G ) 2 ,
where G R 2 represents the endpoint. The first derivative of f t is obtained as
J t = δ f t δ q k = 1 3 ( q k 2 + 4 q k 1 + q k ) 2 G

3.5. Numerical Optimization

The nonlinear optimization problem has the following two characteristics. Firstly, the total penalty function f t o t a l will be updated in real time based on changes in the environment. Secondly, the quadratic optimization term about dynamic feasibility and obstacle avoidance distance will make f t o t a l closer to the quadratic form, which means that the utilization of Hessian information can significantly improve the speed of solution. However, in the process of trajectory planning for ASVs, solving the inverse Hessian information is prohibitive in real time. Therefore, the limited memory BFGS (L-BFGS) method is adopted to achieve accurate values through a series of iterations. The details of the optimization process are summarized in Algorithm 2.
Algorithm 2 Numerical Optimization
  • I n i t i a l i z e   x 0 , g 0 f ( x 0 ) , B 0 I , k 0
  • while   | | g k | | > δ   do
  •    d B k g k
  •    t L e w i s O v e r t o n l i n e s e a r c h
  •    x k + 1 x k + t d
  •    g k + 1 f ( x k + 1 )
  •    B k + 1 L B F G S ( g k + 1 g k , x k + 1 x k )
  •    k k + 1
  • end while
For an unconstrained optimization problem min f ( x ) , the iterative updating method for x is similar to Newton’s method. Specifically, the update of x is given as follows:
x k + 1 = x k t B k g k ,
where B k is updated at every iteration of the LBFGS method as summarized in Algorithm 3, g k represents the gradient at x k , and t is the step length obtained through the Lewis–Overton line search method, as summarized in Algorithm 4.
Algorithm 3 The L-BFGS algorithm
  • I n i t i a l i z e   s k = x k + 1 x k , y k = g k + 1 g k , ρ k = 1 / ( y k T s k ) , d g k
  • for   i = k 1 , k 2 , k m  do
  •    α i ρ i s i T d
  •    d d ρ i y i
  • end for
  • γ ρ k 1 y k 1 T y k 1
  • d d / γ
  • for  i = k m , k m + 1 , , k 1  do
  •    β ρ i y i T d
  •    d d + s i ( α i β )
  • end for
Algorithm 4 Lewis–Overton line search
  • I n i t i a l i z e   l 0 , u + , α α 0
  • if  S ( α )   f a i l s  then
  •    u α
  • else if  C ( α )   f a i l s  then
  •    l α
  • else
  •    r e t u r n α
  • end if
  • if  u < +  then
  •    α ( l + u ) / 2
  • else
  •    α 2 l
  • end if
It is noted that S ( α ) and C ( α ) in Algorithm 4 represent strong Wolfe conditions and weak Wolfe conditions, respectively, which are given as follows:
s t r o n g w o l f e c o n d i t i o n s : f ( x k ) f ( x k + t d ) c 1 t d T f ( x k ) | d T f ( x k + t d ) | | c 2 d T f ( x k ) |
w e a k w o l f e c o n d i t i o n s : f ( x k ) f ( x k + t d ) c 1 t d T f ( x k ) d T f ( x k + t d ) c 2 d T f ( x k )
where c 1 = 10 4 , c 2 = 0.9 .

3.6. Broadcast Network

Once an ASV generates a new trajectory in the complex environment, it will publish the trajectory to other ASVs through a broadcast network. Other ASVs will save the trajectory and generate their own safety trajectory when necessary based on the saved trajectory. Meanwhile, each ASV checks the collision condition when the neighbor’s trajectory is received from the network. If the received trajectory collides with the trajectories of other ASVs, this strategy can solve the problem. In addition, considering the increasing number of ASVs, each ASV should compare its current position with the trajectories received from neighboring ASVs before conducting trajectory planning.
Remark 1.
The current algorithm proposed in the article aims at obstacle avoidance and collision avoidance of multiple ASVs in complex static obstacle environments. When dynamic obstacles exist and enter the perception range of the ASV, it will stop and continuously replan until a passable path appears. Therefore, it would still be feasible for online application while meeting unknown moving obstacles. Nevertheless, in the case of unknown moving obstacles, it is necessary for the ASV to have strong braking ability when sailing at a fast speed. In our future work, for the case of unknown moving obstacles, we will try to add dynamic point cloud filtering to complete the reconstruction of the surrounding obstacle environment. Moreover, point cloud recognition and/or clustering algorithms will be added to determine the position and speed of unknown dynamic obstacles. With relevant constraint conditions constructed, the safety of autonomous navigation for multiple ASVs can be guaranteed.

4. Simulation Results

In this section, simulations are provided to illustrate the performance of the proposed distributed trajectory-planning method for multiple ASVs in an unknown environment with lots of static obstacles. Two cases are considered as follows:
Case 1: Swarm trajectory planning for four ASVs. In the simulation, swarm trajectories were planned for four ASVs by various planners in the same scenario. In particular, the proposed method is compared with the enhanced conflict-based search (ECBS) method and the A* + B spline method in terms of sail distance ( d s a i l ), sail time ( t s a i l ), and collision times per ASV.
Figure 10 shows trajectories planned by various planners in the same scenario with the same initial and final positions. It is observed from Table 1 and Figure 10 that all planners can generate collision-free trajectories, while the proposed one needs shorter sail distance and sail time compared to the other two planners. In particular, compared with the A* + B spline method, the proposed method solves the multi-objective optimization problem and achieves optimization subject to obstacle avoidance distance, curve smoothness, and collision avoidance distance between ASVs, allowing multiple ASVs to reach the specified target points in a shorter time and with lower energy loss. Meanwhile, compared with the ECBS method using global planning, the proposed one utilizes multiple local optimal trajectories to form a global trajectory, which better meets the requirements of real-time obstacle avoidance and generates shorter sail distance for short-range navigation. However, local planning using our method and the A* + B spline method generates a global path using multi-segment local trajectories, which is prone to getting stuck in local optima. This is also what we want to solve in the future.
Case 2: Swarm trajectory planning for seven ASVs. In this case, we conducted simulations on seven ASVs with a random map generated by the Berlin algorithm, where the generated trajectories are shown in Figure 11. The generated trajectories of seven ASVs in the xy-plane are shown in Figure 12. The evolution of the velocity and acceleration of the ASVs are shown in Figure 13 and Figure 14, respectively. Due to the existence of speed and acceleration optimization terms, the navigation speed and acceleration of ASVs do not exceed 2.5 m/s and 3 m/s2, respectively. The distances of each ASV to the goals, the distances of each ASV to the closest ASV, and the distances of each ASV to the closest obstacle are shown in Figure 15, Figure 16 and Figure 17, respectively. It is noted that the safety threshold of distance bewteen each ASV and the closest ASV is set to 0.4 m, and the safety threshold of distance between each ASV and the closest obstacle is set to 0.5 m. At the same time, due to the existence of boundary constraints, ASVs can reduce their speed and acceleration to 0 when they reach the goals. Moreover, when the target arrival constraint exists, the ASVs can reach the goals accurately.
To further verify the effectiveness of the proposed method, we conducted multiple simulations based on different numbers of ASVs under different obstacle coverage ranges and different initial conditions. Setting the obstacle coverage rate to 50% and 75%, setting obstacle shape roughness to 10% and 15%, and setting the number of ASVs to 5, 7, and 9, respectively, different simulations were conducted, as shown in Figure 18. As a result, one can see that the proposed method performs well under different obstacle coverage ranges and different initial conditions.

5. Conclusions

In this paper, a swarm trajectory-planning method is proposed for multiple ASVs using distributed asynchronous communication. The issues of curve smoothness, dynamic feasibility, collision avoidance between ASVs, and obstacle avoidance are transformed into a non-constrained nonlinear optimization problem. Efficient solutions are proposed for generating smooth and collision-free trajectories that ASVs can track. Since real-time local planning and collision-detection strategies have been adopted, it is effective to reduce the total navigation time and avoid obstacles in a marine environment. In the future, we will further address the issue of formation of ASVs subject to multiple constraints and static obstacles.

Author Contributions

Conceptualization, investigation, methodology, validation, formal analysis, A.W.; resources, data curation, writing—original draft preparation, L.L.; writing—review and editing, H.W.; visualization, supervision, B.H.; project administration, funding acquisition, Z.P. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded in part by the National Key R&D Program of China under Grant 2022ZD0119902, in part by the Key Basic Research of Dalian under Grant 2023JJ11CG008, in part by the National Natural Science Foundation of China under Grant 51979020, in part by the Top-notch Young Talents Program of China under Grant 36261402, in part by the Doctoral Scientific Research Foundation of Liaoning Province under Grant 2023-BS-155, in part by the Basic Scientific Research Project of Higher Education Department of Liaoning Province under Grant LJKZ0044, in part by the National Natural Science Foundation of China under Grant 62203081, in part by the Postdoctoral Research Foundation of China under Grant 2022M720628, and in part by Doctoral Science Research Foundation of Liaoning under Grant 2022-BS-097.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

Author Bing Han was employed by the company Shanghai Ship and Shipping Research Institute Co., Ltd.; The remaining authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

References

  1. Zheng, Z.; Sun, L. Path following control for marine surface vessel with uncertainties and input saturation. Neurocomputing 2016, 177, 158–167. [Google Scholar] [CrossRef]
  2. Annamalai, A.S.K.; Sutton, R.; Yang, C.; Culverhouse, P.; Sharma, S. Robust adaptive control of an uninhabited surface vehicle. J. Intell. Robot. Syst. 2014, 78, 319–338. [Google Scholar] [CrossRef]
  3. Peng, Z.; Gu, N.; Zhang, Y.; Liu, Y.; Wang, D.; Liu, L. Path-guided time-varying formation control with collision avoidance and connectivity preservation of under-actuated autonomous surface vehicles subject to unknown input gains. Ocean. Eng. 2019, 191, 106501. [Google Scholar] [CrossRef]
  4. Peng, Z.; Wang, D.; Li, T.; Han, M. Output-Feedback Cooperative Formation Maneuvering of Autonomous Surface Vehicles With Connectivity Preservation and Collision Avoidance. IEEE Trans. Cybern. 2019, 50, 2527–2535. [Google Scholar] [CrossRef] [PubMed]
  5. Wang, D.; Huang, J. Adaptive neural network control for a class of uncertain nonlinear systems in pure-feedback form. Automatica 2002, 38, 1365–1372. [Google Scholar] [CrossRef]
  6. Peng, Z.; Wang, D.; Zhang, H.; Sun, G. Distributed neural network control for adaptive synchronization of uncertain dynamical multiagent systems. IEEE Trans. Neural Netw. Learn. Syst. 2014, 25, 1508–1519. [Google Scholar] [CrossRef] [PubMed]
  7. Zhang, G.; Han, J.; Li, J.; Zhang, X. Distributed Robust Fast Finite-Time Formation Control of Underactuated ASVs in Presence of Information Interruption. J. Mar. Sci. Eng. 2022, 10, 1775. [Google Scholar] [CrossRef]
  8. Jing, Q.; Wang, H.; Hu, B.; Liu, X.; Yin, Y. A universal simulation framework of shipborne inertial sensors based on the ship motion model and robot operating system. J. Mar. Sci. Eng. 2021, 9, 900. [Google Scholar] [CrossRef]
  9. Wang, H.; Yin, Y.; Jing, Q. Comparative Analysis of 3D LiDAR Scan-Matching Methods for State Estimation of Autonomous Surface Vessel. J. Mar. Sci. Eng. 2023, 11, 840. [Google Scholar] [CrossRef]
  10. Lee, D.; Woo, J. Reactive Collision Avoidance of an Unmanned Surface Vehicle through Gaussian Mixture Model-Based Online Mapping. J. Mar. Sci. Eng. 2022, 10, 472. [Google Scholar] [CrossRef]
  11. Veitch, E.; Alsos, O.A. Human-centered explainable artificial intelligence for marine autonomous surface vehicles. J. Mar. Sci. Eng. 2021, 9, 1227. [Google Scholar] [CrossRef]
  12. Chen, L.; Hopman, H.; Negenborn, R.R. Distributed model predictive control for vessel train formations of cooperative multi-vessel systems. Transp. Res. Part C Emerg. Technol. 2018, 92, 101–118. [Google Scholar] [CrossRef]
  13. Geertsma, R.; Negenborn, R.; Visser, K.; Hopman, J. Design and control of hybrid power and propulsion systems for smart ships: A review of developments. Appl. Energy 2017, 194, 30–54. [Google Scholar] [CrossRef]
  14. Izzo, P.; Veres, S.M. Intelligent planning with performance assessment for Autonomous Surface Vehicles. In Proceedings of the OCEANS 2015, Genova, Italy, 18–21 May 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 1–6. [Google Scholar]
  15. Arzamendia, M.; Gregor, D.; Reina, D.; Toral, S.; Gregor, R. Evolutionary path planning of an autonomous surface vehicle for water quality monitoring. In Proceedings of the 2016 9th International Conference on Developments in eSystems Engineering (DeSE), Liverpool, UK, 31 August–2 September 2016; IEEE: Piscataway, NJ, USA, 2016; pp. 245–250. [Google Scholar]
  16. Willners, J.S.; Petillot, Y.R.; Patron, P.; Gonzalez-Adell, D. Kinodynamic Path Planning for Following and Tracking Vehicles. In Proceedings of the OCEANS 2018 MTS/IEEE, Charleston, SC, USA, 22–25 October 2018; IEEE: Piscataway, NJ, USA, 2018. [Google Scholar]
  17. Bitar, G.; Martinsen, A.B.; Lekkas, A.M.; Breivik, M. Two-Stage Optimized Trajectory Planning for ASVs Under Polygonal Obstacle Constraints: Theory and Experiments. IEEE Access 2020, 8, 199953–199969. [Google Scholar] [CrossRef]
  18. Shan, T.; Wang, W.; Englot, B.; Ratti, C.; Rus, D. A Receding Horizon Multi-Objective Planner for Autonomous Surface Vehicles in Urban Waterways. In Proceedings of the 2020 59th IEEE Conference on Decision and Control (CDC), Jeju, Republic of Korea, 14–18 December 2020; pp. 4085–4092. [Google Scholar]
  19. D’Amato, E.; Nardi, V.A.; Notaro, I.; Scordamaglia, V. A Visibility Graph approach for path planning and real-time collision avoidance on maritime unmanned systems. In Proceedings of the 2021 International Workshop on Metrology for the Sea; Learning to Measure Sea Health Parameters (MetroSea), Reggio Calabria, Italy, 4–6 October 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 400–405. [Google Scholar]
  20. Krell, E.; King, S.A.; Garcia Carrillo, L.R. Autonomous Surface Vehicle energy-efficient and reward-based path planning using Particle Swarm Optimization and Visibility Graphs. Appl. Ocean Res. 2022, 122, 103125. [Google Scholar] [CrossRef]
  21. Hu, S.; Tian, S.; Zhao, J.; Shen, R. Path Planning of an Unmanned Surface Vessel Based on the Improved A-Star and Dynamic Window Method. J. Mar. Sci. Eng. 2023, 11, 1060. [Google Scholar] [CrossRef]
  22. Liu, Z.; Zhang, Y.; Yu, X.; Yuan, C. Unmanned surface vehicles: An overview of developments and challenges. Annu. Rev. Control 2016, 41, 71–93. [Google Scholar] [CrossRef]
  23. Peng, Z.; Wang, J.; Wang, D.; Han, Q.L. An overview of recent advances in coordinated control of multiple autonomous surface vehicles. IEEE Trans. Ind. Inform. 2020, 17, 732–745. [Google Scholar] [CrossRef]
  24. Zhang, G.; Huang, C.; Li, J.; Zhang, X. Constrained coordinated path-following control for underactuated surface vessels with the disturbance rejection mechanism. Ocean. Eng. 2020, 196, 106725. [Google Scholar] [CrossRef]
  25. Liu, L.; Wang, D.; Peng, Z. Coordinated path following of multiple underacutated marine surface vehicles along one curve. ISA Trans. 2016, 64, 258–268. [Google Scholar] [CrossRef]
  26. Liu, L.; Wang, D.; Peng, Z.; Li, T.; Chen, C.L.P. Cooperative Path Following Ring-Networked Under-Actuated Autonomous Surface Vehicles: Algorithms and Experimental Results. IEEE Trans. Cybern. 2020, 50, 1519–1529. [Google Scholar] [CrossRef] [PubMed]
  27. Fossen, T.I.; Strand, J.P. Passive nonlinear observer design for ships using Lyapunov methods: Full-scale experiments with a supply vessel. Automatica 1999, 35, 3–16. [Google Scholar] [CrossRef]
  28. Loria, A.; Fossen, T.I.; Panteley, E. A separation principle for dynamic positioning of ships: Theoretical and experimental results. IEEE Trans. Control Syst. Technol. 2000, 8, 332–343. [Google Scholar] [CrossRef]
  29. Tan, G.; Wang, Z. Generalized dissipativity state estimation of delayed static neural networks based on a proportional-integral estimator with exponential gain term. IEEE Trans. Circuits Syst. II Express Briefs 2020, 68, 356–360. [Google Scholar] [CrossRef]
  30. Cui, R.; Yang, C.; Li, Y.; Sharma, S. Adaptive neural network control of AUVs with control input nonlinearities using reinforcement learning. IEEE Trans. Syst. Man Cybern. Syst. 2017, 47, 1019–1029. [Google Scholar] [CrossRef]
  31. Majid, M.H.A.; Arshad, M.R. Hydrodynamic Effect on V-Shape Pattern Formation of Swarm Autonomous Surface Vehicles (ASVs). Procedia Comput. Sci. 2015, 76, 186–191. [Google Scholar] [CrossRef]
  32. Wei, H.; Shi, Y. Mpc-based motion planning and control enables smarter and safer autonomous marine vehicles: Perspectives and a tutorial survey. IEEE/CAA J. Autom. Sin. 2023, 10, 8–24. [Google Scholar] [CrossRef]
  33. Negenborn, R.; De Schutter, B.; Hellendoorn, J. Multi-agent model predictive control for transportation networks: Serial versus parallel schemes. Eng. Appl. Artif. Intell. 2008, 21, 353–366. [Google Scholar] [CrossRef]
  34. Negenborn, R.; Maestre, J. Distributed Model Predictive Control: An Overview and Roadmap of Future Research Opportunities. IEEE Control Syst. Mag. 2014, 34, 87–97. [Google Scholar]
  35. Ferranti, L.; Lyons, L.; Negenborn, R.R.; Keviczky, T.; Alonso-Mora, J. Distributed Nonlinear Trajectory Optimization for Multi-Robot Motion Planning. IEEE Trans. Control Syst. Technol. 2023, 31, 809–824. [Google Scholar] [CrossRef]
  36. Ouyang, Z.; Wang, H.; Huang, Y.; Yang, K.; Yi, H. Path planning technologies for USV formation based on improved RRT. Chin. J. Ship Res. 2020, 15, 18–24. [Google Scholar]
  37. Yang, J.M.; Tseng, C.M.; Tseng, P. Path planning on satellite images for unmanned surface vehicles. Int. J. Nav. Archit. Ocean. Eng. 2015, 7, 87–99. [Google Scholar] [CrossRef]
  38. Jin, X.; Er, M.J. Cooperative path planning with priority target assignment and collision avoidance guidance for rescue unmanned surface vehicles in a complex ocean environment. Adv. Eng. Inform. 2022, 52, 101517. [Google Scholar] [CrossRef]
  39. Niu, H.; Savvaris, A.; Tsourdos, A.; Ji, Z. Voronoi-visibility roadmap-based path planning algorithm for unmanned surface vehicles. J. Navig. 2019, 72, 850–874. [Google Scholar] [CrossRef]
  40. Cui, R.X.; Li, Y.; Yan, W.S. Mutual information-based multi-AUV path planning for scalar field sampling using multidimensional RRT. IEEE Trans. Syst. Man Cybern. Syst. 2016, 46, 993–1004. [Google Scholar] [CrossRef]
  41. Dolgov, D.; Thrun, S.; Montemerlo, M.; Diebel, J. Path planning for autonomous vehicles in unknown semi-structured environments. Int. J. Robot. Res. 2010, 29, 485–501. [Google Scholar] [CrossRef]
Figure 1. An illustration of trajectory planning for multiple ASVs to reach the designated locations. The dashed lines represent trajectories that have not yet been optimized, the solid lines indicate the optimized trajectories, and the black obstacles represent the complex static environments.
Figure 1. An illustration of trajectory planning for multiple ASVs to reach the designated locations. The dashed lines represent trajectories that have not yet been optimized, the solid lines indicate the optimized trajectories, and the black obstacles represent the complex static environments.
Jmse 12 00298 g001
Figure 2. The trajectory-planning framework for multiple ASVs.
Figure 2. The trajectory-planning framework for multiple ASVs.
Jmse 12 00298 g002
Figure 3. An illustration of the occupied grid map in a complex and obstacle-rich environment. The colored point cloud part represents the environmental information perceived by the ASV, and the gray part represents the unknown obstacle environment.
Figure 3. An illustration of the occupied grid map in a complex and obstacle-rich environment. The colored point cloud part represents the environmental information perceived by the ASV, and the gray part represents the unknown obstacle environment.
Jmse 12 00298 g003
Figure 4. A schematic diagram of the kinodynamic path searching. The blue dashed line represents the motion primitives obtained by expanding the state point by Equation (14), and the black curve represents the optimal curve selected based on the heuristic function.
Figure 4. A schematic diagram of the kinodynamic path searching. The blue dashed line represents the motion primitives obtained by expanding the state point by Equation (14), and the black curve represents the optimal curve selected based on the heuristic function.
Jmse 12 00298 g004
Figure 5. An illustration of the swath along trajectory. The red rectangle represents the area occupied by the ASV. The black area represents complex static obstacles.
Figure 5. An illustration of the swath along trajectory. The red rectangle represents the area occupied by the ASV. The black area represents complex static obstacles.
Jmse 12 00298 g005
Figure 6. Schematic diagram of collision checking during autonomous navigation of an ASV. The red cube area represents the area occupied by the ASV, while the gray area represents complex static obstacles.
Figure 6. Schematic diagram of collision checking during autonomous navigation of an ASV. The red cube area represents the area occupied by the ASV, while the gray area represents complex static obstacles.
Jmse 12 00298 g006
Figure 7. The convex hull property of B-spline curves with gray points representing the control points. Each segment of the curve is included in the convex hull constructed by every four control points.
Figure 7. The convex hull property of B-spline curves with gray points representing the control points. Each segment of the curve is included in the convex hull constructed by every four control points.
Jmse 12 00298 g007
Figure 8. The black solid line passing though the obstacle represents the naive B-spline trajectory to be optimized. The red solid line represents the edge of the obstacle obtained by A* search.
Figure 8. The black solid line passing though the obstacle represents the naive B-spline trajectory to be optimized. The red solid line represents the edge of the obstacle obtained by A* search.
Jmse 12 00298 g008
Figure 9. An illustration of swarm distance penalty. The red line represents the i-th trajectory, while the green line represents the j-th trajectory. q i , k and q j , k represent the control points corresponding to the i-th and j-th trajectories, respectively, at time k.
Figure 9. An illustration of swarm distance penalty. The red line represents the i-th trajectory, while the green line represents the j-th trajectory. q i , k and q j , k represent the control points corresponding to the i-th and j-th trajectories, respectively, at time k.
Jmse 12 00298 g009
Figure 10. Trajectories planned by various planners in the same scenario.
Figure 10. Trajectories planned by various planners in the same scenario.
Jmse 12 00298 g010
Figure 11. Seven ASVs conduct autonomous navigation in a simulated environment. (ac) represent the top view, left-side view, and right-side view, respectively.
Figure 11. Seven ASVs conduct autonomous navigation in a simulated environment. (ac) represent the top view, left-side view, and right-side view, respectively.
Jmse 12 00298 g011
Figure 12. The trajectories of seven ASVs in the xy-plane.
Figure 12. The trajectories of seven ASVs in the xy-plane.
Jmse 12 00298 g012
Figure 13. The speed of seven ASVs with each type of line corresponding to one ASV.
Figure 13. The speed of seven ASVs with each type of line corresponding to one ASV.
Jmse 12 00298 g013
Figure 14. The acceleration of seven ASVs with each type of line corresponding to one ASV.
Figure 14. The acceleration of seven ASVs with each type of line corresponding to one ASV.
Jmse 12 00298 g014
Figure 15. The distances of each ASV to the goals with each type of line corresponding to one ASV.
Figure 15. The distances of each ASV to the goals with each type of line corresponding to one ASV.
Jmse 12 00298 g015
Figure 16. The distances of each ASV to the closest ASV with each type of line corresponding to one ASV.
Figure 16. The distances of each ASV to the closest ASV with each type of line corresponding to one ASV.
Jmse 12 00298 g016
Figure 17. The distances of each ASV to the closest obstacle with each type of line corresponding to one ASV.
Figure 17. The distances of each ASV to the closest obstacle with each type of line corresponding to one ASV.
Jmse 12 00298 g017
Figure 18. Autonomous navigation of different numbers of ASVs under different obstacle coverage ranges and different initial conditions (Left: Top View, Right: Left-side View).
Figure 18. Autonomous navigation of different numbers of ASVs under different obstacle coverage ranges and different initial conditions (Left: Top View, Right: Left-side View).
Jmse 12 00298 g018
Table 1. Comparisons between different planners.
Table 1. Comparisons between different planners.
Planner d sail (m) t sail (s)Collision
ECBS12.611.60
A* + B spline13.69.20
Proposed10.68.30
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wang, A.; Li, L.; Wang, H.; Han, B.; Peng, Z. Distributed Swarm Trajectory Planning for Autonomous Surface Vehicles in Complex Sea Environments. J. Mar. Sci. Eng. 2024, 12, 298. https://doi.org/10.3390/jmse12020298

AMA Style

Wang A, Li L, Wang H, Han B, Peng Z. Distributed Swarm Trajectory Planning for Autonomous Surface Vehicles in Complex Sea Environments. Journal of Marine Science and Engineering. 2024; 12(2):298. https://doi.org/10.3390/jmse12020298

Chicago/Turabian Style

Wang, Anqing, Longwei Li, Haoliang Wang, Bing Han, and Zhouhua Peng. 2024. "Distributed Swarm Trajectory Planning for Autonomous Surface Vehicles in Complex Sea Environments" Journal of Marine Science and Engineering 12, no. 2: 298. https://doi.org/10.3390/jmse12020298

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop