论文阅读|图神经网络+Actor-Critic求解静态JSP(End-to-End DRL)《基于深度强化学习的调度规则学习》(附带源码)

本文探讨了如何使用深度强化学习(DRL)自动学习优先调度规则(PDR)以解决作业车间调度问题(JSSP)。研究中,通过析取图表示JSSP状态,并利用图神经网络(GNN)进行状态嵌入,从而实现策略网络的大小无关性,增强对大规模实例的泛化能力。实验表明,这种方法能从头学习高质量的PDR,并在性能上优于传统PDR。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

源码获取请点击此处

更多强化学习内容可点击此处 

《Learning to Dispatch for Job Shop scheduling via Deep Reinforcemnet Learning》

NeurIPS 2020

1 摘要

优先调度规则(Priority dispatching rule,PDR)广泛用于求解JSSP问题,这篇文章通过端到端的深度强化学习代理来自动学习PDR。利用JSSP的析取图表示,提出了一种基于图神经网络(Graph Neural Network,GNN)的方案来嵌入求解过程中遇到的状态。由此产生的策略网络与大小无关,有效地实现了大规模实例的泛化。实验表明,该代理能够以基本的原始特征从头开始学习高质量的PDR,并且与现有最好的PDR相比表现出很强的性能。

2 文章解读

        这篇文章研究的问题为静态的JSP问题。出发点是通过研究析取图,通过图神经网络来挖掘析取图中蕴含的信息,以此来达到端到端的实现。

2.1 相关状态、动作、状态转移、奖励、策略的定义

2.1.1 状态(state)

        状态即为解的当前析取图状态

2.1.2 动作(action)

        动作集为当前可进行加工的工序集,从中选择一个最为合适的工作作为当前阶段的动作。

2.1.3 状态转移

        一旦确定下一步要调度的操作,我们首先要找到在所需机器上分配的最早可行时间段。然后,我们根据当前的时间关系更新该机器的析取弧的方向,并生成一个新的析取图作为新的state。

 2.1.4 奖励

        我们的目标是学会一步一步地进行调度,以便最大限度地减少完工时间。为此,我们将奖励函数R(st,at)设计为两个状态s(t+1)、s(t)对应的部分解之间的质量差,即R(at,st)=H(St)−H(st+1),其中H(·)是质量度量。这里我们将其定义为最大完工时间的下界,即:

 2.1.5 策略

        对于状态st,随机策略π(at|st)输出动作为动作集At上的分布。如果采用传统的PDR作为策略,则分布为one-hot,并且具有最高优先级的动作的概率为1。

 2.2 将策略参数化

        将随机策略π(at|st)参数化为具有可训练参数θ的图神经网络,即πθ(at|st),它可以学习强调度规则并泛化。

 2.2.1 Graph embedding

        这篇文章采用的是图同构网络(Graph Isomorphism Network,GIN),对给定图G=(V,E),GIN执行多次更新以计算每个节点v∈V的一维嵌入,并且迭代时的更新如下所示:

         GIN最初是针对无向图提出的,然而对JSP,析取图是一个即带有向弧的混合图,用于描述机器上的优先约束和操作序列等关键特征,这里有两种解决方法:

法一:

        将无向弧换为两条有向弧,这样的话在状态转移的过程中就需要去掉其余的无向图。

法二:

        忽略未定向的析取弧,通过添加弧的方式来表达状态转移,这样的一个缺点就是得到的状态表示更加稀疏。

 3 实验

 

 

        

评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码丽莲梦露

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值