一种基于改进多目标萤火虫算法的机器人路径规划方法与流程

文档序号:16795167发布日期:2019-02-01 19:49阅读:465来源:国知局
一种基于改进多目标萤火虫算法的机器人路径规划方法与流程

本发明属于群体智能优化技术领域,涉及一种机器人路径规划方法。



背景技术:

机器人在行径过程中,会遇到不同形状,不同性质的障碍物干扰,绕过这些障碍物并且使得机器人的各项性能(如能耗、安全性、行径拐角等)达到最优是众多学者研究的热门。机器人路径规划本质上是一个具有多个性能指标的np完全问题,难以精确求解。然而在实际应用中,常将机器人路径规划问题简化为单目标优化问题进行求解,近来有学者尝试将多目标进化算法引入到路径规划问题的求解中,并进行了有益的探讨。多目标进化算法能够均衡优化各个子目标,最终获得一个pareto非劣解集,决策者可以依据实际需要,从非劣解集中挑选出满意解作为问题的最终解。所以,多目标进化算法更适合于求解机器人路径规划问题。

多目标萤火虫算法是一种基于群智能搜索的多目标进化算法,模拟自然界中萤火虫种群的生物特性完成信息的交换达到寻优的目的。算法以结构简单,易于实现的优点成为近来学者们研究的热点。



技术实现要素:

发明的目的是提出一种基于改进多目标萤火虫算法的机器人路径规划方法。

本发明是通过以下技术方案实现的。

本发明所述的一种基于改进多目标萤火虫算法的机器人路径规划方法,包括以下步骤:

(1)识别机器人移动场景,建立二维模型,在路径规划区域范围内建立全局直角坐标系o-xy。并标记出障碍物位置;

(2)将x轴等间距分割,每个分割线上均可确定一个路径点。把这些路径点顺次相连,即得到一条路径。分割精度可依照机器人移动要求选择,设置为n;

(3)设s为机器人行进的起点,g为机器人行进的终点,假定n个路径点组成一个路径,则一条路径表示为p={s,p1,p2,…,pn,g}。s与g的坐标已知,确定各路径点{p1,p2,…,pn}的纵坐标即可求得机器人规划路径;

(4)随机生成n条路径,评估每条路径的长度、平滑度;

(5)根据改进多目标萤火虫的更新法则,对n条路径进行修正、更新;

(6)对不可达路径进行惩罚:判断路径与障碍物是否有交叉;若是,对该路径进行惩罚,人为增大其路径长度,降低其平滑度;

(7)综合考虑每条路径的长度及平滑度。将pareto非劣解保存在外部档案中。设置外部档案保存个数为m;

(8)利用pareto支配以及密度拥挤删除的原则更新外部档案;

(9)循环执行步骤(5)到步骤(8),直到满足迭代停止条件,则所得机器人最优移动路径群即为外部档案中保存的m条路径。可根据实际需要选择一条路径作为机器人的移动路径。

上述步骤(5)中所述的改进的多目标萤火虫算法,算法的具体描述如下。

1)遍历n条路径。

2)将路径的目标函数值(路径长度、路径平滑度)两两进行比较。

3)根据pareto支配的概念,若满足支配条件路径j支配路径i,则路径i利用公式xi(t+1)=xi(t)+β(xj(t)-xi(t))+α·εi进行更新。若不满足支配条件,路径i按照公式xi(t+1)=c1g*+c2leader+α·εi进行更新。leader为外部档案中保留的非劣路径。

4)遍历完成,进入下一步。

本发明综合考虑机器人行进性能,将其路径长度以及路径平滑度作为主要优化目标,利用改进的多目标萤火虫算法进行优化求解,寻找路径长度短,路线更为平滑,并能完美避开障碍物的机器人行径路线。对多目标萤火虫算法进行了改进,改善了算法的收敛速度,提高了算法的求解精度。克服了传统的多目标萤火虫算法存在收敛速度慢、求解精度低的问题,提高算法性能,更加符合机器人路径规划的要求。

附图说明

图1为本发明的工作流程图。

图2为机器人行进路况示意图。

图3为起点和终点为{s1(0,0),g1(600,0)}的改进的多目标萤火虫算法对机器人进行路径规划的解决方案。

图4为起点和终点为{s2(0,-100),g2(600,100)}的改进的多目标萤火虫算法对机器人进行路径规划的解决方案。

图5为起点和终点为{s3(0,-200),(600,200)}的改进的多目标萤火虫算法对机器人进行路径规划的解决方案。

具体实施方式

下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。

一种基于改进多目标萤火虫算法的机器人路径规划方法,主要分为三个步骤:

步骤1:识别机器人行进环境,并对其进行简化建模。举例如下:

设置场景如附图2所示。图中黑色图形表示区域内的障碍物,它们的具体位置如下:

f1:[(50,120),(94,88),(122,155),(100,189)];

f2:[(217,87),(296,87),(296,27),(217,27)];

f3:[(198,11),(233,6),(239,-48),(214,-73),(176,-90),(154,-23),(94,-23)];

f4:[(325,-100),(386,-100),(386,-162),(325,-162)];

f5:[(407,38),(452,40),(455,3),(413,-21),(383,0)];

f6:[(486,-84),(555,-63),(481,-177)];

在该场景中分别设置了三组起点和终点,{s1(0,0),g1(600,0)}、{s2(0,-100),g2(600,100)}、{s3(0,-200),(600,200)}。

步骤2:对路径评估的目标函数的定义。

所述的目标函数构建依靠机器人的路径规划问题中常见的目标有路径长度、路径平滑度、航行时间、能耗、安全性等优化目标。本发明采用路径长度和路径平滑度两个常见且关键的性能指标,路径规划的目标是得出路径长度较短,路径平滑度较好的路径。

(1)路径长度f1(p)

对于某条路径p={p0,p1,…,pn,pn+1},该路径由n+1条路径段组成,路径长度即为组成该条路径的所有路径段的长度之和。

其中i表示路径点的序号;|pipi+1|表示路径点pi和路径点pi+1之间的路径段的长度;

(2)路径平滑度

将每个路径段看成一个矢量,根据斜率计算出其与x'轴的夹角,为路径方向角,计算相邻两段路径段的方向角的差值,得到偏转角度αi,用偏转角度大小描述路径的平滑度。

f2(p)为路径p的平均拐角值,αi(i=1,2,…,n)表示两向量pi-1pi和pipi+1的夹角(0≤αi≤π)。n为n+1条路径段中相邻路径段向量之间夹角的个数;当某一夹角大于或等于π/2时,对目标值进行惩罚,k为αi中大于或等于π/2的个数。

(3)对不可行路径进行惩罚

不可行路径是和障碍物相交的路径,可行路径是不和障碍物相交的路径。根据某条路径上的所有路径点的坐标值和障碍物顶点的坐标值,可以判断该条路径是否碰撞障碍物。为了保证每条不可行路径的目标函数值比所有可行路径的目标函数值大,对于不可行路径p进行惩罚,以上两个目标函数值的计算如下:

fi(p)=wi+m·c,i=1,2(3)

其中,wi为所有可行路径在目标函数fi上的最差值;m为不可行路径与障碍物相交的次数;c为惩罚因子。

步骤3:利用标准的多目标和改进的多目标萤火虫算法分别对机器人移动路线进行优化。设置每个萤火虫粒子表示一条行进路径,综合考虑路径长度和路径平滑度两个条件下,获得每代的优化路径,并将其保存在外部档案中。通过种群不断的进化,更新外部档案,直到迭代结束。如此,外部档案中保留的都是最优路径,人工挑选一个最为合适的路径即完成了机器人的路径规划。实例结果如图3-图5所示。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1