1.一种基于值迭代的Baxter机械臂智能优化控制方法,其特征在于,所述方法考虑Baxter机械臂系统动力学方程如下:其中q, 分别表示机械臂位置,角速度,角加速度向量,Mj(q)表示机械臂惯性矩阵,表示机械臂科氏力矩向量,Gj(q)表示机械臂重力矩向量,τ表示机械臂控制力矩向量,τd表示外部环境的未知扰动力矩向量;
系统状态向量由下式表示:
Baxter机械臂的状态空间方程给出如下:其中,u=τ为系统力矩输入, 为状态向量,y为输出,矩阵Ac,Bc,hc定义如下:
其中,On为(n×n)的零矩阵,In为(n×n)的单位矩阵;
其中,0n为(n×1)的零矩阵,n(x1,x2)收集科式力矩、重力矩相关信息;对于Q‑learning值迭代最优控制问题:
有限域最优控制问题为:
选取Q=1,R=1,(A,B)能控,控制器的求解由贝尔曼最优原理确认,由u=‑Kx,其中K=‑1 T
R BH,且H满足代数黎卡提方程:T ‑1 T
AH+HA‑HBR BH+Q=0 (8);
所述智能优化控制方法包括以下步骤:步骤1)对系统进行初始化处理,步骤如下:
1.1)选取基函数:对连续时间LQR,其值函数在状态下是二次的, 因此,n L
选择(9)式中的actor神经网络的基函数 R →R作为状态分量的二次多项式向量,该向量状态个数为n,则该基函数含有n(n+1)/2个分量,同时,权重向量W由矩阵H中的元素组成;
1.2)初始化系统:选择初始状态x0,计算基函数初始值,确定初始策略K0;
步骤2)对系统进行采样,并进行最小二乘法的计算,求得最优值函数,即策略评估过T T T
程;为了得到在策略Ki下每一步的Q函数,使用参数矩阵Hi计算,记z=[x u ],上述公式变为:
其中 为Kronecker内积二次多项式基向量,元素为{zi(t)zj(t)}i=1,n;j=i,n,为向量值矩阵函数,作用于n×n矩阵,通过将对称矩阵的元素叠加成一个向量,非对角元素求和为Hij+Hji,从而得到列向量;
在每个迭代步骤中,在使用相同的控制策略Ki收集足够数量的位置和角速度轨迹点后,用最小二乘法求解Q函数参数 从而得到Hi+1,在最小平方意义下,通过最小化目标函数之间的误差来找到参数向量H的最小值,在状态空间中N>N(N+1)个点Zi求值,得到最小二乘解为:
其中,
测量时间t和t+T离散时刻的状态,以及在采样时间间隔内观察到的奖励:Hi+1=f(hi+1) (15)步骤3)根据得到的最优值函数,通过贪心算法更新最优参数:当最小二乘法收敛时,策略不再更新,得到最优策略,连续时间ADP算法由(14)和(6)之间的迭代组成,然而,使用(15)更新控制策略不需要包含动力学知识的系统矩阵,这使得算法在无模型的情况下实现。