1.一种基于改进MOABC算法的机械臂多目标轨迹避障规划方法,其特征在于,包括如下步骤:
1)构建机械臂和障碍物模型:按照D‑H约定建立机械臂模型的关节坐标系,通过D‑H参数法推导从基座到相邻关节再到末端执行器,建立连杆传动联系,得到D‑H参数,建立机械臂模型,采用球体包络法对形状不确定的障碍物进行建模,即取障碍物上距离最远的两点的中心为球心,以两点连接线段的长度为直径进行包络;
2)定义碰撞检测方法:机械臂与障碍物间的碰撞检测由D‑H参数关系简化为直线段i与球心点O的位置关系判断,即将机械臂连杆的径向最大半径叠加到球体包络物的半径上,定义机械臂的最大径向半径为R1,障碍物半径为R0,连杆直线段到障碍物圆心的距离为dit,障碍物球心坐标O为(x0,y0,z0),每一连杆的首末端点坐标分别为(xi,yi,zi)和(xi+1,yi+1,zi+1),根据D‑H参数用齐次坐标变换法建立各连杆线段的数学模型,直线段i的坐标方程如公式(1)所示:其中,λ为比例参数、取值范围0到1,x,y,z表示直线段i的坐标,接着,检测直线段i与球心的距离diλ与R0+R1的关系:若diλ
3)构造分段关节轨迹:机械臂各关节通过设定中间点,采用分段五次多项式去拟合各关节变量的关键点,构建机械臂的运行轨迹,绕过障碍物,五次多项式的函数表达式如公式(2)所示:
2 3 4 5
θ(t)=a0+a1t+a2t+a3t+a4t+a5t (2),其中,t表示运动时间,a0,...,a5表示待定系数,将五次多项式的系数写成向量形式,则公式(2)简写为如公式(3)所示:
2 3 4 5
θ(t)=[1,t,t ,t ,t ,t]·a (3),
设机械臂各关节在初始时刻t0的位置、速度和加速度分别为θ0,v0,a0,在终止时刻tf的位置、速度和加速度分别为θf,vf,af,其中t0=0,令v0=a0=vf=af=0,令中间点在tm时刻的位置为θm,构建等式方程如公式(4)所示:由公式(3)、公式(4)类推,若机械臂的运动轨迹包含n个中间点,则有n+1段运行时间、n+2个时刻,由n+1段五次多项式表示,则需要6(n+1)个约束方程来确定系数,联立公式(3)、公式(4)写成矩阵相乘形式,则系数矩阵A通过如公式(5)所示求得:‑1
A=M *Q (5),
其中,M为轨迹关于时间t的矩阵,A包含了轨迹的待定系数,Q则为已知的约束条件矩阵;
4)多目标函数构造及约束:定义优化目标如公式(6)所示:
其中,m为路径点数,M为机械臂的关节数,由H/s得到n为插值点数,s为插值间隔,f1表示为运行时间,f2表示为关节加速度增量和,f3表示为关节的加加速度增量和,与此同时,机械臂的运动还受到以下约束:位置约束:θijmin≤θij≤θijmax;
速度约束:
加速度约束:
加加速度约束:
其中,θijmax,vijmax,aijmax,jijmax分别为相应关节位移,速度,加速度和加加速度的最大值;θijmin,为相应关节位移的最小值;θij,aij,vij,jij则分别为相应关节第i个插值点的位移,速度,加速度和加加速度;
5)构建外部档案搜索策略:采用多目标人工蜂群MOABC算法,在采蜜蜂阶段,将原先蜜蜂之间采用的随机有限的搜索方式进行替换,设外部档案集E的数量大小R,依据外部档案的精英信息引导种群寻优,将搜索过程中产生的非支配解加入档案中,从外部档案集E中随a k a机选择任一解的第j维度ej引入搜索方式中,每个新解的产生都是由邻居解xj和精英解ej共同作用,搜索方式如公式(7)所示:
6)引入改进模拟退火算法:对步骤5)构建外部档案搜索策略的MOABC算法进一步优化,i引入Suppapitnarm改进的多目标模拟退火SMOSA准则,假定当前蜜源为x j,迭代后的新蜜源new为x j,则对应的适应度变化值为 每个目标函数被分别指定温度
进行退火迭代更新,在存档之前将每个目标中的变化相互比较,接收概率p如公式(8)所示,其中,N为优化目标函数个数:若Δ≤0,则接受新蜜源替换当前蜜源,若p>rand(0,1),同样接受这个较差蜜源替换n i当前蜜源,否则保持不变,采用Tn=a T降温方式,在每个温度T下迭代N次,通过不断改变x j来寻找当前温度下的最优值,然后降低温度继续寻找,直到满足终止条件;
7)结合罚函数约束法和多目标优化思想:将罚函数约束法和多目标优化思想相结合,转化为无约束优化问题,构造公式与原函数合并,定义罚函数如公式(9)所示:其中,死亡惩罚因子σ1,σ2分别置为无穷大Inf;
分别为惩罚函数;
dk(x)≥0(k=1,2,...,K);
gj(x)≤0(j=1,2,...,p),
当个体满足约束条件时,该个体的惩罚值为0,反之则将死亡惩罚因子置为无穷大Inf,使不满足约束的个体淘汰,在轨迹插值中,若机械臂与障碍物发生碰撞,将死亡惩罚因子置为无穷大Inf,若机械臂的角度,速度,加速度,加加速度不满足约束,将死亡惩罚因子也置为无穷大Inf;
8)改进多目标人工蜂群算法优化多目标变量:对采用步骤5)、步骤6)、步骤7)获得的改进MOABC算法将机械臂运动过程分段多项式的中间点和分段的时间参数当成蜜源初始化,计算适应度,进行快速非支配排序生成非支配解集并更新外部档案集,在采蜜蜂阶段,进行搜索并更新蜜源,在旁观蜂阶段,进行贪婪选择搜索策略并更新蜜源,计算适应度,进行快速非支配排序生成非支配解集并进行拥挤度计算,更新外部档案集,若超过蜜源的开采阈值limitNum且并未更新,进入侦查蜂阶段产生新蜜源,计算适应度并用贪婪选择更新,记录当前最优解集,若循环达到最大迭代次数,则输出最优解集,否则更新温度继续进入循环。