CN114545884B - 基于增强拓扑神经进化的等效并行机动态智能调度方法 - Google Patents
基于增强拓扑神经进化的等效并行机动态智能调度方法 Download PDFInfo
- Publication number
- CN114545884B CN114545884B CN202210259971.2A CN202210259971A CN114545884B CN 114545884 B CN114545884 B CN 114545884B CN 202210259971 A CN202210259971 A CN 202210259971A CN 114545884 B CN114545884 B CN 114545884B
- Authority
- CN
- China
- Prior art keywords
- time
- workpiece
- scheduling
- machine
- equivalent parallel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000001537 neural effect Effects 0.000 title claims abstract description 30
- 238000013528 artificial neural network Methods 0.000 claims abstract description 72
- 230000006399 behavior Effects 0.000 claims abstract description 47
- 238000012423 maintenance Methods 0.000 claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 29
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000003860 storage Methods 0.000 claims abstract description 7
- 230000002068 genetic effect Effects 0.000 claims abstract description 6
- 239000003795 chemical substances by application Substances 0.000 claims description 37
- 238000004519 manufacturing process Methods 0.000 claims description 24
- 230000002787 reinforcement Effects 0.000 claims description 17
- 230000003993 interaction Effects 0.000 claims description 16
- 238000004088 simulation Methods 0.000 claims description 16
- 239000002699 waste material Substances 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 11
- 230000003449 preventive effect Effects 0.000 claims description 9
- 238000012549 training Methods 0.000 claims description 9
- 230000009471 action Effects 0.000 claims description 7
- 238000012217 deletion Methods 0.000 claims description 7
- 230000037430 deletion Effects 0.000 claims description 7
- 238000009826 distribution Methods 0.000 claims description 6
- 108090000623 proteins and genes Proteins 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 4
- 230000004069 differentiation Effects 0.000 claims description 3
- 230000008030 elimination Effects 0.000 claims description 3
- 238000003379 elimination reaction Methods 0.000 claims description 3
- 230000007613 environmental effect Effects 0.000 claims description 3
- 238000003754 machining Methods 0.000 claims description 3
- 230000002452 interceptive effect Effects 0.000 claims 1
- 230000004044 response Effects 0.000 abstract description 5
- 230000002265 prevention Effects 0.000 abstract description 3
- 230000001960 triggered effect Effects 0.000 abstract 1
- 241000894007 species Species 0.000 description 14
- 238000002474 experimental method Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 241000544061 Cuculus canorus Species 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Factory Administration (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Multi-Process Working Machines And Systems (AREA)
Abstract
本发明公开了一种基于增强拓扑神经进化的动态等效并行机智能调度方法,该方法为实时响应工件动态到达、处理时间不确定且机器需要弹性预防维护等动态事件,智能生成平均流程时间最小的调度方案,界定了包括工件、机器和暂存区三个维度的状态空间,设计了三种调度行为,使用的倒数作为适应度函数,将调度过程转化为马尔可夫决策过程;从一群只有输入层和输出层而无隐藏层的种子神经网络开始,通过遗传进化逐步添加隐藏层、优化神经网络结构和参数,最终构造生成最优调度策略的神经网络;对于动态事件触发的每个决策时刻,根据实时状态选择最优调度行为,具有快速响应动态事件自适应生成最优调度方案、最小化在制品库存的特点。
Description
技术领域
本发明涉及计算机集成制造技术领域,特别涉及一种基于增强拓扑神经进化的等效并行机动态智能调度方法。
背景技术
并行机调度问题(Parallel Machine Scheduling Problem,PMSP)是将n类工件分配在m台机器上并确定工件在机器上加工顺序,以使得追求的绩效指标最优的问题,是生产调度中一类非常重要的调度优化问题,已被证明是NP-hard问题。目前有关PMSP的研究主要围绕静态问题(如假设机器一直可用,工件到达时间确定等)展开,提出的求解方法有精确法(如动态规划法、数学规划法),启发式规则(如List Scheduling,LS;ShortestProcessing Time,SPT;Weighted Shortest Processing Time,WSPT;Longest ProcessingTime,LPT;Best Fit Decreasing-Longest Processing Time,BFD-LPT),随机邻域搜索算法(如禁忌搜索TS)以及群体智能算法(如NSGA-Ⅱ,布谷鸟算法)等。由于现实生产中存在各种动态因素(如机器故障或维护、工件随机到达、紧急订单等),调度目标和约束一直处于动态变化和进化过程中,是典型的序列动态决策问题。随着强化学习技术的发展,将调度过程作为马尔可夫决策过程,根据调度问题的实时环境状态选择最合适的调度决策以最大化系统绩效成为动态调度问题的研究趋势。
早期基于强化学习的动态调度主要运用R-learning,Q-learning,Q-Ⅲlearning等算法,需要建立状态-行为-奖励之间的函数关系,适用于小规模简单问题的求解。对于中大规模复杂问题,需要采用结合神经网络的深度强化学习(Deep ReinforcementLearning,DRL)算法求解。然而,DRL算法一般采取基于固定神经网络结构的智能体学习,自适应能力较差,将强化学习与进化算法混合可望成为新的研究热点。增强拓扑神经进化(Neuro Evolution of Augmenting Topologies,NEAT)是一种基于遗传算法同时优化神经网络的拓扑结构和神经网络的节点权重参数的强化学习方法。由于不需要设计奖励函数,从最小结构逐渐增长,使用物种形成保护结构创新以及不同拓扑交叉的原则等方法,具有求解效率高、质量好等优点,已经成功应用在动态调度问题的求解。
发明内容
本发明的目的在于,提供一种基于增强拓扑神经进化的等效并行机动态智能调度方法。本发明具有实时响应工件动态到达、处理时间不确定且机器需要弹性预防维护等动态事件,智能生成平均流程时间最小的调度方案,且具有最小化在制品库存和改进生产稳定性的特点。
本发明的技术方案:基于增强拓扑神经进化的等效并行机动态智能调度方法;所述具体步骤为:
步骤S1:初始化等效并行机系统参数,定义机器Mi数m(i=1,2,…,m),工件类型Jj数n(j=1,2,…,n),工件Jj的数量npj、到达时间rj、处理时间pj以及机器弹性预防维护的界限值UT和维护时间t;
步骤S2:研究等效并行机问题的动态调度决策特征,设计与之匹配的调度行为,组成强化学习智能体的行为空间A;
步骤S3:研究等效并行机问题的动态调度环境特点,设计从工件、机器与暂存区三个维度描述环境的状态空间向量S;
步骤S4:生成规模为N的初始神经网络种群Pop,每一个初始神经网络个体都只有输入层和输出层而无隐藏层;
步骤S5:将目标值平均流程时间的倒数设置为适应度值函数,用于评价神经网络个体的优劣;
步骤S6:种群Pop中的每一个智能体所用的神经网络个体分别与等效并行机系统交互,感知实时状态,在新工件类型到达或工件完工的每一个决策时刻选择一种调度行为,通过一系列的动态决策,生成调度策略,得到适应度值;神经网络种群采用基于物种相容性阈值的种群分化、五种方式变异、交叉以及停滞物种淘汰等方式实现遗传进化,得到适应度值最高的神经网络Pbest;
步骤S7:使用步骤S6训练得到的最优神经网络Pbest作为调度智能体,当新工件到达或者工件完工时触发决策时刻,将实时车间环境状态S输入Pbest,Pbest输出行为空间中各个行为的Q值{Q1,Q2,Q3},智能体选择Q值最大的行为a=argmaxQ生成最优调度方案。
上述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S1中的初始化动态等效并行机系统按下述步骤进行:
步骤S1.1:问题描述与目标界定,等效并行机动态调度问题可以描述为将n类工件J={J1,J2,…,Jj,…,Jn},安排到m台等效的并行机上,其中每类工件jj的数量np={np1,np2,…,npj,…,npn},每类工件Jj的到达时间为r={r1,r2,…rj,…rn},每类工件的处理时间为p={p1,p2,…,pj,…pn},任何工件在加工过程不可中断,机器在生产过程中需要进行弹性预防维护,即机器的连续加工时间或役龄不能超过界限值UT,每次维护的时间为t,优化目标为最小化平均流程时间决策内容是确定工件在机器上的分配与加工顺序;
步骤S1.2:初始化等效并行机数字仿真模型,使用Spyder软件进行编程,按照调度问题的基本构成生成三个列表list1、list2、list3,分别存储各类工件的加工时间pj、各类工件的到达时间rj和各类工件的数量npj,初始化机器弹性预防维护界限UT值和维护时间t值。
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S2中的调度行为包括:
行为1:改进的启发式规则MSPT;
行为2:改进的启发式规则MFIFO;
行为3:等待不执行任何操作。
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述改进的启发式规则MSPT的步骤如下:
步骤S2.1.1:根据SPT规则从等待队列中选择加工时间最短的工件Jk;如果存在多个同类工件,则随机选择其中的一个工件Jk;
步骤S2.1.2:将工件Jk分别尝试安排在空闲机器Ml上,根据机器Ml上的剩余维护门槛值计算每种安排的批浪费/> 将工件Jk安排在批浪费最小的机器Mk上,其公式如下所示:
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述改进的启发式规则MFIFO的步骤如下:
步骤S2.2.1:根据FIFO规则从等待队列中选择最先到达的工件Jk;如果存在多个同时到达的工件,则选择加工时间最短的一个工件Jk。
步骤S2.2.2:将工件Jk分别尝试安排在空闲机器Ml上,根据机器Ml上的剩余维护门槛值计算每种安排的批浪费/> 将工件Jk安排在批浪费最小的机器Mk上,其公式如下所示:
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S3中的状态空间按照下述方法界定:
针对等效并行机动态调度的环境特点,设置状态空间向量 从工件、机器与暂存区三个维度描述环境;其中qj为等待队列中各类工件的数量;/>为当前时刻与工件Jj到达时间的时间间隔;Ti为机器Mi正在加工工件的加工时间,如需维护则增加维护时间t,如果机器Mi处于空闲状态,则Ti=0;/>为机器Mi正在加工工件的已加工时间;/>为机器Mi在当前时刻剩余的维护门槛值;整个并行机环境的状态空间向量S的维度大小为n+n+m+m+m=3m+2n。
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S5中的评价神经网络优劣的适应度函数按照下述方法确定:每一个基于神经网络的智能体与等效并行机系统进行交互,当所有工件都生产完毕,计算得到目标值平均流程时间基于目标值/>生成适应度函数,即:/>
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S6中的强化学习智能体学习与神经网络进化按下述步骤进行:
步骤S6.1:初始化种群神经网络Pop、迭代次数Genes、g=0、超参数、等效并行机系统参数等;
步骤S6.2:定义智能体与等效并行机系统仿真交互模块;
步骤S6.3:定义神经网络进化过程,当达到最大迭代次数g=Genes时停止迭代并且保存最优个体神经网络个体Pbest。
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S6.2的具体步骤如下:
步骤S6.2.1:输入个体神经网络P、工件类型数量m、机器数量n、各类型工件加工时间列表p、各类型工件到达时间列表r、各类型工件数量np;
步骤S6.2.2:初始化最大决策次数maxN;
步骤S6.2.3:初始化工件生产序列L1,用于记录生产完的工件类型编号;
步骤S6.2.4:初始化工件完工时刻序列L2,用于记录完工工件的完工时刻;
步骤S6.2.5:初始化总流程时间f=0,决策次数N=0;
步骤S6.2.6:按照维度3m+2n初始化状态
步骤S6.2.7:循环进行如下步骤操作,当所有工件都生产完毕或者决策次数达到最大值maxN,停止循环并且输出适应度值Fitness和工件生产序列L1。
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S6.2.7的具体步骤如下:
步骤S6.2.7.1:仿真时钟开始工作,记录即时时刻;
步骤S6.2.7.2:如果有新工件类型到达等待队列或者有工件生产完成,将生产完毕的工件的类型编号存入工件生产序列L1的最后位置;
步骤S6.2.7.3:将即时时刻存入工件完工时刻序列L2的最后位置;
步骤S6.2.7.4:触发决策时刻:N=N+1;
步骤S6.2.7.5:更新即时状态
步骤S6.2.7.6:将状态S输入神经网络P,P输出三个调度行为的值:{Q1,Q2,Q3},按照行为a=argmaxQ的规则对等效并行机系统进行操作。
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述步骤S6.3的具体步骤如下:
步骤S6.3.1:计算每一个神经网络与种群其它神经网络的距离;
步骤S6.3.2:按照物种相容性阈值把种群分成多个物种;
步骤S6.3.3:选择适应度最高的前Ne个个体直接进入下一代;
步骤S6.3.4:按照连接添加、节点添加、连接删除、节点删除、节点权重变异发生的概率生成新的神经网络Pnew;
步骤S6.3.5:将Pnew输入步骤6.2定义的智能体与等效并行机仿真交互模块中,保存交互模块生成的适应度值Fitnessnew;
步骤S6.3.6:取Pop前D的个体交叉操作产生子代神经网络Poffspring,D=交叉率*100%;
步骤S6.3.7:将每一个子代神经网络Poffspring输入步骤6.2定义的智能体与等效并行机仿真交互模块中,保存交互模块生成的适应度值FitnessPoffspring;
步骤S6.3.8:物种内竞争,淘汰物种内适应度值低的个体;
步骤S6.3.9:根据物种停滞进化的代数删除与更新物种。
前述的基于增强拓扑神经进化的等效并行机动态智能调度方法中,所述S7中的最优调度方案生成按照如下步骤进行:
步骤S7.1:当新工件类型到达或者工件完工时触发决策时刻,智能体获取实时车间环境状态S;
步骤S7.2:将状态S输入神经网络Pbest,Pbest输出三个调度行为的值:{Q1,Q2,Q3};
步骤S7.3:按照a=argmaxQ选择调度行为;
步骤S7.4:按照调度行为a执行调度操作,生成最优调度方案。
与现有技术相比,本发明能实现工件动态到达、处理时间不确定且机器需要弹性预防维护等多种动态事件影响下的近优生产调度方案的自适应智能生成,最小化制品库存和改进生产稳定性。由于调度期间工件和机器状态的不确定性,本发明提出了基于NEAT的等效并行机智能调度方法,强化学习智能体感知实时状态,通过一系列的动态决策生成调度策略;NEAT是一种基于遗传算法优化神经网络拓扑结构和节点权重参数的深度强化学习算法,具有不需要设计奖励函数以及能解决稀疏奖励问题的特点;基于NEAT强化学习的调度方法具备较强的泛化性,训练完毕后的模型不需要再次训练就能对随机动态的因素变化(工件动态到达、处理时间不确定且机器需要弹性预防维护等)做出自适应反应。
附图说明
图1是本发明基于增强拓扑神经进化的等效并行机动态调度方法的总体流程图;
图2是本发明适用对象等效并行机问题实例图;
图3是本发明智能体与等效并行机交互流程图;
图4是本发明基于增强拓扑神经进化的等效并行机动态智能调度方法的神经网络训练流程图;
图5是本发明不同调度方法的平均流程时间均值对比图;
图6是本发明不同调度方法的响应时间对比图。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明,但并不作为对本发明限制的依据。
实施例:基于增强拓扑神经进化的等效并行机动态智能调度方法,如附图1所示,按下述步骤进行:
步骤S1:初始化等效并行机系统参数,定义机器Mi数m(i=1,2,…,m),工件类型Jj数n(j=1,2,…,n),工件Jj的数量npj、到达时间rj、处理时间pj以及机器弹性预防维护的界限值UT和维护时间t;
如附图2所示,所述步骤S1中的初始化动态等效并行机系统按下述步骤进行:
步骤S1.1:问题描述与目标界定,等效并行机动态调度问题可以描述为将n类工件J={J1,J2,…,Jj,…,Jn},安排到m台等效的并行机上,其中每类工件Jj的数量np={np1,np2,…,npj,…,npn},每类工件Jj的到达时间为r={r1,r2,…rj,…rn},每类工件的处理时间为p={p1,p2,…,pj,…pn},任何工件在加工过程不可中断,机器在生产过程中需要进行弹性预防维护(Preventive Maintenance,PM),即机器的连续加工时间或役龄不能超过界限值UT,每次维护的时间为t,优化目标为最小化平均流程时间决策内容是确定工件在机器上的分配与加工顺序;
步骤S1.2:初始化等效并行机数字仿真模型,使用Spyder软件进行编程,按照调度问题的基本构成生成三个列表list1、list2、list3,分别存储各类工件的加工时间pj、各类工件的到达时间rj和各类工件的数量npj,初始化机器弹性预防维护界限UT值和维护时间t值;
步骤S2:研究等效并行机问题的动态调度决策特征,设计与之匹配的调度行为,组成强化学习智能体的行为空间A;
所述步骤S2中的调度行为包括:
行为1:改进的启发式规则MSPT(Modified Shortest Processing Time);
所述改进的启发式规则MSPT的步骤如下:
步骤S2.1.1:根据SPT规则从等待队列中选择加工时间最短的工件Jk;如果存在多个同类工件,则随机选择其中的一个工件Jk;
步骤S2.1.2:将工件Jk分别尝试安排在空闲机器Ml上,根据机器Ml上的剩余维护门槛值计算每种安排的批浪费/> 将工件Jk安排在批浪费最小的机器Mk上,其公式如下所示:
行为2:改进的启发式规则MFIFO(Modified First In First Out);
所述改进的启发式规则MFIFO的步骤如下:
步骤S2.2.1:根据FIFO规则从等待队列中选择最先到达的工件Jk;如果存在多个同时到达的工件,则选择加工时间最短的一个工件Jk。
步骤S2.2.2:将工件Jk分别尝试安排在空闲机器Ml上,根据机器Ml上的剩余维护门槛值计算每种安排的批浪费/> 将工件Jk安排在批浪费最小的机器Mk上,其公式如下所示:
行为3:等待不执行任何操作;
工件加工完成或新类型工件到达触发调度决策时刻,此时强化学习智能体根据环境状态选择三种调度行为中的一种;针对以下三种特殊情况的调度行为选择说明如下:
a.当等待队列中没有工件时,智能体只能选择行为3;
b.当有新类型工件到达而没有空闲机器时,智能体只能选择行为3;
c.当所有机器都处于空闲状态而等待队列中有工件时,智能体不允许选择行为3;
步骤S3:研究等效并行机问题的动态调度环境特点,设计从工件、机器与暂存区三个维度描述环境的状态空间向量S;
所述步骤S3中的状态空间按照下述方法界定:
针对等效并行机动态调度的环境特点,设置状态空间向量S=从工件、机器与暂存区三个维度描述环境;其中qj为等待队列中各类工件的数量;/>为当前时刻与工件Jj到达时间的时间间隔;Ti为机器Mi正在加工工件的加工时间,如需维护则增加维护时间t,如果机器Mi处于空闲状态,则/>为机器Mi正在加工工件的已加工时间;/>为机器Mi在当前时刻剩余的维护门槛值;整个并行机环境的状态空间向量S的维度大小为n+n+m+m+m=3m+2n;
步骤S4:生成规模为N的初始神经网络种群Pop,每一个初始神经网络个体都只有输入层和输出层而无隐藏层;
步骤S5:将目标值平均流程时间的倒数设置为适应度值函数,用于评价个体神经网络个体的优劣;
所述步骤S5中的评价神经网络优劣的适应度函数按照下述方法确定:每一个基于神经网络的智能体与等效并行机系统进行交互,当所有工件都生产完毕,计算得到目标值平均流程时间基于目标值/>生成适应度函数,即:/>
步骤S6:种群Pop中的每一个智能体所用的神经网络个体分别与等效并行机系统交互,感知实时状态,在新工件类型到达或工件完工的每一个决策时刻选择一种调度行为,通过一系列的动态决策,生成调度策略,得到适应度值;神经网络种群采用基于物种相容性阈值的种群分化、五种方式变异、交叉以及停滞物种淘汰等方式实现遗传进化,得到适应度值最高的神经网络个体Pbest;
如附图3所示,所述步骤S6中的强化学习智能体学习与神经网络进化按下述步骤进行:
步骤S6.1:初始化种群神经网络Pop、迭代次数Genes、g=0、超参数(交叉率、连接添加率、节点添加率、连接删除率、节点删除率、物种相容性阈值、节点权重变异率、适应度最高的个体直接复制到下一代的个数Ne、物种停滞允许延长的代数max_stagnation)、等效并行机系统参数(机器数量m、工件类型n、均分分布随机生成工件加工时间p、均分分布随机生成工件到达时间r、均分分布随机生成每类工件数量np);
步骤S6.2:定义智能体与等效并行机系统仿真交互模块;
所述步骤S6.2的具体步骤如下:
步骤S6.2.1:输入个体神经网络P、工件类型数量m、机器数量n、各类型工件加工时间列表p、各类型工件到达时间列表r、各类型工件数量np;
步骤S6.2.2:初始化最大决策次数maxN;
步骤S6.2.3:初始化工件生产序列L1,用于记录生产完的工件类型编号;
步骤S6.2.4:初始化工件完工时刻序列L2,用于记录完工工件的完工时刻;
步骤S6.2.5:初始化总流程时间f=0,决策次数N=0;
步骤S6.2.6:按照维度3m+2n初始化状态S=
步骤S6.2.7:循环进行如下步骤操作,当所有工件都生产完毕或者决策次数达到最大值maxN,停止循环并且输出适应度值Fitness和工件生产序列L1;
如附图4所示,所述步骤S6.2.7的具体步骤如下:
步骤S6.2.7.1:仿真时钟开始工作,记录即时时刻;
步骤S6.2.7.2:如果有新工件类型到达等待队列或者有工件生产完成,将生产完毕的工件的类型编号存入工件生产序列L1的最后位置;
步骤S6.2.7.3:将即时时刻存入工件完工时刻序列L2的最后位置;
步骤S6.2.7.4:触发决策时刻:N=N+1;
步骤S6.2.7.5:更新即时状态
步骤S6.2.7.6:将状态S输入神经网络P,P输出三个调度行为的值:{Q1,Q2,Q3},按照行为a=argmaxQ的规则对等效并行机系统进行操作;
步骤S6.3:定义神经网络进化过程,当达到最大迭代次数g=Genes时停止迭代并且保存最优个体神经网络个体Pbest;
所述步骤S6.3的具体步骤如下:
步骤S6.3.1:计算每一个神经网络与种群其它神经网络的距离;
步骤S6.3.2:按照物种相容性阈值把种群分成多个物种;
步骤S6.3.3:选择适应度最高的前Ne个个体直接进入下一代;
步骤S6.3.4:按照五种变异(连接添加、节点添加、连接删除、节点删除、节点权重变异)发生的概率生成新的神经网络Pnew;
步骤S6.3.5:将Pnew输入步骤6.2定义的智能体与等效并行机仿真交互模块中,保存交互模块生成的适应度值Fitnessnew;
步骤S6.3.6:取Pop前D的个体交叉操作产生子代神经网络Poffspring,D=交叉率*100%;
步骤S6.3.7:将每一个子代神经网络Poffspring输入步骤6.2定义的智能体与等效并行机仿真交互模块中,保存交互模块生成的适应度值FitnessPoffspring;
步骤S6.3.8:物种内竞争,淘汰物种内适应度值低的个体;
步骤S6.3.9:根据物种停滞进化的代数删除与更新物种;
步骤S7:使用步骤S6训练得到的最优神经网络Pbest作为调度智能体,当新工件到达或者工件完工时触发决策时刻,将实时车间环境状态S输入Pbest,Pbest输出行为空间中各个行为的Q值{Q1,Q2,Q3},智能体选择Q值最大的行为a=argmaxQ生成最优调度方案;
所述S7中的最优调度方案生成按照如下步骤进行:
步骤S7.1:当新工件类型到达或者工件完工时触发决策时刻,智能体获取实时车间环境状态S;
步骤S7.2:将状态S输入神经网络Pbest,Pbest输出三个调度行为的值:{Q1,Q2,Q3};
步骤S7.3:按照a=argmaxQ选择调度行为;
步骤S7.4:按照调度行为a执行调度操作,生成最优调度方案。
为了验证本文提出方法的有效性,设计了如表1所示的问题实验环境,实验所需的工件加工时长p和到达时间r都基于均匀分布生成;实验按照m、n的数值大小可把问题分成小规模、中规模和大规模三类问题,每一个规模按照均匀分布随机生成10组数据,规模分类如表1所示,NEAT在训练完成后重复测试运行5次以测试训练效果;按照问题规模的大小确定NEAT的迭代次数和初始种群大小如表2所示。
表1仿真实验的问题参数
表2 NEAT的实验参数
以经典启发式规则SPT和FIFO作为对比,重复测试5次得到的平均流程时间均值、标准差以及求解一个完整实例问题所需的运行时间RT的平均值如表3所示。
表3不同调度方法的实验结果
由表3可知,随着问题规模变大(即n和m都增加),基于NEAT算法获得的平均流程时间明显优于SPT与FIFO规则,同时运行时间也明显大于启发式调度规则,原因在于NEAT需要与等效并行机环境进行多次循环交互训练才得到最优策略,因此运行时间更长;从平均流程时间的标准差来看,NEAT与SPT的值小,表明NEAT有较好的稳定性;而FIFO值较大,表明稳定性较弱;因此,NEAT强化学习可以得到的更优的调度方案,但是需要更长的训练时间。
NEAT不但具备较好的求解能力,同时NEAT也具备较好的泛化能力,泛化能力是基于NEAT强化学习算法的动态调度方法的核心能力,只有具备了一定的泛化能力,才具有自适应动态环境的能力;为验证基于NEAT算法的泛化能力,随机生成表1大规模问题的10组实例,对每一组实例分别使用SPT、FIFO规则与训练好的NEAT算法求解10次,求得的平均流程时间的平均值和针对动态事件的响应时间T分别如附图5和附图6所示,任何一组对比实验中,NEAT找到的目标值都优于SPT与FIFO规则,响应时间也相对较短,表明NEAT调度方法具备较强的泛化能力,训练完毕后的模型不需要再次训练就能对随机变化的动态环境做出自适应反应。
Claims (9)
1.基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:按下述步骤进行:
步骤S1:初始化等效并行机系统参数,定义机器Mi数m,工件类型Jj数n,工件Jj的数量npj、到达时间rj、处理时间pj以及机器弹性预防维护的界限值UT和维护时间t;
步骤S2:研究等效并行机问题的动态调度决策特征,设计与之匹配的调度行为,组成强化学习智能体的行为空间A;
步骤S3:研究等效并行机问题的动态调度环境特点,设计从工件、机器与暂存区三个维度描述环境的状态空间向量S;
步骤S4:生成规模为N的初始神经网络种群Pop,每一个初始神经网络个体都只有输入层和输出层而无隐藏层;
步骤S5:将目标值平均流程时间的倒数设置为适应度值函数,用于评价神经网络个体的优劣;
步骤S6:种群Pop中的每一个智能体所用的神经网络个体分别与等效并行机系统交互,感知实时状态,在新工件类型到达或工件完工的每一个决策时刻选择一种调度行为,通过一系列的动态决策,生成调度策略,得到适应度值;神经网络种群采用基于物种相容性阈值的种群分化、五种方式变异、交叉以及停滞物种淘汰方式实现遗传进化,得到适应度值最高的神经网络Pbest;
步骤S7:使用步骤S6训练得到的最优神经网络Pbest作为调度智能体,当新工件到达或者工件完工时触发决策时刻,将实时车间环境状态S输入Pbest,Pbest输出行为空间中各行为的Q值{Q1,Q2,Q3},智能体选择Q值最大的行为a=argmaxQ生成最优调度方案。
2.根据权利要求1所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述步骤S1中的初始化等效并行机系统按下述步骤进行:
步骤S1.1:问题描述与目标界定,等效并行机动态调度问题描述为将n类工件J={J1,J2,…,Jj,…,Jn},安排到m台等效的并行机上,其中每类工件Ji的数量np={np1,np2,…,npj,…,npn},每类工件Jj的到达时间为r={r1,r2,…rj,…rn},每类工件的处理时间为p={p1,p2,…,pj,…pn},任何工件在加工过程不可中断,机器在生产过程中需要进行弹性预防维护,即机器的连续加工时间或役龄不能超过界限值UT,每次维护的时间为t,优化目标为最小化平均流程时间决策内容是确定工件在机器上的分配与加工顺序;
步骤S1.2:初始化等效并行机数字仿真模型,使用Spyder软件进行编程,按照调度问题的基本构成生成三个列表list1、list2、list3,分别存储各类工件的加工时间pj、各类工件的到达时间rj和各类工件的数量npj,初始化机器弹性预防维护界限UT值和维护时间t值。
3.根据权利要求1所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述步骤S2中的调度行为包括:
行为1:改进的启发式规则MSPT;
行为2:改进的启发式规则MFIFO;
行为3:等待不执行任何操作;
所述改进的启发式规则MSPT的步骤如下:
步骤S2.1.1:根据SPT规则从等待队列中选择加工时间最短的工件Jk;如果存在多个同类工件,则随机选择其中的一个工件Jk;
步骤S2.1.2:将工件Jk分别尝试安排在空闲机器Ml上,根据机器Ml上的剩余维护门槛值计算每种安排的批浪费/> 将工件Jk安排在批浪费最小的机器Mk上,其公式如下所示:
所述改进的启发式规则MFIFO的步骤如下:
步骤S2.2.1:根据FIFO规则从等待队列中选择最先到达的工件Jk;如果存在多个同时到达的工件,则选择加工时间最短的一个工件Jk;
步骤S2.2.2:将工件Jk分别尝试安排在空闲机器Ml上,根据机器Ml上的剩余维护门槛值计算每种安排的批浪费/> 将工件Jk安排在批浪费最小的机器Mk上,其公式如下所示:
4.根据权利要求1所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述步骤S3中的状态空间按照下述方法界定:
针对等效并行机动态调度的环境特点,设置状态空间向量 从工件、机器与暂存区三个维度描述环境;其中qj为等待队列中各类工件的数量;/>为当前时刻与工件Jj到达时间的时间间隔;Ti为机器Mi正在加工工件的加工时间,如需维护则增加维护时间t,如果机器Mi处于空闲状态,则Ti=0;/>为机器Mi正在加工工件的已加工时间;为机器Mi在当前时刻剩余的维护门槛值;整个并行机环境的状态空间向量S的维度大小为n+n+m+m+m=3m+2n。
5.根据权利要求1所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述步骤S5中的评价神经网络优劣的适应度函数按照下述方法确定:每一个基于神经网络的智能体与等效并行机系统进行交互,当所有工件都生产完毕,计算目标值平均流程时间基于目标值/>生成适应度函数,即/>
6.根据权利要求1所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述步骤S6中的强化学习智能体学习与神经网络进化按下述步骤进行:
步骤S6.1:初始化种群神经网络Pop、迭代次数Genes、g=0、超参数、等效并行机系统参数;
步骤S6.2:定义智能体与等效并行机系统仿真交互模块;
步骤S6.3:定义神经网络进化过程,当达到最大迭代次数g=Genes时停止迭代并且保存最优神经网络个体Pbest。
7.根据权利要求6所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述步骤S6.2的具体步骤如下:
步骤S6.2.1:输入个体神经网络P、工件类型数量m、机器数量n、各类型工件加工时间列表p、各类型工件到达时间列表r、各类型工件数量np;
步骤S6.2.2:初始化最大决策次数maxN;
步骤S6.2.3:初始化工件生产序列L1,用于记录生产完的工件类型编号;
步骤S6.2.4:初始化工件完工时刻序列L2,用于记录完工工件的完工时刻;
步骤S6.2.5:初始化总流程时间f=0,决策次数N=0;
步骤S6.2.6:按照维度3m+2n初始化状态
步骤S6.2.7:循环进行如下步骤操作,当所有工件都生产完毕或者决策次数达到最大值maxN,停止循环并且输出适应度值Fitness和工件生产序列L1;
所述步骤S6.2.7的具体步骤如下:
步骤S6.2.7.1:仿真时钟开始工作,记录即时时刻;
步骤S6.2.7.2:如果有新工件类型到达等待队列或者有工件生产完成,将生产完毕的工件的类型编号存入工件生产序列L1的最后位置;
步骤S6.2.7.3:将即时时刻存入工件完工时刻序列L2的最后位置;
步骤S6.2.7.4:触发决策时刻:N=N+1;
步骤S6.2.7.5:更新即时状态
步骤S6.2.7.6:将状态S输入神经网络P,P输出三个调度行为的值:{Q1,Q2,Q3},按照行为a=argmaxQ的规则对等效并行机系统进行操作。
8.根据权利要求6所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述步骤S6.3的具体步骤如下:
步骤S6.3.1:计算每一个神经网络与种群其它神经网络的距离;
步骤S6.3.2:按照物种相容性阈值把种群分成多个物种;
步骤S6.3.3:选择适应度最高的前Ne个个体直接进入下一代;
步骤S6.3.4:按照连接添加、节点添加、连接删除、节点删除、节点权重变异发生的概率生成新的神经网络Pnew;
步骤S6.3.5:将Pnew输入步骤6.2定义的智能体与等效并行机仿真交互模块中,保存交互模块生成的适应度值Fitnessnew;
步骤S6.3.6:取Pop前D的个体交叉操作产生子代神经网络Poffspring,D=交叉率*100%;
步骤S6.3.7:将每一个子代神经网络Poffspring输入步骤6.2定义的智能体与等效并行机仿真交互模块中,保存交互模块生成的适应度值FitnessPoffspring;
步骤S6.3.8:物种内竞争,淘汰物种内适应度值低的个体;
步骤S6.3.9:根据物种停滞进化的代数删除与更新物种。
9.根据权利要求1所述的基于增强拓扑神经进化的等效并行机动态智能调度方法,其特征在于:所述S7中的最优调度方案生成按照如下步骤进行:
步骤S7.1:当新工件类型到达或者工件完工时触发决策时刻,智能体获取实时车间环境状态S;
步骤S7.2:将状态S输入神经网络Pbest,Pbest输出三个调度行为的值:{Q1,Q2,Q3};
步骤S7.3:按照a=argmaxQ选择调度行为;
步骤S7.4:按照调度行为a执行调度操作,生成最优调度方案。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210259971.2A CN114545884B (zh) | 2022-03-16 | 2022-03-16 | 基于增强拓扑神经进化的等效并行机动态智能调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210259971.2A CN114545884B (zh) | 2022-03-16 | 2022-03-16 | 基于增强拓扑神经进化的等效并行机动态智能调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114545884A CN114545884A (zh) | 2022-05-27 |
CN114545884B true CN114545884B (zh) | 2023-12-05 |
Family
ID=81664231
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210259971.2A Active CN114545884B (zh) | 2022-03-16 | 2022-03-16 | 基于增强拓扑神经进化的等效并行机动态智能调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114545884B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106228314A (zh) * | 2016-08-11 | 2016-12-14 | 电子科技大学 | 基于深度增强学习的工作流调度方法 |
CN107767022A (zh) * | 2017-09-12 | 2018-03-06 | 重庆邮电大学 | 一种生产数据驱动的动态作业车间调度规则智能选择方法 |
CN113011739A (zh) * | 2021-03-18 | 2021-06-22 | 航天科工空间工程发展有限公司 | 一种用于卫星生产的滚动排产方法和计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI746038B (zh) * | 2020-07-02 | 2021-11-11 | 阿證科技股份有限公司 | 類神經網路人工智慧決策核心系統 |
-
2022
- 2022-03-16 CN CN202210259971.2A patent/CN114545884B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106228314A (zh) * | 2016-08-11 | 2016-12-14 | 电子科技大学 | 基于深度增强学习的工作流调度方法 |
CN107767022A (zh) * | 2017-09-12 | 2018-03-06 | 重庆邮电大学 | 一种生产数据驱动的动态作业车间调度规则智能选择方法 |
CN113011739A (zh) * | 2021-03-18 | 2021-06-22 | 航天科工空间工程发展有限公司 | 一种用于卫星生产的滚动排产方法和计算机可读存储介质 |
Non-Patent Citations (3)
Title |
---|
NeuroEvolution of augmenting topologies for solving a two-stage hybrid flow shop scheduling problem: A comparison of different solution strategies;LANG S;Expert Systems with Applications;全文 * |
基于增强拓扑神经进化的等效并行机动态调度;陈亚绒;华中科技大学学报(自然科学版);第50卷(第6期);全文 * |
基于长短期记忆近端策略优化强化学习的等效并行机在线调度方法;贺俊杰;中国机械工程;第33卷(第3期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114545884A (zh) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Luo et al. | Real-time scheduling for dynamic partial-no-wait multiobjective flexible job shop by deep reinforcement learning | |
Li et al. | An effective PSO-based hybrid algorithm for multiobjective permutation flow shop scheduling | |
CN113792924A (zh) | 一种基于Deep Q-network深度强化学习的单件作业车间调度方法 | |
Zolfaghari et al. | Comparative study of simulated annealing, genetic algorithms and tabu search for solving binary and comprehensive machine-grouping problems | |
CN111985672B (zh) | 一种多Agent深度强化学习的单件作业车间调度方法 | |
Han et al. | Effective hybrid discrete artificial bee colony algorithms for the total flowtime minimization in the blocking flowshop problem | |
Bhatt et al. | Genetic algorithm applications on job shop scheduling problem: A review | |
Zhang et al. | Real-time batching in job shops based on simulation and reinforcement learning | |
Lin et al. | A hybrid EA for reactive flexible job-shop scheduling | |
Tarkesh et al. | Facility layout design using virtual multi-agent system | |
CN107219824B (zh) | 基于滚动窗口调度技术的软件机器人集成控制调度方法 | |
Zhou et al. | A game-theory approach for job scheduling in networked manufacturing | |
Alabas et al. | A comparison of the performance of artificial intelligence techniques for optimizing the number of kanbans | |
Bi et al. | A Q-learning-based selective disassembly sequence planning method | |
CN114545884B (zh) | 基于增强拓扑神经进化的等效并行机动态智能调度方法 | |
Vasant | Hybrid mesh adaptive direct search genetic algorithms and line search approaches for fuzzy optimization problems in production planning | |
CN115793583B (zh) | 基于深度强化学习的流水车间新订单插入优化方法 | |
Li et al. | Research on dynamic multi-objective fjsp based on genetic algorithm | |
CN114415615B (zh) | 不确定需求下混流装配线平衡分配方法及装置 | |
CN113485278B (zh) | 优化两生产指标的柔性作业车间调度多目标分布估计方法 | |
Wei et al. | Composite rules selection using reinforcement learning for dynamic job-shop scheduling | |
CN114819273A (zh) | 基于多Agent全局与局部优化结合的车间调度方法 | |
Bao et al. | Research on assembly line scheduling based on small population adaptive genetic algorithm | |
Xiuli et al. | An improved differential evolution algorithm for solving a distributed flexible job shop scheduling problem | |
Hu et al. | Research on flexible job-shop scheduling problem based on the dragonfly algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |