首页> 中国专利> 一种基于零化神经网络求解时变连续代数Riccati方程的方法

一种基于零化神经网络求解时变连续代数Riccati方程的方法

摘要

本发明公开了基于误差的自适应系数零化神经网络求解时变连续代数Riccati方程的方法,首先对原始问题,例如机械臂运动规划、图像与信号处理等问题进行抽象与建模,将问题转化为求解时变连续代数Riccati方程的数学模型,之后将该数学模型通过求导和克罗内克积转化为时变矩阵线性方程问题,采用基于误差的自适应系数零化神经网络进行迭代求解,在求解的过程中不断对系统残差以及状态变量进行映射及自适应变换,调整网络的求解策略。最终当迭代求解出的模型系统满足预定义的条件及精度后停止迭代并输出模型系统。和传统的其他求解时变连续代数Riccati方程的方法相比,本发明算法有更高的收敛精度和鲁棒性。

著录项

  • 公开/公告号CN113282873A

    专利类型发明专利

  • 公开/公告日2021-08-20

    原文格式PDF

  • 申请/专利权人 广东海洋大学;

    申请/专利号CN202110461012.4

  • 发明设计人 肖秀春;姜丞泽;金龙;李坤键;

    申请日2021-04-27

  • 分类号G06F17/11(20060101);G06F17/16(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构11660 北京快易权知识产权代理有限公司;

  • 代理人赵秀英

  • 地址 524088 广东省湛江市麻章区海大路1号

  • 入库时间 2023-06-19 12:18:04

说明书

技术领域

本发明涉及矩阵方程及神经网络技术领域,具体涉及基于误差的自适应系数零化神经网络(Norm-BasedAdaptionCoefficientZeroingNeuralNetwork)求解时变连续代数Riccati方程的方法。

背景技术

时变连续代数Riccati方程是优化理论的一个重要分支,时变连续代数Riccati方程被广泛应用于科学研究于工程应用领域,例如在图像目标检测,机器人运动学,电力系统设计,通信工程或是控制理论等领域都需要精确地求解时变连续代数Riccati方程。传统的方法通常是先将时域有限差分问题离散化,然后在每个时间片内将其转化为静态有限差分问题来求解。然而,值得注意的是,尽管现有的模型或算法对于传统的连续代数Riccati方程地问题是有效的,但是由于计算上的缺点,传统方法在某些特定的情况下是具有挑战性的或者是不可能解决的。在处理含时连续代数时间代数Riccati方程问题时,传统方法会因滞后误差而陷入求解精度低或系统崩溃的问题。零化神经网络模型(ZNN模型)可以充分利用了时变连续代数Riccati方程问题中的导数信息,因此有效地克服了传统方法中的滞后误差,提高了解的精度。值得注意的是,尽管基于目标问题中的导数信息,ZNN模型可以获得极高的精度,但正是由于这一特性,ZNN模型极易受到各种形式的噪声干扰,从而导致求解系统的崩溃。为了突破现有的困境,弥补上述不足,不少研究者引入了积分反馈项来解决这个问题,但是现有的方法中并没有充分利用解系统中残差信息,导致截断误差或系统崩溃,因此,本发明旨在提出了一个能充分利用求解系统的残差信息和动量信息的基于误差的自适应系数零化神经网络(NACZNN模型)来求解时变连续代数Riccati,突破了传统方法无法有效解决时变连续代数问题的困境。还能加速求解系统的收敛。除此之外,该模型还能在各种测量噪声的干扰下保持较高的鲁棒性和求解精度。

发明内容

本发明的目的在于提供一种基于误差的自适应系数零化神经网络求解时变连续代数Riccati方程的方法,解决了传统算法的无法因对时变连续代数问题、复杂度高、收敛速度慢、精度低等问题。此外,突破了现有神经网络没有充分利用解的残差信息的缺陷,进一步扩展了零化神经网络的引用范围。

为了实现上述目的,本发明所采用的技术方案如下:

用于求解时变连续代数Riccati方程问题的NACZNN模型可以被表示为:

x(t)=vec(X(t)),k(t)=vec(H(t))

其中B(t),C(t),D(t),G(t),

(1)对NACZNN模型初始化,对求解时变连续代数Riccati方程问题的NACZNN模型进行求解,得到x(t);

(2)将x(t)矩阵化后代入误差函数

E(t)=A

通过误差函数计算当前迭代步骤的误差,若误差的F范数||E(t)||

(3)更新模型中的各个参数,转步骤(2);

实现本发明目的的技术解决方案为:

步骤1:输入原始实际问题(机械臂运动规划,图像处理等实际问题);

步骤2:根据输入的原始实际问题,抽象与建模得到其中的隐含的基本数学问题;

步骤3:建立求解时变连续代数Riccati方程的原始神经网络模型;

步骤4:定义基于误差的自适应系数零化神经网络;

步骤5:利用基于误差的自适应系数零化神经网络算法,在无噪声和有噪声的情况下对时变连续代数Riccati方程数学模型进行迭代求解,不断对系统残差以及状态变量进行映射及变换直至满足预定义的精度以及要求;

步骤6:最终得到输出模型系统和所得结果。

具体的,步骤2中所述的隐含的数学问题可以被统一表示为:

A

其中A(t),X(t),M(t),

进一步的,步骤3中所述的建立求解Riccati方程的数学模型具体表示为:

步骤3.1:时变连续代数Riccati方程的误差函数可以表示为:

E(t)=A

步骤3.2:由OZNN模型的进化方向我们可以得到

在这里γ>0,

步骤3.3:令

进一步的,步骤4中提出的定义基于误差的自适应系数零化神经网络具体表现为:

步骤4.1:基于误差的自适应系数的定义为:

(1)Exponential adaptive scale coefficient:

ζ>1,||·||

(2)Power adaptive scale coefficient:

(3)Sigmoid adaptive scale coefficient:

步骤4.2:定义一个基于误差的自适应系数神经网络:

在这里μ>0。

进一步的,步骤5中利用基于误差的自适应系数零化神经网络求解时变连续代数Riccati方程的方法具体表示为:

步骤5.1:求解时变连续代数Riccati方程的基于误差的自适应系数零化神经网络求解时变连续代数Riccati方程的模型:

其中参数ξ(t)表示噪声,无噪声时ξ(t)=0,有噪声时,ξ(t)≠0。

步骤5.2:参数初始化;

步骤5.3:计算误差函数E(t),若满足条件||E(t)||

步骤5.4:重复步骤5.3直至计算结束输出。

进一步的,步骤5.2中所述的参数初始化的具体步骤包括:

S5.2.1:预设的最大容限误差∈;

S5.2.2:随机初始化初始迭代点x

S5.2.3:初始化λ(E(t))中的参数和噪声ξ(t);

S5.2.4:给定矩阵具体值:

本发明与现有技术相比,包括以下优点:

第一,定义了一个基于误差的自适应系数,突破了OZNN模型系数是常数的界限,充分应用了系统的残差信息,对截断误差和解系统崩溃有一定的预防能力;

第二,其在求解过程中充分利用了时变连续代数系数的导数信息,具有一定的预测能力;

第三,其在设计模型上引入积分反馈项,使得该算法具有更强的鲁棒性、更加拟合实际问题的要求。

附图说明

图1为本发明NACZNN模型的流程图。

图2为通过NACZNN模型计算出的计算解轨迹和理论解轨迹之间的对比

图3和图4为采用NACZNN模型与其他模型在求解时变连续代数Riccati方程时的残差和残差对数收敛图像比较。

图5和图6为采用NACZNN模型与其他模型在求解时变连续代数Riccati方程受到常数噪声干扰下的残差和残差对数收敛图像比较。

图7和图8为采用NACZNN模型与其他模型在求解时变连续代数Riccati方程受到随机噪声干扰下的残差残差对数收敛图像比较。

图9和图10为采用NACZNN模型与其他模型在求解时变连续代数Riccati方程受到线性噪声干扰下的残差和残差对数收敛图像比较。

具体实施方式

为了使本领域的普通技术人员能更好的理解本发明的技术方案,下面结合附图和实施例对本发明的技术方案做进一步的描述;

参考附图1-10可以看出,一种基于误差的自适应系数零化神经网络求解时变连续代数Riccati方程的方法,包括以下步骤:

步骤1:输入原始实际问题(机械臂运动规划,图像处理等实际问题);

步骤2:根据输入的原始实际问题,抽象与建模得到其中的隐含的基本数学问题:

A

其中A(t),X(t),M(t),

步骤3:建立求解时变连续代数Riccati方程的原始神经网络模型。

步骤3.1:时变连续代数Riccati方程的误差函数可以表示为:

E(t)=A

步骤3.2:由OZNN模型的进化方向我们可以得到

在这里γ>0;

步骤3.3:令

步骤4:定义基于误差的自适应系数零化神经网络:

步骤4.1:基于误差的自适应系数的定义为:

(1)Exponential adaptive scale coefficient:

ζ>1,||·||

(2)Power adaptive scale coefficient:

(3)Sigmoid adaptive scale coefficient:

步骤4.2:定义一个基于误差的自适应系数神经网络:

在这里μ>0。

步骤5:利用基于误差的自适应系数零化神经网络算法,在无噪声和有噪声的情况下对时变连续代数Riccati方程数学模型进行迭代求解,不断对系统残差以及状态变量进行映射及变换直至满足预定义的精度以及要求;

步骤5.1:求解时变连续代数Riccati方程的基于误差的自适应系数零化神经网络求解时变连续代数Riccati方程的模型:

其中参数ξ(t)表示噪声,无噪声时ξ(t)=0,有噪声时,ξ(t)≠0。

步骤5.2:参数初始化;

步骤5.3:计算误差函数E(t),若满足条件||E(t)‖

步骤5.4:重复步骤5.3直至计算结束输出;

进一步的,步骤5.2中所述的参数初始化的具体步骤包括:

S5.2.1:预设的最大容限误差∈;

S5.2.2:随机初始化初始迭代点x

S5.2.3:初始化λ(E(t))中的参数和噪声ξ(t);

S5.2.4:给定矩阵具体值:

实施例

首先,传入矩阵的实例,具体实例如下:

给定自适应参数

给定反馈积分项的系数

μ=5

给定噪声

A.常数噪声:ξ(t)=[2]

B.线性噪声:ξ(t)=[0.4×t]

C.随机噪声:ξ(t)∈[0.5,2]

其次,根据给定的实例将时变连续代数Riccati方程纳入到基于误差的自适应系数零化神经网络求解框架中,根据基于误差的自适应系数零化神经网络的演化定义公式

推导出用于求解的迭代模型。

最后,利用微分方程求解器对迭代模型进行计算,直至满足预给定的条件为止。

图2、图3和图4展示了采用NACZNN模型在求解时变连续代数Riccati方程仿真结果图,通过分析图2可以看出,本发明提出的NACZNN模型从任意的初始点开始,均可以准确的收敛到理论解。为了充分展示和证明NACZNN模型在各类噪声干扰下的全局收敛性和鲁棒性,我们分别设置了在不同噪声干扰下的仿真实验,并将仿真实验的结果展示在图5-图8中。可以看出,当采用NACZNN模型在求解时变连续代数Riccati方程时,尽管受到噪声干扰,该模型仍保持良好的鲁棒性和稳定性。

本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。尽管参照前述实施例对本发明专利进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号