一种解决分布式混合流水车间总延迟时间优化的强化学习蛙跳算法制造技术

技术编号:34560422 阅读:20 留言:0更新日期:2022-08-17 12:48
本发明专利技术公开了一种解决分布式混合流水车间总延迟时间优化问题的强化学习蛙跳算法,主要为了改善传统调度优化方法解决分布式混合流水车间调度问题上的不足。其主要步骤如下:(1)设计问题的三串表示方法。(2)将Q

【技术实现步骤摘要】
一种解决分布式混合流水车间总延迟时间优化的强化学习蛙跳算法


[0001]本专利技术涉及车间调度领域,具体是一种解决分布式混合流水车间总延迟时间优化的强化学习蛙跳算法。

技术介绍

[0002]混合流水车间调度问题是一类广泛存在于化工、冶金、纺织、钢铁、半导体等工业过程的典型调度问题,是流水车间调度问题和并行机调度问题的综合。随着经济全球化的不断深入发展以及市场竞争的日益加剧,企业之间的并购、合作生产和协作生产越来越多,分布式生产成为一种常见的生产制造模式。分布式生产系统能够充分利用多个工厂(车间)或者加工中心的生产制造资源,通过对资源的合理规划和共享,实现以合理的成本快速高效地完成产品的加工制造。在分布式制造环境下,多个工厂的调度都包含混合流水车间调度问题,这类问题称为分布式混合流水车间调度问题。与混合流水车间调度问题相比,分布式混合流水车间调度问题往往包括机器分配、工厂分配和调度三个子问题,其子问题更多,且子问题之间耦合关系更加复杂,如工厂分配直接影响机器分配和调度的优化内容,如果工件在所分配的工厂无法得到最优的机器分配和调度,即使工厂分配达到最优,整个问题的解也难以达到最优。另外,在实际的生产过程中,产品往往需要由多种部件装配而成,现有关分布式混合流水车间调度问题的研究只考虑了加工阶段而忽略了运输和装配阶段。

技术实现思路

[0003]本专利技术的目的就是为了克服现有技术的不足,提供一种解决分布式混合流水车间总延迟时间优化的强化学习蛙跳算法。
[0004]本专利技术采用的技术方案是:
>[0005]一种解决分布式混合流水车间总延迟时间优化的强化学习蛙跳算法,包括以下步骤:
[0006](1)Q

学习算法
[0007]Q

学习的计算形式如下:
[0008][0009]其中α表示学习比例,γ是折扣因子,r
t+1
表示在环境状态为s
t
时执行动作a
t
获得的回报,指Q

表中状态为s
t+1
时最大的Q值;
[0010]动作选择依赖于Q值,最初,所有Q值都是0,说明agent没有任何可供使用的学习经验,ε

greedy选择是一种常用的动作选择策略,其描述如下:如果随机数rand<ε,随机选择一个动作;否则,选择当前状态下Q值最大的动作a,即其中rand是[0,1]中服从均匀分布的随机数;
[0011](2)编码和解码
[0012]采用三串编码方式表达一个解,对于一个具有n个工件和F个工厂且考虑运输和装配的DHFSP,编码方案包括三个部分:工厂分配串[θ1,θ2,


n
],工件排列[π1,π2,


n
]和部件排列其中H0=0,π
i
∈{1,2,

,n},η
w
表示工件J
i
的一个部件,H
i
‑1+1≤w≤H
i
,θ
i
∈{1,2,

,F},工件J
i
的部件为H
i
‑1+1,H
i
‑1+2,

,H
i
,而是这些部件的排列。
[0013]解码过程如下:
[0014]1)根据工厂分配串将工件分配到各个工厂,由工件排列和部件排列确定每个工厂中工件和部件的排列;
[0015]2)根据工件和部件的排列,依次执行加工、运输和装配。当部件在第l个阶段加工时,选择m
l
台并行机中可利用时间最小的机器;
[0016]初始种群P由随机产生的N个解组成;
[0017](3)邻域搜索
[0018]动作a
t
由全局搜索、邻域搜索和解的接收准则组成,首先是包含3种交叉操作的全局搜索和包含12种邻域结构的邻域搜索;
[0019]应用了12种邻域结构N1‑
N
12
,N1的具体过程如下:随机选择工件J
i
和J
g

g
=θ
i
),假设i=π
v
,g=π
u
,v>u,将i插入到工件排列的位置u;N2与N1类似,区别为θ
g
≠θ
i
,令θ
i
=θ
g
,即将工件J
i
从其当前工厂转移到工件J
g
所在的工厂,N3和N1的区别在于交换工件J
i
和J
g
,而不是插入;
[0020]N4的具体步骤如下:随机选择工件J
i
和J
g

g
≠θ
i
),交换工件排列中的J
i
和J
g
,交换工厂分配串中的θ
i
和θ
g
;N5描述如下:随机选择一个工件J
i
,随机选择工件J
i
的部件η
v
和η
u
(v>u),将η
v
插入到部件排列的位置u;N6与N5类似,区别在于交换η
v
和η
u

[0021]假设工厂f是完成时间最大的工厂,在邻域结构N1中增加条件θ
g
=θ
i
=f可得到N7;N8的具体过程如下:随机选择工件J
i

i
=f)和工件J
g

g
≠f),将工件J
i
插入到工件J
g
在工件排列中的位置,令θ
i
=θ
g
;N9通过交换工件排列中属于同一工厂f的两个不同工件以产生新解;N
10
和N8类似,区别为交换工件排列中的工件J
i
,J
g
;当N5中工件J
i
的选择限制在工厂f时可得到N
11
;N
12
和N6类似,不同之处为从工厂f选择J
i

[0022]当上述工厂f的最大完成时间减少时,最大完成时间很可能会降低;N7‑
N
12
与工件和部件的移动有关,如工厂f内的插入和互换操作,工厂f和其他工厂间的插入和互换操作;
[0023]利用上述邻域结构,设计两种邻域搜索NS1和NS2,NS1描述如下,对于解x,令b=1,w=0,重复以下步骤直到b=7或w=1:产生新解y∈N
b
(x),如果y优于x,则x=y,w=1,并利用y替换x
g
;否则,令b=b+1;NS2本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种解决分布式混合流水车间总延迟时间优化的强化学习蛙跳算法,包括以下步骤:(1)Q

学习算法Q

学习的计算形式如下:其中α表示学习比例,γ是折扣因子,r
t+1
表示在环境状态为s
t
时执行动作a
t
获得的回报,指Q

表中状态为s
t+1
时最大的Q值;动作选择依赖于Q值,最初,所有Q值都是0,说明agent没有任何可供使用的学习经验,ε

greedy选择是一种常用的动作选择策略,其描述如下:如果随机数rand<ε,随机选择一个动作;否则,选择当前状态下Q值最大的动作a,即其中rand是[0,1]中服从均匀分布的随机数;(2)编码和解码采用三串编码方式表达一个解,对于一个具有n个工件和F个工厂且考虑运输和装配的DHFSP,编码方案包括三个部分:工厂分配串[θ1,θ2,


n
],工件排列[π1,π2,


n
]和部件排列其中H0=0,π
i
∈{1,2,

,n},η
w
表示工件J
i
的一个部件,H
i
‑1+1≤w≤H
i
,θ
i
∈{1,2,

,F},工件J
i
的部件为H
i
‑1+1,H
i
‑1+2,

,H
i
,而是这些部件的排列;解码过程如下:1)根据工厂分配串将工件分配到各个工厂,由工件排列和部件排列确定每个工厂中工件和部件的排列;2)根据工件和部件的排列,依次执行加工、运输和装配,当部件在第l个阶段加工时,选择m
l
台并行机中可利用时间最小的机器;(3)邻域搜索动作a
t
由全局搜索、邻域搜索和解的接收准则组成,首先是包含3种交叉操作的全局搜索和包含12种邻域结构的邻域搜索;应用了12种邻域结构N1‑
N
12
,N1的具体过程如下:随机选择工件J
i
和J
g

g
=θ
i
),假设i=π
v
,g=π
u
,v>u,将i插入到工件排列的位置u;N2与N1类似,区别为θ
g
≠θ
i
,令θ
i
=θ
g
,即将工件J
i
从其当前工厂转移到工件J
g
所在的工厂,N3和N1的区别在于交换工件J
i
和J
g
,而不是插入;N4的具体步骤如下:随机选择工件J
i
和J
g

g
≠θ
i
),交换工件排列中的J
i
和J
g
,交换工厂分配串中的θ
i
和θ
g
;N5描述如下:随机选择一个工件J
i
,随机选择工件J
i
的部件η
v
和η
u
(v>u),将η
v
插入到部件排列的位置u;N6与N5类似,区别在于交换η
v
和η
u
;假设工厂f是完成时间最大的工厂,在邻域结构N1中增加条件θ
g
=θ
i
=f可得到N7;N8的具体过程如下:随机选择工件J
i

i
=f)和工件J
g

g
≠f),将工件J
i
插入到工件J
g
在工件排列中的位置,令θ
i
=θ
g
;N9通过交换工件排列中属于同一工厂f的两个不同工件以产生新解;N
10
和N8类似,区别为交换工件排列中的工件J
i
,J
g
;当N5中工件J
i
的选择限制在工厂f时可得到N
11
;N
12

【专利技术属性】
技术研发人员:蔡劲草王雷王安恒邹阿威李伟民张小龙
申请(专利权)人:安徽工程大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1