1. INTRODUCTION
Sail is one of the most ancient forms of marine surface vehicle propulsion, using the forces of the wind to propel a vessel (Carter and Carter, Reference Carter and Carter2010; Perez, Reference Perez2005). In recent years, Unmanned Robot Sailboats (URS) have been developed for use in fields such as ocean investigation and exploitation due to their low energy use. A sailboat requires renewable energy instead of fossil fuels and can undertake long duration tasks (Viel et al., Reference Viel, Vautier, Wan and Jaulin2018; Alves and Cruz, Reference Alves and Cruz2014). However, the cumbersome operation of sails could produce difficulties in the stabilisation of a closed-loop control system (Illingworth, Reference Illingworth1997). Although strong winds could supply enough power for the sailboat, it may also cause system instability, even leading to the invalidation of existing control schemes (Zhang et al., Reference Zhang, Zhang and Zhang2015). Thus, an intelligent guidance and control method for a URS merits further investigation.
Recently, there has been a significant interest in the control of URS. A variety of theoretical research has been reported: for example, short course racing control (Stelzer and Proll, Reference Stelzer and Proll2008; Tagliaferri and Viola, Reference Tagliaferri and Viola2017) and the reactive path planning approach (Plumet et al., Reference Plumet, Petres, Romero-Ramirez, Gas and Ieng2015). In Yeh and Bin (Reference Yeh and Bin1992), the fuzzy relationship between the sail angle and the apparent wind direction was formulated and a fuzzy control algorithm was applied to achieve the course control of a sailboat. Furthermore, considering different weather cases, especially upwind or downwind legs, Abril et al. (Reference Abril, Salom and Calvo1997) discussed the dynamic characteristics of sailboats including the aerodynamic and hydrodynamic forces. Their proposed control algorithm could maintain the highest possible speed and follow the reference heading with a desirable response. Since the roll dynamics of sailboats have a crucial role for evaluation of the control strategies, a nonlinear four degrees of freedom mathematical model was presented in Xiao et al. (Reference Xiao, Sliwka and Jaulin2011), Wille et al. (Reference Wille, Hassani and Sprenger2016) and Deng et al. (Reference Deng, Zhang and Zhang2018), based on previous work. Xiao and Jouffroy (Reference Xiao and Jouffroy2014) used a conventional rudder and a simple moving mass system as the controllable variables to derive a backstepping-based course-keeping control law for a keeled sailboat (considering the rolling motion) and a Globally Uniform Asymptotic Stability (GUAS) was obtained for the closed-loop system.
In the aforementioned literatures, the actuators’ gain function is assumed to be known for the control design. That does not meet engineering practice and may limit the application of these theoretical results. Course-keeping control is selected as the automatic task of interest, which is not sufficient for implementing the autonomous navigation of a URS (Tagliaferri et al., Reference Tagliaferri, Philpott, Viola and Flay2014; Guo et al., Reference Guo, Romero, Ieng, Plumet, Benosman and Gas2011). In the authors’ previous work (Zhang et al., Reference Zhang, Deng and Zhang2017; Qiao and Zhang, Reference Qiao and Zhang2018), the underactuated surface vessel was considered as the test vessel and the constraint of the actuators’ gain uncertainty was released by utilising Dynamic Surface Control (DSC) and the robust neural damping technique. To further improve the implementability of the theoretical algorithm, a new reactive navigation approach, based on artificial potential fields, was developed to tackle uncontrollable and changeable environment perturbations (Petres et al., Reference Petres, Romero-Ramirez and Plumet2012), that is, the stochastic obstacles that exist in the vicinity of the reference route. In the algorithm, a zigzag trajectory is employed to achieve the target navigation of sailboats, and the periodically updated potential could guarantee the real-time computation of a feasible heading. In Corno et al. (Reference Corno, Formentin and Savaresi2016), the path-following task of the keeled sailboat was addressed by combining a heading controller, acting on the rudder, and a velocity optimiser, acting on the sails. The results of an experiment on an instrumented scale model have validated the near-optimal performance of the proposed scheme. Note that, in nautical practice, the varying nature of wind propulsion is not the sole factor affecting the sail/yacht dynamics. The varying destination, on the waypoint-based planned route, may change the wind conditions for the URS. Therefore, intelligent guidance needs to be designed for the URS, especially for tacking and gybing cases. In other research, (Serrano et al., Reference Serrano, Scaglia, Godoy, Mut and Ortiz2014; Statheros et al., Reference Statheros, Howells and Maier2008; Li and Tong, Reference Li and Tong2018a), the Line-Of-Sight (LOS) guidance principle was detailed and incorporated with the stability theory of cascade interconnected systems to achieve a straight-line path-following mission. Further LOS guidance with the integral effect (that is, the integral LOS law) could successfully counteract the current disturbances, without the risk of wind-up effects (Caharija et al., Reference Caharija, Pettersen, Gravdahl and Borhaug2012; Li and Tong, Reference Li and Tong2018b). However, the integral LOS principle may not be applicable to the practical condition “waypoint-based planned route for the URS”. In addition, especially for the upwind and downwind conditions, the control objective should be guaranteed by employing both the rudder and the sail.
Motivated by the above observations, this paper focuses on the intelligent guidance and control design for a URS in a marine environment. For the guidance term, an improved version of the integral LOS principle is developed for waypoint-based path-following control. For the control term, the merit of NNs approximation and the robust neural damping technique are employed, and the constraint of control gain uncertainty is compensated by the gain-related adaptive parameter. Furthermore, the path-following capability of the proposed scheme is demonstrated through theoretical analysis and numerical experiments. The main contributions of this paper can be summarised as follows:
(1) Based on the conventional integral LOS principle, an improved version is developed to implement the waypoint-based path-following control of URS, with a spontaneous selecting strategy depending on the random wind direction and the varying route reference. In addition, for the tacking and gybing scenarios, the safety bandwidth constraint is set for the zigzag trajectory to improve its implementability.
(2) A novel robust adaptive control algorithm is proposed for URS with the sail angle and the rudder angle as the control inputs. In the control law, due to the merit of a Neural Networks (NNs) approximator, information on the model structure, parameters and the environment disturbance is not required, and only one gain-related adaptive parameter is updated online to compensate for the effect of actuator gain uncertainty. In addition, the advantageous damping term in the controller could reduce the rolling motion during the switch operation of the desired route segment or the zigzag trajectory. Thus, the derived control law is superior in terms of concise form and safety, which could facilitate its application in practice.
2. PROBLEM FORMULATION AND PRELIMINARIES
Throughout this paper, | · | is the absolute operator of a scalar. ‖ · ‖ indicates the Euclidean norm of a vector and ‖ · ‖F describes the Frobenius norm. For a given matrix A = [a i,j] ∈ ℝm×n, $\Vert \boldsymbol{A}\Vert_{F}^{2}=\hbox{tr} \{\boldsymbol{A}^{T}\boldsymbol{A}\}=\sum_{i=1}^{m}\,\sum_{j=1}^{n}\,a_{i,j}^{2} \cdot \hbox{sgn}$ indicates the sign function.
2.1. 4-DOF dynamic model of URS
A class of Four Degrees-Of-Freedom (4-DOF) URS model based on Fossen's methodology (Xiao and Jouffroy, Reference Xiao and Jouffroy2014), considering the rolling motion, can be expressed as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn1.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn2.gif?pub-status=live)
with:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn3.gif?pub-status=live)
where $m_{u}=m-X_{\dot{u}}$,
$m_{v}=m-Y_{\dot{v}}$,
$m_{p}=I_{x}-K_{\dot{p}}$,
$m_{r}=I_{z}-N_{\dot{r}}$, m is the mass of the URS and GM t is the transverse metacentric height. η = [x, y, ϕ, ψ] (see Figure 1) describes the position, roll angle and yaw angle in the inertial reference frame (n-frame). ν = [u, v, p, r] describes the surge, sway, roll and yaw velocities in the body fixed frame (b-frame). d wi, i = u, v, p, r describes the environmental disturbance forces or moments. [S i, R i, K i, D i], i = u, v, p, r describes the forces or moments generated by sail, rudder, keel and hull along the x-axis, y-axis or z-axis in the b-frame.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig1g.jpeg?pub-status=live)
Figure 1. Illustration of the Earth-fixed frame and body-fixed frame.
In a keeled robot sailboat, the keel is mainly used to offset the rolling force or moments caused by the sail, see Figure 1. The apparent wind speed U aw and true wind speed U tw can be transformed from n-frame to b-frame via the sailboat's wind speed (Arredondo-Galeana and Viola, Reference Arredondo-Galeana and Viola2018). Then the apparent wind angle psi aw in the b-frame can be described as $\psi_{aw}=\arctan 2(U_{awv},-U_{awu})$. The attack angle for the sail is expressed by
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn4.gif?pub-status=live)
δ s is the sail angle, which is obtained from a look-up table (Xiao and Jouffroy, Reference Xiao and Jouffroy2014).
The lift and drag force, generated by the sail in the apparent wind can be computed as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn5.gif?pub-status=live)
where ρ a denotes the air density and A s denotes the area of sail. $C_{S_{L}}$ and
$C_{S_{D}}$ denote the lift and drag coefficients of the sail. According to Equation (5) and Figure 1, [S u, S v, S p, S r] can be obtained. In a similar way, the force and moments [R i, K i, D i], i = u, v, p, r generated by rudder, keel and hull can be derived.
The turning moment of the rudder can be described as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn6.gif?pub-status=live)
where ρ w is the water density, A r is the area of rudder, $C_{R_{L}} (\alpha_{R})$ is the lift coefficient of the rudder and α R is the attack angle of the rudder, |x r| is the x coordinate of the rudder's centroid in the b-frame and U ar is the apparent speed of the rudder with
$U_{ar}^{2}=\sqrt{u^{2}+v^{2}}$.
Remark 1: The 4-DOF nonlinear mathematical model Equations (1) and (2) has been established in Wille et al. (Reference Wille, Hassani and Sprenger2016) and Xiao and Jouffroy (Reference Xiao and Jouffroy2014). The sailboat is separated into four parts (that is, the sail, rudder, keel and hull), and the forces and moments acting on the sailboat are the integration of the effects of each part. The sailboat receives several available online datums, such as true wind direction and velocity, which can be collected by anemometers and wind vanes and the heading angle which can be measured by a compass. Hence, the nonlinear mathematical model is reasonable and effective.
A few assumptions applied throughout this paper are:
Assumption 1: There exist unknown positive constants $\bar{d}_{wi}$, satisfied the disturbance terms d wi due to the environment and are bounded, such that
$d_{wi}\leq \bar{d}_{wi}$.
Assumption 2: Based on the systematic analysis in Do (Reference Do2010), the sway motion of underactuated ships is passive-bounded stable. This means that the sway velocity is bounded as the surge and yaw motions are uniform and ultimately bounded.
Assumption 3: The robot sailboat is hypothesised as rigid and in considering 4-DOFs, the heaving and pitching motions are ignored. The robot sailboat is presumed to sail in still waters, that is, the current is ignored.
2.2. Modelling of tacking and gybing
Fully autonomous sailboats still have a huge challenge. It is complicated work to operate the rudder to steer on the desired path and simultaneously adjust the sail to get the best performance.
Being different from propeller-driven ships, the main feature for sailboats is the sail as an actuator in the surge degree of freedom rather than propellers. The sail is greatly influenced by the weather. Therefore, in order to steer the sailboat along the desired route generated by waypoints, not all the legs are navigable, see Figure 2(a). Figure 2 illustrates the relationship between the sailboat courses and the wind direction. It is can be seen that some courses are navigable (Figures 2(b) and 2(d)), and some courses are ineffective (Figure 2(c)). These restrictions have to be taken into account in planning the route for a sailing trip. Therefore, the route may contain multiple sections, with tacks or gybes between them. To avoid these constraints and reach any target autonomously, a zigzag route must be considered.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig2g.jpeg?pub-status=live)
Figure 2. Zones of sail: (a) No-go zone; (b), (d) Navigable zone; (c) Do not-go zone.
The objective contains two points: (1) To develop an improved integral LOS guidance scheme which could provide the reference path guidance law (consists of Navigable zone, No-go zone and Do not-go zone). (2) To develop an adaptive neural control law to stabilise the sailboat to the desired heading angle effectively.
2.3. RBF-NNs-based function approximation
In control engineering, Radial Basic Function Neural Networks (RBF-NNs) are generally employed as an effective tool for modelling nonlinear functions due to their fine capabilities in function approximation (Xu and Sun, Reference Xu and Sun2018). In this paper, RBF-NNs are employed in control design to deal with the structure and parameter uncertainties. The robust neural damping technique is further designed to promote the robustness and the stability of the closed-loop system. It is vital for control design, which facilitates the concise form and small computation burden in practical control engineering. To that end, Lemma 1 is helpful for the control design.
Lemma 1(Li and Tong, Reference Li and Tong2018a; Xu and Shou, Reference Xu and Shou2018) For any given continuous function f(x) with f(0) = 0, defined on a compact set $\Omega_{x}\subset {\mathscr{R}}$, can be approximated by RBF-NNs with random precision. It can be described as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn7.gif?pub-status=live)
where S(x) = [s 1(x), s 2(x), …, s l(x)] is a vector of Gaussian function, expressed in the following elements as Equation (8), l > 1 is the NN node number, μ i and ξ i denotes the centre of the receptive field and the width of the Gaussian function, respectively.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn8.gif?pub-status=live)
ε(x) is the approximation error with unknown upper bound $\bar{\varepsilon}$, n is the dimension of x and A is a weight matrix, expressed as Equation (9).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn9.gif?pub-status=live)
3. IMPROVED INTEGRAL LOS GUIDANCE FOR ROBOT SAILBOAT
In this section, the improved integral LOS guidance is analysed in two parts: the navigable path-following guidance (navigable mode) and the complicated manoeuvring guidance (such as upwind mode and downwind mode). Therefore, the improved integral LOS framework is developed for further guidance design. As is described in Figure 3, a parameterised path is generated by waypoints. ω denotes the path variable and the inertial position of the reference path is denoted by (x r(ω), y r(ω)) with arbitrary given ω. The path-tangential angle ψ r(ω) is calculated by ψ r(ω) = atan2(y′r, x′r) with x′r = ∂x r/∂ω, y′r = ∂y r/∂ω. The present position of the robot sailboat is denoted by (x, y), the along-track error x e and the cross-track error y e related to the reference path can be derived by Equation (10):
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn10.gif?pub-status=live)
Taking the time derivative of x e, y e, we can obtain:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn11.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig3g.jpeg?pub-status=live)
Figure 3. The framework of integral LOS guidance.
Substituting Equation (1) into Equation (11), it follows that:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn12.gif?pub-status=live)
where $U^{2}=\sqrt{u^{2}+(v\cos(\phi))^{2}}$ denotes the resultant speed of the robot sailboat β = atan2(vcosϕ, u) and denotes the sideslip angle, see Figure 3, and u p denotes the velocity of the virtual reference point described as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn13.gif?pub-status=live)
Furthermore, the guidance law is derived as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn14.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn15.gif?pub-status=live)
where Δ and σ are the look-ahead distance and the integral gain, respectively. Both are constant design parameters.
Additionally, to consider the comprehensive cases, that is, navigable, upwind or downwind navigation, see Figure 4.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig4g.jpeg?pub-status=live)
Figure 4. Three sailing modes.
Navigable mode: Here, the navigable mode is defined by the heading angle being located outside of No-go zones or Do not-go zones, see Figure 2. In this mode, the robot sailboat will sail along the reference path-based waypoints, see Figure 4(b), and the reference heading angle is expressed as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn16.gif?pub-status=live)
Upwind mode: For the upwind mode, the heading angle ψ is located in the No-go zone, see Figure 2. The No-go angle related to ψ tw can be expressed as |ψ tw − πsgn(ψ tw) − ψ ILOS| < θmax, and θmax denotes the boundary of upwind no-go zones which shows in the aforementioned polar diagram. In this mode, the robot sailboat will sail with a zigzag path and achieve turning smoothly with a definite distance constraint, along with the reference path while tacking, see Figure 4(a). Furthermore, a sign function ζ(t) is defined to represent the tacking manoeuvring. ζ(t) is described by:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn17.gif?pub-status=live)
where d c1 is the distance constraint for upwind sailing and t, t − 1 denote the present time point and the last time point, respectively. From Equation (17), ζ(t) will change its sign if |y e| ≥ d c1. Thus, the reference heading angle can be calculated by:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn18.gif?pub-status=live)
Downwind mode: For the downwind mode, the heading angle ψ is located in the Do not-go zones, see Figure 2. The Do not-go angle related to ψ tw can be expressed as $\vert\psi_{tw}-\psi_{ILOS}\vert<\vartheta_{{\rm max}}$, and
$\vartheta_{{\rm max}}$ denotes the boundary of downwind Do not-go zones which shows in the aforementioned polar diagram. To obtain the optimal velocity and shorten the sailing time of the robot sailboat, a zigzag path with a certain distance constraint along the reference path is necessary by employing gybe manoeuvres, see Figure 4(c). Analogous to the upwind mode, the sign function ζ (t) is expressed as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn19.gif?pub-status=live)
where d c2 is the distance constraint for downwind sailing. Thus, the reference heading angle can be calculated by:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn20.gif?pub-status=live)
For Equation (12), the path particle velocity u p is a virtual input to stabilise the along-track error x e. Hence, u p can be devised as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn21.gif?pub-status=live)
where k x is a constant parameter.
From Equations (13) and (21), the update law for the path variable ω is expressed as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn22.gif?pub-status=live)
Noting:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn23.gif?pub-status=live)
where ψ e = ψ − ψ ILOS.
Substituting Equations (21) and (14) into Equation (12), Equation (24) can be derived:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn24.gif?pub-status=live)
4. DESIGN OF ROBUST ADAPTIVE NEURAL DAMPING CONTROLLER
In this paper, the control objective is to design a controller that stabilises the heading ψ of the sailboat to the reference heading ψ d, generated by the improved integral LOS. In this section, the heading and yaw sub-dynamics of system Equations (1) and (2) are chosen. Then an adaptive neural control law is designed by fusing the RBF-NNs and the robust neural damping technique. From the Equations (1) and (2), the following heading and yaw sub-dynamics can be obtained:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn25.gif?pub-status=live)
with:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn26.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn27.gif?pub-status=live)
Nevertheless, the precise functional structure of $C_{R_{L}}(\alpha_{R})$ in Equation (6) is unknown. Since the true velocity and bearing angle of current to the rudder is negligible, one can simplify that the apparent velocity of current equates to the sailboat's velocity and the attack angle satisfies α R = −δ r, where δ r is the rudder angle. In Xiao and Jouffroy (Reference Xiao and Jouffroy2014), a sinusoidal u δ( · ) was introduced to replace
$C_{R_{L}}(\alpha_{R})$ according to table look-up, which can be described as Equation (28):
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn28.gif?pub-status=live)
where a 1 and a 2 are the parameters.
Remark 2: The nonlinear mathematical model Equation (25) has been employed in Wille et al. (Reference Wille, Hassani and Sprenger2016), which is only for the control design. In practical marine engineering, the sailboat is an underactuated vessel because there are only two independent control inputs: sail angle and rudder angle. The thrust in surge is provided primarily by the sail. The rudder mainly affects the yaw motion. The other forces and moments generated by sail, keel and hull can be seen as the model uncertainties f r(·). Thus, the system model is reasonable and is the basis of the following design.
4.1. Control design
Step 1. The error variable of heading and its derivative are defined as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn29.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn30.gif?pub-status=live)
To stabilise the kinematic error variable Equation (29), a virtual controller α r is chosen as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn31.gif?pub-status=live)
where k ψ is the positive design constant.
To avoid repeatedly differentiating the virtual control α r in the next step, which leads to the so-called “explosion of complexity”, the DSC technique (Li, et al., Reference Li, Wang, Feng and Tong2010; Xu, et al., Reference Xu, Shi, Yang and Sun2014) is employed here. A first-order filter β r is introduced with time constant τ r. Let α r pass through it, such that:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn32.gif?pub-status=live)
By defining the output error of this filter as y r = β r − α r, it yields $\dot{\beta_{r}}=-y_{r}/\tau_{r}$ and:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn33.gif?pub-status=live)
where B r(·) is a bounded continuous function and has a maximum value M r (please refer to Zhang and Zhang (Reference Zhang and Zhang2015) for details).
Step 2. The error variable r e and its derivative are defined as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn34.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn35.gif?pub-status=live)
In Equation (35), the unknown function f r(·) is approximated by RBF-NNs as Equation (36):
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn36.gif?pub-status=live)
where ε(r) is the approximation error. Define b r = ||A||F, the normalised term $\textbf{\textit{A}}_{r}^{m}=\textbf{\textit{A}}_{r}/ \Vert \textbf{\textit{A}} \Vert _{F}$, and thus
$w_{r}=\textbf{\textit{A}}_{r}^{m}r_{e}$, b rw r = Arr e. Then, the robust neural damping term can be constructed as Equation (37):
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn37.gif?pub-status=live)
In Equation (37), $\theta_{r}=\max\{ \Vert \textbf{\textit{A}} \Vert _{F},d_{r},\bar{\varepsilon}+m_{r}\bar{d}_{wr}\}$ is the unknown bounded parameter and φ r = 1 + ξr(r) + ||S(r)|| ||β r|| is the damping term. In addition, d r>0 is the unknown constant and ξr = u 2/4 + v 2.
Based on the aforementioned analysis, the error dynamic system Equation (35) can be reformatted as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn38.gif?pub-status=live)
In the adaptive control design, the $\hat{\lambda}_{g_{r}}$ is the estimation of
$\lambda_{g_{r}}=1/g_{r}(\cdot)$, and
$\tilde{\lambda}_{g_{r}}=\lambda_{g_{r}}-\hat{\lambda}_{g_{r}}$. The real control for δ r is designed in Equation (40), where α u is the desired intermediate control for g r( · )u δ. Thus, one can get Equation (39). Considering Equations (28) and (39), the structure function of rudder angle δ r can be expressed as Equation (42). Furthermore, the matching adaptive law which is updated online to compensate the nonlinear gain uncertainty g r(·) is expressed as Equation (41), and the detailed analysis will be given in the next section.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn39.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn40.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn41.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn42.gif?pub-status=live)
In Equations (40), (41) and (42), $\Psi_{r}(\cdot)=(\phi_{r}^{2}+\textbf{\textit{S}}(r)^{\rm T}\textbf{\textit{S}}(r))/4$, k re, k rn,
$\sigma_{g_{r}}$, σr a 1, a 2 are the positive design parameters.
Remark 3: In the proposed controller, the control design Equation (40) has a concise form and is easy to implement in practical engineering, benefiting from the following points. (1) Although the incorporated RBF NNs are used to tackle the structure uncertainties, no NNs weights require to be updated online due to the superiority of the robust neural damping technique. (2) This paper tackles the gain uncertainty caused by rudder angle via tuning and compensation online by an adaptive parameter, to improve the availability of the proposed controller in practical marine engineering.
4.2. Stability Analysis
Theorem 1
Consider the closed-loop system composed of subsystems Equations (11) and (25) satisfying the Assumptions 1–3, the error variable Equations (29), (34), the virtual controller Equation (31), the adaptive neural controller Equation (40), and the gain-related adaptive law Equation (41). All initial conditions are satisfied within a compact set $\Omega=\{(x_{e}, y_{e}, \psi_{e}, y_{r}, \tilde{\lambda}_{{g}_{r}}) \vert x_{e}^{2} + y^{2}_{e} + \psi^{2}_{r} + y_{r}^{2} + r^{2}_{e} + \tilde{\lambda}^{2}_{{g}_{r}} \leq <xref ref-type="disp-formula" rid="eqn2">2</xref>\ell\}$ with any ℓ > 0, there exists appropriate control parameters
$k_{x}, \tau_{r}, k_{\psi}, k_{re}, k_{rn}, \sigma_{{g}_{r}}, \sigma_{r}$ such that all the signals in the closed-loop control system have Semi-Global Uniform Ultimate Bounded (SGUUB) stability. Furthermore, the output error ψ e = ψ − ψ d satisfies lim t→∞|ψ e(t)| = ε with any ε < 0 through tuning the controller parameters.
Proof. According to the control design process, the Lyapunov function candidate is chosen as follows:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn43.gif?pub-status=live)
The time derivative $\dot{V}$ can be derived from Equations (24), (30), (33) and (35):
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn44.gif?pub-status=live)
Note that, the following Equations (45), (46), (47) and (48) can facilitate the further derivation using Young's inequality.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn45.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn46.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn47.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn48.gif?pub-status=live)
Furthermore, inserting the actual control law Equations (40) and (41) into Equation (44), the time derivative $\dot{V}$ is formulated as Equation (49) by utilising the aforementioned inequations:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn49.gif?pub-status=live)
With $U_{\max}=\min\left\{U\Delta/\sqrt{(y_{e}+{\sigma}y_{\rm int})^{2}+\Delta^{2}}\right\}$, then, Equation (49) can be rewritten as:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn50.gif?pub-status=live)
where:
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn51.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn52.gif?pub-status=live)
We can integrate Equation (50) and obtain V(t) ≤ ϱ/2κ + (V(0) − ϱ/2κ)exp( − 2κt). Based on the closed-loop gain shaping algorithm (Zhang and Zhang, Reference Zhang and Zhang2014), V(t) is bounded, satisfying lim t→∞V(t) = ϱ/2κ. Thus, all the error signals in the closed-loop control system and the control law Equation (40) are SGUUB under the proposed control scheme.
5. ILLUSTRATIVE EXPERIMENTS
In this section, simulation results are presented to verify the effectiveness and superiority of the proposed control scheme. First, a comparative experiment with the result in Xiao and Jouffroy (Reference Xiao and Jouffroy2014) is presented in Section 5.1. Then, a path following experiment is illustrated in Section 5.2 to verify the system performance in a marine environment. Figure 5 describes the detailed conceptual signal flow box diagram for the closed-loop system, where the marked numbers denote formulae involved in the corresponding box. Here, a 12 m - long keeled sailboat as used in Xiao and Jouffroy (Reference Xiao and Jouffroy2014) is chosen as the test vessel and it is equipped with one main sail, one keel and one rudder.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig5g.jpeg?pub-status=live)
Figure 5. Conceptual signal flow box diagram for path-following control.
As to the external disturbances, a practical marine environment is considered in the simulation, that is: sea wind and irregular wind-generated waves. They are all simulated by employing a physical-based mathematical model. The Competitive Standing of the Norwegian Offshore Sector (NORSOK) wind and the Joint North Sea Wave Observation Project (JONSWAP) wave spectrums are adapted to produce these disturbances, which have been detailed in Fossen (Reference Fossen2011). Figure 6 describes the slow time-varying directional wind field and the waves surface with fifth level sea state, generated by wind. The main speed U tw = 10 · 5 m/s, wind direction ψ tw= 0 deg.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig6g.jpeg?pub-status=live)
Figure 6. Marine environment disturbance with fifth level sea state ψ tw=0 deg: (a) 2-D sketch field of surface wind. (b) Corresponding wind-generated waves.
5.1. The comparative experiment
In this section, a comparative experiment is used to demonstrate the effectiveness of the developed adaptive neural controller and its merits in the matter of practical marine environment disturbance, uncertain structure and gain-uncertainty in the existing result (Xiao and Jouffroy, Reference Xiao and Jouffroy2014). The desired course angle for the sailboat robot is ψ d= 60 deg, and the initial states of the sailboat robot are [x(0), y(0), ϕ(0), ψ(0), u(0), v(0), p(0), r(0), δ s(0), δ(0)] = [ − 20 m, 0 m, 0 deg, 0 deg, 1 m/s, 0 m/s, 0 deg/s, 0 deg/s, 0 deg, 0 deg]. For the compared control algorithm, the related parameters setting uses the values in Equation (54). The RBF NN in the control algorism is used to approximate the structure uncertainty. It contains 25 nodes, that is, l = 25, with centres spaced by [ − 2 · 5 m/s, 2 · 5 m/s] × [ − 2 · 5 m/s, 2 · 5 m/s] × [ − 0 · 6 rad/s, 0 · 6 rad/s] for f r(·), widths μi = 3 (i = 1, 2, …, l).
The response curves of the closed-loop systems under the two control algorithms are presented in Figure 7. The second curve describes the response of the rudder angle which considers the rudder servo. It is of note that the two control algorithms have a similar steady performance, but under the proposed control algorithm, the sailboat has a superior convergence speed. For quantitative purposes, three popular performance specifications in Equation (53) are employed to evaluate the corresponding algorithms. These are the Mean Absolute Error (MAE), the Mean Absolute control Input (MAI) and the Mean Total Variation (MTV) of the control. MAE can be used for measuring the performance of the system response and MAI and MTV are used for measuring properties of energy consumption and smoothness (Zhang and Zhang, Reference Zhang and Zhang2014). The corresponding quantitative valuation of the comparative experiment is measured and summarised as shown in Table 1. The proposed algorithm has improved closed-loop performance and energy efficiency.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn53.gif?pub-status=live)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig7g.jpeg?pub-status=live)
Figure 7. Comparison of control efforts: the proposed scheme (green line) and the control scheme in Xiao and Jouffroy (Reference Xiao and Jouffroy2014) (red line).
Table 1. Quantitative comparison of performances for the proposed scheme and the one in Xiao and Jouffroy (Reference Xiao and Jouffroy2014).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_tab1.gif?pub-status=live)
5.2. The path following experiment
To gather the ocean data, a reference path is planned, which is generated by waypoints W 1(0, 0), W 2(600, 0), W 3(900, 900), W 4(600, 180), W 5(0, 1800), W 6(0, 500) with units m. The initial states of the URS are [x(0), y(0), ϕ(0), ψ(0), u(0), v(0), p(0), r(0), δ s(0), δ(0)] = [ − 20 m, 0 m, 0 deg, 0 deg, 1 m/s, 0 m/s, 0 deg/s, 0 deg/s, 0 deg, 0 deg]. For the proposed control algorithm, the parameters are set as shown in Equation (54).
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_eqn54.gif?pub-status=live)
Figure 8 illustrates the simulated experiment of a path-following trajectory fusing the improved integral LOS guidance and adaptive neural control strategies with the simulated marine environment. The developed path-following control scheme shows an obviously good performance, and it could effectively control the sailboat for the path following mission along with the waypoints. In particular, while the sailboat sails in the upwind and downwind legs, the improved integral LOS guidance scheme can achieve a zigzag trajectory and automatic turn manoeuvring with safety bandwidth constraints. As is shown in Figure 8, the green solid line denotes the path based-waypoints. The blue dashed line denotes the reference path. The red solid line is the dynamic trajectory of the URS, with the ship shape curve to describe its attitudes.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig8g.jpeg?pub-status=live)
Figure 8. The path-following trajectory of the sailboat under the proposed scheme.
The control inputs δ S and δ are presented in Figure 9 with the simulated marine environment. It is obvious that the control inputs are within a reasonable range. Figure 10 describes the estimation of the adaptive parameter which is updated online to stabilise the effect of the gain uncertainty. It can be seen that the adaptive parameter changes drastically at 200 seconds due to the sailboat navigating in the upwind mode, especially when it is tacking. The upwind or downwind leg could increase the complexity and difficulty. Figure 11 presents the attitude variables of the sailboat, u, v, ψ, ϕ under the proposed control scheme. It can be noted that the attitude variables are Uniform Ultimate Bounded (UUB) in the simulated experiment. Therefore, it has been demonstrated that the proposed path-following control scheme has a fine performance in practical marine engineering. Based on the above experiments, the developed improved integral LOS guidance scheme and adaptive neural controller have a strong performance in terms of control performance, self-steering and have a small computation burden. In particular, the scheme with improved integral LOS guidance and the robust neural damping technique is more in accordance with practical marine engineering.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig9g.jpeg?pub-status=live)
Figure 9. Control inputs under the proposed scheme.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig10g.jpeg?pub-status=live)
Figure 10. Adaptive adjusting parameter under the proposed scheme.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20191017064604094-0592:S0373463319000353:S0373463319000353_fig11g.jpeg?pub-status=live)
Figure 11. The attitude variables of the sailboat under the proposed scheme.
6. CONCLUSION
In this paper, a novel strategy is studied for waypoint-based path following control for a URS in a practical marine environment. An improved integral LOS-based guidance principle is developed to enhance the automatic navigation of a robot sailboat, including the navigable mode, upwind mode and downwind mode. The intelligent heading selection strategy can assure a smooth switchover of modes while sailing in upwind or downwind modes. Furthermore, an adaptive neural controller is developed to control the heading ψ to converge to the objective ψ d quickly, and the URS sails within a small neighbourhood of the waypoint-based reference path. The SGUUB stability of the closed-loop system is proved via the Lyapunov theory. In contrast from the existing results, the performance of the control scheme is more in accordance with the engineering requirements in its advantages of concise form, robustness and small computational burden. Simulation experiments have been presented under a simulated marine environment and the main results have demonstrated the effectiveness of the proposed control system.
ACKNOWLEDGMENT
This research is partially supported by the National Postdoctoral Program for Innovative Talents (No. BX201600103), the Doctoral Scientific Research Foundation of Liaoning Province (No. 20170520189, 20180520039), the Program for Innovative Research Team in University (No.IRT17R13), the Fundamental Research Funds for the Central Universities (No. 3132018301, 3132018304, 3132016315), the National Natural Science Foundation of China (No. 61473183, 51679024) and the China Postdoctoral Science Foundation (No. 2016M601600). The authors would like to thank the anonymous reviewers for their valuable comments to improve the quality of this article.