CN111626516A - 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法 - Google Patents

考虑倒货策略的双深位四向穿梭车系统订单排序优化方法 Download PDF

Info

Publication number
CN111626516A
CN111626516A CN202010480520.2A CN202010480520A CN111626516A CN 111626516 A CN111626516 A CN 111626516A CN 202010480520 A CN202010480520 A CN 202010480520A CN 111626516 A CN111626516 A CN 111626516A
Authority
CN
China
Prior art keywords
time
way shuttle
follows
goods
task
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.)
Granted
Application number
CN202010480520.2A
Other languages
English (en)
Other versions
CN111626516B (zh
Inventor
吴亮红
何昕杰
张红强
周少武
刘朝华
陈磊
周游
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan University of Science and Technology
Original Assignee
Hunan University of Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hunan University of Science and Technology filed Critical Hunan University of Science and Technology
Priority to CN202010480520.2A priority Critical patent/CN111626516B/zh
Publication of CN111626516A publication Critical patent/CN111626516A/zh
Application granted granted Critical
Publication of CN111626516B publication Critical patent/CN111626516B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Abstract

本发明公开了一种考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,包括以下步骤:对双深位四向穿梭车系统进行仿真建模;基于双深位四向穿梭车系统的批量出库作业流程,建立了系统出库作业时间模型SOOTM;根据系统出库作业时间模型SOOTM,将系统订单排序优化问题转化为非标准的整数规划问题,建立了一个非标准的订单排序整数规划模型;对遗传算法中的PMX交叉算子进行改进,采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列。相对于传统的出库订单执行顺序,本方法的优化结果使得系统的出库效率至少提高20%。

Description

考虑倒货策略的双深位四向穿梭车系统订单排序优化方法
技术领域
本发明涉及自动化立体库调度优化领域,特别涉及一种考虑倒货策略的双深位四向穿梭车系统订单排序优化方法。
背景技术
在互联网和人工智能技术的大力推动下,电商企业的发展已经势不可挡。随着订单和数据的大规模增长,高效的物流自动化存储系统已然成为物流作业效率的必然选择。目前来说,常见的物流自动化存储系统主要有:堆垛机系统、子母穿梭车系统和四向穿梭车系统。
传统的堆垛机系统能够实现单巷道自动作业,但耗资成本高,系统的可拓展性不强。子母穿梭车系统将堆垛机系统的巷道作业和层位作业进行分解,采用跨层穿梭车和换层提升机分别实现巷道作业和跨层作业,大大提高了系统的可拓展性,然而巷道与巷道之间并不能实现作业交流,实现自动化全方位存储依然具有一定的局限性。四向穿梭车系统通过增加横向轮以实现跨巷道作业,其配合提升机纵向作业,能够到达库存中任意位置,增强了系统的伸缩性和可拓展性,然而,系统的作业效率却也随之降低,因此,如何解决四向穿梭车系统调度优化和路径冲突的问题,是该系统应用的一个难点。
目前,国内外对自动化立体库调度优化问题的研究,主要以堆垛机系统和子母穿梭车系统为主,按其系统作业的方式分为:系统入库作业的储位优化问题、系统出库作业的订单排序优化问题以及系统复合作业的路径优化问题。
王艳艳等基于多层穿梭车系统并行拣货,提升机串行出库的作业特点建立了系统任务调度模型,采用改进的遗传算法求解任务调度模型。Zou等针对多层穿梭车系统在一定时间窗口内的批量出库问题进行建模,采用基于精英非支配排序的遗传算法对任务调度模型进行了优化求解。张晓清等针对双深位多层穿梭车系统出库订单排序优化问题,建立了考虑倒货策略的系统出库时间模型,并且采用改进的模拟退火算法进行了求解。Wang Y等针对跨层穿梭车系统批量出库问题,建立了一个非线性规划模型,并采用Gurobi优化器对该模型进行了精确求解,得出最优任务分配解。然而,此类研究应用的系统均为子母穿梭车系统,其在四向穿梭车系统上的调度优化并不可行。
Cao等针对四向穿梭车系统,采用半开环排队理论建立了四向穿梭车系统调度模型,并且针对订单出库问题,建立了改进的耦合度订单排序模型,然后采用了改进的耦合度订单排序启发式算法进行了求解,但该模型仅适用于小批量订单出库的排序问题。
发明内容
为了解决上述技术问题,本发明提供一种算法简单、工作效率高的考虑倒货策略的双深位四向穿梭车系统订单排序优化方法。
本发明解决上述问题的技术方案是:一种考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,包括以下步骤:
步骤一:对双深位四向穿梭车系统进行仿真建模;
步骤二:基于双深位四向穿梭车系统的批量出库作业流程,建立了系统出库作业时间模型SOOTM;
步骤三:根据系统出库作业时间模型SOOTM,将系统订单排序优化问题转化为非标准的整数规划问题,建立了一个非标准的订单排序整数规划模型;
步骤四:对遗传算法中的PMX交叉算子进行改进,采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列。
上述考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,所述步骤一中,双深位四向穿梭车系统由两个维度构成:分别为硬件部分和软件部分,硬件部分包括双深位立体货架、四向穿梭车、高速料箱提升机,软件部分包括订单管理系统WMS、仓储调度系统WCS和仓储执行系统WES软件;
针对双深位四向穿梭车系统组成提出以下假设:
1-1):双深位立体货架:设定货架的层数为L、巷道数为N、行数为M,货位为双深度货位,即第N个巷道所对应的第M列的存储空间为4,由于货架为四向穿梭车系统,设定其转弯板的位置位于第20行与第21行之间,由此可知,整个货架的存储空间数量Nnum大小为:
Nnum=4·L·N·M (1)
设定货位的列数为q,其货位列数与巷道数之间的关系为:
q=4·N (2)
此时,库存信息在三维货架中由空间坐标表示为:Xsku=(L,q,M);因此,整个仓储空间中的货位状态由随机数建模生成如下:
f(Li,qi,Mi)=round(rand),i={1,2,...,Nnum} (3)
其中,f(Li,qi,Mi)表示货架中第i个货位的占用信息,Li,qi,Mi分别为第i个货位的空间坐标信息,即层位数、货位列数和货位行数;rand表示0到1之间的均匀随机数,round表示四舍五入函数,f(Li,qi,Mi)的值域为0或1,当该函数值域为1时,代表货架第i个货位占用,当函数值域为0时,代表货架第i个货位空闲;
由于仅研究双深位四向穿梭车系统的出库模型,而仓储系统的库存信息是由其入库作业中WMS系统的储位优化决定,现依据双深位系统货位优化原则,对仓储系统中的货位状态进行二次遍历建模:
双深位货架库存信息中两深度货位之间的关系建立如下,即依据式(3)的货位状态进行如下遍历更新:
(a):当qi=4j+1,j={0,1,2,…,N-1}时,
Figure BDA0002517173640000031
(b):当qi=4j+4,j={0,1,2,…,N-1}时,
Figure BDA0002517173640000032
其中,j为0到N-1之间的正整数;
1-2):四向穿梭车:假设每层均配备一辆四向穿梭车,则四向穿梭车的数量即为L,设定四向穿梭车的横向最大速度为Vdx、纵向最大速度为Vdy、横向最大加速度为adx、纵向最大加速度为ady,此时四向穿梭车的运动时间模型建立如下:
由于四向穿梭车横向运动性能与纵向运动性能一致,故只做纵向运动建模;假设四向穿梭车达到最大纵向运动速度时的最大位移为XL,此时四向穿梭车运动时间td与其实际运动距离sy之间的关系如下:
Figure BDA0002517173640000033
其中,s为四向穿梭车的纵向运动的实际距离值;四向穿梭车达到最大纵向运动速度时的最大位移XL与四向穿梭车的性能参数关系为:
Figure BDA0002517173640000034
因此,通过此模型,仅需确定该四向穿梭车执行订单的库存信息,即可求得四向穿梭车完成该订单所需的时间;
1-3):高速料箱提升机:假设在1号巷道口设置一台高速料箱提升机,其功能负责与每层之间的四向穿梭车交互,实现订单周转箱的高度作业,设定高速料箱提升机的最大加速度为al,最大运行速度为Vl,其作业运动时间模型与式(6)一致。
上述考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,所述步骤二具体步骤为:
系统的出库作业特点为:四向穿梭车并行式作业,高速料箱提升机串行作业的方式;假设批量订单出库的数量为n,依据仓储订单模型,其出库任务序列位置矩阵Xsku如下:
Figure BDA0002517173640000041
给定高速料箱提升机执行订单的任务序列矩阵为lsort为:
lsort=randperm(n) (9)
其中,randperm函数表示随机生成的n个出库订单任务序列矩阵;设定高速料箱提升机执行第一个任务的时间序列为0时刻,系统出库作业时间Tout表示为:
Figure BDA0002517173640000042
其中,Tn lift为执行完n个任务订单的时刻,ΔTk lift为高速料箱提升机执行第k个订单的所需时长,高速料箱提升机执行任第k个任务订单的关系如下:
ΔTk lift=ΔTk arrive+ΔTk awaiting+ΔTk delivey (11)
其中,ΔTk arrive为高速料箱提升机执行第k个任务到达其目标层位的运行时间,ΔTk awaiting为高速料箱提升机到达目标层位后等待四向穿梭车取货的时间,ΔTk delivey为高速料箱提升机与四向穿梭车完成第k个任务交互后送至出货站台的时间;
基于高速料箱提升机作业的时间序列,其递归模型建立如下所示:
Tk lift=Tk-1 lift+(ΔTk arrive+ΔTk awaiting+ΔTk delivey) (12)
Tk lift表示完成k个订单任务所需的总时间,即k个订单任务序列的出库时间;由式(12)分析知:当Tk-1 lift已知时,通过求解ΔTk arrive,ΔTk delivey,ΔTk awaiting的映射关系,令k=n时,即可迭代求得n个订单任务的出库时间。
上述考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,所述步骤三具体步骤为:
定义高速料箱提升机执行第k个任务序列所对应的层位信息Lk之间的映射函数如下:
Lk=g(k,lsort,Xsku) (13)
定义决策函数如下:
Figure BDA0002517173640000051
设定每层货架的高度为h,高速料箱提升机运行至最大速度时的位移为H,此时第k个高速料箱提升机的任务执行时间为:
Figure BDA0002517173640000052
假设高速料箱提升机开始执行第k个任务到达目标层位的时刻为Tk arrive,等候高速料箱提升机交互完成时刻为Tk awaiting,目标层位的四向穿梭车前一个任务执行订单任务号为k-w,其等候高速料箱提升机交互完成时刻为Tk-w awaiting,则第k个任务交互完成时刻Tk awaiting与其第k-1个任务完成时刻Tk-1 delivey之间的关系如下:
Tk awaiting=Tk-1 arrive+ΔTk arrive+ΔTk awaiting (16)
设定四向穿梭车取第k个任务所花的时间为:Tk dolly,此时执行第k个任务的高速料箱提升机等待时长ΔTk awaiting之间的关系判断如下:
Figure BDA0002517173640000053
将式(16)(17)代入式(12)即可求得双深位四向穿梭车系统出库时间的递归模型;递归模型中的未知参数仅剩四向穿梭车的取货时间Tk dolly时间建模,其建模过程如下:
首先,建立第k个出库任务订单顺序的货位映射关系如下:
[Lk,qk,Mk]=y(k,lsort,Xsku) (18)
其货位所在纵向巷道Nk为:
Figure BDA0002517173640000054
考虑四向穿梭车的取放货时间与其深度货位的关系,现建立其函数关系如下:
Figure BDA0002517173640000055
其中,Tk take表示四向穿梭车到达货位目标点之后的取货时间,mod为取余函数;
给定倒货决策变量函数定义如下:
Figure BDA0002517173640000061
为了便于描述计算四向穿梭车的时间模型,对式(15)取如下函数,定义:
Tk=J(Vl,H,al,S,F(H,S)) (22)
1)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))=0并且Nk=1时,设定货架的宽度为c,则
Tk dolly=2·J(Vdy,sy,ady,Mk·c,F(sy,Mk·c))+Tk take+Tk delivey (23)
sy表示四向穿梭车纵向加速运动至最大纵向速度时的距离值;
2)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))=0并且Nk≠1时,其横向距离运行至最大速度的距离值为sx,实际运动横向距离值为:sn=5(Nk-1)c,设定转弯时间为Tk turn=2,则四向穿梭车的取放货时间表示如下:
Figure BDA0002517173640000062
其中abs函数表示绝对值函数;
3)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))≠0并且Nk=1时,即四向穿梭车取货的过程中需要考虑其倒货时间;采用的倒货策略为近邻倒货策略,其四向穿梭车的运行时间为:
Tk dolly=T1 k dolly+T2 k repo (25)
其中T1 k dolly为四向穿梭车的取货时间,由式(23)求得;T2 k repo为四向穿梭车的倒货时间,其求解过程描述如下:
首先,寻找其近邻倒货库位为:
index=min[find(f(Lk,qk,:)==0)] (26)
然后计算其倒货运行距离srepo如下:
srepo=abs(inedx-Mk)·c (27)
由此可知,四向穿梭车执行第k个任务订单的倒货时间为:
T2 k repo=2·J(Vdy,sy,ady,srepo,F(sy,srepo))+Tk take+Tk delivey (28)
将式(28)和式(23)代入公式(25)即可求得四向穿梭车执行第k个任务的运行时间;
4)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))≠0并且Nk≠1时,其四向穿梭车执行第k个订单的实际运行时间为:
Figure BDA0002517173640000071
综上所述,由于同层位高速料箱提升机的上升运行时间和下降运行时间一致,执行第n个出库任务序列的系统出库时间递归模型表述为:
Figure BDA0002517173640000072
其中决策变量N(ΔT1 arrive,T1 dolly)的定义如下:
Figure BDA0002517173640000073
上述考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,所述步骤四中,对遗传算法中的PMX交叉算子进行改进的具体过程为:
设定遗传算法中染色体的数量为P,其染色体基因初始化序列由式(9)表示,即对应为高速料箱提升机随机初始任务序列;其适应度函数由式(30),即SOOTM出库作业任务时间表示;适应度函数设置如下:
fitnessu(lsort,pu)=Tsum-Tu n lift (32)
其中,pu表示第u个染色体随机生成的n个出库订单的任务顺序;Tsum为给定得常数值,设为:Tsum>Tu n lift,Tu n lift表示第u个染色体随机生成的n个出库订单任务顺序的系统出库时间,fitnessu(lsort,pu)为第u个染色体对应的适应度值大小;
假设两优秀父代的染色体基因序列如下:
Figure BDA0002517173640000081
假设其交叉初始位置和结束位置为第4个基因和第9个基因,其IPMX交叉算子设计如下:
Ⅰ)交换基因序列,建立基因交换矩阵:
由式(33)的父代信息进行基因交换如下:
Figure BDA0002517173640000082
基于交换信息,建立如下基因交换矩阵Ge
Figure BDA0002517173640000083
Ⅱ)寻找变量基因,更新基因交换矩阵:
首先将矩阵Ge与父代p1建立如下映射关系,生成基因状态矩阵Gpu和主导向量矩阵Gou分别如下所示:
主导向量矩阵Go1和Go2
Figure BDA0002517173640000084
基因状态矩阵Gp1和Gp2
Figure BDA0002517173640000085
然后将基因状态矩阵合并如下:
Gp=Gp1+Gp2=[0 1 1 1 1 2 1 0 0 2 1 2] (38)
最后,其变量基因Gv求解如下:
Gv=find(Gp(1,:)>1)=[6 10 12] (39)
由式(39)的计算结果,更新基因交换矩阵如下所示:
Figure BDA0002517173640000091
根据基因交换矩阵,更新主导向量矩阵Go1为:
Go1=[0 0 1 1 0 4 0 2 0 0 0 0 0] (41)
Ⅲ)生成新的基因序列:
将主导向量矩阵Go1与式(34)中的矩阵关系进行重复映射,其余基因位置不变,即可产生子代1基因
p'1=(2 1 4 6 12 10 7 3 5 8 11 9) (42)
现定义子代基因1与子代基因2之间的映射关系如下:
Figure BDA0002517173640000092
li为染色体中基因的个数表达;
由式(43)可知其子代2的基因序列如下:
p'2=(7 3 5 11 4 6 2 10 12 9 8 1) (44)
Ⅳ)重复迭代交叉:
在算法求解过程中,为了加快收敛速率,引入评价函数对交叉算子进行重复迭代更新,其基本思想如下:首先引入该算法的适应度函数作为子代评价函数;然后将生成的子代适应值与父代适应值进行比较,如果生成的子代优于其父代,则选择该子代染色体,停止内部迭代;如果生成的子代劣于其父代染色体,则将该子代与父代重组,进行重复交叉迭代,直到在内部迭代次数Tp内获得优于父代的染色体,若达到Tp内部迭代次数时仍然没有出现优于父代的子代染色体,则以一定随机概率去选择生成的子代基因。
上述考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,所述步骤四中,采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列的具体步骤为:
Step 1:初始化双深位四向穿梭车系统货架信息、订单信息、高速料箱提升机运行的基本参数信息、四向穿梭车运行参数,随机初始化染色体任务序列信息,设置迭代时间Ttime
Step 2:根据步骤二建立的SOOTM模型,即:式(30)和式(31),求解种群规模的适应度函数,并通过式(32)转换其适应度函数值;
Step 3:采用无放回式随机余数选择算子选择优秀父代染色体;
Step 4:以一定交叉概率Pc采用IPMX策略进行交叉,产生优秀的子代染色体;
Step 5:以一定变异概率Pm进行随机两点变异操作;
Step 6:迭代更新,如果其迭代次数小于Ttime,则继续跳至Step 2继续执行,如果迭代次数大于或等于Ttime,则迭代停止,并且返回其染色体基因编码组合,即最优提升机任务序列矩阵;
Step 7:根据最优高速料箱提升机任务序列矩阵和四向穿梭车之间的映射关系,分配各层位之间四向穿梭车最优任务订单执行顺序。
本发明的有益效果在于:本发明首先对双深位四向穿梭车系统的进行仿真建模;然后基于双深位四向穿梭车系统的批量出库作业流程,建立了系统出库作业时间模型SOOTM;接着根据系统出库作业时间模型SOOTM,将系统订单排序优化问题转化为非标准的整数规划问题,建立了一个非标准的订单排序整数规划模型;再对遗传算法中的PMX交叉算子进行改进,采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列;最后通过改变系统的层位信息、巷道信息和出库订单情况,分析该方法的系统优化结果,相对于传统的出库订单执行顺序,本方法的优化结果使得系统的出库效率至少提高20%,数值仿真也验证了该方法的有效性。
附图说明
图1为本发明的流程图。
图2为本发明实施例中IAGA-PMX和IAGA-IPMX算法的迭代性能对比图。
图3为本发明实施例中不同货架层位数L的出库优化曲线图。
图4为本发明实施例中不同批量出库订单数量n的出库优化曲线图。
图5为本发明实施例中不同仓库巷道数N的出库优化曲线图。
图6为本发明的双深位四向穿梭车系统平面布局图。
图6中1表示库存货位占用;2表示库存货位空闲;3表示纵向运动的四向穿梭车;4表示横向运动的四向穿梭车;5表示四向穿梭车转弯板;6表示横向巷道;7表示纵向巷道;8表示高速料箱提升机;9表示四向穿梭车去放货站口缓存区;10表示双深位四向穿梭车货架。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明。
如图1所示,一种考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,包括以下步骤:
步骤一:对双深位四向穿梭车系统的进行仿真建模。
双深位四向穿梭车系统由两个维度构成:分别为硬件部分和软件部分,硬件部分包括双深位立体货架、四向穿梭车、高速料箱提升机、塑料周转箱,输送线等设备,软件部分包括订单管理系统WMS、仓储调度系统WCS和仓储执行系统WES软件。
由于双深位四向穿梭车系统的订单排序优化问题过于复杂,本发明针对双深位四向穿梭车系统组成提出以下假设:
1-1):双深位立体货架:一般立体货架的构造是针对客户的场地及其仓储数据来设计的,一旦货架规划设计完成,其参数基本保持不变。设定货架的层数为L、巷道数为N、行数为M,货位为双深度货位,即第N个巷道所对应的第M列的存储空间为4,由于货架为四向穿梭车系统,设定其转弯板的位置位于第20行与第21行之间,由此可知,整个货架的存储空间数量Nnum大小为:
Nnum=4·L·N·M (1)
设定货位的列数为q,其货位列数与巷道数之间的关系为:
q=4·N (2)
此时,库存信息在三维货架中由空间坐标表示为:Xsku=(L,q,M);因此,整个仓储空间中的货位状态由随机数建模生成如下:
f(Li,qi,Mi)=round(rand),i={1,2,...,Nnum} (3)
其中,f(Li,qi,Mi)表示货架中第i个货位的占用信息,Li,qi,Mi分别为第i个货位的空间坐标信息,即层位数、货位列数和货位行数;rand表示0到1之间的均匀随机数,round表示四舍五入函数,f(Li,qi,Mi)的值域为0或1,当该函数值域为1时,代表货架第i个货位占用,当函数值域为0时,代表货架第i个货位空闲。
由于仅研究双深位四向穿梭车系统的出库模型,而仓储系统的库存信息是由其入库作业中WMS系统的储位优化决定,现依据双深位系统货位优化原则,对仓储系统中的货位状态进行二次遍历建模。
双深位货架库存信息中两深度货位之间的关系建立如下,即依据式(3)的货位状态进行如下遍历更新:
(a):当qi=4j+1,j={0,1,2,…,N-1}时,
Figure BDA0002517173640000121
(b):当qi=4j+4,j={0,1,2,…,N-1}时,
Figure BDA0002517173640000122
其中,j为0到N-1之间的正整数;
1-2):四向穿梭车:与传统的双向穿梭车相比,其在仓储中的作业路径能够在同层位内实现横向运动和纵向运动,到达同层位任一库存点。假设每层均配备一辆四向穿梭车,则四向穿梭车的数量即为L,设定四向穿梭车的横向最大速度为Vdx、纵向最大速度为Vdy、横向最大加速度为adx、纵向最大加速度为ady,此时四向穿梭车的运动时间模型建立如下:
由于四向穿梭车横向运动性能与纵向运动性能一致,故只做纵向运动建模;假设四向穿梭车达到最大纵向运动速度时的最大位移为XL,此时四向穿梭车运动时间td与其实际运动距离sy之间的关系如下:
Figure BDA0002517173640000123
其中,s为四向穿梭车的纵向运动的实际距离值;四向穿梭车达到最大纵向运动速度时的最大位移XL与四向穿梭车的性能参数关系为:
Figure BDA0002517173640000124
因此,通过此模型,仅需确定该四向穿梭车执行订单的库存信息,即可求得四向穿梭车完成该订单所需的时间;
1-3):高速料箱提升机:假设在1号巷道口设置一台高速料箱提升机,其功能负责与每层之间的四向穿梭车交互,实现订单周转箱的高度作业,设定高速料箱提升机的最大加速度为al,最大运行速度为Vl,其作业运动时间模型与式(6)一致,故不作其叙述。
步骤二:基于双深位四向穿梭车系统的批量出库作业流程,建立了系统出库作业时间模型SOOTM。具体步骤为:
系统的出库作业特点为:四向穿梭车并行式作业,高速料箱提升机串行作业的方式;假设批量订单出库的数量为n,依据仓储订单模型,其出库任务序列位置矩阵Xsku如下:
Figure BDA0002517173640000131
给定高速料箱提升机执行订单的任务序列矩阵为lsort为:
lsort=randperm(n) (9)
其中,randperm函数表示随机生成的n个出库订单任务序列矩阵;设定高速料箱提升机执行第一个任务的时间序列为0时刻,系统出库作业时间Tout表示为:
Figure BDA0002517173640000132
其中,Tn lift为执行完n个任务订单的时刻,ΔTk lift为高速料箱提升机执行第k个订单的所需时长,高速料箱提升机执行任第k个任务订单的关系如下:
ΔTk lift=ΔTk arrive+ΔTk awaiting+ΔTk delivey (11)
其中,ΔTk arrive为高速料箱提升机执行第k个任务到达其目标层位的运行时间,ΔTk awaiting为高速料箱提升机到达目标层位之后等待四向穿梭车取货的时间,ΔTk delivey为高速料箱提升机与四向穿梭车完成第k个任务交互后送至出货站台的时间;
基于高速料箱提升机作业的时间序列,其递归模型建立如下所示:
Tk lift=Tk-1 lift+(ΔTk arrive+ΔTk awaiting+ΔTk delivey) (12)
Tk lift表示完成k个订单任务所需的总时间,即k个订单任务序列的出库时间;由式(12)分析知:当Tk-1 lift已知时,通过求解ΔTk arrive,ΔTk delivey,ΔTk awaiting的映射关系,令k=n时,即可迭代求得n个订单任务的出库时间。
步骤三:根据系统出库作业时间模型SOOTM,将系统订单排序优化问题转化为非标准的整数规划问题,建立了一个非标准的订单排序整数规划模型。具体步骤为:
定义高速料箱提升机执行第k个任务序列所对应的层位信息Lk之间的映射函数如下:
Lk=g(k,lsort,Xsku) (13)
定义决策函数如下:
Figure BDA0002517173640000141
设定每层货架的高度为h,高速料箱提升机运行至最大速度时的位移为H,此时第k个高速料箱提升机的任务执行时间为:
Figure BDA0002517173640000142
假设高速料箱提升机开始执行第k个任务到达目标层位的时刻为Tk arrive,等候高速料箱提升机交互完成时刻为Tk awaiting,目标层位的四向穿梭车前一个任务执行订单任务号为k-w,其等候高速料箱提升机交互完成时刻为Tk-w awaiting,则第k个任务交互完成时刻Tk awaiting与其第k-1个任务完成时刻Tk-1 delivey之间的关系如下:
Tk awaiting=Tk-1 arrive+ΔTk arrive+ΔTk awaiting (16)
设定四向穿梭车取第k个任务所花的时间为:Tk dolly,此时执行第k个任务的高速料箱提升机等待时长ΔTk awaiting之间的关系判断如下:
Figure BDA0002517173640000143
将式(16)(17)代入式(12)即可求得双深位四向穿梭车系统出库时间的递归模型;递归模型中的未知参数仅剩四向穿梭车的取货时间Tk dolly时间建模,其建模过程如下:
首先,建立第k个出库任务订单顺序的货位映射关系如下:
[Lk,qk,Mk]=y(k,lsort,Xsku) (18)
其货位所在纵向巷道Nk为:
Figure BDA0002517173640000144
考虑四向穿梭车的取放货时间与其深度货位的关系,现建立其函数关系如下:
Figure BDA0002517173640000145
其中,Tk take表示四向穿梭车到达货位目标点之后的取货时间,mod为取余函数;
给定倒货决策变量函数定义如下:
Figure BDA0002517173640000151
为了便于描述计算四向穿梭车的时间模型,对式(15)取如下函数,定义:
Tk=J(Vl,H,al,S,F(H,S)) (22)
1)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))=0并且Nk=1时,设定货架的宽度为c,则
Tk dolly=2·J(Vdy,sy,ady,Mk·c,F(sy,Mk·c))+Tk take+Tk delivey (23)
sy表示四向穿梭车纵向加速运动至最大纵向速度时的距离值;
2)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))=0并且Nk≠1时,其横向距离运行至最大速度的距离值为sx,实际运动横向距离值为:sn=5(Nk-1)c,设定转弯时间为Tk turn=2,则四向穿梭车的取放货时间表示如下:
Figure BDA0002517173640000152
其中abs函数表示绝对值函数;
3)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))≠0并且Nk=1时,即四向穿梭车取货的过程中需要考虑其倒货时间;采用的倒货策略为近邻倒货策略,其四向穿梭车的运行时间为:
Tk dolly=T1 k dolly+T2 k repo (25)
其中T1 k dolly为四向穿梭车的取货时间,由式(23)求得;T2 k repo为四向穿梭车的倒货时间,其求解过程描述如下:
首先,寻找其近邻倒货库位为:
index=min[find(f(Lk,qk,:)==0)] (26)
然后计算其倒货运行距离srepo如下:
srepo=abs(inedx-Mk)·c (27)
由此可知,四向穿梭车执行第k个任务订单的倒货时间为:
T2 k repo=2·J(Vdy,sy,ady,srepo,F(sy,srepo))+tk take+tk delivey (28)
将式(28)和式(23)代入公式(25)即可求得四向穿梭车执行第k个任务的运行时间;
4)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))≠0并且Nk≠1时,其四向穿梭车执行第k个订单的实际运行时间为:
Figure BDA0002517173640000161
综上所述,由于同层位高速料箱提升机的上升运行时间和下降运行时间一致,执行第n个出库任务序列的系统出库时间递归模型表述为:
Figure BDA0002517173640000162
其中决策变量N(ΔT1 arrive,T1 dolly)的定义如下:
Figure BDA0002517173640000163
步骤四:对遗传算法中的PMX交叉算子进行改进,采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列。
由步骤三可知,影响系统出库时间作业的主要因素为:系统出库的任务调度顺序。显然,该问题是一个典型的NP问题,解决此类问题的常用方法有:数学规划法,比如:枚举法、Gurobi优化器等和启发式算法,比如遗传算法、模拟退火算法和蚁群算法等。
针对系统出库订单序列优化问题,采用传统的数学规划方法虽然能够准确的计算出最优任务序列,但计算时间过长,计算量过大,并不适用于该系统的实际调度过程,因此,本发明将采用改进的遗传算法来求解SOOTM模型的最优任务序列问题。
对遗传算法中的PMX交叉算子进行改进的具体过程为:
设定遗传算法中染色体的数量为P,其染色体基因初始化序列由式(9)表示,即对应为高速料箱提升机随机初始任务序列;其适应度函数由式(30),即SOOTM出库作业任务时间表示;由于本发明所求的优化目标为最小化优化问题,故其适应度函数设置如下:
fitnessu(lsort,pu)=Tsum-Tu n lift (32)
其中,pu表示第u个染色体随机生成的n个出库订单的任务顺序;Tsum为给定得常数值,设为:Tsum>Tu n lift,Tu n lift表示第u个染色体随机生成的n个出库订单任务顺序的系统出库时间,fitnessu(lsort,pu)为第u个染色体对应的适应度值大小;遗传算法中常见的选择操作有:轮盘赌、锦标赛和排序等选择算子,经过相关测试,本发明将选用无放回式随机余数选择算子。
由于上文中给定的染色体编码方式为整数编码,并且交叉之后基因编号不能重复,此问题可等价于TSP问题的求解,但不同之处在于:TSP问题中城市之间的距离为定值,而该订单序列之间的作业时长并不恒定,如何寻找一种有效的交叉操作去求解该订单序列模型,是该算法设计的难点。本发明针对PMX交叉算子计算度复杂、收敛速率慢的缺陷,设计了一种IPMX算子,成功将SOOTM模型求解,且其效果优于PMX算子。
假设两优秀父代的染色体基因序列如下:
Figure BDA0002517173640000171
假设其交叉初始位置和结束位置为第4个基因和第9个基因,其IPMX交叉算子设计如下:
Ⅰ)交换基因序列,建立基因交换矩阵:
由式(33)的父代信息进行基因交换如下:
Figure BDA0002517173640000172
基于交换信息,建立如下基因交换矩阵Ge
Figure BDA0002517173640000173
Ⅱ)寻找变量基因,更新基因交换矩阵:
首先将矩阵Ge与父代p1建立如下映射关系,生成基因状态矩阵Gpu和主导向量矩阵Gou分别如下所示:
主导向量矩阵Go1和Go2
Figure BDA0002517173640000181
基因状态矩阵Gp1和Gp2
Figure BDA0002517173640000182
然后将基因状态矩阵合并如下:
Gp=Gp1+Gp2=[0 1 1 1 1 2 1 0 0 2 1 2] (38)
最后,其变量基因Gv求解如下:
Gv=find(Gp(1,:)>1)=[6 10 12] (39)
由式(39)的计算结果,更新基因交换矩阵如下所示:
Figure BDA0002517173640000183
根据基因交换矩阵,更新主导向量矩阵Go1为:
Go1=[0 0 11 0 4 0 2 0 0 0 0 0] (41)
Ⅲ)生成新的基因序列:
将主导向量矩阵Go1与式(34)中的矩阵关系进行重复映射,其余基因位置不变,即可产生子代1基因
p'1=(2 1 4 6 12 10 7 3 5 8 11 9) (42)
现定义子代基因1与子代基因2之间的映射关系如下:
Figure BDA0002517173640000184
li为染色体中基因的个数表达;
由式(43)可知其子代2的基因序列如下:
p'2=(7 3 5 11 4 6 2 10 12 9 8 1) (44)
Ⅳ)重复迭代交叉:
在算法求解过程中,为了加快收敛速率,引入评价函数对交叉算子进行重复迭代更新,其基本思想如下:首先引入该算法的适应度函数作为子代评价函数;然后将生成的子代适应值与父代适应值进行比较,如果生成的子代优于其父代,则选择该子代染色体,停止内部迭代;如果生成的子代劣于其父代染色体,则将该子代与父代重组,进行重复交叉迭代,直到在内部迭代次数Tp内获得优于父代的染色体,若达到Tp内部迭代次数时仍然没有出现优于父代的子代染色体,则以一定随机概率去选择生成的子代基因。
采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列的具体步骤为:
Step 1:初始化双深位四向穿梭车系统货架信息、订单信息、高速料箱提升机运行的基本参数信息、四向穿梭车运行参数,随机初始化染色体任务序列信息,设置迭代时间Ttime
Step 2:根据步骤二建立的SOOTM模型,即:式(30)和式(31),求解种群规模的适应度函数,并通过式(32)转换其适应度函数值;
Step 3:采用无放回式随机余数选择算子选择优秀父代染色体;
Step 4:以一定交叉概率Pc采用IPMX策略进行交叉,产生优秀的子代染色体;
Step 5:以一定变异概率Pm进行随机两点变异操作;
Step 6:迭代更新,如果其迭代次数小于Ttime,则继续跳至Step 2继续执行,如果迭代次数大于或等于Ttime,则迭代停止,并且返回其染色体基因编码组合,即最优提升机任务序列矩阵;
Step 7:根据最优高速料箱提升机任务序列矩阵和四向穿梭车之间的映射关系,分配各层位之间四向穿梭车最优任务订单执行顺序。
仿真测试
本仿真在MATLAB2019a软件下运行,进行了以下三个部分的数值仿真验证。首先将IAGA-SOOTM算法进行了仿真测试,得出了该系统的最优任务调度序列;其次,将本发明提出的IPMX交叉算子与PMX交叉算子分别进行了SOOTM模型的求解,对两种算法的性能进行了对比分析;最后,通过改变系统出库货位数量、仓库层位信息、仓库巷道信息等来分析该方法在此系统中的优化效率,验证其方法的有效性和适应性。
IAGA-SOOTM系统出库订单排序优化仿真:
首先,设置IAGA-SOOTM算法的参数如下表1所示。
表1 IAGA-SOOTM算法参数设置
Figure BDA0002517173640000201
然后,设定货架的层位信息为10,巷道数为6,货位列数为60,随机给定系统批量出库订单数量为30,其出库任务顺序与其库存信息给定如表2所示:
表2随机模拟初始出库任务顺序与库存坐标信息表
出库sku订单顺序 出库坐标位置 出库sku订单顺序 出库坐标位置
1 (9,12,32) 16 (2,18,27)
2 (6,2,11) 17 (3,4,14)
3 (1,24,43) 18 (3,11,48)
4 (2,8,40) 19 (10,7,40)
5 (8,17,30) 20 (9,12,43)
6 (3,23,28) 21 (5,12,30)
7 (3,3,62) 22 (1,10,5)
8 (5,10,30) 23 (6,18,36)
9 (6,11,47) 24 (5,23,44)
10 (4,4,53) 25 (3,6,60)
11 (7,3,30) 26 (8,14,60)
12 (6,18,48) 27 (2,6,14)
13 (8,2,38) 28 (5,5,3)
14 (2,23,34) 29 (2,12,1)
15 (1,17,23) 30 (3,17,17)
经MATLAB仿真计算,采用IAGA-SOOTM算法求解可知,其提升机订单排序优化执行序列表如表3所示:
表3最优出库任务顺序与订单坐标位置表
出库sku订单顺序 出库坐标位置 出库sku订单顺序 出库坐标位置
8 (9,12,32) 22 (2,18,27)
20 (6,2,11) 10 (3,4,14)
12 (1,24,43) 5 (3,11,48)
26 (2,8,40) 11 (10,7,40)
18 (8,17,30) 9 (9,12,43)
3 (3,23,28) 16 (5,12,30)
4 (3,3,62) 13 (1,10,5)
7 (5,10,30) 6 (6,18,36)
23 (6,11,47) 24 (5,23,44)
17 (4,4,53) 29 (3,6,60)
19 (7,3,30) 30 (8,14,60)
21 (6,18,48) 1 (2,6,14)
14 (8,2,38) 15 (5,5,3)
2 (2,23,34) 28 (2,12,1)
25 (1,17,23) 27 (3,17,17)
由表3可知四向穿梭车订单调度执行顺序,其结果如表4所示:
表4四向穿梭车任务调度仿真结果表
Figure BDA0002517173640000211
对于优化前的出库订单,记任务顺序执行时间为Tr;对于优化后的出库订单,记任务顺序执行时间为To。在Matlab中,经过一次仿真计算,得:Tr=410s;而优化之后的出库时间为To=240s。相较于优化之前,其系统的出库效率提升了百分之40%左右。
PMX与IPMX交叉算子性能对比分析:
设定SOOTM出库时间模型中货架的层位数为10,巷道数为10,货位列数为60,批量出库订单量为100,分别采用IAGA-PMX和IAGA-IPMX算法求解SOOTM优化模型,分别测试10次,对比这两种算法对该模型的优化性能,其测试数据如下表5所示:
表5:SOOTM模型算法性能测试对比表
Figure BDA0002517173640000221
由表5中的仿真测试数据可知:在求解SOOTM出库时间模型时,IPMX交叉操作的优化效率均高于PMX交叉操作。鉴于该算法的随机性,对于其中某一组的求解过程,图2给出了两种算法的迭代优化曲线:
在图2中,横坐标表示算法的迭代周期,纵坐标代表SOOTM模型的系统出库时间,黑色实线表示IAGA-IPMX算法求解SOOTM模型的迭代曲线,黑色虚线表示IAGA-PMX算法求解SOOTM模型的迭代曲线,由此可知:采用IAGA-IPMX算法不仅能够成功找出该整数规划模型的最优或次优解,而且其收敛速度和最优解搜索能力均优于IAGA-PMX算法。
IAGA-SOOTM算法多维度仿真测试:
本发明通过改变批量出库订单的数量,仓库的层位信息以及仓库的巷道信息,多维度的测试该算法对SOOTM模型的优化结果,其多维度结果分布测试数据可验证系统的可行性,并且能够为系统规划设计提供一定的设计依据。
货架层位数L变化对IAGA-SOOTM算法的优化测试:
货架层位数的改变会影响提升机的作业时长,也会间接影响提升机与四向穿梭车的交互和等待时长,从而影响系统的出库时长。本发明通过改变巷道层位数L来验证IAGA-SOOTM算法优化的适用性。鉴于该算法的随机性,在取一定巷道层位数时,采用IAGA-SOOTM模型算法重复运行10次,以其均值来描述其优化结果。对于不同的货架层位数L,其仿真数据统计的曲线图如图3所示:
图3中左图的横坐标表示货架层位数L,纵坐标表示SOOTM模型的系统出库时间,黑色横线加六角星的曲线代表优化前的任务订单顺序出库时间,黑色横线加三角星的曲线代表优化后的任务订单顺序出库时间由图可知,采用IAGA-SOOTM模型优化之后,系统出库时间均快于优化前的系统出库时间。图3中右图红色加正方形曲线表示IAGA-SOOTM系统出库优化率,由图可知:采用IAGA-SOOTM算法进行优化后,系统的出库效率至少提升了20%左右。
批量出库订单数量n变化对IAGA-SOOTM算法的优化测试:
订单批量出库数量n的改变,会直接影响系统的批量出库时间,本发明通过改变订单的数量n来测试IAGA-SOOTM算法的优化效率。本仿真的系统参数设置为:订单的出库数量为自变量,系统的出库时间为因变量,货架层位信息L为10,巷道数为6,列数为60,其余参数同表1保持不变。鉴于算法的随机性,取一定批量出库订单数量n时,采用IAGA-SOOTM模型算法重复运行10次,以其均值来描述其优化结果。通过改变不同的出库订单数量n,其仿真数据统计的曲线图如图4所示:
如图4左图所示,无论是优化前的订单任务顺序还是优化后的任务订单顺序,其系统出库时间均会随出库订单数量的增加而递增,不过其采用IAGA-SOOTM优化之后的出库任务订单顺序的出库时间均优于优化前的系统出库时间。由图4右图所示,采用IAGA-SOOTM算法优化后,系统出库时间优化率至少能提高40%左右,而且趋于稳定。
货架巷道数N变化对IAGA-SOOTM算法的优化测试
货位巷道数N的改变,会影响某层位穿梭车的取货时间,影响提升机的等待时长,从而影响整个系统的批量出库订单时长。本仿真的系统参数设置为:仓库的巷道数N为自变量,系统的出库时间为因变量,货架层位信息L为10,出库订单数量为100,列数为60,其余参数同表1保持不变,鉴于该算法的随机性,取一定仓库的巷道数N时,采用IAGA-SOOTM模型算法重复运行10次,以其均值来描述其优化结果。通过改变不同的仓库的巷道数N时,其仿真数据统计的曲线图如图5所示:
由图5左图所示,无论是优化前的订单任务顺序还是优化后的任务订单顺序,其系统出库时间均会随仓库巷道数N增加而递增,不过其采用IAGA-SOOTM优化之后的出库任务订单顺序的出库时间均优于优化前的系统出库时间。由图5右图所示,采用IAGA-SOOTM算法优化后,系统出库时间优化率大致能稳定在40%左右。
综合分析可知:相较于传统的随机任务出库顺序,在系统参数任意改变的情况下,本发明提出的IAGA-SOOTM模型的订单排序优化算法,至少能将系统的出库效率提高20%以上,数值分析验证了该算法的有效性。
本发明针对传统的双深位四向穿梭车系统批量出库效率低的问题,通过设计IAGA-SOOTM模型来优化该系统任务订单的出库顺序,克服了该系统的缺陷。针对该算法的设计,本发明的主要创新之处如下:
1):本发明基于双向穿梭车系统订单排序优化思想,以凯乐士四向穿梭车系统为例,建立了考虑倒货策略的双深位四向穿梭车系统出库时间模型(SOOTM);并采用递归的运算思想,求解了该系统的批量出库任务顺序的出库时间;其模型的复杂度和真实性能够准确逼近实际的四向穿梭车系统。
2):将SOOTM出库时间模型的订单排序问题转化为非标准的整数规划问题,采用改进的遗传算法(IAGA)对该模型进行了求解,准确得出了最优任务顺序序列,并且在改变系统的各种参数的条件下,对算法进行了测试和验证。
3):在求解SOOTM整数规划问题,本发明将遗传算法中原有的PMX交叉算子在其复杂度和收敛速率上进行了改进,提出了IPMX算子。
本发明所提出的IAGA-SOOTM算法能够成功应用于该类调度系统的批量出库的情况,相较于传统的出库效率,其优化效率至少能提高20%个点。

Claims (6)

1.一种考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,其特征在于,包括以下步骤:
步骤一:对双深位四向穿梭车系统的进行仿真建模;
步骤二:基于双深位四向穿梭车系统的批量出库作业流程,建立了系统出库作业时间模型SOOTM;
步骤三:根据系统出库作业时间模型SOOTM,将系统订单排序优化问题转化为非标准的整数规划问题,建立了一个非标准的订单排序整数规划模型;
步骤四:对遗传算法中的PMX交叉算子进行改进,采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列。
2.根据权利要求1所述的考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,其特征在于,所述步骤一中,双深位四向穿梭车系统由两个维度构成:分别为硬件部分和软件部分,硬件部分包括双深位立体货架、四向穿梭车、高速料箱提升机,软件部分包括订单管理系统WMS、仓储调度系统WCS和仓储执行系统WES软件;
针对双深位四向穿梭车系统组成提出以下假设:
1-1):双深位立体货架:设定货架的层数为L、巷道数为N、行数为M,货位为双深度货位,即第N个巷道所对应的第M列的存储空间为4,由于货架为四向穿梭车系统,设定其转弯板的位置位于第20行与第21行之间,由此可知,整个货架的存储空间数量Nnum大小为:
Nnum=4·L·N·M (1)
设定货位的列数为q,其货位列数与巷道数之间的关系为:
q=4·N (2)
此时,库存信息在三维货架中由空间坐标表示为:Xsku=(L,q,M);因此,整个仓储空间中的货位状态由随机数建模生成如下:
f(Li,qi,Mi)=round(rand),i={1,2,...,Nnum} (3)
其中,f(Li,qi,Mi)表示货架中第i个货位的占用信息,Li,qi,Mi分别为第i个货位的空间坐标信息,即层位数、货位列数和货位行数;rand表示0到1之间的均匀随机数,round表示四舍五入函数,f(Li,qi,Mi)的值域为0或1,当该函数值域为1时,代表货架第i个货位占用,当函数值域为0时,代表货架第i个货位空闲;
由于仅研究双深位四向穿梭车系统的出库模型,而仓储系统的库存信息是由其入库作业中WMS系统的储位优化决定,现依据双深位系统货位优化原则,对仓储系统中的货位状态进行二次遍历建模:
双深位货架库存信息中两深度货位之间的关系建立如下,即依据式(3)的货位状态进行如下遍历更新:
(a):当qi=4j+1,j={0,1,2,…,N-1}时,
Figure FDA0002517173630000021
(b):当qi=4j+4,j={0,1,2,…,N-1}时,
Figure FDA0002517173630000022
其中,j为0到N-1之间的正整数;
1-2):四向穿梭车:假设每层均配备一辆四向穿梭车,则四向穿梭车的数量即为L,设定四向穿梭车的横向最大速度为Vdx、纵向最大速度为Vdy、横向最大加速度为adx、纵向最大加速度为ady,此时四向穿梭车的运动时间模型建立如下:
由于四向穿梭车横向运动性能与纵向运动性能一致,故只做纵向运动建模;假设四向穿梭车达到最大纵向运动速度时的最大位移为XL,此时四向穿梭车运动时间td与其实际运动距离sy之间的关系如下:
Figure FDA0002517173630000031
其中,s为四向穿梭车的纵向运动的实际距离值;四向穿梭车达到最大纵向运动速度时的最大位移XL与四向穿梭车的性能参数关系为:
Figure FDA0002517173630000032
因此,通过此模型,仅需确定该四向穿梭车执行订单的库存信息,即可求得四向穿梭车完成该订单所需的时间;
1-3):高速料箱提升机:假设在1号巷道口设置一台高速料箱提升机,其功能负责与每层之间的四向穿梭车交互,实现订单周转箱的高度作业,设定高速料箱提升机的最大加速度为al,最大运行速度为Vl,其作业运动时间模型与式(6)一致。
3.根据权利要求2所述的考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,其特征在于,所述步骤二具体步骤为:
系统的出库作业特点为:四向穿梭车并行式作业,高速料箱提升机串行作业的方式;假设批量订单出库的数量为n,依据仓储订单模型,其出库任务序列位置矩阵Xsku如下:
Figure FDA0002517173630000041
给定高速料箱提升机执行订单的任务序列矩阵为lsort为:
lsort=randperm(n) (9)
其中,randperm函数表示随机生成的n个出库订单任务序列矩阵;设定高速料箱提升机执行第一个任务的时间序列为0时刻,系统出库作业时间Tout表示为:
Figure FDA0002517173630000042
其中,Tn lift为执行完n个任务订单的时刻,ΔTk lift为高速料箱提升机执行第k个订单的所需时长,高速料箱提升机执行任第k个任务订单的关系如下:
ΔTk lift=ΔTk arrive+ΔTk awaiting+ΔTk delivey (11)
其中,ΔTk arrive为高速料箱提升机执行第k个任务到达其目标层位的运行时间,ΔTk awaiting为高速料箱提升机到达目标层位后等待四向穿梭车取货的时间,ΔTk delivey为高速料箱提升机与四向穿梭车完成第k个任务交互后送至出货站台的时间;
基于高速料箱提升机作业的时间序列,其递归模型建立如下所示:
Tk lift=Tk-1 lift+(ΔTk arrive+ΔTk awaiting+ΔTk delivey) (12)
Tk lift表示完成k个订单任务所需的总时间,即k个订单任务序列的出库时间;由式(12)分析知:当Tk-1 lift已知时,通过求解ΔTk arrive,ΔTk delivey,ΔTk awaiting的映射关系,令k=n时,即可迭代求得n个订单任务的出库时间。
4.根据权利要求3所述的考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,其特征在于,所述步骤三具体步骤为:
定义高速料箱提升机执行第k个任务序列所对应的层位信息Lk之间的映射函数如下:
Lk=g(k,lsort,Xsku) (13)
定义决策函数如下:
Figure FDA0002517173630000051
设定每层货架的高度为h,高速料箱提升机运行至最大速度时的位移为H,此时第k个高速料箱提升机的任务执行时间为:
Figure FDA0002517173630000052
假设高速料箱提升机开始执行第k个任务到达目标层位的时刻为Tk arrive,等候高速料箱提升机交互完成时刻为Tk awaiting,目标层位的四向穿梭车前一个任务执行订单任务号为k-w,其等候高速料箱提升机交互完成时刻为Tk-w awaiting,则第k个任务交互完成时刻Tk awaiting与其第k-1个任务完成时刻Tk-1 delivey之间的关系如下:
Tk awaiting=Tk-1 arrive+ΔTk arrive+ΔTk awaiting (16)
设定四向穿梭车取第k个任务所花的时间为:Tk dolly,此时执行第k个任务的高速料箱提升机等待时长ΔTk awaiting之间的关系判断如下:
Figure FDA0002517173630000053
将式(16)(17)代入式(12)即可求得双深位四向穿梭车系统出库时间的递归模型;递归模型中的未知参数仅剩四向穿梭车的取货时间Tk dolly时间建模,其建模过程如下:
首先,建立第k个出库任务订单顺序的货位映射关系如下:
[Lk,qk,Mk]=y(k,lsort,Xsku) (18)
其货位所在纵向巷道Nk为:
Figure FDA0002517173630000061
考虑四向穿梭车的取放货时间与其深度货位的关系,现建立其函数关系如下:
Figure FDA0002517173630000062
其中,Tk take表示四向穿梭车到达货位目标点之后的取货时间,mod为取余函数;
给定倒货决策变量函数定义如下:
Figure FDA0002517173630000063
为了便于描述计算四向穿梭车的时间模型,对式(15)取如下函数,定义:
Tk=J(Vl,H,al,S,F(H,S)) (22)
1)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))=0并且Nk=1时,设定货架的宽度为c,则
Tk dolly=2·J(Vdy,sy,ady,Mk·c,F(sy,Mk·c))+Tk take+Tk delivey (23)
sy表示四向穿梭车纵向加速运动至最大纵向速度时的距离值;
2)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))=0并且Nk≠1时,其横向距离运行至最大速度的距离值为sx,实际运动横向距离值为:sn=5(Nk-1)c,设定转弯时间为Tk turn=2,则四向穿梭车的取放货时间表示如下:
Figure FDA0002517173630000071
其中abs函数表示绝对值函数;
3)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))≠0并且Nk=1时,即四向穿梭车取货的过程中需要考虑其倒货时间;采用的倒货策略为近邻倒货策略,其四向穿梭车的运行时间为:
Tk dolly=T1 k dolly+T2 k repo (25)
其中T1 k dolly为四向穿梭车的取货时间,由式(23)求得;T2 k repo为四向穿梭车的倒货时间,其求解过程描述如下:
首先,寻找其近邻倒货库位为:
index=min[find(f(Lk,qk,:)==0)] (26)
然后计算其倒货运行距离srepo如下:
srepo=abs(inedx-Mk)·c (27)
由此可知,四向穿梭车执行第k个任务订单的倒货时间为:
T2 k repo=2·J(Vdy,sy,ady,srepo,F(sy,srepo))+Tk take+Tk delivey (28)
将式(28)和式(23)代入公式(25)即可求得四向穿梭车执行第k个任务的运行时间;
4)当G(f(Lk,qk,Mk),f(Lk,qk±1,Mk))≠0并且Nk≠1时,其四向穿梭车执行第k个订单的实际运行时间为:
Figure FDA0002517173630000072
综上所述,由于同层位高速料箱提升机的上升运行时间和下降运行时间一致,执行第n个出库任务序列的系统出库时间递归模型表述为:
Figure FDA0002517173630000081
其中决策变量N(ΔT1 arrive,T1 dolly)的定义如下:
Figure FDA0002517173630000082
5.根据权利要求4所述的考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,其特征在于,所述步骤四中,对遗传算法中的PMX交叉算子进行改进的具体过程为:
设定遗传算法中染色体的数量为P,其染色体基因初始化序列由式(9)表示,即对应为高速料箱提升机随机初始任务序列;其适应度函数由式(30),即SOOTM出库作业任务时间表示;适应度函数设置如下:
fitnessu(lsort,pu)=Tsum-Tu n lift (32)
其中,pu表示第u个染色体随机生成的n个出库订单的任务顺序;Tsum为给定得常数值,设为:Tsum>Tu n lift,Tu n lift表示第u个染色体随机生成的n个出库订单任务顺序的系统出库时间,fitnessu(lsort,pu)为第u个染色体对应的适应度值大小;
假设两优秀父代的染色体基因序列如下:
Figure FDA0002517173630000083
假设其交叉初始位置和结束位置为第4个基因和第9个基因,其IPMX交叉算子设计如下:
Ⅰ)交换基因序列,建立基因交换矩阵:
由式(33)的父代信息进行基因交换如下:
Figure FDA0002517173630000091
基于交换信息,建立如下基因交换矩阵Ge
Figure FDA0002517173630000092
Ⅱ)寻找变量基因,更新基因交换矩阵:
首先将矩阵Ge与父代p1建立如下映射关系,生成基因状态矩阵Gpu和主导向量矩阵Gou分别如下所示:
主导向量矩阵Go1和Go2
Figure FDA0002517173630000093
基因状态矩阵Gp1和Gp2
Figure FDA0002517173630000094
然后将基因状态矩阵合并如下:
Gp=Gp1+Gp2=[0 1 1 1 1 2 1 0 0 2 1 2] (38)
最后,其变量基因Gv求解如下:
Gv=find(Gp(1,:)>1)=[6 10 12] (39)
由式(39)的计算结果,更新基因交换矩阵如下所示:
Figure FDA0002517173630000101
根据基因交换矩阵,更新主导向量矩阵Go1为:
Go1=[0 0 11 0 4 0 2 0 0 0 0 0] (41)
Ⅲ)生成新的基因序列:
将主导向量矩阵Go1与式(34)中的矩阵关系进行重复映射,其余基因位置不变,即可产生子代1基因
p'1=(2 1 4 612 10 7 3 5 8 11 9) (42)
现定义子代基因1与子代基因2之间的映射关系如下:
Figure FDA0002517173630000102
li为染色体中基因的个数表达;
由式(43)可知其子代2的基因序列如下:
p'2=(7 3 5 11 4 6 2 10 12 98 1) (44)
Ⅳ)重复迭代交叉:
在算法求解过程中,为了加快收敛速率,引入评价函数对交叉算子进行重复迭代更新,其基本思想如下:首先引入该算法的适应度函数作为子代评价函数;然后将生成的子代适应值与父代适应值进行比较,如果生成的子代优于其父代,则选择该子代染色体,停止内部迭代;如果生成的子代劣于其父代染色体,则将该子代与父代重组,进行重复交叉迭代,直到在内部迭代次数Tp内获得优于父代的染色体,若达到Tp内部迭代次数时仍然没有出现优于父代的子代染色体,则以一定随机概率去选择生成的子代基因。
6.根据权利要求5所述的考虑倒货策略的双深位四向穿梭车系统订单排序优化方法,其特征在于,所述步骤四中,采用改进的遗传算法求解订单排序整数规划模型,对系统订单执行顺序进行优化,得出系统出库时间作业的最优任务执行序列的具体步骤为:
Step 1:初始化双深位四向穿梭车系统货架信息、订单信息、高速料箱提升机运行的基本参数信息、四向穿梭车运行参数,随机初始化染色体任务序列信息,设置迭代时间Ttime
Step 2:根据步骤二建立的SOOTM模型,即:式(30)和式(31),求解种群规模的适应度函数,并通过式(32)转换其适应度函数值;
Step 3:采用无放回式随机余数选择算子选择优秀父代染色体;
Step 4:以一定交叉概率Pc采用IPMX策略进行交叉,产生优秀的子代染色体;
Step 5:以一定变异概率Pm进行随机两点变异操作;
Step 6:迭代更新,如果其迭代次数小于Ttime,则继续跳至Step 2继续执行,如果迭代次数大于或等于Ttime,则迭代停止,并且返回其染色体基因编码组合,即最优提升机任务序列矩阵;
Step 7:根据最优高速料箱提升机任务序列矩阵和四向穿梭车之间的映射关系,分配各层位之间四向穿梭车最优任务订单执行顺序。
CN202010480520.2A 2020-05-30 2020-05-30 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法 Active CN111626516B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010480520.2A CN111626516B (zh) 2020-05-30 2020-05-30 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010480520.2A CN111626516B (zh) 2020-05-30 2020-05-30 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法

Publications (2)

Publication Number Publication Date
CN111626516A true CN111626516A (zh) 2020-09-04
CN111626516B CN111626516B (zh) 2023-04-28

Family

ID=72272286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010480520.2A Active CN111626516B (zh) 2020-05-30 2020-05-30 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法

Country Status (1)

Country Link
CN (1) CN111626516B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113706240A (zh) * 2021-08-18 2021-11-26 上海明略人工智能(集团)有限公司 订单排序的方法和装置、电子设备和存储介质
CN114781746A (zh) * 2022-05-09 2022-07-22 重庆大学 一种基于多层agv停车库多取车任务的优化方法
CN117852988B (zh) * 2024-03-08 2024-05-14 天津万事达物流装备有限公司 一种智能仓储系统中子母车与提升机的协同控制方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541848A (en) * 1994-12-15 1996-07-30 Atlantic Richfield Company Genetic method of scheduling the delivery of non-uniform inventory
CN103640829A (zh) * 2013-12-30 2014-03-19 厦门烟草工业有限责任公司 穿梭车出库排序系统以及烟包出库方法
CN103955818A (zh) * 2014-05-27 2014-07-30 山东大学 多层穿梭车自动仓储系统的任务调度方法
WO2016165392A1 (zh) * 2015-04-17 2016-10-20 华南理工大学 一种基于遗传算法的云计算资源调度方法
CN108805403A (zh) * 2018-05-02 2018-11-13 上海大学 一种基于改进遗传算法的单件车间调度方法
CN109677830A (zh) * 2019-02-28 2019-04-26 陕西科技大学 一种四向穿梭车式密集仓储系统资源配置优化方法
CN109784566A (zh) * 2019-01-22 2019-05-21 山东大学 一种订单排序优化方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541848A (en) * 1994-12-15 1996-07-30 Atlantic Richfield Company Genetic method of scheduling the delivery of non-uniform inventory
CN103640829A (zh) * 2013-12-30 2014-03-19 厦门烟草工业有限责任公司 穿梭车出库排序系统以及烟包出库方法
CN103955818A (zh) * 2014-05-27 2014-07-30 山东大学 多层穿梭车自动仓储系统的任务调度方法
WO2016165392A1 (zh) * 2015-04-17 2016-10-20 华南理工大学 一种基于遗传算法的云计算资源调度方法
CN108805403A (zh) * 2018-05-02 2018-11-13 上海大学 一种基于改进遗传算法的单件车间调度方法
CN109784566A (zh) * 2019-01-22 2019-05-21 山东大学 一种订单排序优化方法及装置
CN109677830A (zh) * 2019-02-28 2019-04-26 陕西科技大学 一种四向穿梭车式密集仓储系统资源配置优化方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113706240A (zh) * 2021-08-18 2021-11-26 上海明略人工智能(集团)有限公司 订单排序的方法和装置、电子设备和存储介质
CN114781746A (zh) * 2022-05-09 2022-07-22 重庆大学 一种基于多层agv停车库多取车任务的优化方法
CN114781746B (zh) * 2022-05-09 2024-04-19 重庆大学 一种基于多层agv停车库多取车任务的优化方法
CN117852988B (zh) * 2024-03-08 2024-05-14 天津万事达物流装备有限公司 一种智能仓储系统中子母车与提升机的协同控制方法

Also Published As

Publication number Publication date
CN111626516B (zh) 2023-04-28

Similar Documents

Publication Publication Date Title
CN107480922B (zh) 两端式同轨双车运行模式下货位分配调度模型建立方法
CN110909930B (zh) 一种面向冷库的移动式货架仓储系统货位分配方法
Ene et al. Storage location assignment and order picking optimization in the automotive industry
CN107808215B (zh) 一种应用于Flying-V型非传统布局仓库的货位分配优化方法
CN108550007B (zh) 一种制药企业自动化立体仓库的货位优化方法及系统
CN110084545B (zh) 基于混合整数规划模型的多巷道自动化立体仓库的集成调度方法
CN110991754B (zh) 一种基于变邻域nsga-ⅱ算法的多目标货位优化方法
CN110084512B (zh) 一种面向智能仓储系统的多机器人任务分配方法
CN110807559B (zh) 一种订单分批和拣货路径联合优化方法
CN114417696B (zh) 一种基于遗传算法的自动化立体仓库货位分配优化方法
CN109677830B (zh) 一种四向穿梭车式密集仓储系统资源配置优化方法
CN113222293B (zh) 一种智能立体仓库优化调度方法
CN109583660B (zh) 一种动态拣货策略的实现方法
CN111626516B (zh) 考虑倒货策略的双深位四向穿梭车系统订单排序优化方法
CN113570025B (zh) 一种基于离散粒子群算法的电商仓储中心货位分配方法
CN105858043A (zh) 一种升降机与穿梭车结合的仓储系统优化调度方法
CN113627712A (zh) 一种仓储系统穿梭车作业顺序优化方法
CN113044458A (zh) 一种物流机器人动态任务分配方法及系统
CN115481897A (zh) 一种agv无人仓库设备优化配置方法
CN115303689A (zh) 一种多巷道立体仓库货位分配优化方法
CN114742380A (zh) 一种面向智慧园区的双层资源配置优化方法
CN112989696A (zh) 一种基于移动机器人的自动拣选系统货位优化方法及系统
CN116342039A (zh) 一种立体仓库的货物分配和拣选的优化方法
CN115409448A (zh) 仓储调度决策方法、装置、终端设备以及存储介质
CN116596440A (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