System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术适用于调度优化,尤其涉及一种适用于多目标动态fjsp的两阶段深度强化学习方法。
技术介绍
1、目前,随着制造业需求的增大,生产车间逐渐面临大量的生产订单。由于订单数量较大,且车间生产存在柔性,这使得传统的排产规则难以在规定的交期时间内求解出满意解;除此以外,车间生产过程中也存在着许多不确定时间,诸如机器故障、新工件插入等,此类随机事件也会造成生产效率的降低,甚至生产制造混乱。
2、随着智能制造技术的不断发展,在面对此类随机事件时,车间要有着响应时间小、重调度策略优等需求,一般的,用于解决多个优化目标的车间调度的问题被称为多目标动态柔性作业车间调度问题(dynamic multi-objective flexible job shop problem,dmo-fjsp)。而现有的群智能算法等方法对于调度优化的求解时间过长,难以应对此类需求。
技术实现思路
1、本专利技术提供一种适用于多目标动态fjsp的两阶段深度强化学习方法,旨在解决现有的调度优化方法的求解时间过长的问题。
2、为解决上述技术问题,本专利技术提供一种适用于多目标动态fjsp的两阶段深度强化学习方法,包括以下步骤:
3、s1、设定外部非支配集合,获取车间实时加工数据;
4、s2、基于所述车间实时加工数据计算出多种工件状态值,并将不同种类的所述工件状态值组合得到状态向量;
5、s3、将所述状态向量输入预设第一阶段双层网络,计算出当前轮次的奖励函数计算方
6、s4、将所述状态向量输入预设第二阶段双层网络,计算出当前轮次的调度行为;
7、s5、执行所述调度行为,使车间进入新的执行状态,根据步骤s2-s4的方法计算出第二状态向量,并根据所述状态向量与所述第二状态向量的差距计算出奖励函数,并将所述状态向量、所述奖励函数计算方法、所述调度行为与所述奖励函数的数据按照阶段分别存入第一经验回放池和第二经验回收池;
8、s6、从所述第一经验回放池、所述第二经验回收池或所述外部非支配集合中随机抽取数据,对所述第一阶段双层网络及所述第二阶段双层网络进行更新;
9、s7、将所述调度行为输入所述外部非支配集合,并对所述外部非支配集合做非支配排序,保留得到非支配解,根据所述非支配解得到当前轮次的调度结果。
10、更进一步地,所述车间实时加工数据包括加工工件数量、工件完成加工的工序、各工序可用加工机器,所述多种工件状态值包括机器平均利用率uave(t)、机器利用率的标准偏差ustd(t)、总工序完工率cro(t)、工件平均完工率crjave(t)、工件完工率的标准偏差crjstd(t),其中:
11、
12、m表示机器数量,uk(t)表示第k台机器的利用率,t表示当前执行调度优化的时间;
13、
14、ni表示第i个工件的总工序数,opi(t)表示第i个工件的已完成工序;
15、
16、n表示工件数量,crji(t)表示第i个工件已完成工序;
17、
18、更进一步地,定义不同种类的所述工件状态值组合得到的所述状态向量为state,所述预设第一阶段双层网络包括第一阶一层网络和第一阶二层网络,所述第一阶段双层网络的输出节点为2,步骤s3包括以下子步骤:
19、将所述状态向量state输入所述第一阶一层网络,得到所述奖励函数计算方法goal以及对应的第一索引值index1;
20、将所述状态向量state输入所述第一阶二层网络,并根据所述索引值index选择对应的网络计算值q,计算得到第一标签值其满足:
21、
22、其中,s'表示所述状态向量state,a1'表示所述第一索引值index1,r表示预设奖励值,γ表示预设折扣系数,qw、qw-分别表示所述第一阶一层网络、所述第一阶二层网络的处理过程。
23、更进一步地,所述预设第二阶段双层网络包括第二阶一层网络和第二阶二层网络,所述第二阶段双层网络的输出节点为4,步骤s4包括以下子步骤:
24、将所述状态向量state输入所述第二阶一层网络,得到所述调度行为action以及对应的第二索引值index2;
25、将所述状态向量state输入所述第二阶二层网络,并根据所述第二索引值index选择对应的网络计算值q,计算得到第二标签值其满足:
26、
27、其中,a2'表示所述第二索引值index2。
28、更进一步地,定义所述第二状态向量为state_,所述奖励函数为reward,所述第一经验回放池为replay1,所述第二经验回收池为replay2,步骤s5中,将所述状态向量state、所述奖励函数计算方法goal、所述奖励函数reward以及所述第二状态向量为state_放入所述第一经验回放池,将所述状态向量state、调度行为action、所述奖励函数reward以及所述第二状态向量为state_放入所述第二经验回放池。
29、更进一步地,步骤s6包括以下子步骤:
30、通过随机的方式,从所述第一经验回放池replay1、所述第二经验回收池replay2、所述外部非支配集合中抽取预设大小的数据,送入到所述第一阶一层网络和所述第二阶一层网络中进行参数训练;
31、根据所述第一标签值所述第二标签值与基于所述状态向量state计算出的所述网络计算值q做梯度下降;
32、将所述第一阶一层网络、所述第二阶一层网络的网络参数分别赋值给所述第一阶二层网络、所述第二阶二层网络,以完成网络更新
33、本专利技术所达到的有益效果,在于提出了一种适用于多目标动态fjsp的两阶段深度强化学习方法,该方法采用双层神经网络求解出当前轮次中要使用的奖励函数计算方法,并采用分阶段的方式采用另一个双层神经网络求解出在满足这个奖励函数的前提下要执行的调度决策,并将最终调度结果保存至外部非支配集中,采用该非支配集中的解来更新网络参数,这个过程相较现有的强化学习算法能够解决多目标问题,同时极大地缩短了网络参数训练时间,增加了模型的收敛性。
本文档来自技高网...【技术保护点】
1.一种适用于多目标动态FJSP的两阶段深度强化学习方法,其特征在于,包括以下步骤:
2.如权利要求1所述的适用于多目标动态FJSP的两阶段深度强化学习方法,其特征在于,所述车间实时加工数据包括加工工件数量、工件完成加工的工序、各工序可用加工机器,所述多种工件状态值包括机器平均利用率Uave(t)、机器利用率的标准偏差Ustd(t)、总工序完工率CRO(t)、工件平均完工率CRJave(t)、工件完工率的标准偏差CRJstd(t),其中:
3.如权利要求2所述的适用于多目标动态FJSP的两阶段深度强化学习方法,其特征在于,定义不同种类的所述工件状态值组合得到的所述状态向量为state,所述预设第一阶段双层网络包括第一阶一层网络和第一阶二层网络,所述第一阶段双层网络的输出节点为2,步骤S3包括以下子步骤:
4.如权利要求3所述的适用于多目标动态FJSP的两阶段深度强化学习方法,其特征在于,所述预设第二阶段双层网络包括第二阶一层网络和第二阶二层网络,所述第二阶段双层网络的输出节点为4,步骤S4包括以下子步骤:
5.如权利要求4所述的适用
6.如权利要求5所述的适用于多目标动态FJSP的两阶段深度强化学习方法,其特征在于,步骤S6包括以下子步骤:
...【技术特征摘要】
1.一种适用于多目标动态fjsp的两阶段深度强化学习方法,其特征在于,包括以下步骤:
2.如权利要求1所述的适用于多目标动态fjsp的两阶段深度强化学习方法,其特征在于,所述车间实时加工数据包括加工工件数量、工件完成加工的工序、各工序可用加工机器,所述多种工件状态值包括机器平均利用率uave(t)、机器利用率的标准偏差ustd(t)、总工序完工率cro(t)、工件平均完工率crjave(t)、工件完工率的标准偏差crjstd(t),其中:
3.如权利要求2所述的适用于多目标动态fjsp的两阶段深度强化学习方法,其特征在于,定义不同种类的所述工件状态值组合得到的所述状态向量为state,所述预设第一阶段双层网络包括第一阶一层网络和第一阶二层网络,所述第一阶段双层网络的输出节点为2,步骤s3包括以下子步骤:
4.如权利要求3所述的适用于多目标动态fjsp...
【专利技术属性】
技术研发人员:岳磊,尤进一,彭凯,林利彬,蔡习文,蓝雪婧,
申请(专利权)人:广州大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。