CN116738239A - 模型训练方法、资源调度方法及装置、系统、设备及介质 - Google Patents
模型训练方法、资源调度方法及装置、系统、设备及介质 Download PDFInfo
- Publication number
- CN116738239A CN116738239A CN202311015019.9A CN202311015019A CN116738239A CN 116738239 A CN116738239 A CN 116738239A CN 202311015019 A CN202311015019 A CN 202311015019A CN 116738239 A CN116738239 A CN 116738239A
- Authority
- CN
- China
- Prior art keywords
- scheduling
- decision
- model
- resource
- information
- 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 133
- 238000012549 training Methods 0.000 title claims abstract description 116
- 230000006870 function Effects 0.000 claims description 98
- 238000009826 distribution Methods 0.000 claims description 80
- 238000011156 evaluation Methods 0.000 claims description 80
- 238000005457 optimization Methods 0.000 claims description 42
- 230000001105 regulatory effect Effects 0.000 claims description 40
- 238000004088 simulation Methods 0.000 claims description 39
- 238000000605 extraction Methods 0.000 claims description 30
- 230000008685 targeting Effects 0.000 claims description 27
- 230000008901 benefit Effects 0.000 claims description 26
- 238000003860 storage Methods 0.000 claims description 21
- 230000004913 activation Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 13
- 230000002457 bidirectional effect Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 43
- 230000004044 response Effects 0.000 abstract description 12
- 230000008569 process Effects 0.000 description 54
- 238000010586 diagram Methods 0.000 description 22
- 230000009471 action Effects 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 230000001419 dependent effect Effects 0.000 description 9
- 230000002787 reinforcement Effects 0.000 description 9
- 238000013439 planning Methods 0.000 description 8
- 230000003247 decreasing effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 238000012163 sequencing technique Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 125000001797 benzyl group Chemical group [H]C1=C([H])C([H])=C(C([H])=C1[H])C([H])([H])* 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000003064 k means clustering Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 102000037983 regulatory factors Human genes 0.000 description 2
- 108091008025 regulatory factors Proteins 0.000 description 2
- 238000013468 resource allocation Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003467 diminishing effect Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000013068 supply chain management Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- 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
-
- 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/067—Enterprise or organisation modelling
-
- 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/083—Shipping
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Educational Administration (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例提供了一种模型训练方法、资源调度方法及装置,所述模型训练方法包括:将第一调度资源数据输入预设的初始化模型,获得第一标签特征;将第一标签特征和所述第一调度资源数据,输入预设的第一调度决策模型,获得第一待选决策信息;第二调度决策子模型的参数规模小于所述第一调度决策模型;将第一标签特征和第一调度资源数据,输入第二调度决策模型,获得第二待选决策信息;根据第一待选决策信息、第二待选决策信息、第一权重值以及第二权重值,对与第二调度决策模型对应的目标函数进行计算,并对所述第二调度决策模型的参数进行优化。本申请实施例模型的鲁棒性更好、稳定性更强,系统结构更简单、计算响应更迅速。
Description
技术领域
本申请涉及物流领域,特别是涉及一种模型训练方法及装置、资源调度方法及装置、资源调度系统、电子设备及计算机可读存储介质。
背景技术
在物流场景中,仓储物流是核心环节之一,仓储物流涉及到货物的存储、运输、分拣、包装、装配等多个方面,而随着物流包裹越来越多,仓储物流的调度也越来越重要,为了提高仓库的利用率、降低仓储成本、提高服务水平和增强竞争力,对于物流包裹的调度,也开始使用大规模的资源调度方法,该大规模可能在同一时间段对大于预设数量阈值的资源调度数据进行批量调度。在仓储物流中,大规模资源调度是提高效率、降低成本、满足客户需求的关键因素。仓储物流中的大规模资源调度指的是根据市场变化和客户订单,合理地安排仓库的空间、设备、人员、车辆等资源,实现货物的快速流动和优化分配。
在先技术中,以计划调度和运筹优化技术调度的方式进行物流资源的调度,计划调度需要较高的人力成本和人员素质,而运筹优化技术的模型上线之后,由于优化技术的模型调度需要大量的计算资源和时间才能重新训练优化,应对不同物流调度需求时,稳定性较差,响应速度较慢。
发明内容
本申请示出了一种模型训练方法及装置、资源调度方法及装置、资源调度系统、电子设备及计算机可读存储介质,以提模型上线之后,能够更快学习到不同物流调度需求的规律,提高稳定性和鲁棒性。
第一方面,本申请实施例示出了一种模型训练方法,所述方法包括:
获取第一调度资源数据;
将所述第一调度资源数据输入预设的初始化模型,获得第一标签特征;
将所述第一标签特征和所述第一调度资源数据,输入预设的第一调度决策模型,获得第一待选决策信息;将所述第一标签特征和所述第一调度资源数据,输入第二调度决策模型,获得第二待选决策信息;所述第二调度决策子模型的参数规模小于所述第一调度决策模型;
根据所述第一待选决策信息、第二待选决策信息、与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果;
基于所述优化参考结果对所述第二调度决策模型的参数进行优化;所述第二调度决策模型用于根据在线待调度资源数据获得在线待选决策信息,所述在线待选决策信息用于输入预设的决策选择模型以获得第二目标调度策略。
在一个可选的实现方式中,所述获取虚拟物流对象的运单信息以及对虚拟物流对象的期望分拣结果,包括:
获取历史过程中的真实物流对象的运单信息以及对真实物流对象的实际分拣结果;
根据真实物流对象的运单信息获取虚拟物流对象的运单信息,以及,根据对真实物流对象的实际分拣结果获取对虚拟物流对象的期望分拣结果。
第二方面,本申请实施例示出了一种资源调度方法,所述方法包括:
获取在线待调度资源数据;
将所述待调度资源数据输入第二调度决策模型,获得在线待选决策信息;
将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略;
将所述第二目标调度策略发送至实际调度系统以进行资源的调度。
第三方面,本申请实施例示出了一种模型训练装置,所述装置包括:
第一资源获取模块,用于获取第一调度资源数据;
第一标签获取模块,用于将所述第一调度资源数据输入预设的初始化模型,获得第一标签特征;
第一待选决策信息获取模块,用于将所述第一标签特征和所述第一调度资源数据,输入预设的第一调度决策模型,获得第一待选决策信息;第二待选决策信息获取模块,用于将所述第一标签特征和所述第一调度资源数据,输入第二调度决策模型,获得第二待选决策信息;所述第二调度决策子模型的参数规模小于所述第一调度决策模型;
优化参考结果获取模块,用于根据所述第一待选决策信息、第二待选决策信息、与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果;
第一优化模块,用于基于所述优化参考结果对所述第二调度决策模型的参数进行优化;所述第二调度决策模型用于根据在线待调度资源数据获得在线待选决策信息,所述在线待选决策信息用于输入预设的决策选择模型以获得用于调度资源的第二目标调度策略。
第四方面,本申请实施例示出了一种资源调度装置,所述装置包括:
在线待调度数据获取模块,用于获取在线待调度资源数据;
在线待选决策信息获取模块,用于将所述待调度资源数据输入第二调度决策模型,获得在线待选决策信息;
实际调度策略获取模块,用于将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略;
实际调度模块,用于将所述第二目标调度策略发送至实际调度系统以进行资源的调度。
第五方面,本申请实施例示出了一种资源调度系统,所述资源调度系统包括决策模块、仿真调度系统、实际操作系统,所述决策模块中配置有计算机程序,所述计算机程序被所述决策模块执行时执行如前述的任一方面所示的方法。
第六方面,本申请实施例示出了一种电子设备,电子设备包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行如前述的任一方面所示的方法。
第七方面,本申请实施例示出了一种非临时性计算机可读存储介质,当存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如前述的任一方面所示的方法。
第八方面,本申请实施例示出了一种计算机程序产品,当计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备能够执行如前述的任一方面所示的方法。
与在先技术相比,本申请实施例包括以下优点:
本申请实施例中,设置了可以离线设置的第一调度决策模型、参数规模小于第一调度决策模型的第二调度决策模型,以及用于获得标签特征的初始化模型,第一调度决策模型可以离线训练。然后在在线使用过程中,首先,通过初始化模型对在线的第一调度资源数据进行处理,得到第一标签特征,供后续的第一调度决策模型和第二调度决策模型使用,提高训练的质量以及速度。其次,通过第一调度决策模型对第一标签特征和所述第一调度资源数据进行处理,得到第一待选决策信息,这些第一待选决策信息可以在训练第二调度决策模型时,对第二调度决策模型进行校准,由于第一调度决策模型参数规模更大,能够学习到更准的历史规律,其参与第二调度决策的训练,能提高第二调度决策模型的准确度。其次,在线训练过程中,第二调度决策模型以第一标签特征和所述第一调度资源数据作为输入进行学习,能够学习到初始化模型初步的计算结果,能够进一步提高训练速度,满足在线的快速学习的需求。其次,第二调度决策模型的参数规模比较小,在线训练能够更快速;再次,由于设置了与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,然后再结合第一待选决策信息、第二待选决策信息,构建目标函数并进行计算,如此,在线的第二调度决策模型的目标函数可以将几个模型关联起来,结合前述的训练速度更快的优点,使从而使训练得到的第二调度决策模型能够更快速的识别到在线实时数据的所处场景的不确定性模型的稳定性和鲁棒性更强。最后,由于拆分了多个模型,比如初始化模型、第一调度决策模型、第二调度决策模型、决策选择模型,这些模型配合使用,能够使每个模型结构相对简单,约束条件减少,计算更快,能够实现更快的响应速度。
附图说明
图1是本申请实施例的一种物流调度场景的架构示例图;
图2是本申请实施例的一种资源调度系统的结构框图;
图3是本申请实施例的另一种资源调度系统的结构框图;
图4是本申请实施例的一种仿真调度系统的架构示意图;
图5是本申请实施例的一种仓储环境下的货到人拣选场景的离散事件依赖关系图;
图6是本申请实施例的一种堆垛机出库任务场景的服务关系约束示意图;
图7是本申请实施例的一种第一资源调度模型训练示意图;
图8是本申请实施例的一种模型训练方法的步骤流程图;
图9是本申请实施例的一种第二资源调度模型训练示意图;
图10是本申请实施例的另一种资源调度系统的结构框图;
图11是本申请实施例的一种资源调度方法的步骤流程图;
图12是本申请实施例的一种次模函数集合示意图;
图13是本申请实施例的两资源集合分配关系示意图;
图14是本申请实施例的一种模型训练装置的结构框图;
图15是本申请实施例的一种资源调度装置的结构框图;
图16是本申请实施例的一种装置的结构框图。
具体实施方式
为使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。仓储物流是现代供应链管理的核心环节,仓储物流涉及到货物的储存、运输、分拣、包装、配送等多个方面。在仓储物流中,大规模资源调度是提高效率、降低成本、满足客户需求的关键因素。仓储物流中的大规模资源调度指的是根据市场变化和客户订单,合理地安排仓库的空间、设备、人员、车辆等资源,实现货物的快速流动和优化分配。大规模资源调度的重要性体现在如下几个方面:(1)提高仓库利用率:通过大规模资源调度,可以有效地利用仓库的空间,避免货物的堆积和浪费,提高仓库的存储能力和周转率;(2)降低仓储成本:通过大规模资源调度,可以减少仓库的闲置和过剩资源,降低设备的维护费用和人员的管理费用,节约仓储成本;(3)提高服务水平:通过大规模资源调度,可以缩短货物的出入库时间,提高货物的准确性和完整性,满足客户的交货期和质量要求,提高客户满意度和忠诚度。(4)增强竞争力:通过大规模资源调度,可以提升仓储物流的灵活性和响应速度,适应市场的变化和需求,增强企业的竞争力和市场占有率。在先的仓储物流的调度方法,以计划调度和运筹优化模型调度的方式为主,计划调度和运筹优化模型调度具有以下优点:(1)可以提高仓储物流的效率和效果,如降低库存成本、提高出入库速度、减少作业错误、提升客户满意度等;(2)可以提高仓储物流的可控性和可追溯性,如实现物品的全程跟踪、检测仓库的作业状态、分析仓储物流的数据和指标等;(3)可以提高仓储物流的安全性和环境友好性,如避免物品的损坏、丢失、过期等风险,减少作业员的劳动强度和伤害事故,降低能源消耗和废弃物排放等;(4)运筹优化技术可以提供符合要求的解决方案,这可以帮助仓储物流系统提高效率和利润;(5)运筹优化技术可以提供可靠的分析和评估工具,这可以帮助仓储物流系统进行规划和设计。
但是,相关技术的计划调度和运筹优化模型调度的方式,具有比较明显的缺点,比如:(1)计划调度需要较高的人力成本和人员素质,如计划员、调度员、作业员等,这些人员需要具备一定的专业知识和技能,以及良好的沟通和协调能力;(2)计划调度和运筹优化模型需要较高的模型精确性,难以面临较高的外部不确定性,如需求预测、库存控制、运输安排等,这些计划受到市场变化、客户需求、供应商交货等多种因素的影响,难以做到准确和及时调整;(3)运筹优化技术的模型通常需要大量的计算资源和时间,而这在实际情况中很难满足,因为仓储物流系统往往需要快速响应和动态调整。(4)运筹优化技术通常只考虑单一的目标函数,这在实际情况中很难适用,因为仓储物流系统往往需要平衡多个目标,如成本、服务水平、环境影响等。正因为如此,本发明基于在线学习和次模优化,提出了一种应用于仓储物流大规模资源调度的场景模型训练方法、资源调度方法,可以相对快速的在线学习外部不确定性,能够动态调整模型,计算响应速度更快,节省人力成本,并且可以针对不同场景设置不同的模型,能够整体上平衡多个目标的影响。
为使本领域技术人员更好地理解本申请,以下对本申请涉及的概念进行说明:
第一调度资源数据:在线的实时数据,用于训练第二资源调度模型,可以包括调度需求数据、资源数据所处的状态等信息。调度需求数据比如物流订单等数据,资源数据所处状态比如调度该物流订单的资源所处环节等。
第二调度资源数据:历史数据,用于离线训练第一调度资源模型,可以为第一调度资源调度完成之后获得的历史数据。
在线待调度资源数据:与第一调度资源数据类似,可以属于第一调度资源数据的一部分或者全部,都是在线的实时数据。其中,用于训练的第一调度资源数据,可以比用于输出第二目标调度策略的在线调度资源数据多,也可以相同。
第一待选决策信息:第一调度决策模型的输出,可以包括调度策略及评价值,评价值可以理解为模型输出的reward(奖励)值。
第二待选决策信息:第二调度决策模型的输出,该种情况下输入为第一调度资源数据。第二待选决策信息可以包括调度策略及调度值,在本申请实施例中调度值可以理解为模型输出的reward(奖励)值。
在线待选决策信息:第二调度决策模型的输出,该种情况下输入为在线调度资源数据。在线待选决策信息可以包括调度策略及调度值,在本申请实施例中调度值可以理解为模型输出的reward(奖励)值。
第一目标调度策略:为离线训练过程中,决策选择模型基于第一调度策略模型输出的第一待选决策信息进行处理后,得到的输出,该第一目标调度策略用于提供给仿真调度系统进行调度过程。
第二目标调度决策:为决策选择模型基于第二调度决策模型输出的在线待选决策信息进行处理后,得到的输出,该第二目标调度策略用于提供给实际调度系统进行调度过程。
决策网络:又称actor网络,是深度强化学习中一种用于表示策略的神经网络模型。它是Actor-Critic算法的组成部分之一,用于根据环境的状态选择合适的动作。在深度强化学习中,Actor网络通常是一个前馈神经网络,actor网络接收环境的状态作为输入,并输出动作的概率分布或连续动作的具体值。
评估网络:又称Critic网络,是强化学习中一种用于估计状态或动作的价值的神经网络。Critic网络通常与Actor网络结合使用,构成了Actor-Critic算法的核心。Critic是一个价值函数,它评估状态或动作的价值。Critic网络也通常使用神经网络来表示,它接收环境的状态作为输入,并输出对应状态或动作的价值估计。Critic网络的训练目标是使该网络的估计值与真实值之间的差距最小,以提高价值估计的准确性,通常通过使用回归损失函数(例如均方误差)来实现,将Critic网络的输出与实际的奖励信号或优化目标进行比较。
源决策子网络:是actor网络的子网络,源决策子网络是策略函数,源决策子网络接收环境的状态作为输入,并输出动作的概率分布或连续动作的具体值。源决策子网络的参数是根据梯度下降等优化算法进行更新,以最大化累积奖励的预期值。
靶向决策子网络:是actor网络的子网络,是源决策子网络源决策子网络的副本,其参数不会直接更新。目标网络的参数通过软更新的方式从源网络中复制得来,并用于计算目标值。
源评估子网络:是Critic网络的子网络,源评估子网络接收环境的状态作为输入,并输出状态值或动作值的估计。源评估子网络的参数是通过优化算法进行训练和更新的。
靶向评估子网络:是Critic网络的子网络,靶向评估子网络是源评估子网络的副本,其参数不会直接更新。目标网络的参数通过定期或周期性地从源评估子网络中复制得来,通常用于计算目标值。
噪声:本申请实施例中为有界的噪声,该噪声可从有界高斯分布、均匀分布、有界贝塔分布等任一项分布中采样得到。
第一提取因子:用于参与从第一调度决策模型中提取知识的参数。表示提取知识的直接程度,因子越高因子温度越高,提取蒸馏出来的知识越直接。
第二提取因子:用于参与从第二调度决策模型中提取知识的参数。表示提取知识的直接程度,因子越高因子温度越高,提取蒸馏出来的知识越直接。
实际调度系统:实际的调度环境,即实际仓储物流环境,包括各个物流节点和对应的控制设备。
仿真调度系统:实际调度系统的镜像或者孪生系统,是对实际调度系统的模拟,不影响实际仓储物流环境。
参见图1,示出了本申请实施例的一种资源调度系统示例,该资源调度系统至少可以包括:订单服务器S01、决策服务器S02、物流节点1的控制设备S03以及物流节点2的控制设备S04。当然,物流节点可以有更多,控制设备可以采用多个也可以采用一个。
用户可以通过终端访问订单服务端S01进行物品的购买,然后订单服务端S01可以生成订单,然后发送物流调度需求数据给决策服务器S02,决策服务器S02基于该物流需求数据进行处理,生成目标调度策略,然后发送目标调度策略给相应的物流节点的控制设备进行物流调度,比如目标调度策略是控制物流节点1进行调度,则将物流调度策略发送给物流节点1的控制设备S03,控制设备S03则根据该目标调度策略进行物流资源的调度,比如其是将物流包裹发送给物流节点2,则物流节点2的控制设备在确定调度完成之后,可以反馈调度结果给决策服务器S02。
订单服务端S01与决策服务器S02之间可以通信连接。决策服务器S02和实际物流系统中的各个控制设备之间可以通信连接。
上述物流调度系统作为一种示例,本申请实施例不对其加以限制,比如发送物流需求数据的也可以为其他的服务端,比如合作方的服务端。
参照图2,其示出了本申请另一种资源调度系统的架构,该架构可以包括:数据提供模块101、决策模块102、仿真调度系统103、实际调度系统104。数据提供模块101连接决策模块102,决策模块102分别连接仿真调度系统103和实际调度系统104
其中,数据提供模块101可以输出用于训练的调度资源数据给决策模块102,决策模块102基于该调度资源数据结合仿真调度系统103和/或实际调度系统104进行训练。数据提供模块101还可以将实时的调度资源数据发送给决策模块进行决策,然后将决策后的结果输出给实际调度系统进行资源调度过程。
参照图3,其示出了本申请另一种资源调度系统的架构,在图1的基础上,细化了数据提供模块101和决策模块102。其中,
数据提供模块101包括实时数据模块和历史数据模块两部分,实时数据模块接收外部需求的调度资源数据,然后批量提供给决策模块102。在实际应用中,如果是用于训练的第二调度决策模型的,则从实时数据中选择第一设定数量的第一调度资源数据发送给初始化模型和第二调度决策模块。而对于新接收到的在线调度资源数据,则直接发送给第二调度决策模型进行决策。实时数据模块还可以将实际调度系统调度完成之后的数据更新到历史数据模块中。
历史数据模块中的数据,则在离线训练过程中,将其中的历史数据作为第二调度资源数据分别发送给初始化模型和第一调度决策模型。
决策模块102可以包括:初始化模型1021、第一调度决策模型1022、第二调度决策模型1023、决策选择模型1024。下面,对初始化模型1021、第一调度决策模型1022、第二调度决策模型1023、决策选择模型1024分别进行介绍:
初始化模型1021:有两个功能,第一个功能,输出标签给后续的第一调度决策模型或第二调度决策模型,提升训练的质量和速度。该功能的目的是,挑选出分离程度大于预设阈值的调度资源数据,然后基于这些挑选出来的调度资源数据,计算出这些数据对应的决策结果,作为标签特征,供后续模型使用。比如,以订单分配到工作站的场景类型为例,调度资源数据包括订单,初始化模型可以从这些订单中筛选出一部分目标订单,这些目标订单两两相似度低于相似度阈值,也就是说,这些订单对应的SKU(Stock Keeping Unit,库存量单位)重复度也会低于预设的重复度阈值,然后基于这些目标订单计算出初始的工作站分布,供后续模型使用,后续模型在训练时,对于剩下的订单或者全部订单,可以只考虑如何训练模型,使得把类似SKU分布的订单分配到对应工作站上,简化了模型训练的优化目标。初始化模型1021的参数规模较小,小于第一预设参数规模阈值,比如参数规模小于10^3数量级。其中,参数包括决策变量参数和约束参数。第二个功能,在第二调度决策模型训练过程中,基于第二调度决策模型的输出而参与第二调度决策模型的训练。
第一调度决策模型1022:是离线训练流程的核心模型,该第一调度决策模型的任务,主要是作为一个基于以往经验的“决策家”,给出每一个资源分配决策的奖励值reward,并参与第二调度决策模型的训练。第一调度决策模型1022的参数规模待遇第二预设参数规模阈值,比如大于10^6数量级。第一调度决策模型1022可以为深度神经网络模型,从而具有较强的泛化能力。由于第一调度决策模式收到的调度资源数据中有较大一部分是没有经过初始化模型处理过的,则这部分数据没有标签,因此第一调度决策模型可以为强化学习模型,第一调度决策模型输出的第一目标调度策略会继续被输出给仿真调度系统进行仿真调度,然后基于仿真调度结果对第一调度决策模型进行强化学习,优化模型参数,即可得到所有标签。
第二调度决策模型1023:是在线学习流程中的核心模型之一,也是在线进行调度决策的核心模型之一。第二调度决策模型1023的主要任务是,基于生产环境的实时数据,比如在线待调度资源数据,检查第一调度决策模型的决策的合理性,然后结合第二调度决策模型1023自己的判断和第一调度决策模型的结果,输出各个调度策略及其reward值,供后续的决策选择模型确定最终的第二目标调度策略。由于第二调度决策模型需要实时响应,对实时数据生成对应的结构,并且由于会在线训练以应对实时数据的各种不确定性,所以其参数变大相对频繁,因此第二调度决策模型的参数规模小于第三预设阈值,比如10^5数量级。在实际应用中,第二调度决策模型的参数规模小于第一调度决策模型的参数规模,比如第二调度决策模型的参数规模小于或者等于第一调度决策模型的参数规模的1/2,如此第二调度决策模型的参数可以在保证准确度的情况下尽量简单。第二调度决策模型1023也可以为神经网络模型,本申请实施例不对其加以限制。
决策选择模型1024:在仓储物流资源调度的场景下,资源的分配存在“边际效应递减”的性质,决策选择模型,则基于次模函数建立了该决策选择模型。决策选择模型1024是对最终输出的目标调度策略负责的环节,决策选择模型1024接收第一调度资源模型的输出以确定最终的第一目标调度策略,还接收第二调度资源模型的输出以确定最终的第二目标调度策略。决策选择模型1024在接收到第一调度决策模型的输出的情况下,决策选择模型1024的输出结果发送给仿真调度系统103。决策选择模型1024在接收到第二调度决策模型的输出的情况下,决策选择模型1024的输出结果发送给实际调度系统104。
基于图3的描述,本申请实施例的训练分为离线训练流程和在线训练流程,离线训练后将第一调度决策模型和初始化模型训练好之后,然后可以再在线上对第二调度决策模型进行在线训练。
下面,先介绍离线训练流程:
离线训练流程主要是对第一调度决策模型进行训练,当然,也可以在离线训练流程中,对初始化模型进行训练,对第一调度决策模型的训练过程可以包括如下步骤B10-B15。
步骤B10,获取第二调度资源数据;
结合图3,历史数据模块中的历史数据,不断由实时数据模块进行更新,那么本申请实施例中,可以不断历史数据中的至少一部分,作为第二调度资源数据进行训练。每次训练的至少一部分可以包括新更新的数据。
步骤B11,将所述第二调度资源数据输入预设的初始化模型,获得第二标签特征;
将第二调度资源数据输入初始化模型,获得第二标签特征label2。在实际应用中,可以输入多批第二调度资源数据到初始化模型,得到多批的第二标签特征label2。
步骤B12,将所述第二标签特征和所述第二调度资源数据,输入预设的第一调度决策模型 ,获得第三待选决策信息;
在本申请实施例中,初始化模型输出的第二标签特征label2可以发送到第一调度决策模型中,此外历史数据模块的第二调度资源数据还可以直接发送到第一调度决策模型,从而第一调度决策模型可以基于第二标签特征label2和第二调度资源数据进行计算,得到第三待选决策信息。该第三待选决策信息包括针对第二调度资源的各个待选调度策略及其reward值。
在实际应用中,可以将初始化模型的多次输出的第二标签特征label2或者多次输出的第二标签特征中的一部分发送到第一调度决策模型以进行计算。
需要说明的是,在本申请实施例中将第二调度资源数据输入第一调度决策模型时,可以获取第二调度资源数据所对应的资源的状态,然后基于第二调度资源数据、状态生成输入特征,输入第一调度决策模型。比如对于订单,其订单是否完成的状态等。
在实际应用中,第一调度决策模型执行时,由于调度决策涉及到资源对象的分配,还会调用图4仿真调度系统中数据库存储的资源集合的数据,该资源集合中有资源对象,从而可以基于该资源集合计算调度资源数据的调度决策。在调用图4仿真模块中数据库存储的资源集合时,根据调用资源数据所处的场景类型进行调用。
场景类型包括:订单和工作站的匹配场景、订单和货柜的匹配场景、料车和工作站的匹配、机器人和充电桩的匹配等类型。上述场景类型为将仓储物流中的资源调度拆分成了若干个二分图匹配的场景。每个场景类型可以对应一个决策模块。
步骤B13,将所述第三待选决策信息输入决策选择模型,获得第一目标调度策略;
在本申请实施例中,在得到前述第三待选决策信息之后,将其输入到决策选择模型,得到与各条第二调度资源数据对应的最终的第一目标调度策略。
步骤B14,基于所述目标调度策略进行调度,获得调度结果;
针对每条第一目标调度策略,进行调度,得到调度结果。
可选地,在本申请另一实施例中,步骤B14包括:
步骤B141,将所述第一目标调度策略输入发送至仿真调度系统,获得与所述第二调度资源数据对应的调度结果;所述仿真调度系统模拟实际调度系统。
在本申请实施例中,为了实现第一目标调度策略的强化学习,需要仿真调度系统的参与。第一调度决策模型输出的第一目标调度策略,被发送至仿真调度系统,模拟实际调度系统进行资源调度操作,调度完成之后得到对应各条第二资源调度数据的调度结果。
参照图4,其示出了本申请实施例的仿真操作系统示意图。
仿真操调度操作系统,对实际操作系统进行了模拟,实现实际调度操作环境的模拟,从而支持对第一调度决策模型的离线训练过程。仿真操作调度系统为实际操作调度系统的镜像或者孪生系统。参照图4,决策模块在产生目标调度策略之后,发送相应的目标调度策略至“事件转换器”。“事件转换器”将目标调度策略转换成一系列调度事件,并写入仿真模块数据库中。“事件监听器”会从仿真数据库中选择到达触发时间点的事件,形成“事件队列”。在服务端中设置了触发条件Pool和依赖条件Pool,这两个条件Pool用于判断事件是否达到触发条件和是否满足依赖条件。触发条件和依赖条件,这两类条件的具体内容记录在数据库中。然后每一类条件Pool(比如图4中触发条件Pool中的触发条件1、触发条件2、触发条件3,依赖条件Pool中的依赖条件1、依赖条件2、依赖条件3)发送条件判断请求到“条件状态更新器”,由“条件状态更新器”拉取数据库相关资源的状态,给相应的条件Pool,该条件判断请求包括待调度资源对象以及该待调度资源对象的状态,然后每一类条件Pool模块判断该调度资源对象的条件是否达到,如果达到,则通知“事件执行器”达到触发条件和满足依赖条件。然后“事件队列”将事件发送到“事件执行器”,“事件执行器”按照事件上的流程进度执行,模拟相应设备进行资源调度操作。事件执行完毕后,其状态的变更,以及相关资源受此事件结束而产生的状态变更,都会同步记录在数据库中。数据库的存储,除了上文提到的事件集合和条件集合之外,还包括有资源集合,以及资源集合中各资源的状态,资源集合中各资源的状态随着事件执行和条件变化而更新。
决策模块在计算时,可以根据待计算的资源调度数据,从数据库中读取需求的相应资源集合及其状态,并结合资源调度数据生成输入特征计算,生成目标调度策略并发送给服务任务模块。并且,将该目标调度策略对应的启动条件发送给数据库进行记录。
当然,还可以设置异常注入器,模拟实际调度系统中出现的异常,可以在执行流程模块执行调度的过程中,随机注入调度异常,比如挑选货柜到达工作站异常等,则针对某个调度资源数据,调度相应货柜到相应工作站的调度任务产生异常。
参照图5,其示出了本申请实施例的一种仓储物流系统的离散事件仿真示例。
在仓储物流场景中,实际操作系统可以为仓储物流系统,而仓储物流系统内部的关注点,主要在于整个系统的状态以及引起相关状态发送改变的事件。仓储物流系统内部的各个设备关调度流程运作的过程是不确定的,各个设备完成相关物流调度动作的时间也是不确定的,引起仓储物流系统内部状态变化的事件的到来是随机的、不确定的。仓储物流系统状态的改变是在一个个不确定的离散时间点上发生的。因此,仓储物流系统的这种系统特性符合离散事件系统的特征,因此,仿真操作系统可以采用对离散事件系统进行建模。
如图5所示,以货到人拣选的调度过程为例,其存在离散事件:拣选货柜到达工作站、拣选货柜占用、周转箱到达工作站、周转箱占用、拣选确认、拣选完毕、周转箱解除占用、货柜解除占用等事件。时间线中的仿真时间由上述离散事件驱动前进。图8中,虚线连接的离散事件表示该两个事件存在依赖关系,且前一个事件发生之后时间N后,后一个事件才可以发生。比如拣选货柜占用依赖于拣选货柜到达工作站,拣选货柜到达工作站在t=1时刻发生,拣选货柜已占用则在t=4时刻发生。又比如,拣选确认在t=10时刻发生,拣选完毕则在t=20时刻发生。其他事件的依赖关系具体如图所示,类似原理。在实际调度系统中,事件有先后发生的顺序,两者具有一定的时间间隔,而在仿真调度系统中,可以直接计算出两个事件发生的时间间隔,然后推进事件的进行,不需要等待该时间间隔,从而在兼顾了实际调度环境的仿真性的情况下,还能对仿真流程进行加速,提高训练速度。
需要说明的是,为了对离散事件建模,本申请实施例建立了相应的抽象实体:
任务:仿真操作系统内需要执行的服务任务。该抽象实体转换成事件的形式,由图4中的事件执行器处理。
仿真时间轴:通过改变仿真时间轴来改变仿真调度系统的状态变化。该抽象实体可以由图4中的事件执行器执行。
资源物理模型:模拟仓库内部的资源能力,给定相关命令,可以产出设备执行相关命令所需要的时间开销。比如说对于工作站这个资源,在模型中规定了完成一次拣选所需要的时间,时间来源于历史数据的统计平均值。该抽象实体相关能力数据存储在图4中的数据库,由图4中的事件执行器执行。
决策输入:在什么时间点,进行什么样的资源调度决策。该决策输入的抽象实体,由决策模型输出,输出的决策由图4中的事件转换器转化成一系列调度事件,存储在图4中的数据库。
服务流程逻辑 :服务流程之间约束关系模型,服务流程中的每一步是否可以开始以及满足什么条件才可以开始。该抽象实体对象可以由图4中的触发条件和依赖条件处理并判断。
在本申请实施例中,对于服务流程逻辑可以使用图形化工具进行建模,从而可以对服务流程逻辑进行图形化展示,使得仿真调度系统形象化、便于理解。在本申请实施例中,对每个服务流程执行之前,先对执行所需要的条件进行校验,在满足该服务流程执行的条件的情况下,再执行相关的流程。
参照图6,其示出了本申请实施例的一种服务关系约束示例。
图6中示出了堆垛机出库任务场景的示例,其逻辑按顺序包括:资源校验状态通过;经过时间t=1后,触发下发堆垛机出库任务;经过时间t=1后,触发托盘进入载物台;经过时间t=1后,分别触发占用载物台和释放堆垛机;经过时间t=1后,触发等待堆垛机出库任务完成;经过时间t=2后,触发完成堆垛机出库任务;经过时间t=1后,触发堆垛机出库任务完成;然后触发输送线流程,即触发后续流程。
以堆垛机出库任务为例,如图9所示,起始节点为堆垛机出库任务这一初始状态,堆垛机出库任务在校验通过后,会获得一个命令token;托盘进入载物台后,需要判断占用载物台与占用堆垛机是否都完成,如果都完成,才会触发完成出库堆垛机任务的动作action。在实际应用中,每个任务都会记录一个动作action,每个任务完成后,会获得一个命令token,在action中的开关字段会记录该token,且在该执行流程中该开关字段只被记录1次,保证任务的正确执行。
在实际应用中,为了实现服务逻辑的跳转,可以设置如下几个函数:
Place:按照设备类型/路由关系定义的设备搬运任务
Transition:触发下一步设备搬运任务的条件函数(Token:触发 Output 不同取值的条件)
Input:任务交接节点前的上一段任务
Output:任务交接节点后的下一段任务
这些任务配合流程的服务逻辑执行,实现流程节点的跳转。
步骤B15,基于所述调度结果,优化所述第一调度决策模型的参数。
然后基于调度结果,对第一调度决策模型进行强化学习,优化第一调度决策模型的参数。
可选的,所述第一调度决策模型包括:决策网络和评估网络,所述决策网络包括:源决策子网络和靶向决策子网络,所述评估网络包括至少两个源评估子网络和至少两个靶向评估子网络,所述步骤B12,包括:
子步骤B121,在至少两个所述靶向评估子网络分别输出第四待选决策信息的情况下,从多个第四待选决策信息中选择符合第一预设条件的信息作为第三待选决策信息。
其中,一个源评估子网络和一个靶向评估子网络作为一组进行计算,即一个源评估子网络可以对应一个靶向评估子网络。
其中第一预设条件可以为,多个第四待选决策信息中,某个小于其他待选决策信息的目标待选决策信息。
参照图7,其为本申请实施例的第一调度决策模型的训练过程示意图。
在本申请实施例中,根据第二标签特征和第二调度资源数据得到输入特征S,分别将输入特征S输入源决策子网络、源评估子网络1和源评估子网络2。源决策子网络进行计算,得到输出结果a1。输出结果a1被输入源评估子网络1和源评估子网络2。那么源评估子网络1和源评估子网络2各自都基于a1和s进行计算,分别得到输出结果Q1和Q2,然后源评估子网络1基于时间差分误差1和Q1更新源评估子网络1的参数,然后源评估子网络2基于时间差分误差2和Q2更新源评估子网络2的参数。
此外,输入特征S(图中未示出)也提供给靶向决策子网络、靶向评估子网络1和靶向评估子网络2,其中靶向决策子网络基于权重更新模型定期同步源决策子网络的参数,靶向评估子网络基于权重更新模型定期同步源评估子网络的参数。该权重更新模型本申请实施例不对其加以限制。
然后,靶向决策子网络基于输入S,得到输出结果a11(图中未示出),然后输出结果a11提供给靶向评估子网络1和靶向评估子网络2,然后靶向评估子网络1和靶向评估子网络2分别基于a11和s进行计算,得到输出结果Q11和Q12(图中未示出),然后从Q11和Q12中选择较小的作为a11的reward值,其中靶向决策子网络输出结果为待选调度策略。然后该待选调度策略及其reward值被发送至仿真调度系统进行调度操作,得到调度结果。
然后,具有调度结果的第二调度资源被抽样回放重新作为输入,根据回放的第二调度资源和第二标签特征得到输入特征S*,然后将输入特征S*分别输入给靶向决策子网络、靶向评估子网络1和靶向评估子网络2。将第二调度资源对应的目标决策加入靶向决策子网络的输出,得到靶向决策子网络的输出a0。然后可以直接将a0分别输入给靶向评估子网络1和靶向评估子网络2。靶向评估子网络1和靶向评估子网络2各自均基于a0(图中未示出)和S*进行计算,得到输出结果Q1*和Q2*,然后取Q1*和Q2*中的最小值反馈给时间差分误差1和时间差分误差2,然后优化源评估子网络1和源评估子网络2的参数。
源评估子网络1和源评估子网络2的参数优化后,更新源决策子网络的参数。如此循环,直至时差分误差1和时间差分误差2收敛或者达到预设的循环次数。如此第一调度决策模型训练完毕。
其中,在评估网络(Critic网络)中,时间差分误差(Temporal Difference Error)是指评估网络对当前状态的值估计与下一个状态的值估计之间的差异。时间差分误差在强化学习算法中起着重要作用,用于更新评估网络的参数。
上述方式中,由于设置了至少两组源评估子网络和靶向评估子网络的网络对,从多个靶向评估子网络的输出中取小值的方式,可以暂缓更新、使得靶向评估网络计算出来的reward值变动缓慢,更加稳定。
可选地,在本申请另一实施例中,靶向决策子网络用于向靶向评估子网络输出待选决策,则还可以包括:
子步骤B122,在靶向决策子网络输出待选决策的情况下,在所述待选决策中添加在设定范围内的噪声参数;
子步骤B123,将带有噪声参数的待选决策和第二调度资源数据,分别输入至少两个所述靶向评估子网络,获得所述第四待选决策信息。
其中,该待选决策可以理解为待选的调度策略,比如将资源集合A中的资源a调度给资源集合B中的资源b这种调度策略,后续在靶向评估子网络中得到该待选的调度策略的评价值,从而获得该第四待选决策信息,该第四待选决策信息包括该待选的调度策略及其评价值。
参考图7,靶向决策子网络输出的结果,可以被再发送给靶向评估子网络进行计算,而为了使靶向评估子网络计算出出来的Reward更加鲁棒,更加平滑,则可以在靶向决策子网络输出的结果的基础上,加入噪声,该噪声为设定范围内的噪声参数。
该噪声可以从可从有界高斯分布、均匀分布、有界贝塔分布等任一项分布中采样得到,具体采样的方式,本申请实施例不对其加以限制。该噪声可以作为新的一个维度的特征加到模型的输入中,比如图7中的a0,加入噪声之后得到a0*,然后a0*分别输入给靶向评估子网络1和靶向评估子网络2,靶向评估子网络1和靶向评估子网络2各自均基于a0*和S*进行计算,得到输出结果。
可选地,在本申请另一实施例中,源评估子网络用于更新所述源决策子网络的参数,则还包括:
步骤B124,在经过预设循环次数之后,更新所述源决策子网络的参数。
在本申请实施例中,在利用源靶向子网络更新源决策子网络时,可以选择延迟更新,对源靶向子网络训练多次之后,再更新源决策网络的参数,如此,可以控制时间差分误差导致的收敛速度,提高训练效率。在本申请实施例中,延迟的次数可以根据实际需求设置,比如10次,15次等,本申请实施例不对其加以限制。
在本申请实施例中,对第一调度决策模型进行强化学习以优化第一调度决策模型的参数时,可以同步优化初始化模型的参数,比如以第一调度决策模型的目标函数的计算结果对初始化模型的参数进行优化。当然,初始化模型也可以单独利用第二调度资源数据进行训练,比如对第二调度资源数据的进行打标,然后将打标后的第二调度数据输入初始化模型,对初始化模型进行训练,该种情况下,初始化模型训练完毕之后,再执行前述对第一调度决策模型进行训练的过程。
在初始化模型和第一调度决策模型训练完毕之后,可以执行在线训练过程,下面介绍一下在线训练流程:
参照图8,其示出了本申请实施例一种模型训练方法的流程示意图。该流程为在线训练过程,所述方法包括:
步骤210,获取第一调度资源数据;
结合图3,本申请实施例中,可以接收外部需求的调度数据,由于外部需求的调度数据需要在线响应,所以可以将这些外部需求的调度数据作为第一调度资源数据。
步骤211,将所述第一调度资源数据输入预设的初始化模型,获得第一标签特征;
将第一调度资源数据输入初始化模型,获得第一标签特征label1。
步骤212,将所述第一标签特征和所述第一调度资源数据,输入预设的第一调度决策模型,获得第一待选决策信息;
在本申请实施例中,初始化模型输出的第一标签特征label1可以发送到第一调度决策模型中,此外实时数据模块的第一调度资源数据还可以直接发送到第一调度决策模型,从而第一调度决策模型可以基于第一标签特征label1和第一调度资源数据进行计算,得到第一待选决策信息。该第一待选决策信息包括针对第一调度资源的各个第一待选决策及其reward值。
需要说明的是,在本申请实施例中将第一调度资源数据输入第二调度决策模型时,可以获取第一调度资源数据所对应的资源的状态,然后基于第一调度资源数据、状态生成输入特征,输入第二调度决策模型。比如对于订单,其订单是否完成的状态等。
当然,在实际应用在,该生成输入特征时,还可以将第一提取因子和第二提取因子加入输入。
步骤213,将所述第一标签特征和所述第一调度资源数据,输入第二调度决策模型,获得第二待选决策信息;所述第二调度决策子模型的参数规模小于所述第一调度决策模型;
在本申请实施例中,初始化模型输出的第一标签特征label1可以发送到第二调度决策模型中,此外实时数据模块的第一调度资源数据还可以直接发送到第二调度决策模型,从而第二调度决策模型可以基于第一标签特征label1和第一调度资源数据进行计算,得到第二待选决策信息。该第二待选决策信息包括针对第一调度资源的各个第二待选决策及其reward值。
需要说明的是,在本申请实施例中将第一调度资源数据输入第二调度决策模型时,可以获取第一调度资源数据所对应的资源的状态,然后基于第一调度资源数据、状态生成输入特征,输入第二调度决策模型。比如对于订单,其订单是否完成的状态等。
步骤214,根据所述第一待选决策信息、第二待选决策信息、与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果;
在本申请实施例中,与所述第一调度决策模型对应的第一权重值alpha以及与所述第二调度决策子模型对应的第二权重值beta,可以根据经验设置。也可以在决策模块上线前,利用同一批数据对模型进行多次训练,并在每次训练过程调整第一权重值alpha和第二权重值beta,选择效果符合预期的第一权重值alpha和第二权重值beta。
步骤215,基于所述优化参考结果对所述第二调度决策模型的参数进行优化;所述第二调度决策模型用于根据在线待调度资源数据获得在线待选决策信息,所述在线待选决策信息用于输入预设的决策选择模型以获得用于调度资源的第二目标调度策略。
在得到述第一待选决策信息、第二待选决策信息、第一权重值alpha和第二权重值beta后,则可以基于上述几个数据对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果,然后基于该优化参考结果对第二调度决策模型的参数进行优化,直至该目标函数的计算结果收敛或者达到预设的训练循环次数。
可选地,在本申请另一实施例中,步骤214包括:
子步骤2141,根据第一待选决策信息和所述第二待选决策信息,确定所述第一调度决策模型和所述第二调度决策模型之间的第一信息差异程度值;
子步骤2142,根据所述第二待选决策信息,确定所述第二调度决策模型和所述初始化模型之间的第二信息差异程度值;
子步骤2143,根据所述第一信息差异程度值、所述第二信息差异程度值、所述第一权重值、所述第二权重值,对所述目标函数进行计算,获得优化参考结果。
在本申请实施例中,为了提高第二调度决策模型的准确性,将第一调度决策模型和初始化模型作为两个观察者,参与第二调度决策模型的训练,基于该种思路,分别计算第一调度决策模型和所述第二调度决策模型之间的第一信息差异程度值,以及所述第二调度决策模型和所述初始化模型之间的第二信息差异程度值,然后结合第一权重值alpha和第二权重值beta对目标函数进行计算。
其中,差异程度值可以表示两个模型输出的信息之间的差异程度。比如可以为分布距离,当然,还可以采用其他统计距离,本申请实施例不对其加以限制。
在实际应用中,第一权重值alpha与第一信息差异程度值相乘,第二权重值beta与第二信息差异程度值相乘,然后将得到的两个乘积相加,得到优化参考结果。
可选地,在本申请另一实施例中,子步骤2141,包括:
子步骤C21,将所述第一待选决策信息,输入与所述第一调度决策模型对应的第一激活函数,获得第一分布信息;
子步骤C22,将所述第二待选决策信息,输入与所述第二调度决策模型对应的第二激活函数,获得第二分布信息;
子步骤C23,计算所述第一分布信息和所述第二分布信息之间分布距离,获得所述第一信息差异程度值。
参照图9,其示出了本申请实施例的第二调度决策模型的训练过程。
将第一调度资源数据作为训练数据,分别输入第一调度决策模型和第二调度决策模型,此外,还将第一标签特征分别输入第一调度决策模型和第二调度决策模型。
第一调度决策模型对每条训练数据进行计算,输出相应的第一待选决策信息,该第一待选决策信息包括reward。
然后可以将第一待选决策信息,输入与所述第一调度决策模型对应的第一激活函数,获得第一调度决策模型的第一分布信息。该第一分布信息为第一调度决策模型输出的各种调度决策的分布情况。
第二调度决策模型对每条训练数据进行计算,输出相应的第二待选决策信息,该第二待选决策信息包括reward。
然后可以将第二待选决策信息,输入与所述第二调度决策模型对应的第二激活函数,获得第二调度决策模型的第二分布信息。该第二分布信息为第二调度决策模型输出的各种调度决策的分布情况。
然后计算第一分布信息和第二分布信息之间的距离,得到第一差异程度值L_{soft}。
其中,激活函数又称为Softmax函数,激活函数可以将神经网络的输出转化为概率分布,使得每个输出元素的取值范围在0到1之间,并且所有元素的和等于1。这使得输出可以被解释为对不同类别的概率估计。
其中,两个分布信息之间的距离可以采用多种方式计算,比如KL散度(Kullback-Leibler Divergence)、JS散度(Jensen-Shannon Divergence)、F散度(F-Divergence)、渥瑟斯坦距离(Wasserstein Distance)中的任意一种,本申请实施例不对其加以限制。
可选地,在本申请另一实施例中,子步骤2142包括:
子步骤C24,将所述第二待选决策信息,输入所述初始化模型,获得第三分布信息;
子步骤C25,计算所述第二分布信息和所述第三分布信息之间分布距离,获得所述第二差异程度值。
参照图9,为了是初始化模型也作为一个观察者,在本申请实施例中,将第二决策模型输出的第二待选决策信息,再次输入初始化模型,而初始化模型还用于输出第三分布信息hard label,然后可以计算前述第二分布信息和第三分布信息之间的距离,得到第二差异程度值L_{hard}。
然后即可计算目标函数,得到优化参考结果。
可选地,在本申请另一实施例中,子步骤C21,包括:
子步骤C211,将所述第一待选决策信息,输入具有第一提取因子的第一激活函数,获得所述第一分布信息;
子步骤C22,包括:
子步骤C221将所述第二待选决策信息,输入具有第二提取因子的第二激活函数,获得第二分布信息。
其中,提取因子取值越大,表示提取出来的知识越直接。
在实际应用中,对于每个模型,每一条训练数据i,可以基于相应模型的提取因子计算该条训练数据对应的信息,然后组合计算得到相应的分布信息。
比如,对于第一调度决策模型,每条训练数据的信息的计算公式为:
a_{i}^{Expert}=exp(e_{i}^{Expert})/T_{Expert})/sum_{k}^{N}exp(e_{k}^{Expert}/ T_{Expert})
其中,a_{i}^{Expert}为第i条训练数据的分布值结果,exp(e_{i}^{Expert})表示训练数据i经过第一调度决策模型计算出来的结果,T_{Expert}表示第一提取因子。
sum_{k}^{N}exp(e_{k}^{Expert}/ T_{Expert})表示所有的exp(e_{k}^{Expert}/ T_{Expert})计算结果的和。
通过上述方式可以得到每条训练数据对应的信息,然后将各条训练数据的上述信息进行组合,然后即可获得第一分布信息。
比如,对于第二调度决策模型,每条训练数据的信息的计算公式为:
a_{i}^{reviewer}=exp(e_{i}^{ reviewer })/T_{ reviewer })/sum_{k}^{N}exp(e_{k}^{ reviewer }/ T_{ reviewer })
其中,a_{i}^{ reviewer }为第i条训练数据的分布值结果,exp(e_{i}^{reviewer })表示训练数据i经过第二调度决策模型计算出来的结果,T_{ reviewer })表示第二提取因子。
sum_{k}^{N}exp(e_{k}^{reviewer}/T_{reviewer})表示所有的exp(e_{k}^{reviewer}/T_{reviewer})计算结果的和。
通过上述方式可以得到每条训练数据对应的信息,然后将各条训练数据的上述信息进行组合,然后即可获得第二分布信息。
而对于初始化模型,由于没有提取因子,则去掉上述公式中的提取因子即可,比如
a_{i}^{beginner}=exp(e_{i}^{ beginner })/(sum_{k}^{N}exp(e_{k}^{beginner}))
其中,a_{i}^{ beginner }为第i条训练数据的分布值结果,exp(e_{i}^{beginner })表示训练数据i经过初始化模型计算出来的结果。
sum_{k}^{N}exp(e_{k}^{ beginner })表示所有的 exp(e_{k}^{ beginner})计算结果的和。
通过上述方式可以得到每条训练数据对应的信息,然后将各条训练数据的上述信息进行组合,然后即可获得第三分布信息。
当然,计算分布的激活函数还可以采用其他形式,本申请实施例不对其加以限制。
由于本申请对几个模型的分布进行了计算,拓展了损失的计算范围,是模型应用的拓展性更强。
可选地,在本申请另一实施例中,子步骤2143包括:
子步骤C26,将所述第一信息差异程度值与所述第一权重值的乘积,加上所述第二信息差异程度值与所述第二权重值的乘积,获得所述优化参考结果。
在实际应用中,目标函数$L可以为:
$L=alpha * L_{soft}+ beta * L_{hard}。
其中,alpha和beta之和为1。
那么,基于上述目标函数,代入第一信息差异程度值、第一权重值、第二信息差异程度值、第二权重值即可得到优化参考结果。
参照图9,在本申请实施例中,第一提取因子和第二提取因子,可以与训练数据的特征进行组合,输入到所述爹调度决策模型中,然后第二调度决策模型基于第一提取因子和第二提取因子技术reward值。如此,可以使计算的结果更符合提取的需求。
在本申请实施例中,提取因子还可以添加到第二调度决策模型的输入中,作为新的提取因子维度输入到第二调度决策模型中进行计算,使第二调度决策模型在计算时可以基于提取因子输出计算结果,使输出结果更准确。
可选地,在本申请另一实施例中,还包括:
步骤221,获取所述调度资源数据对应的资源调度场景类型;
步骤222,根据所述资源调度场景类型,确定与所述资源调度场景类型对应的初始化模型、第一调度决策模型、第二调度决策模型。
在仓储物流环境中,场景类型包括:订单和工作站的匹配场景、订单和货柜的匹配场景、料车和工作站的匹配、机器人和充电桩的匹配等类型。上述场景类型为将仓储物流中的资源调度拆分成了若干个二分图匹配的场景。每个场景类型可以对应一个决策模块。
因此,本申请实施例,对于外部的调度资源,可以预先确定其场景类型,比如根据调度资源的特征,确定其属于哪种调度场景类型,比如是属于订单和工作站的匹配场景、订单和货柜的匹配场景、料车和工作站的匹配、机器人和充电桩的匹配中的哪种场景,然后将相应的调度资源数据输入到类型的决策模块进行训练或者进行识别。参照图10,比如图10中有类型1决策模块、类型n决策模块,类型1决策模块、类型n决策模块的架构与图3中的决策模块架构相同,只是由于输入的调度数据不同,训练出来的参数不尽相同。各个决策模块可以共用仿真调度系统和实际调度系统。如此,可以将大规模资源调度问题拆分成若干个二分图匹配问题,每个问题相互之间关联性较弱,使模型复杂度降低,能够提高训练速度和响应速度,并且能够基于多个细分的场景决策模块,更加均衡的去优化仓储的整体效能。
可选地,在本申请另一实施例中,所述初始化模型包括:聚类子模型和二分图子模型;步骤211包括:
子步骤C27,将所述第一调度资源数据输入所述聚类子模型,获得聚类结果;
子步骤C28,将所述聚类结果,输入所述二分图子模型,获得所述第一标签特征。
在本申请实施例中,初始化模型可以由聚类子模型和二分图子模型串联组合得到,先由聚类子模型对输入数据进行聚类,再有二分图子模型输出标签特征。二分图子模型还可以输出第三分布信息。
聚类子模型可以为采用K均值聚类(K-Means Clustering)、高斯混合模型(Gaussian Mixture Model,GMM)、密度聚类(Density-Based Clustering)等聚类算法中任一一种,本申请实施例不对其加以限制。
二分图模型可以采用匈牙利算法(Kuhn-Menres),最大流算法(Maximum Flow)等二分图算法中的任意一种,本申请实施例不对其加以限制。
聚类子模型和二分图子模型的串联,可以基于聚类的结果再进行二分图计算,计算更便捷。
本申请实施例中,设置了第一调度决策模型、参数规模小于第一调度决策模型的第二调度决策模型,以及用于获得标签特征的初始化模型。第一调度决策模型可以离线训练,然后在在线使用过程中,首先,通过初始化模型对在线的第一调度资源数据进行处理,得到第一标签特征,供后续的第一调度决策模型和第二调度决策模型使用,提高训练的质量以及速度。其次,通过第一调度决策模型对第一标签特征和所述第一调度资源数据进行处理,得到第一待选决策信息,这些第一待选决策信息可以在训练第二调度决策模型时,对第二调度决策模型进行校准,由于第一调度决策模型参数规模更大,能够学习到更准的历史规律,其参与第二调度决策的训练,能提高第二调度决策模型的准确度。其次,在线训练过程中,第二调度决策模型以第一标签特征和所述第一调度资源数据作为输入进行学习,能够学习到初始化模型初步的计算结果,能够进一步提高训练速度,满足在线的快速学习的需求。其次,第二调度决策模型的参数规模比较小,在线训练能够更快速;再次,由于设置了与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,然后再结合第一待选决策信息、第二待选决策信息,构建目标函数并进行计算,如此,在线的第二调度决策模型的目标函数可以将几个模型关联起来,结合前述的训练速度更快的优点,使从而使训练得到的第二调度决策模型能够更快速的识别到在线实时数据的所处场景的不确定性模型的稳定性和鲁棒性更强。
最后,由于拆分了多个模型,比如初始化模型、第一调度决策模型、第二调度决策模型、决策选择模型,这些模型配合使用,能够使每个模型结构相对简单,约束条件减少,计算更快,能够实现更快的响应速度。
在第二调度决策模型训练完毕之后,可以基于第二调度决策模型进行资源调度过程。
参照图11,其示出了本申请实施例一种资源调度方法的流程示意图。所述方法包括:
步骤310,获取在线待调度资源数据;
步骤311,将所述待调度资源数据输入第二调度决策模型,获得在线待选决策信息;
步骤312,将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略;
步骤313,将所述第二目标调度策略发送至实际调度系统以进行资源的调度。
如图3,在线待调度资源数据可以为第一调度资源数据,对这些第一调度资源数据,可以再次输入训练完毕之后的第二调度决策模型,获得在线待选决策信息,然后再将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略,最后将第二目标调度策略发送至实际调度系统以进行资源的调度。
可选地,在本申请另一实施例中,参照图10,还包括:获取所述调度资源数据对应的资源调度场景类型;根据所述资源调度场景类型,确定与所述资源调度场景类型对应的初始化模型、第一调度决策模型、第二调度决策模型。在本申请实施例中,在线识别的过程中,也可以根据调度数据所属的场景类型,选择相应类型的决策模块,进行在线的第二目标调度策略确定过程。
可选地,在本申请另一实施例中,所述在线待选决策信息包括对第一资源集合中的资源和第二资源集合中的资源进行调度的调度策略,以及与所述调度策略对应的评分值,所述决策选择模型包括:横向次模子模型和纵向次模子模型,所述横向次模子模型用于评判将第一资源集合中的第一资源对象调度给第二资源集合中的第二资源对象的调度总收益,所述纵向次模子模型的用于评判将第二资源集合中的第二资源对象调度给第一资源集合中的第一资源对象的调度总收益;步骤312包括:
子步骤D31,基于所述横向次模子模型和所述纵向次模子模型,根据所述待选决策信息,确定第二目标调度策略,使第一资源集合中的第一资源对象调度给第二资源集合中的第二资源对象的调度总收益、以及将第二资源集合中的第二资源对象调度给第一资源集合中的第一资源对象的调度总收益符合第二预设条件。
在本申请实施例中,仓储物流系统中的各场景类型的二分图问题具有“边际效应递减”的性质,因此可以基于次模函数构建决策选择模型。
参照图12,其示出了次模函数模型的集合关系。
次模函数:满足 f(X)+f(Y)>=f(X并Y)+f(X交Y)的函数统称为次模函数,X、Y属于集合V。次模函数为用于描述边际效益递减的离散函数,次模函数的一个同等定义为:记delta(a|X) 表示向集合X中加入新元素a的增量收益,则对离散的自变量集合S,满足delta(a|X)>= delta(a|Y),其中集合Y包含集合X,即集合Y比集合X“更大“的集合函数f称为S上的一个次模函数。
在仓储物流中,绝大部分资源调度场景都具有“边际效应递减”的特性,前述的各种场景类型也具有“边际效应递减”的特性。比如订单和工作站匹配的场景类型下,一个工作站分配越多的拣选任务,就需要更多的拣选资源,拣选资源比如拣选员工数、拣选机器人数量、拣选时间等。虽然工作站能够完成更多的拣选任务,但是更多的拣选任务带来的调度收益是边际递减的;又比如货柜和工作站匹配的场景,一个货柜去的目的工作站数量越多,虽然能够带来更多的效益,但却花费了更多的时间和更多的工作站触达次数,因此边际效益也是递减的。从数学意义上说,对于资源调度的决策往往是离散的,因此次模函数的“边际效益递减”特性十分适合仓储场景下大规模资源调度问题,在本申请实施例中,每一场景类型的调度问题可以转变成简单的横向和纵向的二分图匹配问题模型。参照图13的资源集合A和资源集合B,两者之间的资源调度就是一个二分图匹配问题。
对于资源调度,横向上的资源调度存在着“边际效应递减”的特性。以拣选单到工作站这一场景类型的资源调度问题为例,以工作站为主视角,如果工作站可分配的容量为2,初始容量为0。那么把拣选单分配给这个工作站后,需要找到完全一样的拣选单,分配给这个工作站,其调度收益效益才会不减少,因为可调度的货柜数不会减少。如果拣选单不一样,其拣选成本就会增加,尽管拣选的量变多了,但是边际效益递减。因此, 对如图13,资源集合A分配到资源集合B的调度问题,横向上的横向次模子模型可以建立如下:
该模型表示使横向上的调度收益最大化。其中,a为资源集合A中的一个资源,N(a)为资源集合A调度给资源集合B的一个调度计划,fa ()为和资源a相关的一个次模函数。R(a,b) 为经过第一调度决策模型或者第二调度决策模型给出的Reward值,即将资源a分配给资源b的Reward。其中,在离线训练过程中,R(a,b) 为经过第一调度决策模型给出的Reward值。在在线识别的过程中,R(a,b) 为经过第二调度决策模型给出的Reward值。
不同的场景类型,次模函数可以根据该场景进行设置。比如以拣选单分配到工作站为例,次模函数fa ()为:
其中,NC是当前未做决策的分配计划,对于此时的fa ()来说是一个已知的量。fb0(NC)表示此时分配计划下的工作站b的累计收益(该累计收益比如在订单-货柜类型场景下的货柜总数)。xab表示是否把资源a分配给资源b,Z()表示如果xab=1时,对应有新增的货柜,那么Z()=1,否则Z()=0。那么, fa ()对于集合 A 中的元素具有次模特性。
又比如,以机器人和充电桩匹配的场景类型为例,次模函数fa ()为:
其中,xab表示是否把资源a分配给资源b。
对于资源调度,除了横向上的“边际效应递减”特性之外,纵向上也存在着“边际效应递减”的特性。还是以拣选单到工作站这一场景类型的资源调度问题为例,要将拣选单b分配到工作站a,以拣选单为主视角,假设一张拣选单可以分成多个子拣选单,每个子拣选单分配到一个工作站,因此,一张拣选单可分配给多个工作站,从拣选单的视角来看,分配的工作站越多,可能会更快的并行拣选完毕,但是需要更多的成本,该成本比如时间、可调度的货柜数等等,因此存在着边际效应递减的特性。因此对于资源集合A分配到资源集合B的调度问题,纵向上的纵向次模子模型可以建立为如下:
该模型表示使纵向上的调度收益最大化。其中,其中 b 为资源集合B中的一个资源,N(b)为资源集合B调度给资源集合A的一个调度计划,gb()为和资源b绑定的一个次模函数,该次模函数gb()类似前述fb(),在此不再详述。R(a,b) 为经过第一调度决策模型或者第二调度决策模型给出的Reward值,即将资源a分配给资源b的Reward。其中,在离线训练过程中,R(a,b) 为经过第一调度决策模型给出的Reward值。在线识别的过程中,R(a,b) 为经过第二调度决策模型给出的Reward值。
在本申请实施例中,在仓储物流场景下的大规模资源调度过程中,上述横向的问题和纵向的问题可能会同时发送,为了整体考虑横向的问题和纵向的问题,则将横向的模型和纵向的模型进行联合,得到多目标优化模型,其模型如下:
该模型表示希望同时使横向上和纵向上的调度收益最大化。其中 a 为资源集合A中的一个资源,b 为资源集合B中的一个资源,N(a,b)为资源集合B和资源集合A之间的调度计划,fa ()为和资源a绑定的一个次模函数,gb()为和资源b绑定的一个次模函数。R(a,b)为经过第一调度决策模型或者第二调度决策模型给出的Reward值,即将资源a分配给资源b的Reward。其中,在离线训练过程中,R(a,b) 为经过第一调度决策模型给出的Reward值。在在线识别的过程中,R(a,b) 为经过第二调度决策模型给出的Reward值。
基于该联合的优化模型,由于决策变量的规模较大,在一些情况下,可能达到百万的数量级,该种量级下使用传统的运筹优化算法,求解速度比较慢,而为了实现快速求解,本申请实施例可以执行如下计算过程:
可选地,在本申请另一实施例中,所述横向次模子模型包括用于关联第一资源对象关联的第一次模函数,所述纵向次模子模型包括用于关联所述第二资源对象的第二次模函数,所述D31,包括:
子步骤D311,针对所述第一资源对象和第二资源对象的组合,分别基于第一次模函数获取第一资源对象对应的第一调度值,以及基于第二次模函数获取第二资源对象对应的第二调度值;
在该算法的开始,可以先初始化资源集合A的第一调控因子和资源集合B的第二调控因子。然后进行后续步骤D312开始的循环计算过程。
第一调控因子和第二调控因子初始化过程如下:
V_{at}=[v_{a0}]=1,V_{bt}=[v_{b0}]=1。
V_{at}表示第t个周期的第一调控因子,V_{ bt }表示第t个周期的第二调控因子,此时将其赋值为第0个周期的值,初始的值可以设置为1。当然也可以设置为其他值。
在子步骤D311,基于图13的资源集合,对于所有可能的a,b组合,计算出次模函数fa ()的delta值,其计算公式如下:
上述公式的含义为,只做(a,b)组合的情形下,对应次模函数fa ()的取值,得到第一调度值。
以及对于所有可能的a,b组合,计算出次模函数gb()的delta值,其计算公式如下:
上述公式的含义为,只做(a,b)组合的情形下,对应次模函数gb ()的取值,得到第二调度值。/>
其中,a、b组合的R(a,b)可以由第一调度决策模型或者第二调度决策模型的输出获得。
子步骤D312,在第t个决策周期中,获取针对第一资源集合的第一调控因子和针对所述第二资源集合的第二调控因子;
在本申请实施例中,可以按决策周期进行计算,在第t个决策周期中,先确定针对第一资源集合的第一调控因子和针对所述第二资源集合的第二调控因子,即获取前述V_{at}和V_{ bt }。
子步骤D313,根据第一调度值和所述第一调控因子按第三预设条件选择K个第一资源对象,以及根据第二调度值和所述第二调控因子按第三预设条件选择K个第二资源对象;
然后按照,w_{t}(a)=V_{at}*计算资源集合A中的各个资源a的参考值w_{t}(a),然后将各个资源a按照参考值w_{t}(a)进行排序,从排序中选择K个第一资源对象,该第一资源对象为资源集合A中的资源。该排序可以按从大到小的顺序排序,然后选择排序靠前的K个第一资源对象。
w_{t}(b)=V_{bt}*计算资源集合B中的各个资源b的参考值w_{t}(b),然后将各个资源b照参考值w_{t}(b)进行排序,从排序中选择K个第二资源对象,该第二资源对象为资源集B中的资源。该排序可以按从大到小的顺序排序,然后选择排序靠前的K个第二资源对象。
子步骤D314,基于将所述第一资源对象的第一调度值和所述第二资源对象的第二调度值,对所述第一资源对象和第二资源对象进行双向贪婪匹配,并在配对成功的情况下,生成对应的第二目标调度策略;
在选择出K个第一对象和K个第二对象之后,分别以出K个第一对象为第一组,以K个第二对象为第二组,然后两个组之间进行双向贪婪匹配(Bi-Greedy Matching),然后在配对成功的情况下,将配对(a,b)生成对应的第二目标调度策略。
其中,双向贪婪匹配为:如果对方相互都是自己在所在资源组中的最大值,则配对成功。比如,如果对于b*的所有可能配对,a*为所有配对中w_{t}(a)值是最大的,且b*也是a*所有可能的B中的配对中,u_{t}(b)值最大的,则生成决策 (a*,b*)。
在实际应用中,如果双向贪婪匹配没有匹配成功,则可以对对所述第一资源对象和第二资源对象进行单向贪婪匹配,如果匹配成功,则生成对应的第二目标调度策略。比如前述双向贪婪匹配没有匹配成功,则可以按照横向的a,进行单方面的贪婪配对(One-way-Greedy Matching),即先找到w_{t}(a)值是最大的a,从a的配对中找到u_{t}(b)值最大的b,生成决策 (a,b)。
如果双向贪婪匹配和单向贪婪匹配都没匹配成功,则不生成第二目标调度策略。
当然,还可以只在双向贪婪匹配成功的情况下生成第二目标调度策略,双向贪婪匹配不成功的情况下,不生成第二目标调度策略,该种情况不执行单向贪婪匹配过程。
子步骤D315,基于选中的K个第一资源对象和第t个决策周期的第一调控因子,更新下一个周期的第一调控因子,并基于选中的K个第二资源对象和第t个决策周期的第二调控因子,更新下一个周期的第二调控因子。
具体的,在周期t中的K个第一资源对象和K个第二资源对象相互进行贪婪匹配后,可以调整第一调控因子和第二调控因子,以更快的速度收敛并计算出合适的决策。
其中,第一调控因子可以按如下公式更新:
V_{a(t+1)}=V_{at}*(1 – S(A_{t})/S_{A})
其中,V_{a(t+1)}表示第t+1个周期的第一调控因子的值,V_{at}表示第t个周期的第一调控因子的值。S(A_{t})是在决策周期t选中的所有资源集合A中的第一资源对象,其对应的值的加和。S_{A}是在决策周期t,所有资源集合A中所有候选的资源对象,其对应的/>值的加和。
其中,第二调控因子可以按如下公式更新:
V_{b(t+1)}=V_{bt}*(1 – S(B_{t})/S_{B})
其中,V_{b(t+1)}表示第t+1个周期的第二调控因子的值,V_{at}表示第t个周期的第一调控因子的值。S(B_{t})是在决策周期t选中的所有资源集合B中的第二资源对象,其对应的值的加和。S_{B}是在决策周期t,所有资源集合B中所有候选的资源对象,其对应的/>值的加和。
在更新了下一个决策周期t+1的第一调控因子的值和第二调控因子的值之后,可以重复执行子步骤D312,以新的第一调控因子和第二调控因子进行计算,如此循环,直至资源集合A或者资源结合B中任意一个不存在可以分配的资源,计算结束。
如此,则得到了针对调度资源数据的各种目标调度策略(a,b),然后可以将目标调度策略向后续模块输出。在离线训练过程中,目标调度策略为第一目标调度策略,该第一目标调度策略向仿真调度系统输出。在在线识别过程中,目标调度策略为第二目标调度策略,该第二目标调度策略向实际调度系统输出。
通过步骤D311至D315,实现了一种启发式算法,能够对大规模的决策变量实现快速求解。
本申请实施例中,设置了可以离线设置的第一调度决策模型、参数规模小于第一调度决策模型的第二调度决策模型,以及用于获得标签特征的初始化模型,第一调度决策模型可以离线训练。然后在在线使用过程中,首先,通过初始化模型对在线的第一调度资源数据进行处理,得到第一标签特征,供后续的第一调度决策模型和第二调度决策模型使用,提高训练的质量以及速度。其次,通过第一调度决策模型对第一标签特征和所述第一调度资源数据进行处理,得到第一待选决策信息,这些第一待选决策信息可以在训练第二调度决策模型时,对第二调度决策模型进行校准,由于第一调度决策模型参数规模更大,能够学习到更准的历史规律,其参与第二调度决策的训练,能提高第二调度决策模型的准确度。其次,在线训练过程中,第二调度决策模型以第一标签特征和所述第一调度资源数据作为输入进行学习,能够学习到初始化模型初步的计算结果,能够进一步提高训练速度,满足在线的快速学习的需求。其次,第二调度决策模型的参数规模比较小,在线训练能够更快速;再次,由于设置了与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,然后再结合第一待选决策信息、第二待选决策信息,构建目标函数并进行计算,如此,在线的第二调度决策模型的目标函数可以将几个模型关联起来,结合前述的训练速度更快的优点,使从而使训练得到的第二调度决策模型能够更快速的识别到在线实时数据的所处场景的不确定性模型的稳定性和鲁棒性更强。最后,由于拆分了多个模型,比如初始化模型、第一调度决策模型、第二调度决策模型、决策选择模型,这些模型配合使用,能够使每个模型结构相对简单,约束条件减少,计算更快,能够实现更快的响应速度。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图14,示出了本申请实施例的一种模型训练装置的结构框图,所述装置包括:
第一资源获取模块401,用于获取第一调度资源数据;
第一标签获取模块402,用于将所述第一调度资源数据输入预设的初始化模型,获得第一标签特征;
第一待选决策信息获取模块403,用于将所述第一标签特征和所述第一调度资源数据,输入预设的第一调度决策模型,获得第一待选决策信息;所述第二调度决策子模型的参数规模小于所述第一调度决策模型;
第二待选决策信息获取模块404,用于将所述第一标签特征和所述第一调度资源数据,输入第二调度决策模型,获得第二待选决策信息;
优化参考结果获取模块405,用于根据所述第一待选决策信息、第二待选决策信息、与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果;
第一优化模块406,用于基于所述优化参考结果对所述第二调度决策模型的参数进行优化;所述第二调度决策模型用于根据在线待调度资源数据获得在线待选决策信息,所述在线待选决策信息用于输入预设的决策选择模型以获得用于调度资源的第二目标调度策略。
可选地,所述优化参考结果获取模块405,包括:
第一损失计算子模块, 用于根据第一待选决策信息和所述第二待选决策信息,确定所述第一调度决策模型和所述第二调度决策模型之间的第一信息差异程度值;
第二损失计算子模块, 用于根据所述第二待选决策信息,确定所述第二调度决策模型和所述初始化模型之间的第二信息差异程度值;
第一结果获取子模块, 用于根据所述第一信息差异程度值、所述第二信息差异程度值、所述第一权重值、所述第二权重值,对所述目标函数进行计算,获得优化参考结果。
可选地,所述第一损失计算子模块包括:
第一分布计算子模块,用于将所述第一待选决策信息,输入与所述第一调度决策模型对应的第一激活函数,获得第一分布信息;
第二分布计算子模块,用于将所述第二待选决策信息,输入与所述第二调度决策模型对应的第二激活函数,获得第二分布信息;
第一分布距离计算子模块,用于计算所述第一分布信息和所述第二分布信息之间分布距离,获得所述第一信息差异程度值。
可选地,所述第二损失计算子模块包括:
第三分布计算子模块,用于将所述第二待选决策信息,输入所述初始化模型,获得第三分布信息;
第二分布距离计算子模块,用于计算所述第二分布信息和所述第三分布信息之间分布距离,获得所述第二信息差异程度值。
可选地,所述第一分布计算子模块还用于:将所述第一待选决策信息,输入具有第一提取因子的第一激活函数,获得所述第一分布信息;
所述第二分布计算子模块还用于:将所述第二待选决策信息,输入具有第二提取因子的第二激活函数,获得第二分布信息。
可选地,第一结果获取子模块还用于,将所述第一信息差异程度值与所述第一权重值的乘积,加上所述第二信息差异程度值与所述第二权重值的乘积,获得所述优化参考结果。
可选地,还包括:
第二资源数据获取模块,用于获取第二调度资源数据;
第二标签获取模块,用于将所述第二调度资源数据输入预设的初始化模型,获得第二标签特征;
第三决策获取模块,用于将所述第二标签特征和所述第二调度资源数据,输入预设的第一调度决策模型 ,获得第三待选决策信息;
第一目标决策获取模块,用于将所述第三待选决策信息输入决策选择模型,获得第一目标调度策略;
调度控制模块,用于基于所述目标调度策略进行调度,获得调度结果;
深度学习模块,用于基于所述调度结果,优化所述第一调度决策模型的参数。
可选地,所述第一调度决策模型包括:决策网络和评估网络,所述决策网络包括:源决策子网络和靶向决策子网络,所述评估网络包括至少两个源评估子网络和至少两个靶向评估子网络,所述将所述第三决策获取模块还用于:在至少两个所述靶向评估子网络分别输出第四待选决策信息的情况下,从多个第四待选决策信息中选择符合第一预设条件的信息作为第三待选决策信息。
可选地,所述靶向决策子网络用于向所述靶向评估子网络输出待选决策,所述装置还包括:
噪声添加模块,用于在靶向决策子网络输出待选决策的情况下,在所述待选决策中添加在设定范围内的噪声参数;
第四决策获取模块,用于将带有噪声参数的待选决策和第二调度资源数据,分别输入至少两个所述靶向评估子网络,获得所述第四待选决策信息。
可选地,所述源评估子网络用于更新所述源决策子网络的参数,所述装置还包括:
延迟更新模块,用于在经过预设循环次数之后,更新所述源决策子网络的参数。
可选地,所述调度控制模块还用于:将所述第一目标调度策略输入发送至仿真调度系统,获得与所述第二调度资源数据对应的调度结果;所述仿真调度系统模拟实际调度系统。
可选地,所述装置还包括:
类型确定模块,用于获取所述调度资源数据对应的资源调度场景类型;
模型选择模块,用于根据所述资源调度场景类型,确定与所述资源调度场景类型对应的初始化模型、第一调度决策模型、第二调度决策模型。
可选地,所述初始化模型包括:聚类子模型和二分图子模型;
所述第一标签获取模块还用于:将所述第一调度资源数据输入所述聚类子模型,获得聚类结果;将所述聚类结果,输入所述二分图子模型,获得所述第一标签特征。
当然,所述第一标签获取模块还用于:将所述第二调度资源数据输入所述聚类子模型,获得聚类结果;将所述聚类结果,输入所述二分图子模型,获得所述第二标签特征。
本申请实施例中,设置了可以离线设置的第一调度决策模型、参数规模小于第一调度决策模型的第二调度决策模型,以及用于获得标签特征的初始化模型,第一调度决策模型可以离线训练。然后在在线使用过程中,首先,通过初始化模型对在线的第一调度资源数据进行处理,得到第一标签特征,供后续的第一调度决策模型和第二调度决策模型使用,提高训练的质量以及速度。其次,通过第一调度决策模型对第一标签特征和所述第一调度资源数据进行处理,得到第一待选决策信息,这些第一待选决策信息可以在训练第二调度决策模型时,对第二调度决策模型进行校准,由于第一调度决策模型参数规模更大,能够学习到更准的历史规律,其参与第二调度决策的训练,能提高第二调度决策模型的准确度。其次,在线训练过程中,第二调度决策模型以第一标签特征和所述第一调度资源数据作为输入进行学习,能够学习到初始化模型初步的计算结果,能够进一步提高训练速度,满足在线的快速学习的需求。其次,第二调度决策模型的参数规模比较小,在线训练能够更快速;再次,由于设置了与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,然后再结合第一待选决策信息、第二待选决策信息,构建目标函数并进行计算,如此,在线的第二调度决策模型的目标函数可以将几个模型关联起来,结合前述的训练速度更快的优点,使从而使训练得到的第二调度决策模型能够更快速的识别到在线实时数据的所处场景的不确定性模型的稳定性和鲁棒性更强。最后,由于拆分了多个模型,比如初始化模型、第一调度决策模型、第二调度决策模型、决策选择模型,这些模型配合使用,能够使每个模型结构相对简单,约束条件减少,计算更快,能够实现更快的响应速度。
参照图15,示出了本申请实施例的一种资源调度装置的结构框图,所述装置包括:
在线待调度数据获取模块501,用于获取在线待调度资源数据;
在线待选决策信息获取模块502,用于将所述待调度资源数据输入第二调度决策模型,获得在线待选决策信息;
实际调度策略获取模块503,用于将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略;
实际调度模块504,用于将所述第二目标调度策略发送至实际调度系统以进行资源的调度。
可选地,所述在线待选决策信息包括对第一资源集合中的资源和第二资源集合中的资源进行调度的调度策略,以及与所述调度策略对应的评分值,所述决策选择模型包括:横向次模子模型和纵向次模子模型,所述横向次模子模型用于评判将第一资源集合中的第一资源对象调度给第二资源集合中的第二资源对象的调度总收益,所述纵向次模子模型的用于评判将第二资源集合中的第二资源对象调度给第一资源集合中的第一资源对象的调度总收益,所述实际调度策略获取模块503包括:
实际调度策略计算子模块,用于基于所述横向次模子模型和所述纵向次模子模型,根据所述待选决策信息,确定第二目标调度策略,使第一资源集合中的第一资源对象调度给第二资源集合中的第二资源对象的调度总收益、以及将第二资源集合中的第二资源对象调度给第一资源集合中的第一资源对象的调度总收益符合第二预设条件。
可选地,所述横向次模子模型包括用于关联第一资源对象关联的第一次模函数,所述纵向次模子模型包括用于关联所述第二资源对象的第二次模函数,所述实际调度策略计算子模块还用于:针对所述第一资源对象和第二资源对象的组合,分别基于第一次模函数获取第一资源对象对应的第一调度值,以及基于第二次模函数获取第二资源对象对应的第二调度值;在第t个决策周期中,获取针对第一资源集合的第一调控因子和针对所述第二资源集合的第二调控因子;根据第一调度值和所述第一调控因子按第三预设条件选择K个第一资源对象,以及根据第二调度值和所述第二调控因子按第三预设条件选择K个第二资源对象;基于将所述第一资源对象的第一调度值和所述第二资源对象的第二调度值,对所述第一资源对象和第二资源对象进行双向贪婪匹配,并在配对成功的情况下,生成对应的第二目标调度策略;基于选中的K个第一资源对象和第t个决策周期的第一调控因子,更新下一个周期的第一调控因子,并基于选中的K个第二资源对象和第t个决策周期的第二调控因子,更新下一个周期的第二调控因子。
本申请实施例中,设置了可以离线设置的第一调度决策模型、参数规模小于第一调度决策模型的第二调度决策模型,以及用于获得标签特征的初始化模型,第一调度决策模型可以离线训练。然后在在线使用过程中,首先,通过初始化模型对在线的第一调度资源数据进行处理,得到第一标签特征,供后续的第一调度决策模型和第二调度决策模型使用,提高训练的质量以及速度。其次,通过第一调度决策模型对第一标签特征和所述第一调度资源数据进行处理,得到第一待选决策信息,这些第一待选决策信息可以在训练第二调度决策模型时,对第二调度决策模型进行校准,由于第一调度决策模型参数规模更大,能够学习到更准的历史规律,其参与第二调度决策的训练,能提高第二调度决策模型的准确度。其次,在线训练过程中,第二调度决策模型以第一标签特征和所述第一调度资源数据作为输入进行学习,能够学习到初始化模型初步的计算结果,能够进一步提高训练速度,满足在线的快速学习的需求。其次,第二调度决策模型的参数规模比较小,在线训练能够更快速;再次,由于设置了与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,然后再结合第一待选决策信息、第二待选决策信息,构建目标函数并进行计算,如此,在线的第二调度决策模型的目标函数可以将几个模型关联起来,结合前述的训练速度更快的优点,使从而使训练得到的第二调度决策模型能够更快速的识别到在线实时数据的所处场景的不确定性模型的稳定性和鲁棒性更强。最后,由于拆分了多个模型,比如初始化模型、第一调度决策模型、第二调度决策模型、决策选择模型,这些模型配合使用,能够使每个模型结构相对简单,约束条件减少,计算更快,能够实现更快的响应速度。
此外,参照图1,其示出了本申请实施例的一种资源调度系统的结构框图,所述资源调度系统包括决策模块、仿真调度系统、实际调度系统,所述决策模块中配置有计算机程序,所述计算机程序被所述决策模块执行时实现如前述的方法。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本申请实施例中各方法步骤的指令(instructions)。
本申请实施例提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个的方法。本申请实施例中,电子设备包括服务器、网关、子设备等,子设备为物联网设备等设备。
本公开的实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的装置,该装置可包括服务器(集群)、终端设备如IoT设备等电子设备。
图16示意性地示出了可被用于实现本申请实施例中的各个实施例的示例性装置1300。
对于一个实施例,图16示出了示例性装置1300,该装置具有一个或多个处理器1302、被耦合到(一个或多个)处理器1302中的至少一个的控制模块(芯片组)1304、被耦合到控制模块1304的存储器1306、被耦合到控制模块1304的非易失性存储器(NVM)/存储设备1308、被耦合到控制模块1304的一个或多个输入/输出设备1310,和被耦合到控制模块1304的网络接口1312。
处理器1302可包括一个或多个单核或多核处理器,处理器1302可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,装置1300 能够作为本申请实施例中网关等服务器设备。
在一些实施例中,装置1300 可包括具有指令1314的一个或多个计算机可读介质(例如,存储器1306或NVM/ 存储设备1308) 和与该一个或多个计算机可读介质相合并被配置为执行指令1314以实现模块从而执行本公开中的动作的一个或多个处理器1302。
对于一个实施例,控制模块1304可包括任意适当的接口控制器,以向(一个或多个)处理器1302中的至少一个和/或与控制模块1304通信的任意适当的设备或组件提供任意适当的接口。
控制模块1304可包括存储器控制器模块,以向存储器1306提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。
存储器1306可被用于例如为装置1300加载和存储数据和/或指令1314。对于一个实施例,存储器1306可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,存储器1306可包括双倍数据速率四同步动态随机存取存储器(DDR4SDRAM) 。
对于一个实施例,控制模块1304可包括一个或多个输入/输出控制器,以向NVM/存储设备1308及(一个或多个)输入/输出设备1310 提供接口。
例如,NVM/存储设备1308可被用于存储数据和/或指令1314。NVM/存储设备1308可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(HDD) 、一个或多个光盘(CD) 驱动器和/或一个或多个数字通用光盘(DVD) 驱动器)。
NVM/存储设备1308可包括在物理上作为装置1300 被安装在其上的设备的一部分的存储资源,或者其可被该设备访问可不必作为该设备的一部分。例如, NVM/存储设备1308可通过网络经由(一个或多个)输入/输出设备1310 进行访问。
(一个或多个)输入/输出设备1310 可为装置1300 提供接口以与任意其他适当的设备通信,输入/输出设备1310可以包括通信组件、拼音组件、传感器组件等。网络接口1312可为装置1300 提供接口以通过一个或多个网络通信,装置1300 可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如WiFi、2G、3G、4G、5G等,或它们的组合进行无线通信。
对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器(例如,存储器控制器模块) 的逻辑封装在一起。对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑封装在一起以形成系统级封装(SiP) 。对于一个实施例, (一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例, (一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(SoC) 。
在各个实施例中,装置1300可以但不限于是:服务器、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)等终端设备。在各个实施例中,装置1300 可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,装置1300包括一个或多个摄像机、键盘、液晶显示器(LCD) 屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC) 和扬声器。
本申请实施例提供了一种电子设备,包括:一个或多个处理器;和,其上存储有指令的一个或多个机器可读介质,当由一个或多个处理器执行时,使得电子设备执行如本申请实施例中一个或多个的方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、和流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程信息处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程信息处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程信息处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程信息处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例和落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请实施例所提供的模型训练方法及装置、资源调度方法及装置、资源调度系统、电子设备及计算机可读存储介质,进行了详细介绍,本文中应用了具体个例对本申请实施例的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请实施例的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请实施例的限制。
Claims (21)
1.一种模型训练方法,其特征在于,所述方法包括:
获取第一调度资源数据;
将所述第一调度资源数据输入预设的初始化模型,获得第一标签特征;
将所述第一标签特征和所述第一调度资源数据,输入预设的第一调度决策模型,获得第一待选决策信息;
将所述第一标签特征和所述第一调度资源数据,输入第二调度决策模型,获得第二待选决策信息;所述第二调度决策子模型的参数规模小于所述第一调度决策模型;
根据所述第一待选决策信息、第二待选决策信息、与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果;
基于所述优化参考结果对所述第二调度决策模型的参数进行优化;所述第二调度决策模型用于根据在线待调度资源数据获得在线待选决策信息,所述在线待选决策信息用于输入预设的决策选择模型以获得用于调度资源的第二目标调度策略。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一待选决策信息、第二待选决策信息、与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果,包括:
根据第一待选决策信息和所述第二待选决策信息,确定所述第一调度决策模型和所述第二调度决策模型之间的第一信息差异程度值;
根据所述第二待选决策信息,确定所述第二调度决策模型和所述初始化模型之间的第二信息差异程度值;
根据所述第一信息差异程度值、所述第二信息差异程度值、所述第一权重值、所述第二权重值,对所述目标函数进行计算,获得优化参考结果。
3.根据权利要求2所述的方法,其特征在于,所述根据第一待选决策信息和所述第二待选决策信息,确定所述第一调度决策模型和所述第二调度决策模型之间的第一信息差异程度值,包括:
将所述第一待选决策信息,输入与所述第一调度决策模型对应的第一激活函数,获得第一分布信息;
将所述第二待选决策信息,输入与所述第二调度决策模型对应的第二激活函数,获得第二分布信息;
计算所述第一分布信息和所述第二分布信息之间分布距离,获得所述第一信息差异程度值。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第二待选决策信息,确定所述第二调度决策模型和所述初始化模型之间的第二信息差异程度值,包括:
将所述第二待选决策信息,输入所述初始化模型,获得第三分布信息;
计算所述第二分布信息和所述第三分布信息之间分布距离,获得所述第二信息差异程度值。
5.根据权利要求3所述的方法,其特征在于,所述将所述第一待选决策信息,输入与所述第一调度决策模型对应的第一激活函数,获得第一分布信息,包括:
将所述第一待选决策信息,输入具有第一提取因子的第一激活函数,获得所述第一分布信息;
所述将所述第二待选决策信息,输入与所述第二调度决策模型对应的第二激活函数,获得第二分布信息,包括:
将所述第二待选决策信息,输入具有第二提取因子的第二激活函数,获得第二分布信息。
6.根据权利要求2所述的方法,其特征在于,根据所述第一信息差异程度值、第二信息差异程度值、所述第一权重值、所述第二权重值,对所述目标函数进行计算,获得优化参考结果,包括:
将所述第一信息差异程度值与所述第一权重值的乘积,加上所述第二信息差异程度值与所述第二权重值的乘积,获得所述优化参考结果。
7.根据权利要求1所述的方法,其特征在于,还包括:
获取第二调度资源数据;
将所述第二调度资源数据输入预设的初始化模型,获得第二标签特征;
将所述第二标签特征和所述第二调度资源数据,输入预设的第一调度决策模型 ,获得第三待选决策信息;
将所述第三待选决策信息输入决策选择模型,获得第一目标调度策略;
基于所述目标调度策略进行调度,获得调度结果;
基于所述调度结果,优化所述第一调度决策模型的参数。
8.根据权利要求7所述的方法,其特征在于,所述第一调度决策模型包括:决策网络和评估网络,所述决策网络包括:源决策子网络和靶向决策子网络,所述评估网络包括至少两个源评估子网络和至少两个靶向评估子网络,所述将所述第二标签特征和所述第二调度资源数据,输入预设的第一调度决策模型 ,获得第三待选决策信息,包括:
在至少两个所述靶向评估子网络分别输出第四待选决策信息的情况下,从多个第四待选决策信息中选择符合第一预设条件的信息作为第三待选决策信息。
9.根据权利要求8所述的方法,其特征在于,所述靶向决策子网络用于向所述靶向评估子网络输出待选决策,所述方法还包括:
在靶向决策子网络输出待选决策的情况下,在所述待选决策中添加在设定范围内的噪声参数;
将带有噪声参数的待选决策和第二调度资源数据,分别输入至少两个所述靶向评估子网络,获得所述第四待选决策信息。
10.根据权利要求8所述的方法,其特征在于,所述源评估子网络用于更新所述源决策子网络的参数,所述方法还包括:
在经过预设循环次数之后,更新所述源决策子网络的参数。
11.根据权利要求7所述的方法,其特征在于,所述基于所述目标调度策略进行调度,获得调度结果,包括:
将所述第一目标调度策略输入发送至仿真调度系统,获得与所述第二调度资源数据对应的调度结果;所述仿真调度系统模拟实际调度系统。
12.根据权利要求1所述的方法,其特征在于,还包括:
获取所述调度资源数据对应的资源调度场景类型;
根据所述资源调度场景类型,确定与所述资源调度场景类型对应的初始化模型、第一调度决策模型、第二调度决策模型。
13.根据权利要求1所述的方法,其特征在于,所述初始化模型包括:聚类子模型和二分图子模型;
所述将所述第一调度资源数据输入预设的初始化模型 ,获得第一标签特征,包括:
将所述第一调度资源数据输入所述聚类子模型,获得聚类结果;
将所述聚类结果,输入所述二分图子模型,获得所述第一标签特征。
14.一种资源调度方法,其特征在于,所述方法包括:
获取在线待调度资源数据;
将所述待调度资源数据输入第二调度决策模型,获得在线待选决策信息;
将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略;
将所述第二目标调度策略发送至实际调度系统以进行资源的调度;
其中,所述第二调度决策模型根据权利要求1-13任一项所述的方法获得。
15.根据权利要求14所述的方法,其特征在于,所述在线待选决策信息包括对第一资源集合中的资源和第二资源集合中的资源进行调度的调度策略,以及与所述调度策略对应的评分值,所述决策选择模型包括:横向次模子模型和纵向次模子模型,所述横向次模子模型用于评判将第一资源集合中的第一资源对象调度给第二资源集合中的第二资源对象的调度总收益,所述纵向次模子模型的用于评判将第二资源集合中的第二资源对象调度给第一资源集合中的第一资源对象的调度总收益,所述将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略,包括:
基于所述横向次模子模型和所述纵向次模子模型,根据所述待选决策信息,确定第二目标调度策略,使第一资源集合中的第一资源对象调度给第二资源集合中的第二资源对象的调度总收益、以及将第二资源集合中的第二资源对象调度给第一资源集合中的第一资源对象的调度总收益符合第二预设条件。
16.根据权利要求15所述的方法,其特征在于,所述横向次模子模型包括用于关联第一资源对象关联的第一次模函数,所述纵向次模子模型包括用于关联所述第二资源对象的第二次模函数,所述基于所述横向次模子模型和所述纵向次模子模型,根据所述待选决策信息,确定第二目标调度策略,包括:
针对所述第一资源对象和第二资源对象的组合,分别基于第一次模函数获取第一资源对象对应的第一调度值,以及基于第二次模函数获取第二资源对象对应的第二调度值;
在第t个决策周期中,获取针对第一资源集合的第一调控因子和针对所述第二资源集合的第二调控因子;
根据第一调度值和所述第一调控因子按第三预设条件选择K个第一资源对象,以及根据第二调度值和所述第二调控因子按第三预设条件选择K个第二资源对象;
基于将所述第一资源对象的第一调度值和所述第二资源对象的第二调度值,对所述第一资源对象和第二资源对象进行双向贪婪匹配,并在配对成功的情况下,生成对应的第二目标调度策略;
基于选中的K个第一资源对象和第t个决策周期的第一调控因子,更新下一个周期的第一调控因子,并基于选中的K个第二资源对象和第t个决策周期的第二调控因子,更新下一个周期的第二调控因子。
17.一种模型训练装置,其特征在于,所述装置包括:
第一资源获取模块,用于获取第一调度资源数据;
第一标签获取模块,用于将所述第一调度资源数据输入预设的初始化模型,获得第一标签特征;
第一待选决策信息获取模块,用于将所述第一标签特征和所述第一调度资源数据,输入预设的第一调度决策模型,获得第一待选决策信息;第二待选决策信息获取模块,用于将所述第一标签特征和所述第一调度资源数据,输入第二调度决策模型,获得第二待选决策信息;所述第二调度决策子模型的参数规模小于所述第一调度决策模型;
优化参考结果获取模块,用于根据所述第一待选决策信息、第二待选决策信息、与所述第一调度决策模型对应的第一权重值以及与所述第二调度决策子模型对应的第二权重值,对与所述第二调度决策模型对应的目标函数进行计算,获得优化参考结果;
第一优化模块,用于基于所述优化参考结果对所述第二调度决策模型的参数进行优化;所述第二调度决策模型用于根据在线待调度资源数据获得在线待选决策信息,所述在线待选决策信息用于输入预设的决策选择模型以获得用于调度资源的第二目标调度策略。
18.一种资源调度装置,其特征在于,所述装置包括:
在线待调度数据获取模块,用于获取在线待调度资源数据;
在线待选决策信息获取模块,用于将所述待调度资源数据输入第二调度决策模型,获得在线待选决策信息;
实际调度策略获取模块,用于将所述在线待选决策信息输入预设的决策选择模型,获得第二目标调度策略;
实际调度模块,用于将所述第二目标调度策略发送至实际调度系统以进行资源的调度;
其中,所述第二调度决策模型根据权利要求1-13任一项所述的方法获得。
19.一种资源调度系统,其特征在于,所述资源调度系统包括决策模块、仿真调度系统、实际调度系统,所述决策模块中配置有计算机程序,所述计算机程序被所述决策模块执行时实现如权利要求1至16任一项所述的方法。
20.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,处理器执行程序时实现如权利要求1至16中任一项的方法的步骤。
21.一种计算机可读存储介质,其特征在于,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如权利要求1至16中任一项的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311015019.9A CN116738239B (zh) | 2023-08-11 | 2023-08-11 | 模型训练方法、资源调度方法及装置、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311015019.9A CN116738239B (zh) | 2023-08-11 | 2023-08-11 | 模型训练方法、资源调度方法及装置、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116738239A true CN116738239A (zh) | 2023-09-12 |
CN116738239B CN116738239B (zh) | 2023-11-24 |
Family
ID=87906390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311015019.9A Active CN116738239B (zh) | 2023-08-11 | 2023-08-11 | 模型训练方法、资源调度方法及装置、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116738239B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180357540A1 (en) * | 2017-06-09 | 2018-12-13 | Korea Advanced Institute Of Science And Technology | Electronic apparatus and method for optimizing trained model |
CN109960573A (zh) * | 2018-12-29 | 2019-07-02 | 天津南大通用数据技术股份有限公司 | 一种基于智能感知的跨域计算任务调度方法及系统 |
CN110321422A (zh) * | 2018-03-28 | 2019-10-11 | 腾讯科技(深圳)有限公司 | 在线训练模型的方法、推送方法、装置以及设备 |
CN111724001A (zh) * | 2020-06-29 | 2020-09-29 | 重庆大学 | 一种基于深度强化学习的飞行器探测传感器资源调度方法 |
CN113112145A (zh) * | 2021-04-08 | 2021-07-13 | 清华大学 | 一种数据处理方法、装置、电子设备及存储介质 |
WO2021202573A1 (en) * | 2020-03-30 | 2021-10-07 | Oracle International Corporation | Method and system for constraint based hyperparameter tuning |
CN114021770A (zh) * | 2021-09-14 | 2022-02-08 | 北京邮电大学 | 网络资源优化方法、装置、电子设备及存储介质 |
CN114066333A (zh) * | 2022-01-17 | 2022-02-18 | 阿里巴巴达摩院(杭州)科技有限公司 | 数据处理方法及装置 |
CN114679355A (zh) * | 2020-12-24 | 2022-06-28 | 华为技术有限公司 | 通信方法和装置 |
CN115454005A (zh) * | 2022-09-29 | 2022-12-09 | 河海大学常州校区 | 一种面向有限运输资源场景的制造车间动态智能调度方法及装置 |
US20220405570A1 (en) * | 2021-06-11 | 2022-12-22 | International Business Machines Corporation | Post-hoc loss-calibration for bayesian neural networks |
CN115577864A (zh) * | 2022-12-07 | 2023-01-06 | 国网浙江省电力有限公司金华供电公司 | 基于多模型组合运算的配网运行优化调度方法 |
CN116306868A (zh) * | 2023-03-01 | 2023-06-23 | 支付宝(杭州)信息技术有限公司 | 一种模型的处理方法、装置及设备 |
CN116345578A (zh) * | 2023-05-26 | 2023-06-27 | 南方电网数字电网研究院有限公司 | 基于深度确定性策略梯度的微电网运行优化调度方法 |
CN116542445A (zh) * | 2023-04-07 | 2023-08-04 | 沈阳工业大学 | 基于深度强化学习的装备制造车间智能调度方法和系统 |
-
2023
- 2023-08-11 CN CN202311015019.9A patent/CN116738239B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180357540A1 (en) * | 2017-06-09 | 2018-12-13 | Korea Advanced Institute Of Science And Technology | Electronic apparatus and method for optimizing trained model |
CN110321422A (zh) * | 2018-03-28 | 2019-10-11 | 腾讯科技(深圳)有限公司 | 在线训练模型的方法、推送方法、装置以及设备 |
CN109960573A (zh) * | 2018-12-29 | 2019-07-02 | 天津南大通用数据技术股份有限公司 | 一种基于智能感知的跨域计算任务调度方法及系统 |
WO2021202573A1 (en) * | 2020-03-30 | 2021-10-07 | Oracle International Corporation | Method and system for constraint based hyperparameter tuning |
CN111724001A (zh) * | 2020-06-29 | 2020-09-29 | 重庆大学 | 一种基于深度强化学习的飞行器探测传感器资源调度方法 |
CN114679355A (zh) * | 2020-12-24 | 2022-06-28 | 华为技术有限公司 | 通信方法和装置 |
CN113112145A (zh) * | 2021-04-08 | 2021-07-13 | 清华大学 | 一种数据处理方法、装置、电子设备及存储介质 |
US20220405570A1 (en) * | 2021-06-11 | 2022-12-22 | International Business Machines Corporation | Post-hoc loss-calibration for bayesian neural networks |
CN114021770A (zh) * | 2021-09-14 | 2022-02-08 | 北京邮电大学 | 网络资源优化方法、装置、电子设备及存储介质 |
CN114066333A (zh) * | 2022-01-17 | 2022-02-18 | 阿里巴巴达摩院(杭州)科技有限公司 | 数据处理方法及装置 |
WO2023134759A1 (zh) * | 2022-01-17 | 2023-07-20 | 阿里巴巴达摩院(杭州)科技有限公司 | 数据处理方法及装置 |
CN115454005A (zh) * | 2022-09-29 | 2022-12-09 | 河海大学常州校区 | 一种面向有限运输资源场景的制造车间动态智能调度方法及装置 |
CN115577864A (zh) * | 2022-12-07 | 2023-01-06 | 国网浙江省电力有限公司金华供电公司 | 基于多模型组合运算的配网运行优化调度方法 |
CN116306868A (zh) * | 2023-03-01 | 2023-06-23 | 支付宝(杭州)信息技术有限公司 | 一种模型的处理方法、装置及设备 |
CN116542445A (zh) * | 2023-04-07 | 2023-08-04 | 沈阳工业大学 | 基于深度强化学习的装备制造车间智能调度方法和系统 |
CN116345578A (zh) * | 2023-05-26 | 2023-06-27 | 南方电网数字电网研究院有限公司 | 基于深度确定性策略梯度的微电网运行优化调度方法 |
Non-Patent Citations (3)
Title |
---|
SAFA BEN ATITALLAH等: "Randomly Initialized Convolutional Neural Network for the Recognition of COVID-19 using X-ray Images", HTTP://DOI.ORG/10.48550/ARXIV.2015.08199, pages 1 - 30 * |
李捷;余涛;潘振宁;: "基于强化学习的增量配电网实时随机调度方法", 电网技术, no. 09, pages 140 - 151 * |
申博豪: "基于孪生网络的目标跟踪算法的鲁棒优化研究", 中国优秀硕士学位论文全文数据库 信息科技辑, vol. 2021, no. 6, pages 138 - 506 * |
Also Published As
Publication number | Publication date |
---|---|
CN116738239B (zh) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | A proactive material handling method for CPS enabled shop-floor | |
Li et al. | Machine learning and optimization for production rescheduling in Industry 4.0 | |
Singh et al. | A matheuristic for AGV scheduling with battery constraints | |
CN113099729B (zh) | 生产调度的深度强化学习 | |
CN109375601A (zh) | 基于数据驱动建模与仿真优化的流水线规划方法及设备 | |
Zaeh et al. | A holistic approach for the cognitive control of production systems | |
WO2020108465A1 (zh) | 订单分配方法、装置、电子设备和存储介质 | |
Cai et al. | Real-time scheduling simulation optimisation of job shop in a production-logistics collaborative environment | |
Peng et al. | Deep reinforcement learning approach for capacitated supply chain optimization under demand uncertainty | |
EP3640873A1 (en) | System and method for concurrent dynamic optimization of replenishment decision in networked node environment | |
Mortazavi et al. | A novel chaotic imperialist competitive algorithm for production and air transportation scheduling problems | |
Chawla et al. | A clonal selection algorithm for minimizing distance travel and back tracking of automatic guided vehicles in flexible manufacturing system | |
Nikabadi et al. | A hybrid algorithm for unrelated parallel machines scheduling | |
JP2011159230A (ja) | スケジュール作成支援システム、スケジュール作成支援方法、及びスケジュール作成支援プログラム | |
Ekren et al. | A reinforcement learning approach for transaction scheduling in a shuttle‐based storage and retrieval system | |
Zhang et al. | Order picking optimization in a robotic mobile fulfillment system | |
Julaiti et al. | Stochastic parallel machine scheduling using reinforcement learning | |
Chang et al. | Digital twin and deep reinforcement learning enabled real-time scheduling for complex product flexible shop-floor | |
Jia et al. | Dynamic container drayage with uncertain request arrival times and service time windows | |
Wen et al. | An effective hybrid algorithm for joint scheduling of machines and AGVs in flexible job shop | |
Zhou et al. | A dynamic material handling scheduling method based on elite opposition learning self-adaptive differential evolution-based extreme learning machine (EOADE-ELM) and knowledge base (KB) for line-integrated supermarkets | |
CN116738239B (zh) | 模型训练方法、资源调度方法及装置、系统、设备及介质 | |
Xiao et al. | Berth Allocation Problem with Quay Crane Assignment for Container Terminals Based on Rolling‐Horizon Strategy | |
Jafari-Eskandari et al. | A robust optimisation approach for the milk run problem with time windows with inventory uncertainty: an auto industry supply chain case study | |
Li | Assembly line balancing under uncertain task time and demand volatility |
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 |