CN115271130A - 面向船舶主动力设备维修订单的动态调度方法及系统 - Google Patents

面向船舶主动力设备维修订单的动态调度方法及系统 Download PDF

Info

Publication number
CN115271130A
CN115271130A CN202211208159.3A CN202211208159A CN115271130A CN 115271130 A CN115271130 A CN 115271130A CN 202211208159 A CN202211208159 A CN 202211208159A CN 115271130 A CN115271130 A CN 115271130A
Authority
CN
China
Prior art keywords
order
scheduling
global resource
global
local
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
CN202211208159.3A
Other languages
English (en)
Other versions
CN115271130B (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.)
Hefei University of Technology
Original Assignee
Hefei University of 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 Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN202211208159.3A priority Critical patent/CN115271130B/zh
Publication of CN115271130A publication Critical patent/CN115271130A/zh
Application granted granted Critical
Publication of CN115271130B publication Critical patent/CN115271130B/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/20Administration of product repair or maintenance
    • 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/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • 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
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • 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
    • G06Q10/06314Calendaring for a resource
    • 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
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S10/00Systems supporting electrical power generation, transmission or distribution
    • Y04S10/50Systems or methods supporting the power network operation or management, involving a certain degree of interaction with the load-side end user applications

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Biophysics (AREA)
  • Educational Administration (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Physiology (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Genetics & Genomics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种面向船舶主动力设备维修订单的动态调度方法及系统,涉及分布式多项目调度技术领域。本发明以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的全局资源需求;然后基于上述本地调度计划和全局资源需求进行全局资源动态调度,并利用深度强化学习方法获取发生全局资源冲突时的全局资源分配方案,各订单根据该全局资源分配方案调整本地调度计划并更新全局资源需求;最后不断重复执行上述过程直至各订单在进行全局资源动态调度过程时不存在全局资源冲突时结束调度,并输出此时各订单所对应的最终调度计划和全局资源分配方案。

Description

面向船舶主动力设备维修订单的动态调度方法及系统
技术领域
本发明涉及分布式多项目调度技术领域,具体涉及一种面向船舶主动力设备维修订单的动态调度方法及系统。
背景技术
船舶主动力设备维修订单管理具有地域和所属组织上的分散性,且在维修项目实际调度过程中涉及多订单(每个订单可视为一个子项目)本地资源(如随船备件等)的独立调度决策和多订单之间共享资源(如共享维修备件、维修人员等可更新资源)的协调分配决策,是典型的分布式多项目调度问题。
目前,对于分布式多项目调度问题的研究,有通过拍卖算法、博弈谈判方法和启发式方法等得出各订单(各订单即各子项目)的前摄性调度计划,但是这些方法多局限于确定的静态环境。然而,船舶主动力设备维修等企业工程实际中可能会出现诸如订单取消、维修设备故障、天气状况和全局资源不可用等不确定性因素,这些不确定性因素会导致维修任务工期偏离预计,进一步造成原调度计划的不可行。越来越多的学者将多智能体系统(muti-agent system,MAS)与协调机制引入分布式多项目调度的研究中,实现了代表不同管理主体的智能体之间的信息通讯和协同管理。
然而,利用传统基于静态信息的MAS与协调机制的方法虽然支持各决策者之间在进行项目沟通协调以及实现原调度计划不可行时调度计划的实时修复和调整,但是缺乏针对动态环境的协调机制设计。由此可见,现有技术对于存在维修订单动态到达、取消和修改的多层级决策主体的不确定动态调度环境不适用,或所求解的质量不精准。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种面向船舶主动力设备维修订单的动态调度方法及系统,解决了现有技术无法对船舶主动力设备维修订单动态调度问题进行精准求解的问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:
第一方面,本发明首先提出了一种面向船舶主动力设备维修订单的动态调度方法,所述方法包括:
S1、以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;
S2、基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,以分布式多订单总工期最小化为目标,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新;
S3、重复执行S1和S2直至各订单在进行全局资源动态调度过程不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
优选的,所述S1包括:
S11、初始化本地调度算法的初始种群,并设置所述本地调度算法的输入参数和执行参数;所述本地调度算法包括关键链改进搜索的遗传算法;所述执行参数包括最大迭代次数交叉概率、变异概率、改进搜索概率;
S12、对所述初始种群依次执行包括选择、交叉、变异、以及基于改进关键链搜索的操作,并计算经过所述操作后个体的适应度值并更新种群;
S13、判断是否达到所述最大迭代次数,若否,则循环执行S12;若是,本地调度算法结束,并输出本地调度计划以及各订单的全局资源需求。
优选的,所述基于改进关键链搜索的操作包括:以改进搜索概率p f 执行基于关键链的改进搜索算子,具体操作为:
对选中的染色体执行前向后向调度生成机制并确定关键维修任务集合;
随机选择一个关键维修任务并记其当前位置为c,找到其紧前维修任务所在的最大位置a和紧后维修任务所在的最小位置b
ca+2,且对该关键维修任务位置的提前不会造成其他关键维修任务的推迟,则将关键维修任务提前至位置(a+1)。
优选的,所述S2包括:
S21、基于各订单的所述本地调度计划确定各订单在各时段的全局资源需求是否存在资源冲突;
S22、将所述全局资源动态调度的问题转化为马尔可夫决策过程;
S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果。
优选的,所述S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果包括:
S231、资源代理根据协调代理选择的动作唯一确定的冲突项目优先列表生成冲突维修任务优先序列,执行该动作,安排冲突维修任务的开始时间并完成全局资源的分配,将重新安排后各个冲突维修任务的开始时间发送给项目代理;
S232、每个项目经理根据资源代理发送的冲突维修任务开始时间和全局资源分配方案调整本地调度计划,并将调整后的各时段的全局资源需求和本地调度计划返回给资源代理,更新状态;
S233、资源代理识别下一个决策点状态和下一个预处理序列,观察奖励;
S234、获得样本并存储于经验池中,随机抽取小批量样本;
S235、协调代理根据Q目标网络计算TD目标值;
S236、协调代理计算每个样本的TD目标差,在损失函数上执行Adam优化,每隔C步重设Q目标网络的模型参数值与Q预测网络相等;其中Q目标网络和Q预测网络结构完全相同。
第二方面,本发明还提出了一种面向船舶主动力设备维修订单的动态调度系统,所述系统包括:
本地调度计划获取模块,用于以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;
本地调度计划更新模块,用于以分布式多订单总工期最小化为目标,基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新;
全局调度计划获取模块,用于当本地调度计划获取模块和本地调度计划更新模块重复执行动作且各订单在进行全局资源动态调度过程中不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
优选的,所述本地调度计划获取模块以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求包括:
S11、初始化本地调度算法的初始种群,并设置所述本地调度算法的输入参数和执行参数;所述本地调度算法包括关键链改进搜索的遗传算法;所述执行参数包括最大迭代次数交叉概率、变异概率、改进搜索概率;
S12、对所述初始种群依次执行包括选择、交叉、变异、以及基于改进关键链搜索的操作,并计算经过所述操作后个体的适应度值并更新种群;
S13、判断是否达到所述最大迭代次数,若否,则循环执行S12;若是,本地调度算法结束,并输出本地调度计划以及各订单的全局资源需求。
优选的,所述基于改进关键链搜索的操作包括:以改进搜索概率p f 执行基于关键链的改进搜索算子,具体操作为:
对选中的染色体执行前向后向调度生成机制并确定关键维修任务集合;
随机选择一个关键维修任务并记其当前位置为c,找到其紧前维修任务所在的最大位置a和紧后维修任务所在的最小位置b
ca+2,且对该关键维修任务位置的提前不会造成其他关键维修任务的推迟,则将关键维修任务提前至位置(a+1)。
优选的,所述本地调度计划更新模块基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新包括:
S21、基于各订单的所述本地调度计划确定各订单在各时段的全局资源需求是否存在资源冲突;
S22、将所述全局资源动态调度的问题转化为马尔可夫决策过程;
S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果。
优选的,所述S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果包括:
S231、资源代理根据协调代理选择的动作唯一确定的冲突项目优先列表生成冲突维修任务优先序列,执行该动作,安排冲突维修任务的开始时间并完成全局资源的分配,将重新安排后各个冲突维修任务的开始时间发送给项目代理;
S232、每个项目经理根据资源代理发送的冲突维修任务开始时间和全局资源分配方案调整本地调度计划,并将调整后的各时段的全局资源需求和本地调度计划返回给资源代理,更新状态;
S233、资源代理识别下一个决策点状态和下一个预处理序列,观察奖励;
S234、获得样本并存储于经验池中,随机抽取小批量样本;
S235、协调代理根据Q目标网络计算TD目标值;
S236、协调代理计算每个样本的TD目标差,在损失函数上执行Adam优化,每隔C步重设Q目标网络的模型参数值与Q预测网络相等;其中,Q目标网络和Q预测网络结构完全相同。
(三)有益效果
本发明提供了一种面向船舶主动力设备维修订单的动态调度方法及系统。与现有技术相比,具备以下有益效果:
本发明首先以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;然后基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,并利用深度强化学习方法获取发生全局资源冲突时的全局资源分配方案,各订单根据该全局资源分配方案调整本地调度计划并更新全局资源需求;最后不断重复执行上述过程直至各订单在进行全局资源动态调度过程不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源分配方案作为全局资源动态调度的调度结果。本发明将传统智能优化方法与深度强化学习相结合,不仅可以克服强化学习无法解决大规模问题和高维度问题的局限性,还通过将调度问题转换为多阶段决策的马尔可夫决策问题,使得该方法适应于存在订单取消、维修设备故障、天气状况和全局资源不可用等不确定事件的动态环境,从而可以对船舶主动力设备维修订单动态调度问题进行精准求解,进而高效精准指导船舶主动力设备的维修工作,提高了企业维修调度运营的稳定性,降低了企业的运行成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种面向船舶主动力设备维修订单的动态调度方法流程图;
图2为本发明实施例中PA基于关键链改进搜索的遗传算法的流程图;
图3为本发明实施例中项目维修任务网络图;
图4为本发明实施例中基于父代母代染色体的交叉过程示意图;
图5为本发明实施例中RA和CA基于深度强化学习的DQN算法流程图;
图6为本发明实施例中基于RA调度安排结果的本地调度计划修正流程图;
图7为本发明实施例中预测Q网络和目标Q网络的网络结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例通过提供一种面向船舶主动力设备维修订单的动态调度方法及系统,解决了现有技术无法对船舶主动力设备维修订单动态调度问题进行精准求解的问题,实现了提高企业维修调度运营的稳定性,降低企业运行成本的目的。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
实施例1:
第一方面,本发明首先提出了一种面向船舶主动力设备维修订单的动态调度方法,参见图1,该方法包括:
S1、以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;
S2、基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,利用深度强化学习方法获取各订单(调整后的本地调度计划和各订单调整后的全局资源需求并进行更新;
S3、重复执行S1和S2直至各订单在进行全局资源动态调度过程不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
可见,本实施例首先以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;然后基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,并利用深度强化学习方法获取发生全局资源冲突时的全局资源分配方案,各订单根据该全局资源分配方案调整本地调度计划并更新全局资源需求;最后不断重复执行上述过程直至各订单在进行全局资源动态调度过程不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源分配方案作为全局资源动态调度的调度结果。本实施例将传统智能优化方法与深度强化学习相结合,不仅可以克服强化学习无法解决大规模问题和高维度问题的局限性,还通过将调度问题转换为多阶段决策的马尔可夫决策问题,使得该方法适应于存在订单取消、维修设备故障、天气状况和全局资源不可用等不确定事件的动态环境,从而可以对船舶主动力设备维修订单动态调度问题进行精准求解,进而高效精准指导船舶主动力设备的维修工作,提高了企业维修调度运营的稳定性,降低了企业的运行成本。
本实施例的一种面向船舶主动力设备维修订单的动态调度方法包括但不限于求解面向船舶主动力设备维修订单的分布式多项目动态调度问题,下面我们以船舶主动力设备维修订单的动态调度问题为例,并结合附图1-6,以及对S1-S3具体步骤的解释,来详细说明本发明一个实施例的实现过程。
S1、以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求。
将每个发出维修订单的船东视作项目经理(Project Agent,PA),即各订单(各订单即为各子项目)负责人,各项目经理PA在考虑本地资源约束的前提下,以其对应的各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成本地调度计划,并在本地调度计划的基础上评估各订单在各时段对全局资源的需求,并提交本地调度计划和各订单在各时段的全局资源需求给资源代理(Resource Agent,RA)处理并由协调代理(Coordination Agent,CA),即深度强化学习代理(DQN -agent)决定各订单获取全局资源的优先级。具体的,参见图2,各项目经理PA采用基于关键链改进搜索的遗传算法生成本地调度计划的步骤如下:
S11、初始化PA本地调度算法(关键链改进搜索的遗传算法)的初始种群,设置所述算法的输入参数和执行参数。
设置关键链改进搜索的遗传算法的输入参数,包括各订单
Figure DEST_PATH_IMAGE002
包含的维修任务数量
Figure DEST_PATH_IMAGE004
、隶属于该订单i的第j个维修任务
Figure DEST_PATH_IMAGE006
的工期
Figure DEST_PATH_IMAGE008
、维修任务
Figure 54287DEST_PATH_IMAGE006
的紧后任务集合
Figure DEST_PATH_IMAGE010
、维修任务
Figure 234794DEST_PATH_IMAGE006
对本地资源l的需求量
Figure DEST_PATH_IMAGE012
、各订单i的本地资源总数
Figure DEST_PATH_IMAGE014
和本地资源l资源总供给量
Figure DEST_PATH_IMAGE016
初始化关键链改进搜索的遗传算法对应的种群,以及设置该算法的执行参数,包括:
Figure DEST_PATH_IMAGE018
基于编码规则初始化关键链改进搜索的遗传算法对应的种群。进行编码,将本地调度计划的解空间与所述关键链改进搜索的遗传算法的解空间建立一一对应的关系。具体编码策略为将染色体编码为随机生成的符合紧前紧后约束关系的维修任务序列AL i ,作为关键链改进搜索的遗传算法的初始种群;
Figure DEST_PATH_IMAGE020
设置关键链改进搜索的遗传算法的执行参数。设置的执行参数包括最大迭代次数
Figure DEST_PATH_IMAGE022
,种群规模
Figure DEST_PATH_IMAGE024
_size=50,交叉概率
Figure DEST_PATH_IMAGE026
,变异概率
Figure DEST_PATH_IMAGE028
,改进搜索概率
Figure DEST_PATH_IMAGE030
S12、对所述初始种群依次执行包括选择、交叉、变异、以及基于改进关键链搜索的操作,计算经过所述操作后个体的适应度值并更新种群。具体的,
确定关键链改进搜索的遗传算法的适应度函数。本地调度计划制定的优化目标为项目工期最小化,因此采用目标函数求倒数的方式构造解的适应值函数,即本阶段的遗传算法适应度值设置为:
Figure DEST_PATH_IMAGE032
其中,
Figure DEST_PATH_IMAGE034
表示各订单i的项目工期。
选择算子。采用二元锦标赛加精英保留的选择操作。
交叉算子。以概率p c 执行双点交叉算子,交叉操作如下所示:
首先,选择种群中的最好解对应的染色体作为父代染色体,随机选择一条染色体作为母代染色体;随机选择父代染色体的两个基因位置
Figure DEST_PATH_IMAGE036
Figure DEST_PATH_IMAGE038
,确定位置
Figure 984838DEST_PATH_IMAGE036
Figure 114468DEST_PATH_IMAGE038
之间(包括
Figure 397682DEST_PATH_IMAGE036
Figure 688986DEST_PATH_IMAGE038
)为一段父代基因块并直接复制到子代染色体中。在母代染色体中找到将该基因块完全包含在内的最小基因块(记作母代基因块),该母代基因块对应的起始位置分别记为
Figure DEST_PATH_IMAGE040
Figure DEST_PATH_IMAGE042
,并将
Figure 628123DEST_PATH_IMAGE040
之前(不包括
Figure 295865DEST_PATH_IMAGE040
)的所有基因和
Figure 699164DEST_PATH_IMAGE042
之后(不包括
Figure 659905DEST_PATH_IMAGE042
)的所有基因分别直接复制到子代染色体中基因块的前后。
对于母代基因块,其中包含的维修任务可以分为三类:一是父代基因块的紧前维修任务,即该维修任务是父代基因块中任一维修任务的紧前维修任务,二是父代基因块的紧后维修任务,即该维修任务是父代基因块中任一维修任务的紧后维修任务,三是自由维修任务,该维修任务与父代基因块之间不存在直接紧前紧后关系。对于第一类和第三类维修任务,直接将其分别复制到子代染色体中父代基因块之前和之后的位置;对于第二类维修任务,依次寻找其在当前子代染色体中满足紧前紧后约束的可插入位置,若存在多个满足条件的可插入位置,则随机选择其中一个,直至第二类维修任务集合为空。如图3、4所示,图3为本实施例中项目维修任务网络图;图4为基于父代母代染色体的交叉过程示意图。
变异算子。以概率p m 执行变异算子,具体操作为:重新生成满足紧前紧后关系的随机维修任务序列替换被选中的染色体。
改进关键链的搜索算子。基于关键链的改进搜索,以改进搜索概率p f 执行改进搜索算子,具体操作为:对选中的染色体执行前向后向调度生成机制(FBSSGS)(如下所述)并确定关键维修任务集合。随机选择一个关键维修任务
Figure DEST_PATH_IMAGE044
,记其当前位置为c,找到其紧前维修任务所在的最大位置a和紧后维修任务所在的最小位置b,若ca+2,且对该关键维修任务位置的提前不会造成其他关键维修任务的推迟,则将关键维修任务
Figure 617496DEST_PATH_IMAGE044
提前至位置(a+1)。具体的,利用改进关键链的搜索算子进行搜索操作的步骤为:
解码。基于各个项目经理PA生成的规模为
Figure 823350DEST_PATH_IMAGE024
_size的种群中的每条染色体使用前向后向调度生成机制(FBSSGS)进行解码,计算执行完变异算子的染色体的适应度值,以及每个维修任务
Figure 81156DEST_PATH_IMAGE006
的最早开始时间ES ij 、最早完成时间EF ij 、最晚开始时间LS ij 、最晚完成时间LF ij ,具体步骤如下。
步骤1:以改进搜索概率p f 从上述执行完变异操作的种群或本次迭代中的初始种群中选择的染色体,按照维修任务在维修任务序列AL i 中的顺序给每个候选任务在不违反资源约束的前提下分配资源并安排维修任务开始时间(若存在资源冲突则推迟维修任务开始时间直至不存在资源冲突),将每个维修任务
Figure 979842DEST_PATH_IMAGE006
的开始时间
Figure DEST_PATH_IMAGE046
记作其最早开始时间
Figure DEST_PATH_IMAGE048
,相应地其最早完成时间为
Figure DEST_PATH_IMAGE050
,其中,
Figure 332719DEST_PATH_IMAGE008
表示每个维修任务
Figure 76684DEST_PATH_IMAGE006
对应的工期;
步骤2:重复步骤1直至候选维修任务集合为空,完成前向本地调度计划
Figure DEST_PATH_IMAGE052
的制定,输出各个维修任务的最早开始时间ES ij 和最早完成时间EF ij
步骤3:将维修任务列表的维修任务按照上述前向调度生成机制计算得到的最早完成时间EF ij 降序排列,新生成的维修任务序列记作BAL i
步骤4:初始化已调度维修任务集合为虚结束维修任务,候选维修任务集合为虚结束维修任务的紧前维修任务集合,当前时刻为前向调度生成机制求得的虚结束维修任务的开始时间,即订单i的项目工期
Figure 923417DEST_PATH_IMAGE034
步骤5:按照维修任务在BAL i 中的顺序给每个候选任务在不违反资源约束的前提下分配资源并安排维修任务开始时间(若存在资源冲突则前移维修任务结束时间直至不存在资源冲突),将每个维修任务
Figure 727425DEST_PATH_IMAGE006
的结束时间
Figure DEST_PATH_IMAGE054
记作其最晚完成时间
Figure DEST_PATH_IMAGE056
,相应地其最晚开始时间为
Figure DEST_PATH_IMAGE058
=
Figure DEST_PATH_IMAGE060
=
Figure DEST_PATH_IMAGE062
步骤6:重复步骤5直至候选集合为空,完成后向本地调度计划
Figure DEST_PATH_IMAGE064
的制定,输出各个维修活动a ij 的最晚完成时间LF ij 和最晚开始时间LS ij
步骤7:识别关键维修任务,具体操作方法为基于前向本地调度计划
Figure 971194DEST_PATH_IMAGE052
和后向本地调度计划
Figure 784429DEST_PATH_IMAGE064
计算每个维修任务
Figure 751248DEST_PATH_IMAGE006
的自由时差
Figure DEST_PATH_IMAGE066
,对于维修任务
Figure 460578DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE068
=0则将其记为关键维修任务,并添加至项目i的关键维修任务集合
Figure DEST_PATH_IMAGE070
中。
步骤8:确定最终调度计划,若
Figure DEST_PATH_IMAGE072
,则将
Figure 788047DEST_PATH_IMAGE064
作为最终调度计划
Figure DEST_PATH_IMAGE074
,同时将每个维修任务
Figure 608236DEST_PATH_IMAGE006
的开始时间提前
Figure DEST_PATH_IMAGE076
个时间单位,否则将
Figure 898403DEST_PATH_IMAGE052
作为最终调度计划
Figure 73907DEST_PATH_IMAGE074
;其中,
Figure DEST_PATH_IMAGE078
表示表示订单i的虚开始活动的最晚开始时间;
Figure DEST_PATH_IMAGE080
表示项目i的到达时间;
步骤9:输出项目i本地调度计划
Figure 652787DEST_PATH_IMAGE074
及其关键维修任务集合
Figure 807825DEST_PATH_IMAGE070
S13、判断是否达到最大迭代次数
Figure 749236DEST_PATH_IMAGE022
,若否,则循环执行S12;若是,算法结束,输出本地调度计划。
S2、基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,以分布式多订单总工期最小化为目标,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新。
具体的,利用深度强化学习方法获取资源冲突时的全局资源分配方案,并由此获得各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新。
将船舶主动力维修服务总公司服务部门视作负责全局资源分配和整体进度管理的资源代理(Resource Agent,RA)。当获取各订单的本地调度计划和各订单对于全局资源的需求之后,将各个项目经理PA所对应的实时本地调度计划和全局资源需求上传给资源代理RA。
将船舶主动力维修服务总公司服务部门经理,即维修决策的核心制定者,视作CA(Coordinator Agent)根据调整后的本地调度计划计算该动作的奖励(Reward),如此不断迭代直到整个分布式多项目调度环境中无全局资源冲突,最终为每次决策选出最优冲突维修任务优先序列和全局资源分配方案。
图5为本发明实施例中RA和CA基于深度强化学习的DQN算法流程图,参见图5,具体过程为:
首先,设定RA和CA全局资源分配决策算法的执行参数,所述执行参数包括迭代次数L,经验池容量N,最小样本抽样数量K,贪婪算法初始探索概率
Figure DEST_PATH_IMAGE082
,贪婪算法最终探索概率
Figure DEST_PATH_IMAGE084
,预测Q网络和目标Q网络学习率
Figure DEST_PATH_IMAGE086
,折扣因子
Figure DEST_PATH_IMAGE088
,目标Q网络更新步长C,动作空间;设定PA本地调度算法执行参数,所述执行参数包括当前迭代次数
Figure DEST_PATH_IMAGE090
,最大迭代次数
Figure DEST_PATH_IMAGE092
,种群规模
Figure DEST_PATH_IMAGE094
tion_size,交叉概率
Figure DEST_PATH_IMAGE096
,变异概率
Figure DEST_PATH_IMAGE098
,改进搜索概率
Figure DEST_PATH_IMAGE100
S21、基于各订单的所述本地调度计划确定各订单在各时段的全局资源需求是否存在资源冲突。
资源代理RA通过接收各个项目经理PA各个时刻对全局资源的需求,检查并识别出存在全局资源冲突的时刻的决策时间点。
S22、将所述全局资源动态调度的问题转化为马尔可夫决策过程。
资源代理RA根据项目经理PA提交的本地调度计划和全局资源需求,检查并识别出存在全局资源冲突的时刻,确定全局资源冲突时刻t con 冲突项目集合Conp和冲突维修任务集合Con,其中全局资源冲突时刻即为RA的决策点t,冲突维修任务集合的全排列即为CA的可行维修任务集合,该可行维修任务集合为动作空间的子集。
资源代理RA计算冲突时刻上的各项目经理PA对应的各订单资源平均利用系数(AUF)的平均值和标准差、各冲突维修任务资源利用率(RU)的平均值和方差、进度完成率(SCR)、冲突维修任务中全局资源关键维修任务所占的比率(CCR)、项目平均延迟(ADP)、各项目延迟标准差(DPD)等作为决策点t上环境的状态
Figure DEST_PATH_IMAGE102
的特征。
对每个决策点t,CA使用
Figure DEST_PATH_IMAGE104
的概率随机选择一个动作
Figure DEST_PATH_IMAGE106
,否则根据预测Q网络选择Q 值最大的动作
Figure DEST_PATH_IMAGE107
基于各订单的本地调度计划和各订单的全局资源需求进行全局资源动态调度的问题是一个分布式多项目调度问题,再利用深度强化学习方法求解分布式多项目调度问题,应将分布式多项目调度问题向马尔可夫决策过程转化。因此,在本实施例中将上述资源代理RA、各项目经理PA,以及协调代理CA涉及的状态、动作等识别过程将全局资源调度问题转化为马尔可夫决策过程,使得全局资源分配问题可以得到好的表示和解决,具体的,
首先,应适当定义分布式多项目调度问题中的状态空间、动作空间和奖励函数。
定义状态空间。船舶主动力设备维修服务分布式多项目调度环境中的系统状态特征由各个PA提交以及实时更新的调度进度获得,从中提取如下的11个系统特征。其中,前三个特征是为了提升DQL算法的普适性设置的特定的任务特征,后八个特征为可以反应调度环境实时变化且与优化目标相关的环境特征。
Figure DEST_PATH_IMAGE109
待调度项目总负荷TON(t)(number of total orders),其计算公式为:
Figure DEST_PATH_IMAGE110
其中,M为待调度的项目总数,
Figure DEST_PATH_IMAGE112
为调度总项目数的上限;
Figure DEST_PATH_IMAGE114
待调度任务总负荷TOA(t)(number of total activties),其计算公式为:
Figure DEST_PATH_IMAGE115
其中,
Figure DEST_PATH_IMAGE117
为每个维修项目包含的维修任务的平均值,
Figure DEST_PATH_IMAGE119
为各维修项目所包含的维修任务数量上限;
Figure DEST_PATH_IMAGE121
全局资源紧迫度GRT(t)(global resources tightness),其计算公式为:
Figure DEST_PATH_IMAGE122
其中,GCPD表示全局资源关键链长度;其中,Rg为第g种全局资源的总供给量;r ijg 表示维修任务a ij 对第g种全局资源的需求量,g为全局资源种类索引(g=1,2,……,G),G表示共有G种全局资源;
Figure DEST_PATH_IMAGE124
冲突维修任务平均全局资源利用率
Figure DEST_PATH_IMAGE126
,其计算公式为:
Figure DEST_PATH_IMAGE127
其中,
Figure DEST_PATH_IMAGE129
表示决策点t上的多项目总工期
Figure DEST_PATH_IMAGE131
Figure DEST_PATH_IMAGE133
表示存在冲突的全局资源的总供给量;
Figure DEST_PATH_IMAGE135
冲突维修任务全局资源利用率标准差
Figure DEST_PATH_IMAGE137
,其计算公式为:
Figure DEST_PATH_IMAGE138
Figure DEST_PATH_IMAGE140
冲突维修任务全局资源利用系数平均数
Figure DEST_PATH_IMAGE142
,其计算公式为:
Figure DEST_PATH_IMAGE143
其中,
Figure DEST_PATH_IMAGE144
Figure DEST_PATH_IMAGE146
冲突维修任务全局资源利用系数标准差
Figure DEST_PATH_IMAGE148
,其计算公式为:
Figure DEST_PATH_IMAGE149
其中,
Figure DEST_PATH_IMAGE150
Figure DEST_PATH_IMAGE152
决策时刻进度完成率SCR(t)(schedule completion rate),其计算公式为:
Figure DEST_PATH_IMAGE153
其中,t con 表示全局资源冲突时刻。
Figure DEST_PATH_IMAGE155
冲突维修任务中全局资源关键维修任务占比CCR(t)(ccRate),其计算公式为:
Figure DEST_PATH_IMAGE156
其中,Con表示全局资源冲突标识。
Figure DEST_PATH_IMAGE158
项目平均延迟ADP(t),其计算公式为:
Figure DEST_PATH_IMAGE159
其中,
Figure DEST_PATH_IMAGE161
为决策点t上项目i调度计划的(预计)项目工期,
Figure DEST_PATH_IMAGE163
为项目i的关键链长度;
Figure DEST_PATH_IMAGE165
各项目延迟标准差DPD(t),其计算公式为:
Figure DEST_PATH_IMAGE166
其中,
Figure DEST_PATH_IMAGE167
定义动作空间。将每个冲突时刻CA决策的冲突项目优先列表定义为一个动作,则动作空间为
Figure DEST_PATH_IMAGE169
个项目的排列组合,若系统中待调度项目总数为n个,其项目编号分别为1、2、3,…,n-1、n,则其动作空间大小为
Figure DEST_PATH_IMAGE171
。例如,在一个存在3个待调度项目的系统中,动作空间大小为(6+6=12),动作空间为
Figure DEST_PATH_IMAGE173
动作值
Figure 873138DEST_PATH_IMAGE106
的选择用以下的数学表达式表示:
本实施例中使用
Figure 532789DEST_PATH_IMAGE104
-贪婪算法实现CA的探索与利用,具体表示为:
Figure DEST_PATH_IMAGE174
其中,
Figure DEST_PATH_IMAGE176
表示算法以
Figure DEST_PATH_IMAGE178
的概率选择可行动作空间的动作,
Figure DEST_PATH_IMAGE180
表示算法以
Figure DEST_PATH_IMAGE182
的概率选择当前时间步内价值最大的动作作为下个时间步要执行的动作。
由于各订单的维修任务序列在PA确定本地调度计划之后不再改变,故根据冲突项目优先列表可以唯一确定冲突维修任务优先序列,而这也是RA分配全局资源的根据。
定义奖励函数。奖励函数反映当一个状态转移到下一个状态时目标函数的变化。目标函数的全局目标是多项目总工期C max 的最小化,因此定义奖励函数为:
Figure DEST_PATH_IMAGE183
其中,Cmax(t+1)表示决策点(t+1)上的多项目整体完工时间,由各项目代理的虚拟调度结果计算得到;Cmax(t)表示决策点t上的多项目整体完工时间。
由公式可以看出,当多项目总工期延迟量较小的时候有较大的奖励值。
S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果。
具体的,利用深度强化学习方法求解所述马尔可夫决策过程包括:
S231、资源代理RA根据协调代理CA选择的动作唯一确定的冲突项目优先列表生成冲突维修任务优先序列,执行该动作,安排冲突维修任务的开始时间并完成全局资源的分配,将重新安排后各个冲突维修任务的开始时间发送给PA。
S232、每个项目经理PA根据资源代理RA发送的冲突维修任务开始时间和全局资源分配方案调整本地调度计划,并将调整后的各时段的全局资源需求和本地调度计划返回给RA,更新状态。
图6为本实施例中基于RA调度安排结果的本地调度计划修正流程图。参见图6,具体的,
S2321、输入已调度维修任务调度计划、CA调整后的冲突维修任务调度计划;
S2322、计算冲突维修任务和冲突时间段正在进行的维修任务的全局资源占用量;
S2323、将未调度维修任务按照其在上阶段PA生成的本地调度计划中的最早开始时间ES ij 升序排列,得到待调整维修任务优先列表;
S2324、对待调度维修任务列表使用串行调度生成机制安排其开始时间;
S2325、输出调整后的本地调度计划并提交CA。
S233、RA识别下一个决策点(冲突时刻)状态
Figure DEST_PATH_IMAGE185
和下一个预处理序列
Figure DEST_PATH_IMAGE187
Figure 678469DEST_PATH_IMAGE185
),观察奖励
Figure DEST_PATH_IMAGE189
S234、CA将上述得到的样本,即四元组
Figure DEST_PATH_IMAGE191
存储于经验池D中,随机抽取小批量样本
Figure DEST_PATH_IMAGE193
S235、CA根据Q目标网络计算TD目标值;
S236、CA计算每个样本的TD目标差,在损失函数
Figure DEST_PATH_IMAGE195
上执行Adam优化,每隔C步重设Q目标网络的模型参数值与Q预测网络相等,其中,Q目标网络和Q预测网络结构完全相同,都由5个全连接层构成,输入层和输出层节点数分别等于状态特征数和可选动作数量,3个隐藏层的节点数均为30,在输入层和每个隐藏层后使用ReLu作为激活函数。参见图7,图7为本发明实施例中预测Q网络的网络结构图。
S3、重复执行S1和S2直至各订单在进行全局资源动态调度过程不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
不断重复执行上述步骤S1和S2的过程,直至算法执行结束,保存DQL训练模型,结束训练过程,此时,整个多项目调度环境中不存在全局资源冲突,每个PA都得到执行其各自的调度计划所需要的全局资源,我们即可将此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
至此,则完成了本实施例一种面向船舶主动力设备维修订单的动态调度方法的全部过程。
实施例2:
第二方面,本发明还提供了一种面向船舶主动力设备维修订单的动态调度系统,该系统包括:
本地调度计划获取模块,用于以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;
本地调度计划更新模块,用于以分布式多订单总工期最小化为目标,基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新;
全局调度计划获取模块,用于当本地调度计划获取模块和本地调度计划更新模块重复执行动作且各订单在进行全局资源动态调度过程中不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
可选的,所述本地调度计划获取模块以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求包括:
S11、初始化本地调度算法的初始种群,并设置所述本地调度算法的输入参数和执行参数;所述本地调度算法包括关键链改进搜索的遗传算法;所述执行参数包括最大迭代次数、交叉概率、变异概率,以及改进搜索概率;
S12、对所述初始种群依次执行包括选择、交叉、变异、以及基于改进关键链搜索的操作,并计算经过所述操作后个体的适应度值并更新种群;
S13、判断是否达到所述最大迭代次数,若否,则循环执行S12;若是,本地调度算法结束,并输出本地调度计划以及各订单的全局资源需求。
可选的,所述基于改进关键链搜索的操作包括:以改进搜索概率p f 执行基于关键链的改进搜索算子,具体操作为:
对选中的染色体执行前向后向调度生成机制并确定关键维修任务集合;
随机选择一个关键维修任务并记其当前位置为c,找到其紧前维修任务所在的最大位置a和紧后维修任务所在的最小位置b
ca+2,且对该关键维修任务位置的提前不会造成其他关键维修任务的推迟,则将关键维修任务提前至位置(a+1)。
可选的,所述本地调度计划更新模块基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新包括:
S21、基于各订单的所述本地调度计划确定各订单在各时段的全局资源需求是否存在资源冲突;
S22、将所述全局资源动态调度的问题转化为马尔可夫决策过程;
S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果。
可选的,所述S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果包括:
S231、资源代理根据协调代理选择的动作唯一确定的冲突项目优先列表生成冲突维修任务优先序列,执行该动作,安排冲突维修任务的开始时间并完成全局资源的分配,将重新安排后各个冲突维修任务的开始时间发送给项目代理;
S232、每个项目经理根据资源代理发送的冲突维修任务开始时间和全局资源分配方案调整本地调度计划,并将调整后的各时段的全局资源需求和本地调度计划返回给资源代理,更新状态;
S233、资源代理识别下一个决策点状态和下一个预处理序列,观察奖励;
S234、获得样本并存储于经验池中,随机抽取小批量样本;
S235、协调代理根据Q目标网络计算TD目标值;
S236、协调代理计算每个样本的TD目标差,在损失函数上执行Adam优化,每隔C步重设Q目标网络的模型参数值与Q预测网络相等;其中,Q目标网络和Q预测网络结构完全相同。
可理解的是,本发明实施例提供的面向船舶主动力设备维修订单的动态调度系统与上述面向船舶主动力设备维修订单的动态调度方法相对应,其有关内容的解释、举例、有益效果等部分可以参照面向船舶主动力设备维修订单的动态调度方法中的相应内容,此处不再赘述。
综上所述,与现有技术相比,具备以下有益效果:
1、本发明首先以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;然后基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,并以分布式多订单总工期最小化为目标,利用深度强化学习方法获取发生全局资源冲突时的全局资源分配方案,各订单根据该全局资源分配方案调整本地调度计划并更新全局资源需求;最后不断重复执行上述过程直至各订单在进行全局资源动态调度过程不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源分配方案作为全局资源动态调度的调度结果。本发明将传统智能优化方法与深度强化学习相结合,不仅可以克服强化学习无法解决大规模问题和高维度问题的局限性,还通过将调度问题转换为多阶段决策的马尔可夫决策问题,使得该方法适应于存在订单取消、维修设备故障、天气状况和全局资源不可用等不确定事件的动态环境,从而可以对船舶主动力设备维修订单动态调度问题进行精准求解,进而高效精准指导船舶主动力设备的维修工作,提高了企业维修调度运营的稳定性,降低了企业的运行成本。
2、本发明基于关键链改进搜索的遗传算法以各订单工期最小化为目标求解各订单对应的本地调度计划和各订单的所述全局资源需求,可以量化关键维修任务对工期重要性的影响,从而能更高效的求解出各订单对应的本地调度计划和各订单的所述全局资源需求。
3、本发明将传统智能优化方法(基于关键链改进搜索的遗传算法)和深度强化学习相结合,一方面通过对传统智能优化方法的改进保证了调度计划制定的质量,另一方面通过融入深度学习方法估计值函数,突破了传统强化学习方法不适用于大规模与高维度问题的局限性从而解决了现有技术不适用于存在订单取消、维修设备故障、天气状况和全局资源不可用等不确定事件的动态环境的问题。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种面向船舶主动力设备维修订单的动态调度方法,其特征在于,所述方法包括:
S1、以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的全局资源需求;
S2、基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,以分布式多订单总工期最小化为目标,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新;
S3、重复执行S1和S2直至各个订单在进行全局资源动态调度过程不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
2.如权利要求1所述的方法,其特征在于,所述S1包括:
S11、初始化本地调度算法的初始种群,并设置所述本地调度算法的输入参数和执行参数;所述本地调度算法包括关键链改进搜索的遗传算法;所述执行参数包括最大迭代次数、交叉概率、变异概率,以及改进搜索概率;
S12、对所述初始种群依次执行包括选择、交叉、变异、以及基于改进关键链搜索的操作,并计算经过所述操作后个体的适应度值并更新种群;
S13、判断是否达到所述最大迭代次数,若否,则循环执行S12;若是,本地调度算法结束,并输出本地调度计划以及各订单的全局资源需求。
3.如权利要求2所述的方法,其特征在于,所述基于改进关键链搜索的操作包括:以改进搜索概率p f 执行基于关键链的改进搜索算子,具体操作为:
对选中的染色体执行前向后向调度生成机制并确定关键维修任务集合;
随机选择一个关键维修任务并记其当前位置为c,找到其紧前维修任务所在的最大位置a和紧后维修任务所在的最小位置b
ca+2且对该关键维修任务位置的提前不会造成其他关键维修任务的推迟,则将关键维修任务提前至位置(a+1)。
4.如权利要求1所述的方法,其特征在于,所述S2包括:
S21、基于各订单的所述本地调度计划确定各订单在各时段的全局资源需求是否存在资源冲突,确定决策时间点;
S22、将所述全局资源动态调度的问题转化为马尔可夫决策过程;
S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果。
5.如权利要求4所述的方法,其特征在于,所述S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果包括:
S231、资源代理根据协调代理选择的动作唯一确定的冲突项目优先列表生成冲突维修任务优先序列,执行该动作,安排冲突维修任务的开始时间并完成全局资源的分配,将重新安排后各个冲突维修任务的开始时间发送给项目代理;
S232、每个项目经理根据资源代理发送的冲突维修任务开始时间和全局资源分配方案调整本地调度计划,并将调整后的各时段的全局资源需求和本地调度计划返回给资源代理,更新状态;
S233、资源代理识别下一个决策点状态和下一个预处理序列,观察奖励;
S234、获得样本并存储于经验池中,随机抽取小批量样本;
S235、协调代理根据Q目标网络计算TD目标值;
S236、协调代理计算每个样本的TD目标差,在损失函数上执行Adam优化,每隔C步重设Q目标网络的模型参数值与Q预测网络相等;其中,所述Q目标网络和所述Q预测网络结构完全相同。
6.一种面向船舶主动力设备维修订单的动态调度系统,其特征在于,所述系统包括:
本地调度计划获取模块,用于以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求;
本地调度计划更新模块,用于以分布式多订单总工期最小化为目标,基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新;
全局调度计划获取模块,用于当本地调度计划获取模块和本地调度计划更新模块重复执行动作且各订单在进行全局资源动态调度过程中不存在全局资源冲突时结束调度过程,并输出此时各订单所对应的最终调度计划和最终的全局资源需求作为全局资源动态调度的调度结果。
7.如权利要求6所述的系统,其特征在于,所述本地调度计划获取模块以各订单工期最小化为目标,使用基于关键链改进搜索的遗传算法生成各订单对应的本地调度计划和各订单的所述全局资源需求包括:
S11、初始化本地调度算法的初始种群,并设置所述本地调度算法的输入参数和执行参数;所述本地调度算法包括关键链改进搜索的遗传算法;所述执行参数包括最大迭代次数、交叉概率、变异概率,以及改进搜索概率;
S12、对所述初始种群依次执行包括选择、交叉、变异、以及基于改进关键链搜索的操作,并计算经过所述操作后个体的适应度值并更新种群;
S13、判断是否达到所述最大迭代次数,若否,则循环执行S12;若是,本地调度算法结束,并输出本地调度计划以及各订单的全局资源需求。
8.如权利要求7所述的系统,其特征在于,所述基于改进关键链搜索的操作包括:
以改进搜索概率p f 执行基于关键链的改进搜索算子,具体操作为:
对选中的染色体执行前向后向调度生成机制并确定关键维修任务集合;
随机选择一个关键维修任务并记其当前位置为c,找到其紧前维修任务所在的最大位置a和紧后维修任务所在的最小位置b
ca+2,且对该关键维修任务位置的提前不会造成其他关键维修任务的推迟,则将关键维修任务提前至位置(a+1)。
9.如权利要求6所述的系统,其特征在于,所述本地调度计划更新模块基于各订单的所述本地调度计划和各订单的所述全局资源需求进行全局资源动态调度,利用深度强化学习方法获取各订单调整后的本地调度计划和各订单调整后的全局资源需求并进行更新包括:
S21、基于各订单的所述本地调度计划确定各订单在各时段的全局资源需求是否存在资源冲突;
S22、将所述全局资源动态调度的问题转化为马尔可夫决策过程;
S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果。
10.如权利要求9所述的系统,其特征在于,所述S23、利用深度强化学习方法求解所述马尔可夫决策过程,以获得全局资源动态调度的调度结果包括:
S231、资源代理根据协调代理选择的动作唯一确定的冲突项目优先列表生成冲突维修任务优先序列,执行该动作,安排冲突维修任务的开始时间并完成全局资源的分配,将重新安排后各个冲突维修任务的开始时间发送给项目代理;
S232、每个项目经理根据资源代理发送的冲突维修任务开始时间和全局资源分配方案调整本地调度计划,并将调整后的各时段的全局资源需求和本地调度计划返回给资源代理,更新状态;
S233、资源代理识别下一个决策点状态和下一个预处理序列,观察奖励;
S234、获得样本并存储于经验池中,随机抽取小批量样本;
S235、协调代理根据Q目标网络计算TD目标值;
S236、协调代理计算每个样本的TD目标差,在损失函数上执行Adam优化,每隔C步重设Q目标网络的模型参数值与Q预测网络相等;其中,Q目标网络和Q预测网络结构完全相同。
CN202211208159.3A 2022-09-30 2022-09-30 面向船舶主动力设备维修订单的动态调度方法及系统 Active CN115271130B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211208159.3A CN115271130B (zh) 2022-09-30 2022-09-30 面向船舶主动力设备维修订单的动态调度方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211208159.3A CN115271130B (zh) 2022-09-30 2022-09-30 面向船舶主动力设备维修订单的动态调度方法及系统

Publications (2)

Publication Number Publication Date
CN115271130A true CN115271130A (zh) 2022-11-01
CN115271130B CN115271130B (zh) 2023-04-07

Family

ID=83757888

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211208159.3A Active CN115271130B (zh) 2022-09-30 2022-09-30 面向船舶主动力设备维修订单的动态调度方法及系统

Country Status (1)

Country Link
CN (1) CN115271130B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116205457A (zh) * 2023-03-02 2023-06-02 中国人民解放军空军工程大学航空机务士官学校 一种基于抢修资源限制的战伤抢修方案生成方法
CN117952397A (zh) * 2024-03-21 2024-04-30 深圳市快金数据技术服务有限公司 物流订单分析方法、装置、设备及存储介质

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102945510A (zh) * 2012-10-23 2013-02-27 西安理工大学 一种求解复杂资源受限项目调度问题的有效方法
CN104820872A (zh) * 2015-05-06 2015-08-05 华北电力大学 工程项目中利用潜在反关键工序进行项目工期优化的方法
CN106611230A (zh) * 2015-12-14 2017-05-03 四川用联信息技术有限公司 结合关键工序的遗传局部搜索算法求解柔性作业车间调度
CN108846570A (zh) * 2018-06-08 2018-11-20 武汉理工大学 一种解决资源受限项目调度问题的方法
CN109190857A (zh) * 2018-10-30 2019-01-11 武汉大学 一种基于多目标资源受限项目调度模型的优化算法
CN109960578A (zh) * 2017-12-22 2019-07-02 田文洪 一种基于深度强化学习的数据中心资源离线调度方法
CN109976909A (zh) * 2019-03-18 2019-07-05 中南大学 边缘计算网络中基于学习的低延时任务调度方法
CN111160615A (zh) * 2019-12-04 2020-05-15 广东司法警官职业学院 一种利用粒子群优化多模式资源约束项目调度的方法
CN111667191A (zh) * 2020-06-11 2020-09-15 湖南大学 资源专享和转移视角下双目标鲁棒资源分配方法和系统
CN112884370A (zh) * 2021-03-23 2021-06-01 合肥工业大学 考虑订单插单的高端装备研制过程多项目重调度方法及系统
CN113408856A (zh) * 2021-05-21 2021-09-17 杰为软件系统(深圳)有限公司 一种基于物联网技术的关键链计划调度软件算法
CN113705866A (zh) * 2021-08-16 2021-11-26 成都飞机工业(集团)有限责任公司 基于资源受限项目调度问题模型的排程优化方法和系统
CN114936713A (zh) * 2022-06-17 2022-08-23 合肥工业大学 一种用于船舶维修任务调度问题的调度优化方法
CN115082845A (zh) * 2022-04-26 2022-09-20 北京理工大学 一种基于深度强化学习的监控视频目标检测任务调度方法

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102945510A (zh) * 2012-10-23 2013-02-27 西安理工大学 一种求解复杂资源受限项目调度问题的有效方法
CN104820872A (zh) * 2015-05-06 2015-08-05 华北电力大学 工程项目中利用潜在反关键工序进行项目工期优化的方法
CN106611230A (zh) * 2015-12-14 2017-05-03 四川用联信息技术有限公司 结合关键工序的遗传局部搜索算法求解柔性作业车间调度
CN109960578A (zh) * 2017-12-22 2019-07-02 田文洪 一种基于深度强化学习的数据中心资源离线调度方法
CN108846570A (zh) * 2018-06-08 2018-11-20 武汉理工大学 一种解决资源受限项目调度问题的方法
CN109190857A (zh) * 2018-10-30 2019-01-11 武汉大学 一种基于多目标资源受限项目调度模型的优化算法
CN109976909A (zh) * 2019-03-18 2019-07-05 中南大学 边缘计算网络中基于学习的低延时任务调度方法
CN111160615A (zh) * 2019-12-04 2020-05-15 广东司法警官职业学院 一种利用粒子群优化多模式资源约束项目调度的方法
CN111667191A (zh) * 2020-06-11 2020-09-15 湖南大学 资源专享和转移视角下双目标鲁棒资源分配方法和系统
CN112884370A (zh) * 2021-03-23 2021-06-01 合肥工业大学 考虑订单插单的高端装备研制过程多项目重调度方法及系统
CN113408856A (zh) * 2021-05-21 2021-09-17 杰为软件系统(深圳)有限公司 一种基于物联网技术的关键链计划调度软件算法
CN113705866A (zh) * 2021-08-16 2021-11-26 成都飞机工业(集团)有限责任公司 基于资源受限项目调度问题模型的排程优化方法和系统
CN115082845A (zh) * 2022-04-26 2022-09-20 北京理工大学 一种基于深度强化学习的监控视频目标检测任务调度方法
CN114936713A (zh) * 2022-06-17 2022-08-23 合肥工业大学 一种用于船舶维修任务调度问题的调度优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谈烨等: "多种资源在多项目间分配的两层决策方法", 《系统工程学报》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116205457A (zh) * 2023-03-02 2023-06-02 中国人民解放军空军工程大学航空机务士官学校 一种基于抢修资源限制的战伤抢修方案生成方法
CN117952397A (zh) * 2024-03-21 2024-04-30 深圳市快金数据技术服务有限公司 物流订单分析方法、装置、设备及存储介质
CN117952397B (zh) * 2024-03-21 2024-05-31 深圳市快金数据技术服务有限公司 物流订单分析方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN115271130B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN115271130B (zh) 面向船舶主动力设备维修订单的动态调度方法及系统
Shen et al. Mathematical modeling and multi-objective evolutionary algorithms applied to dynamic flexible job shop scheduling problems
CN109165808B (zh) 一种电力通信网现场运维工单派发方法
CN110046777B (zh) 一种柔性作业车间持续重构调度方法及装置
CN113705866B (zh) 基于资源受限项目调度问题模型的排程优化方法和系统
CN110414826B (zh) 一种云制造环境下柔性多任务前摄性调度优化方法
CN108267954B (zh) 一种带硬时间窗的刀具准时配送路径规划算法
EP3806007A1 (en) Methods, computer programs and systems for assigning vehicles to vehicular tasks and for providing a machine-learning model
CN103942609B (zh) 产品服务供应链优化设计方法
CN111461402B (zh) 物流排程优化方法及装置、计算机可读存储介质、终端
Chen et al. An imitation learning-enhanced iterated matching algorithm for on-demand food delivery
CN114580678A (zh) 一种产品维修资源调度方法和系统
CN112149990B (zh) 一种基于预测的模糊供需匹配方法
CN115421885B (zh) 一种分布式多目标云任务的调度方法、装置及云服务系统
CN116401037B (zh) 一种基于遗传算法的多任务调度方法和系统
Mutingi et al. Home healthcare worker scheduling: a group genetic algorithm approach
CN104506576A (zh) 一种无线传感器网络及其节点任务迁移方法
CN116050752A (zh) 基于数据驱动的神经网络代理辅助露天矿无人卡车调度方法
Yang et al. Joint optimization of space allocation and yard crane deployment in container terminal under uncertain demand
CN114881301A (zh) 生产线的仿真排产方法、系统、终端设备及存储介质
CN118261376A (zh) 基于改进模拟退火算法的服装生产线动态调度方法及系统
CN112514352A (zh) 更新调度规则的方法、设备、系统、存储介质和终端
Li et al. Dynamic repositioning in bike-sharing systems with uncertain demand: An improved rolling horizon framework
Varghese et al. Dynamic spatial block arrangement scheduling in shipbuilding industry using genetic algorithm
CN115759672A (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