密集障碍物环境下移动机器人全局路径规划
- 格式:doc
- 大小:899.00 KB
- 文档页数:7
机器人路径规划在当今科技飞速发展的时代,机器人已经成为我们生活和工作中不可或缺的一部分。
从工业生产中的自动化装配线,到家庭服务中的智能清洁机器人,再到医疗领域的手术机器人,它们的身影无处不在。
而机器人能够高效、准确地完成各种任务,离不开一个关键技术——路径规划。
什么是机器人路径规划呢?简单来说,就是为机器人找到一条从起始点到目标点的最优或可行路径,同时要避开各种障碍物。
这就好比我们出门旅行,需要规划一条最佳的路线,既能快速到达目的地,又能避开拥堵和危险的路段。
机器人路径规划的重要性不言而喻。
一个好的路径规划算法可以大大提高机器人的工作效率,减少能量消耗,降低碰撞风险,从而延长机器人的使用寿命。
想象一下,如果一个工业机器人在搬运货物时总是走弯路或者撞到其他物体,不仅会浪费时间和资源,还可能造成设备损坏和生产延误。
那么,机器人是如何进行路径规划的呢?这就涉及到多种方法和技术。
其中一种常见的方法是基于地图的规划。
首先,需要构建一个环境地图,这个地图可以是二维的,也可以是三维的,它描述了机器人所处环境的各种信息,比如障碍物的位置、形状和大小。
然后,根据这个地图,利用各种算法来计算出最优路径。
另一种方法是基于传感器的规划。
机器人通过自身携带的各种传感器,如激光雷达、摄像头等,实时感知周围环境的变化。
然后,根据这些感知信息,及时调整自己的运动轨迹。
这种方法具有较强的适应性,可以应对环境中的动态变化,但对传感器的精度和数据处理能力要求较高。
在实际应用中,机器人路径规划面临着许多挑战。
首先是环境的复杂性。
现实中的环境往往非常复杂,充满了各种形状和大小不一的障碍物,而且这些障碍物可能是动态的,会随时移动或出现。
其次是不确定性。
传感器可能会受到噪声的干扰,导致感知信息不准确;机器人的运动模型也可能存在误差,这些都会影响路径规划的效果。
此外,还有计算效率的问题。
对于大规模的环境和复杂的任务,路径规划算法需要在短时间内计算出可行的路径,这对计算资源和算法效率提出了很高的要求。
移动机器人完全遍历路径规划算法研究移动机器人是一种自主移动的智能设备,能够在特定环境中进行导航和执行任务。
完全遍历路径规划算法是移动机器人在一个给定的环境中,通过按照特定策略遍历所有可达点的路径规划算法。
这种算法常被应用于清扫机器人、巡逻机器人等。
在完全遍历路径规划算法中,机器人需要根据环境的特点,确定一条能够覆盖所有点的路径。
对于一个有限的环境,可以使用深度优先(DFS)算法来实现完全遍历路径规划。
DFS算法的基本思想是从起点开始,尽可能地走到没有走过的点,当无路可走时,退回到上一个节点,继续前进。
具体而言,在移动机器人的完全遍历路径规划算法中,可以按照以下步骤进行:第一步,确定起点和终点。
起点可以是机器人的当前位置,终点可以是环境中的任意一个点。
第二步,初始化访问状态。
对于每个点,都初始化一个状态,表示该点是否已经被访问。
第三步,使用DFS算法进行路径规划。
从起点开始,记录当前访问到的点,同时更新访问状态。
在每个点,都按照特定的策略选择下一个要访问的点,直到所有可达点都被访问到。
第四步,确定路径。
在DFS算法执行完毕后,可以根据记录的路径回溯信息,确定完全遍历的路径。
在实际应用中,完全遍历路径规划算法可能面临一些挑战。
首先,如果环境较大且复杂,DFS算法可能需要很长的时间来完成路径规划。
为了解决这个问题,可以使用剪枝策略,即在过程中排除一些不必要的路径,提高效率。
其次,在实际环境中,机器人可能会受到一些限制,例如避障规避障碍物。
这就需要在完全遍历路径规划算法中加入障碍物检测和规避策略,确保机器人能够安全地避开障碍物。
总结起来,移动机器人的完全遍历路径规划算法是一种重要的算法,能够使机器人在给定的环境中高效地遍历所有可达的点。
通过合理选择策略和加入障碍物规避策略,可以提高路径规划的效果。
然而,在实际应用中仍然面临挑战,需要进一步研究和优化算法。
移动机器人全局路径规划算法综述随着科技的快速发展,移动机器人在许多领域的应用越来越广泛,如无人驾驶、物流配送、灾难救援等。
全局路径规划是移动机器人导航的重要环节,旨在为机器人提供从起始点到目标点的最优路径。
本文将对移动机器人全局路径规划算法进行综述。
基于图的路径规划算法是一种广泛使用的全局路径规划方法。
在此类算法中,环境模型被表示为图,其中节点代表环境中的关键点,边代表节点之间的连接关系。
常见的基于图的路径规划算法有 A*算法、Dijkstra算法和 Bellman-Ford算法等。
A*算法是一种经典的基于图的路径规划算法,它通过为每个节点分配一个估计代价,并选择总代价最小的节点进行扩展,最终找到从起始点到目标点的最优路径。
Dijkstra算法也是基于图的路径规划算法中常用的一种,它通过不断扩展起始节点,并在扩展过程中更新节点代价,最终找到从起始点到所有节点的最短路径。
Bellman-Ford算法则适用于具有多个节点的图,它通过循环迭代更新节点的代价,找到从起始点到所有节点的最短路径。
基于模型的路径规划算法使用机器学习等技术对环境进行建模,并根据模型生成全局路径。
此类算法通常需要大量的数据来训练模型,并要求环境模型能够准确地反映实际环境。
常见的基于模型的路径规划算法有神经网络、支持向量机(SVM)、模糊逻辑等。
神经网络是一种常用的基于模型的路径规划算法,它通过训练神经网络来学习环境的特征和规律,并生成最优路径。
支持向量机(SVM)则通过将环境特征映射到高维空间,并找到最优的超平面来分割环境,从而生成最优路径。
模糊逻辑则将环境信息表示为模糊变量,并使用模糊规则进行路径规划。
混合路径规划算法综合了基于图的路径规划算法和基于模型的路径规划算法的优点。
此类算法通常使用基于图的路径规划算法来生成局部最优路径,再使用基于模型的路径规划算法来调整和优化全局路径。
常见的混合路径规划算法有遗传算法、粒子群优化算法等。
机器人导航系统中的路径规划算法教程导语:随着人工智能的快速发展,机器人已逐渐成为我们日常生活中的一部分。
而机器人导航系统中的路径规划算法则是机器人能够在未知环境中自主导航的关键。
本文将介绍机器人导航系统中常用的路径规划算法及其原理。
一、Dijkstra算法Dijkstra算法是一种常用的单起点最短路径算法,被广泛应用于机器人导航系统中。
该算法通过计算起点到其他所有节点的最短路径,找到离起点最近的节点,然后以该节点为中间节点继续遍历,直到遍历到终点为止。
Dijkstra算法的基本步骤如下:1. 初始化:设置起点的最短路径为0,其他节点的最短路径为无穷大。
2. 选择最近的节点:从距离起点最近的未访问节点中选择一个节点作为当前节点。
3. 更新最短路径:对于当前节点的相邻节点,如果通过当前节点到达相邻节点的路径比已知最短路径短,则更新最短路径值。
4. 标记当前节点为已访问节点,并回到第2步,直到遍历到终点节点。
二、A*算法A*算法是一种启发式搜索算法,能够在保证最优解的情况下提高搜索效率。
该算法通过估计当前节点到终点的距离,选择最有希望通向终点的节点进行下一步搜索。
A*算法的基本步骤如下:1. 初始化:设置起点节点的启发式值为0,其他节点的启发式值为无穷大。
2. 选择最有希望的节点:对于每个未访问节点,计算启发式值(一般使用曼哈顿距离或欧几里得距离),选择启发式值最小的节点作为当前节点。
3. 更新节点的启发式值和代价:对于当前节点的相邻节点,如果通过当前节点到达相邻节点的路径比已知最短路径短,则更新最短路径值和启发式值。
4. 标记当前节点为已访问节点,并回到第2步,直到遍历到终点节点。
三、RRT算法RRT(Rapidly-Exploring Random Tree)算法是一种基于随机采样的快速探索算法,被广泛运用于机器人导航系统中。
该算法通过随机采样、生成树的方式构建一颗探索树,从而找到起点到终点的路径。
动态障碍物环境下移动机器人的全局路径规划研究李二超;王慧莹;杨秀平;梁波【摘要】针对环境中存在动态障碍物时,如何运用全局路径规划算法求解移动机器人的最佳路径,设定动态障碍物的运动范围是已知的,则危险程度是一个区间数.定义一种Pareto概率支配公式,求出不同区间数之间的占优概率,由此得出哪条路径的安全程度更高.对传统NSGA-Ⅱ算法进行改进,根据约束函数把所有的解区分为可行解与非可行解,引入非可行解储备集储存好的非可行解,引导可行解进化出更好的解.建立环境模型,用Matlab软件进行仿真,仿真结果表明对不同的障碍物环境,该方法均能规划出安全无碰的路径,与传统算法进行对比,改进后算法在求解动态障碍物环境下的机器人路径规划问题更加可行有效.%For the dynamic obstacles in the environment,how to use the global path planning algorithm to solve the optimal path of mobile robot,assuming that the motion range of the dynamic obstacle is known,so the hazard level is an interval number. Define a Pareto probability dominance formula,find out the dominant probability between different interval numbers,which can be used to determine which path is more secure. The traditional NSGA-Ⅱalgorithm is improved,and all solutions are classified into feasible and infeasible solutions according to the constraint function,the non feasible solution set is introduced to store the non feasible solution,guide feasible solutions to evolve better solutions. The environment model is established and simulated with MATLAB software. The simulation results show that for different obstacle environ-ment,this method can be used to plan a safe path,compared with the traditional algorithm,the improved algorithm insolving the dynamic obstacle environment for robot path planning problem is more feasible and effective.【期刊名称】《南京师大学报(自然科学版)》【年(卷),期】2017(040)003【总页数】8页(P52-58,66)【关键词】移动机器人;路径规划;动态障碍物;NSGA-Ⅱ算法【作者】李二超;王慧莹;杨秀平;梁波【作者单位】兰州理工大学电气工程与信息工程学院,甘肃兰州730050;兰州理工大学电气工程与信息工程学院,甘肃兰州730050;兰州理工大学经济管理学院,甘肃兰州730050;兰州理工大学电气工程与信息工程学院,甘肃兰州730050【正文语种】中文【中图分类】TP273如今,机器人已经大量应用在各种行业,机器人不仅可以代替人们在有辐射、有粉尘、有毒等恶劣环境中作业,还可以广泛应用于科学考察、地质勘探、灾难急救、制造业、农业生产等多个领域中[1-2]. 60年代,美国研究的火星探索用移动机器人,实现了在火星上软着陆后移动并采集数据. 近年来,日本、美国等国家已研制出多种农业用机器人:采摘机器人、耕耘机器人、除草机器人、饲喂机器人等.不论是火星探索机器人还是工业机器人,都要求能够在一定的范围内安全运动,完成特定的任务,所以,路径规划和避障问题是首要解决的一个共同技术问题. 路径规划一般的分类方法是依据机器人对作业环境信息的掌握程度分为全局路径规划和局部路径规划,其中全局路径规划在规划前已得到环境的整体信息[3-5]. 而机器人实际工作的环境多是复杂多变的,在移动过程中可能会遇到不确定的障碍物,这时机器人怎样在运动中避开障碍物就显得尤为重要[6]. 本文考虑环境中存在不确定性障碍物,给定其活动范围,将 NSGA-Ⅱ算法引入机器人路径规划中,并对传统的NSGA-Ⅱ算法做出部分改进,引入非可行储备集保留部分好的不可行解,运行算法结果得到接近最优的路径[7],与传统NSGA-Ⅱ算法进行对比,改进后的算法搜索出的路径更加安全有效.1.1 问题描述本文要求解的问题可描述如下:设环境中存在多个静态障碍物和不确定性障碍物,不确定性障碍物也可称为危险源,将机器人放入这样的环境中,怎样规划出一条或多条从起始点到目标点并实现与障碍物无碰的路径,权衡路径长度和安全程度两个相互冲突的目标,筛选出若干条折中的最佳移动轨迹.1.2 环境建模机器人路径规划问题的第一步就是要建立一个适当的环境模型,本文研究的是陆地移动机器人,将机器人的移动空间用二维物理空间表示,机器人用一个可以朝360°任意方向移动的点表示,障碍物按机器人半径进行膨胀,只考虑运动空间的几何约束,不考虑机器人的运动学约束.在全局坐标系O-XY中,起始点和目标点分别标记为ST、TA,用多边形表示静态障碍物,隐形边框的圆形表示危险源的活动范围. 当起始点和目标点所在直线与X轴相交时,对坐标进行如下变换:以连接点ST和 TA的直线作为X′轴,以垂直于X′且经过ST点的直线为Y′轴[8].将线段ST-TA进行(n+1)等分,并在每个等分点处作垂线,得到一组平行直线族{l1,l2,…,ln}. 该直线族与任一路径的交点将对应一个点序列(ph1,ph2,…,phn),这些点序列加上起始点ST和TA 就构成机器人的一条完整路径[9],可用如下所示的点集合描述:1.2.1 约束违背函数通过约束违背函数,可以判断路径是否为可行路径.只有当函数值为零时,表明路径与环境中所有的静态障碍物无碰撞,是可行的;函数值不为零时,表明路径与静态障碍物有一处或多处碰撞,是不可行的,函数公式如下:1.2.2 路径总长度将起始点ST设为ph0,目标点TA设为phn+1,路径PH总长度的计算公式为:式中,n表示路径段总数,d(phj,phj+1)表示点phj与点phj+1间的距离,在坐标系0-X′Y′ 中,d(phj,phj+1)的计算公式可表示为:1.2.3 路径安全程度安全程度用来评价路径与不确定障碍物间发生碰撞的机率,由于不确定障碍物给出的是活动范围,具体位置未知,所以决定了安全程度为一个区间数,首先,求出路径段与危险源之间的距离,设危险源的活动范围为:则路径段与危险源之间的最大与最小距离分别是:式中,(xrc,yrc)为圆心,rc为圆的半径,d(oc)为路径到圆心的距离. 定义安全度的率属度函数为:式中,d(Dsi)为路径段与第i个危险源间的距离,dmax是危险源的最大活动半径,当d(Dsi)>dmax时,路径是绝对安全的,安全程度为0;dmin为危险源的最小活动半径,当d(Dsi)<dmin时,路径是绝对危险的,安全程度为1. 当d(Dsi)的值介于dmax与dmin之间时,由率属度公式求得安全程度的值.由于路径安全程度测的是求得的路径与不确定危险源的碰撞概率,显然其对于已知的静态障碍物是百分之百安全无碰撞的,所以这里计算出的安全程度是局部的. 1.2.4 危险程度的比较由(3)可知危险程度在一个区间取值,所以其比较也就是区间数的比较. 设xi、xj两个目标的取值区间分别为和并假设xi和xj所对应真实目标函数值在区间上均服从均匀分布.与的在一维坐标上的位置分为以下3种类型:类型1:两区间互不相交, f(xi)-≥f(xj)+;说明选择所得xi真实目标值一定好于xj,因此,有理由认为目标空间上可行解xi以概率1优于xj,而xj优于xi的概率为 0.类型2:两区间部分相交, f(xi)+≥f(xj)+≥f(xi)-≥f(xj)-;说明真实目标值xi同时存在大于、小于或等于xj的可能. 先考虑区间[f(xj)+,f(xi)+],xi落在该区间的概率为,在该区间xi以概率1优于xj,再考虑区间[f(xi)-,f(xj)+],xi落在该区间的概率为,在该区间上xi优于xj的概率为0.5+,所以,在目标空间上xi优于xj的概率p(xixj)为:类型3:一个区间内包含着另一个区间f(xi)+≥f(xj)+≥f(xj)-≥f(xi)-;说明真实目标值xi同时存在大于、小于或等于xj的可能. 先考虑区间[f(xj)+,f(xi)+],xi落在该区间的概率为,在该区间xi以概率1优于xj,再考虑区间[f(xj)-,f(xj)+],xi落在该区间的概率为,在该区间xi以0.5的概率优于xj,所以,在目标空间上xi优于xj的概率p(xixj)为:以上的p(xixj)满足:(1)0≤p(xixj)≤1;(2)p(xixj)+p(xjxi)=1.p(xixj)=q表示xi的目标值以概率q优于xj目标值带来的效益,由p(xixj)或p(xjxi)的值可以比较xi与xj目标值的大小.2.1 传统NSGA-Ⅱ算法NSGA-Ⅱ是在NSGA的基础上改进得到的一种MOEA[10],其最突出的特点是提出了快速非支配排序法[11-12],相比原始的NSGA降低了计算复杂度,由原来的O(mN3)降到O(mN2),其中,m为目标函数个数,N为种群大小[13]. 并且求出的解均匀分布,保持了种群的多样性. 引入了精英策略[14],将父代种群与其产生的子代种群组合,优胜劣汰产生下一代种群,有利于保持父代中的优良个体进入下一代,并通过对种群中所有个体的分层排序,使得最佳个体不会丢失,提高了种群水平.2.2 对传统NSGA-Ⅱ算法的改进在原来的算法中,所有不满足约束条件的解将会被舍去,但是这些非可行解中含有部分有价值的解,如路径长度短或分布性好的解,在改进的算法中,保留一定量的非可行解,设为Na个,通过约束违背函数可得每条路径与障碍物碰撞的路径段数,选取碰撞次数少的前Q个,若Q>Na,再计算这Q个非可行解的拥挤距离,根据拥挤距离排序选取前Na个拥挤距离较大的解合并到可行解集合中,共同参与父代种群的筛选. 以后生成的每一代个体都将循环这样的步骤:分为可行解与不可行解——筛选Na个优秀的非可行解合并到可行解集合——进行非支配排序与拥挤距离计算——选取父代种群进行交叉变异.2.3 算法步骤(1)随机生成N个初始种群P.(2)根据路径约束违背函数将种群P划分为可行解与非可行解.(3)选取碰撞次数少的前Q个非可行解,若Q>Na,再计算这Q个非可行解的拥挤距离,根据拥挤距离排序选取前Na个拥挤距离较大的个体进入非可行储备集Q1.(4)将Q1合并到可行解集合,作为备选染色体集合A.(5)根据非支配排序和拥挤距离对Q2进行排序,采用竞标赛选择法选择N/2个个体作为第一代父种群.(6)对父种群进行自适应交叉变异操作生成子种群,将子种群和父种群合并成规模为2N的新种群,转到步骤(2)将新种群划分为可行解与不可行解.(7)同步骤(3)选择非可行解中碰撞次数少、拥挤距离大的前Na个个体保存到非可行储备集中,再将可行解与此非可行储备集中的个体合并为集合B.(8)根据非支配排序和拥挤距离对B进行排序,采用精英策略筛选出前N个优秀个体作为下一代父种群.(9)判断进化代数是否达到最大进化代数,若没有,跳转到步骤(6),否则根据非支配排序和拥挤距离从N个个体中选出R个优秀个体.(10)算法结束.3.1 实验参数设置为了说明改进后算法的有效性,设计在给定的相同环境下,分别采用未做改进的NSGA-Ⅱ算法和改进后的NSGA-Ⅱ算法进行实验,对实验结果图和数据进行对比分析. 实验参数设置如表1所示.3.2 实验结果与分析实验一:机器人的活动环境设置为一个静态障碍物和一个动态障碍物(环境1).在给定的活动环境下,本文算法每运行1次可以有效地得到50个非支配路径解,取R为10,筛选留下前10个最优解,图2是未经改进的NSGA-Ⅱ算法在环境1下搜索的10条全局最优路径,图3是改进后的NSGA-Ⅱ算法在环境1下搜索的10条全局最优路径.表2、表3分别是传统算法和改进算法在环境1中得到的10条路径的测试结果. 总耗时43.688 s.总耗时21.812 s.图2中的路径虽然都是安全的,但是转弯多路径太长,明显达不到优化的效果,图3中的路径不仅绝对安全,而且出现折线少,很接近最短路径,实现了优化的效果. 由表1和表2中的数据可知传统算法得到的路径平均总长度是161.022 180 9,改进算法得到的平均值是56.012 635 54;传统算法得到的路径安全程度上限平均值是0.282 184 187,下限平均值是0.726 628 631,改进算法得到的路径安全程度上限平均值是0,下限平均值是0.191 321 564;传统算法运行一次所需的时间是43.688 s,改进算法运行一次所需的时间是21.812 s. 很明显改进后的NSGA-Ⅱ算法在路径总长度、安全程度和算法执行耗时都远远优于未经改进的NSGA-Ⅱ算法.实验二:在实验一的基础上改变迭代次数,设置为600,其他参数保持不变,机器人的活动范围设置为两个静态障碍物和一个动态障碍物(环境2).图4是未经改进的NSGA-Ⅱ算法在环境2下搜索的10条全局最优路径,图5是改进后的NSGA-Ⅱ算法在环境2下搜索的10条全局最优路径.表4、表5分别是传统算法和改进算法在环境2中得到的10条路径的测试结果. 总耗时101.938 0 s.总耗时20.392 0 s.由表4和表5可知,传统算法得到的路径平均总长度是168.389 653 8,改进算法得到的平均值是57.689 281 08;传统算法得到的路径安全程度上限平均值是0.357 644 97,下限平均值是0.802 089 415,改进算法得到的路径安全程度上限平均值是0.327 766 635,下限平均值是0.772 211 079;传统算法运行一次所需的时间是101.938 0 s,改进算法运行一次所需的时间是20.392 0 s. 相比环境1更复杂的环境2,依然可以看出改进后的NSGA-Ⅱ算法在路径总长度、安全程度和算法执行耗时都要优于未经改进的NSGA-Ⅱ算法.实验三:探讨障碍物的范围对算法性能是否存在影响. 按表1的参数设置,仅改变圆半径的大小,其他参数设置保存不变,分别测试圆半径取值为4、6、8时搜索出的路径图. 实验结果显示半径取值4和6时,算法仍能快速搜索出性能好的路径,仿真结果图为图6和图7. 当半径值超过8时,算法难以搜索出合适的路径,所以建议参数半径值的设置范围为2~6.针对环境中存在动态障碍物时,移动机器人如何搜索出一条安全无碰的最优路径,本文提出了一种改进的NSGA-Ⅱ算法,将好的不可行解考虑进采样空间,引导可行解向最优解收敛,从仿真结果图表中可以看出,在复杂程度不同的仿真环境中,改进后的NSGA-Ⅱ算法搜索出的路径在路径长度、安全程度和算法运算效率上都明显优于传统NSGA-Ⅱ算法,证明所提算法在解决机器人全局路径规划问题上有效可行.【相关文献】[1] 周毅. 基于遗传算法的移动机器人路径规划研究[D].保定:河北工业大学,2015.[2] 侯占军. 移动机器人自主避障方法的研究[D]. 北京:北京工业大学,2008.[3] TANG B,ZHU Z,LUO J. Hybridizing particle swarm optimization and differential evolution for the mobile robot global path planning[J]. International journal of advanced robotic systems,2016,13(3):1-2.[4] 孙波,陈卫东,席裕庚. 基于粒子群优化算法的移动机器人全局路径规划[J]. 控制与决策,2005,20(9):1 052-1 055.[5] 陈智. 基于栅格法多目标路径规划研究[D]. 武汉:华中科技大学,2015.[6] QU H,XING K,ALEXANDER T. An improved genetic algorithm with co-evolutionary strategy for global path planning of multiple mobile robots[J].Neurocomputing,2013,120(10):509-517.[7] 吴青松. 基于遗传算法的移动机器人路径规划研究[D]. 成都:电子科技大学,2005.[8] 张勇,巩敦卫,任永强,等. 用于约束优化的简洁多目标微粒群优化算法[J]. 电子学报,2011,39(6):1 436-1 440.[9] 张勇. 区间多目标优化问题的微粒群优化理论及应用[D]. 徐州:中国矿业大学,2009.[10] 申晓宁,郭毓,陈庆伟,等. 多目标遗传算法在机器人路径规划中的应用[J]. 南京理工大学学报(自然科学版),2006,30(6):659-663.[11] 公茂果,焦李成,杨咚咚,等. 进化多目标优化算法研究[J]. 软件学报,2009,20(2):271-289.[12] 王明昭,王宇平,王晓丽,等. 一种均匀聚集距离的改进NSGA-Ⅱ算法[J]. 西安电子科技大学学报(自然科学版),2016,43(3):49-54.[13] DEB K,AGRAWAL S,PRATAP A,et al. A fast elitist non-dominated sorting genetic algorithm for multi-objective optimization:NSGA-Ⅱ[J]. Lecture notes in computer science,2002,1917:849-858.[14] 陈婕,熊盛武,林婉如,等. NSGA-Ⅱ算法的改进策略研究[J]. 计算机工程与应用,2011,47(19):42-45.[15] AHMED F,DEB K. Multi-objective optimal path planning using elitist non-dominated sorting genetic algorithms[J]. Soft computing,2013,17(7):1283-1299,.[16] DEB K,JAIN H. An evolutionary many-objective optimization algorithm using reference-point based non-dominated sorting approach,part ii:handling constraints and extending to an adaptive approach[J]. IEEE transactions on evolutionary computation,2014,18(4):602-622.。
机器人的运动规划与路径规划算法机器人运动规划与路径规划算法是机器人技术中的一个重要领域,用于解决机器人在特定环境中的运动路径选择问题。
一种高效的机器人运动规划与路径规划算法能够使机器人在复杂环境中快速、准确地完成任务,提高机器人的自主导航能力。
主要包括全局路径规划和局部路径规划两个部分。
全局路径规划是指机器人从起始点到目标点之间寻找一条无碰撞的最优路径,而局部路径规划是指机器人在已知全局路径的情况下,根据环境的变化进行实时规避障碍物的动作。
在全局路径规划中,最常用的算法是A*算法。
A*算法是一种启发式搜索算法,将搜索问题抽象为一个图,然后通过合适的启发函数对搜索过程进行引导,找到到达目标点的最优路径。
A*算法在搜索过程中综合考虑了路径的代价和启发函数的价值估计,能够快速找到最优路径。
然而,A*算法在实际应用中存在一些问题。
例如,当环境中存在大量障碍物时,A*算法的搜索空间会变得非常庞大,导致计算时间增加。
为了解决这个问题,研究人员提出了一些改进的A*算法。
例如,D*算法利用动态的对象检测实时更新路径;ARA*算法通过自适应调整启发函数的权重来平衡搜索速度和最优的路径选择等。
局部路径规划是机器人在全局路径的基础上进行的实时规避障碍物的动作。
在局部路径规划中,最常用的算法是基于反射的时间窗口算法(RTWA)。
RTWA算法通过构建反射窗口,在机器人的感知范围内检测到障碍物,并根据障碍物的位置和速度信息进行反射计算,从而实现避障。
RTWA算法具有计算简单、实时性强等优点,广泛应用于机器人自主避障系统中。
除了A*算法和RTWA算法,还有一些其他的机器人运动规划与路径规划算法也值得关注。
例如,RRT算法是一种基于随机采样的路径规划算法,适用于高维度的连续状态空间;DWA算法是一种基于速度采样的路径规划算法,能够在考虑到机器人动力学约束的情况下进行路径规划。
的性能评价标准主要包括路径长度、搜索时间、计算复杂度和解决方案的质量等。
机器人智能导航与路径规划算法设计与实现智能导航和路径规划是机器人领域中的重要任务,它们可以帮助机器人在复杂环境中快速、准确地进行移动。
本文将介绍机器人智能导航和路径规划的算法设计与实现。
一、智能导航算法设计智能导航算法的设计目标是使机器人能够有效地避开障碍物、找到最优路径,并在实时环境中做出决策。
下面将介绍几种常见的智能导航算法。
1. 基于传感器的导航算法基于传感器的导航算法是利用机器人上的传感器来感知周围环境,根据传感器数据进行决策。
其中,常用的传感器包括激光雷达、摄像头和超声波传感器等。
通过分析传感器数据,可以确定障碍物的位置和形状,进而计算出无碰撞路径。
2. 基于地图的导航算法基于地图的导航算法是先通过激光测距或其他方式构建环境的地图,然后根据地图信息进行路径规划。
常用的地图构建方法包括SLAM(Simultaneous Localization and Mapping)技术和三维重建技术。
路径规划算法可以采用A*算法、Dijkstra 算法等,根据目标地点和当前位置计算最短路径。
3. 模糊逻辑导航算法模糊逻辑导航算法是一种基于模糊逻辑的导航方法,通过建立模糊推理规则和解模糊过程来实现路径规划和决策。
该算法可以考虑到环境中的不确定性和模糊性,并能够根据导航目标和环境状况做出决策。
二、路径规划算法实现路径规划算法的实现是将先前设计的导航算法转化为机器可执行的代码,以实现机器人的自主导航能力。
下面将介绍几种常见的路径规划算法实现方法。
1. 离线规划离线规划是指在机器人运行之前,根据环境地图和导航任务要求计算出整个路径,并将其存储在机器人的内存中。
机器人在运行时只需按照存储的路径进行移动,无需实时计算路径。
这种方法适用于静态环境下的导航任务,但对于动态环境则需要更新路径。
2. 在线规划在线规划是指机器人在运行时根据传感器数据和当前位置实时计算路径。
该方法适用于动态环境下的导航任务,机器人能够根据实际情况做出实时决策,并选择最优路径。
智能机器人的路径规划技巧智能机器人在实现自主导航和路径规划方面起到了至关重要的作用。
路径规划是指机器人在确定目标位置后,通过分析环境信息和考虑机器人自身的能力,选择一条最优路径来达到目标位置。
为了实现高效、安全的路径规划,智能机器人需要掌握一些关键技巧。
1. 环境感知与地图构建在路径规划过程中,机器人需要准确感知周围环境,并构建一个地图。
为了实现准确的环境感知,智能机器人通常使用多种传感器,如摄像头、激光雷达、超声波传感器等。
通过这些传感器获取到的环境信息,可以生成基于格网的地图或者拓扑地图。
这些地图为机器人路径规划提供了重要的基础数据。
2. 路径搜索算法路径搜索是路径规划的核心问题之一,常见的路径搜索算法包括A*算法、Dijkstra算法和广度优先搜索算法等。
A*算法是一种广泛应用的启发式搜索算法,通过估算每个节点到目标节点的代价,并考虑已走过的路径代价,确定最优路径。
Dijkstra算法是一种贪婪算法,通过不断选择最短路径的节点来实现路径搜索。
广度优先搜索算法则按照层次逐层扩展,以找到最短路径。
机器人需要根据实际情况选择适合的路径搜索算法,以获得最佳路径规划效果。
3. 避障与路径优化在实际导航中,机器人需要避免障碍物,以确保路径的安全性和有效性。
为了实现避障功能,智能机器人通常使用障碍物检测和避障算法。
障碍物检测包括基于传感器的实时障碍物检测和预测障碍物检测等技术。
机器人根据检测到的障碍物信息,通过路径重规划或调整运动轨迹来避免碰撞。
路径优化则可以通过改变路径的选择或调整运动速度等方式,以实现更高效的路径规划。
4. 动态环境适应动态环境下的路径规划是一项具有挑战性的任务。
在人流密集的环境中,机器人需要及时调整路径,以避免与行人发生碰撞。
为了实现动态环境适应,智能机器人可以采用实时感知技术,并结合机器学习算法进行路径规划。
机器人通过实时感知周围的环境变化,并根据已有的经验或学习到的规律,迅速做出决策,以避免碰撞和实现高效路径规划。
第2卷第1期2009年3月上海电气技术JOURNAL OF SH ANGH A I ELECT RIC T ECH N OLOGYVo l.2No.1Mar.2009文章编号:1674-540X(2009)01-032-04收稿日期6作者简介曾佳(),女,博士研究生,主要从事人工智能、路径规划等领域的研究,z j@面向复杂环境的移动机器人在线路径规划曾佳,李菁菁(北京航空航天大学,北京100191)摘要:针对移动机器人作业环境的复杂性和不确定性,提出一种面向复杂环境的移动机器人在线路径规划方法。
该方法借鉴自学习实时启发式搜索和多步搜索思想,将执行阶段与规划阶段交替进行,并在传感器有限探测范围内寻优,使规划路径适应复杂环境约束,规避障碍物,同时满足在线应用的要求。
仿真结果表明该方法可以快速有效的完成面向复杂环境的移动机器人在线路径规划,证明了方法的正确性和有效性。
关键词:移动机器人;复杂环境;路径规划;在线规划中图分类号:T P 24文献标识码:AMobile Robot Online Path Planning in Complex EnvironmentZEN G J ia ,LI J ingj ing(Beihang U niversit y,Beijing 100191,China)Abstra ct:Aimed at the complexity and uncertainty of mobile robot work environment,an online path planning method of mobile r obot in complex environment was proposed.U sing the concept of learning real-time heuristic sear ch algorithm and the muti-step sear ch algorithm,executing phase and planning phase were car ried out alternately and the optimization was limited in the sensor s detection range.The path could match the constraints of the complex environment and online application.Simulation results show that the method could gain the mobile r obot online path quickly in complex environment,which prove the correctness and validity of the method.Key words:mobile robot;complex envir onment;path planning;online planning移动机器人被广泛应用于医疗、军事、工业等领域,运行环境也日益复杂。
密集障碍物环境下移动机器人全局路径规划
路径规划/双层粒子群/启发式搜索/脱障算子
1 引言
路径规划是机器人导航技术的重要部分,研究的内容是在已知或未知的环境中,寻找一条从起点到终点的满足一定优化指标的无碰撞路径。
据机器人对环境的掌握状况,已有的路径规划方法可分为基于模型的全局路径规划和基于信息检测的局部路径规划。
全局路径规划的基本问题是环境建模和路径寻优,重点在于开发高性能的搜索算法,使得规划的路径全局最优。
目前,用于全局路径规划的方法主要有基于图论、栅格等的传统方法[1]和基于进化算法的智能方法[2]。
这些方法各具优点,但又都有不足之处[3]。
粒子群优化是Kennedy等借鉴鸟群的集体捕食行为,提出的一种随机群进化方法[4]。
相对传统的优化方法,该方法易于实现、可调参数少,以及收敛速度快,已成功应用于函数优化、模式识别、神经网络训练、数据挖掘,以及路径规划等领域。
但是,利用粒子群优化进行机器人路径规划,存在局部收敛、效率低下,以及精度不高等缺点,尤其是含有非规则密集障碍物的复杂环境,优化的路径多与障碍物碰撞。
针对粒子群优化用于密集障碍物环境机器人全局路径规划存在的问题,本文提出一种双层微粒群优化方法(Two-layer particle swarm optimization, LPSO)。
首先,采用坐标变换法构建环境模型,将路径规划问题表达为一个约束优化函数问题。
接着,通过在评价函数中引入罚函数,将约束优化转变为无约束优化。
随后,定义脱障算子,给出双层粒子群优化算法的思想及步骤。
最后,仿真验证本文所提算法的有效性。
2 问题描述与建模
为了规划机器人路径,首先需要建立问题的数学模型。
如图1所示,在机器人工作空间建立两维绝对坐标系,其中,S为机器人的起点,G为终点,多边形物体表示障碍物。
当起点与终点的连线与X轴不重合时,建立如下相对坐标系
S-xy:以S和G间的连线为轴,过S点且垂直SG的直线为y轴[5]。
两坐标系间的变换公式为:
,为S在坐为坐标轴,X与x的夹角S-xy(x,y)式中,(X,Y)和分别为点在坐标系O-XY和的坐标标系O-XY的坐标。
可以得到平行直线族,的垂线,该并过每个等分点作进行对线段SGD+1等分,SG
即为规划的目标点序列直线族与路径的交点,
使得构成的中就是在相对坐标系机器人路径规划,S-xy,寻找一个目标点序列, 路
径.
且,与相邻点的连线也不与障满足期望的性能指标。
这里,的约束是对点:不在障碍物上或内部碍物相交。
相对坐标为对于路径
机器人路径规划问题,可以建模为一个约束优化问题,通过惩罚不可行路径,得到如下无约束优化问题:
,与障碍物碰撞的次数。
由式(5)可知,P与障碍物碰撞的次数越多式中,受到的惩罚程度越大,该路径的性能越差。
3 基于双层粒子群优化算法的机器人全局路径规划
3.1 启发式搜索——脱障算子
采用微粒群优化进行机器人路径规划时,如果能够根据机器人的起点和终点位置,以及障碍物的位置,引导微粒的搜索,那么,将会提高优化解成为可行路径的概率。
基于此,当某路径不可行时,说明该路径的某段与障碍物相交,对该路径实施脱障操作,也即对微粒的相应分量定向定步长变异,以避免机器人与障碍物碰撞。
图2给出了脱障操作的过程,图中,Ⅰ线为原来的路径,由于与障碍物相交,因此,是不可行的。
Ⅱ线为脱障操从而成为可行路径。
,不再与障碍物相交,作后得到的路
径.
需要注意的是,对微粒实施脱障操作后,如果微粒的某维,如,超出了取值范围,那么,采用下式进一步调整:
3.2 双层粒子群优化算法
在复杂、密集障碍物的环境中,采用粒子群优化算法进行机器人全局路径规划时所得结果大多为非可行路径,既使为可行路径,也多为局部最优的。
而调整粒子群优化算法的参数,已不能有效解决算法后期早熟收敛的问题。
为此,本文基于算法结构,提出一种双层粒子群优化算法。
该算法包括两层,底层粒子群优化算法主要在决策变量的取值空间中执行全局搜索,并采用脱障算子动态调整其全局极值点,以快速定位最优路径的大致位置。
循环运行若干次底层算法、快速获取若干条无碰路径后,将其上传到顶层,作为顶层种群的部分粒子,进而为顶层算法确定重点搜索区域。
为提高底层算法的全局:
具体更新公式如下,本文采用基于线性递减惯性权值的更新公式更新粒子的速度和位置,搜索能力
顶层粒子群优化算法接收底层搜索的若干条较优路径后进行局部搜索,并采用脱障算子动态扰动调整其全局极值点。
为克
服早熟收敛,顶层算法在初期仍需具有好的全局搜索能力。
为此,在迭代过程中,顶层算法的社会学习因子值采用线性递增。
具体公式如下,惯性权重:
和个体学习因子采用线性递减方式
3.3 算法步骤
基于双层粒子群优化算法的机器人全局路径规划方法可描述如下:
Step1:由第2节所提方法,建立问题的环境地图,给出问题的无约束最小优化模型。
令底层算法运行次数计数器变量维数给定种群规模,Step2:D,随机初始化底层种群。
计算每个粒子的评价值并令该值为其个体极值点。
Step3:,求出种群的全局极值令底层算法迭代计数器。
, 点、全局
极值点;,进而更新其个体极值点和Step4:据式(8)(9)更新底层种群至执行脱障操作若是是否为碰撞路径?,Step5:检测全局极值点,否则存储该全局极值点并进至。
Step7
令,为种群的部分初始粒子。
计算每个粒子评价值并令该值为其个体极Step8:随机初始化顶层种群。
令顶层算法迭代计数器,k=1
进而求出全局极值点值点进而更新其个体极值点(10)更新顶层种群,;Step9:根据式(8)和、全局极值点检测全局极值点是否为碰撞路径?若是Step10:,执行脱障操作。
,返回step9。
否则Step11:,输出算法搜索结果。
4 仿真实验及结果分析为验证所提算法的有效性,将本文算法应用到障碍物密集分布的环境中,并与仅含脱障算子的改进粒子群优化算法(OPSO)、标准粒子群优化算法(SPSO)以及遗传算法(GA)比较。
算法所需参数设置:底层和顶层算法皆取粒子群规模N=20,维数D=10,最大迭代次数Y=100。
OPSO、SPSO的参数设置均同本文底层粒子群优化算法,但在OPSO中利用了本文的脱障算子。
单点交叉概率,采用比例选择复制,变异概D=10,GA的种群规模N=40,维数最大迭代次数T=300,
(大适应度,小概率变异)。
实验的运行环境为率PC机,Intel Celeron M-。
MA TLAB7.4
以及1.6GHz CPU,504MB RAM,.
障碍物密集分布的环境如图3-4所示,在的正方形环境中有12个静态障碍物,其顶点坐标已知,机器人始点终点坐标已知。
运行上述四种算法各30次,图3-4和表1分别出示了四种算法所得的最好优化结果、最差优化结果及统计数据。
由表1可知,在障碍物密集分布的环境,SPSO运行30次存在21条碰撞路径,可见SPSO若不改进已不能应用于障碍物密集分布环境的路径规划。
而OPSO以100%的比例找到问题的可行路径,且平均运行时间与SPSO相近,可见脱障算子显著提高了OPSO的可行性。
然而,OPSO的所得路径均值、方差均明显差于LPSO算法,体现了OPSO仍存在不足,即在SPSO 中仅引入脱障算子仍不能完全克服局部早熟。
LPSO运行30次均能得到接近理论全局最优解的无碰撞最优路径,且方差很小,这表明LPSO具有较好的鲁棒性。
虽然LPSO运行时间均值长于SPSO,但是相对优异的行走路径,稍长的时间花费是可以接受的。
GA运行的结果与SPSO相似。
由此可见,相对其余三种算法,LPSO具有较强的全局寻优能力和较快的收敛速度。
5 结束语
本文针对标准粒子群优化算法早熟收敛、效率低的缺点,给出了一种用于障碍物密集分布环境下机器人全局路径规划的双层粒子群优化算法。
通过定义基于障碍物顶点信息的脱障算子,启发、引导全局极值点向理论全局最优解趋近,有效改善了标准粒子群优化算法的全局寻优能力。
采用双层的算法结构,有效解决了早熟收敛问题。
仿真结果表明本文所提算法的可行性和有效性。
曾现峰。