一种基于强化学习的机械车间任务调度节能优化系统
技术领域
本发明涉及机械制造业能耗、节能优化调度等领域,尤其涉及一种基于强化学习的机械车间任务调度节能优化支持系统。
背景技术
全球气候变暖和碳排放在全球范围都已经提上了议事日程。目前,我国面临巨大挑战的能源和环境等都是迫使制造业节能的重要因素。电能作为机械车间生产过程的必需动力源,减少其消耗不仅是为了降低生产运行成本,而且也可以为减少CO2的排放提供一个有效途径。我国目前机床拥有量大,机械车间能耗总量巨大,因而其能耗问题也日益受重视,并被视为机械制造领域实现可持续发展必须解决的重要问题之一。
机械车间是一种以机床为主体,在加工生产任务的同时产生大量能量消耗的制造系统。机械车间的能耗问题越来越受到广泛的关注。例如:ZL 201010197265.7公开的发明名称为《一种机床能量回收系统》,提供了一种可以回收机床多余损耗能源的机床回收系统。ZL201110095627.6公开的发明名称为《机床主传动系统加工过程能耗信息在线检测方法》,提供了一种机床主传动系统加工过程能耗信息在线检测方法,用于求取主轴电机输入功率、损耗功率、机械传动系统损耗功率、切削功率等主传动系统能耗信息的实时数据。申请号为201210131766.4公开的发明名称为《一种数控机床服役过程的能量消耗预测方法》,提供一种对数控机床服役过程能量消耗特点分析的基础上,建立以启动、空载和加工三类子过程能耗预测为基础的数控机床服役过程能耗预测模型,用于机床运行使用过程的能耗分析。申请号为201210127826.5公开的发明名称为《数控机床加工过程机电主传动系统能量效率获取的方法》,提供一种依据机床加工过程机电主传动系统能量效率数学模型、机床空载功率与转速的关系函数、以及附加载荷损耗系表格函数,就可从数学模型中算出机床加工过程机电主传动系统的能量效率。上述技术方案重点从设备能耗的角度去研究机械车间能耗问题。
生产调度等生产过程优化运行相关问题的研究,一直是国内外研究的一个热点问题,如何减少加工时间,提高加工质量以及降低加工成本等是当前生产过程优化运作研究中关注的主要问题。例如申请号为201210466057.1.X发明专利名称为《一种混合流水车间调度方法》,公开了一种混合流水车间调度方法,用于解决满足不同零件的交货期,减少库存,保持生产节拍平衡等问题。申请号为201210012320.X发明专利名称为《一种基于改进遗传算法的动态扰动下的模糊化参数作业车间调度控制方法》,公开了一种基于改进遗传算法的动态扰动下的模糊化参数作业车间调度控制方法,用于解决不确定的加工时间和交货期下的调度问题;上述调度方法研究都是以减少生产时间,降低成本等传统的调度目标进行研究,而忽略了机械车间能耗问题。
实际上,Drake等人的研究发现,大量的能量消耗在机床的启动和待机过程。Gutowski等提出在大批量加工情况下,超过85%的能量是用在非直接加工零件过程。由此可见,仅仅通过研究机床设备本身能耗来实现车间的节能降耗是远远不够的。因此,如何从生产运作管理的手段实现机械加工车间节能还有待解决。
发明内容
本发明的目的是:提供一种具备自行决策能力的机械车间任务调度节能优化支持系统,通过Q学习控制器和学习环境的交互为初次调度方案获取一个节能优化策略,从而实现通过机械车间生产任务加工机床的合理选择和任务加工顺序的合理安排,对生产任务加工过程的进行节能优化。
为实现上述目的,本发明采取的技术方案是:一种基于强化学习的机械车间任务调度节能优化系统,包括:调度目标函数模块、基础数据库、调度规则库、初次调度执行模块、节能优化规则库、节能优化模块和调度方案库;其中,
调度目标函数模块:设定调度目标为调度任务完成加工总能耗最小f1=min(EC)和总时间最小f2=min(T);
基础数据库:包括工件信息、机床信息和加工信息;
调度规则库:包括先到先服务(FCFS)规则;
初次调度执行模块:利用从调度规则库选取的调度规则作为调度的运算法则,对调度任务包含的基础数据库的信息进行计算,确定各个工序的加工机床以及在机床上的加工顺序,从而得到初次调度方案;
节能优化规则库:针对调度目标,对调度专家进行调研,统计节能优化经验,并把节能优化经验处理表示为if<判定条件>,then<执行动作1>,else<执行动作2>的语法形式,从系统外部知识拓展接口录入,存入节能优化规则库;
节能优化模块:包括学习环境和Q学习控制器,通过Q学习控制器和学习环境的交互,为初次调度方案获取一个节能优化策略,其中:
学习环境:包括
车间能耗模型:
加工时间模型:T=Tend-Tstart;
调度方案评估模型值:en=g(f1,f2);即为调度目标函数模块:设定调度目标为调度任务完成加工总能耗最小f1=min(EC)和总时间最小f2=min(T);
其中:ECijk为工件i的第j道工序在机床k上的加工所需要能耗;Pk是机床k的待机功率;ITk为机床k的待机时间;Tstart为当前调度方案下首先加工工件的第一道工序加工开始时刻,Tend当前调度方案下最后加工工件的最后一道工序加工结束时刻;
Q学习控制器:包括定义Q学习算法的动作集、状态空间、惩罚函数和算法流程,以及最终整个Q学习算法的运行;其中,
1)动作集和状态空间划分:
Q学习算法动作集合由通过专家节能优化经验转化的节能优化规则组成;动作集用a表示即a={a1,a2,...,aq};其中每一个动作就是指执行节能优化规则集合R={R1,R2,...,Ri}相应的规则;状态空间S={S0,S1,S2,S3,S4,S5}是指把调度方案评估模型值e作为Q学习算法状态划分变量,利用初次调度方案的评估模型值e0作为参考值,状态划分为:状态S0简写为状态0:0<e<0.6e0,同理其他五个状态分别为状态1:0.6e0≤e<0.8e0,状态2:0.8e0≤e<e0,状态3:e0≤e<1.2e0,状态4:1.2e0≤e<1.4e0,状态5:1.4e0≤e;
2)惩罚函数:
Q学习算法中的立即回报r选择;
惩罚函数为:其中r为立即回报,e为评价函数值即调度方案评估模型值;
3)算法流程:
Q学习算法流程如下:
步骤0:初始化Q值,对于所有的状态S和动作a,令α=0.1,γ=0.9,Q(S,a)=1,en=e0,n=1;
步骤1:根据en值的范围获取当前状态St可执行优化规则集合R,若结束;否则转至步骤2;
步骤2:根据步骤1获取的系统当前状态St所处的循环次数,若n>N,结束;否则转至步骤3;
步骤3:计算每个动作的选取概率选取概率最大的动作aqmax,其中aq表示第q个动作;aqmax表示选取概率p(aq/St)最大的动作,
步骤4:执行选取概率最大的动作aqmax,计算新的en+1值,根据en+1获得立即回报r和系统下一个状态St+1;
步骤5:按照式:Q(St+1,aq)=(1-α)Q(St,aq)+α(r+γV*)更新Q函数;
步骤6:更新状态,令St=St+1,en=en+1,n=n+1;
步骤7:转至步骤1,直到出现终止状态或者稳定状态;
其中,N为算法循环次数,即学习周期;en为当前调度方案的调度方案评估模型值,en+1为执行了优化规则后新的调度方案的调度方案评估模型值;e0为初次调度方案的调度方案评估模型值;pmax(aq/St)为动作选择的概率的最大值,aqmax为pmax(aq/St)下的动作;在算法初始阶段,所有Q函数值均相等,但随着循环的反复,具有较大Q值的动作具有较大概率的被选中;学习率α的选择影响Q算法的学习效率;折扣系数γ越接近于0,学习越不考虑长远,更趋于接收即时奖惩;反之,越接近于1,学习越具有远见,能减少即时奖惩对学习策略的影响;
调度方案库:用于存储初次调度方案和节能优化过程中不断更新的调度方案。
相比现有技术,本发明具有如下有益效果:
1、本发明提出了一种基于强化学习的机械车间任务调度节能优化系统,在调度目标函数模块设定调度目标,通过从调度规则库中选取调度规则并利用基础数据库的基础数据,在初次调度执行模块执行初次调度,得到初次调度方案;然后从系统外部知识拓展接口录入调度专家节能优化经验,得到节能优化规则;同时,在节能优化模块建立学习环境,包括车间能耗模型、加工时间模型及调度方案评价模型;最后,通过Q学习控制器和学习环境的交互为初次调度方案获取一个节能优化策略。该系统可以通过调度方法手段减少机械车间生产过程能量消耗,对于机械车间节能减排具有重大意义。
2、每种调度规则都追求局部和单一目标,所获得的调度方案往往具有继续优化的空间,因而本发明将调度专家的经验转化为节能优化规则,建立学习环境,通过Q学习算法和环境的交互,实现对节能优化规则的决策,最终获得节能优化策略。因此,该系统具有简单、直观、计算复杂程度低、易于拓展,学习决策过程不需要人工干预等特点。
3、本发明在不改变现有生产设备、生产工艺等生产条件下,不增加生产成本的前提下,支持采用生产运行管理手段,实现车间生产运行过程的节能优化,实施过程简单,成本小,不影响生产。
4、本发明不仅涉及机床对任务进行加工的能耗,还包括机床等待下一加工任务空闲时段的待机能耗,这一过程能够有效地支持机械车间对非生产时段设备产生的无附加价值的能量浪费实施节能优化。
附图说明
图1是基于强化学习的机械车间任务调度节能优化系统原理框图;
图2是Q学习算法和学习环境交互流程图;
图3是实施例初次调度后得到调度方案的系统界面;
图4是实施例优化规则动作示意图;
图5是实施例整个Q学习过程评价函数值在每个学习周期中变化过程图;
图6是实施例在第3个学习周期节能优化调度方案的系统界面。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案作进一步的说明。
一种基于强化学习的机械车间任务调度节能优化系统,包括:调度目标函数模块、基础数据库、调度规则库、初次调度执行模块、节能优化规则库、节能优化模块、调度方案库;其中,
调度目标函数模块:设定调度目标为调度任务完成加工总能耗最小f1=min(EC)和总时间最小f2=min(T);
基础数据库:包括工件信息,机床信息(包括机床待机功率),加工信息(包括加工机床,加工能和加工时间);
调度规则库:包括先到先服务(FCFS)、最短加工时间优先(SPT)、最短剩余加工时间优先(LWR)、订单交货期最早优先(EDD)等;
初次调度执行模块:利用从调度规则库选取的调度规则作为调度的运算法则,对调度任务包含的基础数据(来源于基础数据库,包括:工件信息、机床信息、加工信息)进行计算,确定各个工序的加工机床以及在机床上的加工顺序进行安排,从而得到初次调度方案;
节能优化规则库:针对调度目标,对调度专家进行调研,统计节能优化经验,并把处理表示为if<>,then<>,else<>的语法形式,从系统外部知识拓展接口录入,存入节能优化规则库;
节能优化模块:节能优化模块主要包括学习环境和Q学习控制器,通过Q学习控制器和学习环境的交互,为初次调度方案获取一个节能优化策略,其中:
学习环境:包括车间能耗模型、加工时间模型及调度方案评价模型;
Q学习控制器:包括定义Q学习算法的动作集、状态空间、惩罚函数和算法流程,以及最终整个Q学习算法的运行;
上述基于强化学习的机械车间任务调度节能优化支持系统,通过调度方法手段减少机械车间生产过程能量消耗,对于机械车间节能减排具有重大意义,并按如下方法实现:
第一步:获取初次调度方案:在调度目标函数模块设定调度目标,通过从调度规则库中选取调度规则并利用基础数据库的基础数据,在初次调度执行模块执行初次调度,得到初次调度方案;
第二步:首先,从系统外部知识拓展接口录入调度专家节能优化经验,得到节能优化规则;同时,在节能优化模块建立学习环境,包括车间能耗模型、加工时间模型及调度方案评价模型;然后,定义Q学习算法的动作集、状态空间、惩罚函数和算法流程,通过Q学习控制器和学习环境的交互为初次调度方案获取一个节能优化策略;
上述步骤的详细叙述如下:
1、获得初次调度方案:
参见图1中,当车间下达了调度任务时,首先在调度目标函数模块设定调度目标,包括调度任务完成总能耗最小f1=min(EC)和总完成时间最小f2=min(T)。然后针对调度目标,利用调度任务涉及的工件信息,机床信息(包括机床待机功率等),加工信息(包括加工机床,加工能耗,加工时间等)执行初次调度,包括:第一,将任务分配到指定机床,工序有多机床可选择加工时,可按照最小加工能耗原则或最小加工时间原则等为工序指定加工机床;第二,利用调度规则为调度任务确定一个调度方案,即对分配到每台加工机床上的加工工序进行加工先后顺序排序,确定其加工开始时间和结束时间。其中调度规则是指调度优先规则,如先到先服务(FCFS)、最短加工时间优先(SPT)、最短剩余加工时间优先(LWR)或订单交货期最早优先(EDD)等。
其中,所述工件信息包括零部件图号、零部件名称、产品型号、产品名称、材料牌号、毛坯种类、毛坯外形尺寸、毛坯技术要求、工件重量、每批件数、每台件数、工件备注、工序流水号、工序名称、工序内容、工序备注和工序图片路径;
机床信息包括机床待机功率、机床编号、机床类型编号、机床类型、机床名称、机床待机功率、机床额定功率、主电机功率、机床加工范围和机床备注;
加工信息包括包括加工流水号、工件编号、工序编号、机床编号、加工时间、加工能耗、加工车间、更新日期、加工次数、冷却液、夹具编号和夹具名称。
2、获取节能优化调度方案:
2.1节能优化规则获取:
调度规则由于简单、易于实现和计算复杂度低,常被用于车间调度实际运用。调度规则实质上是一种局域内的贪心搜索方法;在当前调度情况下,按本规则指标选出最好的作业。因此,在全局范围内,利用调度规则获取的调度方案往往存在可以进行优化的空间。
本发明充分利用调度专家经验对利用规则得到的初次调度方案进行节能优化。通过对多位专家的节能优化分析决策过程进行统计,经过处理后,得到实现相应调度目标的优化规则。因此,基于专家经验知识的优化规则具有很强的针对性和拓展性。
为了便于对节能优化规则的存储和运算,将节能优化规则转化为计算机可以识别的产生式规则,语法格式为:
if<判定条件>,then<执行动作1>,else<执行动作2>。
2.2学习环境的建立:
Q学习作为主要的强化学习方法之一,是通过和环境进行交互,利用不确定的环境奖惩来发现最优行为序列。因此,学习环境的搭建要与优化目标相匹配,以利于环境能够针对动态调整的调度方案有正确的评估以及做出适当的奖惩。结合节能优化目标,本发明在学习环境中搭建调度方案的能耗模型、时间模型,用于计算该调度方案下加工任务所需的能耗和时间;并构建了能耗和时间的调度方案评价模型,每次根据调度方案评估模型值对当前的调度方案进行奖惩。
学习环境包括:
车间能耗模型:
加工时间模型:T=Tend-Tstart;
调度方案评价模型:e=g(f1,f2);
其中:ECijk为工件i的第j道工序在机床k上的加工所需要能耗;Pk是机床k的待机功率;ITk为机床k的待机时间;Tstart为当前调度方案下首先加工工件的第一道工序加工开始时刻,Tend当前调度方案下最后加工工件的最后一道工序加工结束时刻。
2.3Q学习算法设计:
Q学习算法是目前强化学习的主要算法之一,其思想是直接优化一个可迭代计算的Q函数,获得最优的控制策略。该算法用“状态-行动”对的Q(s,a)值对累积报酬进行估计,
Q(s,a)的更新等式可以表示为:
Q(St+1,at)=(1-α)Q(St,at)+α(r+γV*)
其中,Q(s,a)是在状态St下执行动作at的预期值;r是执行动作at获得的立即回报;α是控制收敛的学习率;γ是折扣因子;V*是在St状态下Q的最大值,即:
1)动作集和状态空间划分:
Q学习算法动作集合由通过专家节能优化经验转化的节能优化规则组成。动作集用字母a表示即a={a1,a2,...,ai},其中每一个动作就是指执行节能优化规则集合R={R1,R2,...,Ri}相应的规则;状态空间S={S0,S1,S2,S3,S4,S5}是指把调度方案评估模型值e作为Q学习算法状态划分变量,利用初次调度方案的评估值e0作为参考值,状态划分为:状态S0简写为状态0(0<e<0.6e0),同理其他五个状态分别为状态1(0.6e0<=e<0.8e0),状态2(0.8e0<=e<e0),状态3(e0<=e<1.2e0),状态4(1.2e0<=e<1.4e0),状态5(1.4e0<=e);
划分的状态空间如表1所示:
表1状态划分决策表
2)惩罚函数:
Q学算法中的立即回报r选择;
惩罚函数:其中r为惩罚值即立即回报,e为调度方案评估模型值。
3)算法流程:
Q学习算法(参见图2)流程如下:
步骤0:初始化Q值,对于所有的状态S和动作a,令α=0.1,γ=0.9,Q(S,a)=1,ei=e0,n=1;
步骤1:根据ei值获取当前状态Sk可执行优化规则集合R,若结束;否则转至步骤2;
步骤2:根据获取系统当前的状态Sk,若n>N,结束;否则转至步骤3;
步骤3:根据系统当前状态,计算每个动作选取概率选取概率最大的动作aimax;
步骤4:执行动作aimax,计算新的ei+1值,根据ei+1获得立即回报r和系统下一个状态Sk+1;
步骤5:按照式:Q(St+1,at)=(1-α)Q(St,at)+α(r+γV*)更新Q函数;
步骤6:更新状态,令Sk=Sk+1,ei=ei+1,n=n+1;
步骤7:转至步骤1,直到出现终止状态或者稳定状态;
其中,N为算法循环次数,即学习周期;ei为当前调度方案的调度方案评估模型值,ei+1为执行了优化规则后新的调度方案的调度方案评估模型值;e0为初次调度方案的调度方案评估模型值。pmax(ai/St)为动作选择的概率的最大值,aimax为pmax(ai/St)下的动作;在算法初始阶段,所有Q函数值均相等,但随着循环的反复,具有较大Q值的动作具有较大概率的被选中。学习率α的选择影响Q算法的学习效率。折扣系数γ越接近于0,学习越不考虑长远,更趋于接收即时奖惩;反之,越接近于1,学习越具有远见,能减少即时奖惩对学习策略的影响。本发明的目的是使系统长远的惩罚成本最小,因此选择较大的γ值,分别选择α=0.1,γ=0.9。
实施例:
一种基于强化学习的机械车间任务调度节能优化支持系统,并采用本系统对某车间调度任务进行节能优化调度运用,其过程如下:
某车间所拥有机床的待机功率信息如表2所示:
表2车间机床待机功率
现有一批由3个工件组成的加工任务,每个工件所有工序的加工机床、加工时间和加工能耗等历史统计信息如表3所示:
表3工件每个工序对应加工机床、加工时间(h)和加工能耗(kW.h)
将下表2中的机床待机功率信息和表3中的任务加工信息存入本发明系统的基础数据库中,供系统初次调度模块使用。
1、获得初次调度方案:
在所发明系统的调度目标函数模块中,设定调度目标为任务完成总能耗最小f1=min(EC)和总完成时间最小f2=min(T)在;然后在初次调度模块,从调度规则库中选取最小加工能耗原则将工序分配到机床,选用调度规则库中的先到先加工规则(FCFS)对任务在各个机床上的加工先后顺序进行排序。机床启停机策略规定为有任务到达机床时开始加工,直到机床完成所有分配的任务后才停机。最后,通过机械车间生产调度节能优化支持系统得到的初次调度执行模块的方案如图3所示。
2、获取节能优化调度方案:
2.1节能优化规则:
利用由专家经验提出的3个减少待机能耗的节能优化规则(示意图参见图4),通过系统的外部知识拓展接口,存入节能优化规则库,通过Q学习控制器和学习环境进行交互,对节能优化规则进行决策。
优化措施1:安排其他任务在待机0时间段加工;
优化措施2:转移待机0时间段以后的工序到其他机床上加工;
优化措施3:转移待机0时间段以前的工序到其他机床上加工;
将以上专家经验转化为计算机可以识别的产生式规则,以存入系统节能优化知识库,可以表示为:
优化规则R1:if<可以安排其他任务到待机0时间段>,then<规则R1执行标识为真,可以调用执行规则R1的方法>,else<规则R1执行标识为假>;
优化规则R2:if<待机0时间段以后工序可以安排到其他机床>,then<规则R2执行标识为真,可以调用执行规则R2的方法>,else<规则R2执行标识为假>;
优化规则R3:if<待机0时间段以前工序可以安排到其他机床>,then<规则R3执行标识为真,可以调用执行规则R2的方法>,else<规则R3执行标识为假>。
2.2学习环境调度方案评价模型:
针对时间和能耗目标,定义调度方案评价模型为综合考虑完成任务加工的时间T和能耗EC的综合评价值最小,引入权重系数λ(0<λ<1),则调度方案评价模型可以表示为:
e=min(λEC+(1-λ)T)
该案例中,若考虑总能耗和加工时间同等重要,则权重系数λ取为0.5。
2.3动作集和状态空间:
基于上述节能优化规则和调度方案评价模型,制定状态空间如表4,存入系统的状态行为信息模块,供学习控制器使用。
表4状态划分决策表
2.4执行节能优化:
在系统节能优化模块中,通过Q学习控制器和学习环境的交互,实现对节能优化规则的决策选取,最终得到初次调度方案的节能优化策略,获得节能优化的调度方案。
由于此案例工序数目比较少,因此学习循环次数N可以设置较小值即可结束学习,此处设N=10。对初次调度方案实施节能优化后,图3所示的初次调度方案在Q学习程序运行过程中调度方案评价模型函数值在每个学习周期中变化过程如图5所示。
从图5可以看出,所提方法从第3次循环开始,就找到了最优解。后面的学习过程出现了重复状态,即学习已经结束。因此,状态划分、动作策略、惩罚函数所设计的Q学习方法到达了收敛性效果。
当第3个学习周期,节能优化的调度方案的系统界面如图6所示。
初次调度结果和节能优化调度结果对比如表5所示:
表5优化前后调度结果对比
由表5可以看出,初次调度采用了先到先加工规则(FCFS),因此在任务完成时间上会占有优势;同时,初次调度采用了机床最小加工能耗规则,在加工能耗上也会有利。由于本案例采用Q学习算法是在初次调度的基础上采用针对待机能耗的优化规则,因此在待机能耗项目优化了90.67%,而总能耗减少9.67%。在调度方案评价模型中,时间和能耗的权重系数λ取为0.5情况下,最终的评估值优化了7.22%。综上所述,本发明专利取得了良好的节能优化效果。
最后需要说明的是,以上实施例仅用以说明本发明的技术方案而非限制技术方案,尽管申请人参照较佳的实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,那些对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,均应涵盖在本发明的权利要求范围当中。