Hostname: page-component-586b7cd67f-r5fsc Total loading time: 0 Render date: 2024-11-27T20:25:33.574Z Has data issue: false hasContentIssue false

Path-following and collision-avoidance guidance of unmanned sailboats based on beetle antennae search optimization

Published online by Cambridge University Press:  30 March 2023

Yingjie Deng
Affiliation:
School of Mechanical Engineering, Yanshan University, Qinhuangdao 066004, China
Tao Ni*
Affiliation:
School of Vehicle and Energy, Yanshan University, Qinhuangdao 066004, China
Zhuxin Zhang
Affiliation:
School of Vehicle and Energy, Yanshan University, Qinhuangdao 066004, China
Jianwei Wang
Affiliation:
School of Mechanical Engineering, Yanshan University, Qinhuangdao 066004, China
*
*Corresponding author. E-mail: [email protected]
Rights & Permissions [Opens in a new window]

Abstract

There are few studies on the intelligent guidance of unmanned sailboats, which should coordinate pluralistic tasks at sea in the nature of its maneuvring intractability. To ensure the algorithmic practicability, this paper proposes a path-following and collision-avoidance guidance approach of unmanned sailboats with total formulaic description. The risk-detecting mechanism is fabricated by setting a circular detecting zone and using the time to the closest point of approach. Then, the risk of collision, the path deviation, the speed loss, and the course loss can be judged by constructing the cost functions and applying the distance to closest point of approach. The optimized heading angle is deemed as the one minimizing the aggregate cost functions, which is sought by applying and improving the beetle antennae search (BAS) algorithm. In the proposed modified BAS, the searching step is redesigned to enhance the searching efficiency. To ensure the convergence of the real heading angle to the reference, the backstepping-based control law is fabricated for the high-order sailboat model and in the linear form. The control parameters are offline optimized through the modified BAS. Compared with the adaptive control, this controller can guarantee more computation simplicity and the optimized control performance. Finally, simulation corroborates that the sailboat can successfully complete path following and collision avoidance while encountering multiple static and moving obstacles under the proposed schemes.

Type
Research Article
Copyright
© The Author(s), 2023. Published by Cambridge University Press

1. Introduction

The unmanned sailboat is a special marine autonomous surface ship (MASS) propelled by the wind sail rather than the electric motor or the internal-combustion engine. This fact makes it more suitable for long-term and oceangoing tasks in lighter weight and smaller size, such as trophic cyclone monitoring and oceanic data gathering. Moreover, the sailboat can sail silently and serve for military action and marine animal surveillance [Reference Rynne and von Ellenrieder1]. Routing, guidance, and control are essential to steer the unmanned sailboats autonomously. However, due to changeable weather and intricate sea environment, steering a sailboat is a challenging issue [Reference Silva, Friebe, Malheiro, Guedes, Ferreira and Waller2]. Especially, the sailboat must travel by the zigzag leg to prevent its stall in downwind and upwind situations, namely tacking and jibing maneuvers. Ideally, the sailboat should follow the reference path. However, the emergence of obstacles may provoke the contradiction between path following and collision avoidance in the light of security. How to arrange the above tasks simultaneously is worthy of discussion.

To ensure the effective navigation of sailboats in actual sea environment, the real-time routing and guidance approaches are designed and working as a pilot. Routing determines the real-time reference path of the sailboat depending on the meteorological and obstacle information, where guidance directly derives the ideal heading angle and speed of the ship. Current routing outcomes of marine surface crafts learnt much from planar mobile robots, such as the A * algorithm, the potential field method, and the ship domain method. In refs. [Reference Erckens, Büsser, Pradalier and Siegwart3Reference Zyczkowski and Szlapczynski5], the meteorological information was incorporated into routing graph, where A * algorithm was employed to calculate the optimal long-term route; ref. [Reference Alves and Cruz6] proposed a mission programming system, where the new waypoints were created by executing the sequence of actions during the accomplishment of missions; ref. [Reference Życzkowski, Krata and Szlapczyński7] involved wave effect on the speed polar diagram, and the reference path can be decided by the Dijkstra algorithm with a multicriteria objective function. To find the compromise among conflicting objectives, the Pareto-optimal set of routes was made by solving multiobjective optimization problems; for example, routing optimization was proposed with the drifting ice in ref. [Reference Zvyagina and Zvyagin8] and the customized constraints in ref. [Reference Szlapczynska9]. In ref. [Reference Tynan10], an attractor/repellor routing approach of unmanned sailboat was proposed, which provided the possible headings by using an array of waypoint attractors and repellors. In ref. [Reference Chen, Chen, Ma, Zhang and Wang11], the appropriate reference path of a smart ship can be found by using Q-learning after sufficient training. Nevertheless, there are some mutual limitations in the above routing results. First, routing was all deployed on a graph composed of grids, which implies the limited selections on the ship’s directions. Second, the routing method was not highly adaptable to the changeable environment, for example, the coming ships and the erratic weather.

Compared with routing, guidance can directly generate the reference heading direction and speed of the ship, which is more acceptable to the controller. Ref. [Reference Stelzer and Pröll12] proposed a velocity-made-good guidance method, where the reference heading angle was to ensure the maximum velocity of the sailboat towards the target. However, this method did not consider collision avoidance. Refs. [Reference Pêtrès, Romero-Ramirez and Plumet13Reference Saoud, Hua, Plumet and Amar15] introduced the potential field method to the guidance of unmanned sailboats, where the reference heading angle faced towards the inverse gradient direction by adding up the attractive field of the target and the repulsive fields of wind and obstacles. In ref. [Reference Less’ard-Springett, Friebe and Gallic16], the voter-based guidance algorithm was introduced by choosing the maneuver with maximum votes. The above research only considered the waypoint tracking, whereas in nautical practice, path following of great circle routes is most often concerned. For this purpose, the line-of-sight (LOS) guidance was first introduced to unmanned sailboats in ref. [Reference Elkaim and Kelbley17], where the lane with a fixed width was added to constrain tacking and jibing maneuvers. With the complete mathematical description, the parametric LOS guidance of unmanned sailboats was first proposed in ref. [Reference Deng, Zhang and Zhang18], where a sign function described the switching of reference heading angles between tacking and jibing. Concerned with path following of a curved reference path, ref. [Reference Deng, Zhang, Zhang and Huang19] proposed a parallel guidance algorithm of unmanned wing-sailed catamarans. The above path following guidance of sailboats did not consider collision avoidance. Although there were plenty of outcomes on the collision avoidance of common powered ships, such as the dynamic virtual ship guidance in ref. [Reference Zhang, Deng, Zhang and Huang20] and the velocity obstacle method in ref. [Reference Wang, Zhang and Li21], they cannot be applied to the sailboat. Most importantly, the sailboat is not self-propelled, the speed of which strongly relies on the wind. By all accounts, there was seldom research on a uniform guidance framework for the sailboat, which synthesized path following and collision avoidance all together.

According to the separate principle [Reference Corno, Formentin and Savaresi22], the rudder solely dominates the turning of the sailboat, and the sail can be adjusted in the principle of the maximum speed. With the reference heading provided by the guidance module, the rudder controller is designed to compel the convergence of the actual heading to the reference. In ref. [Reference Stelzer, Pröll and John23], both the rudder and the sail controllers were designed as the fuzzy logic systems (FLS), which were fabricated through the expertise of skippers such that the rollover risk can be eliminated. In refs. [Reference Saoud, Hua, Plumet and Amar15, Reference Cruz and Alves24, Reference Viel, Vautier, Wan and Jaulin25], the rudder controller was constructed by using PID control, which was classical and easy. However, PID was not adept in dealing with unknown model dynamics. In ref. [Reference Xiao, Fossen and Jouffroy26], the $\mathcal{L}_1$ adaptive control was employed in the Nomoto model of the sailboat, and nice robustness to disturbances was exhibited. In ref. [Reference Xiao and Jouffroy27], robust control was also achieved by using backstepping with tuning parameters. However, the control performance of robust control relied much on the tuning parameters. How to select optimal parameters was not addressed. In refs. [Reference Deng, Zhang, Zhang and Huang19, Reference Deng, Zhang, Zhang and Hu28], the FLSs were to approximate unknown model dynamics, and event-triggered fuzzy control was fabricated for sailboats. Although the unknown model dynamics can be compensated, these adaptive control was computationally complicated. For the marine crafts cruising in diverse sea environment, it is urgent to strike a balance between adaptability and control conciseness.

Faced with the above challenges, this paper proposed a succinct guidance and control framework of the sailboat. The risk detecting mechanism is fabricated by using time to the closest point of approach (TCPA). Corresponding to various tasks, the cost functions are constructed by complying with the nautical practice and involving distance to closest point of approach (DCPA). By improving and applying BAS, the optimal heading angle can be searched by minimizing the aggregate cost functions. Using the backstepping method, the controller is designed in the linear form and with constant control parameters. The control parameters are optimized through the BAS, such that the optimized control performance is achieved. Compared with the existing work, the novelties are summarized as follows.

1. The proposed guidance approach is totally described in mathematics without linguistic rules and grids. Compared with the routing results in refs. [Reference Erckens, Büsser, Pradalier and Siegwart3Reference Zyczkowski and Szlapczynski5, Reference Życzkowski, Krata and Szlapczyński7, Reference Tynan10], the proposed scheme is easier for programing. Moreover, the proposed scheme considers the path following rather than the waypoint tracking, which has higher feasibility.

2. For the unmanned sailboat, the proposed guidance approach synthesizes the path following, the tacking and jibing maneuvers, and the collision avoidance of both dynamic and static obstacles altogether. Compared with the potential field methods in refs. [Reference Pêtrès, Romero-Ramirez and Plumet13Reference Saoud, Hua, Plumet and Amar15], it requires no prior information of obstacles and wind. Compared with the path following principles in refs. [Reference Elkaim and Kelbley17Reference Deng, Zhang, Zhang and Huang19], it has the better adaptability to diverse traffic conditions for collision avoidance.

3. The proposed controller requires no adaptive parameters, and its control gains can be trained offline. Compared with the adaptive controllers in refs. [Reference Deng, Zhang and Zhang18, Reference Xiao, Fossen and Jouffroy26, Reference Deng, Zhang, Zhang and Hu28, Reference Deng, Zhang, Gong and Ni29], the computation burden is largely reduced. Compared with the PID control in refs. [Reference Saoud, Hua, Plumet and Amar15, Reference Cruz and Alves24, Reference Viel, Vautier, Wan and Jaulin25] and the robust control in refs. [Reference Xiao and Jouffroy27], the control performance can be optimized by modifying the BAS algorithm.

2. Modified BAS and FLS approximation

The BAS method is a meta-heuristic optimization algorithm mimicking the foraging behavior of beetles, which was first presented in ref. [Reference Jiang and Li30]. For a cost function of $F(x)=f(x)+\lambda \sum _{j=1}^kh_j(x)$ , the goal is to minimize $F(x)$ by seeking the states $x$ in $k$ inequality constraints $g_j(x)\leq 0$ , where $\lambda$ is a very large positive constant and $h_j(x)$ is the penalty function described as

\begin{align*} h_j(x)=\left \{\begin{array}{l}1,\,g_j(x)\gt 0\\[5pt] 0,\,g_j(x)\leq 0\end{array}\right. \end{align*}

The current searching step is uniformly marked with a superscript $t$ . Then, define $x_r$ and $x_l$ as searching states at the right and left antennae respectively, which have the form of

(1) \begin{align} \left \{\begin{array}{l} x_r= x^t+d^t\vec{b}\\[5pt] x_l= x^t-d^t\vec{b} \end{array}\right. \end{align}

where $d^t$ is the current searching length and $\vec{b}$ is a random direction vector with the identical length of $x$ . Then, the states in the next searching step is determined as

(2) \begin{align} x^{t+1}=x^t+\delta ^t\vec{b}\textrm{sign}[F(x_l)-F(x_r)] \end{align}

where $\delta ^t=c_0d^t$ with $0\lt c_0\lt 1$ is the moving length. Let $d^{t+1}=c_1d^t$ with $0\lt c_1\lt 1$ and $d^1\gt 0$ . Then, the searching can be finished while $d^{t+1}$ is less than a preset positive threshold.

In the above customary BAS method proposed by ref. [Reference Jiang and Li30], we note a problem that $x^{t+1}$ may be worse than $x^t$ as it was only selected between $x_r$ and $x_l$ . To improve the searching performance, we can modify (2) as

(3) \begin{align} x^{t+1}=\min \left\{x^t,x^t+\delta ^t\vec{b}\textrm{sign}[F(x_l)-F(x_r)]\right\} \end{align}

This is referred to as “modified BAS”.

As was widely used in adaptive fuzzy control, any continuous nonlinear function in a compact set can be expressed by a FLS, namely

(4) \begin{align} f_1(x)=W^{\textrm{T}}\varphi (x)+\varepsilon (x) \end{align}

where $f_1(x)$ is the 1-dimensional nonlinear function defined in $x\in \Omega _x=\{x|x^{\textrm{T}}x\leq \Delta _x\}$ , $W$ is the constant vector of fuzzy weights, and $\varphi (x)$ is the vector of basis functions satisfying $\|\varphi (x)\|\lt 1$ . $\varepsilon (x)$ is the approximation error bounded by $|\varepsilon (x)|\lt \bar{\varepsilon }$ , and $\bar{\varepsilon }$ can be tuned to an arbitrarily small value by selecting appropriate $W$ and $\varphi (x)$ .

3. Guidance

The proposed guidance principle should reconcile tacking and jibing maneuver, path following and collision avoidance of unmanned sailboats. Here, we set a circular detecting zone of the unmanned sailboat with its planar position as the circle centre, which implies the detecting ability of apparatuses such as the radar and the sonar. Only the obstacles within the detecting zone is addressed. Corresponding to different navigation tasks, four cost functions were fabricated and then synthesized. Illustration of variables and navigation tasks is shown in Fig. 1. It should be noted that the heading direction of the sailboat therein only exhibits one of possible reference heading directions, where its real heading angle marked as $\psi$ is not shown.

Figure 1. Illustration of variables and navigation tasks.

3.1. Collision avoidance

The sway speeds are omitted. If the sailboat has the reference heading direction in Fig. 1 and the reference heading angle is denoted as $\psi _d$ , it will have the surge speed $u_1$ according to the speed polar diagram and the included angle towards the selected obstacle at $(x_o,y_o)$ marked as $\psi _1$ , which is calculated by

(5) \begin{align} \psi _1=&\arctan\!\left (\frac{y_o-y}{x_o-x}\right )+90^\circ \times (1-\textrm{sign}(x_o-x)) \times \textrm{sign}(y_o-y)-\psi _d \end{align}

The sign function in (5) can guarantee that the bearing angle of $(x_o,y_o)$ is always located within $(\!-\!180^\circ,180^\circ ]$ . By using the onboard sensing devices like radar, the obstacle can be detected to have the surge speed $u_2$ and the included angle away from the sailboat $\psi _2$ . The distance between the sailboat and the obstacle is calculated as $d_0=\sqrt{(x-x_o)^2+(y-y_o)^2}$ . According to geometry, the future distance $d$ from now on and after $\Delta t$ is calculated by

(6) \begin{align} d^2=(d_0-a_1\Delta t)^2+a_2^2\Delta t^2 \end{align}

where it has $a_1=u_1\cos\!(\psi _1)-u_2\cos\!(\psi _2)$ and $a_2=u_1\sin (\psi _1)-u_2\sin (\psi _2)$ . The smallest $d$ which is known as DCPA and marked as $D_{CPA}$ , occurs at the TCPA which is marked as $T_{CPA}$ , namely $\Delta t=T_{CPA}$ . According to (6), it yields

(7) \begin{align} T_{CPA}=\frac{d_0a_1}{a_1^2+a_2^2} \end{align}

By substituting (7)–(6), it obtains

(8) \begin{align} D_{CPA}=\frac{d_0a_2}{\sqrt{a_1^2+a_2^2}} \end{align}

All the obstacles within the detecting zone should be evaluated through (7) and (8). The obstacles with $T_{CPA}\leq 0$ (i.e. blue obstacles in Fig. 1) should be exempted at first, and only the obstacles with $T_{CPA}\gt 0$ (i.e. green obstacles in Fig. 1) are considered. Assuming there are totally $n$ obstacles with $T_{CPA}\gt 0$ and the concerned obstacle is marked with the superscript $i$ , the cost function is fabricated as

(9) \begin{align} f_1(\psi _d)=\sum _{i=1}^n\frac{\bar{d}(u^i_2)}{D^i_{CPA}} \end{align}

where $\bar{d}(u_2^i)$ is the dead-zone operator designed as

\begin{align*} \bar{d}(u_2^i)=\left \{\begin{array}{l}k_1|u_2^i|,\,|u_2^i|\gt \bar{u}_2\\[5pt] k_1\bar{u}_2,\,|u_2^i|\leq \bar{u}_2 \end{array}\right. \end{align*}

where $k_1$ and $\bar{u}_2$ are positive constants.

3.2. Path following

Path following is the radical navigation goal of the unmanned sailboat. As shown in Fig. 1, LOS guidance is adopted here. A fixed look-forward distance $\Delta$ is put along the reference path from the foot of the perpendicular, which gets the target point $(x_p,y_p)$ . Then, the reference heading angle of path following can be rendered as

(10) \begin{align} \psi _{pf}=\arctan\!\left (\frac{y_p-y}{x_p-x}\right )+90^\circ \times (1-\textrm{sign}(x_p-x)) \times \textrm{sign}(y_p-y) \end{align}

Similar with (5), the sign function in (10) can also ensure that $\psi _{pf}\in (\!-\!180^\circ,180^\circ ]$ . The reference path is switched while the foot of the perpendicular reaches the next waypoint.

It is clear that if $\psi$ is located within the zone of $\beta$ , path following can still be achieved. If $\psi$ is located within the zone of $180^\circ -\beta$ , path following will be discounted and even cannot be achieved. In other situations, the sailboat will back off, which is unacceptable. Thus, while the sailboat is located in the right of the reference path (namely the situation in Fig. 1), the cost function is fabricated as

(11) \begin{align} f_2(\psi _d)=\left \{\begin{array}{l} k_2(\psi _{pf}-\psi _d),\,\psi _d\in [\psi _{pf}-\beta,\psi _{pf}]\\[5pt] g_2(|y_e|)\times (\psi _d-\psi _{pf}),\,\psi _d\in (\psi _{pf},\psi _{pf}+180^\circ -\beta ]\\[5pt] +\infty,\,\textrm{otherwise} \end{array}\right. \end{align}

While the sailboat is located in the left of the reference path, the cost function is rewritten as

(12) \begin{align} f_2(\psi _d)=\left \{\begin{array}{l} k_2(\psi _d-\psi _{pf}),\,\psi _d\in [\psi _{pf},\psi _{pf}+\beta ]\\[5pt] g_2(|y_e|)\times (\psi _{pf}-\psi _d),\,\psi _d\in [\psi _{pf}-180^\circ +\beta,\psi _{pf})\\[5pt] +\infty,\,\textrm{otherwise} \end{array}\right. \end{align}

where $k_2$ is a positive constant, $y_e$ is the cross-tracking error, and $g_2(|y_e|)$ is a dead-zone operator described as

(13) \begin{align} g_2(|y_e|)=\left \{\begin{array}{l} k_2,\,|y_e|\lt \bar{y}\\[7pt] \dfrac{k_2}{\bar{y}}|y_e|,\,|y_e|\geq \bar{y} \end{array}\right. \end{align}

where $\bar{y}$ is a positive threshold. This suggests that sailing off course is acceptable while $|y_e|$ is small.

3.3. Speed loss

In the steady wind, the relationship between $u_1$ and $\alpha$ in Fig. 1 can be depicted by the speed polar diagram, which has the shape like an apple. Figure 2 gives a example. It is clear in Fig. 2 that the curve of $u_1$ is symmetric for $\alpha \in [\!-\!180^\circ,0^\circ ]$ and $\alpha \in [0^\circ,180^\circ ]$ , and $u_1$ has a maximum value marked as $\bar{u}_1$ .

Figure 2. Speed polar diagram of a sailboat.

To guarantee existence of $u_1$ , the cost function of speed loss is constructed as

(14) \begin{align} f_3(\psi _d)=k_3\frac{\bar{u}_1}{|u_1|} \end{align}

where $k_3$ is a tuning parameter.

3.4. Course loss

Large switching of $\psi _d$ will lead to speed loss and deterioration of control effect. As the BAS algorithm is carried out step by step, the calculation of $\psi _d$ must be discrete in the proposed scheme. Complying with the actual operational nature of the processor, it is presumed that the calculation period is a constant $t_s$ . The current instant can be expressed by $t=i*t_s+t_0$ , where the integer $i$ is the current accumulative calculation time and $t_0$ is the initial calculation instant. Then, the last calculation instant can be expressed as $t-t_s$ or $(i-1)*t_s+t_0$ . The cost function of course loss is fabricated as

(15) \begin{align} f_4(\psi _d)=k_4|\psi _d-\psi (t-t_s)| \end{align}

where $k_4$ is a positive tuning parameter.

3.5. Synthesis and optimization

The synthesized cost function is fabricated as

(16) \begin{align} F(\psi _d)=f_1(\psi _d)+f_2(\psi _d)+f_3(\psi _d)+f_4(\psi _d) \end{align}

Then, the guidance problem becomes the 1-dimensional BAS optimization of (16) by using (1)–(3). According to (2), $x^1$ is assigned as $\psi (t-t_s)$ . By assigning appropriate values to $d^1$ , $c_0$ and $c_1$ , the $\psi _d$ achieving the smallest $F(\psi _d)$ can be found at $t$ .

Remark 1. The proposed scheme did not consider the collision avoidance regulations at sea, which is referred to as the COLREGs rules enacted by the international maritime organization (IMO). The COLREGs have stipulated the corresponding responses of the sailboat to different kinds of coming ships. For example, the sailboat will stand on for a power-driven ship in any case, but may give way for another coming sailboat. Thus, the involvement of the COLREGs demands the identification mechanism at first. Moreover, the coming ship may not abide by the COLREGs. In such cases, the proposed scheme is more advantageous for its initiative to avoid collision.

Remark 2. In the proposed guidance scheme, the selection of tuning parameters $k_1\sim k_4$ depends on the actual needs of the current traffic condition. For example, if the sailboat is sailing in the crowded waters, $k_1$ should be tuned up to increase its ability of collision avoidance; if the sailboat is sailing in the open waters, $k_2$ should be tuned up to facilitate the path following; if the sailboat is sailing with the weak wind, $k_3$ and $k_4$ should be tuned up to prevent from the speed loss.

4. Control design

4.1. Linear backstepping controller

According to refs. [Reference Deng, Zhang, Zhang and Huang19, Reference Xiao, Fossen and Jouffroy26], the heading angle of an unmanned sailboat can be controlled through

(17) \begin{align} \left \{\begin{array}{l} \dot{\psi }=r\\[5pt] \dot{r}=\dfrac{N_S}{m_r}+\dfrac{N_H}{m_r}+\dfrac{N_R}{m_r}-\dfrac{d_r}{m_r}|r|r\\[12pt] \dot{\delta }=-\dfrac{1}{T}\delta +\dfrac{1}{T}\delta _c \end{array}\right. \end{align}

where $r$ is the yaw rate, $\delta$ is the real rudder angle limited in $[\!-\!35^\circ,+35^\circ ]$ , and $\delta _c$ is the command rudder angle treated as the control input. $N_S$ denotes the torque generated by the sail, which is associated with the true wind and the sheeting angle of the sail. $N_H=N_{ur}u_1r+N_rr$ denotes the torque generated by the hull, where $N_{ur}$ and $N_r$ are hydrodynamic derivatives. $d_r$ is the damping coefficient in the yaw motion, and $T$ is the time constant. $N_R$ is treated as the dominant torque generated by the rudder, which is written as

(18) \begin{align} N_R=\frac{1}{2}\rho _wAf_\alpha u_1^2|x_r|\sin\!(\delta ) \end{align}

where $\rho _w$ is the density of water, $A$ is the rudder area, $f_\alpha$ is the slope of lift at $\delta =0$ , and $x_r$ is the distance from the rudder centroid to the gravity center of the whole sailboat. For simplicity, (18) is reexpressed as $N_R=c_rm_r\sin (\delta )$ . It is clear that $c_r\gt 0$ and is bounded.

Denote the tracking error of $\psi$ as $\psi _e=\psi -\psi _d$ . According to the backstepping method, the virtual control law of $r$ is designed as $\alpha _r=-k_\psi \psi _e$ , where $k_\psi$ is a positive tuning parameter. Denote the tracking error of $r$ as $r_e=r-\alpha _r$ . Differentiating $\psi _e$ along with (17) and $\alpha _r$ , it renders

(19) \begin{align} \dot{\psi }_e=-k_\psi \psi _e+r_e-\dot{\psi }_d \end{align}

By using (4), it can be expressed that $(N_H+N_S-d_r|r|r)/m_r-\dot{\alpha }_r=W^{\textrm{T}}\varphi (u_1,r)+\varepsilon$ . Invoking (17), it gives $\dot{r}_e=c_r\sin (\delta )+W^{\textrm{T}}\varphi +\varepsilon$ . According to backstepping, the virtual control law of $\sin (\delta )$ is designed as $\alpha _{\sin \delta }=-k_rr_e$ , where $k_r$ is a positive tuning parameter. Denote the tracking error of $\sin (\delta )$ as $s_e=\sin (\delta )-\alpha _{\sin \delta }$ . $r_e$ is further transformed to

(20) \begin{align} \dot{r}_e=-k_rc_rr_e+c_rs_e+W^{\textrm{T}}\varphi +\varepsilon \end{align}

Differentiating $s_e$ along with (17), it renders

(21) \begin{align} \dot{s}_e=&\cos\!(\delta )\dot{\delta }-\dot{\alpha }_{\sin \delta }=\frac{\cos\!(\delta )}{T}(\delta _c-\delta )-\dot{\alpha }_{\sin \delta } \end{align}

To mediate the convergence of $s_e$ , the real control law of $\delta _c$ is designed as $\delta _c=-k_\delta Ts_e/\cos\!(\delta )+\delta$ , where $k_\delta$ is a positive tuning parameter. Define $k'_{\!\!\delta} =k_\delta T$ . By involving the definitions of $s_e$ and $r_e$ , $\delta _c$ is further transformed to

(22) \begin{align} \delta _c=-k'_{\!\!\delta} \tan\!(\delta )-\frac{k'_{\!\!\delta} k_r}{\cos\!(\delta )}r-\frac{k'_{\!\!\delta} k_rk_\psi }{\cos\!(\delta )}\psi _e+\delta \end{align}

By incorporating $\delta _c$ in (21), it renders

(23) \begin{align} \dot{s}_e=-k_\delta s_e-\dot{\alpha }_{\sin \delta } \end{align}

In nautical practice, the work of the proposed scheme is demonstrated in the pseudo codes of Table I. It is shown that two loops are nested. The inner loop takes the BAS optimization and searches $\psi _d$ , the outer one undertakes the controller and generates $\delta _c$ . In the proposed scheme, both the guidance signal $\psi _d$ and the control signal $\delta _c$ are calculated step by step with a constant calculation period $t_s$ . Because $\psi _d$ is updated through the BAS algorithm in each step, its continuity is not guaranteed. Because $\psi _d\in (\!-\!180^\circ,180^\circ ]$ and $\dot{\psi }_d\approx [\psi _d(t)-\psi _d(t-t_s)]/t_s$ , it is feasible to ensure $\psi \rightarrow \psi _d$ by using the proposed controller.

Table I. Pseudo codes of the proposed scheme.

4.2. Stability analysis

The proposed control scheme can be concluded as the following theorem.

Theorem 4.1. For the horizontal motions of a sailboat described by (17), the linear backstepping controller fabricated in (22) can ensure the semi-global uniform ultimate boundedness (SGUUB) of all the tracking errors. By optimizing the tuning parameters of $k_\psi$ , $k_r$ and $k'_{\!\!\delta}$ , the balance between the tracking accuracy and the energy cost can be achieved.

Proof: Select a Lyapunov candidate as $V=(\psi _e^2+r_e^2+s_e^2)/2$ . Note the following inequality

(24) \begin{align} W^{\textrm{T}}\varphi +\varepsilon \leq \theta (\|\varphi \|+1)\leq 2\theta \end{align}

where $\theta =\max \{\|W\|,\bar{\varepsilon }\}$ . By using the Young’s inequality and differentiating $V$ along with (19), (20), (23) and (24), it renders

(25) \begin{align} \dot{V}&=\psi _e\dot{\psi }_e+r_e\dot{r}_e+s_e\dot{s}_e\nonumber \\[5pt] & \leq -(k_\psi -1)\psi _e^2-\left(k_rc_r-\frac{c_r^2}{2}-\frac{3}{2}\right)r_e^2-(k_\delta -1)s_e^2 +\frac{1}{2}\dot{\psi }_d^2+\frac{1}{2}\theta ^2+\frac{1}{2}\dot{\alpha }_{\sin \delta }^2 \end{align}

As $\psi$ and $r$ are limited in the real environment, it is tenable to define $\varrho =(\dot{\psi }_d^2+\theta ^2+\dot{\alpha }_{\sin \delta }^2)/2$ bounded by $\bar{\varrho }$ . Select $k_\psi \gt 1$ , $k_r\gt c_r/2+3/(2c_r)$ and $k'_{\!\!\delta} \gt T$ . Let $\eta =\min \{2k_\psi -2,2k_rc_r-c_r^2-3,2k_\delta -2\}$ . Then, (25) can be transformed to $\dot{V}\leq -\eta V+\bar{\varrho }$ , which further renders

(26) \begin{align} V(t)\leq V(0)e^{-\eta t}+(1-e^{-\eta t})\frac{\bar{\varrho }}{\eta } \end{align}

which implies that $V(t)$ is ultimately bounded by $\bar{\varrho }/\eta$ . The proof is completed.

Remark 3.It is shown in (22) that only three tuning parameters are required in the controller. Compared with the adaptive control of sailboats, such as [Reference Deng, Zhang and Zhang18, Reference Deng, Zhang, Zhang and Hu28], the neural networks with adaptive laws are no longer required, and the computational simplicity is guaranteed. To refrain from manual intervention, the BAS-based parameter optimization is proposed in the next section.

Figure 3. Curve of $\alpha$ to $u_1$ .

4.3. BAS-based parameter optimization

The optimization objective is to achieve the satisfactory tracking accuracy as little energy cost as possible. By using the modified BAS algorithm, $k'_{\!\!\delta}$ , $k_r$ and $k_\psi$ are determined. Synthesizing the tracking error and the energy cost together, the cost function is fabricated as

(27) \begin{align} F_c(k_\psi,k_r,k'_{\!\!\delta} )=\int _{t_1}^{t_2}\alpha _1\psi _e^2+(1-\alpha _1)\delta ^2\textrm{d}t \end{align}

where $\alpha _1\in [0,1]$ is the weight to reconcile the amplitudes between $\psi _e$ and $\delta$ . $t_1$ and $t_2$ are the initial and the ending instants of the recording time, respectively.

Figure 4. Recursive update of $x^t$ .

Figure 5. Evolution of $\psi$ and $\psi _d$ in BAS optimization.

Figure 6. Trajectory of sailboat in BAS optimization.

Figure 7. Trajectory of sailboat at 35 s.

Figure 8. Trajectory of sailboat at 60 s.

Figure 9. Trajectory of sailboat at 85 s.

Figure 10. Trajectory of sailboat at 130 s.

Figure 11. Trajectory of sailboat at 180 s.

Figure 12. Trajectory of sailboat at 200 s.

Figure 13. Trajectory of sailboat at 300 s.

Figure 14. Speed of sailboat.

The parameter optimization process can follow the procedure that: (1) preset the values of $k'_{\!\!\delta}$ , $k_r$ and $k_\psi$ ; (2) steer the sailboat to a stable navigation condition, namely close to the reference direction and not in a turbulent wind; (3) set $x^1=[k'_{\!\!\delta},k_\psi,k_r]^{\textrm{T}}$ , $d^1$ , $c_0$ , $c_1$ , $\alpha _1$ and fixed $t_2-t_1$ ; (4) use BAS and calculate $F_c$ of $x_l$ , $x^t$ and $x_r$ at the following three time intervals of $t_2-t_1$ ; (5) redetermine the values of $k'_{\!\!\delta}$ , $k_r$ and $k_\psi$ .

5. Simulation

A 1.3-m sailboat is chosen to be the experimental objective, which has $m_r=50.5$ , $N_{ur}=-2$ , $N_r=-10$ , $d_r=5$ , $f_\alpha =2.4$ , $A=0.1\,\textrm{m}^2$ , $x_r=-0.3\,\textrm{m}$ and $T=5$ . Wind is set with the Beaufort wind scale of No.5, which is $135^\circ$ right to the north. According the speed polar diagram, the relationship between $\alpha$ and $u_1$ can be described by a polynomial as $u_1(\alpha )=-0.17|\alpha |^3-1.08\alpha ^2+6.04|\alpha |$ . The curve of $\alpha \in [0^\circ,180^\circ ]$ to $u_1$ is shown in Fig. 3, which is symmetric along the $u_1$ axis.

The first numerical experiment is to determine the optimized parameters in (22). The optimization process follows the procedures in Section 4.3. The initial states of the sailboat are set as $[x(0),y(0),\psi (0)]=[0\,\textrm{m},0\,\textrm{m},90^\circ ]$ , $r(0)=0^\circ/\textrm{s}$ and $\delta =0^\circ$ . $\alpha _1$ in (27) is set as 0.8. A sinusoidal reference signal of $\psi _d$ is given along time, namely $\psi _d=\pi/2+5\pi/36\sin (\pi t/50)$ . The initial values of three parameters are set as $k'_{\!\!\delta} =0.5$ , $k_\psi =0.5$ and $k_r=0.5$ . According to the modified BAS, set $d^1=0.18$ , $\delta ^t=0.15$ , $c_1=0.95$ , the final threshold of $d^t$ as 0.006 and $t_2-t_1$ in (27) as 2 s. Thus, $x^t$ , $x_l$ , and $x_r$ are tested in every 2 s. $x^{t+1}$ is determined after every 6 s.

The optimization process is shown in Fig. 4. After 67 times iteration, optimization is over and it finally renders $k'_{\!\!\delta} =0.36$ , $k_\psi =0.64$ and $k_r=0.44$ . Along with the optimization, the tracking performance is shown in Fig. 5. It is shown that tracking accuracy is gradually enhanced along with the optimization of control parameters. The trajectory of the sailboat is shown in Fig. 6. A sinusoidal trajectory is achieved.

The second numerical experiment is to verify the effectiveness of the proposed guidance scheme and the superior control performance of the linear backstepping controller. In this experiment, four waypoints are set, namely $(x_1,y_1)=(100\,\textrm{m},0\,\textrm{m})$ , $(x_2,y_2)=(100\,\textrm{m},500\,\textrm{m})$ , $(x_3,y_3)=(550\,\textrm{m},600\,\textrm{m})$ , and $(x_4,y_4)=(550\,\textrm{m},1000\,\textrm{m})$ . The reference path is generated by connecting adjacent waypoints. To imitate the complicated traffic situations, 11 obstacles are set with initial positions and heading angles as $(100\,\textrm{m},100\,\textrm{m},45^\circ )$ , $(100\,\textrm{m},200\,\textrm{m},0^\circ )$ , $(120\,\textrm{m},150\,\textrm{m},135^\circ )$ , $(120\,\textrm{m},250\,\textrm{m},-180^\circ )$ , $(80\,\textrm{m},300\,\textrm{m},0^\circ )$ , $(150\,\textrm{m},400\,\textrm{m},-180^\circ )$ , $(100\,\textrm{m},500\,\textrm{m},0^\circ )$ , $(200\,\textrm{m},700\,\textrm{m},-90^\circ )$ , $(190\,\textrm{m},520\,\textrm{m},12.5^\circ )$ , $(180\,\textrm{m},510\,\textrm{m},0^\circ )$ , and $(450\,\textrm{m},500\,\textrm{m},157.5^\circ )$ . Moving speeds $u_2$ of these obstacles are set as 0.5, 0, 0.5, 0.25, 0, 0.5, 0, 1.3, 0.5, 0 and $0.8\,\textrm{m/s}$ . The initial states of the sailboat is set as $(x(0),y(0),\psi (0))=(0\,\textrm{m},0\,\textrm{m},0^\circ )$ , $r(0)=0$ and $\delta (0)=0$ . According to the proposed guidance principle, the detecting zone is set with the radius of $50\,\textrm{m}$ , and let $k_1=1000$ , $\bar{u}_2=1\,\textrm{m/s}$ , $k_2=100$ , $\bar{y}=10\,\textrm{m}$ , $k_3=100$ , $\bar{u}_1=6\,\textrm{m/s}$ and $k_4=50$ . By using the optimized parameters $k'_{\!\!\delta} =1.10$ , $k_\psi =0.58$ and $k_r=0.43$ , the guidance principle with the controller in (22) is marked as “Linear Backstepping”. To verify the superiority, the adaptive controller in ref. [Reference Deng, Zhang and Zhang18] is set as the comparison, which is marked as “Adaptive Backstepping”. According to direct adaptive control, the controller of comparison is fabricated as

(28) \begin{align} \delta _c=-k'_{\!\!\delta} \tan\!(\delta )-\frac{k'_{\!\!\delta} k_r}{\cos\!(\delta )}r-\frac{k'_{\!\!\delta} k_r k_\psi }{\cos\!(\delta )}\psi _e-\frac{k'_{\!\!\delta} \hat{W}^{\textrm{T}}\varphi }{\cos\!(\delta )}+\delta \end{align}

where the adaptive law is designed as

(29) \begin{align} \dot{\hat{W}}=\Gamma (\varphi (r-k_\psi \psi _e)-\sigma \hat{W}) \end{align}

Then, simulation results are shown in the following figures.

Figures 713 show trajectories of the sailboat in some typical collision-avoidance situations under two control laws, for example, cross from left in Figs. 8 and 9, cross from right in Figs. 7 and 10, overtaking in Fig. 11 and head on in Fig. 12. It should be noted that the sailboat is not required to obey the International Regulations for Preventing Collisions at Sea (COLREGS). It is clear in these figures that the sailboat successfully bypasses the obstacles and the safe distance is left for a 1.3 m sailboat. Effectiveness of the proposed BAS-based guidance is substantiated. Nevertheless, it is shown in Figs. 11 and 13 that “Adaptive Backstepping” has the significant trajectory fluctuation than “Linear Backstepping”. It implies that the adaptive term in (28) will degrade the stability and lead to the control inefficiency. Speeds of the sailboats under two controllers are shown in Fig. 14. Tracking errors and control inputs are shown in Figs. 15 and 16, respectively. Large deviations of these curves are shown in “Adaptive Backstepping”, which verifies the superiority of the proposed linear backstepping controller. Through the entire control voyage, $F_c$ of “Linear Backstepping” and “Adaptive Backstepping” are 617.8 and 863.0, respectively. Optimized control performance is exhibited in “Linear Backstepping”. Figure 17 shows the direct adaptive law of $\hat{W}$ in “Adaptive Backstepping”, where all the elements are bounded. With the simulation environmental configuration (CPU: Intel Core i7-10875H 2.3 GHz 2.3 GHz, RAM: 16.0 GB), it is tested that “Linear Backstepping” has the total computing time (TCT) of 126.89 s and the memory occupancy (MO) of 916460 kB, whereas “Adaptive Backstepping” has the TCT of 139.28 s and the MO of 1009996 kB. The less computation burden is verified in the proposed scheme.

Figure 15. Tracking error $\psi _e$ of sailboat.

Figure 16. Control inputs.

Figure 17. Adaptive law of $\hat{W}$ in “Adaptive Backstepping”.

6. Conclusion

Based on the modified BAS optimization algorithm, a guidance principle with a linear backstepping controller is proposed for the unmanned sailboat, which synthesizes the tasks of path following, collision avoidance and the characteristic sailboat maneuvers together. By using the bounded property of fuzzy basis functions, the linear backstepping controller is fabricated in a succinct way. The parameters of the linear backstepping controller are determined by using the BAS optimization, so as to ensure the optimized control performance, namely satisfactory tracking accuracy with less energy cost. Simulation verifies the effectiveness of the proposed guidance and control strategies. In the future work, a real sea trial of the sailboat should be carried out. Besides, more abilities can be added to the guidance, such as station keeping and zone scanning.

Author contributions

Yingjie Deng: Data curation, Writing. Tao Ni: Methodology, Software. Zhuxin Zhu: Conceptualization, Supervision. Jianwei Wang: Visualization, Investigation.

Financial support

This work is partially supported by the Natural Science Foundation of China (No.52101375), the Hebei Province Natural Science Fund (No.E2021203142), the Joint Funds of the National Natural Science Foundation of China (No.U20A20332), and the Key Research and Development Project of Hebei Province (No.21351802D).

Conflicts of interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

References

Rynne, P. F. and von Ellenrieder, K. D., “Unmanned autonomous sailing: Current status and future role in sustained ocean observations,” Mar. Technol. Soc. J. 43(1), 2130 (2009).CrossRefGoogle Scholar
Silva, M. F., Friebe, A., Malheiro, B., Guedes, P., Ferreira, P. and Waller, M., “Rigid wing sailboats: A state of the art survey,” Ocean Eng. 187, 106150 (2019).CrossRefGoogle Scholar
Erckens, H., Büsser, G.-A., Pradalier, C. and Siegwart, R. Y., “Navigation strategy and trajectory following controller for an autonomous sailing vessel,” IEEE Robot. Autom. Mag. 17(1), 4554 (2010).CrossRefGoogle Scholar
Langbein, J., Stelzer, R. and Frühwirth, T., “A Rrule-based Approach to Long-Term Routing for Autonomous Sailboats,” In: Proceedings of 4th International Robotic Sailing Conference, Lübeck, Germany (2011) pp. 195204.Google Scholar
Zyczkowski, M. and Szlapczynski, R., “Collision risk-informed weather routing for sailboats,” Reliab. Eng. Syst. Safety 232, 109015 (2022). doi: 10.1016/j.ress.2022.109015.CrossRefGoogle Scholar
Alves, J. C. and Cruz, N. A., “A Mission Programming System for an Autonomous Sailboat,” In: Oceans. St. John’s (IEEE, Canada, 2014) pp. 17.Google Scholar
Życzkowski, M., Krata, P. and Szlapczyński, R., “Multi-objective weather routing of sailboats considering wave resistance,” Pol. Marit. Res. 97(25), 412 (2018).CrossRefGoogle Scholar
Zvyagina, T. and Zvyagin, P., “A model of multi-objective route optimization for a vessel in drifting ice,” Reliab. Eng. Syst. Safety 218, 108147 (2022).CrossRefGoogle Scholar
Szlapczynska, J., “Multi-objective weather routing with customised criteria and constraints,” J. Navig. 68(2), 338354 (2015).CrossRefGoogle Scholar
Tynan, D., “An aAttractor/Rrepellor Aapproach to Aautonomous Ssailboat Nnavigation,” In: Proceedings of the 10th International Robotic Sailing Conference, Horten, Norway (2017) pp. 6979.Google Scholar
Chen, C., Chen, X., Ma, F., Zhang, X. and Wang, J., “A knowledge-free path planning approach for smart ships based on reinforcement learning,” Ocean Eng. 189, 106299 (2019).CrossRefGoogle Scholar
Stelzer, R. and Pröll, T., “Autonomous sailboat navigation for short course racing,” Robot. Auton. Syst. 56(7), 604614 (2008).CrossRefGoogle Scholar
Pêtrès, C., Romero-Ramirez, M. A. and Plumet, F., “A potential field approach for reactive navigation of autonomous sailboats,” Robot. Auton. Syst. 60(12), 15201527 (2012).CrossRefGoogle Scholar
Plumet, F., Pêtrès, C., Romero-Ramirez, M. A., Gas, B. and Ieng, S. H., “Toward an autonomous sailing boat,” IEEE J. Oceanic Eng. 40(2), 397407 (2015).CrossRefGoogle Scholar
Saoud, H., Hua, M. D., Plumet, F. and Amar, F. B., “Routing and Course Control of an Autonomous Sailboat,” In: European Conference on Mobile Robots (ECMR) (IEEE, 2015) pp. 16.CrossRefGoogle Scholar
Less’ard-Springett, J., Friebe, A. and Gallic, M. L., “Voter Bbased Ccontrol Ssystem for Ccollision Aavoidance and Ssailboat Nnavigation,” In: Proceeding of 10th International Robotic Sailing Conference, Horten, Norway (2017) pp. 5768.Google Scholar
Elkaim, G. and Kelbley, R., “Station Keeping and Segmented Trajectory Control of a Wind-Propelled Autonomous Catamaran,” In: IEEE Conference on Decision and Control (2006) pp. 24242429.Google Scholar
Deng, Y., Zhang, X. and Zhang, G., “Line-of-sight-based guidance and adaptive neural path-following control for sailboats,” IEEE J. Oceanic Eng. 45(4), 11771189 (2020).CrossRefGoogle Scholar
Deng, Y., Zhang, X., Zhang, G. and Huang, C., “Parallel guidance and event-triggered robust fuzzy control for path following of autonomous wing-sailed catamaran,” Ocean Eng. 190, 106442 (2019).CrossRefGoogle Scholar
Zhang, G., Deng, Y., Zhang, W. and Huang, C., “Novel dvs guidance and path-following control for underactuated ships in presence of multiple static and moving obstacles,” Ocean Eng. 170, 100110 (2018).CrossRefGoogle Scholar
Wang, S., Zhang, Y. and Li, L., “A collision avoidance decision-making system for autonomous ship based on modified velocity obstacle method,” Ocean Eng. 215, 107910 (2020).Google Scholar
Corno, M., Formentin, S. and Savaresi, S. M., “Data-driven online speed optimization in autonomous sailboats,” IEEE Trans. Intell. Transp. 17(3), 762771 (2016).CrossRefGoogle Scholar
Stelzer, R., Pröll, T. and John, R. I., “Fuzzy Logic Control System for Autonomous Sailboats,” In: IEEE International Fuzzy Systems Conference (2007) pp. 16.Google Scholar
Cruz, N. A. and Alves, J. C., “Auto-Heading Controller for an Autonomous Sailboat,” In: OCEANS (IEEE, 2010) pp. 16.Google Scholar
Viel, C., Vautier, U., Wan, J. and Jaulin, L., “Position Keeping Control of an Autonomous Sailboat,” In: IFAC PapersOnLine (Elsevier, 2018) pp. 1419.Google Scholar
Xiao, L., Fossen, T. I. and Jouffroy, J., “Nonlinear Robust Heading Control for Sailing Yachts,” In: 9th IFAC Conference on Manoeuvring and Control of Marine Craft (IFAC, 2012) pp. 404409.CrossRefGoogle Scholar
Xiao, L. and Jouffroy, J., “Modeling and nonlinear heading control of sailing yachts,” IEEE J. Oceanic Eng. 39(2), 256268 (2014).CrossRefGoogle Scholar
Deng, Y., Zhang, X., Zhang, Q. and Hu, Y., “Event-triggered composite adaptive fuzzy control of sailboat with heeling constraint,” Ocean Eng. 211, 107627 (2020).CrossRefGoogle Scholar
Deng, Y., Zhang, Z., Gong, M. and Ni, T., “Event-triggered asymptotic tracking control of underactuated ships with prescribed performance,” IEEE Trans. Intell. Transp. 24(1), 645656 (2022). doi: 10.1109/tits.2022.3216808.CrossRefGoogle Scholar
Jiang, X. and Li, S., “Beetle antennae search without parameter tuning(bas-wpt) for multi-objective optimization (2017), arXiv preprint, vol. arXiv:1711.02395.Google Scholar
Figure 0

Figure 1. Illustration of variables and navigation tasks.

Figure 1

Figure 2. Speed polar diagram of a sailboat.

Figure 2

Table I. Pseudo codes of the proposed scheme.

Figure 3

Figure 3. Curve of $\alpha$ to $u_1$.

Figure 4

Figure 4. Recursive update of $x^t$.

Figure 5

Figure 5. Evolution of $\psi$ and $\psi _d$ in BAS optimization.

Figure 6

Figure 6. Trajectory of sailboat in BAS optimization.

Figure 7

Figure 7. Trajectory of sailboat at 35 s.

Figure 8

Figure 8. Trajectory of sailboat at 60 s.

Figure 9

Figure 9. Trajectory of sailboat at 85 s.

Figure 10

Figure 10. Trajectory of sailboat at 130 s.

Figure 11

Figure 11. Trajectory of sailboat at 180 s.

Figure 12

Figure 12. Trajectory of sailboat at 200 s.

Figure 13

Figure 13. Trajectory of sailboat at 300 s.

Figure 14

Figure 14. Speed of sailboat.

Figure 15

Figure 15. Tracking error $\psi _e$ of sailboat.

Figure 16

Figure 16. Control inputs.

Figure 17

Figure 17. Adaptive law of $\hat{W}$ in “Adaptive Backstepping”.