一种基于改进遗传算法的工业机器人轨迹优化方法

文档序号:24789548发布日期:2021-04-23 12:32阅读:242来源:国知局
一种基于改进遗传算法的工业机器人轨迹优化方法

1.本发明属于机器人轨迹规划技术领域,具体涉及一种基于改进遗传算法的工业机器人轨迹优化方法。


背景技术:

2.工业机器人以其高速高精、安全可靠等优点,在焊接、喷涂等现代工业自动化应用工程中,获得各种目标最优的轨迹规划研究更具有实际意义。现有的机器人轨迹规划一般是在给定轨迹之后由人工设置机械臂的关节角、速度和加速度参数,通过示教器进行运动轨迹规划,虽然在一定程度上解放了劳动力,但是这种方法都是基于人工经验来设定参数,无法达到运行时间达到最短,最终运行的轨迹不一定平滑可能存在冲击,引起的突变会缩短机器人的使用寿命。因而在实际的生产应用中必须选取合适的方法对机器人的运动轨迹进行规划,才能使机器人在运动过程中保证时间最优和平稳无震动,达到高效节能,快速响应到期望位置的目的,从而提高生产效率。
3.工业机器人最优轨迹规划是指在综合考虑任务要求、本体性能和边界约束条件的情况下,规划出给定路径的机器人末端执行器位移、速度、加速度和冲击等因变量曲线光滑连续的时间序列。目前轨迹规划的研究较多是时间最优和冲击最优的方法,能够在工业现场提高工作效率以及延长机器人的机械使用寿命。国内外最优轨迹规划的研究中主要是基于智能优化算法如粒子群算法、遗传算法等,还有转化为其他优化问题求解如凸优化方法、动态规划方法等,但是许多算法都有它的局限性,如虽然粒子群算法收敛速度快,但是局部搜索能力差。因此急需发明一种全局搜索能力强,收敛速度快的优化方法来解决轨迹规划中的优化问题。


技术实现要素:

4.本发明的目的在于提出一种基于改进遗传算法的工业机器人轨迹优化方法,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
5.本发明提供一种基于改进遗传算法的工业机器人轨迹优化方法,提供一种工业机器人的时间

冲击最优轨迹方法,在给定路径和一定的约束条件下,工业机器人完成该给定路径所用时间最短、冲击最小的轨迹。本发明以传统遗传算法为基础,改进了基因选择公式、交叉公式和变异公式,在自适应prga基础上改进交叉和变异概率,在保证机器人运动轨迹平稳的条件下,优化机械臂动作时间,减少机器人因为冲击过大而产生的共振和抖动,使机器人能够稳定平顺运行,从而大大提高了工作效率,延长了机器人的使用寿命。
6.为了实现上述目的,根据本发明的一方面,提供一种基于改进遗传算法的工业机器人轨迹优化方法,所述方法包括以下步骤:
7.s100,在笛卡尔空间中对给定路径采用圆弧插补和直线插补结合方法进行完整路径的插补得到一系列关键点笛卡尔坐标;
8.s200,建立d

h参数模型,通过d

h参数模型对笛卡尔空间关键点运用逆运动学求
解得到关节空间中关键点的关节坐标;
9.s300,在关节空间中初始化每两个节点之间的时间间隔序列;
10.s400,采用五次多项式曲线对关键点关节坐标进行插值拟合,对各关节的关节角、速度、加速度和加加速度进行连续性控制;
11.s500,以机器人的各轴关节角、角速度、角加速度、角加加速度以及关节力矩约束条件,构造时间

冲击最优目标函数的优化问题数学描述;
12.s600,以罚函数法构造时间

冲击最优目标函数的适应度函数,采用改进的遗传算法对工业机器人轨迹关键点的时间间隔序列寻优,直到满足终止条件,输出最优时间间隔序列;
13.s700,以最优时间间隔序列对给定路径进行规划,绘制关节角、速度、加速度、加加速度和关节力矩图像,完成运动。
14.进一步地,在s100中,在笛卡尔空间中对给定路径采用圆弧插补和直线插补结合方法进行完整路径的插补的方法为:输入给定的路径轨迹,在笛卡尔空间用圆弧插补和直线插补方法在起始点和终止点对末端执行器进行插补,得到一系列中间位置点[q1,q2,...,q
m
]作为关键点,m为插补的关键点序数。
[0015]
进一步地,在s200中,建立d

h参数模型,通过d

h参数模型对笛卡尔空间关键点运用逆运动学求解得到关节空间中关键点的关节坐标的方法为:
[0016]
通过d

h参数建模法根据运动学参数建立机器人d

h模型,对上述步骤得到关键点的笛卡尔坐标运用机器人逆运动学求解得到关节空间中关键点的关节坐标,即机器人各关节的角度值[q
1i
,q
2i
,...,q
mi
]
n
×
m
,i=1,2,...,n为机器人的自由度,1,2,...,m为关键点序数;已知机器人基坐标系{b}与末端工具坐标系的坐标变换矩阵,通过求解机器人各关节角确定机器人末端工具坐标系{t}相对于工作台坐标系{s}的位置和姿态,采用封闭解法求解运动学逆解,经过两次平移和两次旋转,由d

h参数计算得到关节i

1到关节i的齐次变换矩阵:
[0017][0018]
其中表示关节i

1到关节i的齐次变换矩阵,d
i
表示d

h参数表中连杆偏移,下标i表示关节或连杆编号,d
i
中表示第i个连杆的偏移量,θ
i
表示第i个连杆相连的关节i的关节转角,a
i
表示d

h参数表中连杆长度,θ
i
表示d

h参数表中关节转角,α
i
表示d

h参数表中连杆偏角,于是相邻关节之间进行连乘转换,则可得到末端执行器在基坐标系下的齐次变换矩阵:
[0019][0020]
上式即为机器人的正向运动学方程,在已知机器人d

h参数条件下得到机器人末端执行器在笛卡尔空间下的位置和姿态;
[0021]
逆运动学求解计算过程如下:注:
为的缩写;
[0022]
其中,根据a1(3,4)=0计算得到θ1,根据l1(1,4)=r1(1,4)和l1(2,4)=r1(2,4)计算得到θ3;
[0023]
以l2(1,4)=r2(1,4)和l2(3,4)=r2(3,4)计算得到θ2+θ3,根据l2(1,3)=r2(1,3)和l2(2,3)=r2(2,3)计算得到θ4;
[0024]
以l3(1,3)=r3(1,3)和l3(2,3)=r3(2,3)计算得到θ5;
[0025]
以l4(1,2)=r4(1,2)和l4(2,2)=r4(2,2)计算得到θ6;
[0026]
其中,a1(3,4)表示矩阵a1的第三行第四列数值,l1(2,4)表示上述矩阵计算(此处说的是矩阵计算,不是指矩阵,即计算矩阵a1,由于有两种方法得到,即等式左右两边虽然计算方法不一样,但是结果一样,矩阵对应位置元素数值相同。)的第二行第四列数值即矩阵a1的左矩阵,r1(2,4)表示上述矩阵计算的第二行第四列数值即矩阵a1的右矩阵,后面依此类推;
[0027]
由上述求解步骤可知,在进行机器人的逆运动学求解过程中,满足各关节轴的可行范围得到该机器人的逆运动学解数为8个;由于机器人在运动过程中需保证关节角变化的连续性,选取与前一个关节角差最小的一组解作为最优解,最优解即为解得到关节空间中关键点的关节坐标。
[0028]
进一步地,在s300中,在关节空间中初始化每两个节点之间的时间间隔序列的方法为:在关节空间中初始化每两个节点之间的时间间隔序列{h1,h2,...,h
m
‑1},时间间隔序列为2s之内的随机数,时间间隔h
i
=t
i+1

t
i
,即为某一关节从关键点q
i
转到关键点q
i+1
所用的时间,i=1,2,...,m

1,i为关键点序号。
[0029]
进一步地,在s400中,采用五次多项式曲线对关键点关节坐标进行插值拟合,对各关节的关节角、速度、加速度和加速度进行连续性控制的方法为:构造5次多项式插值关节空间中路径关键点的关节位置值,控制各关节的角度,速度,加速度和加加速度连续性。构造的五次多项式插值函数为:q(t)=a0+a1t+a2t2+a0t3+a0t4+a0t5,假设在关节空间中各关键点的关节角位置是已知的,起始点、终点的速度和加速度均为零,即其约束条件为:
[0030][0031]
其中t
f
=h
i
=t
i+1

t
i
为两个节点之间的运行时间,其中,一条完整路径有m个关键
点,则有m

1段路径,对于其中一段路径而言,路径起始点和终止点速度和加速度为零,t
f
=h
i
=t
i+1

t
i
表示的是两个节点之间的运行时间,此处表达式是对每段路径都适用计算的通式,t
f
是为了通式表述方便命名的,h
i
用于后续表示每一段路径运行的时间;对于整条路径而而言所有的h
i
相加即为总时间,a0,a1,a2,a3,a4,a5为五次多项式系数,q0,q
f
分别表示起始点和终止点处的关节角,分别表示起始点和终止点处的速度,分别表示起始点和终止点处的加速度。(a1,a2都等于0);
[0032]
可以求出5次多项式插值函数各系数如下:
[0033][0034]
其中t
f
=h
i
=t
i+1

t
i
,为两个节点之间的运行时间。
[0035]
进一步地,在s500中,采用五次多项式曲线对关键点关节坐标进行插值拟合,对各关节的关节角、速度、加速度和加速度进行连续性控制的方法为:
[0036]
构造时间

冲击最优适应度函数,机器人的各轴关节角、角速度、角加速度、角加加速度以及关节力矩约束条件如下:
[0037][0038]
其中和分别表示整段轨迹起始点和终止点处的速度,t表示整段轨迹终止点处对应的时间,q
i
、和分别表示中间任意时刻的关节角、角速度、角加速度和角加加速度,τ
i
表示关节力矩,q
imin
、q
imax
、τ
imin
、τ
imax
分别为机器人给定的关节角、角速度、角加速度、角加加速度和关节力矩的下限值和上限值;通过之前的五次多项式可求得关节角、角速度、角加速度和角加加速度的函数关系式如下:
[0039][0040]
惩罚函数为:
[0041]
p(x)=λ1p1+λ2p2+λ3p3+λ4p4+λ5p5;
[0042]
其中,
[0043][0044][0045][0046]
此处i=1,2,...,n表示关节,λ1,λ2,λ3,λ4,λ5表示数量级系数,其中,λ1=1,λ2=0.1,λ3=0.01,λ4=0.001,λ5=0.001,p1、p2、p3、p4、p5表示分别表示五个约束条件的惩罚函数,p(x),或简称p表示所有惩罚函数的和,即总的惩罚函数,t是变量未知数;
[0047]
目标函数为:
[0048]
minf(x)=ξ1*f1(t)+ξ2*η*f2(t);
[0049]
其中,ξ1和ξ2为权重系数且ξ1+ξ2=1,根据实际问题需要进行调整权重系数,弹性系数η让时间项与冲击项处于同一数量级,minf(x)的意义为min表示求等式右侧计算结果的最小值作为f(x);
[0050]
由上述公式可得适应度函数为:
[0051]
进一步地,在s600中,以罚函数法构造时间

冲击最优目标函数的适应度函数,采用改进的遗传算法对工业机器人轨迹关键点的时间间隔序列寻优,直到满足终止条件,输出最优时间间隔序列的方法为:
[0052]
采用基于改进的遗传算法对机器人轨迹规划的时间间隔{h1,h2,...,h
m
‑1}寻优,直到满足最大迭代次数,输出一系列最优时间间隔为以下步骤;
[0053]
1)初始化遗传算法基本参数和机器人参数,包括种群的大小pops、进化的代数gmax、选择的遗传算子包括选择算子ps、交叉算子pc、变异算子pm、初始的时间间隔序列h
i

[0054]
2)对轨迹中的每段路经的时间间隔序列采用实数编码,即随机产生一系列[0,2]之间的随机数,计算种群适应度,按照改进的选择策略从初始种群pop中最优个体组成新一代种群newpop1;
[0055]
3)对选择的算子采用改进的策略进行选择、交叉、变异操作,根据用适应度函数选
择这子代群体中的最优个体。将改进的交叉策略作用于种群newpop1,形成新种群newpop2,计算适应度fitness2;根据交叉后种群适应度将反转变异策略作用于种群newpop2,形成新种群newpop3并计算适应度fitness3;用选择策略的精英群体中的最优个体替换种群newpop3中适应度最差的个体,同时更新种群pop。
[0056]
4)计算更新种群后的适应度,比较得到最优适应度值gbestfit和对应的最优个体gbestval;更新种群代数g=g+1(或g=g+1);
[0057]
5)判断是否满足算法终止条件,若满足则终止算法,不满足则执行遗传算法。若算法满足终止条件,则输出一组最优时间间隔序列{h1,h2,...,h
m
‑1}。终止条件为进化的代数或是经过数代以后最优解没有发生变化。
[0058]
上述改进的遗传算法的选择策略如下:为了保持种群多样性且优良种群易被选择,首先将个体适应度大小排序,根据选择分类系数p
s1
设置并分类优良种群和劣质种群;其次根据选择概率p
s2
分别从优良个体和劣质个体中随机抽取一定个体组成大小为初始种群一半的新种群;其中,改进的遗传算法的精英交叉策略如下:
[0059]
首先采用精英选择的方法,设定精英集合的大小为k,将个体适应度大小排序,在交叉种群newpop1中选择k个适应度较大个体构成一个精英集合,本发明中设定k值为种群大小的一半。其次设r是取{0,1}之间的随机数,若r小于等于选择概率0.5,则从精英集合中选择两个适应度最优的体进行如下公式的交叉;若r大于0.5,则从精英集合中随机的选择两个个体进行交叉。
[0060]
设x
elite1
和x
elite2
表示精英选择的两个种群,x
i
'表示交叉后的种群,α是取{0,1}之间的随机数,则精英交叉公式为:
[0061]
x'
i
=αx
elite1
+(1

α)x
elite2

[0062]
上述遗传算法的变异策略如下:变异算子可以破坏优良基因,也可以使劣质基因变异为优良个体。故采用与种群进化代数联系的非一致性变异法,设x表示当前种群,x
u
和x
l
分别表示种群上限值和下限值,x'表示变异后的种群,r是取{0,1}之间的随机数,g表示当前代数,g
max
表示最大迭代次数,则变异公式为:
[0063][0064]
其中random(2)表示随机均匀产生的正整数模2的结果,δ(t,y)=y*(1

r
(1

t/gmax)c
),c为过程参数,取值2~5;
[0065]
上述采用的交叉概率和变异概率改进为以下步骤:
[0066]
step1:首先计算交叉和变异后种群适应度的平均值:
[0067][0068]
step2:分别计算交叉和变异后种群适应度的标准差cp和mp:
[0069][0070]
step3:根据上一代的cp和mp值进行自动调整交叉概率p
c
和变异概率p
m

[0071][0072]
其中,f
newopo2
表示交叉操作产生种群的适应度,f
newopo3
表示变异操作产生种群的适应度,n
c
和n
m
分别表示交叉操作和变异操作产生种群的个数,f
c
和f
m
分别是交叉个体和变异个体的适应度值,f
max
和f
avg
分别表示种群适应度的最大值和平均值,p
c0
和p
m0
分别为给定初始交叉概率和变异概率。
[0073]
进一步地,在s700中,以最优时间间隔序列对给定路径进行规划,绘制给定路径的关节角、速度、加速度、加加速度和关节力矩图像,完成运动;该运动序列的组合即我们规划的最优时间轨迹规划。
[0074]
本发明的有益效果为:本发明提供一种基于改进遗传算法的工业机器人轨迹优化方法,为了在保证机器人运动轨迹平稳,优化机械臂动作时间,本发明提出了一种基于改进遗传算法的时间

冲击最优轨迹规划算法,根据给定的路径和应用的机器人建立d

h参数模型,运用逆运动学的方法将在笛卡尔空间中的各位置点转化为关节空间中机器人各关节的角度值,采用五次多项式对轨迹规划的关节速度、加速度、加加速度和关节力矩关键参数进行连续性控制。根据机器人的各轴关节角、角速度、角加速度、角加加速度以及关节力矩约束条件,将遗传算法的选择、交叉变异因子进行改进,优化调整时间间隔并计算各个插值点处的时间,根据得到的最优运行时间完成轨迹规划运动。使用该方法能够得到机器人的最优运行时间,提高机器人的工作效率,并且运行轨迹、速度、加速度的曲线平滑,不会产生突变,延长机器人的使用寿命,该方法能够广泛应用于食品、药品的加工、包装,汽车的喷涂,零部件的弧焊、点焊,金属的切削等领域。
附图说明
[0075]
通过对结合附图所示出的实施方式进行详细说明,本发明的上述以及其他特征将更加明显,本发明附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:
[0076]
图1所示为时间

冲击最优轨迹规划流程图;
[0077]
图2所示为华数hsr

605机器人d

h参数表;
[0078]
图3所示为改进遗传算法的流程图。
具体实施方式
[0079]
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0080]
图1所示为时间

冲击最优轨迹规划流程图,下面结合图1来阐述根据本发明的一
种基于改进遗传算法的工业机器人轨迹优化方法。
[0081]
本发明提出一种基于改进遗传算法的工业机器人轨迹优化方法,具体包括以下步骤:
[0082]
步骤一,在笛卡尔空间中对给定路径采用圆弧插补和直线插补结合方法进行完整路径的插补,得到一系列关键点笛卡尔坐标;
[0083]
步骤二,建立d

h参数模型,对笛卡尔空间关键点运用逆运动学求解得到关节空间中关键点的关节坐标;
[0084]
步骤三,在关节空间中初始化每两个节点之间的时间间隔序列;
[0085]
步骤四,采用五次多项式曲线对关键点关节坐标进行插值拟合,对各关节的关节角、速度、加速度和加加速度进行连续性控制;
[0086]
步骤五,以机器人的各轴关节角、角速度、角加速度、角加加速度以及关节力矩约束条件,构造时间

冲击最优目标函数的优化问题数学描述;
[0087]
步骤六,以罚函数法构造时间

冲击最优目标函数的适应度函数,采用改进的遗传算法对工业机器人轨迹关键点的时间间隔序列寻优,直到满足终止条件,输出最优时间间隔序列;
[0088]
步骤七,以最优时间间隔序列对给定路径进行规划,绘制关节角、速度、加速度、加加速度和关节力矩图像,完成运动。
[0089]
基于改进遗传算法的机器人轨迹规划优化方法,如图1所示,具体实施步骤如下:
[0090]
1、根据给定轨迹,在笛卡尔空间用圆弧插补和直线插补等方法在起始点和终止点对末端执行器进行插补,得到一系列中间位置点[q1,q2,...,q
m
],m为插补的关键点序数。
[0091]
2、根据运动学参数建立机器人dh模型,对上述步骤得到关键点笛卡尔坐标运用机器人逆运动学求解得到关节空间中关键点的关节坐标,即机器人各关节的角度值[q
1i
,q
2i
,...,q
mi
]
n
×
m
,i=1,2,...,n为机器人的自由度,1,2,...,m为关键点序数。
[0092]
本发明的一种实施例,通过华数hsr

605机器人进行上述规划方法,已知机器人基坐标系{b}与末端工具坐标系的坐标变换矩阵,
[0093]
通过求解机器人各关节角可以确定机器人末端工具坐标系{t}相对于工作台坐标系{s}的位置和姿态。hsr

605机器人为6自由度的关节型串联机器人,后三个相邻轴相交于一点,满足piper准则。
[0094]
如图2所示,图2所示为华数hsr

605机器人d

h参数表,采用封闭解法求解hsr

605机器人运动学逆解,经过两次平移和两次旋转,由d

h参数计算得到关节i

1到关节i的齐次变换矩阵:
[0095][0096]
其中表示关节i

1到关节i的齐次变换矩阵,d
i
表示d

h参数表中连杆偏移,a
i
表示d

h参数表中连杆长度,θ
i
表示d

h参数表中关节转角,α
i
表示d

h参数表中连杆偏角,于是相邻关节之间进行连乘转换,则可得到末端执行器在基坐标系下的齐次变换矩阵:
[0097][0098]
上式即为机器人的正向运动学方程,在已知机器人d

h参数条件下得到机器人末端执行器在笛卡尔空间下的位置和姿态;
[0099]
逆运动学求解计算过程如下:注:为的缩写;
[0100]
其中,根据a1(3,4)=0计算得到θ1,根据l1(1,4)=r1(1,4)和l1(2,4)=r1(2,4)计算得到θ3;
[0101]
以l2(1,4)=r2(1,4)和l2(3,4)=r2(3,4)计算得到θ2+θ3,根据l2(1,3)=r2(1,3)和l2(2,3)=r2(2,3)计算得到θ4;
[0102]
以l3(1,3)=r3(1,3)和l3(2,3)=r3(2,3)计算得到θ5;
[0103]
以l4(1,2)=r4(1,2)和l4(2,2)=r4(2,2)计算得到θ6;
[0104]
其中,a1(3,4)表示矩阵a1的第三行第四列数值,l1(2,4)表示上述矩阵计算的第二行第四列数值即矩阵a1的左矩阵,r1(2,4)表示上述矩阵计算的第二行第四列数值即矩阵a1的右矩阵,后面依此类推;
[0105]
由上述求解步骤可知,在进行hsr

605机器人的逆运动学求解过程中,满足各关节轴的可行范围得到该机器人的逆运动学解数为8个。由于机器人在运动过程中需保证关节角变化的连续性,实际运算过程中总是选取与前一个关节角差最小的一组解作为最优解。
[0106]
3、在关节空间中初始化每两个节点之间的时间间隔序列{h1,h2,...,h
m
‑1},时间间隔序列为2s之内的随机数。时间间隔h
i
=t
i+1

t
i
,即为某一关节从关键点q
i
转到关键点q
i+1
所用的时间。
[0107]
4、构造5次多项式插值关节空间中路径关键点的关节位置值,控制各关节的角度,速度,加速度和加加速度连续性。构造的五次多项式插值函数为:q(t)=a0+a1t+a2t2+a0t3+a0t4+a0t5,假设在关节空间中各关键点的关节角位置是已知的,起始点、终点的速度加速度为零,即其约束条件为:
[0108][0109]
可以求出5次多项式插值函数各系数如下:
[0110][0111]
其中t
f
=h
i
=t
i+1

t
i
为两个节点之间的运行时间,a0,a1,a2,a3,a4,a5为五次多项式系数,q0,q
f
分别表示起始点和终止点处的关节角,分别表示起始点和终止点处的速度,分别表示起始点和终止点处的加速度;
[0112]
5、构造时间

冲击最优适应度函数,机器人的各轴关节角、角速度、角加速度、角加加速度以及关节力矩约束条件如下:
[0113][0114]
其中和分别表示整段轨迹起始点和终止点处的速度,t表示整段轨迹终止点处对应的时间,q
i
、和分别表示中间任意时刻的关节角、角速度、角加速度和角加加速度,τ
i
表示关节力矩,q
imin
、q
imax
、τ
imin
、τ
imax
分别为机器人给定的关节角、角速度、角加速度、角加加速度和关节力矩的下限值和上限值;通过之前的五次多项式可求得关节角、角速度、角加速度和角加加速度的函数关系式如下:
[0115][0116]
惩罚函数为:
[0117]
p(x)=λ1p1+λ2p2+λ3p3+λ4p4+λ5p5;
[0118]
其中,
[0119][0120][0121][0122]
此处i=1,2,...,n表示关节,λ1,λ2,λ3,λ4,λ5表示数量级系数,依据实际数据确定,本例中λ1=1,λ2=0.1,λ3=0.01,λ4=0.001,λ5=0.001。
[0123]
目标函数为:
[0124]
minf(x)=ξ1*f1(t)+ξ2*η*f2(t);
[0125]
其中,ξ1和ξ2为权重系数且ξ1+ξ2=1,根据实际问题需要进行调整权重系数,弹性系数η让时间项与冲击项处于同一数量级,minf(x)的意义为min表示求等式右侧计算结果的最小值作为f(x);
[0126]
由上述公式可得适应度函数为:
[0127]
6、采用基于改进的遗传算法对机器人轨迹规划的时间间隔{h1,h2,...,h
m
‑1}寻优,直到满足最大迭代次数,输出一系列最优时间间隔。
[0128]
如图3所示,图3所示为改进遗传算法的流程图,所示方法为:
[0129]
1)初始化遗传算法基本参数和机器人参数,包括种群的大小pops、进化的代数gmax、选择的遗传算子包括选择算子p
s
、交叉算子p
c
、变异算子p
m
、初始的时间间隔序列h
i

[0130]
2)对轨迹中的每段路经的时间间隔序列采用实数编码,即随机产生一系列[0,2]之间的随机数,计算种群适应度,(即图3中,适应度fit=1/d,d=f(x)+p(x)),按照改进的选择策略从初始种群pop中最优个体组成新一代种群newpop1;
[0131]
3)对选择的算子采用改进的策略进行选择、交叉、变异操作,根据用适应度函数选择这子代群体中的最优个体。将改进的交叉策略作用于种群newpop1,形成新种群newpop2,计算适应度fitness2;根据交叉后种群适应度将反转变异策略作用于种群newpop2,形成新种群newpop3并计算适应度fitness3;用选择策略的精英群体中的最优个体替换种群newpop3中适应度最差的个体,同时更新种群pop。
[0132]
4)计算更新种群后的适应度,比较得到最优适应度值gbestfit和对应的最优个体gbestval;更新种群代数g=g+1或(即图3中,g=g+1);
[0133]
5)判断是否满足算法终止条件,若满足则终止算法,不满足则执行遗传算法。若算法满足终止条件,则输出一组最优时间间隔序列{h1,h2,...,h
m
‑1}。终止条件为进化的代数或是经过数代以后最优解没有发生变化。
[0134]
上述改进的遗传算法的选择策略如下:为了保持种群多样性且优良种群易被选择,首先将个体适应度大小排序,根据选择分类系数p
s1
设置并分类优良种群和劣质种群;其
次根据选择概率p
s2
分别从优良个体和劣质个体中随机抽取一定个体组成大小为初始种群一半的新种群。
[0135]
上述改进的遗传算法的精英交叉策略如下:
[0136]
首先采用精英选择的方法,设定精英集合的大小为k,将个体适应度大小排序,在交叉种群newpop1中选择k个适应度较大个体构成一个精英集合,本发明中设定k值为种群大小的一半。其次设r是取{0,1}之间的随机数,若r小于等于选择概率0.5,则从精英集合中选择两个适应度最优的体进行如下公式的交叉;若r大于0.5,则从精英集合中随机的选择两个个体进行交叉。
[0137]
设x
elite1
和x
elite2
表示精英选择的两个种群,x
i
'表示交叉后的种群,α是取{0,1}之间的随机数,则精英交叉公式为:
[0138]
x'
i
=αx
elite1
+(1

α)x
elite2

[0139]
上述遗传算法的变异策略如下:变异算子可以破坏优良基因,也可以使劣质基因变异为优良个体。故采用与种群进化代数联系的非一致性变异法,设x表示当前种群,x
u
和x
l
分别表示种群上限值和下限值,x'表示变异后的种群,r是取{0,1}之间的随机数,g表示当前代数,g
max
表示最大迭代次数,则变异公式为:
[0140][0141]
其中random(2)表示随机均匀产生的正整数模2的结果,c为过程参数,取值2~5;
[0142]
上述采用的交叉概率和变异概率改进为以下步骤:
[0143]
step1:首先计算交叉和变异后种群适应度的平均值:
[0144][0145]
step2:分别计算交叉和变异后种群适应度的标准差cp和mp:
[0146][0147]
step3:根据上一代的cp和mp值进行自动调整交叉概率p
c
和变异概率p
m

[0148][0149]
其中,f
newopo2
表示交叉操作产生种群的适应度,f
newopo3
表示变异操作产生种群的适应度,n
c
和n
m
分别表示交叉操作和变异操作产生种群的个数,f
c
和f
m
分别是交叉个体和变异个体的适应度值,f
max
和f
avg
分别表示种群适应度的最大值和平均值,p
c0
和p
m0
分别为给定初始交叉概率和变异概率。
[0150]
7、对给定路径进行规划,绘制关节角、速度、加速度、加加速度和关节力矩图像,完
成运动。该运动序列的组合即我们规划的最优时间轨迹规划。
[0151]
尽管本发明的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,从而有效地涵盖本发明的预定范围。此外,上文以发明人可预见的实施例对本发明进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本发明的非实质性改动仍可代表本发明的等效改动。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1