[发明专利]一种基于规则参数全局协调优化的调度规则智能挖掘方法无效
申请号: | 201010119396.3 | 申请日: | 2010-03-08 |
公开(公告)号: | CN101794115A | 公开(公告)日: | 2010-08-04 |
发明(设计)人: | 刘民;董明宇;吴澄 | 申请(专利权)人: | 清华大学 |
主分类号: | G05B13/02 | 分类号: | G05B13/02 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100084 北京市10*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种基于规则参数全局协调优化的调度规则智能挖掘方法,属于自动控制、信息技术和先进制造领域,具体涉及面向复杂生产过程实时调度环境的调度规则的智能挖掘方法,其特征在于包括以下步骤:建立面向复杂生产过程实时调度环境的调度规则智能挖掘框架、建立调度问题实例分类模型、构建并求解调度规则参数全局协调优化问题。本发明基于所提出的调度规则智能挖掘框架,采用双层模糊C均值聚类方法对调度问题实例进行分类。针对每类调度问题实例构建规则参数全局协调优化问题并采用基于线性划分粒子群算法求解该优化问题,其中,采用贝叶斯估计方法对调度规则性能进行综合评价。所获得的调度规则对相似调度环境下不同问题实例均具有较好的调度效果。 | ||
搜索关键词: | 一种 基于 规则 参数 全局 协调 优化 调度 智能 挖掘 方法 | ||
【主权项】:
1.一种基于规则参数全局协调优化的调度规则智能挖掘方法,其特征在于,所述方法是在调度规则挖掘计算机和生产调度信息采集装置上依次按以下步骤实现的:第一步:定义调度问题实例调度问题实例记为Problem,其可定义如下:现有N个工件组成工件集合J={1,…,N}。m个机器组组成机器组集合M={M1,M2,…,Mm},其中机器组Mi由N(Mi)台相同的并行机器组成。有s个加工工序S={S1,S2,…,Ss},其中工序Si所包含的机器组集合为MS(Si)。工件i的释放时刻为Ri、完成时间为Ci、交货期为Di,其加工过程由ni个操作组成,操作Oij可在机器组中任一台机器上加工,其加工时间为p(Oij),操作Oij在工艺路径中的直接后续操作集合用next(Oij)表示,直接前续操作集合用prev(Oij)表示。a(Oij)、b(Oij)和c(Oij)分别为操作Oij的到达时间、加工开始时间和加工结束时间。加工过程满足如下约束:●不可中断约束:操作一旦开始加工就不能停止,直至加工完成;●工艺路径约束:即工件的各操作必须按预定的工艺路径要求进行加工。在满足上述约束的条件下,本发明设定的调度目标有两种:●最小化拖期数(在一个调度问题实例中,完成时间Ci晚于交货期Di的工件总数):其中●最小化制造周期(在一个调度问题实例中,加工完所有工件所用的时间):min{max{Ci|i=1,2,…,N}}第二步:在所述的规则挖掘计算机上安装调度规则智能挖掘软件调度规则智能挖掘软件由面向复杂生产过程实时调度环境的调度规则智能挖掘框架实现。该框架的核心是将调度规则挖掘过程转化为调度规则参数全局协调优化过程。该框架包括构建调度问题实例库、划分调度问题实例、构建同类型调度问题实例库、针对每类问题实例构建并求解规则参数全局协调优化问题。调度规则智能挖掘框架首先根据实际生产数据,构建调度问题实例,并将调度问题实例保存在调度问题实例库中,之后将调度问题实例库中的相关调度问题实例进行划分并产生调度问题实例类型,对每类相关调度问题实例,产生同类型的多个调度问题实例并构建调度规则参数全局协调优化问题,在此基础上,采用规则参数全局协调优化算法求解上述规则参数优化问题,在每次参数迭代优化过程中,将参数给定的调度规则作用于上述同类型多个调度问题实例进行生产过程仿真,获得相应的多个调度性能指标,并采用调度规则综合评价方法对当前调度规则进行评价,所获得的评价值作为规则参数全局协调优化问题的目标函数值,最终获得优化后的调度规则。面向复杂生产过程调度问题的调度规则智能挖掘框架的示意图如图2所示。按照上述调度规则挖掘框架,调度规则智能挖掘软件包括构建调度问题实例库模块、调度问题实例划分模块、构建同类型调度问题实例库模块、构建调度规则参数全局协调优化问题模块、求解调度规则参数全局协调优化问题模块。第三步:生产实时信息采集用生产调度信息采集装置采集生产实时信息,包括生产工件信息(工件数量、工件中各操作加工时间、工件释放时间、工件交货期、工件工艺路径信息)、生产进度信息(操作在机器上的开工时间、结束时间、暂停时间)、设备信息(故障信息、维修保养信息)。并将上述信息通过网线传送至调度规则挖掘计算机。第四步:构建调度问题实例库在所述的调度规则挖掘计算机中调用构建调度问题实例库模块,建立调度问题实例库。根据第一步所定义的调度问题实例含义和第三步在特定时刻所采集的生产实时信息,产生特定时刻的调度问题实例,本发明中所采用的特定时刻为每天的8:00、12:00、16:00,这样每天即可产生3个调度问题实例,将每天建立的调度问题实例依次存储在调度问题实例库中。按上述过程持续一定时间,本发明中持续的时间为3个月。第五步:划分调度问题实例在所述的调度规则挖掘计算机中调用划分调度问题实例模块,对保存在调度问题实例库中的调度问题实例进行分类。在该模块中采用基于双层模糊C均值聚类的调度问题实例划分方法,对存储在调度问题实例库中的K个调度问题实例{Problem1,...,ProblemK}进行划分,根据第四步的设置,实例库中共有270个调度问题实例,即K=270。在该方法中,下层聚类负责将与调度问题实例相关的信息进行聚类,提取出特征信息;上层聚类负责将提取出的特征信息进行聚类,以用于调度问题实例的划分。该划分调度问题实例模块是按如下步骤对调度问题实例进行划分的:第5.1步:实现模糊C均值聚类算法在上下层聚类中,均需用到如下的模糊C均值聚类方法:假设样本集合为X={x1,x2,…,xn},将其分成C个模糊组,并求每组的聚类中心cj,j=1,…,C,使如下所定义的目标值JC达到最小:且需满足:其中,μij∈[0,1]表示第i个数据点属于第j个聚类中心的隶属度,cj为第j个聚类中心,α为加权指数。模糊隶属度μij和cj可分别用下式获得:第5.2步:从调度问题的各类信息中提取出调度问题特征信息(下层聚类)下层聚类负责从调度问题的各类信息中提取出调度问题特征信息,其是按如下步骤实现的:第5.2.1步:提取工件工艺特征采用如下三元表示法表示工件i的工艺特征:Processi={MLi,MFi,AFi}其中:●MLi为工件i的工艺路径中的最长路径,记到达操作Oij处的最长工艺路径长度为ML(Oij),则ML(Oij)可通过下式迭代获得:而有●MFi为工件i的工艺路径中的最大分枝数,记操作Oij处的最大分枝数为MF(Oij),则MF(Oij)可通过下式迭代获得:而有MFi=max(MF(Oij)|j=1,…,ni)●AFi为工件i各个操作前后分枝数的平均数,即:依次计算{Problem1,...,ProblemK}所有调度问题实例中各工件的Process值,并采用模糊C均值聚类方法对上述Process值进行聚类。记聚类中心数量为Cp,工件的Process聚类中心为cjp,j=1,2,…,Cp,工件i的Processi属于各中心的隶属度为μijp,j=1,…,Cp。定义调度问题实例的工件工艺特征向量为:[PP(1),…,PP(Cp)]其中j=1,…,Cp,为该调度问题实例中工件的Process属于第j个Process聚类中心的平均隶属度值。第5.2.2步:提取工件加工时间特征本发明采用工件的理论加工时间Makespan来表征加工时间特征,该Makespan表示一个工件在无等待的情况下完成加工所需的最短时间。工件i的理论加工时间用Makespani表示,其可通过下式迭代计算得到:依次计算{Problem1,...,ProblemK}所有调度问题实例中各工件的Makespan值,并采用模糊C均值聚类方法对上述Makespan值进行聚类。记聚类中心数量为Cm,Makespan的聚类中心分别为cjm,j=1,2,…,Cm,工件i的Makespani属于各中心的隶属度记为μijm,j=1,…,Cm。定义调度问题实例的工件加工时间特征向量为:[PM(1),…,PM(Cm)]其中j=1,…,Cm,为该调度问题实例中工件的Makespan属于第j个Makespan聚类中心的平均隶属度值。第5.2.3步:提取工件交期松紧程度特征本发明用一个工件的加工时间与交期之间的差来表征一个工件的加工松紧程度,用下式定义工件i的交期松紧程度:Slacki=Di-Makespani依次计算{Problem1,...,ProblemK}所有调度问题实例中各工件的Slack值,并采用模糊C均值聚类方法对上述Slack值进行聚类。记聚类中心数量为Cd,交期松紧程度Slack聚类中心为cjd,j=1,2,…,Cd,工件i的Slacki属于各中心的隶属度为μijd,j=1,…,Cd。定义调度问题实例的工件交期松紧程度特征向量为:[PD(1),PD(2),…,PD(Cd)]其中j=1,…,Cd,为该调度问题实例中工件的Slack属于第j个Slack聚类中心的平均隶属度值。第5.2.4步:提取机器加工能力特征本发明用调度问题实例中各工序所含的机器数量表示,即:Capability={SC1,…,SCs}其中i=1,…,s,为该调度问题实例中第i工序所包含机器的总数量。依次计算{Problem1,...,ProblemK}所有调度问题实例的Capability,并采用模糊C均值聚类方法对上述Capability值进行聚类。记聚类中心数量为Cc,机器加工能力Capability聚类中心记为cjc,j=1,2,…,Cc,第k个调度问题实例的Capabilityk属于各中心的隶属度记为μkjc,j=1,…,Cc。调度问题实例对应的机器加工能力特征向量为:[PC(1),PC(2),…,PC(Cc)]其中j=1,…,Cc第5.3步:根据调度问题特征信息划分调度问题实例(上层聚类)在上层聚类方法中,本发明将第5.2步得到的工艺特征向量、工件加工时间特征向量、工件交期松紧程度特征向量、机器加工能力特征向量合并,作为一个调度问题实例的总特征向量,记为:X=[PP(1),…,PP(Cp),PM(1),…,PM(Cm),PD(1),…,PD(Cd),PC(1),…,PC(Cc)]将上述向量作为聚类算法中的一个样本,则{Problem1,...,ProblemK}共有K个样本,对这些样本使用模糊C均值聚类方法进行聚类,记聚类中心数量为Cr,则所得到的调度问题实例聚类中心为cjr,j=1,2,…,Cr,第k个调度问题实例属于各调度问题实例聚类中心的隶属度记为μkjr,j=1,…,Cr。将调度问题实例分为Cr类,在第k个调度问题实例中使μkjr最大的分类,即为该调度问题实例所属类型,在本发明的实施案例中,将调度问题实例划分为14个调度问题实例类型。第六步:构建同类型调度问题实例库在所述的调度规则挖掘计算机中调用构建同类调度问题实例库模块,构建同类型调度问题实例库。因为在调度问题实例库中的调度问题实例数量毕竟有限,而调度规则挖掘需要大量的调度问题实例用以评价所挖掘出的调度规则的优劣,所以需要针对每个调度问题实例类型,主动产生足够数量的同类型调度问题实例。本发明针对每个调度问题实例类型,产生100个同类型调度问题实例,其方法如下:根据第五步确定的调度问题划分结果,在调度问题实例库保存的调度问题实例{Problem1,...,ProblemK}中,任选一个属于当前调度问题实例类型的调度问题实例,并将该调度问题实例的相关特征信息进行随机变动,以产生同类型的多个不同调度问题实例。记randu(α,β)为在[α,β]区间中的均匀分布随机数,本发明取α,β分别为0.9和1.1。需变动的信息有:●工件数量:变化后的工件数量为●操作加工时间:变化后的操作加工时间为●工件交货期:变化后的工件交货期为●各机器组内所包含机器数:变化后的各机器组内所包含机器数为上述调度问题实例的信息变化后,即产生了一个新的调度问题实例,将该实例保存至同类型调度问题实例库的当前调度问题实例类型中。根据上述方法,即可对每个调度问题类型产生多个不同调度问题实例,将这些调度问题实例均保存至同类型调度问题实例库中。第七步:构建调度规则参数全局协调优化问题在所述的调度规则挖掘计算机中调用构建调度规则参数全局协调优化问题模块。在该模块中,将调度规则定义为Rule={RS,RP},其中RS为调度规则结构,RP为在特定RS下的调度规则参数集合。调度规则输入为操作属性、机器组属性等信息两类,而输出为工件的加工优先级,其中:●工件的加工优先级表明了该工件在生产过程中被机器提前选中并提前加工的级别,优先级越高,工件就越应该被提前加工。●操作属性有:加工时间、到达时间、预测到达时间、运输时间、交货期、剩余加工时间、剩余加工步数、后续操作个数等、后续工序瓶颈程度等。●机器组属性有:包含机器数、机器组加工能力、机器组瓶颈程度、机器组内待加工操作个数、机器组内待加工操作加工时间总和、预计将到达操作的加工时间总和等;本发明采用自适应神经模糊推理系统(ANFIS:Adaptive Neuro-Network Fuzzy InferenceSystem)用以表示调度规则,即ANFIS的输入为上述工件属性和机器组属性,输出为工件加工优先级。则调度规则的结构RS为ANFIS,其具体结构如图4所示,调度规则参数RP为ANFIS中的参数,记为RP={rp1,rp2,…,rpZ}表示,其中Z为ANFIS中参数的个数。在此基础上,所构建的调度规则参数全局协调优化问题为:协调优化RP={rp1,rp2,…,rpZ},以使由RP={rp1,rp2,…,rpZ}确定的调度规则的性能最佳(协调优化方法和调度规则性能评价方法将在第八步具体介绍)。采用上述方法,分别针对每个调度问题实例类型,构建相应的调度规则参数全局协调优化问题。第八步:求解调度规则参数全局协调优化问题在所述的调度规则挖掘计算机中调用求解调度规则参数全局协调优化问题模块,对每个调度问题实例类型所对应的调度规则参数全局协调优化问题进行求解。该模块采用基于线性划分PSO(粒子群优化)方法对各调度规则参数全局协调优化问题进行求解,以获得与每个调度问题实例类型对应的调度规则。该方法是按如下步骤实现的:第8.1步:为降低待优化参数的个数,将待优化的规则参数RP={rp1,rp2,…,rpZ}用多个不同线段的斜率和位移表达。首先将RP中的参数按各自的参数取值范围[min(rpi),max(rpi)]归一化,即rp′i=(rpi-min(rpi))/(max(rpi)-min(rpi)),i=1,…,Z,得到RP′={rp′1,rp′2,…,rp′Z},在本发明中,将ANFIS的参数取值范围定为[-1000,1000],即min(rpi)=-1000,max(rpi)=1000。同时,假设用Q条线段的斜率和位移为kj,bj,j=1,2,…,Q来表示RP′中的参数,本发明中用Q=10条线段,第j条线段可表示的参数集记为Iej,上述参数的划分需满足Ie1∪Ie2∪…∪IeQ=RP′和i≠j,i=1,…,Q,j=1,…,Q。则RP′中的参数和Q条线段的关系可用下式表示:rp′(i)=kj×(i)+bj-[kj×(i)+bj]+,j=1,…,Q第8.2步:采用PSO方法对kj,bj,j=1,2,…,Q进行优化。将kj和bj作为决策变量,则在PSO方法中每个粒子的位置为X={kj,bj|j=1,2,…,Q},也可表示为X={x1,x2,…,x2Q},每个粒子的速度为V={v1,v2,…,v2Q}。在每次优化迭代中,每个粒子按如下公式进行更新:在上式中,i=1,2,…,2Q;vidk为第k次迭代中粒子i速度矢量的第d维分量;xidk为第k次迭代中粒子i位置矢量的第d维分量;pbestid为粒子i所到达的最好位置的第d维分量;pbestgd为粒子群所到达最好位置的第d维分量;c1,c2为权重因子,在本发明中分别为0.5;w是惯性权重函数,在本发明中为3。在PSO每次迭代时,都需计算粒子当前位置所对应的适应值F(X),也即为由粒子当前位置所确定的调度规则的优劣。从X={x1,x2,…,x2Q}可得到RP′,再根据min(rpi)和max(rpi),获得RP。基于调度规则Rule={RS,RP}对调度问题实例进行生产过程仿真,即可获得该规则对应的调度性能指标f。根据性能指标f,即可求得粒子所在位置X={x1,x2,…,x2Q}所对应的适应值。本发明为使所挖掘的调度规则对同类型的不同调度问题实例均有较好的调度效果,将X={x1,x2,…,x2Q}所对应的调度规则作用于多个相似调度问题实例,得到多个调度方案,并采用基于贝叶斯估计的调度规则综合评价方法对上述给定调度规则的性能进行综合评价,从而获得X对应的适应值F(X)。该方法首先将X={x1,x2,…,x2Q}对应的给定调度规则作用于由第六步得到的同类型的h个调度问题实例(h=100),得到上述调度问题实例的h个调度性能指标(f1,f2,…,fh)。考虑到上述调度问题实例是同类型的,本发明将上述由同一给定调度规则作用下产生的调度性能指标的先验概率分布看作为一正态分布,R~N(μ,σ2)。根据贝叶斯估计理论,当上述h个调度性能指标为(f1,f2,…,fh)时,将该调度规则作用于上述多个同类型调度问题实例时,所获得的调度性能指标的后验概率也满足正态分布,即其中w=1/(1+se2/σ2),根据上述概率分布,当置信概率为0.9时的置信区间可通过下式获得:由于上述概率分布为正态分布,可通过查正态概率表获得,即:所以给定调度规则对应的调度问题实例性能指标在置信概率为0.9时的置信区间为。本发明定义粒子位置的适应值为:鉴于上述分析,按如下步骤进行调度规则参数全局协调优化,从而挖掘出每个调度问题实例类型所对应的调度规则:步骤(8.2.1):初始化各参数Q,X,V,pbest和gbest,设置当前迭代次数为1;步骤(8.2.2):根据粒子更新公式更新粒子的位置和速度;步骤(8.2.3):根据粒子的适应值计算公式更新各个粒子的pbest和gbest;步骤(8.2.4):判断是否满足算法停止条件,若算法迭代次数达到Kmax,则停止,根据粒子的gbest,确定调度规则参数,从而生成调度规则;如不满足,当前迭代次数加1,返回第8.2.2步。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201010119396.3/,转载请声明来源钻瓜专利网。