[发明专利]一种自适应切换的自动搬运小车路径规划方法有效
申请号: | 201810093061.5 | 申请日: | 2018-01-30 |
公开(公告)号: | CN108227718B | 公开(公告)日: | 2022-04-05 |
发明(设计)人: | 项卫锋;季彩玲;王池如;奚韬 | 申请(专利权)人: | 安徽宇锋智能科技有限公司 |
主分类号: | G05D1/02 | 分类号: | G05D1/02;G06N3/00 |
代理公司: | 湖南正则奇美专利代理事务所(普通合伙) 43105 | 代理人: | 肖琦 |
地址: | 231241 安徽省合*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自适应 切换 自动 搬运 小车 路径 规划 方法 | ||
1.一种自适应切换的自动搬运小车路径规划方法,其特征在于,
包括:
采用栅格法创建仓库中自动搬运小车的二维工作环境模型;
基于所述二维工 作环境模型,利用自动搬运小车的探测装置识别当前的工作环境;
根据所述当前的工作环境,自适应切换遗传算法和粒子群算法进行路径规划;
所述采用栅格法创建仓库中自动搬运小车的二维工作环境模型,包括:
对自动搬运小车及其仓库环境进行预处理,得到建模条件;
利用自动搬运小车的探测装置擦采集自动搬运小车的工作环境信息,作为建模参数;
基于所述栅格法,利用所述建模条件和建模参数,创建自动搬运小车的二维工作环境;
所述当前的工作环境包括自动搬运小车当前工作仓库的面积和有任务请求的加工工位位置的数量,所述根据所述当前的工作环境,自适应切换遗传算法和粒子群算法进行路径规划,包括:
在所述当前工作仓库的面积大于设定面积阈值且有任务请求的加工工位位置的数量超过设定数量时,采用遗传算法进行路径规划;
在所述当前工作仓库的面积小于设定面积阈值且有任务请求的加工工位位置的数量小于设定数量时,采用粒子群算法进行路径规划;
所述采用遗传算法进行路径规划,包括:
S11、采用二进制编码方式对染色体各点坐标进行编码,并通过随机函数产生若干个体作为初始化种群,种群大小为n,种群代数m,该染色体的各点连接起来形成路径;
S12、采用第一适应度函数,计算m代种群的个体的适应度;
S13、根据第m代种群个体的适应度,求个体的累计概率;
S14、通过轮盘操作对累计概率进行处理,选取第m代的n个父染色体;
S15、根据交叉概率,对第m代种群的父染色体进行交叉操作,产生新的个体;
S16、根据变异概率,对交叉生成的新个体进行变异操作,产生新的种群;
S17、判断遗传算法中的目标函数当前的迭代次数是否超过自大迭代次数,若超过则输出路径规划结果,否则执行步骤S12;
所述第一适应度函数具体为:
其中,(Xs,Ys)为起点坐标,(XE,YE)为终点坐标,(Xi,Yi)为中间点坐标,i为常数;
所述根据交叉概率,对第m代种群的父染色体进行交叉操作,产生新的个体,包括:
以设定的交叉概率在所述父染色体中随机选择一个除起始点与目标点以外的转向点;
将该转向点作为交叉点,把所述路径分成了两个路径段;
选择两个父代染色体,并相互交换交叉点后面的路径段,得到两个子代染色体作为新个体;
所述根据变异概率,对交叉生成的新个体进行变异操作,产生新的种群,包括:
以设定的变异概率在所述新个体中间转向点中任意选取一个位置;
将该转向点的位置坐标作一次非一致性变异,并把当前的转向点移至新产生的转向点上,得到新的种群;
所述采用粒子群算法进行路径规划,包括:
S21、对粒子群进行随机初始化处理,得到初始化后的粒子群;
S22、根据第二适应度函数,计算初始化后粒子群中每个粒子的适应度值;
S23、对于每个粒子,在其适用度阈值大于个体极值时,用适用度阈值替换个体阈值;
S24、对于每个粒子,在其适用度阈值大于全局极值时,用适用度阈值替换全局极值;
S25、根据速度、位置更新公式,更新粒子的速度和位置;
S26、判断更新次数是否超过最大次数,若是则输出路径规划结果,否则执行步骤S22;
所述第二适应度函数具体为:
其中,f为一个粒子中所有相邻顶点之间的直线距离的和,(Xj,Yj)为一个粒子中每个顶点的坐标,d表示顶点数量且为常数;
所述速度更新公式为:
Vjd(t+1)=w·Vjd(t)+c1·rand()(pjd(t)-xjd(t))+c2·rand()(gd(t)-xjd(t)),
其中,Vjd(t)表示第j个粒子在t时刻的速度,rand()为随机变量,w为惯性权重,pjd(t)为第j个粒子在t时刻搜索到的最好的位置,gd(t)为目前整个粒子群搜索到的最好的位置,xjd(t)表示第j个粒子在t时刻的位置,c1、c2均为学习因子;
所述位置更新公式为:
xjd(t+1)=xjd(t)+vjd(t+1),
其中,vjd(t+1)表示第j个粒子在t+1时刻的速度,xjd(t)表示第j个粒子在t时刻的位置,xjd(t+1)表示第j个粒子在t+1时刻的位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽宇锋智能科技有限公司,未经安徽宇锋智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810093061.5/1.html,转载请声明来源钻瓜专利网。