CN116203959A - 基于hac算法的机器人路径规划方法及系统 - Google Patents
基于hac算法的机器人路径规划方法及系统 Download PDFInfo
- Publication number
- CN116203959A CN116203959A CN202310181970.5A CN202310181970A CN116203959A CN 116203959 A CN116203959 A CN 116203959A CN 202310181970 A CN202310181970 A CN 202310181970A CN 116203959 A CN116203959 A CN 116203959A
- Authority
- CN
- China
- Prior art keywords
- robot
- algorithm
- robots
- grid
- path
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 73
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000013439 planning Methods 0.000 title claims abstract description 33
- 239000011159 matrix material Substances 0.000 claims abstract description 34
- 230000002776 aggregation Effects 0.000 claims abstract description 13
- 238000004220 aggregation Methods 0.000 claims abstract description 13
- 230000006870 function Effects 0.000 claims description 16
- 238000005457 optimization Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 7
- 238000004519 manufacturing process Methods 0.000 claims description 4
- 238000011065 in-situ storage Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 10
- 239000000463 material Substances 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 238000007621 cluster analysis Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012384 transportation and delivery Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 239000006185 dispersion Substances 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000032258 transport Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0219—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本发明提出基于HAC算法的机器人路径规划方法,属于路径规划领域。包括提取历史订单品项数据,形成特征矩阵;构建仓库栅格模型,基于HAC算法对特征矩阵中的数据进行相似度聚合,获得由高到低排序的货物需求度,将待分配订单任务分配给对应的机器人;基于A*算法代价估算函数对机器人路径寻优,得到机器人代价最小的最优路径;获取每一时刻每个机器人的位置信息,将位置信息按照时间调用形成预约表;将每两个机器人的最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突,则利用动态加权表确定机器人通过顺序,若不存在冲突,机器人按照最优路径执行订单任务。本发明针对不同场景下的仓库拣选需求,基于历史订单数据,运算效率高、动态自适应强。
Description
技术领域
本发明属于机器人路径规划领域,尤其涉及基于HAC算法的机器人路径规划方法及系统。
背景技术
本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
多机器人的无冲突调度是智能仓储系统的核心,现有的仓库规模不断扩大,机器人数量逐渐增多,系统运行流程复杂,问题之间联系紧密,单个机器人的最佳路线、单个问题的最优策略在系统全局运行时并非最优。另外,入库时不同订单的运送优先级是影响仓库效率的因素之一。不同的仓库对于货物的需求程度均有很大不同,单订单按货物顺序拣选的完成方式会大大降低系统效率。
由于仓库内不只一辆机器人,多辆机器人之间会造成冲突,单机器人的最短路径中有其他机器人频繁经过时,会产生严重的冲突问题,且冲突具有强动态性和交错性,容易造成连环冲突和拥堵,甚至造成死锁现象。同时若随机存储物资,会大大降低仓库使用效率、管理困难,且会在机器人运输物资出库时造成较大混乱。
发明人发现,现有方法缺少能够适用多场景的路径优化策略,无法根据不同仓库适应性地改变冲突策略,制约了高需求货物的运输效率。同时不能从全局的角度出发彻底优化冲突,只能定性减少冲突而不能定量消除冲突,多个机器人运动过程会频繁发生冲突并引发大量启停。
发明内容
为克服上述现有技术的不足,本发明提供了基于HAC算法的机器人路径规划方法及系统,其针对不同场景下的仓库拣选需求,基于历史订单数据,提出一种运算效率高、动态自适应的基于HAC算法的多机器人路径规划方法。
为实现上述目的,本发明的一个或多个实施例提供了如下技术方案:
本发明第一方面提供了基于HAC算法的机器人路径规划方法。
基于HAC算法的机器人路径规划方法,包括以下步骤:
获取历史订单任务,提取历史订单任务中设定历史订单品项数据,形成特征矩阵;
构建小型仓库栅格模型,基于HAC算法对特征矩阵中的数据进行相似度聚合,获得由高到低排序的货物需求度,在待分配订单任务中使需求度高的货物批次靠前优先运输,并将待分配订单任务分配给对应的机器人;
基于A*算法代价估算函数,对有订单任务的每个机器人进行路径寻优,得到每个机器人从起始点到目标点的代价最小的最优路径;
获取每一时刻每个机器人的位置信息,将位置信息统一存储并按照时间调用,形成预约表;
将每两个机器人的最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突,则以每个机器人标号和对应的动态权重构成动态加权表,利用动态加权表确定冲突点的机器人通过顺序;若不存在冲突,机器人直接按照对应最优路径执行订单任务,直至所有的待分配订单任务被执行完毕。
本发明第二方面提供了基于HAC算法的机器人路径规划系统。
基于HAC算法的机器人路径规划系统,包括:
特征矩阵获取模块,被配置为:获取历史订单任务,提取历史订单任务中设定历史订单品项数据,形成特征矩阵;
需求度排序模块,被配置为:构建小型仓库栅格模型,基于HAC算法对特征矩阵中的数据进行相似度聚合,获得由高到低排序的货物需求度,在待分配订单任务中使需求度高的货物批次靠前优先运输,并将待分配订单任务分配给对应的机器人;
最优路径获取模块,被配置为:基于A*算法代价估算函数,对有订单任务的每个机器人进行路径寻优,得到每个机器人从起始点到目标点的代价最小的最优路径;
预约表建立模块,被配置为:获取每一时刻每个机器人的位置信息,将位置信息统一存储并按照时间调用,形成预约表;
路径冲突判断模块,被配置为:将每两个机器人的最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突,则以每个机器人标号和对应的动态权重构成动态加权表,利用动态加权表确定冲突点的机器人通过顺序;若不存在冲突,机器人直接按照对应最优路径执行订单任务,直至所有的待分配订单任务被执行完毕。
本发明第三方面提供了计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如本发明第一方面所述的基于HAC算法的机器人路径规划方法中的步骤。
本发明第四方面提供了电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本发明第一方面所述的基于HAC算法的机器人路径规划方法中的步骤。
以上一个或多个技术方案存在以下有益效果:
1.本发明提出一种较为标准的适用于多种存储模式的小型仓储模型,可以应对多种场景的仓储要求,合理的环境表示有利于建立规划方法和选择合适的搜索算法,最终实现较少的时间开销而规划出较为满意的路径。
2.本发明针对智能仓储系统中的多车调度问题,改进了预约表,大大降低了预约表占用的存储空间的同时提高了运行效率;对A*算法做出了改进,达到同时避免顶点冲突、边缘冲突的目的。
3.本发明针对不可避免的冲突增加了动态加权表,对高优先级货物进行优先排序,提高了仓库的运送效率。
4.本发明增加了HAC算法,分析当前订单中的货物需求程度,对订单顺序进行合理分配排序,实现对不同仓库提供不同针对方案、并最大提升高需求货物出库效率的目标。
本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
构成本发明的一部分说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
图1为本发明实施例一基于HAC算法的多机器人路径规划方法流程图;
图2为本发明实施例一商品代码特征示意图;
图3为本发明实施例一HAC算法下的二叉树模型示意图;
图4为本发明实施例一中使用HAC算法后的订单排序示意图;
图5为本发明实施例一建立的小型仓库栅格模型图;
图6为本发明实施例一货架分配示意图;
图7为本发明实施例一预约表示意图;
图8为本发明实施例一中使用动态加权表前后的效率对比图;
图9为本发明实施例一中使用HAC算法后的订单历史聚合结果图。
图10为本发明实施例二的系统结构图。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
实施例一
如图1所示,本实施例提供基于HAC算法的机器人路径规划方法,包括如下步骤:
步骤1:获取历史运输的订单任务;
本实施例中,所述历史订单任务可以根据查询到的历史订单数据确定。需要提取一定数量的历史订单品项数据形成特征矩阵,并作为HAC算法输入的训练样本集D;
作为一种或多种实施例,步骤1需要提取一定数量的历史订单品项数据形成特征矩阵,并作为HAC算法输入的训练样本集D,具体包括:
步骤101:提取历史订单品项的外箱条码、货物数量信息。以商品条码EAN-13为例,条码中的有效信息一般包括产品生产地区、厂商代码、厂内商品代码,如图2所示,EAN-13条码有13位,分为4个部分,按3-5-4-1分,第一部分代表国家,第二部分代表生产厂商,第三部分代表厂内商品代码,第四部分是效验码。
提取外箱条码中的生产地区、厂商代码、厂内代码及相同代码下的货物数量这4个信息作为历史订单品项的特征信息。
步骤102:构成特征矩阵,矩阵的行表示单个品项的特征信息,列表示品项的特征指标。将数量为m的历史订单品项数据样本Xi看作特征矩阵中的元素,即每个样本Xi有4项特征信息,即Xi={Xi1,Xi2,Xi3,Xi4},则数量为m的历史订单品项数据组成的特征矩阵如下:/>
其中,Xij为第i个样本的第j个检验指标。由于各特征具有不同的量纲,需在聚类前进行标准化处理,公式如下:
步骤103:将特征矩阵中的数据输入HAC算法中,作为训练样本集D。
步骤2:基于构建的小型仓库栅格模型和HAC算法,对特征矩阵中的数据进行层次凝聚聚类分析,形成由高到低排序的需求度聚合二叉树模型,根据需求划分分类数量,得到适应此仓库模型的优先度排序参考表,并以此为标准对新订单任务进行优先级排序;
作为一种或多种实施例,步骤2基于构建的小型仓库栅格模型和HAC算法,对特征矩阵中的数据进行层次凝聚聚类分析,形成由高到低排序的需求度聚合二叉树模型,如图3所示,根据需求划分分类数量,得到适应此仓库模型的优先度排序参考表,并以此为标准对新订单任务进行优先级排序,具体包括:
步骤201:初始化时,将训练样本集D中的每个品项数据点都作为一个独立的簇。
步骤202:计算每两个簇之间的品项相似度,将最相似的两个聚类进行合并。
其中,相似度分析部分,为了明确个货物品项之间的相似度,需要计算簇与簇之间的距离,本文采用欧氏距离建立距离矩阵,欧氏距离的计算公式如下:
其中,dpq为样本Xp和Xq间的欧氏距离,p,q∈{1,2,…,n},j为特征指标。
对于相似度的计算方式,Ward方法(离差平方和法)在分离效果上一般优于最短距离法(Single)、最长距离法(Complete)和平均距离法(Average)。Ward方法总能使聚类后类内离差平方和增量最小,若类别分得好,则同类样本的离差平方和较小(相似度高),而类间样本的离差平方和较大(相似度低)。因此,此实施例中选择Ward方法进行聚类分析,公式如下:
步骤203:重复上述步骤,直到样本集D合并成一个聚类或达到设置的终止条件,结束。
步骤204:基于HAC算法输出的二叉树模型,对新的订单按照货物需求度降序排列,以此使需求度高的货物在订单前排优先运输,以图3展示订单的结果为例,按需求度降序排列顺序为DEFGABCHIJKL,如图4。
作为一种或多种实施例,步骤2中,图5为建立的小型仓库栅格模型图,所述小型仓库栅格模型的构建过程包括:
按照货架的拣选台位置、仓库货架以及运输通道的相对位置关系以及货物的使用频率,以一定的规则构建小型仓库栅格模型。
本实施例中,例如构建一个长25米、宽26米的小型仓储模型;
首先使用栅格法对地图进行分割,每个栅格长1米、宽1米,地图被分割成650个栅格,如图5所示。
左侧区域为拣选台位置,将拣选台布置在仓库的最左侧两列的位置,每个拣选台占用两个栅格,黑色区域为仓库货架的摆放位置,仓库货架以货架组的形式排布在仓库中,每组货架组占用8个栅格,以2行4列的形式排列。
货架组之间均保持宽为一个栅格的间隔,作为机器人的运输通道,白色区域位置即为运输通道,如图5所示,机器人可以通过运输通道将货物送至指定货架。
本实例忽略不同货物大小不一造成托盘尺寸不同的问题,设定每个货位托盘均为长为1米、宽为1米的标准模块,且机器人每次任务只运输一个托盘。
可以理解的是,本实施例中的相应尺寸可以根据具体的需求进行设置。
将货架组根据货物使用频率分成3个部分,分别为高频货架、中频货架及低频货架,如图6所示,方便货物摆放及运输。
步骤3:将改进的A*算法估算函数为目标函数,对有订单运输任务的机器人进行路径寻优,得到从起始点到目标点的代价最小的最优路径;
作为一种或多种实施例,所述基于改进的A*算法估算函数为目标函数,对有订单运输任务的机器人进行路径寻优,得到从起始点到目标点的代价最小的最优路径,具体包括:
步骤301:机器人从起始栅格点出发,在当前栅格点扩展周围的栅格。
本实施例中仓库中的机器人只进行前、后、左、右的移动,因此选用四邻域搜索方式。
当前位置称为父节点,计算周围四个方向栅格的估算代价,并放入存储扩展节点候选表格,周围所有节点完成估算代价后,选择估算代价最小的栅格作为新的移动位置,此位置成为新的父节点。
步骤302:以新的父节点为中心继续扩展栅格,循环进行此步骤,直至机器人到达目标点。
其中,所述A*算法改进的代价估算函数的表达式为:
式中,g(n)表示从起始栅格移动到当前栅格n的实际代价,实际代价一般由路程或时间表示,本发明以时间为统一标量来比较函数f(n)的代价大小。为机器人在从起始栅格到当前栅格过程中转向额外花费的时间总和,p为从起始栅格到当前栅格过程中的转向次数,/>为机器人从起始栅格到当前栅格过程中因为路径冲突原地等待额外花费的时间,q为从起始栅格到当前栅格过程中的原地等待次数。g(n)的表达式为:
其中,d为机器人从起始栅格到当前栅格n的实际移动距离,v为机器人匀速行驶的速度。
h(n)表示从当前栅格n到目标栅格点的启发式估计代价,表达式为:
其中,dn为机器人从当前栅格n到目标栅格点的估计最短距离,这里使用哈曼顿距离计算估计距离,表示为当前节点n与目标点的横向距离与纵向距离之和。
dn=bs(n.x-goal.x)+bs(n.y-goal.y)
(8)
最终得到一条从起始点到目标点的代价最小的最优路径,包括x轴位置、y轴位置、车头方向、当前时间,将这些特征信息组成的路径信息存储到元胞数组AllPath中对应的机器人编号的矩阵中。
步骤4:将该最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突则按照步骤5,利用动态加权表,确定冲突点的通过顺序,若不存在冲突,则直接按照最优路径执行当前订单运输任务。
作为一种或多种实施例,步骤4中,所述预约表的构建过程包括:
获取每一时刻每个机器人的位置信息,并将位置信息统一存储。
将元胞数组AllPath中的信息按照时间调用,形成预约表。
建立的预约表如图7所示,k表示当前时刻对应的预约表张数,预约表按照时间顺序排列,时间间隔为机器人从栅格中心位置移动到相邻栅格中心位置的消耗时间Δt,系统每隔Δt记录一次预约表,第k张预约表中记录着k·Δt时刻所有机器人的位置状态,第k-c张预约表记录着(k-c)·Δt时刻的信息,第k张预约表中的rix表示机器人ri在k·Δt时刻所处仓库位置的横坐标,riy表示机器人ri在此时刻所处位置的纵坐标。
当机器人更新路径时,预约表中的位置信息将会同步更新。初始状态时预约表中信息为空。
作为一种或多种实施例,步骤4中,将该最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突,利用动态加权表,确定冲突点的通过顺序,否则按照最优路径执行当前订单运输任务,具体包括:
步骤401:调用预约表,查询每一时刻的预约表中是否出现相同的坐标,若有,即可确定此扩展节点会发生顶点冲突,利用动态加权表,确定冲突点的通过顺序;如果没有则进入步骤402。
步骤402:交叉调用预约表,并带入判定公式,确定两机器人在相邻两个时刻恰好对调位置。判定公式如下:
Fg(n)(x,y)∈R(k+1)∩Nf(n)(x,y)∈R(k) (9)
其中R(k)与R(k+1)分别是第k张预约表与第k+1张预约表中记录所有机器人位置信息的矩阵。Fg(n)(x,y)表示A*算法当前正在扩展的实际代价为g(n)的父节点的横纵坐标信息,Nf(n)(x,y)表示Fg(n)(x,y)位置的父节点正在尝试扩展的代价为f(n)的节点的横纵坐标信息。当路径规划结束后,机器人运行至父节点Fg(n)(x,y)所在的位置时,应与第k张预约表记录的时刻相对应,因此,如何定位第k张预约表可通过如下公式计算:
其中,AllPath是存储所有机器人行走路径的元胞数组(Cell Array),元胞数量与机器人数量一致,每一个元胞存储着机器人在一批订单中从起始点到完成所有任务的终点的位置及状态信息,AllPath(i)元胞的每一行有四个元素,分别表示机器人i当前位置在坐标系下的纵坐标、机器人i当前位置在坐标系下的横坐标、机器人i当前车头方向(其中数字1代表车头朝横轴正方向,顺时针以此类推)、当前时间,AllPath(i)元胞的行数由机器人i运动时间决定。AllPath(i)元胞的每一行之间的时间间隔Δt为机器人正常运行时从栅格地图的当前栅格中心移动到相邻栅格中心所花费的时间,与预约表同步,因此length(AllPath(i))Δt表示当前机器人已经确定的路径需要消耗的时间。length(AllPath(i))表示当前机器人已经确定的路径需要消耗的时间。
若满足公式9的判定公式,即可确定此扩展节点会发生相向冲突,则按照步骤5确定冲突点的通过顺序;如果不满足则直接按照寻优的路线执行当前订单任务。
步骤5:利用动态加权表,确定冲突点的通过顺序。
步骤501:对运送的货物类型需求度、机器人当前所处运输状态、机器人当前任务剩余运输时间等进行查询,存储形成以机器人标号和对应的动态权重构成矩阵的动态加权表,如表1所示。
表1动态加权表
动态权重用wi表示,指机器人ri在当前时刻的权重,权重wi的矩阵构成如下:
Wi=[Ri,Ji,h(n)i] (11)
其中,Ri表示机器人ri当前执行的运输任务中物资的优先等级,机器人在接到任务后根据货物类型获得权重Ri,直到此任务结束。根据图6中货架的分类,此处把货物同样分为三个类型,高频、中频、低频使用的货物Ri分别赋值为1、2、3,i表示机器人ri在当前时刻是否有载货物,有则表示机器人ri此时处于出货阶段,赋值为1,没有则表示机器人ri此时处于拿货阶段,赋值为2。h(n)i表示机器人ri当前位置到达目标点的启发时间。
步骤502:遇到冲突时,中央控制器调用动态加权表,通过比较处在冲突情况中的机器人的动态权重,确定通过的先后顺序。
在本实例的仓库模型中,选择权重优先级如下:首先,物资需求越频繁,对应机器人越优先通过,且占主导因素;其次,发生冲突的机器人若是同类物资运输时,处于出货状态的机器人优先级高于处于拿货状态的机器人;第三,相同物资类别、相同拿货/出货状态的机器人发生冲突时,剩余启发时间越短越优先通过。
优先级高的机器人路径保持不变;优先级低的机器人需返回步骤3,重新计算运输路线。
步骤6:查询当前批次订单是否完成,若完成,返回步骤1再次获取执行上述路径规划,若未完成,继续执行。
为了验证动态加权算法的有效性,在本实例建立的仓库栅格地图模型中,将基于预约表的A*算法与本发明设计的动态加权表优化算法(简称优化算法)进行了比较。并进行仿真实验,仿真实验如下:在本文建立的栅格地图中,分别通过传统的A*算法与本文基于动态加权表的优化算法运行5组运输任务,5组任务数量分别为100、150、200、250、300,均通过10台机器人进行运输。通过记录任务中所有高频货物最终运输完成时间,对比分析动态加权表对于优先级高的货物的运输效率的提升。仿真结果如图8所示,相较于传统A*算法模型,通过基于动态加权表的优化算法的优化后,5组任务的高频货物运输效率提升随着货物数量增加而更加显著。高频货物运输时间平均减少13.83%,效率有明显的提升。
为了验证HAC算法的有效性,在本实例建立的仓库栅格地图模型中,将基于预约表的A*算法与本文设计的基于HAC算法的改进A*算法(以下简称为优化算法)进行了比较。并进行仿真实验,仿真实验如下:
通过五组实验进行对比分析。基于合作企业的仓库物流历史订单数据信息,调取近一个月内仓库出库的历史货物订单,并根据订单品项的特征信息形成特征矩阵作为训练样本集D,通过HAC算法对数据进行相似度聚合,HAC算法对历史订单的聚合结果如图9所示。分析当前订单中的货物需求程度,对当前订单顺序按照货物需求度降序重新排列,使需求度高的货物能够在当前订单中靠前批次出库。试验结果表明,平均高需求度货物的整体出库时间减少了15.00%,证明了算法的有效性。
实施例二
本实施例提供基于HAC算法的机器人路径规划系统。
基于HAC算法的机器人路径规划系统,包括:
特征矩阵获取模块,被配置为:获取历史订单任务,提取历史订单任务中设定历史订单品项数据,形成特征矩阵;
需求度排序模块,被配置为:构建小型仓库栅格模型,基于HAC算法对特征矩阵中的数据进行相似度聚合,获得由高到低排序的货物需求度,在待分配订单任务中使需求度高的货物靠前批次优先运输,并将待分配订单任务分配给对应的机器人;
最优路径获取模块,被配置为:基于A*算法代价估算函数,对有订单任务的每个机器人进行路径寻优,得到每个机器人从起始点到目标点的代价最小的最优路径;
预约表建立模块,被配置为:获取每一时刻每个机器人的位置信息,将位置信息统一存储并按照时间调用,形成预约表;
路径冲突判断模块,被配置为:将每两个机器人的最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突,则以每个机器人标号和对应的动态权重构成动态加权表,利用动态加权表确定冲突点的机器人通过顺序,若不存在冲突,机器人直接按照对应最优路径执行订单任务,直至所有的待分配订单任务被执行完毕。
实施例三
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述所述的基于HAC算法的机器人路径规划方法中的步骤。
实施例四
本实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述所述的基于HAC算法的机器人路径规划方法中的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.基于HAC算法的机器人路径规划方法,其特征在于,包括以下步骤:
获取历史订单任务,提取历史订单任务中设定历史订单品项数据,形成特征矩阵;
构建小型仓库栅格模型,基于HAC算法对特征矩阵中的数据进行相似度聚合,获得由高到低排序的货物需求度,在待分配订单任务中使需求度高的货物批次靠前优先运输,并将待分配订单任务分配给对应的机器人;
基于A*算法代价估算函数,对有订单任务的每个机器人进行路径寻优,得到每个机器人从起始点到目标点的代价最小的最优路径;
获取每一时刻每个机器人的位置信息,将位置信息统一存储并按照时间调用,形成预约表;
将每两个机器人的最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突,则以每个机器人标号和对应的动态权重构成动态加权表,利用动态加权表确定冲突点的机器人通过顺序;若不存在冲突,机器人直接按照对应最优路径执行订单任务,直至所有的待分配订单任务被执行完毕。
2.如权利要求1所述的基于HAC算法的机器人路径规划方法,其特征在于,提取外箱条码中的生产地区、厂商代码、厂内代码及相同代码下的货物数量这4个信息作为历史订单品项数据,构建特征矩阵。
3.如权利要求1所述的基于HAC算法的机器人路径规划方法,其特征在于,基于HAC算法对特征矩阵中的数据进行相似度聚合,具体包括:
将特征矩阵中的每个品项数据点都作为一个独立的簇,计算每两个簇之间的品项相似度,将最相似的两个聚类进行合并,直到特征矩阵中的数据合并成一个聚类或达到设置的终止条件,得到二叉树模型,基于二叉树模型获得由高到低排序的货物需求度。
4.如权利要求1所述的基于HAC算法的机器人路径规划方法,其特征在于,从仓库栅格模型的起始栅格点出发,在当前栅格点扩展周围的栅格,当前栅格点位置称为父节点,计算周围四个方向栅格的估算代价,选择估算代价最小的栅格作为新的移动位置,新的移动位置成为新的父节点;
以新的父节点为中心继续扩展栅格,直至机器人到达目标点,完成路径寻优。
6.如权利要求1所述的基于HAC算法的机器人路径规划方法,其特征在于,调用预约表,将每两个机器人的最优路径和预约表进行对比,查询每一时刻的预约表中是否出现和这一时刻两个机器人的最优路径相同的坐标,若有,即可确定此扩展节点会发生顶点冲突,利用动态加权表,确定冲突点的机器人通过顺序。
7.如权利要求6所述的基于HAC算法的机器人路径规划方法,其特征在于,若每一时刻的预约表中没有和两个机器人这一时刻最优路径相同的坐标,将两个机器人交叉调用预约表,并带入判定公式,确定两机器人在相邻两个时刻恰好对调位置,判定公式如下:
Fg(n)(x,y)∈R(k+1)∩Nf(n)(x,y)∈R(k)
其中R(k)与R(k+1)分别是第k张预约表与第k+1张预约表中记录所有机器人位置信息的矩阵,Fg(n)(x,y)表示A*算法当前正在扩展的实际代价为g(n)的父节点的横纵坐标信息,Nf(n)(x,y)表示Fg(n)(x,y)位置的父节点正在尝试扩展的代价为f(n)的节点的横纵坐标信息。
8.基于HAC算法的机器人路径规划系统,其特征在于:包括:
特征矩阵获取模块,被配置为:获取历史订单任务,提取历史订单任务中设定历史订单品项数据,形成特征矩阵;
需求度排序模块,被配置为:构建小型仓库栅格模型,基于HAC算法对特征矩阵中的数据进行相似度聚合,获得由高到低排序的货物需求度,在待分配订单任务中使需求度高的货物靠前批次优先运输,并将待分配订单任务分配给对应的机器人;
最优路径获取模块,被配置为:基于A*算法代价估算函数,对有订单任务的每个机器人进行路径寻优,得到每个机器人从起始点到目标点的代价最小的最优路径;
预约表建立模块,被配置为:获取每一时刻每个机器人的位置信息,将位置信息统一存储并按照时间调用,形成预约表;
路径冲突判断模块,被配置为:将每两个机器人的最优路径和预约表进行对比,查询是否存在路径冲突,若存在冲突,则以每个机器人标号和对应的动态权重构成动态加权表,利用动态加权表确定冲突点的机器人通过顺序;若不存在冲突,机器人直接按照对应最优路径执行订单任务,直至所有的待分配订单任务被执行完毕。
9.计算机可读存储介质,其上存储有程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一项所述的基于HAC算法的机器人路径规划方法中的步骤。
10.电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一项所述的基于HAC算法的机器人路径规划方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310181970.5A CN116203959A (zh) | 2023-02-24 | 2023-02-24 | 基于hac算法的机器人路径规划方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310181970.5A CN116203959A (zh) | 2023-02-24 | 2023-02-24 | 基于hac算法的机器人路径规划方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116203959A true CN116203959A (zh) | 2023-06-02 |
Family
ID=86515641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310181970.5A Pending CN116203959A (zh) | 2023-02-24 | 2023-02-24 | 基于hac算法的机器人路径规划方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116203959A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117114560A (zh) * | 2023-10-25 | 2023-11-24 | 中科云谷科技有限公司 | 用于确定物品运输路径的方法、装置、存储介质及处理器 |
CN117455100A (zh) * | 2023-12-26 | 2024-01-26 | 长春市优客云仓科技有限公司 | 一种基于全局最优化的智能仓储物流调度方法 |
CN117474441A (zh) * | 2023-12-27 | 2024-01-30 | 天津万事达物流装备有限公司 | 一种基于智慧物流大数据的无人仓库进出路径管理方法 |
CN117550273A (zh) * | 2024-01-10 | 2024-02-13 | 成都电科星拓科技有限公司 | 基于蜂群算法的多搬运机器人协作方法及搬运机器人 |
-
2023
- 2023-02-24 CN CN202310181970.5A patent/CN116203959A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117114560A (zh) * | 2023-10-25 | 2023-11-24 | 中科云谷科技有限公司 | 用于确定物品运输路径的方法、装置、存储介质及处理器 |
CN117114560B (zh) * | 2023-10-25 | 2024-01-05 | 中科云谷科技有限公司 | 用于确定物品运输路径的方法、装置、存储介质及处理器 |
CN117455100A (zh) * | 2023-12-26 | 2024-01-26 | 长春市优客云仓科技有限公司 | 一种基于全局最优化的智能仓储物流调度方法 |
CN117455100B (zh) * | 2023-12-26 | 2024-03-15 | 长春市优客云仓科技有限公司 | 一种基于全局最优化的智能仓储物流调度方法 |
CN117474441A (zh) * | 2023-12-27 | 2024-01-30 | 天津万事达物流装备有限公司 | 一种基于智慧物流大数据的无人仓库进出路径管理方法 |
CN117474441B (zh) * | 2023-12-27 | 2024-03-15 | 天津万事达物流装备有限公司 | 一种基于智慧物流大数据的无人仓库进出路径管理方法 |
CN117550273A (zh) * | 2024-01-10 | 2024-02-13 | 成都电科星拓科技有限公司 | 基于蜂群算法的多搬运机器人协作方法及搬运机器人 |
CN117550273B (zh) * | 2024-01-10 | 2024-04-05 | 成都电科星拓科技有限公司 | 基于蜂群算法的多搬运机器人协作方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114895690B (zh) | 基于动态加权及热力图算法的机器人路径规划方法及系统 | |
CN116203959A (zh) | 基于hac算法的机器人路径规划方法及系统 | |
CN109784566B (zh) | 一种订单排序优化方法及装置 | |
CN110245890A (zh) | 货品分拣方法及货品分拣系统 | |
CN110084545B (zh) | 基于混合整数规划模型的多巷道自动化立体仓库的集成调度方法 | |
CN106773686B (zh) | 同轨双车运行模式下堆垛机调度路径模型建立方法 | |
Jiang et al. | Picking-replenishment synchronization for robotic forward-reserve warehouses | |
CN112488386B (zh) | 基于分布熵多目标粒子群的物流车辆配送规划方法及系统 | |
CN113359702B (zh) | 一种基于水波优化-禁忌搜索的智能仓库agv作业优化调度方法 | |
Uludağ | GridPick: A high density puzzle based order picking system with decentralized control | |
CN113075927A (zh) | 基于预约表的仓储潜伏式多agv路径规划方法 | |
CN116542365A (zh) | 移动机器人履行系统中订单分配和agv调度联合优化方法 | |
CN116644936A (zh) | 一种多agv的路径规划和调度方法 | |
CN110942251A (zh) | 一种基于联合蚁群算法的批调度方法 | |
CN114626794A (zh) | 基于物联网的仓储立库穿梭车路径规划方法及系统 | |
CN113408988B (zh) | 仓储系统的调度优化方法、电子设备及存储介质 | |
CN116796910B (zh) | 基于货物分配策略的订单分批优化方法 | |
CN117495236A (zh) | 一种电力物资仓库的调度方法及装置 | |
Jawahar et al. | Optimal random storage allocation for an AS/RS in an FMS | |
CN109359905B (zh) | 一种自动化无人仓货位分配方法、装置和存储介质 | |
CN116050671B (zh) | 一种自动化立体仓库货架信息自动维护的方法 | |
CN116224926A (zh) | 面向单件小批柔性制造车间的动态调度优化方法及装置 | |
CN115409448A (zh) | 仓储调度决策方法、装置、终端设备以及存储介质 | |
CN113960969A (zh) | 一种基于大数据的物流仓储的调度方法及系统 | |
Kang | An order picking algorithm for vertically stacked and top-retrieval storage systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |