You are on page 1of 74

分类号: 单位代码: 10300

密 级: 学 号:20181223065

硕士专业学位论文

六自由度工业机器人轨迹规划与优化研究

申请人姓名: 王超

指 导 教 师: 宋公飞 副教授

类 别 名 称: 电子信息

领 域 名 称: 控制工程

培 养 学 院: 自动化学院

提 交 时 间: 2021 年 6 月 20 日

二○二一年六月
独创 性 声 明

本 人 声 明 所 呈 交 的 论 文 是 我个 人 在 导 师 指 导 下 进 行 的 研 究 工 作 及 取 得 的 研 究 成 果 

本论文尽 我所知 ,
除 了 文 中 特 别 加 以 标 注和 致谢 的 内 容外 ,
不 包 含其他 人 或 其 他 机 构 已

经 发 表 或 撰 写 过的 研 究 成 果 ,
也不 包 含 为 获得 南 京 信 息工 程 大 学 或 其他教 育 机构 的 学 位

或 证书 而 使 用 过的 材料 。 与我 一

同 工作 同 志 对本 研 究 所 做 的 贡 献均 已 在 论 文 中 作 了 声 明

并 表 示谢 意 

本 人 学 位论 文 及 涉 及 相 关 资 料 若 有 不 实 愿 意 承担 切 相 关 的 法律 责 任




学 位论 文 作 者签名 : 签字 日 期 

关于 论文 使 用 授 权的 说明

本 人 授权 南 京 信 息 工 程 大 学 可 以 保 留 并 向 国 家 有 关 部 门 或 机构 送 交 论 文 的 复 印 件和

电 子 文档 ; 允 许 论 文被 查 阅 和 借 阅 ;
可 以 将 学位论 文 的 全 部 或 部 分 内 容编 入 有 关数据 库

进 行检 索 : 可 以采用 影 印 、 缩 印 或 扫描 等 复 制 手 段 保 存 、 汇 编 本 学 位论 文 。 本文电 子文

档的 内 容和纸 质 论 文 的 内 容相 一

致 。 论 文 的 公布 ( 包括 刊 登 ) 授权 南 京 信 息工程 大 学 研

究 生院办理 

非 国 家 秘 密 类 涉 密 学 位 论 文 在 解 密 后 适 用 本授 权 书 

A 开 口 保 密 (  年  月 ) ( 保 密 的 学 位 论 文在 解 密 后 应 遵 守 此 协 议 

>〇
学 位 论文 作 者 签 名 签 字 日 期


x^l . b -

指导 教师签 名 :

荠 么 私 一

签 字 日 期 :
^  ^ ^



目 录
摘 要........................................................................................................................................... I
Abstract...................................................................................................................................... II
第一章 绪论............................................................................................................................... 1
1.1 研究背景与意义........................................................................................................... 1
1.2 工业机器人轨迹规划算法........................................................................................... 1
1.3 工业机器人轨迹优化算法........................................................................................... 3
1.4 本文的结构与安排....................................................................................................... 5
第二章 工业机器人建模与运动学分析................................................................................... 7
2.1 引言............................................................................................................................... 7
2.2 工业机器人数学基础................................................................................................... 7
2.2.1 位姿描述............................................................................................................. 7
2.2.2 坐标变换............................................................................................................. 9
2.3 工业机器人 D-H 建模................................................................................................ 11
2.4 正逆运动学分析......................................................................................................... 16
2.4.1 正运动学........................................................................................................... 16
2.4.2 逆运动学........................................................................................................... 18
2.4.3 数值仿真........................................................................................................... 21
2.5 本章小结..................................................................................................................... 22
第三章 工业机器人轨迹规划................................................................................................. 23
3.1 引言.............................................................................................................................. 23
3.2 笛卡尔空间轨迹规划................................................................................................. 23
3.2.1 直线插补........................................................................................................... 23
3.2.2 圆弧插补........................................................................................................... 25
3.3 关节空间轨迹规划..................................................................................................... 27
3.3.1 多项式插值........................................................................................................ 27
3.3.2 非均匀 B 样条插值.......................................................................................... 28
3.4 关节轨迹仿真对比...................................................................................................... 30
3.5 本章小结...................................................................................................................... 32

I
第四章 改进的自适应遗传模拟退火算法............................................................................. 34
4.1 引言.............................................................................................................................. 34
4.2 遗传算法与模拟退火算法.......................................................................................... 34
4.2.1 遗传算法........................................................................................................... 34
4.2.2 模拟退火算法................................................................................................... 35
4.3 遗传算法的分析与改进............................................................................................. 36
4.3.1 编码方式........................................................................................................... 36
4.3.2 选择操作........................................................................................................... 37
4.3.3 自适应交叉与变异操作................................................................................... 37
4.3.4 交叉与变异操作改进....................................................................................... 39
4.4 改进的自适应遗传模拟退火算法流程..................................................................... 40
4.5 数值测试与性能比较................................................................................................. 42
4.6 本章小结..................................................................................................................... 47
第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹................................. 48
5.1 引言.............................................................................................................................. 48
5.2 基于改进算法最优轨迹规划...................................................................................... 48
5.2.1 优化目标........................................................................................................... 48
5.2.2 约束条件........................................................................................................... 48
5.2.3 基于改进自适应遗传模拟退火算法轨迹优化实现....................................... 49
5.3 实验仿真与结果分析................................................................................................. 50
5.4 本章小结..................................................................................................................... 58
第六章 总结与展望................................................................................................................. 60
致谢........................................................................................................................................... 61
参考文献................................................................................................................................... 62
作者简介................................................................................................................................... 67

II
摘 要
轨迹规划与轨迹优化一直是备受存眷的研究热门,轨迹规划是轨迹优化的前提。仅
使工业机器人完成指定任务,已不能满足目前需求,需要尽可能缩短运行时间来提高工
作效率和减少冲击以延长使用寿命。本文以六自由度工业机器人为研究对象,在关节空
间中采用五次非均匀 B 样条进行插值,对已规划好的轨迹,以改进的自适应遗传模拟退
火算法为优化手段,将时间-冲击作为优化目标,通过改变权重获得时间、冲击以及综
合最优轨迹。本文主要研究内容如下:
(1) 以 PUMA560 为研究对象进行 D-H 建模,根据 D-H 参数表建立运动学方程,推
导从关节角度转换成笛卡尔空间的位姿矩阵,反向求解位姿矩阵对应的关节角度,通过
数值仿真验证推导的正确性;利用 MATLAB 中 Robotic Toolbox 建立机器人模型,给出
关键点下末端执行器的位姿。
(2) 以运动学为基础,深入研究多项式和 B 样条插值法并给出详细推导过程,利用
MATLAB 编写程序实现上述轨迹规划方法,根据仿真所得的关节运动曲线进行对比分
析。
(3) 为获取时间-冲击指标下最优轨迹,需要对规划好的轨迹进行优化,轨迹优化是
一种高耦合的非线性问题,一般采用遗传算法进行求解,为提高遗传算法的搜索能力,
对其交叉操作和变异操作进行自适应改进,以遗传算法为框架引入局部搜索能力较强的
模拟退火算法,提出改进的自适应遗传模拟退火算法。利用测试函数与其它算法进行搜
索能力测试,通过仿真数据证明本文改进算法的优越性。
(4) 采用(3)中改进算法对轨迹进行优化,以时间-冲击为优化目标,将运动学作为约
束条件,通过改变权重获取各关节运动曲线,在相同的路径点和约束条件下仅对时间优
化,本文所改进算法对时间的优化与其他文献相比分别缩短 14%、13%和 1.3%,各个关
节位移、速度、加速度和加加速度曲线光滑、无突变,使机器人高效、平稳的完成任务。
关键词:工业机器人,轨迹规划,非均匀 B 样条曲线,遗传算法,模拟退火算法

I
Abstract
Trajectory planning and trajectory optimization have always been the focus of attention,
and trajectory planning is the premise of trajectory optimization. Simply enabling industrial
robots to complete the designated tasks can no longer meet the current needs. It is necessary
to shorten the running time as possible to improve efficiency and reduce jerk to extend the
service life. In this thesis the six-degree-of-freedom industrial robot is used as the research
object. In the joint space, quintic non-uniform b-spline interpolation is used for interpolation.
For the planned trajectory, an improved adaptive genetic simulated annealing algorithm is
used as an optimization method, taking time-jerk as the optimization target, and time, jerk and
the integrated optimal trajectory can be achieved by changing the weights. The main contents
of this thesis are as follows:
(1) The PUMA560 was used as the research object for D-H modelling, the kinematic
equations were established according to the D-H parameter table, the positional matrix
converted from joint angle to Cartesian space was derived, the joint angle corresponding to
the positional matrix was solved in reverse, and the correctness of the derivation was verified
by numerical simulation. The robot model is established through the robotic toolbox in
MATLAB, and the pose of the end effector under the key points are given.
(2) On the basis of kinematics, the polynomial and b-spline trajectory planning methods
are deeply studied, and the detailed derivation process is given. The above-mentioned
trajectory planning methods are realized by using MATLAB, and the simulation results are
compared and analyzed.
(3) In order to obtain the optimal trajectory under time-jerk index, it is necessary to
optimize the planned trajectory. Trajectory optimization is a highly coupled nonlinear problem,
which is generally solved by genetic algorithm. In order to improve the search ability of
genetic algorithm, crossover operation and mutation operation are self-adaptively improved.
The improved adaptive genetic simulated annealing algorithm is proposed by introducing a
simulated annealing algorithm with stronger local search capability using genetic algorithm as
a framework Use the test function and other algorithms to test the search ability, and prove the
superiority of the improved algorithm in this thesis.

II
(4) The improved algorithm in (3) is used to optimize the trajectory, taking time-jerk as
the optimization goal and kinematics as the constraint conditions. The motion curves of each
joint are obtained by changing the weights, and only the time is optimized under the same
path points and constraints. Compared with other literatures, the optimization time of the
improved algorithm in this thesis is shortened by 14%, 13% and 1.3%, respectively. The
curves of displacement, velocity, acceleration and jerk of each joint are smooth, so that the
robot can complete tasks efficiently and smoothly.
Key words: industrial robot, trajectory planning, non-uniform b-spline curve, genetic
algorithm, simulated annealing algorithm

III
第一章 绪论

第一章 绪论

1.1 研究背景与意义
2013 年德国在汉诺威工业博览会上正式推出“工业 4.0”[1],中国在 2015 年 5 月印
发的部署全面推进实施制造强国的战略文件《中国制造 2025》[2]。工业机器人是“制造
强国”和“工业 4.0”的基础,也是重要的参与者,直接影响制造业自动化水平[3]。从
2013 年开始,中国工业机器人的市场逐渐占据全球市场的最大值,根据 The International
Federation of Robotics(IFR)数据可知,近十几年来全世界机器人市场需求量飞速激增[4]。
以 Yaskawa、Kuka、Abb 以及 Fanuc 大约共占据全世界市场总额的 50%,这四家巨头分
别在本体设计与制造、核心零件以及综合方案设计与解决方面已经形成一套成熟的产业
链[5]。由于自主研发成本较高和技术封锁等问题,国内市场份额依然被国外主流厂商所
占据,但是近几年以埃斯顿、新松机器人、新时达以及国机智能等优秀的国内厂商逐步
发展。由于控制装置、高精度减速设备和伺服系统等工业机器人的关键器件依然处于集
成层面,能独立自主研发并落地,打破寡头核心技术垄断是当前迫切要解决的问题[6]。
工业机器人是一门融合各种理论与技术的复合型学科,其中包含机械设计、现代控
制理论、电机学、力学分析、电子硬件设计和软件开发编程等众多科目[7],近几年跟随
人工智能的热潮,人工智能技术也逐步被应用到工业机器人领域。在学者、专家和工程
师们不懈努力之下,工业机器人的各种技术逐渐成熟与完善。工业机器人被大量运用到
各类型的加工生产中,例如:码垛、焊接、喷涂、装配和搬运等[7-8]。不仅为企业节约大
量的人工开支,在提升产品产出量的同时也保证产品的质量,有效降低残次品数量,对
于有毒、有害、易爆等恶劣生产环境可以最大程度减少人工参与[8]。
工业机器人在快速、准确完成给定任务的同时必须使工业机器人在整个运行过程中
轨迹光滑且无跳变,以保证工业机器人能够运行平稳、产生抖动较小,从而避免各个关
节产生过大摩擦,缩短工业机器人使用寿命[9-10]。为此必须事先对工业机器人各个关节
进行轨迹规划,优秀的规划算法不仅可以保证各个关节的运动曲线(位移、速度、加速
度)光滑且无跳变,在最大程度上降低冲击对工业机器人造成的不良影响,同时保证工
业机器人能够稳定、精准的完成任务,但所规划的轨迹往往不是最优轨迹,因为在开始
点和结束点之间存在多条路径[10]。

1.2 工业机器人轨迹规划算法
轨迹规划算法通用流程如图 1.1 所示。轨迹规划通常分成两种类型:笛卡尔空间轨

1
南京信息工程大学硕士专业学位论文

迹规划[14-18]和关节空间轨迹规划[19-29]。轨迹规划方法大体过程为:由示教器给定示教点,
通过规划算法使末端执行器依次经过给定示教点,得到一条近似理想的轨迹,最终获取
各个关节角度的位移、速度和加速度运动曲线[11]。

图 1.1 轨迹规划一般流程

工业机器人的轨迹规划以运动学或动力学为基础,采用某种的高阶连续可导的插值
函数,拟合出每一关节的运动曲线[12]。因为轨迹规划的优劣直接影响工业机器人运行情
况,所以引起诸多国内外专家和学者对于轨迹规划算法的研究,并取得丰硕的成果。较
多的规划方法仍集中在关节空间但是对于有特定路径要求的运动只能在笛卡尔空间进
行[13],对于后者常见插补方法有直线 [14]
和圆弧两种[15],因为直线和圆弧插补方法较为
简单仅能满足要求较低的工作需求,所以专家和学者在此基础上进行各种改进,文献[16]
中,陈伟华等人在启停处引入抛物线过渡,降低启停时刻冲击值,但是依然存在计算难
度大的问题。为此文献[17]中,Bazaz S A 等人采用多项式函数进行插补并引入三次样条
函数以保证速度曲线连续,虽然在一定程度上降低计算量,但是引入的插值函数并不能
够保证加速度曲线的连续性。文献[18]中,Reclik D 等人采用 B 样条函数进行轨迹插补,
虽然解决加速度曲线不连续问题,但是涉及大量正反解过程,计算复杂和计算量较大。
综上,为获取优秀的轨迹必须保证插值函数高阶可导且连续,必然导致计算量和计算复
杂高。
对于没有特定路径要求的 PTP(Point To Point)运动,一般在关节空间中进行插值拟
合,此方法仅需要给定关键路径点,通过插值函数将关键点拼接成完整的运动轨迹。关
节空间轨迹规划能够避免奇异性和冗余度问题,计算量和计算复杂度相对较低并且实时
性较高,其原因在于工业机器人运动是直接对关节角度进行控制而非末端执行器[19]。文
献[20]中,李东洁等人采用三次多项式函数在关节空间进行插值拟合,虽然保证各个关
节角速度曲线的连续性但是无法保证角加速度曲线连续性,角加速度突然变化会造成冲
击的发生将对机器造成损坏。文献[21]中,孙玥等人为解决角加速度突变问题在关节空

2
第一章 绪论

间采用五次多项式进行插值拟合使得轨迹更加光滑同时保证角加速度曲线连续性,但不
能保证角加加速度曲线一定连续。文献[22]中,Boryga 等人分别使用五、七和九次多项
式函数在关键点之间进行插值拟合并总结分析,函数的次数越高虽能保证各阶运动曲线
的连续性和平滑性,但需增设更多边界约束条件同时计算量也相对提高。实际情况中会
根据不同情况采用分段式轨迹规划方法,文献[23-25]中,分别采用 3-4-3,5-7-5 和 4-3-3-4
插值拟合,实现整个运动过程中轨迹光滑且无跳变,相较于高次函数计算复杂度明显减
小,但是改变其中一个路径点需要重新计算整条轨迹,无法做到灵活调整。因为在生产
中对于工业机器人轨迹的准确性和运行的平稳程度越来越高,所以样条函数凭借其优秀
的局部支撑特点和光滑性受到广泛关注。文献[26]中,Xu Z 等人采用 Berzier 函数在关
节空间中进行插值拟合,但是改变 Berzier 函数内部节点需要重新计算整条轨迹。文献[27]
中,Ramabalan S 等人采用三次均匀 B 样条在关节空间进行插值拟合,相对于文献[26]
中的插值函数,B 样条除拥有优秀的光滑性外还存在局部支撑特点,即改变内部节点不
需要重新计算整条轨迹,因为三次 B 样条函数不能满足角加加速度曲线的连续性,所以
文献[28-29]中,Gasparetto A 等人为使角加加速度曲线连续分别采用五次和七次非均匀 B
样条在关节空间进行插值拟合。
综合上述,轨迹规划大体分成两种类型:笛卡尔空间和关节空间。关节空间规划计
算量和计算复杂度相对较小,且不存在奇异性和冗余度等问题,B 样条函数相较于其他
插值函数拥有可调性、高阶可导性以及局部性等优点同时五次 B 样条函数能保证角加加
速度曲线连续,所以本文在关节空间采用五次非均匀 B 样条进行轨迹规划。

1.3 工业机器人轨迹优化算法
轨迹规划是轨迹优化的基础,同样也是轨迹跟踪控制的前提,插值函数拟合出的轨
迹并非最优的轨迹,受到作业限制以及为追求某方面效益最大化,需要对已经规划好的
轨迹做出进一步改善[30]。轨迹优化问题引发国内外大量学者和专家的研究,主要围绕时
间[36,38]、能耗[39,42]、冲击[40-41]优化这三个方面,时间最优是指在运动学、动力学以及机
器人自身条件约束下,求解使其做完指定动作的最优位置-时间序列;能耗最优是指使
用最少能量做完指定动作,一般求解最平滑运动曲线或者优化能量分配方案;冲击为加
加速度的导数,加速度发生突变时将造成冲击的产生,优化冲击可以减小跟踪误差,同
样能够降低机械臂关节之间的磨损和减小机械共振。大多数的研究主要集中在时间优化
层面,因为在各种约束条件下越短的时间完成设定的动作意味着更高的工作效率,为企
业生产带来更大的效益,所以时间是最早研究的优化目标,也是研究的热门方向。以时

3
南京信息工程大学硕士专业学位论文

间最优为例,对预先设定的轨迹,通过调整每个路径点之间的时间序列,尽可能在约束
条件下使整体运行时间缩短。
因为工业机器人轨迹优化问题是一个高度耦合的非线性问题,传统方法例如:经验
法、不等式约束法等很难获取最优或者次优结果,所以通常会选用适当的智能优化算法
作为优化手段,例如:遗传算法[31]、神经网络[32]、粒子群[33]、混沌算法[34]和模拟退火
算法[35]等以及对优化算法的不足进行改进。
文献[36]中,Gao M 等人采用粒子群算法(Particle Swarm Optimization,简称 PSO)
对时间进行最优轨迹规划,此算法由于其步骤流程较少、参数设置简单且容易实现等特
点被广泛运用在工业机器人轨迹优化当中。但是其收敛性较差、不能及时跳出局部最优
解以及存在随机性过大等问题,文献[37-38]中,Xiong J 等人采用遗传算法(Genetic
Algorithm,简称 GA)进行轨迹优化,相比于粒子群算法,遗传算法凭借出色的全局寻优
能力以及收敛速度快等优点被大量运用到轨迹优化方面。为追求多种目标下的最优轨迹
常常被优化的目标可能为多个[39-42],多目标轨迹优化算法应运而生,对于多目标优化方
案主要有两种处理方法:第一种采用加权方案将多目标转化为单目标,文献[39-40]中,
Liu X 等人采用加权法将多目标变成单目标形式,分别采用粒子群算法和教与学算法
(Teaching Learning Based Optimization,简称 TLBO)对时间-能耗和时间-冲击进行轨迹优
化。文献[41-42]中,Huang J 等人均在关节空间中采用五次非均匀 B 样条函数进行路径
点插值拟合,再分别采用精英非支配排序遗传算法(Elitist Non-dominated Sorting Genetic
Algorithm,简称 NAGA-II)和多目标粒子群优化(Multi-object Particle Swarm Optimization,
简称 MOPSO)分别对时间-冲击和时间-能量-冲击进行最优轨迹规划,此类算法与加权方
案区别在于需要获取 Pareto 最优解集合,从 Pareto 最优解集合中选择一组潜在解。相对
于第二种方法,加权法较为简单且单目标优化算法发展更为成熟。为尽可能发挥算法的
寻优能力,一般采用混合优化算法的方案来弥补算法之间局限性,文献[34]中,Zhang Q
等人在利用五次多项式函数来插值拟合关节空间路径点,采用遗传混沌算法以时间为目
标进行轨迹优化。或者对某种算法存在的问题进行改进,文献[43-45]中分别对遗传算法、
粒子群算法和差分算法所存在的不足进行改进,在关节空间中采用不同的轨迹规划方法,
以某一目标或多个目标进行轨迹优化。基础算法混合使用或仅对单一算法改进能在一定
程度上弥补算法固有缺陷或提升部分性能,为充分发挥算法性能可在改进算法自身不足
的同时引入其他算法,这也是相对困难的。
综合上述,随着各种智能优化算法的提出以及对其不断的改进,大量的优化算法被

4
第一章 绪论

运用到工业机器人轨迹优化和最优路径方面。每种算法都有改进的可能,同时工业机器
人各种指标下的最优轨迹仍存在提升空间,本文采用 1.3 节所述轨迹规划方法,通过对
自适应遗传算法改进的同时引入模拟退火算法提出改进的自适应遗传模拟退火算法,以
时间-冲击作为优化目标,通过 MATLAB 实验仿真,证明所改进的算法运用到轨迹优化
的优越性和可行性。

1.4 本文的结构与安排
本文主要研究内容和章节安排如下所示:
第一章,扼要论述工业机器人背景、近况以及应用场景。并对工业机器人的轨迹规
划与优化所用到的方法和已取得的成果进行文献综述。
第二章,介绍空间中刚体的位置和姿态的数学表示以及三维空间中坐标系的齐次变
换,以此为基础推导出工业机器人正逆运动学并进行数值仿真。通过 D-H 建模方法以
PUMA560 六自由度工业机器人为研究对象建立数学模型,根据所对应的 D-H 参数表通
过 MATLAB 中 Robotics Tool 建立机器人模型,并给出各个关键点处末端执行器的位姿
状态。对正逆运动学进行详细的推导和利用 MATLAB 进行数值仿真,给出八种逆解情
况。
第三章,在第二章基础上对六自由度工业机器人进行轨迹规划,研究笛卡尔空间中
直线插补和圆弧插补以及关节空间中多项式和 B 样条轨迹规划。深入研究五次非均匀 B
样条轨迹规划方法,通过仿真给出各种轨迹规划方法的关节运动曲线,通过对比关节运
动曲线证明五次非均匀 B 样条相对于其他规划方法的优越性和可行性。
第四章,介绍遗传算法和模拟退火算法的基本过程、原理,在分析传统遗传算法存
在的不足和前人改进后依然存在的不足之处作出进一步改进,同时为增强算法的局部搜
索能力融入模拟退火操作提出改进的自适应遗传模拟退火算法。选取多个二维和多维的
单峰、多峰测试函数分别测试算法的寻优能力和跳出局部解能力。采用 MATLAB 编程
对改进算法进行性能测试,和其他改进算法在相同的条件下实验对比分析,验证本文所
改进算法的有效性和优越性。
第五章,运用第三章轨迹规划方案和第四章所提出改进的优化算法,通过加权方法
将时间和冲击作为优化目标,以运动学(速度、加速度和加加速度)作为约束条件,由
MATLAB 计算各个关节的运动曲线。仅对时间进行优化时,和文献[42]在相同的路径点
和运动学约束条件下,本文所改进算法运行时长为 14.4956s 缩短 14%;和文献[70]和[71]
在一致的路径点和运动学约束条件下,本文所改进的算法运行时长为 17.8s,分别缩短

5
南京信息工程大学硕士专业学位论文

13%和 1.3%。各个关节的速度、加速度和加加速度均在所对应约束范围内,从而验证本
文所改进算法运用在工业机器人轨迹优化方面的可行性和优越性。
第六章,总结本文主要工作内容,指出论文写作过程中的难点,最后展望未来可继
续研究的内容。

6
第二章 工业机器人建模与运动学分析

第二章 工业机器人建模与运动学分析

2.1 引言
工业机器人运动学是轨迹规划的前提,对运动学准确的分析至关重要[46]。运动学主
要包括:D-H 建模、正逆运动学等,解决串联工业机器人各个连杆之间的位置、姿态的
关系和末端执行器位姿所对应各个关节的角度。本章以 PUMA560 六自由度工业机器人
为研究对象,给出 D-H 建模方法、正逆运动学推导过程和数值仿真结果,并根据 D-H
参数表采用 MATLAB 中 Robotics Tool 建立机器人仿真模型。

2.2 工业机器人数学基础
2.2.1 位姿描述
(1) 位置描述

通过确定的全局固定直角坐标系 { A} ,来确定三维空间中任意一点 P ,以 3  1 的矢

量 A P 来表示此点的位置,数学表示如式(2.1)所示:

 px 
A
P =  p y  (2.1)
 pz 

式(2.1)中, px , py 和 pz 分别为固定直角坐标系 { A} 中分量,如图 2.1 所示。

图 2.1 位置描述

7
南京信息工程大学硕士专业学位论文

(2) 姿态描述
在运动学分析中,不仅需要知道位置还需要知道具体的方位,即姿态。姿态可用一

个固定在物体上的局部直角坐标系 {B} ,即可通过唯一固定的全局直角坐标系 { A} 的旋

A
转变换来表示,如图 2.2 所示。即 {B} 相对于 { A} 的 3  3 的正交旋转矩阵为 B R ,数学表

达如式(2.2)所示:

图 2.2 姿态描述

 r11 r12 r13 


A
B
A
R  [ xB A
yB A
z B ]   r21 r22 r22  (2.2)
 r31 r32 r32 

式(2.2)中,xB 、 yB 和 zB 分别是相对应直角坐标系 {B} 各个方向轴上的单位矢量;xB 、 yB

和 zB 的模为 1;xB 、yB 和 zB 互相垂直。所以式(2.2)为正交矩阵,转换关系如式(2.3)所示:

A
B R 1  AB R  BA RT,BA R  1 (2.3)

局部直角坐标系 {B} 分别绕全局直角坐标系 { A} 的 x 、 y 和 z 轴旋转,转角  ,数学

表达式如式(2.4)-(2.6)所示:

1 0 0 

R ( x,  )   0 cos   sin   (2.4)
 0 sin  cos  

8
第二章 工业机器人建模与运动学分析

 cos  0 sin  
R ( y,  )   0 1 0  (2.5)
  sin  0 cos  

cos   sin  0
R ( z ,  )   sin  cos  0  (2.6)
 0 0 1 

(3) 位姿描述

由上述位置和姿态数学表示共同构成位姿矩阵 B ,局部直角坐标系 {B} 相对于全局

直角坐标系 { A} 位姿数学表示如式(2.7)所示:

B  { BA R A P} (2.7)

式(2.7)中, BA R 若为单位矩阵时, B 仅为位置的数学表示;当 A P =[0,0,0]T 时, B 仅为姿

态的数学表示。
2.2.2 坐标变换
(1) 平移变换

如图 2.3 所示,直角坐标系 {C} 和直角坐标系 {D} 除原点不在相同位置,x、y 和 z

各方向轴指向相同。

图 2.3 平移变换

如需在直角坐标系 {C} 中表示直角坐标系 {D} 中任意位置点 P ,仅需通过位置变换

9
南京信息工程大学硕士专业学位论文

即可。坐标平移方程如式(2.8)所示:
C
P  C PDo  D P (2.8)

式(2.8)中, D P 为 P 点在直角坐标系 {D} 中数学表示, C PDo 为直角坐标系 {D} 原点在坐标

系 {C} 中的位置数学表示。

(2) 旋转变换

如图 2.4 所示,直角坐标系 {C} 和直角坐标系 {D} 仅原点在同一位置,各轴方向不完

全重合或者都不重合。

图 2.4 旋转变换

如果要表示直角坐标系 {D} 中一点 P 在直角坐标系 {C} 中的数学表示,不需要考虑

位置变换,仅可通过旋转变换来表示。直角坐标系旋转方程如式(2.9)所示:
C
P  DC R D P (2.9)

式(2.9)中, D P 为 P 点在直角坐标系 {D} 中表示, DC R 为直角坐标系 {D} 相对于直角坐标

系 {C} 的旋转矩阵。

(3) 复合变换
以上(1)和(2)仅讨论单一的特殊变换情况,复合变换情况如图 2.5 所示,即原点和各
轴方向都不相同,必须同时通过以上平移和旋转两种变换来完成。

10
第二章 工业机器人建模与运动学分析

图 2.5 复合变换

直角坐标系 {C} 和直角坐标系 {D} 原点即不重叠且各方向轴指向也不一致,需通过

旋转变换得到与直角坐标系 {C} 各方向轴相同的中间直角坐标系 {C ' } ,再通过位移变换,

如式(2.10)所示:
C
P  DC R D P  C PDo (2.10)

(4)齐次变换
式(2.10)为非齐次,为使计算和编程简单化,需要进行等效齐次变换。式(2.10)复合
变换的齐次形式如式(2.11)所示:
C
P  CDT D P (2.11)

式(2.11)中, CDT 囊括平移和旋转变换,如式(2.12)所示:

 DC R C
PDo 
C
DT=  (2.12)
 0 1 

2.3 工业机器人 D-H 建模


Denavit-Hartenberg(D-H)建模是由 Denavit 和 Hartenberg 所提出,为解决串联工业机
器人末端执行器的位姿与基座位姿的关系,末端执行器可以看成局部直角坐标系,而基
座可以视为已知固定直角坐标系[47]。结合 D-H 参数表将复杂的串联工业机器人简化成
一个相对简单的运动链。

11
南京信息工程大学硕士专业学位论文

串联工业机器人任意两个关节之间存在一根连杆,通过两个相邻的关节推导出末端
执行器和基座之间的位姿关系[48]。在每个关节上建立独立的固定直角坐标系,坐标系的
Z 轴就是此关节的关节轴,方向根据右手准则来确定。若相邻两个关节轴不相交,则公

垂线即为 X 轴;若相交时,根据右手定则确定 X 轴,方向指向下一个关节[49]。根据右


手定则就可以确定唯一的 Y 轴[49]。以相邻的两个关节为例,进行 D-H 建模,如图 2.6 所
示。

图 2.6 D-H 建模

由图 2.6 可知, i  1关节设为当前关节,下一个关节为 i 关节,两个关节之间的连杆

为连杆 i  1。关节 i  1和关节 i 轴线之间的垂直距离为连杆 i  1的长度,记 a i 1 。关节 i  1

和关节 i 轴线之间夹角之间的夹角称为连杆 i  1的扭角,记  i1 ,对于两个轴线互相平行

的特殊情况  i 1 =0 。  i1 和  i 之间的偏置即为连杆 i 和连杆 i  1之间的偏置,记 d i 。连

杆 i 和连杆 i  1 绕关节 i 轴的旋转角度,记 i 。以上即为 i  1 关节的 D-H 参数。由 2.2 小

节的基础知识,可知连杆坐标系 i  1到坐标系 i 齐次变换矩阵,如式(2.13)所示:

T  Rot ( x,  i 1 )Trans( x, ai 1 )Trans( z,i ) R( z, di )


i 1
i (2.13)

式(2.13)的平移和旋转齐次变化矩阵的通式,如式(2.14)所示:
 cos  i  sin  i 0 ai 1 
sin  cos  cos  i cos  i 1 sin  i 1  di sin  i 1 
i 1  i i 1
(2.14)
iT 
 sin  i sin  i 1 cos  i sin  i 1 cos  i 1 di cos  i 1 
 
 0 0 0 1 
本文以 PUMA560 机器人为研究对象,此机器人为 6R 机器人,即六个关节都为旋
转关节[50]。本文通过 MATLAB 的 ROBOTICS TOOLBOS 进行仿真[51]。机器人实物图与

12
第二章 工业机器人建模与运动学分析

D-H 建模图如图 2.7 所示。

图 2.7 PUMA560 机器人实物图与 D-H 建模图

D-H 参数表如表 2.1 所示。


表 2.1 D-H 参数

连杆编号  i 1 a i 1 di i

1 0° 0 0 90°
2 -90° 0 0.149m 0°
3 0° 0.432m 0 -90°
4 -90° 0.02m 0.433m 0°
5 90° 0 0 0°
6 -90° 0 0 0°

各个关节的最大-最小转动范围如表 2.2 所示。


表 2.2 各关节转动范围

关节 关节转动范围

1 -160°~160°

2 -225°~45°

3 -45°~225°

4 -110°~170°

5 -160°~100°

6 -266°~266°

在 MATLAB 中安装 ROBOTICS TOOLBOS,根据 D-H 参数表,创建初始角度全为


0 的机器人模型,如图 2.8 所示:

13
南京信息工程大学硕士专业学位论文

图 2.8 机器人模型

给定的关节关键点(弧度制)如表 2.3 所示。关键点所对应工业机器人末端执行器位


姿如图 2.9 所示。
表 2.3 关键点

点1 点2 点3 点4 点5 点6 点7 点8

关节 1 0.5821 0.7536 0.8734 1.0938 1.3621 1.6476 1.8174 1.9532

关节 2 0.1288 0.3142 0.7304 0.9383 1.0004 0.9203 0.7411 0.1185

关节 3 2.2789 2.6545 2.9786 3.1313 3.1887 3.1145 3.0288 2.3178

关节 4 0 0 0 0 0 0 0 0

关节 5 0.6817 0.8011 0.8934 0.9535 0.9533 0.9317 0.8784 0.7053

关节 6 0.8144 0.8381 0.5646 0.0871 0.5767 1.3254 1.6539 1.9576

(a) 关键点 1 (b) 关键点 2

14
第二章 工业机器人建模与运动学分析

(c) 关键点 3 (d) 关键点 4

(e) 关键点 5 (f) 关键点 6

(g) 关键点 7 (h) 关键点 8

图 2.9 各坐标点机器人位姿

15
南京信息工程大学硕士专业学位论文

2.4 正逆运动学分析
2.4.1 正运动学
正运动学在明确每一关节角度为前提,推导末端执行器位置和姿态的齐次矩阵的过
程[52]。根据上节列出的 D-H 参数表,将参数带入式(2.14)中,计算后一个关节直角坐标
系相对于前一个关节直角关节坐标系的位姿矩阵。PUMA560 为六自由度工业机器人存
在六个旋转关节,六个关节位姿矩阵如式(2.15)-(2.20)所示:
 cos 1  sin 1 0 0 
 sin  cos 1 0 0 
0  1
(2.15)
1T 
 0 0 1 0
 
 0 0 0 1

 cos  2  sin  2 0 0
 0 0 1 d 2 
1
T   (2.16)
2
  sin  2  cos  2 0 0
 
 0 0 0 1

cos 3  sin 3 0 a2 
 sin  cos 3 0 0 
2  3
(2.17)
3T 
 0 0 1 0
 
 0 0 0 1

 cos  4  sin  4 0 a3 
 0 0 1 d 4 
3
T   (2.18)
4
 -sin  4 - cos  4 0 0
 
 0 0 0 1

 cos  5  sin  5 0 0
 0 0 -1 0
4  (2.19)
5T 
 sin  5 cos  5 0 0
 
 0 0 0 1

 cos  6  sin  6 0 0
 0 0 1 0 
5
T   (2.20)
6
 -sin  6 - cos  6 0 0
 
 0 0 0 1

六自由度工业机器人末端执行器的位置和姿态矩阵,可由上式(2.15)-(2.20)连续右乘
获得,如式(2.21)所示:

16
第二章 工业机器人建模与运动学分析

 nx ox ax px 
n oy ay p y 
0 0 1 2 3 4 5  y (2.21)
6T = 1T 2T 3T 4T 5T 6T =
 nz oz az pz 
 
0 0 0 1

式(2.21)中,各元素为:

nx  [(cos  4  cos  5  cos  6  sin  4  sin  6 )  cos( 2   3 )  sin  5  cos  6 *sin( 2   3 )]  cos 1
 (sin  4  cos  5  cos  6  cos  4  sin  6 )  sin 1

ny  [(cos  4  cos 5  cos 6  sin  4  sin 6 )  cos( 2  3 )  sin 5  cos 6 *sin( 2  3 )]  sin 1
 (sin  4  cos 5  cos 6  cos  4  sin 6 )  cos 1

nz  (cos  4  cos 5  cos 6  sin  4  sin 6 )  sin( 2  3 )  sin 5  sin 6  cos( 2  3 )

ox  [( cos  4  cos 5  sin 6  sin  4  cos 6 )  cos( 2  3 )  sin 5  sin 6  sin( 2  3 )]  cos 1
 ( sin  4  cos 5  sin 6  cos  4  cos 6 )  sin 1

o y  [( cos  4  cos  5  cos  6  sin  4  cos  6 )  cos( 2   3 )  sin  5  sin  6  sin( 2   3 )]  sin 1
 (sin  4  cos  5  sin  6  cos  4  cos  6 )  cos 1

oz  (cos  4  cos 5  sin 6  sin  4  cos 6 )  sin( 2  3 )  sin 5  sin 6  cos( 2  3 )

ax   cos 1  cos  4  sin 5  cos( 2  3 )  cos 1  cos 5  sin( 2  3 )  sin 1  sin  4  sin 5

a y   sin 1  cos  4  sin  5  cos( 2   3 )  sin 1  cos  5  sin( 2   3 )  cos 1  sin  4  sin  5

az  cos4  sin 5  sin(2  3 )  cos5  cos(2  3 )

px  a2  cos 1  cos  2  a3  cos 1  cos( 2  3 )  d 4  cos   sin( 2  3 )  d 2  sin 1

p y  a2  sin 1  cos 2  a3  sin 1  cos(2  3 )  d 4  sin 1  sin(2  3 )  d 2  cos 1

pz  a3  sin(2  3 )  a2  sin 2  d4  cos(2  3 )

2.4.2 逆运动学
逆运动学计算过程与 2.4.1 节计算过程正好对逆,是在已知位置和姿态齐次矩阵情
况下,反算每一关节所要到达的位置,相对于正向运动学,逆运动学计算相对复杂,且
容易出现无解、多解和无穷解的情况[53]。
计算方法主要包含:代数法、几何法和数值法等。由于 PUMA560 机器人满足 Pieper
准则,可以利用代数法求其封闭解。
由 2.4.1 小节推导的正向运动学公式,即式(2.21),推导出各个关节的角度。推导过

17
南京信息工程大学硕士专业学位论文

程如下所示:

(1) 1 ,关节 1 的角度

式(2.21)两边同时乘以 01T 1 ,如式(2.22)所示:

0 1 0
1 T6 T = 01T 1 01T 21T 23T 34T 45T 56T = 61T (2.22)
即可得,如式(2.23)所示:
 cos 1 sin 1 0 0   nx ox ax px 
  sin  cos 1 0 0   n y oy ay p y  1
 1
 6T (2.23)
 0 0 1 0   nz oz az pz 
  
 0 0 0 1  0 0 0 1

式(2.23)中,各元素为:
1
6 x n  (cos 4  cos 5  cos 6  sin 4  sin 6 )  cos(2  3 )  sin 5  cos 6 *sin(2  3 )

1
6 y n  (sin  4  cos  5  cos  6  cos  4  sin  6 )

1
6 z n  (cos 4  cos 5  cos 6  sin 4  sin 6 )  sin(2  3 )  sin 5  sin 6  cos(2  3 )

1
o  ( cos 4  cos 5  sin 6  sin 4  sin 6 )  cos(2  3 )  sin 5  sin 6  sin(2  3 )
6 x

1
o  sin  4  cos  5  sin  6  cos  4  cos  6
6 y

1
o  (cos 4  cos 5  sin 6  sin 4  cos 6 )  sin(2  3 )  sin 5  sin 6  cos(2  3 )
6 z

1
6 x a   cos4  sin 5  cos(2  3 )  cos5  sin(2  3 )
1
6 a y  sin  4  sin  5

1
6 z a  cos4  sin 5  sin(2  3 )  cos5  cos(2  3 )

1
6 px  a2  cos2  a3  cos(2  3 )  d4  cos *sin(2  3 )
1
6 py  d2

1
6 pz  a3  sin(2  3 )  a2  sin 2  d4  cos(2  3 )

式(2.23)中,左侧和右侧矩阵的(2,4)对应元素相等,如式(2.24)所示:

 px  sin 1  py  cos1  d2 (2.24)

式 (2.24) 中 , 令 px   cos  和 py   sin  , 对 px 和 p y 进 行 三 角 等 效 代 换 , 其 中

18
第二章 工业机器人建模与运动学分析

 p x2  p y2 ,   arctan 2( px , py ) ,带入式(2.24)可得式(2.25):

1 =arctan2(p x ,p y )-arctan2(d 2 ,  p x2  p y2  d 22 ) (2.25)

由式(2.25)可以解出 1 的值(存在正负两解情况)。

(2) 3 ,关节 3 的角度

确定 1 后即可求解 3 ,式(2.23)中左侧矩阵和右侧矩阵中(1,4)和(3,4)所对应元素相等,

如式(2.24)所示:

 px  cos 1  p y  sin 1  a2  cos  2  a3  cos( 2  3 )  d 4  sin( 2  3 )


 (2.26)
 pz  a3  sin( 2  3 )  a2  sin  2  d 4  cos( 2  3 )

根据式(2.26)可求 3 值,如式(2.27)所示:

3 =arctan2(a3 ,d4 )  -arctan2(k ,  a32  d42  k 2 ) (2.27)

其中 3 依然存在正负两种解的可能。

(3) 2 ,关节 2 的角度

在式(2.22)的基础上分别左侧和右侧分别左乘 23T 1 21T 1 ,如式(2.28)所示:

2 1 1
T
3 2T 1 01T 1 06T = 23T 1 21T 1 01T 1 01T 21T 23T 34T 45T 56T = 36T (2.28)

式(2.28)中,左边和右边矩阵(1,4)和(2,4)所对应元素相等,如式(2.29)所示:
a3  px  cos 1  cos( 2  3 )  p y  sin 1  cos( 2  3 )  pz  sin( 2  3 )  a2  cos 3
 (2.29)
d 4   px  cos 1  sin( 2  3 )  p y  sin 1  sin( 2  3 )  pz  cos( 2  3 )  a2  sin 3

对式(2.29)进行化简可得  2  3 之和,如式(2.30)所示:

 2  3  arctan 2[ pz  (a3  a3 cos 3 )  ( px  cos 1  p y  sin 1 )(d 4  a2  sin 3 ),


(2.30)
pz  (a2  sin  3  d 4 )  (a3  a2  cos  3 )( px  cos 1  p y  sin 1 )]

由式(2.30)可得 2 ,如式(2.31)所示:

 2   2 +3   3 (2.31)

因为 1 可能存在正负两个解, 3 也可能存在正负两个解,所以将导致 2 可能存在 4

种解的可能性。

19
南京信息工程大学硕士专业学位论文

(4) 4 ,关节 4 角度

在式(2.28)中,左侧和右侧矩阵的(1,3)和(3,3)对应元素相等,如式(2.32)所示:
cos  4  sin 5  ax  cos 1  cos( 2  3 )  a y  sin 1  cos( 2  3 )  az  sin( 2  3 )
 (2.32)
sin  4  sin 5  ax  sin 1  a y  cos 1

当 sin 5 为零时,此时第五关节将出现奇异形位。先选择 4 值,再求解 6 的值。当

sin 5 不为零的时可求 4 ,如式(2.33)所示:

 4  arctan 2( ax  sin 1  a y  cos 1 ,  ax  cos 1  cos( 2   3 )


(2.33)
 a y  sin 1  cos( 2   3 )  az  sin( 2   3 ))

(5) 5 ,关节 5 角度

式(2.28)中,左侧和右侧分别左乘 34T 1 得方程,如式(2.34)所示:

3
4T 1 23T 1 21T 1 01T 1 06T = 34T 1 23T 1 21T 1 01T 1 01T 21T 23T 34T 45T 56T = 46T (2.34)

式(2.34)中,两侧矩阵的(1,3)和(3.3)对应元素相同可得方程,如式(2.35)所示:

sin  5   ax  (cos 1  cos( 2   3 )  cos  4  sin 1  sin  4 )



  a y  (cos 1  cos( 2   3 )  cos  4  cos 1  sin  4 )
 (2.35)
  az  (sin( 2   3 )  cos  4 )
cos  5   ax  cos 1  sin( 2   3 )  a y  sin 1  sin( 2   3 )  az  cos( 2   3 )

由式(2.35)可求解 5 值,如式(2.36)所示:

5  arctan(sin 5 ,cos5 ) (2.36)

(6) 6 ,关节 6 角度

同理,在式(2.33)的基础上,左右两侧各左乘 45T 1 可得方程,如式(2.37)所示:

4 1 3
5T 4T 1 23T 1 21T 1 01T 1 06T = 45T 1 34T 1 23T 1 21T 1 01T 1 01T 21T 23T 34T 45T 56T = 56T (2.37)

式(2.35)中,左侧和右侧矩阵的(3,1)和(1,1)元素相等可得方程,如式(2.38)所示:

sin  6   nx (cos 1 cos( 2  3 ) sin  4  sin 1 cos  4 )  n y (sin 1 cos( 2  3 ) sin  4



  cos 1 cos  4 )  nz (sin( 2  3 ) sin  4 )

cos  6  nx [cos 5 (cos 1 cos( 2  3 ) cos  4  sin 1 sin  4 )  cos 1 sin( 2  3 ) sin 5 ] (2.38)
  n y [(sin 1 cos( 2  3 ) cos  4  cos 1 sin  4 ) cos 5  sin 1 sin( 2  3 ) sin 5 ]

  nz (sin( 2  3 ) cos  4 sin 5  cos( 2  3 ) sin 5 )

20
第二章 工业机器人建模以及运动学分析

根据式(2.35)可求解 6 值,如式(2.39)所示:

6  arctan 2(sin 6 ,cos6 ) (2.39)

至此 8 组关节角解毕,此过程即为逆运动学求解过程,但并非全部符合要求,根据
每个关节约束范围以及工作环境,最后确定最优解。其中八组关节角度所对应关系,如
式(2.40)所示。

   41  51  61
 31   21 
   42  52  62
 11    53  63
 32   22  43
   44  54  64
 (2.40)
   45  55  65
  33   23 

11   46  56  66
   47  57  67
 34   24 
   48  58  67

2.4.3 数值仿真
按照正逆运动学推导过程,在 MATLAB 中进行数值验证。选取表 2.3 中第一列数
据(弧度制),如表 2.4 所示,作为输入,求解末端执行器的齐次位姿矩阵。
表 2.4 正运动学关节角度

关节号 1 2 3 4 5 6

角度(rad) 0.5821 0.1288 2.2789 0 0.6817 -0.8144

通过正运动学得到末端执行的齐次位姿矩阵如式(2.41)所示:
 0.9724 0.2294 0.0436 0.2143
 0.2307 0.9726 -0.0287 0.141 
0   (2.41)
6T 
 0.0358 0.0379 0.9986 0.3037 
 
 0 0 0 1 

由式(2.41)可知,末端执行器在笛卡尔空间中的位置和姿态。相反根据数值仿真求取
的齐次位姿矩阵反求各个关节的关节角度(弧度制),如表 2.5 所示。
表 2.5 逆运动学求解

解\关节 1 2 3 4 5 6

1 0.5819 -2.7766 1.2697 -3.1416 1.6868 2.3273

2 0.5819 -2.7766 1.2697 0 -1.6868 -0.8142

21
南京信息工程大学硕士专业学位论文

续表 2.5

3 0.5819 0.1287 2.2789 0 0.6817 -0.8142

4 0.5819 0.1287 2.2789 3.1415 -0.6817 2.3273

5 -2.5596 2.5457 0.8929 3.1415 0.2448 -0.8142

6 -2.5596 2.5457 0.8929 0 -0.2447 2.3274

7 -2.5596 -1.3299 2.6557 0 1.8681 2.3273

8 -2.5596 -1.3299 2.6557 -3.1415 -1.8681 -0.8142

保留 MATLAB 仿真计算结果后四位,通过正运动学求解出末端执行器的齐次位姿
矩阵,再利用逆运动学反算每一关节所要到达的角度。求解出 8 组关节角度,并非所有
关节角度都在约束范围内,其中第三组解与给定的关节角度最为相近,但存在误差,这
是由于计算机计算位数限制导致的。综上,仿真结果证明本章正逆运动学推导的正确性。

2.5 本章小结
本章首先介绍运动学数学基础:三维空间中刚体的位姿数学表示、坐标系变换以及
齐次矩阵变换。以 PUMA560 六自由度工业机器人为研究对象,通过 D-H 建模建立机器
人数学模型,根据 D-H 参数表,通过正向运动学详细推导出末端执行器的齐次位姿矩阵,
根据位姿矩阵通过逆运动学反算各个关节角度;在 MATLAB 中安装并使用 Robotics
Toolbox 给出各个关键点的位姿表示,通过数值仿真验算证明推导的准确无误,并给出
所有逆解的可能性。

22
第三章 工业机器人轨迹规划

第三章 工业机器人轨迹规划

3.1 引言
轨迹是指整个运动过程中的位移、速度和加速度曲线,根据作业情况规划出满足工
作要求的轨迹即为轨迹规划[54]。轨迹规划目的在于使位移、速度和加速度变换成关于时
间的函数,通过此函数可以得知机器人任意时刻下的位姿信息。在工业机器人运动过程
中,平滑性是必须要保证的,否则将带来冲击和抖动致使机械磨损同时影响作业精度,
所以此函数必须是连续的,对于要求更高的场景往往还需要其一阶、二阶甚至三阶导数
也必须是光滑连续的。

3.2 笛卡尔空间轨迹规划
在有特定路径要求的场景中,例如避障和绘画等连续路径(Continuous Path,简称
CP)的工作场景中,一定是在笛卡尔空间进行轨迹规划,常见的轨迹规划方法有直线插
补和空间圆弧插补[55]。其原理为:首先进行示教给出关键点位姿,在关键点之间运用插
补算法进行插补,通过逆运动学将位姿映射成关节角度,通过关节控制器使末端按照特
定的路径进行运动。
3.2.1 直线插补

已知空间中两点,记 Pstart 和 Pend ,如图 3.1 所示。假设从点 Pstart ( xstart , ystart , zstart ) 沿直

线运动到点 Pend ( xend , yend , zend ) ,在两点之间进行离散化处理,计算出每次插补的位置和

姿态。一般情况下默认姿态保持不变,仅对位置进行插补。

图 3.1 空间直线

根据 Eucliden Distance 公式可得三维空间中任意两点之间的距离,通式如式(3.1)所

23
南京信息工程大学硕士专业学位论文

示:

L  ( xstart  xend ) 2  ( ystart  yend ) 2  ( z start  zend ) 2 (3.1)


若末端执行器的运动速度为 v ,插补周期为 T ,插补步长为 L  vT 。插补次数如式
(3.2)所示:

N  ( L / L)  1 (3.2)

插补增量如式(3.3)所示:

 x  ( xstart  xend ) / N

 y  ( y start  yend ) / N (3.3)
 z  ( z  z ) / N
 start end

则每次插补的位置如式(3.4)所示:

 xi 1  xi  ix

 yi 1  yi  iy (i  0,1, , N ) (3.4)
 z  z  i z
 i 1 i

利用 MATLAB 进行仿真验证,假设开始和结束的路径点为第二章中路径关键点 1
和路径关键点 2,通过第二章的正向运动学运动推导公式可以得到末端执行器的齐次位
姿矩阵。假设仅仅对位置进行插补,位姿保持不变,所以只需要得到在三维空间中给定

两点坐标 p1 (0.021,0.192,0.253) 和 p2 (0.039,0.167,0.42) ,选取插补次数为 60 次,验证结

果如图 3.2 所示。

图 3.2 直线插补

24
第三章 工业机器人轨迹规划

3.2.2 圆弧插补

已知在三维空间中存在着任意三个位置点 Pstart ( xstart , ystart , zstart ) 、 Pmid ( xmid , ymid , zmid )

和 Pend ( xend , yend , zend ) ,如图 3.3 所示。假设此三点即为机器人末端执行器依次需要走过

的关键路径点。

图 3.3 空间圆

确定圆心和半径,由平面向量基底可知,任意非零且不共线的两个向量:Pstart Pmid 和

Pstart Pend 可以表示平面上任意向量 OPstart ,如式(3.5)所示:

Pstart O  xPstart Pmid  y Pstart Pend , x, y  R (3.5)

由式(3.5)和(3.6)联立可得,如式(3.7)所示:

P O  P P  P P 2 / 2
 start start mid start mid
 2
(3.6)
 Pstart O  Pstart Pend  Pstart Pend / 2

x  P P 2  ( P P 2  P P  P P ) /
 start end start end start mid start end

 2 2
 [ Pstart Pmid  Pstart Pend  ( Pstart Pmid  Pstart Pend ) 2]  2
 2 2 2
(3.7)
 y  ( Pstart Pmid  Pstart Pmid  Pstart Pend  Pstart Pmid  Pstart Pend ) /

 2 2 2
( Pstart Pmid  Pstart Pend  Pstart Pmid  Pstart Pend )  2
2



将式(3.7)带入式(3.5)计算出圆心,如式(3.8)所示:

ox  xstart  x ( xmid  xstart )  y ( xend  xstart )



o y  ystart  x ( ymid  ystart )  y ( yend  ystart ) (3.8)
o  z  x ( z  z )  y ( z  z )
 z start mid start end start

25
南京信息工程大学硕士专业学位论文

由圆心坐标和圆上任意已知一点可得半径,如式(3.9)所示:

r  (ox  xstart ) 2  (o y  y start ) 2  (oz  z start ) 2 (3.9)

计算总的圆心角度记为 all ,结果如式(3.10)所示:

 all  arccos(OPstart  OPmid / r 2 )  arccos(OPmid  OPend / r 2 ) (3.10)

插值点位置计算,假设插值点位置为 Pi ,插补点的圆心角为 i ,同理可得方程,如

式(3.11)所示:

OPi  xOPstart  yOPend



OPstart  OPi  r cos  i
2
(3.11)

OPstart  OPend  r cos 
2

求解方程(3.11)可得参数,结果如式(3.12)所示:

 x  sin  i / sin 
 (3.12)
 y  sin(   i ) / sin 

将式(3.12)计算结果带入式(3.11)可得插补点坐标,结果如式(3.13)所示:

 px  x0  x( xstart  x0 )  y ( xend  x0 )

 p y  y0  x( ystart  y0 )  y ( yend  y0 ) (3.13)
 p  z  x( z  z )  y ( z  z )
 z 0 start 0 end 0

利用 MATLAB 进行仿真验证,采用第二章中的关键点 1、关键点 2 和关键点 3,通

过正向运动学可得三维坐标系下三点为:p1 (0.021,0.192,0.253) 、p2 (0.039,0.167,0.42) 和

p3 (0.132,0.074,0.544) ,圆弧插补验证结果如图 3.4 所示。

图 3.4 圆弧插补

26
第三章 工业机器人轨迹规划

3.3 关节空间轨迹规划
对于无特定路径要求的点到点运动(Point To Point,简称 PTP),常在关节空间进行
轨迹规划。常使用的拟合函数有:多项式函数、B 样条函数等[47,52,53]。其原理为:首先
根据事先设定的关键点,通过反算得到每一关节与其所对应的角度,采用某种高次连续
光滑且可导的函数进行拟合,同样必须保证运动曲线无断点、无跳变和光滑。
3.3.1 多项式插值
多项式插值函数的通式,如式(3.14)所示:

  a0  a1t  a2t 2  a3t 3    ant n (3.14)

式(3.14)中,参数 a0 a1 a2 an 为系数,未知数 t 是时间,参数 n 为次数,一般情况下函数

的次数选取为三次、五次甚至七次。
(1) 三次多项式插值
当对工业机器人运动要求不高的场景中,一般采用三次多项式插值法,即 n  3 ,如
式(3.15)所示:

  a0  a1t  a2t 2  a3t 3 (3.15)

式(3.15)中,包含四个未知系数,需列出四组方程求解。已知开始处的关节角度为 start 和

停止处的关节角度为 end ,开始时刻的关节角速度为 start 和停止时刻的关节角速度为

end 。可以获得对应四组方程,如式(3.16)所示:

 (tstart )  a0  a1tstart  a2tstart 2  a3tstart 3   start



 (tend )  a0  a1tend  a2tend  a3tend   end
2 3

 ' (3.16)
 (tstart )  a1tstart  2a2tstart  3a3tstart  start
2

 ' (tend )  a1tend  2a2tend  3a3tend 2  end

通过式(3.16)所示的四组方程可以求解出四个未知参数,四个参数计算通式如式
(3.17)所示:
 a0   start
a  
 1 start
 (3.17)
 a2  (3*( end   start ) / t end )  (2start / t end )  end / t end
2

 a3  (2*( end   start ) / t end


3
)  (start  end ) / t end

只需给定边界条件就可以拟合出关节轨迹。

27
南京信息工程大学硕士专业学位论文

(2) 五次多项式插值
当 n  5 时通式,如式(3.18)所示:

  a0  a1t  a2t 2  a3t 3  a4t 4  a5t 5 (3.18)

式(3.18)中,需求解六个未知系数,则需列出六组方程进行求解。仅需在三次多项式的

基础上加入开始和结束时刻的角加速度 astart 和 aend 。可获得六组方程,只需对方程求解

即可,六组方程如式(3.19)所示:

 (t start )  a0  a1t start  a2t start 2  a3t start 3  a4t start 4  a5t start 5   start

 (tend )  a0  a1tend  a2tend  a3tend  a4tend  a5tend   end
2 3 4 5

 ' (t start )  a1  2a2t start  3a3t start 2  4a4t start 3  5a5t start 4  start
 ' (3.19)
 (tend )  a1  2a2 tend  3a3tend  4a4tend  5a5tend  end
2 3 4

 '' (t start )  2a2  6a3t start 2  12a4t start 2  20a5t start 3  astart
 ''
 (tend )  2a2  6a3tend  12a4tend  20a5tend  aend
2 2 3

联立(3.19)可得六个未知数的通解,如式(3.20)所示:

 a0   start
a  
 1 start

 a2  a0 / 2
 (3.20)
 a3  (20 end  20 start  8end t end  12startt end  3a startt end  aend t end ) / 2t end
2 2 3

 a4  (30 end  30 start  14end t end  16startt end  3a startt end 2 2
 2aend t end 4
) / 2t end

 a5  (12 end  12 start  6end t e nd  6start tend  3astart tend  aend tend ) / 2tend
2 2 5

至此五次多项式关节空间插值法参数推导结束,同样只要设置边界条件就可以求解
全部参数。和(1)中插值法对比,其所需要的边界条件更多,同样计算复杂度更高。如果
想要获取更优秀的轨迹必须提高多项式的次数,必须增加边界约束条件,如七次多项式
还需补充开始和结束时刻角加加速度约束,在此不过多赘述。
3.3.2 非均匀 B 样条插值
Bezier 曲线是由法国工程师 Pierre·Bezier 所提出,具备几何不变性、仿射不变性等
优点[56]。因为 B 样条曲线是由 Bezier 曲线进化而来,所以除拥有 Bezier 曲线的优点之
外,还拥有局部性的特点,即改变一个控制顶点不会对整体造成影响,只会对一段曲线
造成改变[57]。B 样条曲线又分成均匀 B 样条和非均匀 B 样条曲线,两者的区别在于前
者的首端和末端的控制点与首端和末端的端点不可以重合,而后者非均匀 B 样条曲线是
可以重合[57]。
在关节空间中采取非均匀 B 样条曲线对关节轨迹进行插值拟合。第 j 关节第 i 段 k 次

28
第三章 工业机器人轨迹规划

非均匀 B 样条曲线的通式如式(3.21)所示[57]:

i
p(u )  dB
r i  k
j r ,k (u ), u  [ui , ui 1 ] (3.21)

式(3.21)中, U 为节点矢量,由多个节点 ui 构成; k 为 B 样条次数,为了获取连续的角

加加速度曲线, k 的次数最少为 4,因此本文选取次数为 5; d j 为控制顶点,控制顶点

个数与路径点关系为:对于 n 个路径点可以组成 n  1 段轨迹,则控制顶点个数为 n  1  k ,

控制顶点可由路径点和边界条件进行反求; Br ,k (u ) 为基函数,由德布尔递推公式求出,

德布尔递推公式如式(3.22)所示[58]:
 1, u  [ui , ui 1 ]
 Bi ,0 (u )  
 0, u  [ui , ui 1 ] (3.22)
 B (u )  [(u  u ) B (u ) / (u  u )]  [(u
 i ,k i i , k 1 ik i i  k 1  u ) Bi 1, k 1 (u ) / (ui  k 1  ui 1 )]

由于 B 样条曲线具有局部支撑性,即基函数 Bi ,k (u) 只在其对应的节点区间 [ui , ui  k 1 ]

有效,在非此区间都为零[48]。节点个数为 k  2 ,控制顶点的个数为 n  1  k ,则对应基


函个数为 n  1  k 。为使 B 样条曲线可以通过首末端位置点,需要定义节点重复度,即

u1  u2  u3    uk 1  0 和 unk  unk +1  unk 2    um2k  1。只需求取内节点的值,便

可以确定所有的节点矢量 U  [u1 , u2 , u3 ,, um2k ] 。内节点值可以先对时间节点进行归一

化处理,之后利用累计弦长参数法根据归一化时间量确定每个内节点值,内节点求解过
程如式(3.23)所示[57-58]:

ui k 1  ui k  (hi 1  hi ) / total (h), i  1,, n  2 (3.23)

式(3.23)中, hi 为时间序列,时间序列为 T  [h1 , h2 , h3 ,, hn ] 。

本文取 k  5 ,为了反求 n  4 个控制点,必要 n  4 个方程。 n  4 个方程中 n 个方程


可以由路径点给出,如式(3.24)所示:
i 5
p(ui 5 )   d j Br ,5 (u )  Pij (3.24)
r i

式(3.24)中, Pij 表示第 i 个路径点第 j 关节的关节角度。

剩余的方程可由边界约束条件给出即为开始和结束时刻的角速度、角加速度、而角
速度、角加速度和角加加速度公式可以通过对轨迹函数的一次、二次和三次求导得到,

29
南京信息工程大学硕士专业学位论文

为对运动曲线进行详细的分析,需求式(3.24)的 n 次导数,如式(3.25)所示:
i
p ( n ) (u )  
r i  k  n
d ( n ) j Br ,k (u ), u  [ui , ui 1 ] (3.25)

式(3.25)中, d ( n ) j 求解如式(3.26)所示:

d j , n  0
d (n) j   n 1 n 1 (3.26)
 ( k  1  n )( d j 1  d j ) / (u j  k 1 n  u j ), j  i  k  n, i n  1, 2, , n

四个边界条件为开始时刻、结束时刻的速度、加速度: startj 、 endj 、 astartj 和 aendj ,

如式(3.27)所示:
 ' 6

 p ( u 6 )   d ' j Br ,4 (u6 ) / total (h) startj


 r 2

 ' n4

 p (u6 )   d j Br ,4 (un 5 ) / total (h) endj


'

 r n
 6
(3.27)
 p '' (u )  d '' B (u ) / total 2 (h) a
 6 
r 3
j r ,3 6 ednj

 n4
 p '' (u )  d '' B (u ) / total 2 (h) a
 n 5 
r n
j r ,3 m 5 endj

则根据路径点和边界约束条件列出矩阵方程,如式(3.28)所示:

BN d  P (3.28)

式(3.28)中, BN 为方程的系数矩阵,反解得到控制点,根据式(3.24)依次拟合给定的关节

路径点得到每个关节运动位移曲线,根据式(3.25)对其求导获取一阶、二阶和三阶导数,
便可获取对应关节的运动曲线。

3.4 关节轨迹仿真对比
运用 MATLAB 编程进行仿真,并根据仿真结果对比上述规划算法下关节的运动曲
线,采用第二章给定的关节路径点(已换算成角度制),以第一关节为仿真对象分别采用
三次多项式函数、五次多项式函数和五次非均匀 B 样条函数在关节空间中进行插值拟合,
设定开始时刻和结束时刻的角速度和加速度都为零,给定每个路径点之间时间间隔为 2s。
关节 1 的角位移、角速度和角加速度随设置时间变化曲线,如图 3.5-3.6 所示。

30
第三章 工业机器人轨迹规划

(a) 角位移曲线

(b) 角速度曲线

(c) 角加速度曲线

图 3.5 多项式插值轨迹

31
南京信息工程大学硕士专业学位论文

(a) 角位移曲线 (b) 角速度曲线

(c) 角加速度曲线 (d) 角加加速度曲线

图 3.6 五次非均匀 B 样条插值轨迹

从图 3.6 可以看出五次非均匀 B 样条曲线角位移变化率较小,角速度和角加速度曲


线光滑且无跳变。启停时刻角速度、角加速度都为零,角加加速度曲线连续光滑且无跳
变,工业机器人在启动和停止时平稳、机械共振较小,有利于延长机器人的使用年限。
图 3.5 中虚线和实线分别代表三次和五次多项式插值函数函数,所获取的关节轨迹。从
图 3.5 中可以看出三次多项式的角加速度曲线出现跳变(以开始时刻为例,从零跳变至某
一正值)情况,三次多项式的三阶导数为常数,即角加加速度曲线为常数必不能可连续,
将会造成严重的机械抖动。五次多项式的角加速度曲线连续并没有出现跳变问题,同样
轨迹的三阶导数,即角加加速度为二次抛物线函数可能会出现不连续情况,相对于三次
多项式整个运动过程的平均角速度更高。但是要获得更优秀的曲线,多项式次数必须更
高,这意味着计算复杂度更高。综上,本文采取五次非平均 B 样条曲线在关节空间进行
插值拟合。

32
第三章 工业机器人轨迹规划

3.5 本章小结
本章主要研究工业机器人在笛卡尔空间中直线插补、圆弧插补算法和关节空间的规
划方法,给出关节空间中多项式和五次非均匀 B 样条轨迹规划方法详细推导过程,并且
对于给定关键点,通过逆运动学得到关节角度,在 MATLAB 中编写程序进行仿真,在
上述规划方法下得到各个关节的运动曲线,通过对比确定本文所采用的轨迹规划方法。

33
南京信息工程大学硕士专业学位论文

第四章 改进的自适应遗传模拟退火算法

4.1 引言
为获取某一指标下最优轨迹,需要对第三章已规划好的轨迹进行优化。工业机器人
轨迹优化是复杂的非线性优化问题,一般使用优化算法进行寻优。遗传算法和模拟退火
算法常常用于解决不同类型的大型组合优化场景,并且在各个领域得到广泛的应用。但
是遗传算法和模拟退火算法本身也存在不足,例如:局部感知搜索较差等,模拟退火算
法对于整个搜索空间感知较差等[60-61]。本章针对遗传算法和模拟退火算法做出介绍并对
遗传算法存在的不足做出改进,在此基础之上引入模拟退火算法,通过测试函数对改进
算法进行仿真测试,以验证其搜索能力和精度。

4.2 遗传算法与模拟退火算法
4.2.1 遗传算法
遗传算法(Genetic Algirithm,简称 GA)是一种元启发式搜索算法,模拟生物种群的
竞争生存、种群繁殖和变异的历程。它的概念最早出现在 1967 年,由 Bagley 提出并运
用在博弈论中,1980 年后得到推广,被广泛运用在自动控制、图像处理和机器人轨迹与
路径优化等规划工程中。它的核心要素包括:编码映射、选择操作、交叉操作和变异操
作,在解空间内生成一系列的初始解(染色体,即个体),通过某类编码方式将初始解映
射到遗传空间形成种群,选择操作由相应的算子按照适应度评估函数值(用于评估种群
中染色体优劣,即解的优异程度),通过不同方式筛选优秀个体(用于模拟自然选择过程),
再根据交叉概率,依据所设计的算子生成新的个体(用于模拟生物种群繁衍过程),对种
群中个体依照变异概率,根据所设计的算子进行变异操作(用于模拟生物个体的基因突
变过程),通过相应次数的迭代在搜索空间内搜索目标函数最优解[60]。
遗传算法本身特性使其具备天然的并行性以及优秀的全局搜索能力,但是遗传算法
对于局部搜索表现较为乏力,在迭代末期容易出现搜索效率低的情况,导致算法难以收
敛或者陷入局部解的可能性[59]。交叉概率和变异概率等关键参数的设定对遗传算法寻优
表现起到举足轻重的作用,适当的交叉概率和变异概率不仅可以加速种群的进化,提升
算法的搜索能力,同时为算法的收敛提供保障,以及增强算法跳出局部最优解的可能性。
虽然前人在此基础上做出许多改进,但是算法的基础形式是不变的,算法的一般流
程如图 4.1 所示。

34
第四章 改进的自适应遗传模拟退火算法

图 4.1 标准的遗传算法

4.2.2 模拟退火算法
模拟退火算法(Simulated Annealing,简称 SA)也是一类元启发式搜索算法,起源于
退火金属中晶体振动的现象,即在物理退火过程中,固体缓慢冷却,直到其内部原子重
新定位,变成具有低能量的状态[60]。Metropolis 等人于 1953 年揭示算法关键部分,之后
Kirkpatrick 等人对其进行补充,并提出完整的一套算法流程,算法一般流程:
(1) 设定冷却进度表包括:冷却开始值、减退函数、冷却终止值和 Markov 链长度;
(2) 建立优化问题的解映射关系、目标函数以及初始解;
(3) 新解的产生与接收:按照 Metropolis 准则接收新解同时 Metropolis 准则也符合
Gibbs 分布;
(4) 每一温度下以 Markov 长度进行(3)操作,冷却操作;
(5) 重复(2)-(4)操作,直到冷却结束。
算法流程图如图 4.2 所示。

35
南京信息工程大学硕士专业学位论文

图 4.2 模拟退火算法

4.3 遗传算法的分析与改进
遗传算法凭借其优点在各类场景中得到广泛运用,但是其自身仍然存在不足。针对
其有待改进之处,本文对传统遗传算法以及在前人改进的基础上做出进一步改进,对算
法进一步优化。
4.3.1 编码方式
通过某种映射方式将待优化问题的变量转换成染色体 (染色体的分量为基因,即变
量的分量)的过程,即编码过程[62]。不同的编码形式对之后的交叉算子和变异算子的设
计起到深远的影响,同样也对变量的精度、复杂度以及算法的效率起到至关重要的作用。
所以根据待优化问题的类型选取相应的编码方式是首要思考的问题。常见的编码方式主
要包括[51]如下两种:

36
第四章 改进的自适应遗传模拟退火算法

(1) 二进制编码
作为最基本的编码方式,如同人类的基因有 AGCT 四种碱基组成类似,但是此种编
码方式只有 0 和 1 组成。所以必须要经过解码过程,才能将染色体映射成变量,存在着
转换误差。染色体的每一个位,即基因,能表示两种状态信息,所以只要染色体足够长
便可以表现所有特征。如果需要更高精度,染色体必须要到达指定长度,否则将降低解
的精确性。因为此编码方式较为简单,所以交叉和变异算子易于设计,并且最重要的是
可以采用模式定理对其分析。
(2) 实数编码(浮点编码)
由于(1)中解的精确性受到染色体长度的影响,过短,容易使变量的精确性受到影响;
过长,使交叉和变异操作计算量增加,耗费存储空间,算法的计算复杂度增加。而实数
编码,即浮点编码,染色体每位基因都是直接由实数组成,所以不涉及编码和解码的过
程[62],使得算法计算量减少且解的精度不再受到染色体长度的限制。例如,对于三维函

数的变量: [ x1 , x2 , x3 ] ,定义域: xi  [-1,1] ,实数编码为: [0.5,


0,0.5] 。

4.3.2 选择操作
首先由适应度评估函数来评估每个染色体的优劣程度,接着依据所设计的选择方式
使评估函数值较高的染色体进行之后的操作或直接进入下一代。
常见的选择操作有[63-64]:
(1) 轮盘赌选择。此方法关键思路在于染色体被选出的概率和它的适应度评估函数
值大小正相关[63]。操作方法按照染色体的适应度评估函数值与当代种群适应度评估函数
值总和的比例进行选择,这就意味即使染色体的适应度评估函数值很高也存在被淘汰的
风险,适应度评估函数值高仅意味着被淘汰的可能性小,因此存在随机的可能性。
(2) 锦标赛选择。每次从种群中任意取出一定数量的染色体,所有染色体被选中概
率相同。根据其适应度评估函数值大小,选择其中适应度评估函数值最大的染色体进行
下一步操作或者直接成为子代的一部分,重复以上操作。相对选择方式(1),此选择操作
可以通用于求解目标函数最大值或者最小值情况,不需要进行适应度函数转换。
4.3.3 自适应交叉与变异操作
交叉操作和变异操作是算法最重要的一部分,模拟物种群体繁衍、进化和变异的过
程,也是其能够进化的原因。交叉操作和变异操作主要由两部分组成:交叉概率和变异

概率:Pc 和 Pm 以及交叉算子和变异算子[63-64]。通过选择操作选出的染色体以交叉概率 P c

37
南京信息工程大学硕士专业学位论文

判断能否通过所设计的算子进行相应的交叉操作。交叉操作执行完毕后,按照变异概率

P c 判断能否通过所设计的算子进行相应的变异操作。在过去几十年里,如何设计交叉

概率、变异概率以及构造交叉、变异算子使算法有更出色的表现,成为学者们研究的热
点[66]。在下文先讨论上述这些参数选择对算法造成的影响,以及给出本文所设计的自适
应交叉、变异概率。

交叉概率 P c 决定父代染色体是否参与交叉操作,如果 P c 的值越大,参与交叉操作

的父代所产生子代的速度越快,即表示能搜索的空间就越大。如果交叉概率 P c 过大,

对于种群中适应度评估函数值较高(代表此染色体为优异解)的染色体存在被破坏的风险

就越大;同理,如果 P c 过小,难以拓展搜索空间,其搜索的空间就越小,容易造成过

早收敛[67]。如果 P m 的值越大,当算法陷入局部解时能尽快跳出,其值越大跳出的可能

性越大,但是过大,就沦为纯粹的随机搜索算法[68]。

在遗传算法中选择恰当的 Pc 和 Pm 概率的值是决定算法可否收敛的关键因素之一。

传统的遗传算法中 Pc 和 Pm 为固定值,对于优化过程这无疑是致命的。Srinivas M 等人对

于 Pc 和 Pm 的值为固定不变的情况做出自适应改进,其设计的自适应交叉概率和变异概

率如式(4.1)-(4.2)所示:
 k1 ( f max  f ' ) '
 , f  f avg
P c =  f max  f avg (4.1)
k , f '  f avg
 2
 k3 ( f max  f )
 , f  f avg
P m =  f max  f avg (4.2)
k , f '  f avg
 4
'
式(4.1)-(4.2)中, k1 、 k2 、 k3 和 k4 为给定系数; f 为将要交叉父代中适应度评估函数值

较大的染色体; fmax 表示种群内最大适应度评估函数值; favg 表示当前种群的平均适应

度评估函数值; f 表示将要变异染色体的适应度评估函数值。由上式(4.1)-(4.2)可知,只

要根据优化目标设置合适的参数 k1 、 k2 、 k3 和 k4 值,可以根据将要参与交叉或者变异操

作的染色体的适应度值,实现交叉概率 Pc 和变异概率 Pm 自适应改变。当 f ' 比 favg 大时,

38
第四章 改进的自适应遗传模拟退火算法

表示该染色体比较优秀,采取较小的 Pc 和 Pm ;当 f ' 比 favg 小时,表示该染色体比较差,

采取较大的 Pc 和 Pm 。这样相对较为优秀的染色体,被破坏的可能性减小。对于较差的

染色体,加速优质新染色体的产生。
'
虽然实现了交叉和变异概率自适应改变,但是对于 f 非常接近 fmax 或者极限情况

f ' = f max , P c 和 P m 将变的很小甚至为零。这有利于保护种群中优秀的染色体,但是如

果在开始时出现适应度值非常的高的染色体,即离群染色体,将致使算法极易陷入局部
解,这无疑是致命的。针对以上问题,任子武等人设计出如下一套新的交叉、变异概率
[57]
,如式(4.3)-(4.4)所示:
 ( Pc1  Pc 2 )( f '  f max ) '
P
 c1  , f  f avg
Pc= f max  f avg (4.3)
P , f '  f avf
 c1
 ( Pm1  Pm 2 )( f max  f ' ) '
P
 m1  , f  f avg
Pm=  f max  f avg (4.4)
P , f '  f avf
 m2
'
式(4.1)-(4.2)中, Pc1 、 Pc2 、 Pm1 和 Pm 2 为固定系数; f 表示要交叉或者变异操作中父代适

应度值较大的染色体; fmax 表示种群中最大适应度值; favg 表示当前种群的平均适应度

值; f 表示将变异染色体的适应度值。

4.3.4 交叉与变异操作改进

文献[68-69]中,所设计的 Pc 和 Pm 可以实现根据染色体适应度评估函数值自适应改

变,但是都为线性变化。线性变化会导致收敛速度过快,难以准确的搜索到最优解,早

期容易使种群陷入搜索到的局部最优解而停止不前。为此,本文对 Pc 和 Pm 做出如式

(4.5)-(4.6)的自适应改进:
 pc 0  pc 2 pc 0  pc 2 f '  f avg
  (1  tanh( )), f '  f avg
 2 2  (t )
pc   (4.5)
 pc 0  pc1 pc 0  pc1 f avg  f '
  (1  tanh( )), f '  f avg
 2 2  (t )

39
南京信息工程大学硕士专业学位论文

 pm 0  pm 2 pm 0  pm 2 f  f avg
  (1  tanh( )), f  f avg
 2 2  ( t)
pm   (4.6)
 pm 0  pm1  pm 0  pm1 (1  tanh( f avg  f )), f  f
 2 2  (t)
avg

式(4.5)-(4.6)中,  (t ) 为第 t 代种群适应度评估函数值的标准差,以此来评估种群的多样

性,降低离群个体对种群多样性造成影响。只需要选定好 pc 0 、 pc1 、 pm0 和 pm2 便可实现

Pc 和 Pm 概率的在线调控。

从式(4.5)-(4.6)可以看出双曲正切函数的引入必然造成交叉概率和变异概率的杂度
略有增加,但是交叉概率和变异概率为非线性调整,相较于式(4.1)-(4.4)更贴近种群的进
化特征。当染色体适应度评估函数值大于平均适应度值,表示该染色体优秀,采用较小

的 Pc 和 Pm ,使优秀染色体最大可能被保留避免淘汰,以确保算法能够迅速收敛。对于

染色体适应度评估函数值小于平均适应度评估函数值,表示该染色体低劣,采用较大的
Pc 和 Pm ,加快其淘汰。采用当代种群适应度评估函数值的标准差来评估种群多样性可

以解决最大适应度评估函数值为离群值的情况。对于较小适应度评估函数值的染色体,

其 Pc 和 Pm 的值得以提高,这使算法在初期不会处于停滞不前的状态,避免初期陷入局

部最优解而无法跳出。

4.4 改进的自适应遗传模拟退火算法流程
本文所改进的自适应遗传模拟退火算法步骤如下:
Step 1:初始算法参数:种群规模、迭代次数、编码映射形式、最大温度、最小温度
以及温度变更系数。
Step 2:设计适应度评估函数,用于评估染色体优劣程度。
Step 3:按照选择算子,参照适应度评估函数值选取函数值大的染色体,同时采用精
英保留策略,选出评估函数值最高的染色体保留到子代种群,避免最优秀染色体被淘汰。

Step 4:对 Step 3 选出的染色体,依照设计的 Pc 和所设计的交叉算子进行交叉操作,

构成下一代染色体。

Step 5:对 Step 4 中产生的子代,依照设计的 Pm 和所对应的变异算子进行变异操作。

Step 6:由 Step 3、Step 4 和 Step 5 共同组成新一代种群,并计算其适应度。

Step 8:比较新旧种群中相对应染色体的适应度值,若大于相对应染色体适应度值则
采纳为新解,小于则按照 Metropolis 准则接收新解。

40
第四章 改进的自适应遗传模拟退火算法

Step 9:更新种群后,根据系数进行退温操作。
Step 10:判断当前温度,若达到最低温度,则结束,输出最优解;若是没有,则调
回到 Step 2 继续进行进化。
本文改进算法流程图,如图 4.3 所示。

图 4.3 改进的自适应遗传模拟退火算法

4.5 数值测试与性能比较
为分析本文所改进算法的性能,采用表 4.1 所示的测试函数,表中函数包含低维和
高维两种情况,分别对应单峰和多峰。对算法在不同维数中的寻优精度和跳出局部最优
解的能力进行测试。

41
南京信息工程大学硕士专业学位论文

表 4.1 测试函数

序号 测试函数表达式

1 f  100  (x2 -x12 )2  (1  x1 )2

2 f  10*(cos(2 pi * x1 )  cos(4 pi * x2 ))  x12  x22  20


n
3 f   xi2
i 1

1 n 2 1 n
4 f  20  e  20 * exp( 0.2 * 
n i 1
xi )  exp(  cos(2 * pi * xi ))
n i 1

二维测试函数 1:

TestFunctionOne : f  100  (x2 -x12 )2  (1  x1 )2 , x1 , x2 [2.048, 2.048]

函数图像如图 4.4 所示:

图 4.4 测试函数一的二维图像

此函数为 Rosenbroc 又名香蕉函数。二维函数下其定义域内最小值位于 (1,1) 处,全

局最小值为 0。全局最小值位于数值差异不敏感的狭长谷带,通常较容易寻找到最值周
围,但命中最值对算法的寻优精度有很高的要求,所以常用于测试优化算法在低维函数
中寻优精度。
二维测试函数 2:

TestFunctionTwo : f  10*(cos(2 pi * x1 )  cos(4 pi * x2 ))  x12  x22  20, x1 , x2 [5,5]


函数图像如图 4.5 所示:

42
第四章 改进的自适应遗传模拟退火算法

图 4.5 测试函二的二维图像

该函数是一个多峰测试函数,存在无穷个局部最小值。二维函数下全局最小值位于

(0,0) 处,全局最小值为 0。从图 4.5 可知,在整个定义域内拥有无数个极值考验优化算

法可否跳出局部最优解的能力,常用于测试优化算法在低维多峰函数中跳出局部解能力。
多维测试函数 3:
n
TestFunctionThree : f   xi2 , xi  [100,100]
i 1

以其二维函数图像为例,如图 4.6 所示:

图 4.6 测试函数三的二维图像

此函数是 Sphere 函数,它的最小值出现在 (0, , 0) 点,最小值为 0,对优化算法在

高维单峰函数中的搜索精度有着较高的要求,用于测试优化算法在高维函数中寻优精度。
多维测试函数 4:

43
南京信息工程大学硕士专业学位论文

1 n 2 1 n
TestFunctionFore : f  20  e  20*exp( 0.2*  i
n i 1
x )  exp(  cos(2* pi * x i )),
n i 1
xi  [32,32]
以其二维函数图像为例,如图 4.7 所示:

图 4.7 测试函数四的二维图像

此测试函数为 Ackley 函数。在定义域范围内存在无穷个极小值点,仅存在一个全

局最小值 0,在 (0, , 0) 处取得。对优化算法在高维函数中能否及时跳出局部解向着最

值搜索的能力有着较高的要求。常用于测试优化算法在高维多峰函数中跳出局部解能力。
分别对 Srinivas M 和任子武等人提出的自适应遗传算法以及本文所改进的算法进行
性能测试[68-69]。为便于区分各种改进算法,分别给文献[68]、文献[69]和本文所改进的算
法命名为:WAGA、SAGA 和 IAGASA。为验证算法的性能以及保证实验的公平性,采
用相同的选择算子、适应度评估函数、交叉和变异算子仅采取不同的交叉和变异概率。
为使算法发挥最大的性能对每一个测试函数选择最优的参数。同时最大可能的降低算法
随机性造成的干扰,对每种算法单独测试 20 次后取平均值。

参数设置如表 4.2 所示。


表 4.2 算法参数设置

算法 测试函数 参数 交叉参数设置 变异参数设置

SAGA 测试函数一 160、60 0.9、0.6 0.1、0.01

WAGA 测试函数一 160、60 0.9、0.6 0.1、0.01

IAGASA 测试函数一 60、80 0.9、0.6 0.1、0.01

SAGA 测试函数二 160、60 0.9、0.6 0.1、0.01

44
第四章 改进的自适应遗传模拟退火算法

续表 4.2

WAGA 测试函数二 160、60 0.9、0.6 0.1、0.01

IAGASA 测试函数二 60、80 0.6、0.4、0.2 0.06、0.02、0.01

SAGA 测试函数三 600、300 0.9、0.6 0.1、0.01

WAGA 测试函数三 600、300 0.9、0.6 0.1、0.01

IAGASA 测试函数三 80、160 0.6、0.4、0.2 0.06、0.02、0.01

SAGA 测试函数四 600、300 0.9、0.6 0.1、0.01

WAGA 测试函数四 600、300 0.9、0.6 0.1、0.01

IAGASA 测试函数四 80、160 0.6、0.4、0.2 0.06、0.02、0.01

二维单峰和多峰测试函数单独运行 20 次后结果平均值如表 4.3 所示,表中变量和解


均直接采用 MATLAB 计算结果未作取舍。
表 4.3 测试函数一二计算结果
算法 测试函数 变量 1 平均值 变量 2 平均值 平均最优解

SAGA 测试函数一 0.999348435 0.998781504 3.80312E-05

WAGA 测试函数一 0.949989592 0.949979125 2.0216E-09

IAGASA 测试函数一 1 1 5.10294E-31

SAGA 测试函数二 -1.71E-03 2.43E-02 8.71E-02

WAGA 测试函数二 -2.53E-09 -8.08E-09 9.35003E-12

IAGASA 测试函数二 -4.32E-10 -6.97E-11 1.78E-15

高维单峰测试函数三,五维单独运行 20 次结果平均值如表 4.4 所示,表中变量和最


优解均直接采用 MATLAB 计算结果未作取舍。
表 4.4 测试函数三五维计算结果
测试函数三(五维) SAGA WAGA IAGASA

变量 1 平均值 2.58E-20 -7.95E-11 -8.18E-76

变量 2 平均值 3.72E-20 -6.60E-10 1.58E-76

变量 3 平均值 -1.46E-19 -7.50E-10 5.44E-75

变量 4 平均值 -4.98E-20 -9.36E-10 -6.82E-77

变量 5 平均值 4.75E-20 1.47E-09 -7.14E-75

平均最优解 5.63E-37 8.28E-17 1.54E-147

十维单独运行 20 次结果平均值如表 4.5 所示,表中变量和最优解均直接保留


MATLAB 计算结果未作取舍。

45
南京信息工程大学硕士专业学位论文

表 4.5 测试函数三十维测试结果
测试函数三(十维) SAGA WAGA IAGASA
变量 1 平均值 4.36E-23 1.15E-11 1.52E-24
变量 2 平均值 3.49E-22 4.62E-11 -2.96E-24
变量 3 平均值 -8.11E-23 -2.96E-11 -2.85E-24
变量 4 平均值 1.65E-22 7.33E-11 -1.42E-24
变量 5 平均值 -1.67E-22 4.42E-11 4.46E-24
变量 6 平均值 8.08E-23 -6.60E-11 -2.22E-24
变量 7 平均值 -2.43E-23 1.10E-10 -2.51E-24
变量 8 平均值 -1.91E-22 2.56E-11 -4.08E-24
变量 9 平均值 -3.82E-22 5.43E-11 -1.36E-24
变量 10 平均值 -2.28E-22 -1.79E-11 -3.28E-24
平均最优解 9.08E-42 8.18E-19 1.63E-45

多维多峰测试函数四,五维单独运行 20 次结果平均值如表 4.6 所示,十维单独运行


20 次结果平均值如表 4.7 所示,变量和最优解直接保留 MATLAB 计算结果未作取舍。
表 4.6 测试函数四五维计算结果
测试函数四(五维) SAGA WAGA IAGASA
变量 1 平均值 1.90E-08 -8.00E-11 -2.83E-16
变量 2 平均值 -4.93E-09 2.73E-11 -2.60E-17

变量 3 平均值 -8.95E-09 1.46E-12 -8.61E-17


变量 4 平均值 -1.98E-09 -1.35E-10 -2.57E-16
变量 5 平均值 1.48E-08 -1.85E-10 2.56E-16
平均最优解 1.81E-07 9.52E-10 2.66E-15

表 4.7 测试函数四十维计算结果
测试函数四(十维) SAGA WAGA IAGASA
变量 1 平均值 -1.50E-08 5.81E-12 -5.61E-17
变量 2 平均值 1.26E-08 -1.48E-11 8.17E-17
变量 3 平均值 -1.71E-09 -3.21E-13 2.23E-16
变量 4 平均值 -4.85E-09 -1.24E-11 -7.27E-17
变量 5 平均值 1.84E-08 1.40E-11 -9.37E-17
变量 6 平均值 5.99E-09 5.66E-12 3.78E-16
变量 7 平均值 1.34E-08 -1.45E-11 1.78E-16
变量 8 平均值 -9.62E-09 1.05E-11 1.75E-16
变量 9 平均值 4.96E-09 -8.72E-12 1.27E-16
变量 10 平均值 -8.22E-09 1.59E-15 1.78E-16
平均最优解 7.67E-08 1.28E-10 2.53E-15

由表 4.3 可知,所选取的二维单峰和多峰测试函数一、二,WAGA 无论寻优精度还


是跳出局部解的能力都优于 SAGA,但是 IAGASA(本文)在单峰函数中寻优能力远远优

46
第四章 改进的自适应遗传模拟退火算法

于 WAGA 和 SAGA,对变量的搜索精度到达 1。在多峰测试函数二中虽然没有像在单峰


函数中那样表现出色,但是依然优于 WAGA 和 SAGA,表明本文所改进算法可以更好
的跳出局部最优解。表 4.4-4.5 为多维单峰测试函数三在五维和十维下的实验数据,由
表 4.4-4.5 可知 WAGA 算法的寻优精度弱于 SAGA,但是本文所改进的算法 IAGASA 在
五维的情况下寻优精度远远的优于 SAGA 和 WAGA,在十维的情况下,寻优能力明显
优于 WAGA,且相对于 SAGA 也有部分提升,表明本文所改进算法对于单峰函数拥有
更出色的寻优精度。表 4.6-4.7 为高维多峰函数四在五维和十维的实验数据,可知 WAGA
算法的搜索精度在一定程度上优于 SAGA,但是本文所改进的算法 IAGASA 不论是在五
维还是在十维中的表现都优于两者,说明本文所改进的算法可以很好的跳出局部解从而
搜索到更优的解,证明本文所改进算法的优越性。

4.6 本章小结
本章重新构造遗传算法的交叉概率和变异概率,并对算法流程做出一定优化,在交
叉操作和变异操作后融入退火操作来修正新一代种群中的染色体个体。改进的算法采取
实数编码形式,相对于传统二进制编码方式精确更高并且编码方式更简单。为避免轮盘
赌选择法有一定概率将优秀的染色体淘汰,所以加入精英保留策略降低优秀的染色体被

淘汰的风险,对传统算法交叉概率 Pc 和变异概率 Pm 为固定值不能随着种群进化而自适

应改变以及自适应交叉概率 Pc 和变异概率 Pm 存在的不足作出进一步改进,使 Pc 和 Pm 更

加符合进化的特点同时具备自适应改变能力。不仅使算法能迅速跳出局部解,而且提升
搜索的精度。在改进的自适应遗传算法的基础上加入了模拟退火算法,前者全局把控能
力较强而局部寻优能力较差,模拟退火算法的局部寻优能力较强而整体搜索空间感知能
力较差,很好弥补前者存在的不足。经由退火操作对交叉和变异操作后的染色体进行修
正,提高算法的搜索能力以及搜索精度。通过选取的典型测试函数,分别测试算法在单
峰函数和多峰函数、低维和高维中的表现。通过数值仿真对比测试,与其他改进的算法
相比,本文改进的算法与其他改进的算法具有更强的搜索能力以及较高的搜索精度。

47
南京信息工程大学硕士专业学位论文

第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹

5.1 引言
第三章中采用五次非均匀 B 样条曲线对关节路径点进行拟合,但未设置速度、加速
度和加加速度约束,所以规划出来的轨迹并不是最优轨迹,换而言之,既不能保证高效
率又不能够保证冲击较低。运行时间和冲击这两个指标并不能保证,将第四章中所改进
的算法应用到工业机器人轨迹优化方面。

5.2 基于改进算法最优轨迹实现
5.2.1 优化目标
时间优化目标函数值越小代表运行效率越高,如式(5.1)所示:
n 1 n 1
f1   (ti 1 ti )   hi (5.1)
i 1 i 1

式(5.1)中, n 为给定关节路径点个数; hi 为两个相邻路径点之间的时间长度,即 n 路径

点共有 n -1 时间段; f1 越小说明通过所有路径点时长越小,即工作效率越高。

关节平均冲击用于评估轨迹的平滑性,如式(5.2)所示:
N
1 T
f2    ( jerk (t ))2 dt (5.2)
i 1 T 0

式(5.1)-(5.2)中,为一对相矛盾的优化目标,即时间越短意味着冲击越大,冲击越小则时
间越长。通过加权法将多目标转换成单目标如式(5.3)所示:

f  kt f1  k j f 2 (5.3)

式(5.3)中, kt 、 k j 为时间和冲击权重。

5.2.2 约束条件
最优轨迹必须满足各个关节的运动学约束条件,即必须保证角速度、角加速度和角
加加速度在约束的范围内,运动学约束条件如式(5.4)所示:

max v j (t )  v max j , j  1, 2,, N



max a j (t )  a max j , j  1, 2,, N (5.4)

max jerk j (t )  jerk max j , j  1, 2,, N

式(5.4)中, v j 、 a j 和 jerk j 表示第 j 关节实际角速度、角加速度和角加加速度; v max j 、

48
第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹

a max j 和 jerk max j 表示第 j 关节最大角速度、角加速度和角加加速度; N 表示关节数。

5.2.3 基于改进的自适应遗传模拟退火算法轨迹优化实现
(1) 初始参数设置
种群规模、迭代次数、初始温度、结束温度、衰减函数。
(2) 编码与初始解空间
由于轨迹对解的精度要求较高,采用实数编码形式。初始解空间,即初始种群,每

个染色体就是一组解变量,每个解就是基因,即式(5.1)中的 hi  ti 1  ti ,如式(5.5)所示:

hmin  max ( Pj ,i  Pj ,i 1 ) / v max j (5.5)

式(5.5)中, Pj ,i 为对应关节 j 在关键点 i 处的关节角度。

(3) 适应度函数
适应度评估函数是用来评估染色体好坏的重要依据,一般情况适应度值越高代表此
解越优质,适应度评估函数设计如式(5.6)所示:

f  1/ (kt f1  k j f 2  P) (5.6)

式(5.6)中, P 为惩罚函数如式(5.7)所示:
3n
P   N j max{0, G j } (5.7)
j 1

式(5.6)中, Ni 和 Gi 如式(5.8)-(5.9)所示:

max{0, G j }
Nj  3n
(5.8)
 max{0, G }
j 1
j

G j  max v j (t )  v max j , j  1, 2,, N



G j  n  max a j (t )  a max j , j  1, 2,, N (5.9)

G j  2 n  jerk j (t )  jerk max j , j  1, 2,, N

(4) 选择
本文采用轮盘赌选择策略,为了避免优秀染色体被淘汰,所以引入精英保留策略。
在开始此步骤之前,首先筛选出当代群体中适应度评估函数值高的染色体,用适应度评
估函数值大的代替当代群体中适应度评估函数值较差的,并将最优秀的染色体直接复制
到下一代中。同时为避免算法前期陷入局部最优解,适应度高的染色体也必须参与交叉

49
南京信息工程大学硕士专业学位论文

操作和变异操作。
(5) 交叉和变异操作

本文的交叉概率采用改进的交叉和变异概率,即式(4.5)-(4.6), pc 0 、 pc1 和 pc 2 分别

为 0.6、0.4 和 0.2; pm0 、 pm1 和 pm2 分别为 0.06、0.02 和 0.01。

交叉算子采用拓展中间交叉算子,如式(5.10)所示:
 nextchrom1i  chrom1i  ai  (chrom 2i  chrom1i )
 (5.10)
 nextchrom 2i  chrom 2i  ai  (chrom 2i  chrom1i )

式(5.10)中,i 表示染色体(即解变量)的维数;ai 是 [0,1] 的随机数;chrom1 和 chrom 2 为

父代染色体; nextchrom1 和 nextchrom2 为子代染色体。


变异算子采用非一致变异算子,如式(5.11)所示:
chrom  chromtop  (1  rand (1a /A) ), rand  0.5
2

nextchrom=  (5.11)
(1 a /A)2
chrom  chrom  (1  rand ), rand  0.5
low

式(5.11)中, chrom 表示要进行变异的染色体; chromtop 表示 chrom 上界; chromlow 表示

chrom 下界; a 表示当前进化的代数; A 表示最大进化代数; rand 表示 [0,1] 随机数。

(6) 退火操作
对(4)-(5)步骤后生成的下一代种群染色体进行退火操作,根据 Metropolis 准则接收
新解,即当新产生染色体个体的适应度值大于上代种群中所对应染色体的适应度值,则

接收新解;当小于时,按此式 exp(fitness / t )  rand (0,1) 接受新的染色体,其中 fitness

为新旧染色体适应度评估函数值差, t 为当前温度, rand (0,1) 为 (0,1) 之间的随机数。退

火完毕,按照退火系数对当前温度 t 进行温度降低操作,当温度到达 tmin 时,则退火结束,

输出最优解。

5.3 实验仿真与结果分析
对本文所改进的自适应遗传模拟退火算法运用到工业机器人轨迹优化的有效性和
优越性进行仿真验证。在关节空间中和文献[45]设置相同的预先给定关键点,如表 5.1
所示(弧度制),采用相同的工业机器人运动学约束条件如表 5.2 所示,并且同样给出每
一个关节所对应的运动曲线。因为第四关节一直处于静止状态,所以所有关于关节 4 的
运动曲线全部为零,将不给出关节 4 的所有运动轨迹。

50
第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹

表 5.1 文献[45]中关键点
位置(°)\关节 1 2 3 4 5 6
关键点 1 0.8521 0.1288 2.2789 0.000 0.6817 -0.8144
关键点 2 0.7536 -0.3142 2.6545 0.000 0.8011 0.8381
关键点 3 0.8734 -0.7304 2.9786 0.000 0.8934 -0.5646
关键点 4 1.9038 -0.9383 3.1313 0.000 0.9535 -0.0871
关键点 5 1.3621 -1.0004 3.1887 0.000 0.9533 0.5767
关键点 6 1.6476 -0.9203 3.1145 0.000 0.9317 1.3254
关键点 7 1.8174 -0.7411 3.0288 0.000 0.8784 1.6539
关键点 8 1.9532 0.1185 2.3178 0.000 0.7053 1.9576

表 5.2 文献[45]中运动学约束

位置\关节 1 2 3 4 5 6

速度((°)/s) 50 50 50 55 60 70

加速度((°)/s*s) 40 40 40 50 50 55

加加速度((°)/s*s*s) 50 70 60 55 60 60

设置各关节的初始和结束的角速度、角加速度全部为零。利用 MATLAB 进行仿真,


为减少随机性,分别在各个权重下单独运行五次后取平均值,结果如表 5.3 所示。
表 5.3 本文改进算法不同权重下优化结果

时间\权重 Kt=1 Kt=0.5 Kt=0

h1(s) 4.2512 4.1227 4.6429

h2(s) 3.0026 3.9232 3.8051

h3(s) 1.1789 1.3489 1.6139

h4(s) 1.0224 1.4506 1.0439

h5(s) 1.4914 1.5906 1.4191

h6(s) 0.6794 0.7677 0.8469

h7(s) 2.8697 3.7423 4.6466

Time(s) 14.4956 16.946 18.0184

Jerk 55.0394 30.3364 23.5893

由表 5.3 可知,当 kt  1 仅对时间优化,运行时间较小但冲击较大会引起较大的共振

从 而 缩 减 机 器 人 寿 命 。 文 献 [45] 中 , 采 用 改 进 差 分 进 化 算 法 (Improved Differential


Evolution,简称 IDE)取得最短时间为 16.8643s,相比之下本文时间最优轨迹时间缩短
2.3687s,比文献[45]中优化时间缩短 14%。随着权重系数变化,时间由 14.4956s 增加到

51
南京信息工程大学硕士专业学位论文

18.0184s,冲击由 55.0394 减少到 23.5893。 kt  0 仅对冲击进行优化,虽然运行效率较

低但是冲击较小使得运行更加平稳。在 kt  0.5 时,轨迹达到综合最优。可以根据不同需

求通过改变权重选择运行时不同的轨迹。各个关节在不同权重下运动曲线如图 5.1-5.4
所示,虚线和实线分别为时间最优轨迹和冲击最优轨迹。

(a) 关节 1 (b) 关节 2

(c) 关节 3 (d) 关节 5

(e) 关节 6

图 5.1 不同权重下各关节角位移曲线

图 5.1 中红色星号为需要通过的给定关节路径点,可以看出关节 1 到关节 6 都可以


经过指定的关键路径点,说明优化后的轨迹依然可以经过指定的关键点,没有出现位置

52
第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹

误差,验证将改进的自适应遗传模拟退火算法运用到轨迹优化中的正确性和有效性。

(a) 关节 1 (b) 关节 2

(c) 关节 3 (d) 关节 5

(e) 关节 6

图 5.2 不同权重下各关节角速度曲线

53
南京信息工程大学硕士专业学位论文

(a) 关节 1 (b) 关节 2

(c) 关节 3 (d) 关节 5

(e) 关节 6

图 5.3 不同权重下各关节角加速度曲线
由图 5.2-5.3 可知,每一关节开始和结束时刻的角速度、角加速度都为 0,有利于减

少冲击的产生。关节 1-6 的角速度和角加速度都在 40° / s 和 40° / s 2 之间,满足各个关


节的运动学约束,并且各个关节的角速度和角加速度曲线平滑且连续,各个关节受到驱
动力平稳。当仅对于时间进行优化时,角速度和角加速度曲线明显高于冲击最优轨迹曲

54
第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹

线,各关节会以较大的角加速度运行,这样能够保证各个关节迅速的到达较大速度,从
而缩短运行时间,提高运行效率。

(a) 关节 1 (b) 关节 2

(c) 关节 3 (d) 关节 5

(e) 关节 6

图 5.4 不同权重下各关节角加加速度曲线

由图 5.4 可知,从时间最优轨迹可以看出运行时间明显缩短,提高运行效率,但是
各个关节的冲击曲线值较大,会造成工业机器人较大的振动,缩短机器人的使用寿命。

55
南京信息工程大学硕士专业学位论文

当冲击最优时,关节 1 到关节 6 的冲击曲线相比时间最优轨迹的冲击曲线明显减小,虽


然运行时间较长但是运行平稳性得到提高。综合上述,基于改进的自适应遗传模拟退火
算法的五次非均匀 B 样条可以得到时间较短,冲击曲线光滑且连续以及累计冲击较小的
机器人运动轨迹,保证机器人运行时以较短的时间到达指定位置以及较高的运行稳定性,
表明改进的算法可以有效地缩短运行时间以及减少运动过程中所受到的冲击。
为进一步验证改进算法的有效性和通用性,与文献[70]和[71]设置相同的路径点(角
度制),如表 5.4 所示。
表 5.4 文献[70]和[71]中路径点

位置(°)\关节 1 2 3 4 5 6

关键点 1 10 15 45 5 10 6
关键点 2 60 25 180 20 30 40
关键点 3 75 30 200 60 -40 80
关键点 4 130 -45 120 110 -60 70
关键点 5 110 -55 15 20 10 -10
关键点 6 100 -70 -10 60 50 10
关键点 7 -10 -10 100 -100 -40 30
关键点 8 -50 10 50 -30 10 20

各关节设置与文献[70]和[71]中相同型号机器人运动学约束条件,如表 5.5 所示。


表 5.5 文献[70]和[71]中运动学约束

位置\关节 1 2 3 4 5 6

速度((°)/s) 100 95 100 150 130 110

加速度((°)/s*s) 45 40 75 70 90 80

加加速度((°)/s*s*s) 60 60 55 70 75 70

由于文献[70]和[71]仅对时间进行优化,所以式(5.3)中 kt  1 和 k j  0 。采用本文改进

的自适应遗传模拟退火算法最优时间和文献中最优时间如表 5.6 所示,同样为减少随机


性,分别进行五次单独试验,结果取平均值,结果同文献一样保留两位小数,并和文献
中一样给出前三个关节优化后的运动轨迹曲线如图 5.5-5.8 所示。
表 5.6 文献[70]、[71]和本文轨迹优化结果

时间\文献 文献[70] 文献[71] 本文

h1(s) 3.46 3.72 4.42

h2(s) 2.20 2.02 1.53

56
第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹

续表 5.6

h3(s) 2.71 1.96 1.98

h4(s) 3.54 1.94 1.64

h5(s) 1.79 2.52 1.98

h6(s) 3.98 3.17 2.48

h7(s) 3.95 2.69 3.77

Time(s) 20.68 18.04 17.8

由表 5.6 可以看出本文改进的自适应遗传模拟退火算法,在相同的路径点和约束条
件下仅对时间进行优化,优化结果为 17.8s,对应的使时间序列为:[0 4.42 5.95 7.93 9.57
11.55 14.03 17.8]。与文献[70]和文献[71]相比时间分别减少 2.88s 和 0.24s,分别减少 13%
和 1.3%,表明本文改进的算法可以有效的减小机器人的运行时间。

图 5.5 本文时间最优关节的角位移曲线

图 5.6 本文时间最优关节的角速度曲线

57
南京信息工程大学硕士专业学位论文

图 5.7 本文时间最优关节角加速度曲线

图 5.8 本文时间最优关节角加加速度曲线

由图 5.5 可以看出前三关节均可以经过指定的路径点(红色※号为给定的关节路径
点),表明优化后的轨迹依然可以经过指定的关键点,没有出现位置误差;图 5.6-5.7 为
前三关节的角速度和角加速度光滑连续且无突变,均在给定的约束范围内,开始和结束
时刻都为零,减少冲击的产生;图 5.8 可以看出在开始和结束冲击虽然较大但是都在约
束的范围内,符合其运动学约束条件。综上,本文所改进的自适应遗传模拟退火算法可
以很好的应用到工业机器人轨迹优化方面,同时相较于其他文献优化结果有一定的提升,
从而验证本文所改进算法的有效性和通用性。

5.4 本章小结
本章对改进的自适应遗传模拟退火算法在机器人轨迹优化的运用做出深入的研究,

58
第五章 基于改进的自适应遗传模拟退火算法工业机器人最优轨迹

在第三章和第四章的基础上,以运动学为约束条件对工业机器人最优轨迹进行求解,同
样为了克服随机性将多次试验结果取平均值,单从时间优化角度可以看出相较于改进的
差分算法[45]时间缩短 14%,执行效率有较大的提升,与文献[70]和[71]中相应结果相比
时间分别缩短 13%和 1.3%,执行效率有较大和部分的提升。各个关节速度、加速度和
加加速度曲线均在约束的范围内且光滑连续无突变。同样根据不同的任务需求,通过改
变权重获得时间最优、综合最优和冲击最优轨迹,试验结果表明本文改进的算法可以很
好运用到机器人轨迹优化方面。

59
南京信息工程大学硕士专业学位论文

第六章 总结与展望
本文通过阅读、分析国内外专家和学者在工业机器人轨迹规划和优化方面的论文,
采用五次非均匀 B 样条插值函数在关节空间进行轨迹规划,以改进的自适应遗传模拟退
火算法为优化手段,对工业机器人进行轨迹优化,通过改变权重获得时间最优、冲击最
优和综合最优的运动轨迹。本文主要工作如下:
(1) 研究工业机器人运动学数学基础、D-H 建模、正逆运动学推导和仿真。通过
MATLAB 中 Robotics Tool 建立模型,给出各个关键点下机器人的位姿,最后根据推导
过程通过数值仿真得到正解和所有逆解情况。
(2) 研究笛卡尔空间和关节空间不同轨迹规划方法,深入研究关节空间 B 样条的插
值方法,通过 MATLAB 对不同规划算法仿真,得到对应关节的运动曲线,通过对比证
明五次非均匀 B 样条轨迹规划的优越性。
(3) 对遗传算法存在的缺点做出一定的改进:在选择操作中引入精英保留策略,引
入双曲正切函数重新设计交叉和变异概率,同时引入模拟退火算法加强局部搜索能力。
选取测试函数与其它自适应遗传算法进行仿真对比测试,证明本文改进算法的可行性和
优越性,具有一定的创新性。
(4) 运用上述轨迹规划方法和改进的自适应遗传模拟退火算法,通过加权的方法构
造时间-冲击优化模型,在角速度、角加速度和角加加速度约束条件下,通过改变权重
获取时间、冲击和综合最优关节运动曲线。在相同的路径点和约束条件下,仅对时间进
行优化最短时间为 14.4956s,相较于文献[45]中最优时间 16.8643s 缩短 14%;与文献[70]
和[71]相同的路径点和约束条件,本文最优时间为 17.8s 分别缩短 13%和 1.3%;各个关
节运动曲线均在约束的范围内,有效改善了工业机器人的效率,具有一定创新性。
本文在以下部分有所欠缺和不足:
首先,在约束条件下没有考虑能量优化和动力学约束问题,希望在以后工作中加入
此项优化目标以及考虑动力学约束。其次,是在没有障碍物的静态环境中,但是实际工
程中机器人工作在存在各种障碍物的环境中,可以考虑存在障碍的情况。最后,由于涉
及到实验设备的限制,还处在理论研究和仿真阶段,希望以后可以搭建相应的实验平台,
从而理论和实践相结合。

60
致谢

致谢
昨夜今朝,时间如白驹过隙,感情全然不同,短暂的研究生求学生涯即将画上句号,
这短暂的三年不仅使我开拓眼界、学习专业知识以及结识志趣相投的朋友,更让我明白
切勿低估他人自主性,高估自己掌控力。在论文行将收尾之际,向所有曾帮助、指点过
我的人深表竭诚的感激。
首先我要感谢我的导师宋公飞副教授,在研究生的求学时光中,宋老师凭借其严谨
的治学态度、出众的才华、卓越的科研能力以及循循善诱的教导将我带入科研的大门。
在科研学习中宋老师不停的鞭策、教导我们:科研无涯,时刻都要激流勇进,勇攀高峰。
不但引导我们如何去寻找问题,而且培养我们独立思考,解决困难的能力。生活上亦师
亦友,愿意倾听学生的需求以及遇到的困惑,并热心的去帮助学生走出困难,如同一位
兄长使人倍感和蔼、亲切。
还要感激南京信息工程大学,感激母校为我们提供备具人文关切的进修环境、宽阔
敞亮的科研室和温馨宁和的宿舍。还要感激实验室的各位同门、师弟、师妹和舍友,一
起科研、一起帮助、一起进步、一起欢笑正是有你们才让三年的科研时光色彩缤纷。同
时还要感谢同一课题组的李涛教授、郑柏超副教授、苗国英副教授、贺伟讲师等所有兢
兢业业的老师,督促和指导每一个学生向前进步。
最要感激的是自己的父母,多年来无私的奉献和无所不至的照顾让我明白,家才是
最温馨的港湾,父母的养育之恩我将永久铭刻!
毕业之际,愿各位前程似锦,未来可期,千帆过尽,再见仍是少年,永远满怀着一
颗赤子之心!

61
南京信息工程大学硕士专业学位论文

参考文献
[1] 李金华. 德国"工业 4.0"与"中国制造 2025"的比较及启示[J]. 中国地质大学学报:社会
科学版, 2015, 15(005): 71-79.
[2] 孙燕妮, 白晓军.《中国制造 2025》中国特色的强国战略[J]. 智能制造, 2020, 300(10):
45-47.
[3] 彭宽栋, 郑龙, 袁俊, 罗晓晔. 基于工业 4.0 背景下工业机器人人才研究分析及解决
策略[J]. 价值工程, 2017, 36(24): 171-173.
[4] 机器人技术与应用编辑部. 国际机器人联合会 2020 年全球工业机器人统计数据[J].
机器人技术与应用, 2020, (05): 47-48.
[5] 国际机器人联合会年度报告-全球机器人 2019[J]. 智能机器人, 2019, (05):15-17.
[6] 张树新. 工业机器人技术的研究进展与探析[J]. 南方农机, 2019, 50(24): 179.
[7] 谭明, 王硕. 机器人技术研究进展[J]. 自动化学报, 2013, 39(07): 963-972.
[8] 骆敏舟, 方健, 赵红海. 工业机器人的技术发展及其应用[J]. 机械制造与自动化,
2015, 44(01): 1-4.
[9] Abdel-Malek K, Yeh H. Path trajectory verification for robot manipulators in a
manufacturing environment[J]. Journal of Engineering Manufacture, 1997, 211(07):
547-555.
[10] 郭勇, 赖广. 工业机器人关节空间轨迹规划及优化研究综述[J]. 机械传动, 2020,
44(02): 154-165.
[11]李黎, 尚俊云, 冯艳丽, 淮亚文. 关节型工业机器人轨迹规划研究综述[J]. 计算机工
程与应用, 2018, 54(05): 36-50.
[12] 徐海黎, 解祥荣, 庄健, 王孙安. 工业机器人的最优时间与最优能量轨迹规划[J]. 机
械工程学报, 2010, 46(09): 19-25.
[13] 彭航. 6-DOF 串联机器人运动学算法研究及其控制系统实现[D]. 合肥工业大学, 20
16.
[14] 桌扬娃, 白晓灿, 陈永明. 机器人的三种规则曲线插补算法[J]. 装备制造技术, 2009,
(11): 27-29.
[15] 任秉银, 梁兆东, 孔明秀. 机械手空间圆弧位姿轨迹规划算法的实现[J]. 哈尔滨工
业大学学报, 2012, 44(07): 27-31.
[16] 陈伟华, 林颖, 文综明, 缪丹云. 基于双重 A*算法的移动机器人动态环境路径规划

62
参考文献

[J]. 组合机床与自动化加工技术, 2018, (04): 127-130.


[17] Bazaz S A, Tondu B. On-line computing of a robotic manipulator joint trajectory with
velocity and acceleration constraints[C]. IEEE Internation Symposium on Assembly and
Task Planning, Pittsburgh, 1997: 1-6.
[18] Reclik D, Kost G G. A roational b-spline curves in robot collision-free movement
planning[J]. Journal of Automation Moblie Robitics and Intelligent Systems, 2008, 2(03):
38-42.
[19] Porawagama C D, Munasinghe S R. Reduced jerk joint space trajectory planning method
using 5-3-5 spline for robot manipulators[C]. IEEE International Conference on
Information and Automation for Sustainability, Colombo, 2015.
[20] 李冻洁, 邱江艳, 尤波. 一种机器人轨迹规划的优化算法[J]. 电机与控制学报, 2009,
13(01): 123-127.
[21] 孙玥, 魏欣. 基于五次多项式的码垛机器人轨迹规划[J]. 包装工程, 2017, 38(21):
159-163.
[22] Boryga M, Crabos A. Planning of manipulator motion trajectory with high-degree
polynomials use[J]. Mechanism and Machine Theory, 2009, 44(07): 1400-1419.
[23] Petrinec K, Kovacic Z. Trajectory planning algorithm based on the continuity of jerk[C].
IEEE Mediterranean Conference on Control and Automation, Athens, 2007.
[24] 陈晗, 李林升 . 基于复 合形法的时 间最优机械臂轨迹规划[J]. 机械传动, 2019,
43(03): 72-75.
[25] 孙志毅, 张韵悦, 李虹, 孙前来, 王银. 挖掘机的最优时间轨迹规划[J]. 机械工程学
报, 2019, 55(05): 166-174.
[26] Xu Z, Wei S, Wang N, Zhang X. Trajectory planning with bezier curve in cartesian space
for industrial gluing robot[C]. Springer International Conference on Intelligent Robotics
and Applications, Guangzhou, 2014, 146-154.
[27] Ramabalan S, Saravanan R, Balamurugan C. Multi-objective dynamic optimal trajectory
planning of robot manipulators in the presence of obstacles[J]. The International Journal
of Advanced Manufacturing Technology, 2009, 41(05-06): 580-594.
[28] Gasparetto A, Zanotto V. Optimal trajectory planning for industrial robots[J]. Advancesin
Engineering Software, 2010, 41(4): 548-556.

63
南京信息工程大学硕士专业学位论文

[29] Zhan X F. Optimal pose trajectory planning for robot manipulator[J]. Mechanism and
Machine Theory, 2002, 37(10): 1063-1086.
[30] 王会方, 朱世强, 吴文祥. 基于 NASGA-II 算法的机械手多目标轨迹规划[J]. 浙江大
学学报, 2012, 46(04): 622-628.
[31] Holland J H. Adaptation in natural and artificial systems[M]. Ann Arbor, Michigan:
University of Michigan Press, 1975.
[32] Ding Q. Improved bp neural network controller based on ga optimization[C]. IEEE
International Conference on Smart Grid and Electrical Automation, Changsha, 2017:
251-254.
[33] 沈悦, 李银伢, 戚国庆, 圣安东. 基于 PSO 的工业机器人时间-脉动最优轨迹规划[J].
计算机测量与控制, 2017, 25(01): 158-162.
[34] Zhang Q, Yuan M. Robot trajectory planning method based on genetic chaos
optimization algorithm[C]. IEEE International Conference on Advanced Robotics,
Hongkong, 2017: 602-607.
[35] 向启均. 改进模拟退火优化遗传算法的机器人动力学参数辨识[D]. 湖南大学 ,
2018.
[36] Gao M, Ding P, Yang Y. Time-optimal trajectory planning of industrial robots based on
particle swarm optimization[C]. IEEE International Conference on Instrumentation and
Measurement, Computer, Communication and Control, Qinhuangdao, 2015: 1934-1939.
[37] Jin X, Kang J, Zhang J. Trajectory planning of six-dof robot based on a hybrid
optimization algorithm[C]. IEEE Computational Intelligence and Design, Hangzhou,
2016, (02): 148-151.
[38] Xiong J, Xu X, Zhao X. Research on trajectory-planning based on genetic algorithms for
scara robot[C]. IEEE Guidance, Navigation Control Conference, Yantai, 2014:
1321-1324.
[39] Liu X, Qiu X, Zeng Q, Li A, Xie N. Time-energy optimal trajectory planning for
collaborative welding robot with multiple manipulators[J]. Procedia Manufacturing, 2020,
43: 527-534.
[40] Amruta R, Dileep M, Golak B, Bbvl D, Biswal. Optimal time-jerk trajectory planning of
6 axis welding robot using tlbo method[J]. Procedia Computer Science, 2018, 133:

64
参考文献

537-544.
[41] Huang J, Hu P, Wu k, Zeng M. Optimal time-jerk trajectory planning for industrial
robots[J]. Mechanism and Machine Theory, 2018, 121: 530-544.
[42] 施祥玲, 方红根. 工业机器人时间-能量-脉动最优轨迹规划[J]. 机械设计与制造,
2018, (06): 254-257.
[43] 程正智. 基于自适应遗传算法的六自由度工业机器人时间最优轨迹规划[D]. 安徽工
业大学, 2017.
[44] 王玉宝, 王诗宇, 李备备, 郭放达. 一种改进粒子群的工业机器人时间最优轨迹规
划算法[J]. 小型微型计算机系统, 2018, 39(08): 1878-1881.
[45] 王君, 陈智龙, 杨智勇, 秦争争, 游颖, 魏琼. 基于改进 DE 算法的工业机器人时间
最优轨迹规划[J]. 组合机床与自动化加工技术, 2018, 532(06): 42-46.
[46] 刘建鹏. 移动喷砂机器人轨迹规划及低纬方法研究[D]. 天津理工大学, 2019.
[47] John. J. C 著, 贠超等译. 机器人导论[M]. 武汉: 机械工程出版社, 2006.
[48] 程小宁. 基于视觉反馈的机械手臂运动轨迹优化控制[D]. 浙江大学, 2007.
[49] 王晓波. 六自由度工业机器人的轨迹规划与虚拟技术研究[D]. 燕山大学, 2018.
[50] 康迎梅. 面向对象的机器人三维可视化仿真研究[D]. 南京航天航空大学, 2003.
[51] 陈辛. 机械臂的动力学研究[D]. 哈尔滨工程大学, 2007.
[52] 蔡自兴. 机器人学(第二版)[M]. 北京: 清华大学出版社, 2009.
[53] 宋伟刚. 机器人学: 运动学、动力学与控制[M]. 北京: 科学出版社, 2007.
[54] 谭冠政, 王越超. 工业机器人时间最优轨迹规划及轨迹控制的理论与实验研究(英
文)[J]. 控制理论与应用, 2003, 20(02): 185-192.
[55] 南永博. 六自由度搬运机器人运动轨迹规划及仿真分析[D]. 陕西理工大学, 2018.
[56] 张祖媛. 贝塞尔曲线的几何结构[J]. 四川工业学院学报, 1998, 17(04): 32-35.
[57] 施法中. 计算机辅助几何设计与非均匀 B 样条[M]. 北京: 北京航空航天出版社,
1994.
[58] Les P, Wayne. T 著, 赵罡等译. 非均匀有理 B 样条[M]. 北京: 清华大学出版社, 2010.
[59] Chen L. A computer numerical controlled system with nurbus interpolator[C]. IEEE
World Congress Computer Science and Information Engineering, Los Angeles, 2009, 07:
216-219.
[60] 杨从锐. 改进的自适应遗传算法在函数优化中的运用[M]. 昆明理工大学, 2018.

65
南京信息工程大学硕士专业学位论文

[61] 卢宇婷, 林禹攸, 彭乔姿, 王颖喆. 模拟退火算法改进总数及参数讨论[J]. 大学数学,


2015, 31(06): 96-103.
[62] 覃柏英, 秦文东, 林贤坤. 多种群实数编码遗传算法在多峰函数优化中的运用[J].
广西科技大学学报, 2015, 24(03): 13-17.
[63] Arabi B. Solving np-complete problems using genetic algorithms[C]. IEEE International
Conference on Computer Modelling and Simulation, Cambridge, 2016: 43-48.
[64] Hu F, Zhang J, Feng L. Sparse planar retrodirective antenna array using improved
adaptive genetic algorithm[J]. Journal of Electronic Science and Technology, 2011,9(03):
265-269.
[65] 杨从锐, 钱谦, 王锋等. 改进的自适应遗传算法在函数优化中的运用[J]. 计算机应
用研究, 2018, 35(04): 1042-1045.
[66] 李书全, 孙雪, 孙德辉. 遗传算法中交叉算子的述评[J]. 计算机工程与应用, 2012,
48(01): 36-39.
[67] 沈畅, 乐天. 遗传算法中变异算子的述评[J]. 科技视界, 2012, 8(23): 107-108+188.
[68] Srinivas M, Patnaik L M. Adative probabilities of crossover and mutation in genetic
algorithm[J]. IEEE Transactions on Systems Man and Cybernetics, 1994, 24(04):
656-667.
[69] 任子武, 伞冶. 自适应遗传算法的改进在系统辨别中应用研究[J]. 系统仿真学报,
2006, 18(01): 41-43+66.
[70] 张红强, 章兢, 王耀南. 机器人关节空间 B 样条轨迹设计的混沌优化[J]. 机电与控
制学报, 2009, 11(02): 174-177.
[71] 王 幼 民 , 徐 蔚 红 . 机 器 人 关 节 空 间 B 样 条 轨 迹 优 化 设 计 [J]. 机 电 工 程 , 2007,
17(04):57-60.

66
作者简介

作者简介
王超,男,1994 年 10 月生,汉族,江苏南京人。2018 年毕业于淮阴工学院自动化
学院自动化专业,获得学士学位。现就读于南京信息工程大学自动化学院控制工程专业,
研究方向为工业机器人轨迹规划与优化。

本阶段学习情况
在攻读硕士学位期间学习课程 17 门,总学分 36,学位课学分 22。

学术成果
[1] 王超, 宋公飞, 徐宝珍. 基于 IAGA 工业机器人时间最优轨迹规划[J]. 计算机仿真
(已录用, 待发表).
[2] 徐宝珍, 宋公飞, 王超. 机械臂自适应非奇异快速终端滑模控制[J]. 电光与控制(已
录用,待发表).

荣誉奖励
2018-2021 校三等奖学金、校三等奖学金

67

You might also like