一种用于智能拣选优化系统的制作方法

文档序号:18011877发布日期:2019-06-26 00:13阅读:210来源:国知局
一种用于智能拣选优化系统的制作方法

本发明涉及智能优化技术领域,具体地说是一种用于智能拣选优化系统。



背景技术:

目前国内的无人仓是尚处于起步阶段,大多数公司还在摸索,而无人仓管理系统的开发和agv小车的厂商通常不是一家公司,因此,agv小车路径规划算法虽然可以在各种仓库中通用,但是还存在着多重问题:

(1)和前端订单生成和后端工位的处理脱节,容易出现调度不当;

(2)节点冲突和工位处理效率不匹配等问题,导致无人仓整体运行效率并不高;

(3)现有的仿真软件无法简单地实现订单的生成方式,合并方式,货架的分配,工位的分配,路径优化算法,任意由节点和边组成的地图的生成等。

存在的原因大致如下:

(1)成本制约,agv的研发与投入需要大量的资金和人才,和技术积累,而无人仓建设方需要快速投入agv,更多的是选择和外部供应商合作,对前端订单生成和后端工位处理没有深度融合;

缺乏自主研发能力,大多中小企业都是找供应商进行开发,这就造成自主控制能力不强,更多的是集中控制,并且出现问题维护难,若后期也无需求发生变化,整改也较为不易。



技术实现要素:

本发明为克服现有技术的不足,提供一种用于智能拣选优化系统,实现了无人仓运行过程的仿真,为无人仓的优化配置提供参考,包括地图的设计、工位的配置、货架的摆放、商品的摆放、agv小车数量的配置、agv小车参数的配置等。

为实现上述目的,设计一种用于智能拣选优化系统,包括地图生成模块、路径线路规划模块、路径时间规划模块、时间冲突优化模块、agv小车,其特征在于:所述的地图生成模块、路径线路规划模块、路径时间规划模块、时间冲突优化模块通过软件通信连接,并通过无线通讯控制agv小车运行;所述的优化系统的具体工作流程如下:

(1)开始;

(2)根据实际工作的仓库情况,开始导入生成地图;

(3)输入agv小车任务;

(4)进行路径规划,所述的路径规划包括路径线路优化、路径时间优化、路径冲突优化;

(5)最终得出最优路径线路;

(6)结束。

所述的路径线路优化具体过程如下:

(1)分析agv小车的任务;

(2)用dijkstra算法计算该agv小车的所有路径;

(3)判断是否存在最短路径,是则令k=0,第0层路径集合为最短路径,i=0;否则为可行路径为空,报警;

(4)对当前搜索的k层路径上的第i点,令path1=当前搜索路径的起始节点到i的路径,依次搜索该节点的所有相邻节点j,令path2=节点j到终点的最短路径,合并path1和path2,存入第k+1层路径集合;

(5)判断路径总条数是否达到最大值,是则i=i+1;否则结束;

(6)当i=i+1时,判断是否到达路径终点,是则搜索下一条路径;否则重复步骤(4);

(7)搜索下一条路径,判断改层是否完成所有路径搜索,是则k=k+1;否则重复步骤(4);

(8)当k=k+1时,重复步骤(4)。

所述的导入生成地图为xml格式地图。

所述的agv小车路径=空载agv小车到达货架的路径+运载货架的agv小车到达工位的路径+离开工位并运载货架的agv小车到达货架的路径。

所述的路径时间优化具体过程如下:

(1)分析agv小车的任务;

(2)当agv小车在进行即时任务时,即时任务不进行路径规划,直接把拣选任务加入搬运该货架的agv小车;

(3)当agv小车在进行优先任务时,将下一个任务分配给搬运该货架的agv小车,作为下一个任务优先执行;

(4)判断剩余分配任务数量是否超过agv小车的数量,是则选取个数小于等于agv小车数量的任务数;否则建立数学模型调用cplex求解;

(5)选取个数小于等于agv小车数量的任务数,agv小车起始位置设置为上一轮分配货架的位置;

(6)建立数学模型调用cplex求解;

(7)完成所有任务后结束。

所述的即时任务为agv小车正在搬运货架,并且未完成工位拣选工作,是从货架位置前往工位中任务;所述的优先任务为agv小车正在搬运货架,并且已经完成工位拣选工作,是从工位位置前往货架中任务。

所述的cplex求解为其中,ti:agv小车i完成任务需要的时间。

所述的其中,ti,j:agv小车i完成任务j所需的时间;xi,j:0-1变量,任务j分配给agv小车i则为1,否则为0;ti,j=agv小车i从起点行驶至货架j的位置所需的时间+搬起货架的时间+从货架j行驶至j分配的工位的时间+任务j在工位处理的时间+从工位返回货架的时间+放下货架的时间。

所述的路径冲突优化具体过程如下:

(1)分析agv小车的任务;

(2)计算初始的重叠路段dr和冲突点集合cp;

(3)令t=0;

(4)对cp第t个冲突点的agv小车i搜索冲突点pt前一个节点pt’到当前目的的路径;

(5)搜索第k层路径,用搜索路径替换当前路径;

(6)计算替换路径后的冲突点集合cp;

(7)判断cp集合是否减小,是则重复步骤(3);否则令k=k+1;

(8)令k=k+1,重复步骤(5)。

agv小车当前位置到货架位置为lag1,货架位置到工位为lag2,工位到货架位置记为lag3,agv小车行驶路径就是由这三段路径不断重复实现;在lag1中,agv小车是空载行驶,lag2和lag3是装载行驶,当agv小车i执行第k个任务p,如果没有冲突和等待,在lag1中,agv小车到达某个点pt的时间为arrpt(i)=sti,klag1+vt(spi,k,pt),lag1的起始时间sti,klag1=sti,k;在lag2中,agv小车到达某个点pt的时间为arrpt(i)=sti,klag2+vt(p,pt),lag2的起始时间sti,klag2=arrp+lt;在lag3中,agv小车到达某个点pt的时间为arrpt(i)=sti,klag3+vt(wp,pt),lag3的起始时间sti,klag3=leavep;agv小车i在非工位的节点pt的离开时间为:leavept(i)=arrpt(i)+ct,ct为agv小车在节点上停留的时间,可通过agv小车的速度和长度以及安全距离进行计算:speed(i,p,pt)为agv小车i运行任务p,经过点pt时的行驶速度,vl为agv小车的长度,sl为安全距离。记agv小车之间静态重叠的路段集合为使得pt∈r(i)∩r(j)},r(i)表示agv小车i的路径点集合;将dr中的重叠路段按到达的时间arrpt(i)进行排序,并按顺序更新dr中的点的到达时间;对于dr的第k个重叠点overlap(pt,i)对应的agv小车i或者对应的冲突节点pt如果在前k-1个冲突中没有出现过,则overlap(pt,i)的到达时间不变,否则,假设最近的一个冲突为overlap(pt,j),如果arrpt(j)<arrpt(i)<leavept(j),那么agv小车i需要再节点pt上等待,等待的时间为wtpt(i)=leavept(j)-arrpt(i),更新agv小车i在节点pt和其之后的任意节点离开和到达的时间:leavept(i)=leavept(i)+wtpt(i),arrpt(i)=arrpt(i)+wtpt(i);记agv小车之间相向冲突的集合为cp={collision(pt,i)∈dr,使得arrpt(j)<arrpt(i)<leavept(j),且agv小车i和agv小车j在节点pt相向冲突};假设pt是agv小车i的第k个节点,是agv小车j的第k′个节点,如果agv小车i第k-1个节点是agv小车j的第k′+1个节点,则两车发生相向冲突。

本发明同现有技术相比,提供一种用于智能拣选优化系统,(1)实现了工位的合理应用,经过多次的仿真运行显示,本系统能合理分配工位,减小每个工位的工作量差异,不会出现某些工位特别繁忙,某些工位特别空闲的情况(这个在现实中存在的问题制约着无人仓的整体效率,而不是单纯的路径规划的优劣制约无人仓的效率);(2)实现了agv小车工作量的合理分配,经过多次的仿真运行显示,本系统能合理分配任务给agv小车,减小每个agv小车的工作量差异,不会出现某些agv小车特别繁忙,某些agv小车特别空闲的情况;(3)订单完成效率高,传统方法只关注agv小车路径来提高小车运行效率而忽略了无人仓其他瓶颈环节,本系统提供端到端的解决方案,突破瓶颈环节,协调无人仓中各个环节的运行,使客户订单以在最快速度完成出库;(4)计算速度快,对于一次15个搬运任务的工位分配、agv小车分配、路径规划计算速度可在1秒内完成;(5)agv小车运行效率高,对300多个节点的地图,20辆以内的agv小车冲突问题通过本系统的路径规划算法得到解决,并能以高效的路径行驶;(6)实现了无人仓运行过程的仿真,为无人仓的优化配置提供参考,包括地图的设计、工位的配置、货架的摆放、商品的摆放、agv小车数量的配置、agv小车参数的配置等。

附图说明

图1为本发明系统工作流程图。

图2为本发明系统中agv小车路径的优化软件流程图。

图3为本发明系统中agv小车路径时间的优化软件流程图。

图4为本发明系统中agv小车路径冲突优化软件流程图。

具体实施方式

下面根据附图对本发明做进一步的说明。

如图1所示,地图生成模块、路径线路规划模块、路径时间规划模块、时间冲突优化模块通过软件通信连接,并通过无线通讯控制agv小车运行;所述的优化系统的具体工作流程如下:

(1)开始;

(2)根据实际工作的仓库情况,开始导入生成地图;

(3)输入agv小车任务;

(4)进行路径规划,所述的路径规划包括路径线路优化、路径时间优化、路径冲突优化;

(5)最终得出最优路径线路;

(6)结束。

导入生成地图为xml格式地图。

所述地图是由垂直直线生成的网格形状的图,其基本元素是地图的节点和弧,地图的弧是agv小车可行驶的轨道,地图的节点是agv小车可停顿的点和可识别的位置,地图的基础数据中也包含了节点类型信息,节点类型一共包含过道、货架、工位三种类型,货架表示货架存放的节点位置,工位表示agv小车在工位前停顿等待拣选的位置,其他均为过道。

本发明所展示的地图是xml格式的地图,但是工程中的cad地图只有节点的坐标,和工位、货架所在位置,通过本发明可以先将只有节点x,y坐标和节点类型的csv格式的文档转换成对应格式的xml文件。

导入xml格式的地图文件会生成带有编号的节点,这些节点包括过道、货架、工位,与本公司构建的无人车实际地图结构成比例保持一致。地图体现出节点之间的互通性,agv小车位置的定位靠节点上粘贴的二维码传输给系统,实时反映给调度系统。

导入地图后,可生成agv小车在空驶和装载两种状态下的任意两个节点之间的可行路径集合。agv小车空驶时,可到达地图上任意一个节点,agv小车装载时,除了正在搬运的货架所存放的节点,其他节点均不能到达,在所有可行节点的任意两点之间生成的可行路径的条数可以通过算法参数调节。

如图2所示,路径线路优化具体过程如下:

(1)分析agv小车的任务;

(2)用dijkstra算法计算该agv小车的所有路径;

(3)判断是否存在最短路径,是则令k=0,第0层路径集合为最短路径,i=0;否则为可行路径为空,报警;

(4)对当前搜索的k层路径上的第i点,令path1=当前搜索路径的起始节点到i的路径,依次搜索该节点的所有相邻节点j,令path2=节点j到终点的最短路径,合并path1和path2,存入第k+1层路径集合;

(5)判断路径总条数是否达到最大值,是则i=i+1;否则结束;

(6)当i=i+1时,判断是否到达路径终点,是则搜索下一条路径;否则重复步骤(4);

(7)搜索下一条路径,判断改层是否完成所有路径搜索,是则k=k+1;否则重复步骤(4);

(8)当k=k+1时,重复步骤(4)。

生成的可行路径集除了记录从每个起点到每个终点所经过的节点外,还记录了这条路径的总长度和agv小车运行这条路径所花费的时间。生成的所有可行路径集可以以xml格式输出保存至硬盘,在下次运行任务时可以直接导入,因此只要导入一次地图,生成一次可行路径集,就可以在后续的任务运行仿真中减少这一步操作,而是直接导入第一次生成的可行路径集即可。

agv小车路径=空载agv小车到达货架的路径+运载货架的agv小车到达工位的路径+离开工位并运载货架的agv小车到达货架的路径。

根据随机生成的订单,统计出需要搬运的货架,对于一个货架对应的多个订单只需要搬运一次。首先定义优先任务如下:假设新产生的任务当中有一个需要搬运的货架p,如果正好有一个agv小车正在搬运p,并且已完成拣选是从工位返往货架位置的,则称任务p为优先任务。定义即时任务如下:假设新产生的任务当中有一个需要搬运的货架p,如果正好有一个agv小车正在搬运p,并且未完成拣选,是从货架位置前往工位的,则称任务p为即时任务。

如图3所示,路径时间优化具体过程如下:

(1)分析agv小车的任务;

(2)当agv小车在进行即时任务时,即时任务不进行路径规划,直接把拣选任务加入搬运该货架的agv小车;

(3)当agv小车在进行优先任务时,将下一个任务分配给搬运该货架的agv小车,作为下一个任务优先执行;

(4)判断剩余分配任务数量是否超过agv小车的数量,是则选取个数小于等于agv小车数量的任务数;否则建立数学模型调用cplex求解;

(5)选取个数小于等于agv小车数量的任务数,agv小车起始位置设置为上一轮分配货架的位置;

(6)建立数学模型调用cplex求解;

(7)完成所有任务后结束。

即时任务为agv小车正在搬运货架,并且未完成工位拣选工作,是从货架位置前往工位中任务;所述的优先任务为agv小车正在搬运货架,并且已经完成工位拣选工作,是从工位位置前往货架中任务。

cplex求解为其中,ti:agv小车i完成任务需要的时间。

其中,ti,j:agv小车i完成任务j所需的时间;xi,j:0-1变量,任务j分配给agv小车i则为1,否则为0;ti,j=agv小车i从起点行驶至货架j的位置所需的时间+搬起货架的时间+从货架j行驶至j分配的工位的时间+任务j在工位处理的时间+从工位返回货架的时间+放下货架的时间。

约束条件:每辆agv小车至多分配一个任务:(2)每个任务分配至一辆agv小车:

先按就近原则分配工位。在给任务分配完agv小车后再进行工位的调整。计算每个任务到达预先分配工位的时间,作为任务到达工位的一个估计,将任务按到达先后逐个分配工位,按最小等待时间的原则分配工位,即若当任务到达工位时工位空闲,则直接分配,否则分配等待时间最小的工位。

假设货架p已由cplex的算法分配为agv小车i的第k个任务,为记spi,k为agv小车i执行第k个任务时的初始位置,spi,0为agv小车的初始位置,spi,k=agv小车结束第k-1个任务时的位置,即agv小车第k-1个任务的货架位置。记wp为货架p按最近原则分配到的工位,sti,k为agv小车i执行第k个任务时的初始时间,则货架p到达工位的时间arrp=sti,k+vt(spi,k,wp)+lt,其中vt(o,d)表示agv小车从起始点o到达目的地点d所花费的时间(已在计算可行路径集时计算出来)。其中at(r(o,d)k-1,k)表示o到d的路径第k-1个节点到第k个节点所花费的时间,可由原始数据给出,或者通过agv小车运行速度和节点k-1到节点k之间弧的长度进行计算,n(o,d)为o->d的路径需要转弯的节点数,tt为agv小车转弯一次花费的时间。由此可计算agv小车在前往工位和返回货架在路上花费的时间。lt和pt分别表示agv小车举起和放下货架花费的时间。leavep=arrp+orderp*dt,orderp*dt分别表示货架p对应的订单数和工位处理一个订单需要的时间。任务p结束的时间为finishp=leavep+vt(wp,spi,k)+pt,下一个任务开始的时间为上一个任务结束的时间:sti,k=fti,k-1。若工位w的上一个任务p′满足arrp′<arrp<leavep′,则任务p需要再工位上等待,等待的时间wtw,p=leavep′-arrp,任务p选择的工位

如图4所示,路径冲突优化具体过程如下:

(1)分析agv小车的任务;

(2)计算初始的重叠路段dr和冲突点集合cp;

(3)令t=0;

(4)对cp第t个冲突点的agv小车i搜索冲突点pt前一个节点pt’到当前目的的路径;

(5)搜索第k层路径,用搜索路径替换当前路径;

(6)计算替换路径后的冲突点集合cp;

(7)判断cp集合是否减小,是则重复步骤(3);否则令k=k+1;

(8)令k=k+1,重复步骤(5)。

agv小车当前位置到货架位置为lag1,货架位置到工位为lag2,工位到货架位置记为lag3,agv小车行驶路径就是由这三段路径不断重复实现;在lag1中,agv小车是空载行驶,lag2和lag3是装载行驶,当agv小车i执行第k个任务p,如果没有冲突和等待,在lag1中,agv小车到达某个点pt的时间为arrpt(i)=sti,klag1+vt(spi,k,pt),lag1的起始时间sti,klag1=sti,k;在lag2中,agv小车到达某个点pt的时间为arrpt(i)=sti,klag2+vt(p,pt),lag2的起始时间sti,klag2=arrp+lt;在lag3中,agv小车到达某个点pt的时间为arrpt(i)=sti,klag3+vt(wp,pt),lag3的起始时间sti,klag3=leavep;agv小车i在非工位的节点pt的离开时间为:leavept(i)=arrpt(i)+ct,ct为agv小车在节点上停留的时间,可通过agv小车的速度和长度以及安全距离进行计算:speed(i,p,pt)为agv小车i运行任务p,经过点pt时的行驶速度,vl为agv小车的长度,sl为安全距离。记agv小车之间静态重叠的路段集合为使得pt∈r(i)∩r(j)},r(i)表示agv小车i的路径点集合;将dr中的重叠路段按到达的时间arrpt(i)进行排序,并按顺序更新dr中的点的到达时间;对于dr的第k个重叠点overlap(pt,i)对应的agv小车i或者对应的冲突节点pt如果在前k-1个冲突中没有出现过,则overlap(pt,i)的到达时间不变,否则,假设最近的一个冲突为overlap(pt,j),如果arrpt(j)<arrpt(i)<leavept(j),那么agv小车i需要再节点pt上等待,等待的时间为wtpt(i)=leavept(j)-arrpt(i),更新agv小车i在节点pt和其之后的任意节点离开和到达的时间:leavept(i)=leavept(i)+wtpt(i),arrpt(i)=arrpt(i)+wtpt(i);记agv小车之间相向冲突的集合为cp={collision(pt,i)∈dr,使得arrpt(j)<arrpt(i)<leavept(j),且agv小车i和agv小车j在节点pt相向冲突};假设pt是agv小车i的第k个节点,是agv小车j的第k′个节点,如果agv小车i第k-1个节点是agv小车j的第k′+1个节点,则两车发生相向冲突。

优化目标1:min|cp|;优化目标2:

优化算法采取先优化cp再优化dr的方式。将更新的cp中的冲突点按时间顺序进行排列,对于collisionpt(i),重新搜寻agv小车i在pt之前的一个节点pt′到当前目的节点o的路径(如果是lag1或者lag3,目的节点是货架位置,如果是lag2,目的节点是工位),在搜索路径时,设置pt和agv小车从这段lag的路径之前的所有节点为禁行。

agv小车的运行仿真模块模拟了agv小车在接受任务后按规定路径完成任务的过程。agv小车首先从当前位置行驶至当前执行的任务货架的位置,再由货架位置行驶至对应工位,再由工位返回货架位置。如果agv小车的优先任务列表非空,则先执行优先任务,再执行其他任务。运行的过程中,用一个节点锁定列表对每个agv小车所占据的当前节点进行上锁,上锁的时间为agv小车到达上一个节点开始驶向当前节点的时间,解锁的时间为agv小车离开当前节点一段安全距离之后。agv小车运行过程中自动探测下一个节点是否被上锁,如果被上锁,则agv小车停下等待,直到下一个节点被解锁或者当等待时间超过容忍时间时触发动态路径规划模块。如果agv小车下一个节点和当前方向一致,则agv小车直接运行至下一个节点,否则,agv小车先停在当前节点,转向下一个节点,再行驶。

当agv小车发生冲突,等待超过一定时间时触发动态路径规划模块。动态地计算agv小车从当前位置到当前目的地的路径,并避免冲突点。假设agv小车i在节点pt发生冲突,pt的前一个节点为pt’,即agv小车在pt’等待pt解锁,记agv小车从当前任务的起点到pt’的路径为route0。搜索pt’的相邻节点ngb,且ngb≠pt,搜索ngb到当前目的节点o的路径route1。如果则更新ngb到o的路径为route1。

提供一种用于智能拣选优化系统,(1)实现了工位的合理应用,经过多次的仿真运行显示,本系统能合理分配工位,减小每个工位的工作量差异,不会出现某些工位特别繁忙,某些工位特别空闲的情况(这个在现实中存在的问题制约着无人仓的整体效率,而不是单纯的路径规划的优劣制约无人仓的效率);(2)实现了agv小车工作量的合理分配,经过多次的仿真运行显示,本系统能合理分配任务给agv小车,减小每个agv小车的工作量差异,不会出现某些agv小车特别繁忙,某些agv小车特别空闲的情况;(3)订单完成效率高,传统方法只关注agv小车路径来提高agv小车运行效率而忽略了无人仓其他瓶颈环节,本系统提供端到端的解决方案,突破瓶颈环节,协调无人仓中各个环节的运行,使客户订单以在最快速度完成出库;(4)计算速度快,对于一次15个搬运任务的工位分配、agv小车分配、路径规划计算速度可在1秒内完成;(5)agv小车运行效率高,对300多个节点的地图,20辆以内的agv小车冲突问题通过本系统的路径规划算法得到解决,并能以高效的路径行驶;(6)实现了无人仓运行过程的仿真,为无人仓的优化配置提供参考,包括地图的设计、工位的配置、货架的摆放、商品的摆放、agv小车数量的配置、agv小车参数的配置等。

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