CN112785132B - 一种用于智能仓库的多机器人移动货架任务分配方法 - Google Patents
一种用于智能仓库的多机器人移动货架任务分配方法 Download PDFInfo
- Publication number
- CN112785132B CN112785132B CN202110045796.2A CN202110045796A CN112785132B CN 112785132 B CN112785132 B CN 112785132B CN 202110045796 A CN202110045796 A CN 202110045796A CN 112785132 B CN112785132 B CN 112785132B
- Authority
- CN
- China
- Prior art keywords
- task
- sequence
- robot
- neighborhood
- tasks
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Mechanical Engineering (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Robotics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明公开了一种用于智能仓库的多机器人移动货架任务分配方法,能够保证机器人执行全部任务的运行总距离最小,提高机器人运输的效率。将待分配的任务随机排列形成一个任务序列;采用拍卖的方式将任务序列中的任务逐一分配给各机器人,并按照远近进行重排序,获得机器人任务序列;计算每个机器人任务序列的执行代价,并相加得到任务序列的总执行代价;采用交换邻域算子获取所述任务序列的邻域集合,计算邻域集合中每个序列的总执行代价,从邻域集合中筛选出比任务序列代价小的序列,作为初始解集;针对初始解集中的每一个序列,通过扩展K种邻域集合优选出最优解任务序列;输出最优解集中的总执行代价最小的序列以及对应的机器人任务序列。
Description
技术领域
本发明属于智能仓库技术领域,具体涉及用于智能仓库的关于货架移动的多机器人任务分配方法。
背景技术
随着网络购物、网上支付、移动电子商户的数量急剧增加,最近几年我国仓储业发展迅猛,在如今的仓储环境中,商品种类多、订单批量大、任务实时更新,传统的仓储物流系统已经难以满足这些要求,智能仓库的应用日趋流行。目前智能仓库多采用多机器人系统进行货架搬运及拣选,机器人需要根据订单信息将指定货架运输到对应拣选站,这其中就牵涉到任务分配问题。此环境下任务是指运输货架前往拣选站,机器人获取需要运输的货架序列即为任务分配的过程。
任务的执行过程主要包括将货架从存储区域中的货架存放点移动到拣选站、将货架从拣选站移动到存储区域中的货架存放点、将货架从一个拣选站移动到另一个拣选站三种移动类型。在实际情况下,考虑到拣选站之间移动货架的等待时间等客观条件,假定机器人不进行拣选站间的移动。
智能仓库的多机器人移动货架任务分配问题主要考虑在实际的仓储环境条件下,面向任务规模大,仓内机器人数量众多的情形,如何为每个机器人合理地分配任务并执行任务完成序列,以保证机器人执行全部任务的运行总距离最小,提高机器人运输的效率是亟待解决的问题。
发明内容
有鉴于此,本发明提供了一种用于智能仓库的多机器人移动货架任务分配方法,能够保证机器人执行全部任务的运行总距离最小,提高机器人运输的效率。
为了解决上述技术问题,本发明是这样实现的。
一种用于智能仓库的多机器人移动货架任务分配方法,包括:
步骤1:将待分配的n个任务随机排列形成一个任务序列L={t1,t2,...,tn},其中ti,i=1,2,...,n为每个任务的编号;
步骤2:采用拍卖的方式将任务序列L中的任务逐一分配给各机器人,获得机器人任务序列;在分配某一任务tj时,所述拍卖的报价为机器人执行当前任务时的位置到任务tj对应货架位置的距离加上任务tj对应货架与指定拣选站间往返的距离;
步骤3:按照远近对步骤2的机器人任务分配结果进行重排序,获得机器人任务序列;
步骤4:计算每个机器人任务序列的执行代价,并相加得到任务序列L的总执行代价f(L);其中,机器人任务序列的执行代价等于机器人从初始位置到达机器人任务序列中第一个任务点的距离加上每个任务点间的距离和每个货架往返指定拣选站的距离;
步骤5:采用交换邻域算子获取所述任务序列L的邻域集合S,按照步骤2-步骤4的操作计算邻域集合S中每个序列的总执行代价,从邻域集合S中筛选出比任务序列L代价小的序列组成集合ML,作为初始解集Sini;
步骤6:针对初始解集Sini中的每一个序列,通过扩展K种邻域集合优选出最优解任务序列;K为大于或等于2的整数;本步骤具体包括子步骤S601-S608:
S601、选择初始解集Sini中一个序列,赋值给La,并将此序列从Sini中删除;
S602、按照步骤2到步骤4的操作计算La的总执行代价f(La),采用K种不同的邻域算子获取La的K种邻域集合;
S603、设置邻域计数初始值k=1,最大迭代次数lmax,迭代计数初始值l=1;
S604、从La的第k个邻域集合中随机选择一个新的序列L';
S605、按照步骤2到步骤4的操作计算L'的总执行代价,记为f(L');若f(L')≥f(La),即序列L'并不优于La,则令l自加1,进入S606;否则序列L'较优,将L'赋值给La,并重新执行步骤S602-S605对新的La进行邻域计算和总执行代价比较;
S606、判断l是否超过最大迭代次数lmax;如果未超过,则回到步骤S604继续在当前邻域集合中搜索;否则,令k自加1,重新赋值l=1,然后执行步骤607以进入下一个邻域集合进行搜索;
S607、判断k是否超过邻域集合的数量K,如果未超过,则回到S604开始执行,否则说明所有邻域集合都被搜索完毕,此时将最后获得的La作为最优解序列,存入最优解集Sopt中;
S608、循环执行S601-S607,直到初始解集Sini为空;
步骤7:输出最优解集Sopt中的总执行代价最小的序列,以及利用步骤3所确定的对应的机器人任务序列。
优选地,所述步骤S602中,采用3种邻域算子获取La的3种邻域集合;3种邻域算子为交换邻域算子、逆序邻域算子和插入邻域算子。
优选地,所述步骤2包括如下子步骤:
步骤S201:拍卖任务序列L中的第一个任务,具体步骤如下:
S201a、计算机器人报价:任务序列L中第一个任务为t1;每个机器人对第一个任务的报价为:机器人ri自身位置到第一个任务t1对应货架位置的距离R(ri,t1)加上所述对应货架与指定拣选站间往返的距离S(t1);
S201b、执行任务分配:将第一个任务分配给报价最小的机器人,并在此机器人的机器人任务序列中加入任务t1,更新此机器人的位置到任务t1对应货架位置,同时将任务序列L中的任务t1处理为已分配;
步骤202:拍卖任务序列中的剩余任务,具体步骤为:
S202a、分配任务序列L中第一个未分配的任务tj;若机器人ri的任务序列为空,则按照步骤S201a的方式计算机器人对任务tj的报价;若机器人ri已有任务序列Ti={ti1,ti2,...,tiv},则其报价为最后一个任务tiv对应货架所在位置到第一个未分配任务tj对应货架位置的距离R(tiv,tj)加上任务tj对应货架与指定拣选站间往返的距离S(tj);
S202b、选择机器人报价的最小值,将任务分配给相应的机器人,并在此机器人的机器人任务序列中加入任务tj,更新此机器人的位置到任务tj对应货架位置,同时将任务序列L中的任务tj处理为已分配;
S202c、循环执行S202a、S202b中的步骤,直到所有任务都被分配完成,最终每个机器人都获得相应的机器人任务序列。
优选地,步骤S201b和步骤S202b中,将任务序列L中的任务处理为已分配为:将任务标记为已分配,或者将任务从任务序列L中删除。
优选地,所述步骤5中,从邻域集合S中筛选出比任务序列L代价小的序列组成集合ML之后,进一步从集合ML中选取代价小于设定阈值th的序列组成初始解集Sini;
所述阈值th的计算方式为:已知集合ML中各序列的总任务代价最大值Imax和最小值Imin;设定阈值th=Imin+α(Imax-Imin),其中α为控制初始解集Sini规模的因子。
优选地,所述步骤3为:根据机器人的初始位置,从已分配到的任务序列中利用贪婪算法选择离其初始位置最近的货架作为此机器人的第一个执行的任务,然后从剩下的任务中逐次利用贪婪算法选择距离上一个任务点最近的任务作为下一个任务,直至所有任务都被重新排序为止。
优选地,所述指定拣选站为最近拣选站。
本发明的有益效果是:
(1)本发明从仓储环境中任务数量众多、货架规模大的实际情形出发,采用了变邻域搜索算法作为主体框架,第一次变邻域搜索算法采用交换邻域算子,产生多种与原始序列较为贴近的候选序列,第二次变邻域搜索算法在第一次变邻域的基础上,扩大了序列的变形范围,从而有利于找到最佳的分配方案。而且搜索优选解的过程中,本发明按顺序搜索各邻域集合,每个邻域集合中按顺序搜索各个序列。同时本发明没有将搜索局限在初始获得的K个邻域集合中,而是在每得到一个更优序列时,重新构建邻域集合,这种方案以更优的序列作为引导,指导新邻域集合的构建,从而令搜索往更好的方向前行。这种方案与盲目的建立庞大的搜索集合相比,更有目标性,能够更快的获得最优解;
(2)本发明通过交换邻域建立ECL列表获得更优的初始解集,加速了算法初始阶段的搜索效率,使之能够更快的收敛到局部或全局最优解;
(3)本发明利用拍卖算法对搜索过程中得到的任务序列进行性能评估,考虑了分配前任务顺序的影响,为智能仓库内机器人的运输作业提供了合理且快速的分配方案,有效提高了运输作业的效率;
(4)本发明的任务分配策略是先进行任务序列的选择后,由拍卖算法对已选序列进行分配,而非传统的直接通过初始任务序列获得任务分配方案的搜索过程,降低了搜索算法产生的计算量。
附图说明
图1为结合拍卖行为与变邻域搜索算法的任务分配完成算法流程图;
图2为任务信息示意图;
图3为机器人信息示意图;
图4为拣选站信息示意图;
图5为交换邻域示意图;
图6为逆序邻域示意图;
图7为插入邻域示意图;
图8为初始解集建立算法流程图;
图9为拍卖算法流程图;
图10为变邻域搜索算法流程图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
如图1所示,本发明用于智能仓库的多机器人移动货架任务分配方法,包括以下步骤:
步骤1:输入智能仓储各类对象的数据信息,具体包括:任务信息、机器人信息和拣选站信息。将待分配的n个任务的集合随机排列形成一个任务序列,表示为L={t1,t2,...,tn}。
如图3所示,所述机器人信息是指智能仓库内具有的移动机器人数量m和每个机器人的位置信息以及所分配的任务序列,定义仓库内所有移动机器人编号为r1,r2,...,rm,第i个机器人的位置信息为分配到的任务序列为Ti={ti1,ti2,...,tiv}。
步骤2:基于给定的任务序列和机器人信息、拣选站信息,采用拍卖的方式将任务序列L中的任务逐一分配给各机器人,获得机器人任务序列。在分配某一任务tj时,所述拍卖的报价为机器人执行当前任务时的位置到任务tj对应货架位置的距离加上任务tj对应货架与指定拣选站间往返的距离。这里的指定拣选站较多的被理解为最近的拣选站。
本步骤具体包括如下步骤:
步骤S201:拍卖任务序列L中的第一个任务,具体步骤为:
S201a、假设机器人ri的位置为此时所有机器人分配到的任务序列都为空,对第一个任务tj进行报价,tj对应货架的位置为任务tj的货架对应最近的拣选站sk的位置为则机器人ri的报价为该公式表示:机器人自身位置到第一个任务t1对应货架位置的距离加上所述对应货架与最近的拣选站间往返的距离。下文中所述的任务的位置均是指任务对应货架的位置。
S201b、根据报价分配第一个任务。选取机器人报价的最小值,将任务tj分配给相应的机器人,并更新此机器人位置信息到任务tj所在位置,机器人的任务序列中加入任务tj;将任务tj从总任务序列中删除,总任务序列变为未分配任务序列。本实施例中通过将任务tj从总任务序列中删除实现已分配任务的处理,在实际中,还可以在任务序列中将已分配的任务标记为已分配。
步骤202:基于剩余任务序列与机器人信息,拍卖剩余的任务,具体步骤为:
S202a、机器人对剩余任务序列中的第一个未分配任务tj进行竞标。假设机器人ri的任务序列为空,则其对未分配任务序列中的第一个任务tj的竞标价计算方法与S201a中一样;假设机器人ri的任务序列为Ti={ti1,ti2,...,tiv},此时机器人ri的位置信息已经更新到任务tiv所在位置,因此机器人ri对任务tj的报价为该公式表示:最后一个任务tiv对应货架所在位置到第一个未分配任务tj对应货架位置的距离加上任务tj对应货架与指定拣选站间往返的距离。
S202b、选取机器人报价的最小值,将任务tj分配给相应的机器人,并更新此机器人位置信息到任务tj所在位置,机器人的任务序列中加入任务tj;将任务tj从未分配任务序列中删除。
S202c、重复执行S202a、S202b中的操作,直到任务池中的所有任务都被分配给机器人,如图9所示。
步骤3:按照远近对步骤2的机器人任务分配结果进行重排序,获得机器人任务序列。
本步骤中,假设机器人ri获得的任务序列为Ti={ti1,ti2,...,tiv},机器人ri的初始位置信息为计算机器人ri从初始位置到每个任务点的距离选取距离最近的任务点tik排在序列首位,然后更新机器人位置信息到任务点tik,重新计算机器人ri从任务点tik到其他未排序任务的距离Dist,选取最近任务til排在tik之后,形成序列{tik,til},重复执行,直到所有任务都重新排序。
步骤4:计算每个机器人任务序列的执行代价。对于机器人ri,其机器人任务序列Ti={ti1,ti2,...,tiv},任务的执行代价记为自身代价S(t)=2×(|x-xs|+|y-ys|)和关联代价R(ti,tj)=|xi-xj|+|yi-yj|,其中,位置t的坐标为(x,y),(xs,ys)为最近拣选站坐标,因此机器人ri的执行代价为:
以上步骤1-4记载了如何对原始序列L进行任务分配和总执行代价计算。下面步骤5-7是对任务序列L进行处理并搜索最优解。
步骤5:采用交换邻域算子获取所述任务序列L的邻域集合S。按照步骤2-步骤4的操作计算邻域集合S中每个序列的总执行代价,从邻域集合S中筛选出比任务序列L代价小的序列组成集合ML,作为初始解集Sini。
假设初始任务序列为L={t1,t2,...,tn},对序列L执行交换邻域操作,执行后的任务序列记为L',总共执行d次,得到的d个结果组成集合S;交换邻域为本发明中扰动邻域结构的一种,除此之外还有逆序邻域、插入邻域,扰动邻域都是针对任务序列的操作,细节描述如下:
交换邻域:如图5所示,所述交换邻域指的是从序列中随机选取两个任务,将选取任务在序列中的位置进行调换,定义任务序列为L={t1,t2,...,tn},从中随机选取两个任务ti、tj(i<j),则执行交换邻域后的任务序列为{t1,t2,...,tj,...,ti,...,tn};
逆序邻域:如图6所示,所述逆序邻域指的是从序列中随机选取两个任务,将选取的两个任务及其之间的任务序列顺序翻转,定义任务序列为L={t1,t2,...,ti,ti+1,ti+2,ti+3,tj,...,tn},从中随机选取两个任务ti、tj(i<j),则执行逆序邻域后的任务序列为{t1,t2,...,tj,ti+3,ti+2,ti+1,ti,...,tn};
插入邻域:如图7所示,所述插入邻域是指从序列中随机选取两个任务,将选取的在序列中位置靠后的任务插入到位置靠前的任务之前,定义任务序列为L={t1,t2,...,ti,...,tj,...,tn},从中随机选取两个任务ti、tj(i<j),则执行插入邻域后的任务序列为{t1,t2,...,tj,ti,...,tn}。
在第一次获取邻域集合时,为了保证邻域集合不要偏离L太远,因此只采用交换邻域算子进行处理。
从集合S筛选集合ML时,按照步骤2-步骤4的操作对集合S中的序列计算总执行代价,与初始任务序列L的总执行代价f(L)进行比较,将集合S中总执行代价小于f(L)的序列筛选出来组成集合ML,标记其中的最大任务代价Imax与最小任务代价Imin。
设定阈值th=Imin+α(Imax-Imin),将ML集合中总执行代价小于阈值th的序列提取出来组成精英候选解列表ECL,即ECL={L∈ML:f(L)<th},阈值公式中的α是控制ECL规模的因子;ECL集合定义为初始解集Sini,其建立过程如图8所示。
步骤6、针对初始解集Sini中的每一个序列,通过扩展K种邻域集合优选出最优解任务序列;本步骤具体包括子步骤S601-S608。
S601、选择初始解集Sini中一个序列,作为初始解,赋值给La,并将此序列从Sini中删除。
S602、按照步骤2到步骤4的操作计算序列La的总执行代价f(La),采用K种不同的邻域算子获取La的K种邻域集合。
本实施例中,K=3,采用3种邻域算子获取La的3种邻域集合;3种邻域算子为交换邻域算子、逆序邻域算子和插入邻域算子。
S603、设置邻域计数初始值k=1,最大迭代次数lmax,迭代计数初始值iter=1;
S604、从La的第k个邻域集合中随机选择一个新的序列L';
S605、按照步骤2到步骤4的操作计算L'的总执行代价,记为f(L');若f(L')≥f(La),即序列L'并不优于La,则令iter自加1,进入S606;否则序列L'较优,将L'赋值给La,并重新执行步骤S602-605对新的La进行邻域计算和总执行代价比较;
S606、判断iter是否超过最大迭代次数lmax;如果未超过,则回到步骤S604继续在当前邻域集合中搜索;否则,令k自加1,重新赋值iter=1,然后执行步骤607以进入下一个邻域集合进行搜索。
S607、判断k是否超过邻域集合的数量K,如果未超过,则回到S604开始执行,否则说明所有邻域集合都被搜索完毕,此时将最后获得的La作为最优解序列,存入最优解集Sopt中;
S608、循环执行S601-S607,直到初始解集Sini为空。
步骤S601-S607的工作原理为:采用La来记载优选解。初始化La为第1个邻域集合中的随机训练。先在第1个邻域集合中按顺序对各个序列进行判断,寻找比La更优的序列,如果找到,则更新La,针对较优的序列重新组建邻域集合,重新从第1个邻域集合中寻找优选序列。如果第1个邻域集合中没有更优选的序列,则进入第2个邻域集合进行搜索,然后是第3个邻域集合。无论在哪个一个邻域集合中,只要找到比La更优的解,则重新组建邻域集合,重新进行搜索。这种方案以更优的序列作为引导,指导新邻域集合的构建,从而令搜索往更好的方向前行。这种方案与盲目的建立庞大的搜索集合相比,更有目标性,能够更快的获得最优解。
步骤7:输出最优解集Sopt中的总执行代价最小的序列,以及利用步骤3所确定的对应的机器人任务分配方案。如图10所示。
本发明提供的任务分配方法,不仅适用于仓储行业内各类仓库的运输作业,还适用于可抽象为车辆路径优化问题的各类复杂场景,在相关领域有指导作用。
以上的具体实施例仅描述了本发明的设计原理,该描述中的部件形状,名称可以不同,不受限制。所以,本发明领域的技术人员可以对前述实施例记载的技术方案进行修改或等同替换;而这些修改和替换未脱离本发明创造宗旨和技术方案,均应属于本发明的保护范围。
Claims (6)
1.一种用于智能仓库的多机器人移动货架任务分配方法,其特征在于,包括:
步骤1:将待分配的n个任务随机排列形成一个任务序列L={t1,t2,...,tn},其中ti,i=1,2,...,n为每个任务的编号;
步骤2:采用拍卖的方式将任务序列L中的任务逐一分配给各机器人,获得机器人任务序列;在分配某一任务tj时,所述拍卖的报价为机器人执行当前任务时的位置到任务tj对应货架位置的距离加上任务tj对应货架与指定拣选站间往返的距离;
所述步骤2包括如下子步骤:
步骤S201:拍卖任务序列L中的第一个任务,具体步骤如下:
S201a、计算机器人报价:任务序列L中第一个任务为t1;每个机器人对第一个任务的报价为:机器人ri自身位置到第一个任务t1对应货架位置的距离R(ri,t1)加上所述对应货架与指定拣选站间往返的距离S(t1);
S201b、执行任务分配:将第一个任务分配给报价最小的机器人,并在此机器人的机器人任务序列中加入任务t1,更新此机器人的位置到任务t1对应货架位置,同时将任务序列L中的任务t1处理为已分配;
步骤202:拍卖任务序列中的剩余任务,具体步骤为:
S202a、分配任务序列L中第一个未分配的任务tj;若机器人ri的任务序列为空,则按照步骤S201a的方式计算机器人对任务tj的报价;若机器人ri已有任务序列Ti={ti1,ti2,...,tiv},则其报价为最后一个任务tiv对应货架所在位置到第一个未分配任务tj对应货架位置的距离R(tiv,tj)加上任务tj对应货架与指定拣选站间往返的距离S(tj);
S202b、选择机器人报价的最小值,将任务分配给相应的机器人,并在此机器人的机器人任务序列中加入任务tj,更新此机器人的位置到任务tj对应货架位置,同时将任务序列L中的任务tj处理为已分配;
S202c、循环执行S202a、S202b中的步骤,直到所有任务都被分配完成,最终每个机器人都获得相应的机器人任务序列;
步骤3:按照远近对步骤2的机器人任务分配结果进行重排序,获得机器人任务序列;
步骤4:计算每个机器人任务序列的执行代价,并相加得到任务序列L的总执行代价f(L);其中,机器人任务序列的执行代价等于机器人从初始位置到达机器人任务序列中第一个任务点的距离加上每个任务点间的距离和每个货架往返指定拣选站的距离;
步骤5:采用交换邻域算子获取所述任务序列L的邻域集合S,按照步骤2-步骤4的操作计算邻域集合S中每个序列的总执行代价,从邻域集合S中筛选出比任务序列L代价小的序列组成集合ML,作为初始解集Sini;
步骤6:针对初始解集Sini中的每一个序列,通过扩展K种邻域集合优选出最优解任务序列;K为大于或等于2的整数;本步骤具体包括子步骤S601-S608:
S601、选择初始解集Sini中一个序列,赋值给La,并将此序列从Sini中删除;
S602、按照步骤2到步骤4的操作计算La的总执行代价f(La),采用K种不同的邻域算子获取La的K种邻域集合;
S603、设置邻域计数初始值k=1,最大迭代次数lmax,迭代计数初始值l=1;
S604、从La的第k个邻域集合中随机选择一个新的序列L';
S605、按照步骤2到步骤4的操作计算L'的总执行代价,记为f(L');若f(L')≥f(La),即序列L'并不优于La,则令l自加1,进入S606;否则序列L'较优,将L'赋值给La,并重新执行步骤S602-S605对新的La进行邻域计算和总执行代价比较;
S606、判断l是否超过最大迭代次数lmax;如果未超过,则回到步骤S604继续在当前邻域集合中搜索;否则,令k自加1,重新赋值l=1,然后执行步骤607以进入下一个邻域集合进行搜索;
S607、判断k是否超过邻域集合的数量K,如果未超过,则回到S604开始执行,否则说明所有邻域集合都被搜索完毕,此时将最后获得的La作为最优解序列,存入最优解集Sopt中;
S608、循环执行S601-S607,直到初始解集Sini为空;
步骤7:输出最优解集Sopt中的总执行代价最小的序列,以及利用步骤3所确定的对应的机器人任务序列。
2.如权利要求1所述的方法,其特征在于,所述步骤S602中,采用3种邻域算子获取La的3种邻域集合;3种邻域算子为交换邻域算子、逆序邻域算子和插入邻域算子。
3.如权利要求1所述的方法,其特征在于,步骤S201b和步骤S202b中,将任务序列L中的任务处理为已分配为:将任务标记为已分配,或者将任务从任务序列L中删除。
4.如权利要求1所述的方法,其特征在于,所述步骤5中,从邻域集合S中筛选出比任务序列L代价小的序列组成集合ML之后,进一步从集合ML中选取代价小于设定阈值th的序列组成初始解集Sini;
所述阈值th的计算方式为:已知集合ML中各序列的总任务代价最大值Imax和最小值Imin;设定阈值th=Imin+α(Imax-Imin),其中α为控制初始解集Sini规模的因子。
5.如权利要求1所述的方法,其特征在于,所述步骤3为:根据机器人的初始位置,从已分配到的任务序列中利用贪婪算法选择离其初始位置最近的货架作为此机器人的第一个执行的任务,然后从剩下的任务中逐次利用贪婪算法选择距离上一个任务点最近的任务作为下一个任务,直至所有任务都被重新排序为止。
6.如权利要求1所述的方法,其特征在于,所述指定拣选站为最近拣选站。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110045796.2A CN112785132B (zh) | 2021-01-14 | 2021-01-14 | 一种用于智能仓库的多机器人移动货架任务分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110045796.2A CN112785132B (zh) | 2021-01-14 | 2021-01-14 | 一种用于智能仓库的多机器人移动货架任务分配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112785132A CN112785132A (zh) | 2021-05-11 |
CN112785132B true CN112785132B (zh) | 2022-10-21 |
Family
ID=75755897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110045796.2A Active CN112785132B (zh) | 2021-01-14 | 2021-01-14 | 一种用于智能仓库的多机器人移动货架任务分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112785132B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116245257B (zh) * | 2023-05-06 | 2023-09-12 | 季华实验室 | 一种多机器人调度方法及装置 |
CN116596447B (zh) * | 2023-07-05 | 2023-10-03 | 长春理工大学 | 一种基于拍卖算法的仓库任务分配方法 |
CN117608258B (zh) * | 2024-01-24 | 2024-04-05 | 纳博特南京科技有限公司 | 一种基于lof算法的多机器人的均衡任务分配方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107783831A (zh) * | 2016-08-24 | 2018-03-09 | 深圳市中兴微电子技术有限公司 | 一种任务调度方法及装置 |
US10235642B2 (en) * | 2017-08-11 | 2019-03-19 | Tata Consultancy Services Limited | Method and system for optimally allocating warehouse procurement tasks to distributed robotic agents |
CN110084512B (zh) * | 2019-04-26 | 2022-04-22 | 河海大学常州校区 | 一种面向智能仓储系统的多机器人任务分配方法 |
CN111027875B (zh) * | 2019-12-17 | 2023-09-26 | 鲁东大学 | 一种基于自适应任务池的智能仓储多机器人任务分配方法 |
CN111680836B (zh) * | 2020-06-06 | 2023-05-02 | 杭州电子科技大学 | 面向st-sr问题的分布式多机器人系统任务分配方法 |
-
2021
- 2021-01-14 CN CN202110045796.2A patent/CN112785132B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112785132A (zh) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112785132B (zh) | 一种用于智能仓库的多机器人移动货架任务分配方法 | |
Merschformann et al. | Decision rules for robotic mobile fulfillment systems | |
CN110264062B (zh) | 分布式多agv动态任务分配及其路径规划方法与系统 | |
CN110632907B (zh) | 一种分布式装配式置换流水车间调度优化方法及系统 | |
EP3816886A1 (en) | Management method, apparatus, system applied to goods-to-person system, and server and computer storage medium | |
WO2019128368A1 (zh) | 库存调度方法、装置以及计算机可读存储介质 | |
US11681982B2 (en) | Automated guided vehicle control and organizing inventory items using stock keeping unit clusters | |
CN108792387B (zh) | 货架命中方法、装置、服务器和介质 | |
Jiang et al. | Picking-replenishment synchronization for robotic forward-reserve warehouses | |
CN111144825A (zh) | 一种基于agv小车的rfid仓储物流盘库方法和系统 | |
KR20230095117A (ko) | 창고 관리 시스템 및 방법 | |
JP2020149675A (ja) | マルチロボット環境においてノンプリエンプティブタスクのスケジューリングを最適化するためのシステム及び方法 | |
CN113075927A (zh) | 基于预约表的仓储潜伏式多agv路径规划方法 | |
WO2023040659A1 (zh) | 任务分配方法、装置、设备、仓储系统及存储介质 | |
CN116542365A (zh) | 移动机器人履行系统中订单分配和agv调度联合优化方法 | |
TW202240488A (zh) | 訂單處理方法、裝置、設備、系統、媒體及產品 | |
Zhuang et al. | Rack retrieval and repositioning optimization problem in robotic mobile fulfillment systems | |
Zhang et al. | Dynamic scheduling for flexible job shop with insufficient transportation resources via graph neural network and deep reinforcement learning | |
CN113865607A (zh) | 路径规划方法、装置、设备及存储介质 | |
WO2023020213A1 (zh) | 任务分配的方法、装置、设备、存储介质及程序产品 | |
WO2024021809A1 (zh) | 容器搬运任务的分配方法及装置 | |
CN110531747A (zh) | 移动机器人避免路径冲突的方法、装置及存储设备 | |
CN111047249B (zh) | 一种货架重新定位方法及系统 | |
CN116679636A (zh) | 一种物流搬运机器人任务调度系统及方法 | |
CN113960969A (zh) | 一种基于大数据的物流仓储的调度方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |