论文阅读|《强化学习在加工时间可变的机器人流水车间调度中的应用》

《Reinforcement Learning for robotic flow shop scheduling with processing time variations》

International Journal of Production Research/2021

1 摘要

        我们解决了一个机器人流水车间调度问题,其中两种零件类型在每组给定的专用机器上进行处理。单个机器人在固定轨道上移动,一次运输一个部件,在给定的时间间隔内,这些部件在机器上的加工时间各不相同。我们使用强化学习(RL)方法来获得有效的机器人任务序列,以最小化完工时间。我们用一个用于RL环境的Petri网对该问题进行建模,并给出了完工时间的一个下界。然后,我们基于Petri网模型定义了状态、动作和奖励;进一步,我们证明了RL方法比先进先出(FIFO)规则和逆向序列(RS)更好地工作,后者被广泛应用于机器人流水作业的循环调度;此外,所提出算法的最大完工时间与下界之间的差距不大;最后,将RL方法的最大完工时间与松弛问题的最优解进行了比较。通过与FIFO、RS和一个下界的比较,证明了RL算法在机器人流水作业调度中的适用性和效率。这项工作可以很容易地扩展到机器人流水作业调度问题的其他几个变种。

2 介绍

        这篇文章介绍的机器人流水作业调度问题考虑的是:两种类型的零件以特定的顺序在机器上进行,并且这些零件在机器之间通过单个机器人按顺序地进行运输。机器人在固定轨道上运动,分别为空载、负载、等待。在给定的时间间隔内,零件在机器上的加工时间各不相同,每个零件的加工时间是在加工完成后测量的。下图展示了Robotic flow shop 的两种形式,如图,零件A依次在机器1,2,3上进行加工,零件2依次在4,5,6上进行加工。

         机器人流水车间调度问题因其在机械和电子制造业中的广泛应用而被广泛研究,如卡车差速器总成的单元化制造、金属切割和焊接。

文献扩展1:A review of recent theoretical development in scheduling dual-gripper robotic cellshttps://doi.org/10.1080/00207543.2017.1397792https://doi.org/10.1080/00207543.2017.1397792

文献扩展2:

Robot move sequence determining and multiple part-type scheduling in hybrid flexible flow shop robotic cellshttps://doi.org/10.1016/j.cie.2016.08.006https://doi.org/10.1016/j.cie.2016.08.006A reinforcement learning approach to parameter estimation in dynamic job shop schedulinghttps://doi.org/10.1016/j.cie.2017.05.026https://doi.org/10.1016/j.cie.2017.05.026

3 问题描述和模型建立

      我们考虑一个机器人流水车间,其中两种零件类型A和B分别在每组专用机器nA和nB上加工。这两种零件类型不共享加工机器。只有一个搬运机器人,一次只能搬运一个零件;而且,每个零件都从输入缓冲区进入,输出缓冲区退出,机器之间不存在缓冲区,在机器i上的第j个单元的加工时间定义为Pij,这通过Pi(Min)和Pi(max)随机决定,它的计算在加工完成后进行。

        首先使用Petri网对机器人流式车间进行建模,Petri网是离散事件动态系统的图形和数学建模工具。Petri网由库所、变迁、弧和记号组成,每个记号分别表示系统状态、事件、优先关系和实体。Petri网被广泛用于集群工具和机器人单元的建模和调度,因为它们可以很容易地表示系统状态转换或动态,以及执行操作时的资源共享和同步。

4 解决方法

4.1 State

它的状态空间可以描述为以总机器数+1的长度的空间:

其中si∈{0,1,2,3},表示机器的四种状态,哪四种状态呢?根据文中,通过单元中工件情况,可变加工时间的情况来定的;B表示在输入缓冲区中的剩余零部件类型,取值为0或1。

4.2 Action

        在流水车间中,Robotic的动作是将一个工件从当前机器转移到下一个机器,于是,对于这篇文章的问题,动作的个数根据状态来确定,因为要确定机器有没有工件可以运输。玉树,当动作确定以后,机器人即可进行下列任务:移动到目标机器,判断是否需要等待,若需要,等待,否则,运输工件到下一个机器。

 4.3 Reward

先说明两个定义:

(1)机器的等待时间可以定义为机器完成加工到机器人再次卸载工件;

(2)机器人的等待时间定义为机器人到达机器到装载工件的时间;

        在传统的调度方法中,流水作业的完工时间可以用最后一台机器的空闲和等待时间之和以及机器上所有工件的加工时间之和来计算。利用这一思想,我们可以把减少空闲和等待时间作为惩罚,以此达到最小化完工时间。

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

码丽莲梦露

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

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

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

打赏作者

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

抵扣说明:

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

余额充值