You are on page 1of 5

Computer Engineering and Applications 计算机工程与应用 2017,53(14) 143

基于改进混沌搜索算法的机器人轨迹规划
康代轲 1 ,
陈 明2
KANG Daike1, CHEN Ming2

1. 同济大学 机械与能源工程学院,上海 201804


2. 同济大学 中德工程学院,上海 201804
1.School of Mechanical Engineering, Tongji University, Shanghai 201804, China
2.Sino-German College Applied Sciences, Tongji University, Shanghai 201804, China

KANG Daike, CHEN Ming. Planning and simulation of robot optimal trajectory based on improved chaotic search
algorithm. Computer Engineering and Applications, 2017, 53(14):143-147.

Abstract:In order to get the time optimal trajectory of industrial robot in consideration of the influence of the robot joint
constraints, a mixed optimization algorithm is presented for the optimization of multimodal function. Firstly, it locates the
vicinage of optimal solution based on chaos search algorithm, then searches the optimal solution within the limits of this
vicinage with genetic algorithm. In the MATLAB platform, it programs the mixed algorithm to simulate the trajectory and
compares it with the result of traditional genetic algorithm. The execution time of the mixed algorithm is 25.499 s, which
is obviously shorter than 39.534 s of the control group. The results prove that the mixed algorithm has better global search-
ing performance.
Key words:industrial robot; trajectory planning; chaotic search algorithm; genetic algorithm; mixed optimization algorithm

摘 要:在考虑机器人关节约束的影响下,
为得到工业机器人的时间最优轨迹,
提出了一种适用于多极值函数优化
继而使用遗传算法在此邻域内寻找最优解。在 MATLAB
问题的混合算法。首先基于混沌搜索算法定位最优解的邻域,
平台上,
对该混合算法进行编程并仿真轨迹,
并与传统遗传算法的结果进行比较,
结果表明使用混合算法得到的总
时间为 25.449 s,
明显少于对照组的 39.534 s,
证实了该混合算法具有较好的全局搜索性能。
关键词:工业机器人 ;
轨迹规划 ;
混沌搜索 ;
遗传算法 ;
混合优化算法
文献标志码:A 中图分类号:TP242 doi:10.3778/j.issn.1002-8331.1607-0132

最优轨迹规划是工业机器人最优控制问题之一,规 法,为最优化问题提供了一条新的解决途径。
划的任务是根据给定的路径点规划出通过这些点并满 混沌优化算法具有容易实现、适用性强、不易陷入
[1]
足边界约束条件的光滑最优运动轨迹 。文献[2-4]研究 局部最优等优点。但随着寻优空间的增大,其算法性能
了轨迹规划策略中的时间最优算法,其目的是为使机器 也跟着显著下降,难以达到要求的精度。文献[10]虽然
人运动的总时间最小。在优化过程中,还必须考虑由机 提出了一种变尺度混沌优化方法,通过缩小搜索空间来
器人各关节的速度、加速度、加加速度形式表示的边界 提高精度。但其二次搜索的区间大小仅由经验来确定,
[5-6]
约束条件 。 对于存在多个极值的复杂优化问题,这种方法显然不能
[7]
郭清达 等人使用遗传算法来规划工业机器人的最 得到满意的结果。
优轨迹。遗传算法虽然收敛速度快,但对于多极值问题 本文充分发挥了混沌搜索算法易于实现、不易陷入
容易陷入局部最优,无法得到很好的结果。文献[8-9]将 局部最优的特性,提出了一种基于混沌搜索的最优解区
混沌序列引入优化算法,提出了基于混沌理论的优化算 间定位方法以定位最优解的邻域;最后考虑到混沌搜索

作者简介:康代轲(1993—),男,硕士研究生,主要从事工业机器人方向的研究;陈明(1964—),通讯作者,男,博导,教授,E-mail:
chen.ming@tongji.edu.cn。
收稿日期:2016-07-11 修回日期:2016-12-02 文章编号:1002-8331(2017)14-0143-05
CNKI 网络优先出版:2017-03-13, http://kns.cnki.net/kcms/detail/11.2127.TP.20170313.1714.030.html
144 2017,53(14) Computer Engineering and Applications 计算机工程与应用

难以定位精确解的缺点,在得到的最优解邻域内使用遗 以罚函数为目标函数的新的无约束优化问题。
传算法进行快速精确求解。 P(h) = f (h) + ∑ r i ⋅ | c i (h) | - ∑ r i ⋅ min(0,c i (h)) (7)
i∈E i∈I

其中 c i (h) (i ∈ E ⋃ I) 为约束函数。 E 与 I 分别是等式


1 轨迹规划问题描述
约束与不等式约束的下标集。
1.1 轨迹的生成
2.2 混沌搜索定位最优解区间
为了进行关节轨迹规划,首先将 n 个路径点转换成
2.2.1 基础混沌搜索算法
关节矢量 [q11 ,q 21 ,⋯,q N1],[q12 ,q 22 ,⋯,q N2],⋯,[q1n ,q 2n ,⋯,
混沌变量使用常用的 Logisic 模型[13]来产生:
q Nn] ,其中 q ji 是关节 j 在路径点 i 处的关节位移。
zk + 1 = 4 ⋅ zk ∙
(1 - z k),z k ∈ (0,1) (8)
本文使用三次多项式曲线构建各个关节轨迹,定义
在 (0,1) 内任取初始点,可得到在 (0,1) 间遍历的点
Q ji (t) 为时间间隔 [t i ,t i + 1] 内的三次多项式函数,Q ji (t),
列,经过尺度变换和平移,将其转化成在优化问题求解
Q 'ji (t),Q ''ji (t) 和 Q '''ji (t) 分别为关键点 q ji 和 q j,i + 1 之间的位
空 间 中 作 混 沌 遍 历 的 变 量 ,通 过 搜 索 寻 找 问 题 的 最
移、速度、加速度和加加速度。 Q '''ji (t) 可以表示为时间间 优解[10]。
'''
隔 [t i ,t i + 1] 与关节位移 q ji 的方程式,而求得 Q (t) 即可 ji 将混沌变量区间 (0,1) 分为两个部分 S1 = (0,0.2) ⋃
求得关节轨迹 Q ji (t) 。 [2]
(0.8,1) 和 S 2 = (0.2,0.8) ,当混沌变量处于 S1 中时,跳过
1.2 约束条件 这个点,如果处于 S 2 中,则通过线性映射到求解空间后
1.2.1 关节约束条件 计算目标函数并与最优解比较 [14]。通过以上处理,可以
(1)关节角速度约束 使 x k 在解区间内近似等概率均匀取点。
各关节的角速度约束条件有 : [11]
2.2.2 基于混沌搜索的最优解邻域确定
| Q | ≤ VC ,i = 1,2,⋯,n - 1; j = 1,2,⋯,N
'
ji j (1) (1)最优解邻域确定原理

(2)关节角加速度约束 步骤 1 在混沌变量区间 S 2 = (r,1 - r),r ∈ (0,0.5) 内

各关节的角加速度约束条件有[11]: 随机生成 M 组混沌变量:


Z i =[z i,1 ,z i,2 ,⋯,z i,N ]T ,i = 1,2,⋯,M
| Q | ≤ AC ,i = 1,2,⋯,n - 1; j = 1,2,⋯,N
''
ji j (2) (9)
其中 N 为解的维数。
(3)关节二次角加速度约束
步骤 2 每组混沌变量 Z i 分别映射到初始解区间
各关节的二次角加速度约束有[11]:
[a 0 ,b 0] ,通过基础的混沌搜索法迭代得到其各自最优解
| Q | ≤ JC ,i = 1,2,⋯,n - 1; j = 1,2,⋯,N
'''
ji j (3)
f i ∗ 和 h ∗i 。
1.2.2 一般约束
步骤 3 缩小解区间。取:
对于相邻的路径点,其时间间隔应不小于关节角位
ìa′ = min(h1∗ ,h ∗2 ,⋯,h ∗M )
移的变化量除以最大关节转速,可表示为: í ∗ ∗ ∗
(10)
îb′ = max(h1 ,h 2 ,⋯,h M )
| q j,i + 1 - q ji |
hi ≥ ,i = 1,2,⋯,n - 1; j = 1,2,⋯,N (4) 令:
VC j
ìa∗ = a′ - η∙
(b′ - a′)
1.3 目标函数 í ∗ (11)
îb = b′ + η∙(b′ - a′)
本文研究的是机器人的时间最优轨迹规划问题,故
其中 η 为权重系数,在本文中取 η = 0.2 。
其优化目标为运行时间最短。其目标函数为:
n-1 为防止越界,取:
f (h) = ∑ h i (5)
i=1 ìa∗ = max(a 0 ,a∗)
í ∗ ∗
(12)
îb = min(b 0 ,b )
2 非线性规划问题的最优化求解 步骤 4 输出最优解区间 [a∗ ,b∗] ,并用其值更新初始
2.1 罚函数 解区间 [a 0 ,b 0] 。
对于非线性规划问题: 步骤 5 重复步骤 1 至步骤 4,直到列向量 (b∗ - a∗) 中
min f (h) (6) 的最大元素小于 σ 为止,此时得到的 [a∗ ,b∗] 即为最优解
c i (h) = 0 (i ∈ E)
c i (h) > 0 (i ∈ I) 的邻域。本文中,取 σ = 1 。
本文使用 l1 不可微精确罚函数法 ,把问题转化为 [12]
(2)参数 M 的选取
康代轲,陈 明:基于改进混沌搜索算法的机器人轨迹规划 2017,53(14) 145

表1 次优解区间包含最优解频率表
组数
维数
6组 7组 8组 9组 10 组 11 组 12 组 13 组 14 组
1维 0.967 6 0.982 7 0.990 7 0.995 9 0.997 7 0.998 8 0.999 5 0.999 9 1.000 0
2维 0.969 7 0.982 8 0.992 9 0.996 6 0.998 0 0.998 8 0.999 8 0.999 5 0.999 8
3维 0.956 4 0.975 3 0.989 2 0.994 1 0.997 1 0.998 6 0.998 9 0.999 5 0.999 6
4维 0.939 0 0.970 2 0.984 4 0.991 0 0.996 1 0.997 2 0.998 4 0.999 1 0.999 9
5维 0.923 6 0.962 0 0.979 8 0.991 9 0.994 1 0.997 5 0.998 9 0.999 2 0.999 7
6维 0.914 8 0.956 6 0.975 0 0.987 1 0.994 5 0.996 0 0.999 0 0.999 1 0.999 5
7维 0.894 4 0.947 2 0.974 5 0.986 7 0.992 8 0.997 1 0.998 2 0.999 2 0.999 5
8维 0.885 0 0.941 5 0.968 8 0.983 0 0.992 1 0.997 0 0.997 5 0.998 9 0.999 7
9维 0.862 3 0.931 1 0.963 2 0.983 7 0.991 3 0.996 3 0.998 0 0.998 9 0.999 3
10 维 0.854 8 0.926 6 0.964 6 0.981 5 0.989 8 0.995 4 0.997 4 0.998 7 0.999 4

为保证求得的最优解邻域的准确性,参数 M 的选 表3 关节路径点
定至关重要。参数 M 过小,求得的最优解邻域可能不 节点
关节
1 2 3 4 5 6
包括最优解;参数 M 过大,则会大大增加计算量。
1 10° 15° 45° 5° 10° 6°
令最优解 h∗ =[h1∗ ,h ∗2 ,⋯,h ∗N ]T ,M 组次优解 hi =[h1i , 2 额外路径点
i i T i ∗ i ∗
h ,⋯,h ] ,其中 i = 1,2,⋯,M 。假设 h < h ,和 h > h
2 N n n n n
3 60° 25° 180° 20° 30° 40°
4 75° 30° 200° 60° -40° 80°
的概率各占 50 0
0 ,其中 n = 1,2,⋯,N 。给定不同维度
5 130° -45° 120° 110° -60° 70°
N 和组数 M ,使用计算机模拟由次优解 hi 得出的最优 6 110° -55° 15° 20° 10° -10°
解邻域 [a∗ ,b∗] 包含最优解 h∗ 的频率。给定计算机模拟 7 100° -70° -10° 60° 50° 10°
8 -10° -10° 100° -99° -40° 30°
次数为 105 次,模拟结果如表 1 所示。
9 额外路径点
依据表 1,可针对不同维数 N 选取合适的参数 M , 10 -50° 10° 50° -30° 10° 20°

使得最优解处于最优解邻域之外的概率不大于 1 ,
1 000 表4 关节约束条件
部分选取规范如表 2 所示。 约束
关节
1 2 3 4 5 6
表2 参数 M 取值表
角速度/(°·s-1) 100 95 100 150 130 110
N 4 5 6 7 8 9 10 角加速度/(°·s-2) 45 40 75 70 90 80
M 13 13 13 13 14 14 14 加加速度/(°·s ) -3
60 50 55 70 75 70

2.3 基于最优解邻域的问题求解 b∗ =[3.139,2.064,1.814,3.191,


随着寻优精度要求的增大,混沌搜索的算法性能也 3.848,5.281,4.487,4.472,1.191]T
跟着显著下降,因此使用混沌搜索得到最优解的邻域 使用 MATLAB 遗传算法工具箱,在 [a∗ ,b∗] 内寻找
[a∗ ,b∗] 后,使用遗传算法对问题进行精确求解。 罚函数 P(h) 的最小值,其结果为:
h∗ =[2.717,2.032,1.353,2.804,
3 优化实例 3.168,5.242,3.890,3.830,0.412]T
3.1 参数选择 此时机器人运动总时间(单位:s)为:
n-1
采用 PUMA560 机器人进行建模,引用文献[2]中的 f (h) = ∑ h i = 25.449
i=1
八个关节位移节点(单位:°)以及关节角速度、角加速
绘制出机器人各关节的速度,加速度,加加速度变
度、角加加速度约束条件,见表 3 和表 4。
化曲线及其约束情况,如图 1~图 3 所示。可以发现,各
3.2 优化求解
关节最优轨迹的速度、加速度、加加速度均满足关节约
编写 MATLAB 程序,在区间 [0,100] 内搜索罚函数
束条件。
P(h) 的最优解区间。设定参数 σ = 1 ,经过多轮区间缩 使 用 MATLAB 遗 传 算 法 工 具 箱 在 在 区 间 [0,100]
减后,得到最终的最优解邻域 [a∗ ,b∗] ,其中: 内寻找罚函数 P(h) 的最小值,其结果为:

a =[2.646,1.509,1.325,2.730, h′ =[1.017,6.808,2.195,4.641,
3.032,4.339,3.543,3.584,0.309] T
5.125,6.004,6.725,4.916,2.102]T
100
50
50
100 100
100
50
50 505050 100 50
100 100100

速度v(°/s)

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
00
50
50 100
100
50
50 50 5050 50 5050 50 50
00

速度v(°/s)

速度v(°/s)

速度v(°/s)
50 50

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)
速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
00 50 5050 0 00 00 50 0

速度v(°/s)

速度v(°/s)

速度v(°/s)
50 50
0 00 00 0

速度v(°/s)

速度v(°/s)
速度v(°/s)
00 00 0 00 00 0
00 -50
-50 -50-50
-50 0 00 0 0 -50
-50
0 -50
-50
-50 -50 -50
-50
50 关节1关节速度约束满足情况 -50 -50 -50
-50 -100 关节2关节速度约束满足情况 -50-50 关节3关节速度约束满足情况 -50
-50
50 -100 -50
-50 Computer -50 计算机工程与应用 -100
-100 146
-100 2017,53(14)
-100 -100 -100 Engineering and Applications
-100 100
-100
-100 -100
-100
00
100 100 关节1关节速度约束满足情况
关节1关节速度约束满足情况 -100 -100 -100 关节2关节速度约束满足情况
关节2关节速度约束满足情况 -100 -100 100
-100 关节3关节速度约束满足情况
关节3关节速度约束满足情况 -100
00 -100
-100 -100
-100 -100
100100关节1关节速度约束满足情况
关节1关节速度约束满足情况
关节1关节速度约束满足情况 100100 关节2关节速度约束满足情况
关节2关节速度约束满足情况
关节2关节速度约束满足情况 100 100关节3关节速度约束满足情况
关节3关节速度约束满足情况
关节3关节速度约束满足情况
关节 1 关节速度约束满足情况 关节 2 关节速度约束满足情况 关节 3 关节速度约束满足情况
00
00100 50 10
10
10
10 20
2020
20 00
0 00 50 1010
10
1010 2020
20
2020 0
0 0 50 10
10
10 20
20
20 0 1
100
100 时间t(s) 100
100100
100 100
100100 时间t(s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
00 1010 100 20
20 00 10 20 0 10 100 20
00 10 10 时间t(s)
5050 时间t(s)20
20
时间t(s) 0 00 10
10101050 时间t(s)
50 20
20 20
时间t(s)
时间t(s)
时间t(s)
20
时间t(s) 00 10
50
10 2020
时间t(s)
50 时间t(s) 0
速度
速度
10
速度约束

速度v(°/s)

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
时间t(s)
时间t(s)
时间t(s)
时间t(s) 0 速度
速度 速度约束 时间t(s)
时间t(s)
时间t(s)
050
时间t(s)
时间t(s) 速度
速度 速度约束时间t(s)
时间t(s)
0 50
时间t(s) 时间t(s)
情况 关节4关节速度约束满足情况
关节5关节速度约束满足情况
50
50 50
50 关节5关节速度约束满足情况
关节6关节速度约束满足情况
关节4关节速度约束满足情况
50
50 50 关节6关节速度约束满足情况
关节5关节速度约束满足情况
5050
50 速度 速度约束 关节6关节速
速度约束
速度约束 速度约束
00 速度 速度约束 0 0 速度 速度约束 0 0



°·s-1)
速度v(°/s)

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
关节4关节速度约束满足情况
关节5关节速度约束满足情况 关节5关节速度约束满足情况
关节6关节速度约束满足情况
关节4关节速度约束满足情况 关节6关节速度约束满足情况
关节5关节速度约束满足情况 关节6关节速度约束

-1
-1
-50 100 100 100
-50 100 -50

°·s
00
00 000 0000

°·s
100 100 0
100 -50 -50 100 100 -50 -50 100 -50 -50 100

v/(
v/(
v/(

00 关节1关节加速度约束满足情况100
关节2关节加速度约束满足情况 关节2关节加速度约束满足情况
关节3关节加速度约束满足情况
50 关节3关节加速度约束满足情况
100 50 50
00 50 100 50 -50 50 -50

速度v(°/s)
速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
-50
-50-50
-50
-100 -50
-50
-50 -100-50
-50-50

速度
速度
速度

100
100
50 -100-100 50100
10050 关节1关节加速度约束满足情况-100 1005050
关节2关节加速度约束满足情况
-100-100 50
关节3关节加速度约束

速度v(°/s)
速度v(°/s)
2速度v(°/s)

加速度a(°/s 速度v(°/s)

速度v(°/s)
00 -100
000 -100 00 0
00 -100-100
-100
-100 0 00
100 -100
-100
-100
-100 100
0 0 -100-100
-100-100
100 0
)
加速度a(°/s )

50
50 -50 50 -50
50 -50 50 -50
2

-50 -50
-150 000 10 20 00 10 20 000 10 20
加速度a(°/s

50 -100 10 10 -50-5020 20 -100 -150 0 1010 -50-5020 20 -150 10 10 -5020 20

)
-100 50 -100 50 -100 50
)

2
00 00 0
000 10时间t(s)
1010 -100
10 -100
时间t(s)
时间t(s) 20
002020-100
20 0000 时间t(s)
10
1010 -100
10
时间t(s)
时间t(s) 0 20 20
20
20 -100 0000 时间t(s)
10 10
10
10
时间t(s)
时间t(s) 20
2020
20-100
00
加速度a(°/s

t/s
时间-100 t/s
时间-100 时间-100t/s
时间t(s)
时间t(s)
时间t(s) 时间t(s)
时间t(s)
时间t(s) 时间t(s)
时间t(s)
时间t(s)
关节4关节速度约束满足情况
关节4关节速度约束满足情况
关节4关节速度约束满足情况 0 关节5关节速度约束满足情况
关节5关节速度约束满足情况
关节5关节速度约束满足情况 关节6关节速度约束满足情况
关节6关节速度约束满足情况
关节6关节速度约束满足情况
-50
-50 00
关节 4 关节速度约束满足情况
10
10 20
关节4关节速度约束满足情况
关节4关节速度约束满足情况
关节4关节速度约束满足情况 20-50-50 000 关节5关节速度约束满足情况
10
10 10
关节5关节速度约束满足情况
关节5关节速度约束满足情况 20
20 -50 0
关节 5 关节速度约束满足情况
20
关节 6 关节速度约束满足情况
00 关节6关节速度约束满足情况
10
10
关节6关节速度约束满足情况
关节6关节速度约束满足情况 20
20
0
0 1
00 1010 20
20
时间t(s)
时间t(s) 000 10
10 10 2020
20
时间t(s)
时间t(s)
时间t(s) 00 1010100 时间t(s)
100
100 100 2020
时间t(s) 0 10 时
100 -50 100100
100
100 -50 100 100
100 -50
-100
100 100
100100
时间t(s)
时间t(s) 速度
速度
-100 速度约束 时间t(s)
时间t(s)
时间t(s)
100
100
100
速度
速度 速度约束时间t(s)
时间t(s) 速度
速度 速度约束
时间t(s)
00 100
10100
100
10 20速度
20 00
速度约束
速度约束 10
1050 50 2020 速度 0
速度约束
速度约束 10 50 50
50 50 20 速度 速度约束
速度约束
v/(°·s )

v/(°·s )

v/(°·s )
50
速度v(°/s)

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
50
速度v(°/s)

速度v(°/s)

速度v(°/s)
-100 50
5050 -100 50 50
50
-1

-1

-1
速度v(°/s)

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
速度v(°/s)

速度v(°/s)

速度v(°/s)
时间t(s)
时间t(s) 时间t(s)
时间t(s) 时间t(s)
0000 0 10
0000 20 0 100000 20 0 10
关节2关节加速度约束满足情况
关节4关节加速度约束满足情况
关节5关节加速度约束满足情况 000 关节3关节加速度约束满足情况
关节5关节加速度约束满足情况
关节6关节加速度约束满足情况 000
时间t(s) 关节6关节加速度约束满足情况 000
时间t(s) 时间t(s)
-50-50 -50-50
速度

速度

速度
100 100 关节4关节加速度约束满足情况 -50
-50-50
-50
关节5关节加速度约束满足情况
-50
-50
-50-50 关节6关节加速度约束
-100-100
关节1关节加速度约束满足情况
-100 100 关节1关节加速度约束满足情况
关节2关节加速度约束满足情况 100关节3关节加速度约束满足情况
关节2关节加速度约束满足情况 关节3关节加速度约束
100
100 -100-100
-100 100 -100
-100
-100
-100 -100
100 -100
-100
-100 100 -100 -100
100
)

50
100 100
50 100
50 -100
-100
-100
-100 100
50 50 100
加速度a(°/s

-200 -150 100 -150


关节1关节加速度约束满足情况 关节2关节加速度约束满足情况 关节3关节加速度约束满足情况
加速度a(°/s 2)
加速度a(°/s22)

50 50 50502020
加速度a(°/s 2))

00
50 0000
0 1010
10 0 2020
50
020 0 00 10
1010 0
50 20
50
20
20 00000 10 10
10 20
20
)

关节1关节加速度约束满足情况
0 1010
10
时间 t/s 2020
20 关节2关节加速度约束满足情况
0 00 1010
10时间 t/s 20
2020 关节3关节加速度约束满足情况
0 1010
10 时间 t/s 20 20
加速度a(°/s

0 10
时间t(s) 20 0 10
100关节2关节加速度约束满足情况时间t(s) 20 速度 0 10
时间t(s) 20
加速度a(°/s

时间t(s) 时间t(s)
时间t(s) 时间t(s)
时间t(s)
-50 100 关节1关节加速度约束满足情况 时间t(s)
时间t(s)
时间t(s) 时间t(s)
时间t(s)
-5000 图 1 机器人各关节速度变化曲线及约束满足情况
-50 100 -50000 速度 速度100
速度 关节3关节加速度约束满足情况
速度约束
速度约束 时间t(s)
时间t(s)
时间t(s)00
-500 100 时间t(s) 0 时间t(s) 速度 100 速度约束
速度约束
速度约束
-100
100 100
关节1关节加速度约束满足情况
关节1关节加速度约束满足情况
关节1关节加速度约束满足情况 -100 100
关节2关节加速度约束满足情况
关节2关节加速度约束满足情况
关节2关节加速度约束满足情况 -50
速度 速度约束
100
关节3关节加速度约束满足情况
关节3关节加速度约束满足情况
关节3关节加速度约束满足情况 -50
2 )

50 -50 50 50 -50
)) 2 2)2)

-50
2

关节 1 关节加速度约束满足情况 关节 2 关节加速度约束满足情况 关节 3 关节加速度约束满足情况


-5000 -50
2 )

100 50
10
10 20
20 -50
-100
00 10
10 50 20
20 0 10 50 20
100
100
100
加速度a(°/s

0 100
100
100
10 20 0 100
10 50 20 -100 100100
100
加速度a(°/s

100 100
50 50
加速度a(°/s
)

加速度 加速度
加速度a(°/s

加速度 加速度
时间t(s)
时间t(s) -100 时间t(s)
时间t(s) 时间t(s)
-100 00 10 20 -1000 10 20 0 10
加速度a(°/s

-100
加速度a(°/s

0 加速度约束
加速度约束 0
10 2020
加速度约束
加速度约束
00 0
100050 2020 加速度0 10
)

00 0500
2)
)
2)

加速度 a/(°·s-2)

50

0 10
50
50 50 20 0 50
10 50 10
5050
50
)

2
a/(°·s 2

关节5关节加速度约束满足情况
50 关节6关节加速度约束满足情况 加速度
2
a/(°·s 2
-2

时间t(s) 时间t(s) 时间t(s)


-2
加速度a(°/s
加速度a(°/s
加速度a(°/s

时间t(s) 时间t(s) 时间t(s)


加速度a(°/s
加速度a(°/s
加速度a(°/s

时间t(s) 时间t(s) 时间t(s) 加速度约束


加速度约束
-50
0000
-50
100关节4关节加速度约束满足情况
100关节5关节加速度约束满足情况
-50
关节4关节加速度约束满足情况
0000
-50 -50
关节5关节加速度约束满足情况
0000
-50
关节6关节加速度约束满足情况 关节6关节加速度约束
-50 -50 -50
加速度

加速度

50 50 100 100
-50 -50 100 -50
100 -100
-50
-50
-100
-50
-100
100
100 -50-50
-50
-100
-100
-50-50
-50
-100
加速度a(°/s )

0 000 10 0 20 000 10 2020 00 1010 5020


2

-100
-100
-100
10
10 502020 -100 10 5050
10 20 -100 0 10 2020
-50
-100
00 时间t(s)
时间t(s)
时间t(s)-50 0 -100
-100
-100
时间t(s)
时间t(s)
时间t(s) 0 时间t(s)
时间t(s)
时间t(s) 0
0 00 10
10
10时间
10 t/s 2020020
20
0000 10
10
1010 0 20
20 0 0 1010 20 20
时间 t/s 2020 00 1010时间 t/s 2020
100 关节4关节加速度约束满足情况
关节4关节加速度约束满足情况 时间t(s)
关节4关节加速度约束满足情况
时间t(s)
时间t(s) -50 关节5关节加速度约束满足情况
关节5关节加速度约束满足情况
关节5关节加速度约束满足情况时间t(s)
时间t(s)
时间t(s) -50 关节6关节加速度约束满足情况
关节6关节加速度约束满足情况时间t(s)
关节6关节加速度约束满足情况
时间t(s)
时间t(s)
-50
关节 4 关节加速度约束满足情况 -50
关节 5 关节加速度约束满足情况 关节 6 关节加速度约束满足情况
-1000 10 20
关节4关节加速度约束满足情况
关节4关节加速度约束满足情况
关节4关节加速度约束满足情况 0
-100 10 20
关节5关节加速度约束满足情况
关节5关节加速度约束满足情况
关节5关节加速度约束满足情况 关节6关节加速度约束满足情况
关节6关节加速度约束满足情况
关节6关节加速度约束满足情况
-100 -100 100
加速度
加速度
100 100
100 100
0
时间t(s)
100
100
10 20 0 0 100
时间t(s)
100
1010
100
2020 0 0 10
100
10 2020 0 10
100100 加速度约束
加速度约束
100 100100
加速度 a/(°·s-2)
) 2))

加速度 a/(°·s-2)

100100
) ) ))

100 50
50
加速度
加速度
-2

加速度 50
100100 50
时间t(s) 加速度
50
时间t(s) 时间t(s)
2222

时间t(s) 5050
时间t(s) 时间t(s)
2°·s

50
加速度a(°/s

加速度约束
加速度约束 50
加速度a(°/s

加速度约束 50
加速度a(°/s

加速度约束
50 50 50 50
加速度 a/(
加速度a(°/s
加速度a(°/s

0 0 00
加速度a(°/s

00000
0 000000 00000
-50
-50 -50
-50
-50
-50
-50 -50
-100 -50-50
-100
-50
-50-50
-100
-100
-1000
-100 -100
-100 -100
0 10 10
10 20 0 20
20 -100
-10000 10 20 0
10
10
20
20
10 000 10 10 20 000 20
20 0 10时间 t/s 20
10 20
000 1010 20
时间 t/s
时间 t/s
1010 0
0
10时间t(s) 1010
10时间t(s)202020 0
0 20
2020 0 10 10 2020
时间t(s)20
加速度
加速度
时间t(s) 时间t(s)
图 2 机器人各关节加速度变化曲线及约束满足情况 加速度
加速度
加速度 时间t(s)
时间t(s)
时间t(s)
时间t(s) 时间t(s)
时间t(s)
时间t(s) 加速度约束
加速度
加速度约束 时间t(s)
时间t(s)
时间t(s)
时间t(s) 时间t(s) 加速度约束
加速度约束
加速度约束 时间t(s)
加速度约束
此时机器人运动总时间(单位:s)为: 4 结论
n-1
f (h) = ∑ h i = 39.534
本文为得到工业机器人的最优轨迹,提出了一种基
i=1 于混沌搜索的混合算法:利用混沌搜索不易陷入局部最
两者相比下,使用本文提出的区间缩小算法定位最 优的特性,提出了一种基于混沌搜索的解区间缩减方
优解区间后,再在此区间内使用遗传算法进行求解得出 法,并使用概率统计的手法确定了区间搜索的混沌变量
的结果,比直接使用遗传算法求解得出的机器人最短运 组数,以及每轮区间缩减的力度,得到满足条件的最优
动时间少了 14.085 s。 解区间后,在区间内使用遗传算法对问题进行更为精确
10 20 0 关节4加加速度约束满足情况
10 20 0 0 关节5加加速度约束满足情况
10 20 关节6加加速度约束满
时间t(s) 100 时间t(s) 时间t(s) 100
足情况 100
关节2加加速度约束满足情况
关节4加加速度约束满足情况 关节3加加速度约束满足情况 100
关节5加加速度约束满足情况 100
关节6加加速度约束满足情况
)

加加速度j(°/s 3)

加加速度j(°/s 3)

加加速度j(°/s 3)
3

3
50 50
)3 加加速度j(°/s

加加速度j(°/s
10050 50
关节1加加速度约束满足情况 100
100
关节2加加速度约束满足情况 100 关节3加加速度约束满足情况
0 关节1加加速度约束满足情况
100 0 关节2加加速度约束满足情况
0 0 关节3加加速度约束满足情况 0
)

加加速度j(°/s 3)
j/(°·s-3) ) 加加速度j(°/s 3)

加加速度j(°/s 3) 加加速度j(°/s 3)

加加速度j(°/s 3) 加加速度j(°/s 3)
100
3

50 50
100 陈 明:基于改进混沌搜索算法的机器人轨迹规划 50 100
3) 加加速度j(°/s

-50关节1加加速度约束满足情况
康代轲, 50 关节2加加速度约束满足情况 关节3加加速度约束满足情况 2017, 53(14) 147
100 0 -50 100 -50
100 -50
0 0 0 0
100 关节1加加速度约束满足情况 -100关节2加加速度约束满足情况
-100
)

)
100
-100 100 关节3加加速度约束满
3

)3

)3
关节1加加速度约束满足情况
关节1加加速度约束满足情况
50
关节1加加速度约束满足情况 -100
50关节2加加速度约束满足情况
关节2加加速度约束满足情况
关节2加加速度约束满足情况 关节3加加速度约束满足情况
关节3加加速度约束满足情况
50
关节3加加速度约束满足情况 -100
)

关节1加加速度约束满足情况 关节2加加速度约束满足情况
-50 关节3加加速度约束满足情况

)3

)3
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
0 10 20
关节 1 加加速度约束满足情况 0 10 20
0 10
关节 2 加加速度约束满足情况20 -50 100 0 10 20
关节 3 加加速度约束满足情况 0 10 2
-50 50 -50
100 100 50
100 50时间t(s) 100
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
100
100
3

3
100 100
-100 时间t(s) 时间t(s)
100 时间t(s) 100 100 时间t(s)
100
50 100 50 100 100
50 10 50 20
100 加加速度
加加速度 -100 100

3 )

加加速度j(°/s 3)

加加速度j(°/s 3)
加加速度
加加速度
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
-100

3
-100 -100 50 10 50
0 100 0 0

加加速度j(°/s
10 20 0 20 50 0
)3

加加速度约束
加加速度约束 50 10 加加速度约束
加加速度约束
0 0 50
)

)
3)
)

3)
)
0 0

加加速度 j/(°·s )
j/(°·s )
加加速度j(°/s

20 0 20
3

3
3

3
05050050时间t(s) 05050
50 5050
时间t(s) 时间t(s) 时间t(s)
50 50 50

-3
-3
050
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
0 0 0
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
时间t(s) 加加速度
加加速度
0 0
加加速度约束
加加速度约束
足情况
-50-5000
关节5加加速度约束满足情况
0 0-50
关节6加加速度约束满足情况
-50
0 -50
-500 00 -50 0 0-50
-5000 -50
-50 -50

加加速度
加加速度

100 -50 -50 -50


100 -100 -100
-100
)

加加速度j(°/s 3)
-100 -100
3

-50-50
-100 -100
-50 50 -100 -50 -100
-50-50
-50 0 10 20-100 0 -50-50
-100 -50
10 20 0 10 2
加加速度j(°/s

-50 -50
0 -100 10
50
-100 0 10 20 -100 20 0 10-100 20
0 0 10时间t(s)
1010 2020020 0 0 101010 202020 关节5加加速度约束满足情况 时间t(s) 0 0 0 101010 关节6加加速度约束满
202020
时间t(s) 时间t(s) 时间t(s)
0 0-100 0关节4加加速度约束满足情况
时间t(s)
-100
-100 -100 -100
-100 -100
-100 -100
-100 -100
-100
-50 关节4加加速度约束满足情况
0 时间t(s)
时间t(s)
时间t(s) -50
10 20 关节5加加速度约束满足情况
0 时间t(s)时间t(s)
时间t(s)
10 关节6加加速度约束满足情况
20 0 时间t(s)
时间t(s)
时间t(s)
10 20
0 0 0 101010时间 t/s202020 0 0 0 1010时间 202020 100
10 t/s 100 000 10时间1010 202020
t/s 100
关节4加加速度约束满足情况
-100 关节4加加速度约束满足情况
关节4加加速度约束满足情况时间t(s) 100 关节5加加速度约束满足情况
关节5加加速度约束满足情况
关节5加加速度约束满足情况 时间t(s) 关节6加加速度约束满足情况
关节6加加速度约束满足情况
关节6加加速度约束满足情况 时间t(s) )

加加速度j(°/s 3)

加加速度j(°/s 3)
时间t(s)时间t(s) -100 100 时间t(s) 时间t(s) 时间t(s)
时间t(s) 3
0 100 10 关节 4 20 加加速度约束满足情况
20 关节 5 加加速度约束满足情况 50 关节 6 加加速度约束满足情况
)

加加速度j(°/s 3)

加加速度j(°/s 3)
0 10 50 加加速度j(°/s
3

关节4加加速度约束满足情况 关节5加加速度约束满足情况 50 关节6加加速度约束满足情况


加加速度 j/加加速度j(°/s

关节4加加速度约束满足情况
关节4加加速度约束满足情况
时间t(s) 50 关节5加加速度约束满足情况
时间t(s) 关节5加加速度约束满足情况 关节6加加速度约束满足情况
关节6加加速度约束满足情况
加加速度
加加速度 0 0 100 100100
100 0
0 加加速度约束 0 100 100
100 0
100
100100 100 100
3) 3 )

3) 3 )

3) 3))
加加速度约束
) )

) )

3 )3 )
(°·s-3)

°·s 3)
) )

) )

) )
100 -50 100 100
3 3

3 3

3 3
100 -50
3 3

-3
-3

100 -50 100 100 5050


50
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
50 -50
50
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
100 50

加加速度 j/(°·s
100 -100
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
50
50 -100
加加速度 j/(3

-100 5010 -100


加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
-100 50500 0 50 0 50
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
加加速度j(°/s

加加速度j(°/s

加加速度j(°/s
0 0 00 10 20
50
0 0 0 010
10
20
20-100
0 10 0 020 20 0 10 2
0 0 0 时间t(s) 0 0
时间t(s) 时间t(s) 时间t(s)
时间t(s)
0 0 时间t(s) 0加加速度
加加速度
加加速度
0 0 0 0
-50
-50 -50
加加速度
-50 加加速度约束
加加速度约束

-100 -50
-50
-50
-50 -50
加加速度约束
加加速度约束
-50
-50
-100
-100 -100 -50 -50 -50
-100-100
-100
-100 -100
-100
-100-100
-100
-100
-10000
0 0 10 10时间 t/s20 20 0 0 10 时间 t/s 20
10 20
-100 -1000 10
10 20
20

00 0 101010 202020
0 10 20 时间10 t/s 20
0 10
时间t(s) 20 图 3 0 0 时间t(s)
10 10 20 20 加加速度 0 0 10 10 20 20
时间t(s)
时间t(s)
时间t(s) 时间t(s)
时间t(s)
机器人各关节加加速度变化曲线及约束满足情况 时间t(s)
时间t(s)
时间t(s)
时间t(s)
时间t(s) 时间t(s)
时间t(s)
时间t(s) 加加速度
加加速度
加加速度
加加速度
时间t(s)
时间t(s)
时间t(s)
加加速度 加加速度约束
的求解。通过比较混合算法与遗传算法求解的结果,证 加加速度约束
[6] Chettibi T,Lehtihet H E,Haddad M,et al.Minimum cost
加加速度约束
加加速度约束
加加速度约束
实了基于混沌搜索的最优解区间搜索方法确能跳出局 加加速度约束
trajectory planning for industrial robots[J].European Jour-
部最优,得到更优的结果。 nal of Mechanics A/Solids,2004,23(3):703-715.
[7] 郭清达,万传恒,史步海 . 基于遗传算法的工业机器人时间
最 优 轨 迹 规 划 及 仿 真 研 究 [J]. 计 算 机 测 量 与 控 制 ,2014
参考文献:
(4):1240-1242.
[1] Choi Y K,Park J H,Kim H S,et al.Optimal trajectory
[8] 李兵,蒋慰孙 . 混沌优化方法及其应用[J]. 控制理论与应
planning and sliding mode control for robots using evo-
lution strategy[J].Robotica,2000,18(8):423-428. 用,1997,14(4):613-615.

[2] Lin C S,Chang P R,Luh J Y S.Formulation and optimi- [9] Li B,Jiang W S.Optimizing complex functions by chaos

zation of cubic polynomial joint trajectories for industrial search[J].Cybernetics and Systems,1998,29(4):409-419.

robots[J].IEEE Trans on Automat Contr,1983,28(12): [10] 张彤,王宏伟,王子才 . 变尺度混沌优化方法及应用[J]. 控

1066-1074. 制与决策,1999,14(3):285-287.

[3] 李东洁,邱江艳,尤波 . 一种机器人轨迹规划的优化算法[J]. [11] 徐海黎,解祥荣,庄健,等 . 工业机器人的最优时间与最优

电机与控制学报,2009,13(1):123-127. 能量轨迹规划[J]. 机械工程学报,2010(9):19-25.


[4] Gasparetto A,Zanotto V.A technique for time-jerk optimal [12] 骆晨钟,邵惠鹤 . 用混沌搜索求解非线性约束优化问题[J].
planning of robot trajectories[J].Robotics and Computer- 系统工程理论与实践,2000(8):54-57.
Integrated Manufacturing,2008,24(6):415-426. [13] 柳贺, 黄道 . 基于混沌搜索的优化方法的研究进展[J].
黄猛,
[5] Saramago S F P,Steffen V J R.Optimization of the trajec- 南京理工大学学报:自然科学版,2005(S1):130-134.
tory planning of robot manipulators taking into account [14] Yang Dixiong,Li Gang,Cheng Gengdong.On the effi-
the dynamics of the system[J].Mech Mach Theory,1998, ciency of chaos optimization algorithms for global opti-
33(7):883-894. mization[J].Chaos Solitons & Fractals,2007:1366-1375.

You might also like