二次曲线型终态神经网络:时变神经计算与冗余机械臂重复运动规划①
2020-11-06孙明轩吴雨芯
孙明轩 吴雨芯 张 钰
(浙江工业大学信息工程学院 杭州 310023)
0 引 言
矩阵求逆与矩阵方程求解是广泛应用于科学研究及工程等领域中的典型计算问题。Hopfield于20世纪80年代提出的递归神经网络是常用的求解方法[1,2]。递归神经网络计算具有并行计算的特点,能够高效、高精度地获得计算结果。这种神经网络也被广泛用于解决优化问题。例如,文献[3]将非线性规划归结为递归神经网络的稳态解,文献[4]设计动态梯度系统求解优化问题,文献[5]采用对偶递归神网络模型求解线性与二次规划问题。为解决传统递归神经网络在求解时变问题时的不足,文献[6]提出一种渐近收敛递归神经网络模型(recurrent neural networks, RNN),将其用于求解时变线性矩阵方程,能够保证其计算解指数地收敛于理论解。文献[7]讨论了这种RNN在离散实现时的计算性能, 并与牛顿迭代法进行了比较,其与梯度法的比较结果见文献[8]。文献[9]将这种方法应用于求解线性矩阵不等式,文献[10] 在误差方程中引入积分项,以提高干扰影响下的计算精度。文献[11]提出一种时变参数递归神经网络,并将其应用于时变Sylvester方程的在线求解。
与渐近稳定系统不同,终态吸引系统是一类具有有限时间收敛特性的动态系统[12]。采用渐近收敛网络模型,求解过程收敛至精确解需无限长的时间,因此有限时间收敛神经网络模型更适用于求解时变矩阵计算问题。将终态吸引系统理论用于递归神经网络,可以在2个方面改善计算性能:一方面提高收敛速度,另一方面提高计算精度。文献[13-15]提出的递归神经网络计算模型,计算过程能够在有限时间内收敛,给出了时变矩阵计算问题更为有效的解决方案。这种终态神经网络已应用于求解线性矩阵方程[16]、Lyapunov方程[17]以及Sylvester方程[18,19]。
冗余机械臂是指末端执行器在执行给定任务时所具有自由度超出所需自由度的机械臂,超出的自由度可以使末端执行器在完成给定任务的同时完成其他各项性能指标。传统的冗余度解析方法是基于伪逆的方法。但是基于伪逆方法得到的关节运动可能不具有可重复性[20,21]。文献[22]通过修正运动指标,形成重复运动规划(二次规划), 进一步通过拉格朗日乘子法将二次规划转换为矩阵求逆问题, 并以递归神经网络求解冗余度解析问题。近来,为了提高解算效率,基于终态神经网络求解运动规划引起人们的关注[16-18]。从已发表的文献可以看出,目前提出的终态网络模型多具有无限值,不易于实现。
本文提出一类新颖的二次曲线型终态神经网络,包括双曲线型、椭圆型和抛物线型3种终态神经网络,其典型特征是网络各变量取值有限。文中详细分析了这类网络的有限时间收敛特性,并以双曲线型终态神经网络为例,检验其在时变矩阵计算与机器人轨迹规划方面的有效性。首先将其应用于一般时变线性矩阵方程的求解,它能够在有限时间内快速、准确地收敛到理论解。对于冗余机械臂重复规划问题,本文将重复运动指标取为终态收敛性能指标,通过将其转化为二次规划问题,在初始位置偏移的情况下,利用双曲线型终态神经网络进行求解,从而实现冗余机器人有限时间收敛的重复运动规划任务。
1 二次曲线型终态神经网络
为了解决时变神经计算问题,本节提出二次曲线型终态神经网络,并分析这种终态神经网络的有限时间收敛性、确定收敛时间。
1.1 双曲线型终态神经网络
提出2种双曲线型终态神经网络,用于时变问题求解。
双曲线型终态神经网络1的误差动态方程如下:
(1)
F1(Eij(t),a,b)=
其中,Eij(t)为误差变量,ε>0为用于调整收敛速度的常值;δ、b>0 分别表示双曲线半实轴与半虚轴长度。
定理1由式(1)描述的双曲线型终态神经网络1全局有限时间收敛,其收敛时间为
T=
(2)
证明针对误差动态方程式(1),分2种情形讨论。
(Eij(t)+a)2=Y2+a2
(3)
对其两端关于时间t求导:
(4)
这时,式(1)化简为
(5)
将式(3)与式(5)代入式(4),得:
(6)
定义Y=atanZ,代入式(6)可得:
(7)
求取Eij(t)由Eij(0)收敛到Eij(t)=0的时间:
解出T得:
(2) 当Eij(t)≤0时,同理可得:
双曲线型终态神经网络2的误差动态方程为
(8)
F2(Eij(t),σ)=
当σ取不同值时,函数F2(Eij(t),σ)的变化情形如图1所示。可以看出,调整参数σ会改变该函数在原点附近的斜率;当时间趋于0时,该函数导数趋于无穷大,从而使得网络有限时间收敛。
图1 函数F2(Eij(t),σ)
定理2由式(8)所描述的双曲线型神经网络2全局有限时间收敛,其有限时间收敛性分2种情形。
(1) 当|Eij(t)|<σ时,误差Eij(t)从Eij(0)收敛到原点所需时间为
T=
(9)
(2) 当|Eij(t)|≥σ时,该网络收敛时间为
(10)
证明针对误差方程式(8),下面分4种情形分别讨论。
(1) 当0≤Eij(t)<δ时,类似定理1的证明,求得的收敛时间为
(2) 当-δ (3) 当Eij(t)≥δ时,首先考虑误差从Eij(0)收敛到σ所需的时间T1,有: 解出T1为 误差由Eij(t)=σ收敛到Eij(t)=0所需时间满足 解得 因此,当Eij(t)≥σ时,Eij(t)从Eij(0)收敛到0所需时间T为 以上提出的是双曲线型网络,除此以外,二次曲线型终态网络还有2种形式,即抛物线型与椭圆型终态网络。 抛物线型终态神经网络的误差动态方程如下: (11) F(Eij(t),σ)= 定理3由式(11)描述的抛物线型终态神经网络全局有限时间收敛,其有限时间收敛性分以下2种情形。 (1) 当|Eij(t)|<σ时,误差Eij(t)从初始误差Eij(0)收敛到Eij(t)=0所需时间为 (12) (2) 当|Eij(t)|≥σ时,该神经网络的收敛时间为 (13) 证明依据误差动态方程式(1),分4种情况分别讨论。 (1) 当0≤Eij(t)<σ时, 由式(11)可知: (14) 对式(14)两端积分: 误差Eij(t)由Eij(0)收敛至原点所需时间为 (2) 当-σ 因此,当|Eij(t)|<σ时,收敛时间如式(12)所示。 因此, 这样,从初始误差Eij(0)收敛到原点的时间为 (4) 当Eij(t)≤-σ时,与情形(3)推导类似, 故当|Eij(t)|≥σ时,收敛时间如式(13)所示。 椭圆型终态神经网络的误差动态方程如下: (15) F(Eij(t),σ)= 定理4由式 (15) 描述的椭圆型终态神经网络全局有限时间收敛,其有限时间收敛性分以下2种情形。 (1) 当|Eij(t)|<σ时,该网络从初始误差Eij(0)收敛到Eij(t)=0所需时间为 (16) (2) 当|Eij(t)|≥σ时,该网络的收敛时间为 (17) 证明依据误差动态方程式(15), 分4种情形分别讨论。 Y2+(Eij(t)-a)2=a2 (18) 对式(18)两端关于时间求导: (19) (20) 对式(20)两端积分, 有: 可求得误差Eij(t)由Eij(0)收敛到原点的时间T满足: (2) 当-σ 故当|Eij(t)|<σ时, 收敛时间如式(16)所示。 误差从Eij(t)=σ收敛到0所需的时间T2满足: 解得, 这样,误差从初始误差Eij(0)收敛到Eij(t)=0所需的时间为 (4) 当Eij(t)≤-σ时,同理可得: 故当|Eij(t)|≥σ时, 收敛时间如式(17)所示。 考虑下述一般时变线性矩阵方程: (21) 其中,Ak(t)∈Rn×n,Bk(t)∈Rm×m,C(t)∈Rn×m为时变系数矩阵,X(t)∈Rn×m为待求解未知时变矩阵。 本文的计算目的是以双曲线型终态神经网络求解未知时变矩阵X(t),在有限时间收敛后,获得时变矩阵的解。为此目的,依据式 (21),定义矩阵值误差函数为 (22) 对式 (22) 左右两边同时求导,可得到: (23) (24) 为了验证所提出的双曲线型终态神经网络在计算时变线性矩阵方程式(21)方面的有效性,本文设置时变线性矩阵方程式(21)不同的系数矩阵,给出具体形式的时变矩阵方程,包括时变Lyapunov方程和时变Sylvester方程。分别给出将双曲线型终态神经网络用于求解这2类时变矩阵方程的计算结果,并与递归神经网络对于同一算例的结果进行比较,以验证所提出的双曲线型终态神经网络的收敛性能。 (25) 定义矩阵值误差函数为 (26) 对式 (26) 左右两边同时求导: (27) 将式(27)代入网络误差动态方程式(1)和式(8),可得如下终态神经网络模型。 例1利用双曲线型终态网络模型式(28)求解时变Lyapunov方程式(25),其中时变矩阵为 (29) (30) 图2 时变Lyapunov方程的求解结果 图3 时变Lyapunov方程计算误差轨迹 图4 时变Lyapunov方程计算误差对比 在时变线性矩阵方程式(21)中,置k=2,m=n,B1(t)=A2(t)=I,该方程简化为下述时变Sylvester方程: A1(t)X(t)+X(t)B2(t)=C(t) (31) 定义矩阵值误差函数为 E(t)=A1(t)X(t)+X(t)B2(t)-C(t) (32) 对式(32)左右两边同时求导,可得: (33) 将式(33)代入网络误差动态方程式(1)和式(8),可得双曲线型终态神经网络模型。 例2利用双曲线型终态网络模型式(34)求解时变Sylvester方程式(31),其中时变矩阵为 (35) (36) (37) 图5和图6给出了双曲线型终态网络的求解结果及计算误差。当所有解元素的误差小于5×10-3时,基于双曲线型终态网络1求解所需时间t=0.699 s;基于双曲线型终态网络2求解所需时间t=0.837 s。当T∈[9,10]范围内,基于双曲线型终态网络求解得到的误差波动范围为[-5×10-3, 5×10-3]。图7为分段边界σ取不同值时,利用双曲线型终态网络2求解时误差的F范数,可以看出,随着σ的减小,X(t)收敛到理论解X*(t)的速度加快。 上述算例表明,所提出的双曲线型终态网络对于解决一般时变线性矩阵问题是有效的。相比于具有渐近收敛动态特性的递归网络,双曲线型终态网络具有有限时间收敛性、收敛速度快、计算精度高的特点。 图5 双曲线型终态网络1求解结果及计算误差 图6 双曲线型终态网络2求解结果及计算误差 图7 双曲线型终态神经网络2求解误差范数 本节将双曲线型终态网络应用于求解冗余机械臂重复运动规划,并以PA10机械臂为例验证所提出终态网络的适用性。 考虑n自由度机械臂的关节角度和末端执行器位移关系 r(t)=f(θ(t)) (38) 其中,r(t)表示末端执行器在笛卡尔坐标系下的位姿变量,θ(t)表示关节角。末端笛卡尔空间和关节空间的各变量微分之间的关系为 (39) 为了执行重复运动任务,可引入重复运动指标作为优化准则,将冗余机械臂运动规划描述为相应的二次规划问题,通过求解该优化问题形成重复运动规划方案。与文献[18]不同的是,本文将重复运动指标设计为终态收敛性能指标,其具体形式如下: (40) 其中, g(θ)= sgn(θ(t)-θd(0)) (41) 定义拉格朗日函数如下: -βr(rd-f(θ))) (42) W(t)Y(t)=V(t) (43) 其中, 为求解由式(41)所示的二次规划问题,定义误差: E(t)=W(t)Y(t)-V(t) (44) 将式(44)代入误差动态方程,可得终态神经网络模型。 (45) 据此模型完成求解过程,便可得到机械臂各个关节角轨迹。 图8分别给出了求解获得的 PA10 末端执行器在空间中的运动轨迹及各个关节运动轨迹。可以看出,末端执行器的初始位置不在期望轨迹上,但各个关节的轨迹在运行一个周期后是闭合的,实现了重复运动控制。为了说明该终态网络在重复运动规划中的有效性,机械臂末端执行器完成圆轨迹过程中相应的关节角和关节角速度轨迹如图 9 所示。机械臂各关节角最终收敛于期望关节角位置,关节角速度收敛于0 ,机械臂运动停止。末端执行器各个位置误差如图10所示,随着时间增加(T=10 s),末端执行器的终值位置误差精度在XYZ轴3个方向上达到4×10-6,实际轨迹与期望轨迹吻合,从而实现由初始位置收敛于期望轨迹。 图8 PA10末端执行器运动轨迹及各关节运动轨迹 图9 PA10关节角及关节角速度轨迹 另外,表1 给出了当轨迹规划完成时的双曲线型终态网络及渐近收敛网络各关节角实际回拢角度与其期望角度之间的偏差对比,其中,取参数ε=2。 本文提出一种新的二次曲线型终态神经网络并证明其有限时间收敛性。以双曲线型终态神经网络为例,将其用于一般时变线性矩阵方程的求解,使时变线性矩阵方程解能够快速地在有限时间内收敛到其理论解。将双曲线型终态神经网络应用于冗余机械臂重复运动规划,并将重复运动指标设计为终态收敛性能指标,在初始位置偏移的情况下,实现冗余机械臂快速有限时间内收敛的重复运动规划任务,进一步说明了双曲线型终态神经网络的适用性。 图10 末端执行器各位置误差 表1 各关节角实际回拢角度与期望角度偏差1.2 抛物线型终态神经网络
1.3 椭圆型终态神经网络
2 时变线性矩阵方程求解
2.1 时变Lyapunov方程
2.2 时变Sylvester方程
3 冗余机械臂重复运动规划
4 结 论