«上一篇
文章快速检索     高级检索
下一篇»
  哈尔滨工程大学学报  2019, Vol. 40 Issue (9): 1576-1581  DOI: 10.11990/jheu.201806005
0

引用本文  

朱丽燕, 李铁山, 单麒赫. 船舶航向非线性离散系统自适应模糊最优控制[J]. 哈尔滨工程大学学报, 2019, 40(9): 1576-1581. DOI: 10.11990/jheu.201806005.
ZHU Liyan, LI Tieshan, SHAN Qihe. Optimal adaptive fuzzy control for ship course discrete-time systems[J]. Journal of Harbin Engineering University, 2019, 40(9): 1576-1581. DOI: 10.11990/jheu.201806005.

基金项目

国家自然科学基金项目(5193000654,6197023695,61803064,61751202);大连市重点学科重大课题科技创新基金项目(2018J11CY022);中央高校基本科研业务费专项资金项目(3132019345)

通信作者

李铁山, E-mail:tieshanli@126.com

作者简介

朱丽燕, 女, 博士研究生;
李铁山, 男, 教授, 博士生导师

文章历史

收稿日期:2018-06-04
网络出版日期:2019-06-04
船舶航向非线性离散系统自适应模糊最优控制
朱丽燕 , 李铁山 , 单麒赫     
大连海事大学 航海学院, 辽宁 大连 116026
摘要:针对船舶航向非线性离散时间系统,本文提出一种基于模糊逻辑系统的自适应最优航向控制算法。本文优化控制算法采用actor-critic结构,模糊逻辑评价系统和模糊逻辑执行系统分别用于构建最优评价信号和最优控制信号。模糊权值采用梯度下降法进行更新学习,并以大连海事大学“育龙”轮为例进行仿真研究。基于前向差分Lyapunov方法证明了闭环系统半全局一致最终有界,保证系统跟踪误差收敛到以零为中心的邻域内。仿真结果进一步验证了本文算法的有效性和合理性。
关键词船舶航向控制    离散时间非线性系统    自适应控制    模糊逻辑系统    后推方法    最优控制    
Optimal adaptive fuzzy control for ship course discrete-time systems
ZHU Liyan , LI Tieshan , SHAN Qihe     
Navigation Collage, Dalian Maritime University, Dalian 116026, China
Abstract: An adaptive optimal course control algorithm based on fuzzy logic system is proposed for ship course nonlinear discrete-time system. In this paper, the actor-critic structure is adopted in the optimization control algorithm, The fuzzy logic evaluation system and the fuzzy logic execution system are used to construct the optimal evaluation signal and the optimal control signal, respectively. The fuzzy weight is updated by gradient descent method, the "Yulong" vessel of Dalian Maritime University is employed to simulation study. Based on the forward differential Lyapunov method, it is proved that all signals in the closed-loop system are guaranteed to be semi-globally uniformly ultimately bounded and the tracking error converges to a small neighborhood of zero. The simulation results further verify the effectiveness and rationality of the proposed algorithm.
Keywords: ship course control    discrete-time nonlinear system    adaptive control    fuzzy logic system    backstepping    optimal control    

船舶运动具有大时滞、大惯性、强非线性等特点,同时由于航行条件和环境干扰的不确定性导致船舶运动模型具有严重的不确定性。因此,船舶航向控制成为非线性系统控制领域中的难点和热点问题[1-2],近年来不确定船舶航向系统控制问题取得了丰富的研究成果[3-5]。现有大多数研究仅考虑了系统的稳定性,而良好的控制系统还应考虑系统的节能问题。神经网络和模糊逻辑系统作为通用逼近器,可以用来很好地辨别非线性系统的不确定性,学者将这2种方法应用到不确定船舶航向非系统的控制设计中,文献[6-7]采用两个神经网络,执行网络和评价网络逼近代价函数和控制律,分别基于近似动态规划算法和启发式动态规划算法[8],解决了船舶航向最优控制问题,但对于期望航向跟踪时间过长,并缺乏对船舶航向实际性能需求的考虑。本文研究了非线性离散时间船舶航向系统控制问题,利用航向跟踪误差设计效用函数,并定义策略效用函数。根据贝尔曼最优控制原理得到贝尔曼方程,设计代价函数。采用梯度下降法最小化代价函数,得到最优评价信号。将最优评价信号应用于控制器设计,不仅能够加快系统追踪速度,而且能够实现最优控制。

1 船舶航向运动数学模型

考虑船舶稳态回转非线性特性,本文采用如下船舶航向非线性系统数学模型:

$ \ddot \phi + \frac{1}{T}H(\dot \phi ) = \frac{K}{T}\delta $ (1)

式中:ϕ为航向角;δ为舵角;K是船舶转回性指数;T为船舶追随性指数;H($\dot \phi $)为$\dot \phi $的非线性函数可近似表示为$H\left( {\dot \phi } \right) = {a_1}\dot \phi + {a_2}{\dot \phi ^3} + {a_3}{\dot \phi ^5} + \ldots $,其中ai(i=1, 2, 3, …)为常数。定义状态变量x1=ϕx2=${\dot \phi }$u=δ,则式(1)经离散化,得到船舶航向非线性离散系统数学模型:

$ \left\{ {\begin{array}{*{20}{l}} {{x_1}(k + 1) = {x_2}(k)}\\ {{x_2}(k + 1) = {f_2}\left( {{x_2}(k)} \right) + pu(k)}\\ {{y_k} = {x_1}(k)} \end{array}} \right. $ (2)

式中:xi(i=1, 2)为系统的状态;u(k)和yk分别为系统的输入和输出;p=K/T为系统控制增益;函数f2(x2(k))=(-1/T)H(x2(k))。

本文的控制目标是设计一个自适应模糊最优控制器u(k),使式(2)的输出信号yk能够跟踪参考信号yd(k),闭环系统半全局一致最终有界的,且跟踪误差收敛到零的一个小邻域内。控制系统共有2个假设条件:1)系统状态变量x1(k), x2(k)可测得;2)系统的跟踪参考信号为yd(k)∈Ωy, k>0,是已知并且有界的。

2 模糊逻辑系统及评价信号 2.1 模糊逻辑系统

本文采用具有线性可调参数的第一类模糊逻辑系统逼近未知连续函数[9]FliGl为对应于模糊隶属函数μFil(xi)和的模糊集合,N是模糊规则数。通过模糊化和解模糊化方法,模糊逻辑系统为:

$ y(x) = \frac{{\sum\limits_{l = 1}^N {{{\bar y}_l}} \prod\limits_{i = 1}^n {{\mu _{F_i^l}}} \left( {{x_i}} \right)}}{{\sum\limits_{l = 1}^N {\left[ {\prod\limits_{i = 1}^n {{\mu _{F_i^l}}} \left( {{x_i}} \right)} \right]} }} $ (3)

其中${\bar y_l} = \mathop {{\rm{max}}}\limits_{y \in {\mathit{\pmb{R}}}} {\mu _{{G_l}}}\left( y \right)$

定义模糊基函数为:

$ {\zeta _l} = \frac{{\prod\limits_{i = 1}^n {{\mu _{{F_{{l_i}}}}}} \left( {{x_i}} \right)}}{{\sum\limits_{l = 1}^N {\left( {\prod\limits_{i = 1}^n {{\mu _{{F_{{l_i}}}}}} \left( {{x_i}} \right)} \right)} }} $ (4)

由此,令${\mathit{\pmb{\theta}} ^{\rm{T}}} = \left[ {{{\bar y}_1},{{\bar y}_2}, \ldots ,{{\bar y}_N}} \right]{\rm{ = }}\left[ {{\theta _1},{\theta _2}, \ldots ,{\theta _N}} \right]$$\zeta \left( x \right) = {\left[ {{\zeta _1}\left( x \right), {\zeta _2}\left( x \right), \ldots , {\zeta _N}\left( x \right)} \right]^{\rm{T}}}$,则模糊逻辑系统(3)可进一步表示为:

$ y(x) = {\mathit{\boldsymbol{\theta }}^{\rm{T}}}\zeta (x) $ (5)

引理1[10]   f(x)是定义在闭集Ω内的连续函数,对任意给定的常数ε>0,则存在一个模糊逻辑系统(5),使得:

$ \mathop {\sup }\limits_{x \in U} \left| {f(x) - {\mathit{\boldsymbol{\theta }}^{\rm{T}}}\zeta (x)} \right| \le \varepsilon $ (6)

基于引理1,函数f(x)可表示为[11]

$ f(x) = {\mathit{\boldsymbol{\theta }}^{*{\rm{T}}}}\zeta (x) + \mathit{\boldsymbol{\varepsilon }}(x) $ (7)

式中:θ*ε(x)代表最优参数向量和最小模糊逼近误差,满足$\left\| {{{\mathit{\pmb{\theta}}} ^*}} \right\| \le \bar \theta $$\left\| {{\mathit{\pmb{\varepsilon}}} \left( x \right)} \right\| \le \bar \varepsilon $,其中常数$\bar \theta > 0$$\bar \varepsilon > 0$

2.2 最优评价信号

令追踪误差为e1(k)=x1(k)-yd(k),滤波误差:

$ e(k) = \mathit{\boldsymbol{ \boldsymbol{\varLambda} \bar e}}(k) $ (8)

式中$\bar {\mathit{\pmb{e}}}\left( k \right) = {[{e_1}\left( k \right), {e_1}\left( {k - 1} \right), \ldots , {e_1}\left( {k - n + 1} \right)]^{\rm{T}}}$$\mathit{\pmb{\Lambda}} = [1, {\lambda _1}, \ldots , {\lambda _{n - 1}}]$λ1, …, λn为常数[11]。通过模糊逻辑系统逼近未知非线性函数,利用贝尔曼方程设计目标函数并得到最优评价信号。基于滤波误差e(k),效用函数q(k)为[12]

$ q(k) = \left\{ {\begin{array}{*{20}{l}} {0,}&{\left\| {\mathit{\boldsymbol{e}}(k)} \right\| \le c}\\ {1,}&{\left\| {\mathit{\boldsymbol{e}}(k)} \right\| > c} \end{array}} \right. $ (9)

式中cR为阈值,q(k)=0表示跟踪效果良好,q(k)=1代表跟踪效果不佳。

令策略效用函数C(k)为:

$ C(k) = q(k + 1) + \beta q(k + 2) + {\beta ^2}q(k + 3) + \cdots $ (10)

式中β>0是权重系数。

利用模糊逻辑系统逼近策略效用函数,则

$ C(k) = \mathit{\boldsymbol{\theta }}_c^{*{\rm{T}}}{\zeta _c}(k) + \mathit{\boldsymbol{\varepsilon }}_c^*(k) $ (11)

其中θc*为最优模糊参数,${\hat {\mathit{\pmb{\theta}}} _c}\left( k \right)$θc*的估计值。

根据文献[12]和[15],设贝尔曼方程

$ {e_c}(k) = \beta \hat C(k) - [\hat C(k - 1) - q(k)] $ (12)

式中:$\hat C(k) = \hat {\mathit{\pmb{\theta}}} _c^{\rm{T}}(k){\zeta _c}(k)$C(k)的估计。

目标函数为Ec(k)=ec2(k)/2,基于梯度下降规则,${\hat \theta _c}(k)$的自适应律为:

$ {\hat \theta _c}(k + 1) = {\hat \theta _c}(k) + \Delta {\hat \theta _c}(k) $ (13)

其中,$\Delta {{\hat \theta }_c}(k) = {\gamma _c}\left[ { - \frac{{\partial {E_c}(k)}}{{\partial {{\hat \theta }_c}(k)}}} \right] = {\gamma _c}\left[ { - \frac{{\partial {E_c}(k)}}{{\partial {e_c}(k)}}\frac{{\partial {e_c}(k)}}{{\partial {{\hat C}_c}(k)}}\frac{{\partial {{\hat C}_c}(k)}}{{\partial {{\hat \theta }_c}(k)}}} \right]$,学习参数γc>0。将式(12)代入式(13),则

$ \begin{array}{*{35}{l}} {{{\hat{\theta }}}_{c}}(k+1)={{{\hat{\theta }}}_{c}}(k)-{{\gamma }_{c}}B{{\zeta }_{c}}(k)\cdot \\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [\beta \hat{C}(k)-(\hat{C}(k-1)-q(k))] \\ \end{array} $ (14)

式(14)两边分别减去θc*可得

$ \begin{array}{l} {{\tilde \theta }_c}(k + 1) = {{\tilde \theta }_c}(k) - {\gamma _c}\beta {\zeta _c}(k) \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;[\beta \hat C(k) - (\tilde C(k - 1) - q(k))] \end{array} $ (15)

式中${{\tilde \theta }_c}\left( k \right) = {{\hat \theta }_c}\left( k \right) - \theta _c^*$,令${\omega _c}\left( k \right) = {{\tilde \theta }_c}^T\left( k \right){\zeta _c}\left( k \right)$

3 控制器设计和稳定性分析

船舶航向系统作为典型的严格反馈形式的非线性离散系统,基于自适应控制方法的控制器设计过程中会产生非因果关系问题,进而需要对式(2)等价变化[13]

$ \left\{ {\begin{array}{*{20}{l}} {{x_1}(k + 2) = {x_2}(k + 1)}\\ {{x_2}(k + 1) = {F_2}(k) + pu(k)}\\ {{y_k} = {x_1}(k)} \end{array}} \right. $ (16)

式中:F2(k)=f2(x2(k)),针对转化后的船舶航向非线性离散系统,控制器设计及系统稳定性分析过程如下:

1) 设计虚拟控制函数。

根据系统式(16),则:

$ {e_1}(k + 2) = {x_1}(k + 2) - {y_d}(k + 2) $ (17)

引入误差变量e2(k+1)=x2(k+1)-α1(k),设计虚拟控制函数α1(k)为:

$ {\alpha _1}(k) = {y_d}(k + 2) $ (18)

由此可得:

$ {e_1}(k + 2) = {e_2}(k + 1) $ (19)

2) 设计优化控制器。

e2(k+1)=x2(k+1)-α1(k),则:

$ {e_2}(k + 1) = {F_2}(k) + pu(k) - {\alpha _1}(k) $ (20)

定义函数

$ {U^*}(k) = - \left[ {{F_2}(k) - {\alpha _1}(k)} \right]/p $ (21)

利用模糊逻辑系统逼近效用函数U*(k)为:

$ {U^*}(k) = {\mathit{\boldsymbol{\theta }}^{*{\rm{T}}}}\zeta (z(k)) + {\mathit{\boldsymbol{\varepsilon }}^*}(\mathit{\boldsymbol{z}}(k)) $ (22)

式中:z(k)=[x1(k), x2(k), yd(k+2)]TΩz,由式(21)~(20)可改写为:

$ {e_2}(k + 1) = p\left[ {u(k) - {\mathit{\boldsymbol{\theta }}^{*{\rm{T}}}}\zeta (\mathit{\boldsymbol{z}}(k)) - {\mathit{\boldsymbol{\varepsilon }}^*}(\mathit{\boldsymbol{z}}(k))} \right] $ (23)

实际控制输入u(k)为:

$ u(k) = {\mathit{\boldsymbol{\widehat \theta }}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) $ (24)

基于式(24),(23)可改写为

$ \begin{array}{l} {e_2}(k + 1) = p\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (z(k)) - } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\left. {{\mathit{\boldsymbol{\theta }}^{*{\rm{T}}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) - {{\bf{ \pmb{\mathsf{ ε}} }}^*}(\mathit{\boldsymbol{z}}(k))} \right]\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\; = p\left[ {\omega (k) - {{\bf{ \pmb{\mathsf{ ε}} }}^*}(\mathit{\boldsymbol{z}}(k))} \right] \end{array} $ (25)

式中$\omega \left( k \right) = {\tilde {\mathit{\pmb{\theta}}} ^{\rm{T}}}\left( k \right){\rm{ }}\zeta \left( {z\left( k \right)} \right)$$\tilde \theta \left( k \right) = \hat \theta \left( k \right) - {\theta ^*}$

Cd(k)表示期望的策略效用函数,设:

$ {e_a}(k) = {\mathit{\boldsymbol{\widehat \theta }}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \left[ {\hat C(k) - {C_d}(k)} \right] $ (26)

通常,Cd(k)期望值为零代表系统输出具有较好的跟踪性能[16],故式(26)可表示为:

$ {e_a}(k) = {\mathit{\boldsymbol{\widehat \theta }}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k) $ (27)

设目标函数Ea(k)=ea2(k)/2,$\hat \theta \left( k \right)$的自适应律为:

$ \mathit{\boldsymbol{\widehat \theta }}(k + 1) = \mathit{\boldsymbol{\widehat \theta }}(k) + \Delta \mathit{\boldsymbol{\widehat \theta }}(k) $ (28)

式中$\Delta \hat \theta \left( k \right) = \gamma \left[ { - \frac{{\partial {E_a}\left( k \right)}}{{\partial \hat \theta \left( k \right)}}} \right]$,学习参数γ>0,则

$ \begin{array}{l} \hat \theta (k + 1) = \hat \theta (k) - \gamma \zeta (\mathit{\boldsymbol{z}}(k)) \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \dot C(k)} \right] \end{array} $ (29)

定理1:  对于船舶航向离散非线性系统式(16),实际控制器式(24),自适应律式(29)构成的闭环系统所有信号半全局一致最终有界,通过调整设计参数使得追踪误差收敛到零的一个小邻域内。

证明:  首先,选取闭环系统李雅普诺夫预选函数V(k)的形式为:

$ V(k) = {V_1}(k) + {V_2}(k) + {V_3}(k) + {V_4}(k) + {V_5}(k) $ (30)

其中,V1(k)=τe1e12(k)/2,V2(k)=τe2e22(k)/2,${V_3}\left( k \right) = {\rm{ }}{\tau _\theta }{{\tilde {\mathit{\pmb{\theta}}} }^{\rm T}}\left( k \right)\tilde \theta \left( k \right)/\gamma $${V_4}\left( k \right) = {\tau _c}\tilde {\mathit{\pmb{\theta}}} _c^{\rm T}\left( k \right)_c^{\rm T}{{\tilde {\mathit{\pmb{\theta}}} }_c}\left( k \right)/{\gamma _c}$V5(k)=2τcωc2(k-1)。

式中:τe1τe2τθτc为正常数。V1(k)的差分为:

$ \begin{array}{l} \Delta {V_1}(k) = {\tau _{{e_1}}}\left[ {e_1^2(k + 1) - e_1^2(k)} \right]/2 = \\ \;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _{{e_1}}}\left[ {e_2^2(k) - e_1^2(k)} \right]/2 \end{array} $ (31)

V2(k)的差分为:

$ \begin{array}{l} \Delta {V_2}(k) = {\tau _{{e_2}}}\left[ {e_2^2(k + 1) - e_2^2(k)} \right]/2 = \\ \;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _{{e_2}}}\left[ {p{{\left( {\omega (k) - {\varepsilon ^*}(z(k))} \right]}^2}/2} \right. - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _{{e_2}}}e_2^2(k)/2 \end{array} $ (32)

基于Cauchy-Schwarz不等式:

$ {\left( {{a_1} + \cdots + {a_n}} \right)^2} \le n\left( {a_1^2 + \cdots + a_n^2} \right) $ (33)

式(32)变为:

$ \Delta {V_2}(k) \le {\tau _{{e_2}}}{p^2}\left( {{\omega ^2}(k) + {{\bar \varepsilon }^2}} \right) - {\tau _{{e_2}}}e_2^2(k)/2 $ (34)

V3(k)的差分为:

$ \begin{array}{*{20}{c}} {\Delta {V_3}(k) = {\tau _\theta }{{\tilde \theta }^{\rm{T}}}(k + 1)\tilde \theta (k + 1)/\gamma - }\\ {{\tau _\theta }{{\tilde \theta }^{\rm{T}}}(k)\tilde \theta (k)/\gamma } \end{array} $ (35)

式(29)两边减去θ*可得:

$ \begin{array}{l} \tilde \theta (k + 1) = \tilde \theta (k) - \gamma \zeta (z(k)) \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right] \end{array} $ (36)

由(36),则式(35)变为:

$ \begin{array}{l} \Delta {V_3}(k) = {\tau _\theta }[\tilde \theta (k) - \gamma \zeta (z(k)) \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;{\left. {\left( {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right)} \right]^{\rm{T}}} \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;[\mathit{\widetilde \theta }(k) - \gamma \zeta (z(k)) \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\left. {\left( {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right)} \right]/\gamma - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _\theta }{\mathit{\boldsymbol{\widetilde \theta }}^{\rm{T}}}(k)\mathit{\boldsymbol{\widetilde \theta }}(k)/\gamma = \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _\theta }\gamma {\left\| {\zeta \left( {z\left( k \right)} \right)} \right\|^2}\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)} \right. \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\zeta (z(k)) + \hat C(k){]^2} - 2{\tau _\theta }\mathit{\boldsymbol{\omega }}(k) \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right] = \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\begin{array}{*{20}{l}} { - {\tau _\theta }\left[ {1 - \gamma {{\left\| {\zeta (\mathit{\boldsymbol{z}}(k))} \right\|}^2}} \right]}\\ {{{\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right]}^2} + }\\ {{\tau _\theta }\left[ {{\mathit{\boldsymbol{\theta }}^{*{\rm{T}}}}\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right] \cdot }\\ {\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right] - }\\ {{\tau _\theta }\omega (k)\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + \hat C(k)} \right]} \end{array} \end{array} $ (37)

因为‖ζ(z(k))‖2≤1,则:

$ \begin{array}{l} \Delta {V_3}(k) \le - {\tau _\theta }(1 - \gamma )\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\hat C(k){]^2} + {\tau _\theta }\left[ {{\mathit{\boldsymbol{\theta }}^{*{\rm{T}}}}\zeta (\mathit{\boldsymbol{z}}(k)) + } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\hat C(k){]^2} - {\tau _\theta }{\mathit{\boldsymbol{\omega }}^2}(k) \end{array} $ (38)

利用式(33)、式(38)变为:

$ \begin{array}{l} \Delta {V_3}(k) \le - {\tau _\theta }(1 - \gamma )\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k)) + } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\hat C(k){]^2} + {\tau _\theta }\left[ {{\mathit{\boldsymbol{\theta }}^{*{\rm{T}}}}\zeta (\mathit{\boldsymbol{z}}(k)) + } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\;\;{\left. {\mathit{\boldsymbol{\widehat \theta }}_c^{\rm{T}}(k){\zeta _c}(k)} \right]^2} - {\tau _\theta }{\mathit{\boldsymbol{\omega }}^2}(k) \le \\ \;\;\;\;\;\;\;\;\;\;\;\;\; - {\tau _\theta }(1 - \gamma )\left[ {{{\hat \theta }^{\rm{T}}}(k)\zeta (\mathit{\boldsymbol{z}}(k))} \right. + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\hat C(k){]^2} + 2{\tau _\theta }\omega _c^2(k) - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _\theta }{\omega ^2}(k) + 2{\tau _\theta }{\left( {\bar \theta + {{\bar \theta }_c}} \right)^2} \end{array} $ (39)

V4(k)的差分为:

$ \begin{array}{l} \Delta {V_4}(k) = {\tau _c}\left[ {\mathit{\boldsymbol{\widetilde \theta }}_c^{\rm{T}}(k + 1){{\tilde \theta }_c}(k + 1) - } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\left. {\mathit{\boldsymbol{\widetilde \theta }}_c^{\rm{T}}(k){{\tilde \theta }_c}(k)} \right]/{\gamma _c} = \\ \;\;\;\;\;\;\;\;\;\;\;{\tau _c}\left[ {{{\tilde \theta }_c}(k) - {\gamma _c}\beta {\zeta _c}(k)} \right. \cdot \\ \;\;\;\;\;\;\;\;\;\;\;(\beta \tilde C(k) + q(k) - \hat C(k - 1)){]^{\rm{T}}} \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\left[ {{{\tilde \theta }_c}(k) - {\gamma _c}\beta {\zeta _c}(k)} \right. \cdot \\ \;\;\;\;\;\;\;\;\;\;\;\begin{array}{*{20}{l}} {(\beta \hat C(k) + q(k) - \hat C(k - 1))]/{\gamma _c} - }\\ {{\tau _c}\tilde \theta _c^T(k){{\tilde \theta }_c}(k)/{\gamma _c} = }\\ { - {\tau _c}\left( {1 - {\gamma _c}{\beta ^2}{{\left\| {{\zeta _c}(k)} \right\|}^2}} \right)[\beta \hat C(k) + }\\ {q(k) - \hat C(k - 1){]^2} - 2{\tau _c}\beta {\omega _c}(k)}\\ {[\beta \hat C(k) + q(k) - \hat C(k - 1)] + }\\ {{\tau _c}{{[\beta \hat C(k) + q(k) - \hat C(k - 1)]}^2}} \end{array} \end{array} $ (40)

因为‖ζc(k)‖2≤1,式(40)变为:

$ \begin{array}{l} \Delta {V_4}\left( k \right) \le - {\tau _c}\left( {1 - {\gamma _c}{\beta ^2}} \right)\left[ {\beta \hat C\left( k \right) + q\left( k \right) - } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;{\left. {\hat C\left( {k - 1} \right)} \right]^2} + {\tau _c}\left[ {\beta \mathit{\boldsymbol{\theta }}_c^{ * {\rm{T}}}{\zeta _c}\left( k \right) + } \right.\\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;q\left( k \right) - {\omega _c}\left( {k - 1} \right) - \\ {\left. {\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\mathit{\boldsymbol{\theta }}_c^{*{\rm{T}}}{\zeta _c}(k - 1)} \right]^2} - {\tau _c}{\beta ^2}\omega _c^2(k) \end{array} $ (41)

利用式(33)、式(41)变为:

$ \begin{array}{l} \Delta {V_4}(k) \le - {\tau _c}\left( {1 - {\gamma _c}{\beta ^2}} \right)[\beta \hat C(k) + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;q(k) - \hat C(k - 1){]^2} - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _c}{\beta ^2}\omega _c^2(k) + 2{\tau _c}\omega _c^2(k - 1) + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;2{\tau _c}{\left( {_c^{\bar \theta }\left( {1 + \beta } \right) + 1} \right)^2} \end{array} $ (42)

V5(k)的差分为:

$ \Delta {V_5}(k) = 2{\tau _c}\omega _c^2(k) - 2{\tau _c}\omega _c^2(k - 1) $ (43)

结合式(31)、式(34)、式(39)、式(42)和(43)则:

$ \begin{array}{l} \Delta V(k) \le - {\tau _{{e_1}}}e_1^2(k)/2 - \left( {{\tau _{{e_2}}} - {\tau _{{e_1}}}} \right)e_2^2(k)/2 - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _\theta }(1 - \gamma ){\left[ {{{\mathit{\boldsymbol{\widehat \theta }}}^{\rm{T}}}(k)\zeta (z(k)) + \hat C(k)} \right]^2} - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;{\tau _c}\left( {1 - {\gamma _c}{\beta ^2}} \right)[\beta \hat C(k) + q(k) - \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\begin{array}{*{20}{l}} {\hat C(k - 1){]^2} - \left( {{\tau _\theta } - {\tau _{{e_2}}}{p^2}} \right){\omega ^2}(k) - }\\ {\left( {{\tau _c}{\beta ^2} - 2{\tau _\theta } - 2{\tau _c}} \right)\omega _c^2(k) + D} \end{array} \end{array} $ (44)

式中$D = 2{\tau _\theta }{(\bar \theta + {\bar \theta _c})^2} + {\tau _{{e_2}}}{p^2}{\bar \varepsilon ^2} + 2{\tau _c}{[\left( {1 + \beta } \right){\bar \theta _c} + 1]^2}$

选取0 < β2 < 1/γc,0 < γ < 1则,

$ \begin{array}{l} \Delta V(k) \le - {\tau _{{e_1}}}e_1^2(k)/2 - \left( {{\tau _{{e_2}}} - {\tau _{{e_1}}}} \right)e_2^2(k)/2 - \\ \;\;\;\;\;\;\;\;\;\;\;\;\left( {{\tau _\theta } - {\tau _{{e_2}}}{p^2}} \right){\omega ^2}(k) - \\ \;\;\;\;\;\;\;\;\;\;\;\;\left( {{\tau _c}{\beta ^2} - 2{\tau _\theta } - 2{\tau _c}} \right)\omega _c^2(k) + D \end{array} $ (45)

设计参数满足τe1>0,τe2>τe1τθ>τe2p2τcβ2>2τθ+2τc。类似文献[12-16]的分析,参数满足$\left| {{e_1}\left( k \right)} \right| > \sqrt D /\sqrt {{\tau _{e1}}/2} $,或$\left| {{e_2}\left( k \right)} \right| > \sqrt D /\sqrt {{\tau _{{e_2}}}/2 - {\tau _{{e_1}}}/2} $,或$\left| {\omega \left(k \right)} \right| > \sqrt D /\sqrt {{\tau _\theta } - {\tau _{{e_2}}}{p^2}} $,或$\left| {{\omega _c}\left( k \right)} \right| > \sqrt D /\sqrt {{\tau _c}{\beta ^2} - 2{\tau _\theta } - 2{\tau _c}} $任意一个不等式条件之一,则ΔV(k) < 0,根据现有Lyapunov理论可以证明,闭环系统内所有信号是半全局一致最终有界的,系统跟踪误差收敛到以零为中心的邻域内。

4 有效性实例仿真研究

利用Matlab进行计算机仿真,以大连海事大学远洋实习船“育龙”轮为例,通过与文献[14]算法的对比研究,验证本文控制算法的有效性。跟踪信号选取能够代表实际性能要求的数学模型:

$ \begin{array}{*{20}{l}} {{\phi _m}(k + 2) + 0.1{\phi _m}(k + 1) + 0.0025{\phi _m}(k) = }\\ {\;\;\;0.0025{\phi _r}(k)} \end{array} $ (46)

式中:ϕm代表船舶航向的期望系统性能;ϕr(k)=(sign(sin(πk/500))+1)π/12是一个经过处理的输入信号,其取值为0°~30°,周期为500 s。

已知“育龙”轮船长126.0 m.,船宽20.8 m, 满载吃水8.0 m, 方形系数为0.681,船速7.7 m/s。通过计算得船舶航向离散非线性系统数学模型参数a1=1, a2=30, K=0.478, T=216。

在仿真中,船舶航向系统的初始条件选取为:γ=0.05的初始状态为5°(即航向偏差为+5°),γ=0.05的初始状态为0,待设计参数选取γ=0.05,γc=0.01,β=0.05。模糊隶属函数选取为:

$ \begin{array}{l} \begin{array}{*{20}{l}} {{\mu _{{F_{i1}}}}(x) = \exp \left[ { - {{(x + 2)}^2} + 3} \right]}\\ {{\mu _{{F_{i2}}}}(x) = \exp \left[ { - {{(x + 1)}^2} + 3} \right]} \end{array}\\ \begin{array}{*{20}{l}} {{\mu _{{F_{i3}}}}(x) = \exp \left[ { - {{(x)}^2} + 3} \right]}\\ {{\mu _{{F_{i4}}}}(x) = \exp \left[ { - {{(x - 1)}^2} + 3} \right]} \end{array}\\ {\mu _{{F_{i5}}}}(x) = \exp \left[ { - {{(x - 2)}^2} + 3} \right] \end{array} $ (47)

其中x=[x1(k), x2(k), yd(k+2)]T,考虑风浪流等外界干扰的影响,本文在仿真中加了干扰项0.1sint。利用Matlab进行计算机仿真研究,图 1为船舶航向非线性离散系统自适应模糊最优控制算法仿真图。

Download:
图 1 航向系统状态历时曲线对比图 Fig. 1 The comparison curves of ship course state

图 1可见,本文相比文献[14],在考虑性系统节能的前提下,对于期望航向跟踪时间较短,兼顾了船舶航向实际性能需求;在跟踪过程中,误差趋于以零为中心的一个小邻域内,表明跟踪效果良好;控制舵角的历时曲线无较大超调量并趋于稳定,表明满足要求;自适应参数的历时曲线显示其为有界的。以上仿真结果分析验证了本文所提算法的有效性。

5 结论

1) 与现有船舶航向离散非线性系统的控制方法相比较,本文考虑控制器节能问题,较好的保持了航向控制系统性能,但同时也使系统的稳定性分析更为复杂和困难。

2) 经研究得出,算法在实现最优控制的同时,确保了闭环系统达到半全局最终一致稳定,也使系统的跟踪误差收敛到以零为中心的邻域内,是解决考虑节能问题的船舶航向控制问题的一个更好的方法。

工程应用中较难达到系统状态信息完全已知的情况,本文没有解决系统状态不可测的问题,下一步研究将从容错控制和状态约束等方面,基于状态观测器,探讨船舶航向控制输出反馈控制问题。

参考文献
[1]
VAN Amerongen J. Adaptive steering of ships—A model reference approach[J]. Automatica, 1984, 20(1): 3-14. DOI:10.1016/0005-1098(84)90060-8 (0)
[2]
杨盐生. 船舶航向非线性系统的模型参考模糊自适应控制[J]. 中国造船, 2003, 44(3): 85-93.
YANG Yansheng. Model reference fuzzy adaptive control of ship course nonlinear system[J]. Shipbuilding of China, 2003, 44(3): 85-93. DOI:10.3969/j.issn.1000-4882.2003.03.012 (0)
[3]
卜仁祥, 刘正江, 李铁山. 迭代滑模增量反馈及在船舶航向控制中的应用[J]. 哈尔滨工程大学学报, 2007, 28(3): 268-272.
BU Renxiang, LIU Zhengjiang, LI Tieshan. Iterative sliding mode based increment feedback control and its application to ship autopilot[J]. Journal of Harbin Engineering University, 2007, 28(3): 268-272. DOI:10.3969/j.issn.1006-7043.2007.03.005 (0)
[4]
刘程, 李铁山, 陈纳新. 带有舵机特性的船舶航向自动舵DSC-MLP设计[J]. 哈尔滨工程大学学报, 2012, 33(1): 9-14.
LIU Cheng, LI Tieshan, CHEN Naxin. Dynamic surface control and minimal learning parameter design of ship's autopilot with rudder dynamics[J]. Journal of Harbin Engineering University, 2012, 33(1): 9-14. DOI:10.3969/j.issn.1006-7043.201011004 (0)
[5]
王欣, 李铁山, 林彬. 考虑舵机特性的船舶航向离散非线性系统输出反馈控制设计[J]. 大连海事大学学报, 2014(2): 1-4.
WANG Xin, LI Tieshan, LIN Bin. Output feedback control for ship course discrete-time nonlinear systems with rudder dynamics[J]. Journal of Dalian Maritime University, 2014(2): 1-4. DOI:10.3969/j.issn.1006-7736.2014.02.001 (0)
[6]
BAI Xuerui, YI Jianqiang, ZHAO Dongbin. Approximate dynamic programming for ship course control[M]// Advances in Neural Networks-ISNN 2007. Springer Berlin Heidelberg, 2007: 349-357. (0)
[7]
XIE Qingqing, LUO Bin, TAN Fuxiao. Optimal tracking control for ship course using approximate dynamic programming method[C]// Control Conference. IEEE, 2013: 2911-2916. (0)
[8]
Werbos P J. Approximate dynamic programming for real-time control and neural modeling. Handbook of Intelligent Control: Neural, Fuzzy, and Adaptive Approaches, 1992, 15: 493-525. (0)
[9]
李永明.非匹配不确定非线性系统自适应模糊控制[D].大连海事大学, 2014: 12-13.
LI Yongming. Adaptive fuzzy control for unmatched uncertain nonlinear systems[D].Dalian Maritime University, 2014: 12-13. (0)
[10]
Wang Linxin. Stability adaptive fuzzy control of nonliner system[J]. IEEE transactions on fuzzy system, 1993, 1(2): 146-155. DOI:10.1109/91.227383 (0)
[11]
LIU Yanjun, GAO Ying, TONG Shaocheng, et al. Fuzzy approximation-based adaptive backstepping optimal control for a class of nonlinear discrete-time systems with dead-zone[J]. IEEE Transactions on Fuzzy Systems, 2016, 24(1): 16-28. DOI:10.1109/TFUZZ.2015.2418000 (0)
[12]
YANG Qinmin, Jagannathan S. Reinforcement learning controller design for affine nonlinear discrete-time systems using online approximators[J]. IEEE Transactions on Systems Man & Cybernetics Part B, 2012, 42(2): 377-390. (0)
[13]
GE Shuzhi, LI Gangyang, LEE Tongheng. Adaptive NN control for a class of strict-feedback discrete-time nonlinear systems[J]. Automatica, 2003: 807-819. (0)
[14]
王欣, 刘正江, 李铁山, 等. 船舶航向离散非线性系统自适应神经网络控制[J]. 哈尔滨工程大学学报, 2016(1): 123-126.
WANG Xin, LIU Zhengjiang, LI Tieshan, et al. Neural network-based adaptive control for a ship course discrete-time nonlinear system[J]. Journal of Harbin Engineering University, 2016(1): 123-126. (0)
[15]
LIU Derong, WANG Ding, ZHAO Dongbin, et al. Neural-network-based optimal control for a class of unknown discrete-time nonlinear systems using globalized dual heuristic programming[J]. IEEE transactions on automation science & engineering, 2012, 9(3): 628-634. (0)
[16]
HE Pingan, JAGANNATHAN S. Reinforcement learning neural-network-based controller for nonlinear discrete-time systems with input constraints[J]. IEEE transactions on systems man & cybernetics part B, 2007, 37(2): 425. (0)