基于混合DQN的运输资源不足柔性作业车间实时数据驱动动态调度

Posted 码丽莲梦露

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于混合DQN的运输资源不足柔性作业车间实时数据驱动动态调度相关的知识,希望对你有一定的参考价值。

《Real-time data-driven dynamic scheduling for flexible job shop with insufficient transportation resources using hybrid deep Q network 》 

Robotics and Computer-Integrated Manufacturing/2022

1 简介

        本文研究了运输资源不足的动态柔性作业车间调度问题(DFJSP-ITR),以最小化完工时间和总能耗为目标。

        为了使Agent学习根据每个决策点的生产状态选择合适的规则,提出了一种混合深度Q网络(HDQN),该网络将深度Q网络与三次扩展相结合。首先建立车间状态模型,然后设计决策点、泛型状态特征、基于遗传规划的动作空间和奖励函数。在此基础上,提出了利用HDQN进行培训的方法以及面对新工件的插入和机器故障的策略。

        本文的主要贡献如下:

        (1)建立了DFJSP-ITR的多目标优化模型,以最小工期和总能耗为目标。

        (2)为了实现基于DRL的调度,建立了车间状态模型,提出了决策点、26个泛型状态特征、基于遗传编程的动作空间和报酬函数。

        (3)提出了一种训练方法,使Agent学习在每个决策点选择合适的动作,该方法对深度Q网络(DQN)进行了三次扩展。同时,给出了一种面对机器故障和新工作插入的策略。

        (4)实验结果表明,该方法通过学习可以有效地处理扰动事件和不可见情况,与其他方法相比具有一定的通用性和优越性。

2 DFJSP-ITR的多目标优化模型

        所有作业和AGV都在开始时的装卸(L/U)位置。当AGV到达指定的机器时,如果没有分配新的运输任务,AGV将暂时停留在机器上,直到它接受另一个运输任务。在完成所有加工后,每个工件都需要返回到L/U位置。当所有工件返回L/U位置时,车间中的所有机器都将停止运行,这意味着调度过程结束。

        每台机器都有切割功率和空闲功率两个属性,空闲功率是恒定的。如果机器出故障,它就不会消耗能量。同时,每台机器都有一个缓冲区用于存储等待处理的作业,另一个缓冲区用于存储已完成操作并等待运输的作业。本文与其他研究的不同之处之一是AGV的数量少于工件的数量。

        由于扰动事件的存在,在建立DFJSP-ITR模型时,不能像静态调度那样从整体方案的角度设计目标函数。例如,机器故障会导致工序加工机器的更换,并引发额外的运输能耗,这是传统的静态调度问题模型所不能解决的。

(1)目标1:完工时间

(2)目标2:总能耗

这篇文章将能耗分为三个方面:机器加工能耗和机器等待能耗(ME)、AGV的运输能耗(TE)、辅助设备能耗(AE),都跟加工时间相关。

3 一种基于HDQN的动态调度方法

3.1 基于DRL的调度框架

总体框架分为两个阶段:离线学习和在线应用。在离线学习阶段,当订单发布到车间时,Agent(即神经网络)不断地与车间环境交互,收集历史经验。然后,Agent利用DRL方法和先前的决策经验对自己的参数进行优化。最后,Agent根据车间的实时状态学习选择合适的调度规则,从而优化目标。在在线应用阶段,将训练好的神经网络模型用于实时调度。值得一提的是,线下培训不可能考虑到现实世界中的所有情况。因此,我们会定期收集真实世界的实例和高质量的调度方案,并对训练好的神经网络模型进行重新训练和微调,这就是自学习。自学有两种方式。(1)采用带标签的高质量调度方案对训练好的神经网络进行参数微调,这是一个有监督的学习过程。(2)使用真实的实例,使用DRL方法继续训练训练好的神经网络。

 车间中Agent之间的通信架构:

        这些制造资源通过局域网(LAN)互联,实现数据交换和信息共享。具体地说,机器、AGV和仓库包含工业计算机、RFID(即射频识别)读取器、RFID标签和传感器。每台工控机(IPC)都具有数据存储、数据处理、命令发送和信息通信等功能。每台机器都有相应的缓冲器和处理设备。缓冲器与加工设备之间的搬运由机械臂完成。每辆AGV使用其移动性功能在机器和仓库之间运送工件。在工件的未加工表面贴上RFID标签,或在装载工件的托盘底部贴上RFID标签,使工件携带自己的信息进入机器、AGV或仓库区域。在车间里,每条路径都贴上了颜色标识,这使得AGV能够通过光电传感器识别正确的行驶方向。每个关键路径节点具有包含当前位置的坐标信息的RFID标签。当AGV经过关键节点时,内部IPC会自动读取相应标签中的信息,计算出运输任务属性信息(如当前任务的剩余执行时间)。

        通过这种方式,制造资源可以通过处理一系列原始制造数据来获得调度所需的高级信息,例如机器负载率和其他生产属性。云端持续读取生产过程中各种制造资源的数据,以更新和同步数字孪生模型。当云判断车间现状满足决策点条件时,调度代理根据共享的制造信息计算预设的状态特征,然后基于内部神经网络模型得到相应的调度规则。云端利用已知的作业池(包括待加工工件的信息),将调度规则转化为具体指令,并通过局域网命令相应的AGV和机器进行运输和加工。在整个制造过程中,作业机器的原则是“先分配先工序”,作业AGV的原则是“先分配先运输”。车间以这种方式运行,直到完成整个任务。订单完成后,云会使用数字孪生模型来评估制造性能,并将其显示在可视化界面上。同时,云端将优秀的和看不见的调度案例存储在数据库中,方便调度主体的自主学习。此外,专家将收集有效的调度方案来更新云的神经网络模型。

3.2 车间状态模型

为了设计基于HDQN的动态调度方法的关键要素,首先建立了各时间点的车间状态模型。它由生产资源部分和运输任务池部分组成,具体如下:

3.2.1 生产资源部分

        生产资源部分有三种符号来描述车间中的各种资源:物理对象(每个作业)、制造资源(每个机器)和运输资源(每个AGV)。它如图3所示,相应的符号如表3所示。

 3.2.2 运输任务池部分

        运输任务池部分由在一个时间点需要运输的所有作业组成,即调度对象。运输任务池部分如图4所示,相应的符号如表4所示。该部分中的JPJa作业根据其目的地分为两类:机器或L/U位置。前者需要分配AGV和机器,而后者只需要分配AGV。

 3.3  4个关键因素

3.3.1 定义决策点

根据车间是否存在故障机器,将决策点分为两种情况。当车间有台故障机器和正常机器,我们将定义为正常机器完成缓冲区和已进行加工的所需的最小时间,即假设所有作业都已到达缓冲区,于是:

 3.3.2 状态空间

 3.3.3 基于GP的动作空间

        每个通用规则由三种调度规则组成:工序排序规则(第1-6行)、AGV分配规则(第7行)和机器分配规则(第8-13行)。将这些调度规则组合成12个公共规则规则Rule:

        在生成通用规则后,利用GP合成通用规则,形成高质量的GP规则。在GP中,12个公共规则构成终端集合,6个数学运算符(+、-、*、/、min、max)构成函数集合。其中,除法运算的除数为0时返回1,其他情况下返回正常计算值。初始种群的生成采用斜对半方法。选择部分采用轮盘赌方式。在交叉部分,随机选择一个节点作为交叉点,两个个体与以交叉点为根节点的子树互换。在突变部分,随机选择一个节点作为突变点,并为该个体随机生成一个以该突变点为根节点的新的子树。在个体(即GP规则)的形成过程中,不同公共规则之间的数学运算可能会遇到不同单位的问题,如规则1/(规则11+规则8)。因此,在使用每个个体时,涉及的每个公共规则都会执行优先级归一化。最后,基于上述设置,从指定迭代次数后的最后一次迭代的群体中选出最好的12条高质量GP规则,即12个动作,它们构成了HDQN的动作空间。综上所述,基于遗传算法的动作空间进化可以有效地提高动作的质量,从而提高了该方法的性能。

3.3.4 奖励函数

        这篇文章将奖励函数分为两部分,分别针对能耗和工期。

        第一个奖励是关于工期的。本文通过最小化单步转移时间来实现最大完工时间最小化。这里我们将从开始到时间点t的时间定义为由Eq计算。(18):

         第二个奖励是关于能源消耗的。机器在空闲运行或处理状态下消耗能量,AGV在运输状态消耗能量,辅助设施从的消耗能量,因此定义用公式表示:

 于是,奖励函数设置为:

 4 训练方法

 5 实验

        车间布局如下:

训练过程: 

 规则对比:

 

 

 

以上是关于基于混合DQN的运输资源不足柔性作业车间实时数据驱动动态调度的主要内容,如果未能解决你的问题,请参考以下文章

Tensorflow2.0|基于深度强化学习(DQN)实现动态柔性作业车间调度问题(DFJSP)

DQN学习使用混合规则的柔性车间AGV实时调度(关注点:状态奖励函数的设置)

基于数字孪生的柔性作业车间动态调度

优化求解基于NSGA-2的求解多目标柔性车间调度算法

车间调度基于NSGA-2的求解多目标柔性车间调度算法

基于深度强化学习的柔性作业车间动态调度