CN113762687A - 一种仓库内的人员排班调度方法和装置 - Google Patents
一种仓库内的人员排班调度方法和装置 Download PDFInfo
- Publication number
- CN113762687A CN113762687A CN202110004519.7A CN202110004519A CN113762687A CN 113762687 A CN113762687 A CN 113762687A CN 202110004519 A CN202110004519 A CN 202110004519A CN 113762687 A CN113762687 A CN 113762687A
- Authority
- CN
- China
- Prior art keywords
- sequence
- personnel
- scheduling
- personnel scheduling
- neural network
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000013528 artificial neural network Methods 0.000 claims abstract description 134
- 230000002787 reinforcement Effects 0.000 claims abstract description 111
- 238000004088 simulation Methods 0.000 claims abstract description 111
- 238000011156 evaluation Methods 0.000 claims abstract description 98
- 230000006870 function Effects 0.000 claims abstract description 64
- 238000004364 calculation method Methods 0.000 claims abstract description 47
- 238000012549 training Methods 0.000 claims description 78
- 238000004422 calculation algorithm Methods 0.000 claims description 67
- 230000009471 action Effects 0.000 claims description 52
- 238000004519 manufacturing process Methods 0.000 claims description 30
- 238000005457 optimization Methods 0.000 claims description 24
- 238000003860 storage Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010606 normalization Methods 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 230000032683 aging Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 206010020675 Hypermetropia Diseases 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 201000006318 hyperopia Diseases 0.000 description 1
- 230000004305 hyperopia Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Health & Medical Sciences (AREA)
- Entrepreneurship & Innovation (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- General Factory Administration (AREA)
Abstract
本发明公开了一种仓库内的人员排班调度方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取初始的人员排班序列;其中,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量;基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列;根据所述最优的人员排班序列,对仓库内的人员排班进行调度。该实施方式能够解决不能满足仓储排班任务的实时性要求的技术问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种仓库内的人员排班调度方法和装置。
背景技术
随着现代社会人力成本和物流成本的不断提升,针对于仓储业务来说,仓内作业效率难以准确评估,导致按计划生产时的成本难以管控,时效难以保证,只能通过投入大量的人力来解决,但是这会导致人力成本进一步提升。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
在没有仿真系统的支持下,现场人员排班管理完全依赖仓库管理人员经验,以传统线性规划的方式,难以获得最优解。在有仿真系统的支持下,可以依据仿真结果中的报表来调整排班,但这种方式比较繁琐,需要很长的时间来进行仿真计算。还有结合仿真系统和启发式算法求解排班策略的方式,这种方式虽然能求得较合理的结果,但仍然存在单次求解时间过长的缺陷,不能满足仓储排班任务的实时性要求。
发明内容
有鉴于此,本发明实施例提供一种仓库内的人员排班调度方法和装置,以解决不能满足仓储排班任务的实时性要求的技术问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种仓库内的人员排班调度方法,包括:
获取初始的人员排班序列;其中,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量;
基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列;
根据所述最优的人员排班序列,对仓库内的人员排班进行调度。
可选地,基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列,包括:
步骤1、将所述初始的人员排班序列拆分成若干段人员排班状态序列;
步骤2、基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段;其中,所述序列片段包括当前时刻的人员排班状态序列、动作值、评价值和下一时刻的人员排班状态序列;
步骤3、根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列;
步骤4:针对所述优化后的人员排班序列,重复执行步骤1至步骤3,直到得到训练结束,得到训练后的深度强化学习神经网络并输出最优的人员排班序列。
可选地,基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段,包括:
对于当前时刻的人员排班状态序列,基于贪心算法获取动作值,将当前时刻的人员数量加上所述动作值,以更新所述当前时刻的人员排班状态序列并得到下一时刻的人员排班状态序列;
对更新后的所述当前时刻的人员排班状态序列进行仿真计算,得到总任务量和平均生产效率;
基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值。
可选地,基于贪心算法获取动作值,包括:
基于贪心算法获取最大期望值对应的动作值或者随机获取动作值,同时使得当前时刻的人员数量加上所述动作值后的总和大于零。
可选地,基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值,包括:
通过以e为底的指数函数对所述初始的当前时刻的人员排班状态序列对应的峰值人数、谷值人数、总任务量和平均生产效率进行归一化处理,并对归一化处理结果进行加权求和,从而得到初始的人员排班序列的评价值。
可选地,根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列,包括:
对于每段人员排班状态序列的序列片段,根据评价值、折扣率、学习率、当前时刻的人员排班状态序列对应的最大期望值和下一时刻的人员排班状态序列对应的最大期望值,分别计算每段人员排班状态序列对应的损失值;
将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习神经网络的参数;
采用动态规划方法筛选出每段人员排班状态序列对应的损失值总和最大的人员排班序列,将其作为优化后的人员排班序列,并输出所述优化后的人员排班序列。
可选地,所述深度强化学习神经网络包括深度强化学习评估神经网络和深度强化学习目标神经网络;
将每段人员排班状态序列对应的损失值带入优化器,以深度强化学习神经网络的参数,包括:
每隔第一训练步数,将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习评估神经网络的参数;
每隔第二训练步数,将深度强化学习目标神经网络的参数按照所述深度强化学习评估神经网络的参数进行更新;
其中,所述第二训练步数大于等于所述第一训练步数。
可选地,获取初始的人员排班序列,包括:
初始化人员排班序列;
基于启发式算法、仿真计算和仿真评价函数,对初始化的人员排班序列进行优化,输出人员排班序列,并将输出的人员排班序列作为初始的人员排班序列。
另外,根据本发明实施例的另一个方面,提供了一种仓库内的人员排班调度装置,包括:
获取模块,用于获取初始的人员排班序列;其中,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量;
优化模块,用于基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列;
调度模块,用于根据所述最优的人员排班序列,对仓库内的人员排班进行调度。
可选地,所述优化模块还用于:
步骤1、将所述初始的人员排班序列拆分成若干段人员排班状态序列;
步骤2、基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段;其中,所述序列片段包括当前时刻的人员排班状态序列、动作值、评价值和下一时刻的人员排班状态序列;
步骤3、根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列;
步骤4:针对所述优化后的人员排班序列,重复执行步骤1至步骤3,直到得到训练结束,得到训练后的深度强化学习神经网络并输出最优的人员排班序列。
可选地,所述优化模块还用于:
对于当前时刻的人员排班状态序列,基于贪心算法获取动作值,将当前时刻的人员数量加上所述动作值,以更新所述当前时刻的人员排班状态序列并得到下一时刻的人员排班状态序列;
对更新后的所述当前时刻的人员排班状态序列进行仿真计算,得到总任务量和平均生产效率;
基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值。
可选地,所述优化模块还用于:
基于贪心算法获取最大期望值对应的动作值或者随机获取动作值,同时使得当前时刻的人员数量加上所述动作值后的总和大于零。
可选地,所述优化模块还用于:
通过以e为底的指数函数对所述初始的当前时刻的人员排班状态序列对应的峰值人数、谷值人数、总任务量和平均生产效率进行归一化处理,并对归一化处理结果进行加权求和,从而得到初始的人员排班序列的评价值。
可选地,所述优化模块还用于:
对于每段人员排班状态序列的序列片段,根据评价值、折扣率、学习率、当前时刻的人员排班状态序列对应的最大期望值和下一时刻的人员排班状态序列对应的最大期望值,分别计算每段人员排班状态序列对应的损失值;
将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习神经网络的参数;
采用动态规划方法筛选出每段人员排班状态序列对应的损失值总和最大的人员排班序列,将其作为优化后的人员排班序列,并输出所述优化后的人员排班序列。
可选地,所述深度强化学习神经网络包括深度强化学习评估神经网络和深度强化学习目标神经网络;
所述优化模块还用于:
每隔第一训练步数,将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习评估神经网络的参数;
每隔第二训练步数,将深度强化学习目标神经网络的参数按照所述深度强化学习评估神经网络的参数进行更新;
其中,所述第二训练步数大于等于所述第一训练步数。
可选地,所述获取模块还用于:
初始化人员排班序列;
基于启发式算法、仿真计算和仿真评价函数,对初始化的人员排班序列进行优化,输出人员排班序列,并将输出的人员排班序列作为初始的人员排班序列。
根据本发明实施例的另一个方面,还提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,所述一个或多个处理器实现上述任一实施例所述的方法。
根据本发明实施例的另一个方面,还提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所述的方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用基于深度强化学习神经网络、仿真计算和仿真评价函数,对初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列的技术手段,所以克服了现有技术中不能满足仓储排班任务的实时性要求的技术问题。本发明实施例基于深度强化学习神经网络、仿真计算和仿真评价函数对人员排班序列进行优化,离线训练深度强化学习神经网络,使得当业务方需求排班序列时能立即给出最优的人员排班序列;同时,随着人员排班序列的输入样本量增加,神经网络的参数不断优化,算法的鲁棒性也逐步提升,对于多个不同的初始人员排班序列,算法都能较快收敛至最优解,进一步提升了离线训练的算法收敛速率。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的仓库内的人员排班调度方法的主要流程的示意图;
图2是根据本发明一个可参考实施例的仓库内的人员排班调度方法的主要流程的示意图;
图3是根据本发明另一个可参考实施例的仓库内的人员排班调度方法的主要流程的示意图;
图4是根据本发明实施例的仓库内的人员排班调度装置的主要模块的示意图;
图5是本发明实施例可以应用于其中的示例性系统架构图;
图6是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
虽然仓库作业模型比较复杂,但它实质上是一种组合优化问题。具体而言,是在一定约束条件下的,排班-成本最小化的多目标优化问题。本发明实施例引入强化学习方法,预先将初始的人员排班序列输入强化学习算法中,进行多轮次的离线预训练并保存结果,在业务方需求时即可实时获取最优的人员排班序列,这样既能通过神经网络的方式表示出组合优化中的关联关系,又能比启发式求解更快地获取优化结果,满足时效要求。此外,若每次完成训练后都存储神经网络参数,且下次训练在此基础上进行,则经过多组不同的初始的人员排班序列的迭代训练后,该算法将会更具鲁棒性,对不同情况下输入的初始的人员排班序列,该算法都能较快收敛,给出最优的人员排班序列。
强化学习方法通过让智能体在环境中探索,记录下一系列行为对应的期望值,并在多轮训练中逐步使智能体偏于进行获得高期望值的行为,以最终收敛到最优解上。
图1是根据本发明实施例的仓库内的人员排班调度方法的主要流程的示意图。作为本发明的一个实施例,如图1所示,所述仓库内的人员排班调度方法可以包括:
步骤101,获取初始的人员排班序列。
首先,获取初始的人员排班序列seq,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量,也就是说,所述人员排班序列是按照时间排序的具有多个元素的序列数组。比如:具有24个元素人员排班序列[20,30,10....,80],即0点的人员排班为20人,1点的人员排班为30人,2点的人员排班为10人,…,24点的人员排班为80人;又比如,具有4个元素人员排班序列[20,50,20,10],即0点-6点的人员排班为20人,6点-12点的人员排班为50人,12点-18点的人员排班为20人,18点-24点的人员排班为10人。
在本发明实施例中,可以以启发式算法求得的解作为初始的人员排班序列。可选地,步骤101可以包括:初始化人员排班序列;基于启发式算法、仿真计算和仿真评价函数,对初始化的人员排班序列进行优化,输出人员排班序列,并将输出的人员排班序列作为初始的人员排班序列。在该实施例中,首选初始化人员排班序列,然后基于启发式算法、仿真计算和仿真评价函数,对初始化的人员排班序列进行优化,输出优化后的人员排班序列,并将基于启发式算法优化后的人员排班序列作为强化学习方法的初始的人员排班序列。具体地,步骤101可以包括以下步骤:
步骤1:基于仿真计算,对初始化的人员排班序列进行求解,得到所述初始化的人员排班序列对应的总任务量和平均生产效率;
步骤2:基于仿真评价函数,对所述初始化的人员排班序列对应的峰值人数、谷值人数、总任务量和平均生产效率进行求解,得到所述初始化的人员排班序列的评价值;
步骤3:基于启发式算法对所述初始化的人员排班序列进行优化,得到优化后的人员排班序列;
步骤4:针对所述优化后的人员排班序列,重复执行步骤1至步骤3,直到得到评价值最高的人员排班序列,输出所述评价值最高的人员排班序列。
步骤5、将评价值最高的人员排班序列作为强化学习方法的初始的人员排班序列,也就是步骤101获取的初始的人员排班序列。
可选地,步骤2可以包括:通过以e为底的指数函数对所述初始化的人员排班序列对应的峰值人数、谷值人数、总任务量和平均生产效率进行归一化处理,并对归一化处理结果进行加权求和,从而得到初始化的人员排班序列的评价值。
为了能够准确地计算人员排班序列的评价值,需要建立评价函数以对输入的人员排班序列予以打分,当仿真评价函数f(x)取得最大值时,排班方案最优。
对于人员排班这一业务场景,仿真评价函数具体的优化指标含有以下几点:
1)该序列区间内峰值人数x1与谷值人数x2的差值Δx=(x1-x2)。考虑到该序列区间内时段的连续性,峰值人数与谷值人数标志着该序列区间内人数波动的情况。实际生产中,应尽可能避免相邻近的几个时段内人员分配数目波动较大的情况,使其差值Δx较小,即该序列区间内每小时生产人数都较为均衡。
2)该序列区间内总任务量x3(比如总拣货量)。实际生产中应该使总任务量最大。
3)该序列区间内平均生产效率x4。实际生产中应该使平均生产效率最高。
4)该序列区间内是否有某时段人数≤0,若有则c=0,否则c=1。
在本发明的实施例中,仓库内的人员可以执行任意一种任务,比如拣货任务、复核任务或者入库任务等,本发明实施例对此不做限制。
考虑到总任务量x3与平均生产效率x4难以用解析式表达,因此可以通过仿真平台对人员排班序列进行多次仿真实验,并取多次结果的平均值作为该人员排班序列的最终值。
针对上述优化指标进行量纲统一,若将优化指标映射为业务指标,则映射关系可表示为y=kx+b,其中k1,k2,k3为Δx:x3:x4化简后的斜率,b为其偏移量。例如,若该时段区间内,峰值与谷值人数差Δx每减少1,使平均生产效率提高1%,则k1/k3=100。
进一步通过指数函数做归一化处理,并根据业务需求以w为权重加权,可得仿真评价函数公式:
因为第一项的优化指标为求最小值,因此x和f(x)负相关。
在本发明实施例中,不妨将其视为黑盒,输入一定时段内的人员排班序列,输出该人员排班序列对应的评价值。
需要注意的是,此时得到的初始解(也就是初始的人员排班序列)是为了提高算法的收敛效率,也可以不依赖于特定的解进行训练,初始解还可以依赖贪婪算法或者全局搜索算法得到。
步骤102,基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列。
获取了初始的人员排班序列之后,基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,在优化人员排班序列的过程中,也同时对深度强化学习神经网络进行训练,更新网络参数,从而得到训练后的深度强化学习神经网络并输出最优的人员排班序列。可选地,本发明实施例采用的深度强化学习神经网络为DQN(Deep Q Network)神经网络,由于DQN算法是Q值与神经网络相结合的算法,而神经网络能够进行状态的特征提取,因此该算法能够解决状态空间较大的问题。
强化学习方法主要分为以值为基础单步更新的算法和以动作概率为基础回合制更新的算法,前者更新较快,但只能处理离散值的动作;后者更新较慢,但是可以处理连续值的动作。考虑到本发明实施例所针对的业务场景具备如下特点:某一时刻的最优人员排班情况与临近时刻的人员排班情况相关;每个时段的人数是一定范围内的离散整数值,而非连续值;每日人员排班的组合、变化情况繁多,即状态空间较大。因此,本发明实施例采用基于离散动作值的DQN算法进行求解。
可选地,步骤102可以包括:
步骤1、将所述初始的人员排班序列拆分成若干段人员排班状态序列;
步骤2、基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段;其中,所述序列片段包括当前时刻的人员排班状态序列、动作值、评价值和下一时刻的人员排班状态序列;
步骤3、根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列;
步骤4:针对所述优化后的人员排班序列,重复执行步骤1至步骤3,直到得到训练结束,得到训练后的深度强化学习神经网络并输出最优的人员排班序列。
可选地,基于贪心算法获取动作值,包括:基于贪心算法获取最大期望值对应的动作值或者随机获取动作值,同时使得当前时刻的人员数量加上所述动作值后的总和大于零。本发明实施例将人员浮动的变化值(即动作值a)作为每次训练的动作空间,采用贪心策略(epsilon-greedy)以保证算法不会陷入局部最优解,即每次选择动作时都以一定概率进行随机选择,而非完全的贪婪选择,并且随着算法迭代次数的增加,逐步增大贪婪的程度以加速算法收敛。同时,在训练时要考虑到约束条件——当前时刻的人员数量加上所述动作值后的总和大于零,即在训练过程中各个时段的人数应该保持始终为非负整数。
可选地,基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段,包括:对于当前时刻的人员排班状态序列,基于贪心算法获取动作值,将当前时刻的人员数量加上所述动作值,以更新所述当前时刻的人员排班状态序列并得到下一时刻的人员排班状态序列;对更新后的所述当前时刻的人员排班状态序列进行仿真计算,得到总任务量和平均生产效率;基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值。
在本发明的实施例中,对训练中某一时刻,首先需要根据上一轮迭代得到的人员排班序列,选取与该时刻相邻两时段内的人员数目,组成输入仿真系统的人员排班状态序列,如seq=[10,5,30,40,20]),以获得评价值。
设初始的人员排班序列:seq=[n1,n2,…,n23,n24],ni∈Z+,ni代表第i个时刻的人员排班人数,在此基础上进行多轮预训练。
对每一轮训练,遍历从第3个时刻至第21个时刻的每个时刻ni(即不再对边界时刻的人员数目进行调整),可以将当前时刻及其前后两小时的人员排班组成人员排班状态序列:
si=[ni-2,ni-1,ni,ni+1,ni+2]
因此,可以将初始的人员排班序列拆分成20段人员排班状态序列。
设当前时刻ni人数变化的浮动值为动作a,a∈[-10,-1]∪[1,10],且a∈Z+,对当前状态,根据贪婪-探索策略(epsilon-greedy)选最大q值(即期望值)对应的最优动作值a_,或选择随机动作值a_(此时需要注意ni+a_>0的约束条件),那么当前时刻的人员排班状态序列更新为:
si′=[ni-2,ni-1,ni+a_,ni+1,ni+2]
由此可得到下一时刻的人员排班状态序列:
si+1=[ni-1,ni+a_,ni+1,ni+2,ni+3]
然后将更新后的当前时刻的人员排班状态序列si′传入仿真系统进行仿真计算,得到此人员排班状态序列的评价值reward,并将(si,a_,reward,si+1)存入经验库中。
接着,再对下一时刻的人员排班状态序列si+1重复上述过程,如此往复直到第21个时刻被遍历完成,称此过程为一轮训练。训练结束后保存神经网络参数,使下一次训练在此基础上进行。
可选地,基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值,包括:通过以e为底的指数函数对所述初始的当前时刻的人员排班状态序列对应的峰值人数、谷值人数、总任务量和平均生产效率进行归一化处理,并对归一化处理结果进行加权求和,从而得到初始的人员排班序列的评价值。本发明实施例通过指数函数做归一化处理,并根据业务需求以w为权重加权,可得仿真评价函数公式:
该过程与步骤101的仿真评价过程类似,不再赘述。
可选地,根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列,包括:对于每段人员排班状态序列的序列片段,根据评价值、折扣率、学习率、当前时刻的人员排班状态序列对应的最大期望值和下一时刻的人员排班状态序列对应的最大期望值,分别计算每段人员排班状态序列对应的损失值;将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习神经网络的参数;采用动态规划方法筛选出每段人员排班状态序列对应的损失值总和最大的人员排班序列,将其作为优化后的人员排班序列,并输出所述优化后的人员排班序列。
可选地,所述深度强化学习神经网络包括深度强化学习评估神经网络和深度强化学习目标神经网络。可选地,将每段人员排班状态序列对应的损失值带入优化器,以深度强化学习神经网络的参数,包括:每隔第一训练步数,将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习评估神经网络的参数;每隔第二训练步数,将深度强化学习目标神经网络的参数按照所述深度强化学习评估神经网络的参数进行更新;其中,所述第二训练步数大于等于所述第一训练步数。
在训练过程中,当训练步数大于一定数值后,每隔固定的步数更新一次q值网络参数,更新公式如下:
qtarget=reward+γ*maxQ(s′,a′)
qeval=maxQ(s,a)
loss=α*(qtarget-qeval)
其中,γ为折扣率,γ越大,未来状态对于当前q值的影响越大,即算法越具有“远视性”,反之γ越小则算法越偏向于使本此迭代的结果最优。α为学习率,决定loss要被学习的程度。最后,将误差loss放入优化器进行优化即可更新神经网络参数。
在人员排班序列的训练迭代过程中,前后两次状态之间的关联度是较大的,而DQN算法所拥有的两大特点恰好能解决经验相关性较大的问题:
DQN算法属于off-policy方法,拥有一个经验库,每次训练时都向其中存储一条序列片段(si,a_,reward,si+1),其中当前时刻的人员排班状态序列si与下一时刻的人员排班状态序列si+1长度都为5,而最优动作值a_以及所得评价值reward长度为1,因此经验库的大小为N*12,N为序列片段的最大存储条数。当训练到一定程度开始更新网络中参数时,便随机从经验库中选取batch_size个序列片段,利用这些序列片段进行q值的计算与网络参数的更新,由于随机抽取历史序列片段,相邻序列片段的相关性也就不存在了。
②DQN算法采用两套结构相同、参数相同但更新频率不同的神经网络,分别称为target网络(深度强化学习目标神经网络)与eval网络(深度强化学习评估神经网络),对应着更新公式中的q_target与q_eval两个变量。q_eval的神经网络具备最新的参数,而q_target的神经网络使用的参数则是几轮训练之前的,只有在特定的训练步数时候才会将q_target的网络参数按照q_eval的网络参数进行更新。
作为本发明的另一个实施例,以下给出具体业务场景的DQN算法核心伪代码:
初始化总训练次数steps=0,定义训练轮次M;
初始化经验库矩阵,大小为N*12。
若首次进行训练,则还需进行下列初始化工作,否则沿用历史参数:
初始化批训练大小batch_size,epsilon初值、最大值以及单步增长率;
初始化q_target神经网络与q_eval神经网络、学习率alpha、折扣率gamma、q_target网络更新频率replace_target_iter等等,
根据启发式算法所得结果,初始化人员排班序列seq
For episode=1,M do:
For t=3,21do:
从seq中选取当前时刻的人员排班状态序列
st=[nt-2,nt-1,nt,nt+1,nt+2]
生成随机数rand
if rand>epsilon:
从[-10,-1]∪[1,10]随机挑选动作值a_
while nt+a_≤0:
a_+=1
else:
a_=argmax(qeval(st))
将st′=[nt-2,nt-1,nt+a_,nt+1,nt+2]输入仿真系统,得reward计算得到下一个状态值st+1=[nt-1,nt+a_,nt+1,nt+2,nt+3]将序列片段(st,a_,reward,st+1)存入经验库中
steps+=1
if steps>1000:
if steps%replace_target_iter==0:
将q_target的网络参数按照q_eval的网络参数进行替换
从经验库中随机取batch_size个序列片段,按上述DQN算法更新公式计算loss,放入优化器进行eval神经网络的参数更新
记录误差、更新次数等
if epsilon<epsilon_max:
增大epsilon的值,即增大贪婪程度
保存优化后的完整人员排班序列以及神经网络参数,算法结束。
完成离线训练后,就可以得到每次训练的每段人员排班状态序列,然后采用动态规划方法筛选出每段人员排班状态序列对应的损失值总和最大的人员排班序列,将其作为优化后的人员排班序列,并输出所述优化后的人员排班序列。
步骤103,根据所述最优的人员排班序列,对仓库内的人员排班进行调度。
根据步骤102输出的最优人员排班序列,对仓库内的人员排班进行调度,使得一天24小时的人员排班按照人员排班序列进行优化。
需要指出的是,由于在步骤102中通过离线方式训练了深度强化学习神经网络,因此在业务方需求时,向训练后的深度强化学习神经网络输入总任务量,即可实时获取最优的人员排班序列,这样既能通过神经网络的方式表示出组合优化中的关联关系,又能比启发式求解更快地获取优化结果,满足时效要求。
训练得到深度强化学习神经网络,可以直接通过神经网络输出最优的人员排班序列,既不再需要仿真计算,也不需要启发式求解,可以显著提高求解速度,满足时效要求。
根据上面所述的各种实施例,可以看出本发明实施例通过基于深度强化学习神经网络、仿真计算和仿真评价函数,对初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列的技术手段,解决了现有技术中不能满足仓储排班任务的实时性要求的技术问题。本发明实施例基于深度强化学习神经网络、仿真计算和仿真评价函数对人员排班序列进行优化,离线训练深度强化学习神经网络,使得当业务方需求排班序列时能立即给出最优的人员排班序列;同时,随着人员排班序列的输入样本量增加,神经网络的参数不断优化,算法的鲁棒性也逐步提升,对于多个不同的初始人员排班序列,算法都能较快收敛至最优解,进一步提升了离线训练的算法收敛速率。
将某时刻与其相邻时刻的人员排班状态序列作为状态,将人员数目变化值作为动作,并结合仿真计算和仿真评价函数。
图2是根据本发明一个可参考实施例的仓库内的人员排班调度方法的主要流程的示意图。作为本发明的又一个实施例,如图2所示,所述仓库内的人员排班调度方法可以包括:
步骤201,初始化经验库、贪婪-探索程度epsilon_max、批处理大小batch_size和总训练轮次M。
步骤202,初始化q_eval、q_target神经网络及相应参数。
步骤203,将启发式算法的输出结果作为初始的人员排班序列,将初始的人员排班序列拆分成若干段人员排班状态序列,起始项i=3。
步骤204,判断训练轮次epsilon是否小于M;若否,则执行步骤205;若是,则执行步骤206。
步骤205,保存本次训练的各段人员排班状态序列和神经网络参数。
步骤206,判断i是否小于等于21;若否,则执行步骤212;若是,则执行步骤207。
步骤207,对于当前时刻的人员排班状态序列s[i],按贪婪-探索策略和q值,选取s[i]的动作值a_。
步骤208,将s[i]和a_输入仿真系统,通过仿真计算和仿真评价函数得到评价值reward,计算下一时刻的人员排班状态序列s[i+1],将序列片段(s[i],a_,reward,s[i+1])存入经验库中。
步骤209,达到一定训练步数后,从经验库中随机选取序列片段,进行q_eval网络的参数更新,在经过特定的训练步骤后,还需要进行q_target网络的参数更新。
步骤210,记录q_eval网络的参数和q_target网络的参数,适当增大算法的贪婪程度。
步骤211,i+=1
步骤212,epsilon+=1。
例如,对于某日的人员排班序列,首先对深度强化学习神经网络进行离线预训练过程:
根据启发式算法得到当日人员排班的初始序列,如:Seq=[10,15,5,……,60,30,20](共24元素,代表24个时段对应的排班人数),在此基础上假设进行2000轮次训练,则每轮训练都需要对seq中从第3个时段到第21个时段的人数进行调整。
假设在某轮训练中,对第5个小时的人员数目进行调整。首先得到人员排班状态序列s5=[20,15,30,45,10],其对应的时刻为第3个小时到第7个小时。按epsilon-greedy策略进行选择,先将当前状态s5输入q_eval网络中,得到该状态下的人员浮动的q值序列,选取最大q值对应的动作值,比如得到a=-5,则更新后的人员排班状态序列s5′=[20,15,25,45,10],将s5′传入仿真系统,得到评价值reward=2.4,而下一时刻人员排班状态序列为(针对第4-8个小时的人员排班状态序列)s6=[15,25,45,10,60]。然后将完整的(s5,-5,2.4,s6)序列片段存入经验库中,完成本次计算。
当训练到一定步数时,需要进行神经网络参数的更新时,首先检查当前步数是否需要替换q_target网络,若需要,则将q_eval网络参数同步至q_target网络中。q_eval网络参数的更新过程如下:
经验库中随机抽取32个片段,比如:
[(s7,9,-3.0,s8),(s22,10,7.5,s23),…,(s3,0,2.0,s4),(s15,-5,13.6,s16)]
以(s22,10,7.5,s23)这组数据为例,假设:
max(qtarget(s23))=26.5,γ=0.9,α=0.01,qeval=max(qeval(s22))
=15.4
则qtarget=7.5+0.9*26.5=31.35,loss=0.01*(31.35-15.4)≈0.156
对32个经验片段都依此计算,对得到的32组loss值带入优化器,优化q_eval网络参数。
以此类推,每轮训练都需要对当前序列的第3至第21个小时子序列进行计算,存入经验库,在一定训练步数后进行网络参数更新。当训练完2000轮次后,即可得到比原启发式算法得到的排班序列更优的结果,如:Seq′=[5,25,40,……,10,15,60]。记录该结果以等待调用,并保存神经网络参数,以使下一次训练输入不同的初始的人员排班序列时,算法能够更快收敛。
在需要该日人员排班序列时,直接调用预训练产生的结果并采用动态规划方法选出损失值总和最大的人员排班序列作为最优解。
由于通过离线方式训练了深度强化学习神经网络,因此在业务方需求时,向训练后的深度强化学习神经网络输入总任务量,即可实时获取最优的人员排班序列,这样既能通过神经网络的方式表示出组合优化中的关联关系,又能比启发式求解更快地获取优化结果,满足时效要求。
另外,在本发明一个可参考实施例中仓库内的人员排班调度方法的具体实施内容,在上面所述仓库内的人员排班调度方法中已经详细说明了,故在此重复内容不再说明。
图3是根据本发明另一个可参考实施例的仓库内的人员排班调度方法的主要流程的示意图。作为本发明的另一个实施例,如图3所示,所述仓库内的人员排班调度方法可以包括:
生产系统产生数据,比如初始的人员排班序列、订单数据、仓布局数据和拣货人员数据。其中,订单数据中包括订单号outboundNo、物品号skuNo、储位号cellNo和拣货数量pickQty;仓布局数据包括仓货架摆放位置、规格、间距和巷道宽度等数据;拣货人员数据包括拣货员扫描动作时间概率分布、取货动作时间概率分布和移动速度概率分布。然后将产生的数据都存储到数据库中。
仿真模块从数据库中获取数据,经过清洗、统计和拟合之后,将数据输入到仿真模块中。
启发式算法模型调用仿真模块,仿真模型进行仿真计算,启发式算法求解得到初始的人员排班序列。
将初始的人员排班序列输入到强化学习算法模型中,同时调用仿真模块计算评价值,并不断训练神经网络,最终得到训练好的神经网络和最优的员排班序列。
另外,在本发明另一个可参考实施例中仓库内的人员排班调度方法的具体实施内容,在上面所述仓库内的人员排班调度方法中已经详细说明了,故在此重复内容不再说明。
图4是根据本发明实施例的仓库内的人员排班调度装置的主要模块的示意图,如图4所示,所述仓库内的人员排班调度装置400包括获取模块401、优化模块402和调度模块403;获取模块401用于获取初始的人员排班序列;其中,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量;优化模块402用于基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列;调度模块403用于根据所述最优的人员排班序列,对仓库内的人员排班进行调度。
可选地,所述优化模块402还用于:
步骤1、将所述初始的人员排班序列拆分成若干段人员排班状态序列;
步骤2、基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段;其中,所述序列片段包括当前时刻的人员排班状态序列、动作值、评价值和下一时刻的人员排班状态序列;
步骤3、根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列;
步骤4:针对所述优化后的人员排班序列,重复执行步骤1至步骤3,直到得到训练结束,得到训练后的深度强化学习神经网络并输出最优的人员排班序列。
可选地,所述优化模块402还用于:
对于当前时刻的人员排班状态序列,基于贪心算法获取动作值,将当前时刻的人员数量加上所述动作值,以更新所述当前时刻的人员排班状态序列并得到下一时刻的人员排班状态序列;
对更新后的所述当前时刻的人员排班状态序列进行仿真计算,得到总任务量和平均生产效率;
基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值。
可选地,所述优化模块402还用于:
基于贪心算法获取最大期望值对应的动作值或者随机获取动作值,同时使得当前时刻的人员数量加上所述动作值后的总和大于零。
可选地,所述优化模块402还用于:
通过以e为底的指数函数对所述初始的当前时刻的人员排班状态序列对应的峰值人数、谷值人数、总任务量和平均生产效率进行归一化处理,并对归一化处理结果进行加权求和,从而得到初始的人员排班序列的评价值。
可选地,所述优化模块402还用于:
对于每段人员排班状态序列的序列片段,根据评价值、折扣率、学习率、当前时刻的人员排班状态序列对应的最大期望值和下一时刻的人员排班状态序列对应的最大期望值,分别计算每段人员排班状态序列对应的损失值;
将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习神经网络的参数;
采用动态规划方法筛选出每段人员排班状态序列对应的损失值总和最大的人员排班序列,将其作为优化后的人员排班序列,并输出所述优化后的人员排班序列。
可选地,所述深度强化学习神经网络包括深度强化学习评估神经网络和深度强化学习目标神经网络;
所述优化模块402还用于:
每隔第一训练步数,将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习评估神经网络的参数;
每隔第二训练步数,将深度强化学习目标神经网络的参数按照所述深度强化学习评估神经网络的参数进行更新;
其中,所述第二训练步数大于等于所述第一训练步数。
可选地,所述获取模块401还用于:
初始化人员排班序列;
基于启发式算法、仿真计算和仿真评价函数,对初始化的人员排班序列进行优化,输出人员排班序列,并将输出的人员排班序列作为初始的人员排班序列。
根据上面所述的各种实施例,可以看出本发明实施例通过基于深度强化学习神经网络、仿真计算和仿真评价函数,对初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列的技术手段,解决了现有技术中不能满足仓储排班任务的实时性要求的技术问题。本发明实施例基于深度强化学习神经网络、仿真计算和仿真评价函数对人员排班序列进行优化,离线训练深度强化学习神经网络,使得当业务方需求排班序列时能立即给出最优的人员排班序列;同时,随着人员排班序列的输入样本量增加,神经网络的参数不断优化,算法的鲁棒性也逐步提升,对于多个不同的初始人员排班序列,算法都能较快收敛至最优解,进一步提升了离线训练的算法收敛速率。
需要说明的是,在本发明所述仓库内的人员排班调度装置的具体实施内容,在上面所述仓库内的人员排班调度方法中已经详细说明了,故在此重复内容不再说明。
图5示出了可以应用本发明实施例的仓库内的人员排班调度方法或仓库内的人员排班调度装置的示例性系统架构500。
如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备501、502、503可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的物品信息查询请求等数据进行分析等处理,并将处理结果反馈给终端设备。
需要说明的是,本发明实施例所提供的仓库内的人员排班调度方法一般由服务器505执行,相应地,所述仓库内的人员排班调度装置一般设置在服务器505中。本发明实施例所提供的仓库内的人员排班调度方法也可以由终端设备501、502、503执行,相应地,所述仓库内的人员排班调度装置可以设置在终端设备501、502、503中。
应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图6,其示出了适于用来实现本发明实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、优化模块和调度模块,其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,该设备实现如下方法:获取初始的人员排班序列;其中,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量;基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列;根据所述最优的人员排班序列,对仓库内的人员排班进行调度。
根据本发明实施例的技术方案,因为采用基于深度强化学习神经网络、仿真计算和仿真评价函数,对初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列的技术手段,所以克服了现有技术中不能满足仓储排班任务的实时性要求的技术问题。本发明实施例基于深度强化学习神经网络、仿真计算和仿真评价函数对人员排班序列进行优化,离线训练深度强化学习神经网络,使得当业务方需求排班序列时能立即给出最优的人员排班序列;同时,随着人员排班序列的输入样本量增加,神经网络的参数不断优化,算法的鲁棒性也逐步提升,对于多个不同的初始人员排班序列,算法都能较快收敛至最优解,进一步提升了离线训练的算法收敛速率。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (11)
1.一种仓库内的人员排班调度方法,其特征在于,包括:
获取初始的人员排班序列;其中,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量;
基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列;
根据所述最优的人员排班序列,对仓库内的人员排班进行调度。
2.根据权利要求1所述的方法,其特征在于,基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列,包括:
步骤1、将所述初始的人员排班序列拆分成若干段人员排班状态序列;
步骤2、基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段;其中,所述序列片段包括当前时刻的人员排班状态序列、动作值、评价值和下一时刻的人员排班状态序列;
步骤3、根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列;
步骤4:针对所述优化后的人员排班序列,重复执行步骤1至步骤3,直到得到训练结束,得到训练后的深度强化学习神经网络并输出最优的人员排班序列。
3.根据权利要求2所述的方法,其特征在于,基于深度强化学习神经网络、仿真计算和仿真评价函数,得到各段人员排班状态序列的序列片段,包括:
对于当前时刻的人员排班状态序列,基于贪心算法获取动作值,将当前时刻的人员数量加上所述动作值,以更新所述当前时刻的人员排班状态序列并得到下一时刻的人员排班状态序列;
对更新后的所述当前时刻的人员排班状态序列进行仿真计算,得到总任务量和平均生产效率;
基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值。
4.根据权利要求3所述的方法,其特征在于,基于贪心算法获取动作值,包括:
基于贪心算法获取最大期望值对应的动作值或者随机获取动作值,同时使得当前时刻的人员数量加上所述动作值后的总和大于零。
5.根据权利要求3所述的方法,其特征在于,基于仿真评价函数,对更新后的所述当前时刻的人员排班状态序列、总任务量和平均生产效率进行求解,得到所述当前时刻的人员排班状态序列的评价值,包括:
通过以e为底的指数函数对所述初始的当前时刻的人员排班状态序列对应的峰值人数、谷值人数、总任务量和平均生产效率进行归一化处理,并对归一化处理结果进行加权求和,从而得到初始的人员排班序列的评价值。
6.根据权利要求2所述的方法,其特征在于,根据所述各段人员排班状态序列的序列片段训练深度强化学习神经网络,并输出优化后的人员排班序列,包括:
对于每段人员排班状态序列的序列片段,根据评价值、折扣率、学习率、当前时刻的人员排班状态序列对应的最大期望值和下一时刻的人员排班状态序列对应的最大期望值,分别计算每段人员排班状态序列对应的损失值;
将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习神经网络的参数;
采用动态规划方法筛选出每段人员排班状态序列对应的损失值总和最大的人员排班序列,将其作为优化后的人员排班序列,并输出所述优化后的人员排班序列。
7.根据权利要求6所述的方法,其特征在于,所述深度强化学习神经网络包括深度强化学习评估神经网络和深度强化学习目标神经网络;
将每段人员排班状态序列对应的损失值带入优化器,以深度强化学习神经网络的参数,包括:
每隔第一训练步数,将每段人员排班状态序列对应的损失值带入优化器,以优化深度强化学习评估神经网络的参数;
每隔第二训练步数,将深度强化学习目标神经网络的参数按照所述深度强化学习评估神经网络的参数进行更新;
其中,所述第二训练步数大于等于所述第一训练步数。
8.根据权利要求1所述的方法,其特征在于,获取初始的人员排班序列,包括:
初始化人员排班序列;
基于启发式算法、仿真计算和仿真评价函数,对初始化的人员排班序列进行优化,输出人员排班序列,并将输出的人员排班序列作为初始的人员排班序列。
9.一种仓库内的人员排班调度装置,其特征在于,包括:
获取模块,用于获取初始的人员排班序列;其中,所述人员排班序列中的各个元素分别表示各个时间节点对应的人员数量;
优化模块,用于基于深度强化学习神经网络、仿真计算和仿真评价函数,对所述初始的人员排班序列进行优化,得到训练后的深度强化学习神经网络并输出最优的人员排班序列;
调度模块,用于根据所述最优的人员排班序列,对仓库内的人员排班进行调度。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110004519.7A CN113762687B (zh) | 2021-01-04 | 2021-01-04 | 一种仓库内的人员排班调度方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110004519.7A CN113762687B (zh) | 2021-01-04 | 2021-01-04 | 一种仓库内的人员排班调度方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113762687A true CN113762687A (zh) | 2021-12-07 |
CN113762687B CN113762687B (zh) | 2024-03-01 |
Family
ID=78786320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110004519.7A Active CN113762687B (zh) | 2021-01-04 | 2021-01-04 | 一种仓库内的人员排班调度方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113762687B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115456523A (zh) * | 2022-09-06 | 2022-12-09 | 上海聚货通电子商务有限公司 | 一种电商仓库拣货通道的规划方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180089553A1 (en) * | 2016-09-27 | 2018-03-29 | Disney Enterprises, Inc. | Learning to schedule control fragments for physics-based character simulation and robots using deep q-learning |
CN110443412A (zh) * | 2019-07-18 | 2019-11-12 | 华中科技大学 | 动态优化加工过程中物流调度及路径规划的强化学习方法 |
CN111694656A (zh) * | 2020-04-22 | 2020-09-22 | 北京大学 | 基于多智能体深度强化学习的集群资源调度方法及系统 |
CN111815032A (zh) * | 2020-06-18 | 2020-10-23 | 浙江大华技术股份有限公司 | 自动导引车调度方法及其相关装置 |
CN112016811A (zh) * | 2020-08-04 | 2020-12-01 | 四叶草(苏州)智能科技有限公司 | 一种基于强化学习的agv智能调度系统及方法 |
CN112085520A (zh) * | 2020-08-13 | 2020-12-15 | 贵州优策网络科技有限公司 | 基于人工智能深度强化学习的航班舱位控制方法 |
CN112102932A (zh) * | 2020-08-06 | 2020-12-18 | 温州市人民医院 | 智能排班方法及排班系统 |
-
2021
- 2021-01-04 CN CN202110004519.7A patent/CN113762687B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180089553A1 (en) * | 2016-09-27 | 2018-03-29 | Disney Enterprises, Inc. | Learning to schedule control fragments for physics-based character simulation and robots using deep q-learning |
CN110443412A (zh) * | 2019-07-18 | 2019-11-12 | 华中科技大学 | 动态优化加工过程中物流调度及路径规划的强化学习方法 |
CN111694656A (zh) * | 2020-04-22 | 2020-09-22 | 北京大学 | 基于多智能体深度强化学习的集群资源调度方法及系统 |
CN111815032A (zh) * | 2020-06-18 | 2020-10-23 | 浙江大华技术股份有限公司 | 自动导引车调度方法及其相关装置 |
CN112016811A (zh) * | 2020-08-04 | 2020-12-01 | 四叶草(苏州)智能科技有限公司 | 一种基于强化学习的agv智能调度系统及方法 |
CN112102932A (zh) * | 2020-08-06 | 2020-12-18 | 温州市人民医院 | 智能排班方法及排班系统 |
CN112085520A (zh) * | 2020-08-13 | 2020-12-15 | 贵州优策网络科技有限公司 | 基于人工智能深度强化学习的航班舱位控制方法 |
Non-Patent Citations (3)
Title |
---|
CHATHURANGI SHYALIKA ET.AL: "Reinforcement Learning in Dynamic Task Scheduling: A Review", 《SN COMPUTER SCIENCE VOLUME》, pages 306 * |
何雨芬: "A公司仓库出库作业人员排班优化研究", 《万方学位论文数据库》 * |
梅强;: "航空公司地面员工排班研究", 科技视界, no. 04, pages 312 - 313 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115456523A (zh) * | 2022-09-06 | 2022-12-09 | 上海聚货通电子商务有限公司 | 一种电商仓库拣货通道的规划方法及系统 |
CN115456523B (zh) * | 2022-09-06 | 2023-06-16 | 上海聚货通电子商务有限公司 | 一种电商仓库拣货通道的规划方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113762687B (zh) | 2024-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299458A (zh) | 实体识别方法、装置、设备及存储介质 | |
CN110766142A (zh) | 模型生成方法和装置 | |
CN107330715B (zh) | 选择图片广告素材的方法和装置 | |
CN109544076B (zh) | 用于生成信息的方法和装置 | |
CN109961198B (zh) | 关联信息生成方法和装置 | |
WO2020026741A1 (ja) | 情報処理方法、情報処理装置及び情報処理プログラム | |
CN110070382B (zh) | 用于生成信息的方法和装置 | |
CN108288089A (zh) | 用于生成卷积神经网络的方法和装置 | |
CN112257868A (zh) | 构建和训练用于预测客流量的集成预测模型的方法及装置 | |
CN113743971A (zh) | 一种数据处理方法和装置 | |
CN113762687B (zh) | 一种仓库内的人员排班调度方法和装置 | |
CN112231299B (zh) | 一种特征库动态调整的方法和装置 | |
CN112015788A (zh) | 向目标用户展示目标对象序列的方法和装置 | |
CN110909908B (zh) | 一种用于物品拣选时长预测的方法和装置 | |
CN111008213A (zh) | 用于生成语言转换模型的方法和装置 | |
CN114049162A (zh) | 模型训练方法、需求量预测方法、装置、设备和存储介质 | |
CN111768218B (zh) | 用于处理用户交互信息的方法和装置 | |
CN113269600B (zh) | 一种信息发送的方法和装置 | |
CN112200366B (zh) | 负荷预测方法、装置、电子设备及可读存储介质 | |
CN113743640B (zh) | 一种仓库内的人员排班调度方法和装置 | |
CN112950240B (zh) | 一种分发方法和装置 | |
CN117113613A (zh) | 一种数据处理方法及装置 | |
CN110378717B (zh) | 用于输出信息的方法和装置 | |
CN113760497A (zh) | 一种调度任务配置方法和装置 | |
CN115550259B (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 |