英语原文共 24 页,剩余内容已隐藏,支付完成后下载完整资料
在线安排多个拣配代理进行仓库管理
Jose I.U.Rubrico,1 Toshimitu Higashi,2 Hirofumi Tamura,3和Jun Ota4
东京大学精密工程系,7-3-1 Hongo,Bunkyo-ku,Tokyo 113-8656,日本
2日本爱知市菊山市桥口中岛2号村田机械有限公司,邮编:484-0076
3Murata Systems,Ltd.,3 Minamiochiai Cho,Kisshoin,Minami Ku,京都601-8326,日本
4东京大学工程中心文物研究,5-1-5 Kashiwanoha,Kashiwa,Chiba 277-8568,日本
摘要
本文提出了一种新订单在仓库环境中预先发出静态订单时随机到达的动态重调度问题的解决方案。我们提出了两种增量静态调度方案的变化:一种是基于最陡的下降插入,称为OR1,另一种是基于多级重调度,称为OR2。这两种技术都通过专门针对手头问题设计的本地搜索过程得到了增强。为了便于评估,我们还对我们的问题实现了几种现有的在线算法。基于实际选择数据的大量统计实验表明,所提出的方法与现有的在线调度程序具有竞争性,并且表明OR1等负载平衡算法平均能产生最佳的结果,并且OR2在动态性较低到中等时有效地缩短了选择时间。
关键词:动态调度、仓库管理、在线算法
1、引言
从仓库仓库到包装/交付区域的客户订单拣配问题,即拣配订单,由于其高运营成本,是仓库中最重要的活动之一。研究表明,订单拣配可以达到仓库操作总成本的60%[1]。传统上,由于订单选择器活动[2]的行程时间百分比很高,因此订单拾取被视为距离最小化问题。在参考文献[3-7]中可以找到单个拣配路线的优化。
对于多个路径和订单选择器,参考文献中给出了精确的方法。[8-9],而参考文献[10]研究了集群然后路由方法的启发式方法。在一系列的研究中,Rubrico等人[11-14]使用多个拣货员(代理)解决订单拣货问题,其中每个代理可以分配多个行程(路线)来完成,并考虑由于拥挤或排队而导致的延迟。其目的是通过最小化行程距离和延迟来最小化代理的空闲时间,并保持代理之间的负载平衡。它们适应层次分解,并使用启发式方法解决每个细分,以快速实现实际大小问题的良好计划。
上面报告的工作解决了一个静态订单挑选问题,其中所有要挑选的订单都是预先知道的。纯在线版本的拣货问题,其中所有订单都是事先不知道的,并且是随机到达的,在参考资料中有说明。[15-16],其中假设了阶参数的随机分布,并使用与排队论相关的方法解决了问题。在线挑选问题可以看作是一般在线调度问题的一个实例,其中检索订单的代理对应于处理作业的机器。有关在线调度问题及其变体的描述,以及对著名在线算法的调查,可以在参考资料中找到。[17-20]。在统一机器上的在线调度(即,给定的作业可以在任何机器上以相同的成本进行处理)已经得到了比较好的研究[21-25]。然而,这种直接的表示法不能直接应用于在线拣货问题,因为代理因随机订单而产生的成本将取决于代理的当前负载,并且由于延迟的发生而更加复杂。在线挑选问题的一个更合适的表示是无关机器的调度,在调度中,处理给定作业的成本可能在不同机器之间任意不同。关于文学在线调度问题的这种困难变化仍然相对稀疏[26-27]。在一项研究[26]中,Aspnes等人研究Graham算法(最初用于在统一机器上调度[21])的贪心后变化的特征,并针对无关机器上作业的在线调度,提出一种获得最佳可能最坏情况行为的过程(根据竞争分析[28-29])。
另一个与在线挑选问题密切相关的问题是动态车辆路径问题(DVRP)。典型的动态事件包括:a)客户添加/删除,b)更改路径成本(例如,道路交通状态),以及c)意外事件,例如车辆故障和恢复。这些动态参数可导致重新规划路线和重新安排车辆,以及增加车辆以满足严格的截止日期。他们与在线拣货问题的对应关系是显而易见的,在这一点上,客户的增加对应于新订单的随机到达。对DVRP的分类、变体和方法的调查可在参考文献[30]中找到。在参考文献[31]中,使用并行禁忌搜索逐步改进动态事件之间的解决方案(例如到达顺序)。参考文献[32]中讨论了该方法的一般性,将其作为多计划方法(MPA),每次发生事件时都会保留多个计划,以便随着时间的推移,在解决方案选择方面具有更大的灵活性。MPA是一个独立于搜索过程的框架。文中还介绍了MPA的增强,包括预测能力。这种方法被称为多场景方法,其中保留的解决方案包括与现有方案结合的预测需求。在参考文献[33]中,提出了一种基于约束规划的反应式结构来实时处理动态变化,而在参考文献[34]中,提出了一个软件原型来演示反应式车辆路由的能力。
本文主要研究在静态订单提取过程中,新订单随机到达的动态问题。这个问题在这里被称为在线重新安排问题,因为它涉及到修改现有的代理计划,以便有效地将新订单与未领料的旧订单合并在一起。本研究考虑新订单的到达,因为它是实际拣货操作中动态性的主要原因。重新调度问题不同于严格的在线调度,其中所有订单都是随机到达的。在线调度的方法对于重新调度问题有一定的限制,因为它们不能
通过在代理之间重新分配现有的行程来修改现有的计划。另一方面,具有随机需求的dvrp与本文提出的问题更为相似。但是,由于dvrp中的都市距离尺度,根据前面段落中报告的方法,可以接受大约一分钟的计算时间。这样的时间对于拣货问题来说太慢了,将严重延迟操作。因此,有必要为我们的问题提供更快的重新安排方法,尽管如此,这些方法还是会产生好的、健壮的时间表。
本研究的目的是研究增量静态调度器的两种变体的性能,通过将其与文献和一般实践中现有的在线调度器进行比较,在每次新订单到达时解决总计划。与更复杂的方法(如refs中的方法)相比,增量静态框架因其速度快、资源开销低而得到了改进。[31-32 ]。其余的文件处理如下。在第2节中,描述了在线重新安排问题。
在第3节中,介绍了建议的方法和参考方法。第四部分给出了评价实验的结果,第五部分是结论。
2、问题
在线重新安排问题是参考文献[11]中初步描述的拣仓问题(WPP)的动态扩展。在静态版本中,一组拣货代理必须从仓库货架上检索一组客户订单,并将其转移到一个通用的包装棚。在在线问题中,新订单随机到达,并添加到要拾取的订单列表中,即使正在检索静态订单。图1说明了一个输入(订单列表)和输出(代理领料计划)示例。对于静态问题,订单列表在完成拣配之前保持不变,而对于动态WPP(dwpp),订单列表随着时间的推移以随机方式不断增长,直到满足某个终止条件。对动态问题的一些假设列举如下:
静态和动态顺序具有相同的优先级
随机序
描述随机订单的参数是a)到达率lambda;(单位时间的订单数)、b)产品信息,即存储量prand和所需数量drand,以及c)静态订单的总项目比率,gamma;=drand/dstatic,其中drand是随机订单的总提取量,dstatic是静态订单的总数量。S.
新订单的到达被认为是指数分布的。如下面(1)所示,可以进行转换,以用均匀分布来表示到达时间。术语u表示区间(0,1)内随机变量的均匀分布,而tau;arr是到达时间,即顺序到达之间的时间间隔。
当每一个新订单到达时,它所要求的产品数量被假定在[1,q]范围内均匀分布,其中q是代理的能力。同样,以存储架表示的位置也均匀分布在仓库中。
gamma;参数通常是特定仓库的特征,可能随市场季节和其他因素而变化。在某些仓库中,此参数可用作决策变量(例如,要使用多少领料代理)。对于本研究的行业合作伙伴,一个共同的值是gamma;=0.5,这表明从他们的仓库中挑选的几乎三分之一的产品在本质上是随机的。在上面(1)中,如果取tau;arr为总拣货时间范围t,则tau;arrlambda;=tlambda;=n x,其中n是拣货订单总数,x是随机订单与拣货订单总数的比率,因此,n x是经过时间t后到达的随机订单数。注意,gamma;或到达率lambda;的变化会影响系统的动态性。
目标和时间限制
在线重新安排问题的目标是最大限度地缩短总计划的生成时间,即拣配时间。由于计划不保持固定,而是随着新订单的添加而不断修改,因此这一时间跨度必然是动态的。由于阶数的随机性,对于总输入只有部分信息可用,而对动态问题的全局解是不可能的。另一个目标是,根据计算时间限制,优化每次新订单到达时的时间表。尽管这不能保证到达全局最优状态,但它确实能保证每次新订单到达时都使用良好的时间表。
在线重新安排是实时进行的,即计算时间最多必须限制在几秒钟。在最坏的情况下,刚刚在仓库完成装载的代理将等待其新的行程分配,等待时间不少于重新计算计划所需的时间。因此,保持这种延迟的影响很重要,以最小化对仓库吞吐量的影响。
计划重新生成
图2说明了拾取问题的静态和动态方面之间的交互。最初,离线调度程序向领料代理提供从静态订单派生的调度。当新订单到达时,联机计划程序修改当前计划以合并新的添加内容并将更改输出到代理。这将持续到新订单停止到达为止。这里,代理计划的可修改元素被认为是指当前未遍历或尚未遍历的所有行程。与基本上是开环的调度策略不同,在线调度程序使用一种反馈机制,其中当前调度的状态部分地决定重新计算的调度。
3、方法论
增量静态重新安排
这里介绍了建议的在线调度程序。由于严格的时间考虑,调度程序被设计为快速而不牺牲效率。采用全局重新安排策略,在该策略中,每次输入更改时都会重新计算完整的计划。这样做的好处
方法是利用快速有效的启发式方法,实时地为更新后的订单集生成良好的计划。
3.1.1虫害下降插入图3显示了建议的OR1(在线重新安排器1)的流程图。假设仓库中仍然允许拣货,调度程序将等待随机订单的到达。当存在这样的订单时,它会立即使用VRP启发式(例如,savings启发式[35])进行路由。然后将产生的行程tn分配给估计具有最短制造时间的代理。然后创建一组未旅行的旅行,ST。tn不包括在st中。如果集合为空,则时间表保持原样。但是,如果集合不是空的,则意味着仍然可以通过重新定位需求来改进计划。采用快速的局部搜索启发式算法进行改进。
在详细阐述OR1之前,首先介绍了用于最小化进度最大化的基本运算符和局部搜索过程。
基本算子
考虑了三种需求搬迁运营商。需求是指需要从给定的货架位置挑选的项目;因此,需求重新定位是指代理之间或代理内部(即代理之间的行程)的需求转移或交换,如图4所示。在这里,每个段对应一个行程(即,取决于代理能力的拣货周期)。数字与货架标识相对应(0表示仓库),括号中的数字表示从相应货架上挑选的物品数量。
让s1是代理a1访问的货架,让d1是A1从s1中选择的需求。需求转移(m1)是将s1的d1项从a1转移到另一个代理a2的移动。新建一条线路为S1服务,然后分配给A2。因此,A2在传输后将有一个额外的跳闸。请注意,只有在从A1中移除S1的需求后,A1将至少有一个剩余货架要访问时,才允许进行需求转移。
下一个操作员是需求交换(M2),其中当前分配给代理A1的货架S1中的D1项目被重新定位到另一个代理A2。同样,当前分配给A2的货架s2中的d2项也被重新定位到a1。交换后,A1和A2各有一个额外的行程,分别包含S1和S2的需求。
分割需求转移(M3)是M1运算符的一个扩展,它允许将货架的需求从一个代理转移到另一个代理,前提是这种转移提高了代理的制造跨度的平衡。图5说明了这样一个实例。
对于目前分配给代理A1的总需求D的任何货架,我们可以估计项目D的数量。*
将要从a1移动到另一个代理a2的,以便平衡它们的生成跨度:
mka1和mka2分别是a1和a2的最大跨度,在需求d*重新定位之前,ts是分配给a2的新行程的行程时间,包含s的d*项,tload是单个项的加载时间。如果代理的makeSpans不能通过p的部分重定位来平衡,则d*的值将小于或等于零。另一方面,如果d*大于或等于d,则需要多于d个项来平衡代理的生成时间。
本地搜索过程
在以前的研究中,为重新定位的需求引入直接出行可能导致a)每个受影响的代理的出行距离都不理想,导致更长的制造周期;b)由于加载队列而导致的较大延迟,这些延迟可能在未选中修改计划后发生。在每次基本的移动操作之后,都会应用本地搜索(LS)过程(图6),以最小化所提到的不良影响。此图对应于图3中的矩形“使用本地搜索改进计划”。
第一个问题是确定如何将转移的需求最佳地纳入到接收代理的时间表中。这个问题是不平凡的,涉及到解决每个需求转移的VRP。因为这样的任务需要在搜索中重复多次,所以使用了快速启发式方法。参考文献[36]中的DLGIA程序用于此目的,尽管任何其他“良好”的VRP改进程序将足够。图7明确说明了使用VRP过程的需求插入过程。在这里,货架13的需求从代理A1转移到代理A2。每个代理托盘的VRP表示形式相应地从原始状态(步骤1)更改为中间状态(步骤2)。最后一个框架(步骤3)显示了应用VRP启发式之后每个代理的改进行程。
在涉及到需求转移/交换的代理的行程得到改进之后,下一步是确定新的调度是否有排队延迟。图6和图11所示的NOLQ2程序如图8所示,用于将报告的延迟最小化。在图中,
NUMLQ–Q数量
maxlq–当前计划中的最大队列延迟
mkmaxnumlq–具有最大生成时间的代理的队列数
curlq–当前队列最小化
以上参数估计使用一个快速,可变的时间步进计划模拟器嵌入在改进循环。每次修改计划以获得估计值时都会运行模拟器。
如果这样做可以最小化或消除加载队列延迟(如图9所示),则重排序过程将重新分配分配分配给代理的跳闸的调度序列,而如果这样做可以最小化或消除加载队列,则反转过程将反转跳闸的遍历序列,如图10所示。
在下图中,TLQ是指包含货
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[451029],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。