Experimental Study of a Modified Command Governor Adaptive Controller for Depth Control of an Unmanned Underwater Vehicle
https://doi.org/10.1007/s11804-021-00225-y
-
Abstract
Command governor–based adaptive control (CGAC) is a recent control strategy that has been explored as a possible candidate for the challenging task of precise maneuvering of unmanned underwater vehicles (UUVs) with parameter variations. CGAC is derived from standard model reference adaptive control (MRAC) by adding a command governor that guarantees acceptable transient performance without compromising stability and a command filter that improves the robustness against noise and time delay. Although simulation and experimental studies have shown substantial overall performance improvements of CGAC over MRAC for UUVs, it has also shown that the command filter leads to a marked reduction in initial tracking performance of CGAC. As a solution, this paper proposes the replacement of the command filter by a weight filter to improve the initial tracking performance without compromising robustness and the addition of a closed-loop state predictor to further improve the overall tracking performance. The new modified CGAC (M-CGAC) has been experimentally validated and the results indicate that it successfully mitigates the initial tracking performance reduction, significantly improves the overall tracking performance, uses less control force, and increases the robustness to noise and time delay. Thus, M-CGAC is a viable adaptive control algorithm for current and future UUV applications.Article Highlights• Modification of command governor adaptive control using a weight filter and a closed-loop state predictor was experimentally verified.• The weight filter significantly reduces the effect of noise and adds the phase margin for increased stability without negatively affecting initial transient tracking.• M-CGAC significantly improves tracking performances throughout the transient region and is highly suitable for precise underwater vehicle operations. -
1 Introduction
Unmanned underwater vehicles (UUVs) are being increasingly used in underwater operations, replacing or supplementing divers, driven by the demand from the offshore oil industry, heightened maritime security concerns, and the need for comprehensive ocean data collection and ocean floor mapping (Brun 2012). Over the years, continuous developments have led to some form of autonomous control of many UUVs. Such autonomous control is challenging, mainly due to model uncertainty, highly nonlinear and time-varying hydrodynamic effects, and non-deterministic external disturbances. During operations, UUVs are consistently subjected to various parameter changes that affect the vehicle motion such as changes in the weight due to different payloads (Cavalletti et al. 2011), changes in buoyancy due to variations in the pressure, temperature, and salinity (Wu et al. 2014), change in the control effectiveness due to partial loss of thrust (Pivano 2008), and changes in the hydrodynamic load near the free surface (Sayer 1996). The mitigation of the effects of such changes on the motion of the vehicle is a crucial factor in complex UUV applications that require precise maneuvers. These include semi-autonomous remotely operated vehicles (ROVs) used in applications such as tidal energy infrastructure servicing under high-flow conditions (Proctor et al. 2015), autonomous underwater vehicles (AUVs) used for assisting divers to carry out underwater task (Stilinović et al. 2015), and launching and recovering of torpedo-shaped AUVs from submarines for military purposes (Rodgers et al. 2008). To enable these applications, it is essential that UUVs have good tracking performance throughout their entire mission. Good tracking performance in UUVs is fundamentally dependent on the motion control system (MCS) which mainly consist of the control system and guidance system supported by the navigation system. (Fossen 2011). Therefore, the MCS used in UUVs should adapt to the changes and ensure good tracking in both steady state and, more importantly, transient time.
Guidance system generates feasible desired reference path/trajectories as input to the control system, thus providing information on where the craft should go and how it should get there (Fossen 2011). Line-of-sight (LOS) is a popular and effective guidance law used extensively for autonomous marine vehicles due to its simplicity and intuitiveness. Traditional LOS methods usually steer the vessel toward a point lying at a constant distance ahead of the vehicle (look-ahead distance) along the desired path (Fossen et al. 2003). Lekkas and Fossen (2012) proposed a revised version of LOS, using a time-varying look-ahead distance, while Borhaug et al. (2008) has proposed an addition of integral actions to LOS (ILOS) to overcome disturbances. An extension of ILOS based on adaptive sideslip observe has been proposed by Fossen and Lekkas (2017) that can compensate effectively for the drift forces. Another guidance law that has gained traction recently for guidance of marine vehicles is vector field–based approach. A path-following controller for an autonomous marine vehicle using a vector field guidance law was developed in Xu and Guedes Soares (2016). This was extended to a time-varying vector field guidance law with a proof of uniform semiglobal exponential stability (USGES) in Xu et al. (2019) and Xu et al. (2020). A comparison between the vector field and the ILOS guidance laws for a UUV is given in Caharija et al. (2015).
Control system enables the vehicle to achieve a certain control objective despite environmental forces by determining the required control forces and moments to be provided by the actuators (Fossen 2011). Numerous advanced solutions for control system of UUVs have been proposed, with more recent literature covering robust control techniques such as higher order sliding mode control (Guerrero et al. 2019), model-based optimization techniques such as model predictive control (Zhang et al. 2019), intelligent control techniques such as fuzzy control (Yu et al. 2017), neural networks (Elhaki and Shojaei 2020), and probabilistic inference learning (Ariza Ramirez et al. 2020). Adaptive control is another important set of control techniques that have a unique advantage in UUV applications due to their inherent ability to adapt to changes that affect the vehicle behavior (von Ellenrieder 2021). This is further highlighted by the fact that some form of adaptation has been built into all of the aforementioned control solutions.
Model Reference Adaptive Control (MRAC) is one subset of adaptive control in which the desired characteristics of the system are represented usually by a reference model (Ioannou and Fidan 2006). The basic MRAC architecture has been modified over the years to yield; reduced parameter drift and increased robustness to unmodeled dynamics (Narendra and Annaswamy 1987; Macnab 2019), improved transient performance (Duarte-Mermoud and Narendra 1989; Yang et al. 2020), and increased robustness to time delay (Dydek et al. 2010). In addition, MRAC has been proposed as an outer loop for improved disturbance rejection of a classical PID (Alagoz et al. 2020) and fractional order PID control systems (Tepljakov et al. 2018).
Even though adaptive control has been proposed as a promising solution for UUVs (Antonelli et al. 2001; Fossen and Fjellstad 1996; McFarland and Whitcomb 2014; Valladarez and Toit 2015; Yuh et al. 1999), there are certain drawbacks that prevent their widespread use in advanced applications. One of the major drawbacks is the trade-off between transient tracking performance and adaptation gains. High adaptation gains are known to achieve accurate transient tracking, which in turn leads to oscillations in the control signal (Stepanyan and Krishnakumar 2012), reduced robustness to noise and time delay, and instability (Crespo et al. 2010). On the other hand, low adaptation gain mitigates the above issues, but it leads to poor reference tracking in the transient region (Zang and Bitmead 1994) that can be dangerous in cluttered environments. Several solutions (Cao and Hovakimyan 2006; Stepanyan and Krishnakumar 2010; Yucelen and Haddad 2012; Yucelen and Johnson 2012a) to this conundrum have been proposed in the past decade including L1 adaptive control (Cao and Hovakimyan 2006) which has been applied to UUVs by Maalouf (2013) and Valladarez (2015) with encouraging results. This method uses a modified MRAC architecture that places a low-pass filter in a unique position that subverts the high-frequency signals and decouples adaptation from robustness (Cao and Hovakimyan 2006). This decoupling theoretically enables the use of high adaptation gains to increase transient tracking but concern has been expressed by several researches that high adaptation gains could lead to numerical instability (Campbell et al. 2010; Ioannou et al. 2014) and parameter freezing (Ortega and Panteley 2014). Some of the other solutions (Stepanyan and Krishnakumar 2010; Yucelen and Haddad 2012), although not widely applied, also use some form of filtering with high adaptation gains and could face the same questions as L1 adaptive control.
Therefore, the authors have focused on modifications to MRAC that uses low adaptive gains, which provide an emphasis on stability and smooth control signals while improving transient performance (Makavita 2018). One such method is Command Governor Adaptive Control (CGAC) (Yucelen and Johnson 2012a) which uses an additional linear dynamical system, driven by the system error, named command governor to modify the command signal. This in turn leads to improved transient performance at low adaptation gains and an inherent disturbance rejection capability (Yucelen and Johnson 2012b). The authors initially applied CGAC to a UUV in simulation to verify the tracking and disturbance rejection improvements in Makavita et al. (2015) and confirmed that CGAC disturbance rejection ability allowed it to overcome a significant actuator dead-zone without using an additional dead-zone inverse in Makavita et al. (2016a). The authors validated through experiments the tracking improvement, disturbance rejection, and dead-zone overcoming effect in Makavita et al. (2019a) for heading control of a UUV, i.e., the AMC ROV.
A possible drawback of CGAC is that the command governor has the tendency to amplify measurement noise (Yucelen and Johnson 2012b) into the control signal that adversely affect the robustness properties of CGAC. A solution to this was provided in Yucelen and Johnson (2012b) that uses a low-pass filter named the command filter to filter out noise from the command governor signal. The authors confirmed through simulations the efficacy of this solution for UUV operations in Makavita et al. (2016a) and showed that at high noise levels the command filter by itself was insufficient and some input filtering of sensor measurements was also required. In addition, it was shown that the command filter also increases robustness to time delay that can cause instability. A further experimental study (Makavita et al. 2019b) of depth control provided an opportunity to show the effect on CGAC of high input noise and time delay due to depth rate estimation and input filtering, respectively. It was shown that although a command filter can be designed to reduce the measurement noise in tandem with input filtering and concurrently overcome instability from time delay, it causes an initial period of very poor reference tracking and the control signal noise level remain much higher than standard MRAC.
Even though CGAC outperformed MRAC in all performance indicators after a sufficient time has passed, it was apparent that a solution was required for this initial period of poor performance as well as further reducing noise levels without sacrificing tracking performance or robustness if CGAC was to achieve its full potential for UUV operations. To this end, this paper presents a possible solution by removing the command filter and combining CGAC with a weight filter and state predictor based on Yucelen and Haddad (2013) and Lavretsky et al. (2010) respectively to improve the overall tracking performance while retaining an improved robustness to noise and time delay without incurring an initial period of poor tracking. The final control system with these modifications is termed modified CGAC (M-CGAC), which is tested using experiments for depth control and compared with previous results derived in Makavita et al. (2019b) for depth control using the CGAC.
2 Adaptive Control Architecture
This section gives a brief introduction to MRAC, CGAC, and modified CGAC.
2.1 Model Reference Adaptive Control
As described in Yucelen and Johnson (2013), consider the nonlinear uncertain dynamical system given by,
$$ \dot{\boldsymbol{x}}(t)=\boldsymbol{Ax}(t)+\boldsymbol{H} \boldsymbol{\delta} \left(\boldsymbol{x}(t)\right)+\boldsymbol{B}u(t),\boldsymbol{x}(0)={\boldsymbol{x}}_0,t={\overline{\mathbb{R}}}_{+} $$ (1) where x(t) ∈ ℝp is the state vector, u(t) ∈ ℝq is the control input, δ : ℝp → ℝq is an uncertainty, A ∈ ℝp × p is a known system matrix, B ∈ ℝp × q is an unknown control input matrix, H ∈ ℝp × q is a known uncertainty input matrix, and the pair (A, B) is controllable. It is also assumed that δ(x) is parameterized as δ(x) = WTσ(x), where W ∈ ℝs × q is an unknown weight matrix, and σ : ℝq → ℝs is a known basis function of the form σ(x) = [σ1(x), σ2(x), …., σs(x)]T. It is further assumed that B is parameterized as B = HΛ, where det(HTH) ≠ 0, and Λ ∈ ℝq × q is an unknown control effectiveness matrix.
The ideal reference model that specifies a desired closed-loop dynamical system performance is given by
$$ {\dot{\boldsymbol{x}}}_m(t)={\boldsymbol{A}}_m{\boldsymbol{x}}_m(t)+{\boldsymbol{B}}_mc(t),{\boldsymbol{x}}_m(0)={\boldsymbol{x}}_0,t={\overline{\mathbb{R}}}_{+} $$ (2) where xm(t) ∈ ℝp is the reference state vector, c(t) ∈ ℝq is the given uniformly continuous bounded command, Am ∈ ℝp × p is the Hurwitz reference system matrix, and Bm ∈ ℝp × q is the command input matrix.
The objective of MRAC is to design a feedback control law u(t) such that x(t) asymptotically follows xm(t), i.e., $ \underset{t\to \infty }{\lim}\left\Vert {\boldsymbol{e}}_m\right\Vert =0 $, where em ≙ x − xm is the system error. Let u(t) be given by
$$ \boldsymbol{u}(t)={\boldsymbol{u}}_n(t)+{\boldsymbol{u}}_a(t) $$ (3) where un(t) ∈ ℝq is the nominal feedback control law and ua(t) ∈ ℝq is the adaptive feedback control law. The nominal control law is given by
$$ {\boldsymbol{u}}_n(t)={\boldsymbol{K}}_1\boldsymbol{x}(t)+{\boldsymbol{K}}_2\boldsymbol{c}(t) $$ (4) where K1 ∈ ℝq × p is the nominal feedback gain and K2 ∈ ℝq × q is the nominal feedforward gain, such that the following matching condition holds.
$$ {\boldsymbol{A}}_m=\boldsymbol{A}+\boldsymbol{H}{\boldsymbol{K}}_1,\kern0.75em {\boldsymbol{B}}_m=\boldsymbol{H}{\boldsymbol{K}}_2,\kern0.5em \mathrm{and}\ \det \left({\boldsymbol{K}}_2\right)\ne 0 $$ (5) Applying the control law defined in Eq. (3) into Eq. (1) and simplifying yields
$$ \dot{\boldsymbol{x}}(t)={\boldsymbol{A}}_m\boldsymbol{x}(t)+{\boldsymbol{B}}_m\boldsymbol{c}(t)+\boldsymbol{H}\boldsymbol{\Lambda } \left[\begin{array}{l}{\boldsymbol{W}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+\\ {}{\boldsymbol{u}}_a(t)+{\boldsymbol{W}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\end{array}\right] $$ (6) where Wun ≜ 1 − Λ−1 ∈ ℝq × q and Wσ ≜ WΛ−1 ∈ ℝs × q. Furthermore, the adaptive feedback law is selected as
$$ {\boldsymbol{u}}_a(t)=-{{\hat{\boldsymbol{W}}}_{un}}^{\mathrm{T}}(t){\boldsymbol{u}}_n(t)-{{\hat{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}(t)\boldsymbol{\sigma} \left(\boldsymbol{x}\right) $$ (7) where $ {\hat{\boldsymbol{W}}}_{un}(t)\in {\mathbb{R}}^{q\times q} $ and $ {\hat{\boldsymbol{W}}}_{\sigma }(t)\in {\mathbb{R}}^{s\times q} $ are estimates of Wun and Wσ, satisfying the update laws given by
$$ {\dot{\hat{\boldsymbol{W}}}}_{un}(t)={\boldsymbol{\Gamma}}_{un}{\boldsymbol{u}}_n(t){{\boldsymbol{e}}_m}^{\mathrm{T}}\boldsymbol{PH} $$ (8) $$ {\dot{\hat{\boldsymbol{W}}}}_{\sigma }(t)={\boldsymbol{\Gamma}}_{\sigma}\boldsymbol{\sigma} \left(\boldsymbol{x}(t)\right){{\boldsymbol{e}}_m}^{\mathrm{T}}\boldsymbol{PH} $$ (9) where Γun ∈ ℝq × q and Γσ ∈ ℝs × s are learning rates and P = PT > 0 is the solution of the Lyapunov equation $ \bf{0}={\boldsymbol{A}}_m^{\mathrm{T}}\boldsymbol{P}+\boldsymbol{P}{\boldsymbol{A}}_m+\boldsymbol{Q} $ for some Q = QT > 0. Now using Eq. (7) in Eq. (6) yields
$$ \dot{\boldsymbol{x}}(t)={\boldsymbol{A}}_m\boldsymbol{x}(t)+{\boldsymbol{B}}_m\boldsymbol{c}(t)-\boldsymbol{H}\boldsymbol{\Lambda } \left[\begin{array}{l}{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}(t){\boldsymbol{u}}_n(t)+\\ {}{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}(t)\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\end{array}\right] $$ (10) where $ {\overset{\sim }{\boldsymbol{W}}}_{un}(t)\triangleq {\hat{\boldsymbol{W}}}_{un}(t)-{\boldsymbol{W}}_{un}\in {\mathbb{R}}^{q\times q} $ and $ {\overset{\sim }{\boldsymbol{W}}}_{\sigma }(t)\triangleq {\hat{\boldsymbol{W}}}_{\sigma }(t)-{\boldsymbol{W}}_{\sigma}\in {\mathbb{R}}^{s\times q} $. The system error dynamics is derived by subtracting Eq. (2) from Eq. (10) to give
$$ {\dot{\boldsymbol{e}}}_m(t)={\boldsymbol{A}}_m{\boldsymbol{e}}_m(t)-\boldsymbol{H}\boldsymbol{\Lambda } \left[{{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}(t){\boldsymbol{u}}_n(t)+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}(t)\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right] $$ (11) It is shown by the Lyapunov analysis in Yucelen and Johnson (2013) that for the update laws Eq. (8) and Eq. (9), the system is asymptotically stable, i.e., $ \underset{t\to \infty }{\lim}\left\Vert {\boldsymbol{e}}_m\right\Vert =0 $.
2.2 Command Governor Adaptive Control
Let the command signal in Eqs. (2) and (4) be given by
$$ \boldsymbol{c}(t)={\boldsymbol{c}}_d(t)+\boldsymbol{G}{\boldsymbol{g}}_f(t) $$ (12) where cd(t) ∈ ℝq is now the given uniformly continuous bounded command and Ggf(t) ∈ ℝq × q is the command governor signal with G ∈ ℝq × p being, the matrix defined by
$$ \boldsymbol{G}={\boldsymbol{K}}_2^{-1}{\boldsymbol{H}}^L={\boldsymbol{K}}_2^{-1}{\left({\boldsymbol{H}}^{\mathrm{T}}\boldsymbol{H}\right)}^{-1}{\boldsymbol{H}}^{\mathrm{T}} $$ (13) and gf(t) ∈ ℝp × q is the low-pass-filtered command governor output, g(t) ∈ ℝp × q generated by
$$ \dot{\boldsymbol{f}}(t)=-\lambda \boldsymbol{f}(t)+\lambda {\boldsymbol{e}}_m(t),\kern0.75em \boldsymbol{f}(0)=\bf{0},\kern0.75em t\in {\overline{\mathbb{R}}}_{+} $$ (14) $$ \boldsymbol{g}(t)=\lambda \boldsymbol{f}(t)+\left({\boldsymbol{A}}_m-\lambda {\boldsymbol{I}}_p\right){\boldsymbol{e}}_m(t) $$ (15) $$ {\dot{\boldsymbol{g}}}_f(t)=-\kappa {\boldsymbol{g}}_f(t)+\kappa \boldsymbol{g}(t),\kern0.75em {\boldsymbol{g}}_f(0)=\bf{0},\kern0.75em t\in {\overline{\mathbb{R}}}_{+} $$ (16) where f(t) is the command governor state vector, λ = ℝ+ is the command governor gain, and κ = ℝ+ is the command governor filter gain that should be selected sufficiently small to ensure efficient low-pass filtering.
Due to the command governor output in Eq. (12), Eqs. (2) and (10) are respectively modified as
$$ {\dot{\boldsymbol{x}}}_m(t)={\boldsymbol{A}}_m{\boldsymbol{x}}_m(t)+{\boldsymbol{B}}_m{c}_d(t)+{\boldsymbol{P}}_H{\boldsymbol{g}}_f(t) $$ (17) $$ \dot{\boldsymbol{x}}(t)={\boldsymbol{A}}_m\boldsymbol{x}(t)+{\boldsymbol{B}}_m{\boldsymbol{c}}_d(t)+{\boldsymbol{P}}_H{\boldsymbol{g}}_f(t)-\boldsymbol{H}\boldsymbol{\Lambda } \left[\begin{array}{l}{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+\\ {}{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\end{array}\right] $$ (18) where PH = H(HTH)−1HT. However, this does not change the system error dynamics given by Eq. (11) as seen by subtracting Eq. (17) from Eq. (18). Therefore, the update laws in Eqs. (8) and (9) also remain the same.
It has been shown in Yucelen and Johnson (2013) using Lyapunov analysis that the system with the command governor is also asymptotically stable, i.e., $ \underset{t\to \infty }{\lim}\left\Vert {\boldsymbol{e}}_m\right\Vert =0, $ and that $ \underset{t\to \infty }{\lim }{\boldsymbol{g}}_f(t)=0 $. From this it can be shown that the modified reference model given in Eq. (17) asymptotically converge to the ideal reference model given by
$$ {\dot{\boldsymbol{x}}}_l(t)={\boldsymbol{A}}_m{\boldsymbol{x}}_l(t)+{\boldsymbol{B}}_m{c}_d(t), $$ (19) where xl(t) ∈ ℝp is the ideal reference vector. Therefore, the uncertain dynamical system in Eq. (1) approaches the ideal reference model in Eq. (19) in steady state.
In addition, from Proposition 7.1 in Yucelen and Johnson (2013), if λ is sufficiently large, the system approximates the ideal reference model in Eq. (19) modified by a term PH(gf(t) − g(t)), in transient time without using high learning rates. Although it is shown that $ \underset{t\to \infty }{\lim }{\boldsymbol{P}}_H\left({\boldsymbol{g}}_f(t)-\boldsymbol{g}(t)\right)=0 $, it is expected that there will be deviations from the ideal reference model initially until the modification term has died down. The deviation in transient time depends on the magnitude of the term gf(t) − g(t). A small command governor filter rate κ as required for increased robustness under high noise and time delay conditions also increase the magnitude of the term thus adversely affecting the initial tracking performance of CGAC.
2.3 Modified Command Governor Adaptive Control
The CGAC given in Section 2.3.1 is modified in three stages to derive M-CGAC. These three stages and expected advantage of each modification are given below.
2.3.1 Removal of Command Filter
If the command filter given by Eq. (16) is removed, then Eqs. (14) and (15) still holds and Eqs. (17) and (18) are modified to
$$ {\dot{\boldsymbol{x}}}_m(t)={\boldsymbol{A}}_m{\boldsymbol{x}}_m(t)+{\boldsymbol{B}}_m{c}_d(t)+{\boldsymbol{P}}_H\boldsymbol{g}(t) $$ (20) $$ \dot{\boldsymbol{x}}(t)={\boldsymbol{A}}_m\boldsymbol{x}(t)+{\boldsymbol{B}}_m{\boldsymbol{c}}_d(t)+{\boldsymbol{P}}_H\boldsymbol{g}(t)-\boldsymbol{H}\boldsymbol{\Lambda } \left[\begin{array}{l}{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+\\ {}{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\end{array}\right] $$ (21) However, this does not change the system error dynamics given by Eq. (11) as seen by subtracting Eq. (20) from Eq. (21). Therefore, the update laws in Eqs. (8) and (9) also remain the same. In addition, the term PH(gf(t) − g(t)) will no longer modify ideal reference model in Eq. (19) thus from Proposition 6.1 in Yucelen and Johnson (2013), if λ is sufficiently large, the uncertainties $ \boldsymbol{H}\boldsymbol{\varLambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right] $ in Eq. (21) are rapidly suppressed in transient time through PHg(t), and the system approximates the ideal reference model of Eq. (19) in transient time without using high learning rates.
Expected advantage: Improve initial transient performance compared to CGAC due to removal of modification term PH(gf(t) − g(t)).
2.3.2 Addition of Weight Filter Modification
As proposed by Yucelen and Haddad (2013) taking $ \hat{\boldsymbol{W}}(t)\in {\mathbb{R}}^{a\times b} $ as a general weight estimate that can represent both $ {\hat{\boldsymbol{W}}}_{un}(t) $ and $ {\hat{\boldsymbol{W}}}_{\sigma }(t) $, a low-pass-filtered weight estimate $ {\hat{\boldsymbol{W}}}_f(t)\in {\mathbb{R}}^{a\times b} $ of $ \hat{\boldsymbol{W}}(t) $ is given by
$$ {\dot{\hat{\boldsymbol{W}}}}_f(t)={\boldsymbol{\Gamma}}_f\left[\hat{\boldsymbol{W}}(t)-{\hat{\boldsymbol{W}}}_f(t)\right],\kern0.75em {\hat{\boldsymbol{W}}}_f(0)={\hat{\boldsymbol{W}}}_0,\kern0.5em t\ge 0 $$ (22) where Γf ∈ ℝa × a is a positive definite filter gain matrix chosen such that λmax(Γf) ≤ γf, max, and where γf, max ≥ 0 is a design parameter that needs to be small enough to cut off high frequencies from $ \hat{\boldsymbol{W}}(t) $.
For clarity, both Eqs. (8) and (9) are represented by a general update law given by
$$ \dot{\hat{\boldsymbol{W}}}(t)=\boldsymbol{\Gamma} \boldsymbol{\beta} (t){\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{PH} $$ (23) where Γ = Γun or Γσ and β(t) = σ(x(t)) or un(t). A modification term was added to the update law Eq. (23) to enforce a distance condition between the trajectories of $ \hat{\boldsymbol{W}}(t) $ and $ {\hat{\boldsymbol{W}}}_f(t). $ This leads to a minimization problem of the cost function J given by
$$ J\left(\hat{\boldsymbol{W}},{\hat{\boldsymbol{W}}}_f\right)=\frac{1}{2}{\left\Vert \hat{\boldsymbol{W}}-{\hat{\boldsymbol{W}}}_f\right\Vert}_F^2 $$ (24) with a negative gradient with respect to $ \hat{\boldsymbol{W}}(t) $ given by
$$ \frac{\partial \left[-J\Big(\hat{\boldsymbol{W}}(t),{\hat{\boldsymbol{W}}}_f(t)\right]}{\partial \hat{\boldsymbol{W}}(t)}=-\left(\hat{\boldsymbol{W}}(t)-{\hat{\boldsymbol{W}}}_f(t)\right),\kern0.5em t\ge 0 $$ (25) which is also the structure of the proposed modification term. This leads to the modified update law of Eq. (26) given by
$$ \dot{\hat{\boldsymbol{W}}}(t)=\boldsymbol{\Gamma} \left[\boldsymbol{\beta} (t){\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{PH}-\alpha \left(\hat{\boldsymbol{W}}(t)-{\hat{\boldsymbol{W}}}_f(t)\right)\right] $$ (26) which yield the following modified update laws for Eqs. (8) and (9) respectively,
$$ {\dot{\hat{\boldsymbol{W}}}}_{un}(t)={\boldsymbol{\Gamma}}_{un}\left[{\boldsymbol{u}}_n(t){\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{PH}-\alpha \left({\hat{\boldsymbol{W}}}_{un}(t)-{\hat{\boldsymbol{W}}}_{un f}(t)\right)\right] $$ (27) $$ {\dot{\hat{\boldsymbol{W}}}}_{\sigma }(t)={\boldsymbol{\Gamma}}_{\sigma}\left[\boldsymbol{\sigma} \left(\boldsymbol{x}(t)\right){\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{PH}-\alpha \left({\hat{\boldsymbol{W}}}_{\sigma }(t)-{\hat{\boldsymbol{W}}}_{\sigma f}(t)\right)\right] $$ (28) where α > 0 is a modification gain, and $ {\hat{\boldsymbol{W}}}_{unf}(t) $ and $ {\hat{\boldsymbol{W}}}_{\sigma f}(t) $ are the low-pass-filtered weight estimate of $ {\hat{\boldsymbol{W}}}_{un}(t) $ and $ {\hat{\boldsymbol{W}}}_{\sigma }(t) $, respectively.
Expected advantage: Significant reduction of measurement noise due to high-frequency filtering effect of weight filter and additional input filtering made possible by the increased robustness to time delay. This increase robustness to time delay stems from improved phase margin of the closed-loop system due to the weight filter (Yucelen and Haddad 2013).
Furthermore, CGAC with modifications given in Sections 2.3.1 and 2.3.2 is named robust CGAC (R-CGAC) in this paper due to its increased robustness compared to original CGAC.
2.3.3 Addition of Closed-Loop State Predictor
A closed-loop state predictor is introduced to add a prediction error in tandem with the system error for weight estimation. As given in Lavretsky et al. (2010),
$$ \dot{\hat{\boldsymbol{x}}}(t)={\boldsymbol{A}}_{prd}\left(\hat{\boldsymbol{x}}\left(\mathrm{t}\right)-\boldsymbol{x}(t)\right)+{\boldsymbol{A}}_m\boldsymbol{x}(t)+{\boldsymbol{B}}_m\boldsymbol{c}(t) $$ (29) where Aprd ∈ ℝp × p is a Hurwitz matrix, and $ \hat{\boldsymbol{x}}(t)\in {\mathbb{R}}^p $ is the predictor states vector. When added to CGAC, it will modify Eq. (29) as
$$ \dot{\hat{\boldsymbol{x}}}\left(\mathrm{t}\right)={\boldsymbol{A}}_{prd}\hat{\boldsymbol{e}}(t)+{\boldsymbol{A}}_m\boldsymbol{x}\left(\mathrm{t}\right)+{\boldsymbol{B}}_m{\boldsymbol{c}}_d\left(\mathrm{t}\right)+{\boldsymbol{P}}_H\boldsymbol{g}(t). $$ (30) The prediction error is defined as $ \hat{\boldsymbol{e}}(t)\stackrel{\wedge}{=}\hat{\boldsymbol{x}}(t)-\boldsymbol{x}(t) $. The predictor error dynamics can be derived by subtracting Eq. (21) from Eq. (30) as
$$ \dot{\hat{\boldsymbol{e}}}(t)={\boldsymbol{A}}_m\hat{\boldsymbol{e}}(t)+\boldsymbol{H}\boldsymbol{\Lambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}(t){\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}(t)\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]. $$ (31) Now, if the update laws are given as shown in Eqs. (32) and (33),
$$ {\dot{\hat{\boldsymbol{W}}}}_{un}(t)={\boldsymbol{\Gamma}}_{un}\left[\begin{array}{l}{\boldsymbol{u}}_n(t)\left({\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{P}-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\right)\boldsymbol{H}-\\ {}\alpha \left({\hat{\boldsymbol{W}}}_{un}(t)-{\hat{\boldsymbol{W}}}_{un f}(t)\right)\end{array}\right] $$ (32) $$ {\dot{\hat{\boldsymbol{W}}}}_{\sigma }(t)={\boldsymbol{\Gamma}}_{\sigma}\left[\begin{array}{l}\boldsymbol{\sigma} \left(\boldsymbol{x}(t)\right)\left({\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{P}-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\right)\boldsymbol{H}-\\ {}\alpha \left({\hat{\boldsymbol{W}}}_{\sigma }(t)-{\hat{\boldsymbol{W}}}_{\sigma f}(t)\right)\end{array}\right] $$ (33) where $ {\boldsymbol{P}}_{prd}={\boldsymbol{P}}_{prd}^{\mathrm{T}} \gt 0 $ is the solution of the Lyapunov equation $ {\bf{0}}={\boldsymbol{A}}_{prd}^{\mathrm{T}}{\boldsymbol{P}}_{prd}+{\boldsymbol{P}}_{prd}{\boldsymbol{A}}_{prd}+{\boldsymbol{Q}}_{prd} $ for some $ {\boldsymbol{Q}}_{prd}={\boldsymbol{Q}}_{prd}^{\mathrm{T}} \gt 0 $, then, it can be shown by a Lyapunov analysis that
1) The system error is uniformly ultimately bounded, square integrable, and globally asymptotically stable, i.e., $ \underset{t\to \infty }{\lim}\left\Vert {\boldsymbol{e}}_m\right\Vert =0 $;
2) The prediction error is uniformly ultimately bounded, square integrable, and globally asymptotically stable, i.e., $ \underset{t\to \infty }{\lim}\left\Vert \hat{\boldsymbol{e}}\right\Vert =0 $.
The proof is given in the Appendix.
Expected advantage: Improved overall reference tracking due to composite adaptation using both tracking and prediction errors based on the CMRAC conjecture (Lavretsky et al. 2010) and experimental results (Makavita et al. 2018).
The resulting adaptive control architecture with both weight filter and state predictor is shown in Figure 1 and is referred in this paper as modified CGAC (M-CGAC).
3 Control Plant Model
For the purpose of marine control system design, a simplified model of the complex 6-DOF kinematics and dynamics must be developed. This Control Plant Model (CPM) is also used as a basis for analytical stability analysis and should capture only the essential features of the system. This section describes the CPM used in this study.
3.1 Reference Frames
It is convenient to use two reference frames to model the dynamics of a UUV as shown in Figure 2.
3.2 Thruster Model
In the actual vehicle, the vertical movement is achieved by a vertical Seabotix© thruster (Le et al. 2013; SeaBotix 2015). The thrust force of the Seabotix© thruster depends on the input voltage, which is approximately represented by a simple thruster model including a dead-zone as given in Makavita et al. (2016a).
If it is assumed that the thruster dead-zone is overcome by a dead-zone inverse, then the thrust F produced by the thruster, which is also the vertical control effort (τw), is approximately related to the thruster input voltageVi linearly by the multiplication factor Kvf given as
$$ {\tau}_w=F={K}_{vf}{V}_i. $$ (34) The input voltage to a thruster is determined by the appropriate input to the motor controller. The latter input is specified using discrete unitless values between 0 and 255, where zero voltage is specified by 128. Therefore, there is a conversion from the value specified to the motor controller to the input voltage applied to the thruster. This conversion consists of a multiplication factor and a constant bias term. For simplicity, it is assumed that the motor control input denoted by Vm is continuous, although in practice it can easily be converted to discrete values. The multiplication factor is denoted by Kiv while the bias value is 128. Thus,
$$ {V}_i={K}_{iv}\left({V}_m-128\right). $$ (35) Inserting Eq. (35) into Eq. (34) yields
$$ {\tau}_w={K}_{vf}{K}_{iv}\left({V}_m-128\right) $$ (36) By denoting the normalized force as
$$ {\overset{\sim }{\tau}}_w=\frac{\tau_w}{K_{vf}{K}_{iv}}\kern1em $$ (37) Equation (36) is written as
$$ {\overset{\sim }{\tau}}_w=\left({V}_m-128\right) $$ (38) The multiplicative factors can be assumed unknown in adaptive controller design and estimated as part of the control effectiveness. Therefore, the control algorithms will generate the normalized force directly, which will then be converted back to continuous motor inputs using Eq. (39) and then rounded to get the discrete motor inputs.
$$ {V}_m=\left({\overset{\sim }{\tau}}_w+128\right) $$ (39) 3.3 Control Plant Model for Depth
Several CPMs with varying complexity have been proposed in the literature (Antonelli et al. 2001; Fossen 1994; Healey and Lienard 1993; Smallwood and Whitcomb 2004; Yoerger and Slotine 1991) and their advantages and disadvantages are concisely reported by Refsnes (2007). Of those discussed, a simple and popular CPM is the 1-DOF CPM given in Smallwood and Whitcomb (2004). This CPM has the following general dynamic equation for each DOFi,
$$ {m}_i{\dot{\upsilon}}_i(t)+{d}_{Li}{\upsilon}_i(t)+{d}_{Qi}{\upsilon}_i(t)\left|{\upsilon}_i(t)\right|+{b}_i={\tau}_i $$ (40) where mi > 0 is the effective mass, dLi > 0 and dQi > 0 are the linear and quadratic hydrodynamic drag coefficients, υi(t) is the velocity, bi is the buoyancy, and τi is the net control force.
It is derived based on the following assumptions that are not theoretically justified (Smallwood and Whitcomb 2004) but are accepted to apply quite well for low-speed underwater vehicles (Fossen 1994; Caccia et al. 2000).
Assumption 1 Ob is chosen to coincide with the center of gravity, CG (i.e., xg = 0, yg = 0, zg = 0) with the body axes, Xb, Yb, and Zb, coinciding with the principal axes of inertia (Fossen 1994).
Assumption 2 Off-diagonal components of the added mass matrix can be neglected (Fossen 1994) and the diagonal terms are constant (Caccia et al. 2000).
Assumption 3 Damping terms higher than 2nd order and off-diagonal terms can be neglected (Fossen 1994).
Assumption 4 Linear and nonlinear stabilizing damping dominate the influence of the Coriolis forces and moments (Refsnes 2007).
In addition, due to the structural design, the following assumptions hold for the AMC ROV.
Assumption 5 CG and the center of buoyancy (CB) are offset only in the Zb direction denoted by zb.
Assumption 6 Uncontrolled DOFs of pitch angle (θ) and roll angle (ϕ) are assumed to be negligible.
This CPM had been successfully validated by several researchers for different UUVs. In Smallwood and Whitcomb (2004), the CPM for surge, sway, heave, and yaw is validated using experimental data from the Johns Hopkins University Remotely Operated Underwater Vehicle (JHUROV). They derived the CPM parameters using system identification and compared the simulated results with experimental results and showed that the CPM predicted the actual behavior with a mean absolute error of 0.016m/s for surge, sway, and heave and 0.0288rad/s for yaw. Complete details of the identification methods and procedure used to find the plant parameters are given in Smallwood and Whitcomb (2003). In Caccia et al. (2000), the models for surge, sway, and yaw were validated using the UUV designed and developed by the Institute for Ship Automation of the Italian National Research Council named ROMEO, while in Ridao et al. (2001), the surge, heave, and yaw models were validated, for the UUV designed at the University of Girona named GARBI.
The CPM for depth (heave) in this study was developed as follows. From Eq. (40), considering the depth DOF the following equation is obtained,
$$ {m}_w\dot{w}={Z}_ww+{Z}_{w\left|w\right|}w\left|w\right|+\left({F}_W-{F}_B\right)+{\tau}_w $$ (41) where mw, Zw, and Zw|w| are the effective mass, linear drag, and quadratic drag in depth DOF, respectively, w is the velocity in the Zb direction, FW is the weight of the vehicle, and FB is the buoyancy force. Rearranging Eq. (41) for $ \dot{w} $ yields,
$$ \dot{w}=\left(\frac{Z_w}{m_w}\right)r+\left(\frac{Z_{w\left|w\right|}}{m_w}\right)w\left|w\right|+\frac{F_W-{F}_B}{m_w}+\left(\frac{1}{m_w}\right){\tau}_w. $$ (42) Replacing τw with the normalized moment using Eq. (37) yields $ \dot w = \left( {\frac{{{Z_w}}}{{{m_w}}}} \right)r + \left( {\frac{{{Z_{w\left| w \right|}}}}{{{m_w}}}} \right) + \frac{{{F_W} - {F_B}}}{{{m_w}}} + \left( {\frac{{{K_{vf}}{K_{iv}}}}{{{m_w}}}} \right){{\tilde \tau _w}} $
or
$$ \dot{w}={\theta}_1w+{\theta}_2w\left|w\right|+{\theta}_3+{\theta}_4{\tau}_w $$ (43) where $ {\theta}_1=\left(\frac{Z_w}{m_w}\right) $, $ {\theta}_2=\left( {\frac{{{Z_{w\left| w \right|}}}}{{{m_w}}}} \right) $, $ {\theta}_3=\frac{F_W-{F}_B}{m_w} $, and $ {\theta}_4=\left(\frac{K_{vf}{K}_{iv}}{m_w}\right) $.
The general kinematic equation for depth of an underwater vehicle is given by
$$ \dot{d}=-u\sin \theta +v\cos \theta \sin \phi +w\cos \theta \cos \phi, $$ (44) where d is the position in the Ze direction. Simplifying Eq. (44) using Assumptions 5 and 6 give
$$ \dot{d}=w. $$ (45) From Eqs. (43) and (45), the state space form of the depth CPM is given as
$$ \left(\begin{array}{l}\dot{d}\\ {}\dot{w}\end{array}\right)=\left(\begin{array}{ll}0& 1\\ {}0& 0\end{array}\right)\left(\begin{array}{l}\dot{d}\\ {}w\end{array}\right)+\left(\begin{array}{l}0\\ {}1\end{array}\right)\left[{\theta}_1w+{\theta}_2w\left|w\right|+{\theta}_3\right]+\left(\begin{array}{l}0\\ {}1\end{array}\right){\theta}_4{\overset{\sim }{\tau}}_w. $$ (46) Equation (46) has the general state space form of Eq. (1) with p = 2 and q = 1 where $ \boldsymbol{x}=\left(\begin{array}{l}d\\ {}w\end{array}\right),\kern0.75em \boldsymbol{A}=\left(\begin{array}{ll}0& 1\\ {}0& 0\end{array}\right),\kern0.75em \boldsymbol{H}=\left(\begin{array}{l}0\\ {}1\end{array}\right) $, $ =\boldsymbol{H}\Lambda =\left(\begin{array}{l}0\\ {}{\theta}_4\end{array}\right), $ Λ = θ4, δ(x) = θ1x2 + θ2x2x2 + θ3, and $ u={\overset{\sim }{\tau}}_w $.
3.4 Reference Model
A reference model that generates a feasible reference signal must be developed for MRAC applications. There are numerous reference model design methods proposed in the literature (Fossen 2011; Fernandes et al. 2012; Fjellstad et al. 1992) out of which the filter-based method in Fossen (2011) is the simplest. As the CPM is a 2nd order system, the filter is selected to be in the same order. The standard 2nd order filter with the desired natural frequency (ωn) and damping ratio (ζ) is written as
$$ \left(\begin{array}{l}{\dot{d}}_m\\ {}{\dot{w}}_m\end{array}\right)=\left(\begin{array}{ll}0& 1\\ {}-{\omega}_n^2& -2\zeta {\omega}_n\end{array}\right)\left(\begin{array}{l}d\\ {}w\end{array}\right)+\left(\begin{array}{l}0\\ {}{\omega}_n^2\end{array}\right)c(t) $$ (47) Equation (47) has the general state space form of (2) with p = 2 and q = 1 where $ {\boldsymbol{x}}_m=\left(\begin{array}{l}{d}_m\\ {}{w}_m\end{array}\right) $, $ {\boldsymbol{B}}_m=\left(\begin{array}{l}0\\ {}{\omega}_n^2\end{array}\right) $, and $ {\boldsymbol{A}}_m=\left(\begin{array}{ll}0& 1\\ {}-{\omega}_n^2& -2\zeta {\omega}_n\end{array}\right) $.
Applying the matching condition in (5) with $ \boldsymbol{A}=\left(\begin{array}{ll}0& 1\\ {}0& 0\end{array}\right) $, $ \boldsymbol{H}=\left(\begin{array}{l}0\\ {}1\end{array}\right) $, K1 = [k11 k12], and K2 = k2 yields
$$ {\displaystyle \begin{array}{l}\left(\begin{array}{ll}0& 1\\ {}-{\omega}_n^2& -2\zeta {\omega}_n\end{array}\right)=\left(\begin{array}{ll}0& 1\\ {}0& 0\end{array}\right)+\left(\begin{array}{l}0\\ {}1\end{array}\right)\left[{k}_{11}\kern0.75em {k}_{12}\right]\\ {}\left(\begin{array}{l}0\\ {}{\omega}_n^2\end{array}\right)=\left(\begin{array}{l}0\\ {}1\end{array}\right){k}_2\end{array}} $$ (48) with the solutions $ {k}_{11}=-{\omega}_n^2,{k}_{12}=-2\zeta {\omega}_n $, and $ {k}_2={\omega}_n^2 $. Thus, $ {K}_1=\left[-{\omega}_n^2\kern0.5em -2\zeta {\omega}_n\right] $ and $ {K}_2={\omega}_n^2 $.
Since Eqs. (46) and (47) are second-order representations of Eqs. (1) and (2) the derivations in Section 2 can be directly applied for this CPM.
4 Experimental Setup and Test Cases
The experimental program was carried out using the ROV shown in Figure 2 which was designed and built at the Australian Maritime College (AMC). Its mass is approximately 20 kg and has dimensions of 83 cm × 45 cm × 27 cm in length, width, and height, respectively (Nguyen et al. 2011). The vehicle consists of two horizontal thrusters for horizontal motion and a vertical thruster for vertical motion. The thrusters are Seabotix© BTD-150, which can deliver a maximum thrust of 22 N (SeaBotix 2015). Each thruster operates with an input voltage up to 19V and has a measured thruster dead-zone of approximately 20% of the input. The thrusters are controlled by two MD22 motor controllers.
The depth measurement is obtained using a depth sensor that uses a Measurement Specialties MS5837-30BA pressure sensor (TE Connectivity 2015) which is pre-installed in a waterproof aluminum body (BlueRobotics 2016). The sensor can measure up to 300m in depth, with a resolution of 2mm (BlueRobotics 2016). The precision of the sensor is mainly affected by noise and drift and it has been shown by Gilooly (2018) that the noise rms is only 2.5 mm. Although the drift can be up to 1 cm per hour (Gilooly 2018), as the experiments were conducted for around 150 s and initial depth was reset to zero at beginning of each run, this led to a negligible effect on precision due to drift. An ATmega2560 microcontroller is used to interface sensors and motor controller boards to the control program running in the host computer. The motors and electronics are powered by three 18.5V-15Ah Li-Po batteries. A 40 m tether is used to connect the UUV to the host computer. Signals to and from the microcontroller were communicated through the tether cable using the RS485 communication protocol at a baud rate of 38400 bps. Although a tether was used, operations were autonomous as there was no direct human control of the vehicle.
The control algorithm was implemented as a continuous algorithm using the MATLAB/SimulinkTM platform on the host computer. In addition, an input filter, dead-zone inverse and thrust allocation block was also implemented. The AMC ROV sensor outputs were relayed through the microcontroller, to the computer and captured by the stream input block. The inputs to the motor controller on the AMC ROV were received from the microcontroller through the stream output block from the computer. To enable real-time operation, the Simulink model was run using Simulink Desktop Real-TimeTM (SDRT) in the external mode. The solver used was the ode5 (Dormand-Prince, RK5) with a fixed step size of 0.01 s. A schematic view summarizing the system's hardware architecture is given in Figure 3.
According to Eq. (38), the normalized control force has a range of −128 to 128, with 0 representing the zero thrust. The unit of measurement is considered being dimensionless. The tests were carried out over several weeks in the Survival Centre pool at AMC, which has a length, width, and maximum depth of 25m, 12m, and 4.2m, respectively.
4.1 Parameter Values
The adaptive control parameters were set as follows. For simplicity, all learning rates were taken as dependent on a single positive constant γ such that Γσ = γI3 and Γun = γ. Unless otherwise specified, all controllers used γ = 1. The command governor gain λ was set to 100 as done in both Makavita et al. (2015) and Makavita et al. (2019b). The command filter gain κ was set to 3 as done in Makavita et al. (2019b). For simplicity, weight filter gains were taken as dependent on a single positive constant γf such that Γunf = γf and Γσf = γfI3. γfwas set to 1 as a compromise between low-pass filtering (smallγf) and avoiding performance degradation (largeγf) (Fravolini et al. 2014). The modification gain α was set to 10 as a compromise between enforcing learning through low frequencies (high α) and maintaining the benefits of adaptation (low α) (Yucelen and Haddad 2013). For the state predictor from Lavretsky et al. (2010), it is proposed that Aprd = μAm and Pprd = μP where μ is a positive scalar. The value for μ is set to 10 as done in both Makavita et al. (2016b) and Makavita et al. (2018).
All the initial values of the CPM parameters were set to zero ($ {\hat{W}}_{un}=0 $ and $ {\hat{\boldsymbol{W}}}_{\sigma }=\left[0\kern0.5em 0\kern0.5em 0\right] $), thus assuming no a priori knowledge. While this is an extreme assumption considering that some values are known, albeit approximately (e.g., mass), it provides a good basis to test the ability of the controller under severe uncertainty. The reference model parameters were set to ωn = 0.3 rad/s and ζ = 1, which yields $ {\boldsymbol{K}}_1=\left[-0.09\kern0.5em -0.6\right] $ and K2 = 0.09. The reference model parameters were selected for a critically damped response with an approximate rise time of tr = 10 s, settling time of ts = 20 s by testing the feasibility of the reference signal.
4.2 Experimental Scenario
The experiments were conducted for CGAC, R-CGAC, and M-CGAC under three different phases. The first phase was the comparison between CGAC and R-CGAC for a normal depth change command. The second phase was the comparison of M-CGAC with both R-CGAC and CGAC for a normal depth change command. The final phase was the evaluation of M-CGAC with CGAC for performance under a sudden parameter change represented by the change in control effectiveness due to thrust loss. More details on the experimental scenarios are given below:
4.2.1 CGAC vs R-CGAC
CGAC and R-CGAC were applied to a depth change maneuver of 150 s duration, and their performances were compared, with the main objective of comparing tracking performance in the initial 50 s. In addition, tracking performance during the next 100 s (after the initial 50 s), and control signal noise levels and frequency content was also analyzed.
4.2.2 M-CGAC
The vehicle was tested for depth change for M-CGAC and compared with R-CGAC and CGAC. The main objective was to counteract the negative effect of weight filtering on tracking and to further improve tracking over CGAC. Furthermore, the learning rate was increased slightly with the objective of improving the tracking performance to meet the design specification of having rms depth tracking error of 0.02 m or lower for the entire run. In addition, control signal noise levels and frequency content were also analyzed.
4.2.3 Sudden Parameter Variation
This was represented by a 50% loss of thrust in the vertical thruster during operation. This type of partial failure can occur due to an electrical or mechanical malfunction. This situation was created by halving the voltage to the motor controllers. The partial failure was activated at 85 s after the start at a depth of 1 m. The objective was to ascertain the ability of M-CGAC to overcome such a failure and maintain the depth.
5 Experimental Results
For the purpose of measuring system performance, the system states were compared with the ideal reference states. Thus, the tracking error is defined as el ≙ x − xl. Performance of control methods was measured using six performance indices shown in Table 1. The first four indices were based on the tracking errors in depth (ed) and depth rate (ew), where $ {\boldsymbol{e}}_l^{\mathrm{T}}=\left[{e}_d\kern0.5em {e}_w\right] $, while the last two are based on the control effort. These performance indices were designed based on the work of Fossen and Fjellstad (1996).
Description Formulae rms depth error $ {d}_{e\_ rms}=\sqrt{\frac{1}{N}\sum \limits_{i=1}^N{\left({e}_d\right)}^2} $ rms depth rate error $ {w}_{e\_ rms}=\sqrt{\frac{1}{N}\sum \limits_{i=1}^N{\left({e}_w\right)}^2} $ maximum depth error de_max = max(ed) maximum depth rate error we_max = max(ew) rms normalized control effort $ {\overset{\sim }{\tau}}_{w\_ rms}=\sqrt{\frac{1}{N}\sum \limits_{i=1}^N{\left({\tau}_w\right)}^2} $ maximum normalized control effort $ {\overset{\sim }{\tau}}_{w\_\max }=\max \left(\left|{\tau}_w \right|\right) $ In addition, other performance indices such as settling time were used as required. The vertical thruster force, when given numerically or graphically, is the value before the dead-zone inverse value is added.
5.1 CGAC vs R-CGAC
The experiments were conducted as mentioned in Section 4.2. Initially CGAC (with the command filter) was compared with R-CGAC (with the weight filter). The results are given in Table 2, Figure 4, and Figure 5. In addition, the evolution of the estimated weight parameters for both CGAC and R-CGAC is given in Figure 6. As evident in Figure 4, under CGAC the vehicle depth and depth rate have a significant deviation in the initial 50 s. It then settles to a reasonably acceptable tracking performance in the next 100s after the modification term due to the filter has died down. In contrast for R-CGAC, tracking in the initial 50 s has significantly improved (Figure 5). A more quantitative analysis can be carried out using the performance metrics presented in Table 2, in which the CGAC and R-CGAC performance indices are given in three parts: full run, first 50 s, and last 100 s. Thus, this analysis will look at the first 50 s and next 100 s separately and compare the performances to capture the clear distinction in performance between first 50 s and next 100 s.
Performance indices CGAC R-CGAC Full run First 50s Next 100s Full run First 50s Next 100s de_rms (m) 0.153 0.265 0.018 0.039 0.055 0.028 de_max (m) 0.600 0.600 0.064 0.170 0.170 0.104 we_rms(deg/s) 0.045 0.075 0.017 0.0187 0.027 0.013 we_max (deg/s) 0.267 0.267 0.067 0.107 0.107 0.049 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ 70.588 116.619 25.942 20.752 24.365 18.903 $ {\overset{\sim }{\tau}}_{w\_\max } $ 334 334 104 112 112 58 In the first 50 s, the first four indices that represent tracking errors, de_rms, de_max, we_rms, and we_max of R-CGAC are lower than those of CGAC by 79% (a factor of 4.8), 72% (a factor of 3.5), 64% (a factor of 2.8), and 60% (a factor of 2.5), respectively. The last two indices that represent control effort, $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ and $ {\overset{\sim }{\tau}}_{w\_\max } $, of R-CGAC are lower than those of CGAC by 79% (a factor of 4.8) and 66% (a factor of 3), respectively. Thus, there is a clear improvement in all performance metrics for R-CGAC over CGAC.
In the next 100 s although we_rms and we_max of R-CGAC are still lower than those of CGAC by 23% (a factor of 1.3), and 27% (a factor of 1.4), respectively, de_rms and de_max of R-CGAC are higher than those of CGAC by 55% (a factor of 1.5) and 62% (a factor of 1.6), respectively. Furthermore, $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ and $ {\overset{\sim }{\tau}}_{w\_\max } $ of R-CGAC remains lower than CGAC by 27% (a factor of 1.4) and 44% (a factor of 1.8), respectively. Thus, although R-CGAC improves on depth rate tracking and control effort over CGAC, it underperforms in the crucial depth tracking metric.
For further analysis of the control signal, the discrete rate of change of the control signal $ \left(\frac{\varDelta u}{\varDelta t}\right) $ versus time is provided in Figure 7 and the frequency spectrum is provided in Figure 8. It is clear from these figures that there is a significant reduction in noise levels and high frequencies in R-CGAC compared to CGAC. This is due to (a) the inherent filtering effect of weight filter and (b) the decrease of the cut-off frequency of the input filter from 12 to 6 rad/s without instability made possible by the increased robustness to time delay of the weight filter.
Although, R-CGAC has several advantages over CGAC, the reduced performance of R-CGAC in depth tracking after the first 50 s should be remedied as it affects the long-term tracking performance. An additional concern is that the performance in the first 50 s, although much improved, is still much lower than that of the next 100 s.
5.2 M-CGAC
As explained in Section 2.3.3, R-CGAC was combined with closed-loop state predictor to produce modified CGAC (M-CGAC). The performance of M-CGAC at γ = 1 (denoted by M-CGAC1) is given in Figure 9 and Table 3. Furthermore, the estimated weight parameter variation for M-CGAC1 is given in Figure 10a.
Performance indices M-CGAC at γ = 1 M-CGAC at γ = 3 Full run First 50s Next 100s Full run First 50s Next 100s de_rms (m) 0.020 0.028 0.015 0.016 0.020 0.014 de_max (m) 0.101 0.101 0.060 0.073 0.073 0.051 we_rms(deg/s) 0.014 0.020 0.011 0.011 0.014 0.010 we_max (deg/s) 0.081 0.081 0.047 0.055 0.054 0.055 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ 22.062 25.292 20.44 18.003 17.320 18.303 $ {\overset{\sim }{\tau}}_{w\_\max } $ 126 126 77 69 46 69 An immediate improvement is seen with the addition of the prediction error at a learning rate γ = 1. In the first 50 s, the first four indices that represent tracking errors, de_rms, de_max, we_rms, and we_max of M-CGAC1 are lower than those of R-CGAC by 49% (a factor of 2), 41% (a factor of 1.7), 26% (a factor of 1.4), and 24% (a factor of 1.3), respectively. The last two indices that represent control effort, $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}}\ and\ {\overset{\sim }{\tau}}_{w\_\max } $, of M-CGAC1 are increased in comparison with those of R-CGAC by 4% (a factor of ~1) and 11% (a factor of 1.1), respectively. Thus, M-CGAC1 improves its tracking performance with only a slight increase in control effort.
In the next 100 s, de_rms, de_max, we_rms, and we_max of M-CGAC1 are lower than those of R-CGAC by 46% (a factor of 1.9), 42% (a factor of 1.7), 15% (a factor of 1.2), and 4% (a factor of ~1), respectively. In addition, they are also lower than those of CGAC by 16% (a factor of 1.2), 6% (a factor of 1.1), 35% (a factor of 1.5), and 30% (a factor of 1.4), respectively. Furthermore, $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ and $ {\overset{\sim }{\tau}}_{w\_\max } $ of M-CGAC1 while increased from R-CGAC by 8% (a factor of 1.1) and 33% (a factor of 1.5), respectively, are lower than CGAC by 21% (a factor of 1.3) and 26% (a factor of 1.4), respectively.
Thus, M-CGAC has better tracking than R-CGAC and remedies the reduced depth tracking performance of R-CGAC for a marginal increase in control effort. Furthermore, this analysis clearly shows that M-CGAC outperforms CGAC in every single performance index. In addition, if we compare the performances of each individual method in the first 50 s with the next 100 s, M-CGAC has the more homogeneous response compared to CGAC.
While the performance of M-CGAC at γ = 1 was quite satisfactory, it was decided to see if any additional improvements can be made by increasing the learning rate to improve depth tracking such that de_rms ≤ 0.02 m for both the first 50 s and the next 100 s of the run. This specification was achieved by a small increase in learning rate to γ = 3, denoted by M-CGAC3. The performance indices for this condition are also given in Table 3 and its parameter evolution is given in Figure 10b.
Comparing these with M-CGAC1 in the first 50s, de_rms, de_max, we_rms, and we_max of M-CGAC3 are lower than those M-CGAC1 by 29% (a factor of 1.4), 28% (a factor of 1.4), 30% (a factor of 1.4), and 33% (a factor of 1.5), respectively. In addition, the control effort indices of $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ and $ {\overset{\sim }{\tau}}_{w\_\max } $ of M-CGAC3 are lower than those of M-CGAC1 by 32% and 63%, respectively.
In the next 100s, the tracking performance indices of M-CGAC3 are approximately equal to the performance indices of M-CGAC1 while the control effort indices have reduced slightly.
It is important to ensure that these performance improvements are not at the expense of noise or high frequencies in the control signal. To verify this, the discrete derivative and the frequency spectrum of the control signal for R-CGAC, M-CGAC1, and M-CGAC3 are given in Figures 11 and 12. From both figures, it is clearly seen that the noise levels and frequency distributions are approximately the same. A closer analysis shows, though there is a slight increase in high frequencies and noise for M-CGAC1 over R-CGAC, this decreases at M-CGAC3.
5.3 Sudden Parameter Variation
A further experiment was carried out to verify the capability of M-CGAC3 by comparing it with CGAC for a thrust loss anomaly. A thrust loss manifests itself as a sudden variation of the control effectiveness parameter and is a good candidate to check the ability of the controller to perform under such a variation. The results for 50% thrust loss while holding constant depth are given in Table 4, while the results for changing depth after the thrust loss is given in Table 5 and Figure 13. The parameter evolution for the duration of the run is given in Figure 14.
Performance indices CGAC M-CGAC3 de_rms before thrust loss (m) 0.006 0.005 de_rms after thrust loss (m) 0.014 0.012 de_max after thrust loss (m) 0.035 0.021 Time to depth response to settle to final value (s) 22 N/A $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ before thrust loss 21.04 17.24 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ after thrust loss 34.49 29.39 $ {\overset{\sim }{\tau}}_{w\_\max } $ before thrust loss 77 61 $ {\overset{\sim }{\tau}}_{w\_\max } $ after thrust loss 82 64 Performance indices CGAC M-CGAC3 de_rms (m) 0.029 0.019 de_max (m) 0.099 0.071 we_rms(deg/s) 0.019 0.015 we_max (deg/s) 0.070 0.054 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ 43.441 34.092 $ {\overset{\sim }{\tau}}_{w\_\max } $ 100 100 From Table 4, it is seen that both methods have similar performances in tracking before and after thrust loss. M-CGAC3 has an advantage in terms of maximum deviation which is 40% (a factor of 1.7) less than CGAC and only 0.001 m outside the 2% settling time band of ±0.02 m. As this difference is within the resolution of the depth sensor, it is negligible and thus settling time is not applicable for M-CGAC3. In addition, the advantage of having a reduced control effort is carried through even after thrust loss, although the control magnitudes have increased to accommodate the reduced thrust.
From Table 5, it is seen that when a depth change is done after thrust loss at 120s, M-CGAC3 has better performance in all performance indices other than the maximum thrust which is equal for the two. Further insight can be had by observing the plots in Figure 13. It is seen that M-CGAC3 has increased oscillations in comparison to CGAC just after thrust loss. In addition, CGAC in contrast to M-CGAC3 undershoots the command in first down step with a peak undershoot of 8.6% and in the second step it is prevented from undershooting only by the physical constraint of hitting the water surface.
Thus, after partial thrust loss both CGAC and M-CGAC3 perform well, but M-CGAC3 does have an advantage in both maintaining and changing depth.
5.4 Summary of Results
Overall, the results indicate that the proposed method of M-CGAC, which is an extension of CGAC by replacing the command filter with the weight filter and adding the closed-loop state predictor, has the following advantages over CGAC:
a) Resolves the initial poor tracking problem
b) Overall better tracking performance
c) Less energy consumption due to lower control effort
d) Less noise and high frequencies in the control signal
e) Improved handling of sudden parameter changes
6 Conclusion
This paper proposes an extension to the command governor adaptive control to enhance the initial tracking performance of UUVs intended to use in advanced applications that require precise maneuvring. The proposed M-CGAC replaces the command filter with a weight filter and adds a closed-loop state predictor. Experimental results and analysis indicate that the weight filter alone produces better tracking performance at the start with substantial improvement in reducing control effort, control signal noise, and high frequencies. However, its overall depth tracking performance is reduced compared to that of CGAC. The subsequent addition of the closed-loop state predictor has resolved this issue and improved the overall tracking performance while retaining lower control effort, lower control signal noise, and lower high frequencies. A further increase of the learning rate from 1 to 3 enabled the achievement of a specific design specification for depth tracking. In addition, M-CGAC outperformed CGAC under a 50% partial thruster failure in the vertical thruster.
Thus, M-CGAC has an overall improvement over CGAC and has highly promising performance metrics without using high learning rates. Therefore, it is concluded that M-CGAC is a viable candidate for underwater missions that require precise maneuvres.
Appendix: Lyapunov stability proof of M-CGAC
In order to derive the stable adaptive laws, consider the following Lyapunov function candidate
$$ {\displaystyle \begin{array}{l}V\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{un f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\ \;\;={\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{P}{\boldsymbol{e}}_m+{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\hat{\boldsymbol{e}}+\mathrm{trace}\left[\begin{array}{l}{\left({\overset{\sim }{\boldsymbol{W}}}_{un}{\Lambda}^{\frac{1}{2}}\right)}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{un}^{-1}\left({\overset{\sim }{\boldsymbol{W}}}_{un}{\Lambda}^{\frac{1}{2}}\right)+\\ {}{\left({\overset{\sim }{\boldsymbol{W}}}_{\sigma }{\Lambda}^{\frac{1}{2}}\right)}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{\sigma}^{-1}\left({\overset{\sim }{\boldsymbol{W}}}_{\sigma }{\Lambda}^{\frac{1}{2}}\right)\end{array}\right]\\ {}\kern0.5em \\ {}\kern26.25em \end{array}}\kern9em $$ (49) where $ {\overset{\sim }{\boldsymbol{W}}}_{un}(t)\triangleq {\hat{\boldsymbol{W}}}_{un}(t)-{\boldsymbol{W}}_{un}\in {\mathbb{R}}^{q\times q} $ and $ {\overset{\sim }{\boldsymbol{W}}}_{\sigma }(t)\triangleq {\hat{\boldsymbol{W}}}_{\sigma }(t)-{\boldsymbol{W}}_{\sigma}\in {\mathbb{R}}^{s\times q} $ are weight estimation errors, $ {\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}(t)\triangleq {\hat{\boldsymbol{W}}}_{u{n}_f}(t)-{\boldsymbol{W}}_{un}\in {\mathbb{R}}^{q\times q} $and $ {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}(t)\triangleq {\hat{\boldsymbol{W}}}_{\sigma }(t)-{\boldsymbol{W}}_{\sigma}\in {\mathbb{R}}^{s\times q} $are low-pass-filtered weights estimation errors.
Note that V(0, 0, 0, 0, 0, 0) = 0 and $ V\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right) \gt 0 $ for all $ \left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\ne \left(0,0,0,0,0,0\right) $. In addition, $ V\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right) $ is radially unbounded.
Now, differentiating Eq. (49) yields
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;={\dot{\boldsymbol{e}}}_m^{\mathrm{T}}\boldsymbol{P}{\boldsymbol{e}}_m+{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{P}{\dot{\boldsymbol{e}}}_m+{\dot{\hat{\boldsymbol{e}}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\hat{\boldsymbol{e}}+{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\dot{\hat{\boldsymbol{e}}}\\\\\;\;+2\mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{un}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{un}+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{\sigma}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma}\right)\Lambda \right]\\\;\;+2\alpha \mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{u{n}_f}{\boldsymbol{\Gamma}}_{u{n}_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{u{n}_f}+{{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{\sigma_f}{\boldsymbol{\Gamma}}_{\sigma_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma_f}\right)\Lambda \right]\\ {}\kern5em \end{array}} $$ (50) Substituting from error dynamics of Eqs. (11) and (31) in Eq. (50) yields
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;={\left({\boldsymbol{A}}_m{\boldsymbol{e}}_m-\boldsymbol{H}\boldsymbol{\Lambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]\right)}^{\mathrm{T}}\boldsymbol{P}{\boldsymbol{e}}_m\\\;\;+{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{P}\left({\boldsymbol{A}}_m{\boldsymbol{e}}_m-\boldsymbol{H}\boldsymbol{\Lambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}(t){\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]\right)\\\;\;+{\left({\boldsymbol{A}}_m\hat{\boldsymbol{e}}+\boldsymbol{H}\boldsymbol{\Lambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]\right)}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\hat{\boldsymbol{e}}\ \\\;\; +{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\left({\boldsymbol{A}}_m\hat{\boldsymbol{e}}+\boldsymbol{H}\boldsymbol{\Lambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]\right)\\\;\;+2\mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{un}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{un}+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{\sigma}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma}\right)\Lambda \right]\kern0.5em \\\;\; +2\alpha \mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{u{n}_f}{\boldsymbol{\Gamma}}_{u{n}_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{u{n}_f}+{{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{\sigma_f}{\boldsymbol{\Gamma}}_{\sigma_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma_f}\right)\Lambda \right]\\ {}\end{array}} $$ (51) Simplyfing Eq. (51) yields
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;={\boldsymbol{e}}_m^T\left[{\boldsymbol{A}}_m^T\boldsymbol{P}+\boldsymbol{P}{\boldsymbol{A}}_m\right]{\boldsymbol{e}}_m+{\hat{\boldsymbol{e}}}^{\mathrm{T}}\left[{\boldsymbol{A}}_{prd}^{\mathrm{T}}{\boldsymbol{P}}_{prd}+{\boldsymbol{A}}_{prd}{\boldsymbol{P}}_{prd}\right]\boldsymbol{e}\\\;\; -\bf{2}{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{PH}\boldsymbol{\Lambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]+\bf{2}{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}\boldsymbol{H}\boldsymbol{\Lambda } \left[{\overset{\sim }{\boldsymbol{W}}}_{un}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+{\overset{\sim }{\boldsymbol{W}}}_{\sigma}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]\\\;\; +2\mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{un}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{un}+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{\sigma}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma}\right)\Lambda \right]\\\;\;+2\alpha \mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{u{n}_f}{\boldsymbol{\Gamma}}_{u{n}_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{u{n}_f}+{{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{\sigma_f}{\boldsymbol{\Gamma}}_{\sigma_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma_f}\right)\Lambda \right]\\ {}\kern3em \end{array}}\kern4.5em $$ (52) Substituting in Eq. (52) from the Lyapunov equations $ \bf{0}={\boldsymbol{A}}_m^{\mathrm{T}}\boldsymbol{P}+\boldsymbol{P}{\boldsymbol{A}}_m+\boldsymbol{Q} $ for some Q = QT > 0 and$ \bf{0}={\boldsymbol{A}}_{prd}^{\mathrm{T}}{\boldsymbol{P}}_{prd}+{\boldsymbol{P}}_{prd}{\boldsymbol{A}}_{prd}+{\boldsymbol{Q}}_{prd} $ for some $ {\boldsymbol{Q}}_{prd}={\boldsymbol{Q}}_{prd}^{\mathrm{T}} \gt 0 $ yields
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;=-{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{Q}{\boldsymbol{e}}_m-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{Q}}_{prd}\boldsymbol{e}+\bf{2}\left({\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}-{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{P}\right)\boldsymbol{H}\boldsymbol{\Lambda } \left[{{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{u}}_n(t)+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\right]\\\;\; +2\mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{un}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{un}+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{\sigma}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma}\right)\Lambda \right]\\\;\;+2\alpha \mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{u{n}_f}{\boldsymbol{\Gamma}}_{u{n}_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{u{n}_f}+{{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{\sigma_f}{\boldsymbol{\Gamma}}_{\sigma_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma_f}\right)\Lambda \right]\\ {}\kern4.75em \end{array}} $$ (53) Defining $ \overline{\boldsymbol{e}}=\left({\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{P}}_{prd}-{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{P}\right)\boldsymbol{H} $ Eq. (53) simplify to
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;=-{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{Q}{\boldsymbol{e}}_m-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{Q}}_{prd}\boldsymbol{e}-\bf{2}{\overline{\boldsymbol{e}}}^T\boldsymbol{\Lambda} {{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{u}}_n(t)-2{\overline{\boldsymbol{e}}}^{\mathrm{T}}\boldsymbol{\Lambda} {{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right)\\\;\; +2\mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{un}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{un}+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{\sigma}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma}\right)\Lambda \right]\\\;\;+2\alpha \mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{u{n}_f}{\boldsymbol{\Gamma}}_{u{n}_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{u{n}_f}+{{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{\sigma_f}{\boldsymbol{\Gamma}}_{\sigma_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma_f}\right)\Lambda \right]\\ {}\kern3em \end{array}} $$ (54) Using the trace identity aTb = trace(baT) in Eq. (54) gives
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;=-{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{Q}{\boldsymbol{e}}_m-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{Q}}_{prd}\boldsymbol{e}-2\mathrm{trace}\left[{{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{u}}_n(t){\overline{\boldsymbol{e}}}^{\mathrm{T}}\boldsymbol{\Lambda} \right]-2\mathrm{trace}\left[{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right){\overline{\boldsymbol{e}}}^{\mathrm{T}}\boldsymbol{\Lambda} \right]\\\;\; {}+2\mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{un}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{un}+{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}{\boldsymbol{\Gamma}}_{\sigma}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma}\right)\Lambda \right]\\\;\;+2\alpha \mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{u{n}_f}{\boldsymbol{\Gamma}}_{u{n}_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{u{n}_f}+{{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{\sigma_f}{\boldsymbol{\Gamma}}_{\sigma_f}^{-1}{\dot{\hat{\boldsymbol{W}}}}_{\sigma_f}\right)\Lambda \right]\\ {}\kern3em \end{array}} $$ (55) Substituting from the filtered weights Eq. (22) and proposed M-CGAC weight update laws given by (32) and (33) in Eq. (55) yields
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;=-{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{Q}{\boldsymbol{e}}_m-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{Q}}_{prd}\boldsymbol{e}-2\mathrm{trace}\left[{{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}{\boldsymbol{u}}_n(t){\overline{\boldsymbol{e}}}^{\mathrm{T}}\boldsymbol{\Lambda} \right]-2\mathrm{trace}\left[{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}\boldsymbol{\sigma} \left(\boldsymbol{x}\right){\overline{\boldsymbol{e}}}^{\mathrm{T}}\boldsymbol{\Lambda} \right]\\\;\; +{}2\mathrm{trace}\left[\left(\begin{array}{l}{{\overset{\sim }{\boldsymbol{W}}}_{un}}^{\mathrm{T}}\left({\boldsymbol{u}}_n(t){\overline{\boldsymbol{e}}}^{\mathrm{T}}-\alpha \left({\hat{\boldsymbol{W}}}_{un}-{\hat{\boldsymbol{W}}}_{u{n}_f}\right)\right)+\\ {}{{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}\left(\boldsymbol{\sigma} \left(\boldsymbol{x}(t)\right){\overline{\boldsymbol{e}}}^{\mathrm{T}}-\alpha \left({\hat{\boldsymbol{W}}}_{\sigma }-{\hat{\boldsymbol{W}}}_{\sigma_f}\right)\right)\end{array}\right)\Lambda \right]\\\;\;+2\alpha \mathrm{trace}\left[\left({{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{u{n}_f}\left({\hat{\boldsymbol{W}}}_{un}-{\hat{\boldsymbol{W}}}_{u{n}_f}\right)+{{\overset{\sim }{\boldsymbol{W}}}^{\mathrm{T}}}_{\sigma_f}\left({\hat{\boldsymbol{W}}}_{\sigma }-{\hat{\boldsymbol{W}}}_{\sigma f}\right)\right)\Lambda \right]\\ {}\kern0.75em \\ {}\end{array}} $$ (56) Further simplifying Eq. (56)
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\\\;\;=-{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{Q}{\boldsymbol{e}}_m-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{Q}}_{prd}\boldsymbol{e} {}\kern1em -2\alpha \mathrm{trace}\left[\left({\left({\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right)}^{\mathrm{T}}\left({\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right)\right)\Lambda \right]\\\;\;-2\alpha \mathrm{trace}\left[\left({\left({{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}-{{\overset{\sim }{\boldsymbol{W}}}^T}_{\sigma_f}\right)}^{\mathrm{T}}\left({\overset{\sim }{\boldsymbol{W}}}_{\sigma }-{\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\right)\Lambda \right]\\ {}\kern1em \end{array}} $$ (57) By definition
$ {\displaystyle \begin{array}{l}\mathrm{trace}\left[\left({\left({\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right)}^{\mathrm{T}}\left({\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right)\right)\Lambda \right]=\kern0.5em \sum \limits_{i=1}^N\sum \limits_{j=1}^M{\left({\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right)}_{ij}^2{\Lambda}_{ii}\ge {\left\Vert {\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right\Vert}_F^2{\Lambda}_{\mathrm{min}}\\ {}\kern0.5em \end{array}} $ $ \mathrm{where}\ {\left\Vert {\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right\Vert}_F^2=\sum \limits_{i=1}^N\sum \limits_{j=1}^M{\left({\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right)}_{ij}^2 $ is the Forbenius norm of $ \left({\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right) $ and Λmin is the minimum diagonal element of Λ. A similar definition is applicable to $ \mathrm{trace}\left[\left({\left({{\overset{\sim }{\boldsymbol{W}}}_{\sigma}}^{\mathrm{T}}-{{\overset{\sim }{\boldsymbol{W}}}^T}_{\sigma_f}\right)}^{\mathrm{T}}\left({\overset{\sim }{\boldsymbol{W}}}_{\sigma }-{\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\right)\Lambda \right] $.
Thus, Eq. (57) reduces to
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\le -{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{Q}{\boldsymbol{e}}_m-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{Q}}_{prd}\boldsymbol{e}-2\alpha\\{\left\Vert {\overset{\sim }{\boldsymbol{W}}}_{un}-{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f}\right\Vert}_F^2{\Lambda}_{\mathrm{min}}-2\alpha {\left\Vert {\overset{\sim }{\boldsymbol{W}}}_{\sigma }-{\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right\Vert}_F^2{\Lambda}_{\mathrm{min}}\\ {}\kern11em \end{array}} $$ (58) Therefore, as Λmin is positive and the Forbenius norm is positive
$$ {\displaystyle \begin{array}{l}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)\le -{\boldsymbol{e}}_m^{\mathrm{T}}\boldsymbol{Q}{\boldsymbol{e}}_m-{\hat{\boldsymbol{e}}}^{\mathrm{T}}{\boldsymbol{Q}}_{prd}\boldsymbol{e}\le 0\\ {}\kern11em \end{array}} $$ Hence, this proves that the closed-loop system is Lyapunov stable and that $ {\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em $ and $ {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f} $ are uniformly ultimately bounded. Since c(t)is bounded and Amis Hurwitz, then xm(t) and $ {\dot{\boldsymbol{x}}}_m(t) $ are bounded. Hence, the system state x(t) is bounded. This implies $ \hat{\boldsymbol{x}}(t) $, un(t), and σ(x) are bounded. Since the weight estimation errors $ {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma } $ are bounded and the ideal weights Wun, Wσ are constant, the weight estimations $ {\hat{\boldsymbol{W}}}_{un},{\hat{\boldsymbol{W}}}_{\sigma } $ are also bounded. Thus, it follows from Eqs. (11) and (31) that $ {\dot{\boldsymbol{e}}}_m,\kern0.5em \dot{\hat{\boldsymbol{e}}} $ are also bounded. Therefore, $ \ddot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right) $ is bounded. Now, it follows from Barbalat's lemma (Ioannou and Fidan 2006) that $ \underset{t\to \infty }{\lim}\dot{V}\left({\boldsymbol{e}}_m,\kern0.5em \hat{\boldsymbol{e}},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{un},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma },{\overset{\sim }{\boldsymbol{W}}}_{u{n}_f},\kern0.5em {\overset{\sim }{\boldsymbol{W}}}_{\sigma_f}\right)=0 $, which consequently shows that em(t) and $ \hat{\boldsymbol{e}}(t) $ asymptotically converge to zero as t → ∞. Moreover, since the Lyapunov function V is radially unbounded, this convergence is global.
Thus, the system error and prediction error are globally, uniformly asymptotically stable, i.e., $ \underset{t\to \infty }{\lim}\left\Vert {\boldsymbol{e}}_m\right\Vert =0 $ and $ \underset{t\to \infty }{\lim}\left\Vert \hat{\boldsymbol{e}}\right\Vert =0 $. This completes the proof.
-
Table 1 Definition of the six performance indices
Description Formulae rms depth error $ {d}_{e\_ rms}=\sqrt{\frac{1}{N}\sum \limits_{i=1}^N{\left({e}_d\right)}^2} $ rms depth rate error $ {w}_{e\_ rms}=\sqrt{\frac{1}{N}\sum \limits_{i=1}^N{\left({e}_w\right)}^2} $ maximum depth error de_max = max(ed) maximum depth rate error we_max = max(ew) rms normalized control effort $ {\overset{\sim }{\tau}}_{w\_ rms}=\sqrt{\frac{1}{N}\sum \limits_{i=1}^N{\left({\tau}_w\right)}^2} $ maximum normalized control effort $ {\overset{\sim }{\tau}}_{w\_\max }=\max \left(\left|{\tau}_w \right|\right) $ Table 2 Performance indices for CGAC and R-CGAC
Performance indices CGAC R-CGAC Full run First 50s Next 100s Full run First 50s Next 100s de_rms (m) 0.153 0.265 0.018 0.039 0.055 0.028 de_max (m) 0.600 0.600 0.064 0.170 0.170 0.104 we_rms(deg/s) 0.045 0.075 0.017 0.0187 0.027 0.013 we_max (deg/s) 0.267 0.267 0.067 0.107 0.107 0.049 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ 70.588 116.619 25.942 20.752 24.365 18.903 $ {\overset{\sim }{\tau}}_{w\_\max } $ 334 334 104 112 112 58 Table 3 Performance indices for M-CGAC at learning rates of γ = 1 and γ = 3
Performance indices M-CGAC at γ = 1 M-CGAC at γ = 3 Full run First 50s Next 100s Full run First 50s Next 100s de_rms (m) 0.020 0.028 0.015 0.016 0.020 0.014 de_max (m) 0.101 0.101 0.060 0.073 0.073 0.051 we_rms(deg/s) 0.014 0.020 0.011 0.011 0.014 0.010 we_max (deg/s) 0.081 0.081 0.047 0.055 0.054 0.055 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ 22.062 25.292 20.44 18.003 17.320 18.303 $ {\overset{\sim }{\tau}}_{w\_\max } $ 126 126 77 69 46 69 Table 4 Performance indices for 50% thrust loss for CGAC and M-CGAC3
Performance indices CGAC M-CGAC3 de_rms before thrust loss (m) 0.006 0.005 de_rms after thrust loss (m) 0.014 0.012 de_max after thrust loss (m) 0.035 0.021 Time to depth response to settle to final value (s) 22 N/A $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ before thrust loss 21.04 17.24 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ after thrust loss 34.49 29.39 $ {\overset{\sim }{\tau}}_{w\_\max } $ before thrust loss 77 61 $ {\overset{\sim }{\tau}}_{w\_\max } $ after thrust loss 82 64 Table 5 Performance indices for depth change after thrust loss
Performance indices CGAC M-CGAC3 de_rms (m) 0.029 0.019 de_max (m) 0.099 0.071 we_rms(deg/s) 0.019 0.015 we_max (deg/s) 0.070 0.054 $ {\overset{\sim }{\tau}}_{w\_\mathrm{rms}} $ 43.441 34.092 $ {\overset{\sim }{\tau}}_{w\_\max } $ 100 100 -
Alagoz BB, Tepljakov A, Petlenkov E, Yeroglu C (2020) Multi–loop model reference proportional integral derivative controls: design and performance evaluations. Algorithms 13(2): 88–113. https://doi.org/10.3390/a13020038 Antonelli G, Chiaverini S, Sarkar N, West M (2001) Adaptive control of an autonomous underwater vehicle: experimental results on ODIN. IEEE Trans Control Syst Technol 9(5): 756–765. https://doi.org/10.1109/87.944470 Ariza Ramirez W, Leong ZQ, Nguyen HD, Jayasinghe SG (2020) Exploration of the applicability of probabilistic inference for learning control in underactuated autonomous underwater vehicles. Auton Robot 44(6): 1121–1134. https://doi.org/10.1007/s10514-020-09922-z BlueRobotics (2016) Bar30 high–resolution 300m depth/pressure sensor. Availabel from https://bluerobotics.com/store/sensors-sonars-cameras/sensors/bar30-sensor-r1/. Accessed 13 Aug 2021. Borhaug E, Pavlov A, Pettersen KY (2008) Integral LOS control for path following of underactuated marine surface vessels in the presence of constant ocean currents. In: 2008 47th IEEE Conference on Decision and Control. Cancun, Mexico, pp 4984–4991. https://doi.org/10.1109/CDC.2008.4739352 Brun L (2012) ROV/AUV trends market and technology. Marine Technology Reporter: 48–51 Caccia M, Indiveri G, Veruggio G (2000) Modeling and identification of open–frame variable configuration unmanned underwater vehicles. IEEE J Ocean Eng 25(2): 227–240. https://doi.org/10.1109/48.838986 Caharija W, Pettersen KY, Calado P, Braga J (2015) A comparison between the ILOS guidance and the vector field guidance. IFAC–PapersOnLine 48(16): 89–94. https://doi.org/10.1016/j.ifacol.2015.10.263 Campbell S, Kaneshige J, Nguyen N, Krishnakumar K (2010) Implementation and evaluation of multiple adaptive control technologies for a generic transport aircraft simulation. Proceedings of the AIAA Infotech@Aerospace 2010, Atlanta, USA. 10.2514/6.2010–3322 Cao C, Hovakimyan N (2006) Design and analysis of a novel L1 adaptive controller, Part Ⅰ: Control signal and asymptotic stability. In: Proceedings of the 2006 American Control Conference. Minneapolis, USA, pp 3397–3402. https://doi.org/10.1109/ACC.2006.1657243 Cavalletti M, Ippoliti G, Longhi S (2011) A comparative study between switching and adaptive controllers for a remotely operated vehicle Proceedings of the Institution of Mechanical Engineers, Part M. Journal of Engineering for the Maritime Environment 225(3): 191–205. https://doi.org/10.1177/2F1475090211412285 Crespo L, Matsutani M, Annaswamy A (2010) Design of a model reference adaptive controller for an unmanned air vehicle. Proceedings of the AIAA Guidance. Navigation, and Control Conference, Toronto, Canada, pp 1–12. 10.2514/6.2010_8049 Duarte-Mermoud MA, Narendra KS (1989) Combined direct and indirect approach to adaptive control. IEEE Trans Autom Control 34(10): 1071–1075. https://doi.org/10.1109/9.35278 Dydek ZT, Annaswamy AM, JJE S, Lavretsky E (2010) High performance adaptive control in the presence of time delays. In: Proceedings of the 2010 American Control Conference. Baltimore, USA, pp 880–885. https://doi.org/10.1109/acc.2010.5530473 Elhaki O, Shojaei K (2020) A robust neural network approximation–based prescribed performance output–feedback controller for autonomous underwater vehicles with actuators saturation. Eng Appl Artif Intell 88: 103382. https://doi.org/10.1016/j.engappai.2019.103382 Fernandes DA, Dukan F, Sørensen AJ (2012) Reference model for high performance and low energy consumption motions. In: Proceedings of the 3rd IFAC Workshop on Navigation. Guidance and Control of Underwater Vehicles, Porto, Portugal, pp 217–222. https://doi.org/10.3182/20120410_3_PT_4028.00036 Fjellstad O-E, Fossen TI, Egeland O (1992) Adaptive control of ROVs with actuator dynamics and saturation. Model Identif Control 13(3): 175–188. https://doi.org/10.4173/mic.1992.3.5 Fossen TI (1994) Guidance and control of ocean vehicles. John Wiley & Sons Fossen TI (2011) Handbook of marine craft hydrodynamics and motion control. John Wiley & Sons Fossen TI, Fjellstad O-E (1996) Robust adaptive control of underwater vehicles: a comparative study. Model Identif Control 17(1): 47–62. https://doi.org/10.4173/mic.1996.1.5 Fossen TI, Lekkas AM (2017) Direct and indirect adaptive integral line–of–sight path–following controllers for marine craft exposed to ocean currents. International Journal of Adaptive Control and Signal Processing 31(4): 445–463. https://doi.org/10.1002/acs.2550 Fossen TI, Breivik M, Skjetne R (2003) Line–of–sight path following of underactuated marine craft. IFAC Proceedings, Girona, Spain, Volumes, 36(21) 211–216. https://doi.org/10.1016/S1474_6670(17)37809_6 Fravolini ML, Yucelen T, Campa G (2014) Performance verification of low–frequency learning adaptive controllers. In: Proceedings of the 2014 American Control Conference. Portland, USA, pp 5091–5096. https://doi.org/10.1109/ACC.2014.6858667 Gilooly S (2018) Measurement of dynamic pressure gradients on the surface of short cylinders. Master's Thesis and Capstones University of New Hampshire, Durham Guerrero J, Torres J, Creuze V, Chemori A (2019) Trajectory tracking for autonomous underwater vehicle: an adaptive approach. Ocean Eng 172: 511–522. https://doi.org/10.1016/j.oceaneng.2018.12.027 Healey AJ, Lienard D (1993) Multivariable sliding mode control for autonomous diving and steering of unmanned underwater vehicles. IEEE J Ocean Eng 18(3): 327–339. https://doi.org/10.1109/JOE.1993.236372 Ioannou P, Fidan B (2006) Adaptive control tutorial. Society for Industrial and Applied Mathematics Ioannou P, Annaswamy AM, Narendra KS, Jafari S, Rudd L, Ortega R, Boskovic J (2014) L1–adaptive control: stability, robustness, and interpretations. IEEE Trans Autom Control 59(11): 3075–3080. https://doi.org/10.1109/TAC.2014.2318871 Lavretsky E, Gadient R, Gregory IM (2010) Predictor–based model reference adaptive control. J Guid Control Dyn 33(4): 1195–1201. https://doi.org/10.2514/1.46849 Le KD, Nguyen HD, Ranmuthugala D (2013) Development and modelling of a three–thurster remotely operated vehicle using open source hardware. In: Proceedings of the 17th International Conference On Mechatronics Technology, Jeju Island, Korea, pp 1–6. https://doi.org/10.15625/1813_9663/30/2/3429 Lekkas AM, Fossen TI (2012) A time–varying lookahead distance guidance law for path following. IFAC Proceedings, Arenzano, Italy, 45(27): 398–403. https://doi.org/10.3182/20120919_3_IT_2046.00068 Maalouf D (2013) Contributions to nonlinear adaptive control of low inertia underwater robots. PhD thesis. University of Montpellier, Montpellier Macnab CJB (2019) Modifying CMAC adaptive control with weight smoothing in order to avoid overlearning and bursting. Neural Comput & Applic 31(7): 2207–2216. https://doi.org/10.1007/s00521_017_3182_6 Makavita CD (2018) Adaptive control solutions for advanced unmanned underwater vehicle applications. PhD thesis. University of Tasmania, Tasmania, Australia. https://doi.org/10.25959/100.00028692 Makavita CD, Nguyen HD, Ranmuthugala D, Jayasinghe SG (2015) Command governor adaptive control for an unmanned underwater vehicle. Proceedings of the 2015 IEEE Conference on Control Applications (CCA), 1096–1102. https://doi.org/10.1109/CCA.2015.7320759 Makavita CD, Nguyen HD, Jayasinghe SG, Ranmuthugala D (2016a) Predictor–based model reference adaptive control of an unmanned underwater vehicle. In: Proceedings of the 14th International Conference on Control. Automation, Robotics and Vision (ICARCV), Phuket, Thailand. https://doi.org/10.1109/ICARCV.2016.7838851 Makavita CD, Nguyen HD, Jayasinghe SG, Ranmuthugala D (2016b) Command governor adaptive control for unmanned underwater vehicles with measurement noise and actuator dead–zone. In: Proceedings of the 2016 Moratuwa Engineering Research Conference (MERCon). Moratuwa, Sri Lanka, pp 379–384. https://doi.org/10.1109/MERCon.2016.7480171 Makavita CD, Jayasinghe SG, Nguyen HD, Ranmuthugala D (2018) Experimental comparison of two composite MRAC methods for UUV operations with low adaptation gains. IEEE J Ocean Eng: 1–20. https://doi.org/10.1109/JOE.2018.2869508 Makavita CD, Jayasinghe SG, Nguyen HD, Ranmuthugala D (2019a) Experimental study of command governor adaptive control for unmanned underwater vehicles. IEEE Trans Control Syst Technol 27(1): 332–345. https://doi.org/10.1109/TCST.2017.2757021 Makavita CD, Jayasinghe SG, Nguyen HD, Ranmuthugala D (2019b) Experimental study of a command governor adaptive depth controller for an unmanned underwater vehicle. Appl Ocean Res 86: 61–72. https://doi.org/10.1016/j.apor.2019.02.016 McFarland CJ, Whitcomb LL (2014) Experimental evaluation of adaptive model–based control for underwater vehicles in the presence of unmodeled actuator dynamics. In: Proceedings of the 2014 IEEE International Conference on Robotics and Automation (ICRA). Hong Kong, China, pp 2893–2900. https://doi.org/10.1109/ICRA.2014.6907275 Narendra K, Annaswamy A (1987) A new adaptive law for robust adaptation without persistent excitation. IEEE Trans Autom Control 32(2): 134–145. https://doi.org/10.1109/TAC.1987.1104543 Nguyen HD, Pienaar R, Ranmuthugala D, West W (2011) Modeling, simulation and control of underwater vehicles. In: Proceedings of the 1st Vietnam Conference on Control and Automation, Hanoi, Vietnam, pp 150–159 Ortega R, Panteley E (2014) Comments on adaptive control: stabilisation mechanism, existing conditions for stability and performance limitations. Int J Control 87(3): 581–588. https://doi.org/10.1080/00207179.2013.849820 Pivano L (2008) Thrust estimation and control of marine propellers in fourquadrant operations. PhD thesis. Norwegian University of Science and Technology, Trondheim Proctor AA, Buchanan A, Buckham B, Bradley C (2015) ROVs with semi–autonomous capabilities for use on renewable energy platforms. The Twenty–fifth International Offshore and Polar Engineering Conference, Kona, Hawaii, USA Refsnes JE (2007) Nonlinear model–based control of slender body AUVs Nowergian University of Science and Technology Ridao P, Batlle J, Carreras M (2001) Model identification of a low–speed uuv with on–board sensors. IFAC conference CAMS2001, Control Applications in Marine Systems, Glasgow, Scotland. https://doi.org/10.1016/S1474_6670(17)35114_5 Rodgers J, Wharington J, Tynan A, Coxhead M (2008) A concept for the deployment of unmanned maritime systems from submarines: MURULA integration impact modelling and results. Undersea Defence Technology Pacific Conference. Sydney, Australia Sayer P (1996) Hydrodynamic forces on ROVs near the air–sea interface. International Journal of Offshore and Polar Engineering 6(3): 177–183 SeaBotix T (2015) BTD150 AUV/ROV Thruster Datasheet. San Diego, USA Smallwood DA, Whitcomb LL (2003) Adaptive identification of dynamically positioned underwater robotic vehicles. IEEE Trans Control Syst Technol 11(4): 505–515. https://doi.org/10.1109/TCST.2003.813377 Smallwood DA, Whitcomb LL (2004) Model–based dynamic positioning of underwater robotic vehicles: theory and experiment. IEEE J Ocean Eng 29(1): 169–186. https://doi.org/10.1109/JOE.2003.823312 Stepanyan V, Krishnakumar K (2010) MRAC revisited: guaranteed performance with reference model modification. In: Proceedings of the 2010 American Control Conference. Baltimore, USA, pp 93–98. https://doi.org/10.1109/ACC.2010.5530648 Stepanyan V, Krishnakumar K (2012) Adaptive control with reference model modification. J Guid Control Dyn 35(4): 1370–1374. https://doi.org/10.2514/1.55756 Stilinović N, Nađ Đ, Mišković N (2015) AUV for diver assistance and safety: design and implementation. IEEE/MTS OCEANS 2015 – Genova, Switzerland. https://doi.org/10.1109/OCEANS_Genova.2015.7271670 TE Connectivity (2015) MS5837-30BA, Ultra-small, gel-filled, pressure sensor with stainless steel cap. TE Connectivity, Available from https://www.te.com/commerce/DocumentDelivery/DDEController?Action=srchrtrv&DocNm=MS5837-30BA&DocType=DS&DocLang=English. Accessed on 23 Apr 2020. Tepljakov A, Alagoz BB, Gonzalez E, Petlenkov E, Yeroglu C (2018) Model reference adaptive control scheme for retuning method–based fractional–order PID control with disturbance rejection applied to closed–loop control of a magnetic levitation system. Journal of Circuits, Systems and Computers 27(11): 1850176. https://doi.org/10.1142/S0218126618501761 Valladarez LND (2015) An adaptive approach for precise underwater vehicle control in combined robot–diver operations. MSc. thesis. Naval Postgraduate School Valladarez LND, Toit, NED (2015) Robust adaptive control of underwater vehicles for precision operations. MTS/IEEE OCEANS 2015, Washington, USA, 1–7. https://doi.org/10.23919/OCEANS.2015.7404364 von Ellenrieder KD (2021) Control of marine vehicles. Springer International Publishing Wu J, Liu J, Xu H (2014) A variable buoyancy system and a recovery system developed for a deep–sea AUV Qianlong I. In: IEEE/MTS OCEANS 2014 – Taipei. China, Taiwan. https://doi.org/10.1109/OCEANS_TAIPEI.2014.6964315 Xu H, Guedes Soares C (2016) Vector field path following for surface marine vessel and parameter identification based on LS–SVM. Ocean Eng 113:151–161. https://doi.org/10.1016/j.oceaneng.2015.12.037 Xu H, Rong H, Guedes Soares C (2019) Use of AIS data for guidance and control of path–following autonomous vessels. Ocean Eng 194:106635. https://doi.org/10.1016/j.oceaneng.2019 Xu H, Fossen TI, Guedes Soares C (2020) Uniformly semiglobally exponential stability of vector field guidance law and autopilot for path–following. Eur J Control 53:88–97. https://doi.org/10.1016/j.ejcon.2019.09.007 Yang J, Na J, Gao G (2020) Robust model reference adaptive control for transient performance enhancement. International Journal of Robust and Nonlinear Control 30(15): 6207–6228. https://doi.org/10.1002/rnc.5080 Yoerger DR, Slotine JJE (1991) Adaptive sliding control of an experimental underwater vehicle. In: Proceedings of the 1991 IEEE International Conference on Robotics and Automation. Sacramento, USA, pp 2746–2751. https://doi.org/10.1109/ROBOT.1991.132047 Yu C, Xiang X, Lapierre L, Zhang Q (2017) Nonlinear guidance and fuzzy control for three–dimensional path following of an underactuated autonomous underwater vehicle. Ocean Eng 146:457–467. https://doi.org/10.1016/j.oceaneng.2017.10.001 Yucelen T, Haddad WM (2012) A robust adaptive control architecture for disturbance rejection and uncertainty suppression with L∞ transient and steady-state performance guarantees. International Journal of Adaptive Control and Signal Processing 26(11): 1024–1055. https://doi.org/10.1002/acs.2281 Yucelen T, Haddad WM (2013) Low–frequency learning and fast adaptation in model reference adaptive control. IEEE Trans Autom Control 58(4): 1080–1085. https://doi.org/10.1109/TAC.2012.2218667 Yucelen T, Johnson E (2012a) Command governor–based adaptive control. AIAA Guidance, Navigation, and Control Conference, Minneapolis, USA, 1–18. https://doi.org/10.2514/6.2012_4618 Yucelen T, Johnson E (2012b) Design and analysis of a novel command governor architecture for shaping the transient response of nonlinear uncertain dynamical systems. In: Proceedings of the IEEE 51st Annual Conference on Decision and Control (CDC), Maui, USA, pp 2890–2895. https://doi.org/10.1109/CDC.2012.6426157 Yucelen T, Johnson E (2013) A new command governor architecture for transient response shaping. International Journal of Adaptive Control and Signal Processing 27(12): 1065–1085. https://doi.org/10.1002/acs.2376 Yuh J, Nie J, Lee CSG (1999) Experimental study on adaptive control of underwater robots. In: Proceedings of the1999 IEEE International Conference on Robotics and Automation, Detroit, USA, pp 393–398. https://doi.org/10.1109/ROBOT.1999.770010 Zang Z, Bitmead RR (1994) Transient bounds for adaptive control systems. IEEE Trans Autom Control 39(1): 171–175. https://doi.org/10.1109/9.273360 Zhang Y, Liu X, Luo M, Yang C (2019) MPC–based 3–D trajectory tracking for an autonomous underwater vehicle with constraints in complex ocean environments. Ocean Eng 189:106309. https://doi.org/10.1016/j.oceaneng.2019.106309