[发明专利]大规模生产过程一种基于迭代式分解和流松驰的调度方法无效
申请号: | 201010119407.8 | 申请日: | 2010-03-08 |
公开(公告)号: | CN101788819A | 公开(公告)日: | 2010-07-28 |
发明(设计)人: | 刘民;郝井华;孙跃鹏;吴澄 | 申请(专利权)人: | 清华大学 |
主分类号: | G05B19/418 | 分类号: | G05B19/418 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100084 北京市10*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 大规模 生产过程 一种 基于 迭代式 分解 松驰 调度 方法 | ||
1.一种基于迭代式分解和流松弛的调度方法,其特征在于,该方法是针对以最小化制造周期为调度目标、工件具有可分类特征的大规模生产过程的一种调度方法,且所述方法在计算机上是按如下步骤实现的:
步骤(1):初始化,设定如下基本变量:
工件集合J:n个工件
机器集合M:所有机器共分为K个机器组,记为 其中机器组Gk中的机器数为mk,分别为 同时,M=G1∪Gk∪…∪GK;
工件Ji需经过ni个机器组的加工,其工艺路径Ri记为:
其中Ji在机器组 上加工的操作记为Oi,k,其加工时间为pi,k;
所有操作的集合记为O;
步骤(2):采集包括上述工件个数、机器组个数、各机器组中的机器个数、各工件的工艺路径、各操作的加工时间在内的调度相关信息并存储至调度数据库中;
步骤(3):从上述调度数据库中读取包括工件个数、机器组个数、各机器组中的机器个数、各工件的工艺路径、各操作的加工时间在内的调度相关信息,建立生产过程调度模型,该问题简称为“原调度问题”,所建立的调度模型可表示为如下形式:
其中,Ci为工件Ji的预计完工时间;sti,k为操作Oi,k的预计开始加工时间;Ai为工件Ji工艺路径上所有相邻操作对的集合;Ek,l为在机器gk,l上待加工的所有操作对的集合;
步骤(4):基于时间分解机制将原调度问题迭代地分解为多个阶段进行求解,并在每个求解阶段,首先基于工件聚类和流松弛手段建立全局调度指标预测模型,该预测模型涉及工件加工进度特征指标预测和全局调度性能指标预测,然后,将该预测模型用于形成和求解当前阶段调度子问题过程中;该过程按如下步骤进行:
步骤(4.1):采用基于Macro Distance距离的K-均值聚类算法,将当前阶段所有待调度工件划分为c个聚类,其中,Macro Distance距离简写为“MD距离”,c为聚类数;该聚类过程采用如下流程进行:
步骤(4.1.1):计算工件距离矩阵(md(Ji,Jj))n×n,其中,md(Ji,Jj)表示工件Ji和Jj之间的距离;md(Ji,Jj)的计算方式如下:
其中,d(Ri,Rj,k)=|posk,i-posk,j|表示机器组Gk在工件Ji和Jj的工艺路径Ri和Rj中的相对位置之差,posk,i表示机器组Gk在工件Ji的工艺路径Ri中所处的相对位置,其计算方法为:
其中,Ind(Ri,Gk)为机器组Gk在工艺路径Ri中所处的绝对位置序号,即若该机器组位于Ri中的第一位,则Ind(Ri,Gk)=1,若第二位,则Ind(Ri,Gk)=2,以此类推;Len(Ri)为工件Ji的总操作数;
步骤(4.1.2):设定初始聚类中心点
从所有工艺路径中随机挑选c个工件,将其设为初始聚类中心点,记为: 令k=0;
步骤(4.1.3):将各工件划分至各聚类
依次对每个工件Ji,记 将工件Ji划分至聚类中心点 对应的聚类中;其中, 为第j个聚类中心点;
步骤(4.1.4):重新计算各聚类的聚类中心点
在将各工件分别划分至各聚类中后,重新计算各聚类中心点;聚类中心点的计算方法为:在该聚类中,若某工件与其它工件的平均MD距离最短,则该工件为该聚类的中心点;
步骤(4.1.5):若所有聚类的聚类中心点未改变,则转步骤(4.1.7);
步骤(4.1.6):k=k+1,转步骤(4.1.3);
步骤(4.1.7):若聚类后某些类中的工件数量小于给定最小值NCmin,则将该类并入最近的其它聚类中,并重新计算新聚类的中心点,其中,以聚类中心点之间的MD距离的大小来衡量各聚类之间的距离的远近;
步骤(4.2):在步骤(4.1)所得到的聚类结果基础上,将各聚类内的所有待调度工件均用其聚类中心点对应的工件取代,然后,建立当前阶段待调度问题的流松弛模型并求其最优解;该步骤的具体流程如下:
步骤(4.2.1):将各聚类内的所有工件均用其所属聚类的中心点对应的工件取代,此时,原调度问题转化为一个具有多类工件、每类工件内部各工件完全相同的调度问题;
步骤(4.2.2):对步骤(4.2.1)所形成的调度问题,基于流松弛假设,建立相应的流松弛模型;在流松弛模型中,各类工件以“流”方式存在,即工件可分解为无限小的“碎片”分别进行加工;在上述假设下,加工过程中由于工件的各“碎片”可能同时处于不同的机器组,因此,由ci个聚类工件组成的i类工件的加工进度状况可用非负实数组 描述;其中,xi,k(t)为t时刻位于机器组Gk缓冲区的所有前续操作已完成,当前操作尚未开始的工件中i类工件的待加工量,该加工量以相应操作的加工时间之和表示,该值为一非负实数;基于上述假设,所建立的流松弛模型具有如下形式:
其中, 为机器组Gk可加工的所有操作的集合; 为i类工件在机器组Gk上的平均加工时间; 为i类工件在机器组Gk中任一台机器上的加工速度;Ti,k(t)为在时间区间[0,t]内i类工件在机器组Gk中已完成的加工量,该加工量用已完成操作的加工时间之和表示;1(·)为指示函数,满足:
步骤(4.2.3):上述流松弛模型所对应的一种最优解为如下形式:
i=1,2,…,c k=1,2,…,ni
i=1,2,…,c
xi,k(t)=0 i=1,2,…,c k=2,3,…,ni
其中,Ωk为机器组Gk中每台机器的平均负载,即:
步骤(4.3):基于上述流松弛模型的最优解,确定预测工件加工进度特征指标所需的相关参数;当前阶段对应的工件加工进度特征指标预测值f(Θ)为如下形式:
其中,Θ表示当前调度子问题的求解策略,Ti,k(tend)表示基于当前调度子问题解对原调度问题进行仿真,仿真起始时间为上一阶段调度子问题对应时间窗口的结束时刻,仿真结束时间为当前阶段调度子问题对应时间窗口的结束时刻tend,i类工件于当前阶段调度子问题对应时间窗口结束时刻tend在机器组Gk上的实际加工完成量,该完成量采用已调度工件加工时间之和表示;工件加工进度特征指标预测值f(Θ)反映了在调度子问题对应的时间窗口长度T内,基于调度子问题解获得的各类工件的加工完成量和流松弛模型最优解对应各类工件理论完成量的偏差;
步骤(4.4):选择全局调度性能指标预测所需的若干调度规则;
步骤(4.5):确定当前调度子问题对应时间窗口的长度,在此基础上采用基于问题特征的遗传算法形成并求解该调度子问题,并在调度子问题中采用基于全局调度指标预测模型得到的工件加工进度特征指标预测值和全局调度性能指标预测值对当前调度子问题解性能进行全局评价;当前阶段调度子问题对应的数学模型可表示如下:
其中,tq为第q个求解阶段开始的时刻;Jq为在时刻tq所有未完成的工件集合;Oq为在第q个求解阶段所有需要给出调度策略的操作集合; 为第q个求解阶段属于工件ji的所有相邻操作对集合; 为在机器Gk,l上待加工的所有相邻操作对集合; 为该调度子问题的 优化目标函数,为最小化预测得到的最大完工时间;
求解当前调度子问题的基于问题特征的遗传算法主要环节描述如下:
a)编码
采用基于规则的编码方法,编码形式为:
Ch={r1,r2,…,rk,…,rK}
其中,rk表示机器组Gk所采用的调度规则;
b)译码
按时间推进当前阶段调度子问题的仿真过程,并在每个仿真时刻,处理相应的调度事件;工件在各机器组上进行加工时,加工顺序由该机器组对应的调度规则确定;当存在多个可加工机器空闲时,随机选择一台机器上机;同时,遵循活动调度策略,即在存在等待加工的操作时,不允许相应的可加工机器出现空闲;在本调度方法中,调度子问题对应的时间窗口长度由下式确定:
T=max(σk)/Q,
其中,Q为时间窗口长度系数,其大小反映了该调度子问题对应的时间窗口的长度;
c)初始种群产生
对各机器组,从适用于优化制造周期目标的较好调度规则,包括:SPT、WINQ、NINQ、LRPT、FIFO、MOPNR共6种调度规则中随机选出一条规则作为该机器组对应编码位相应的调度规则;
各调度规则的含义介绍如下:
●SPT:操作加工时间最小者优先;
●WINQ:下道工序缓冲区内等待操作加工时间总和最少的工件优先;
●NINQ:下道工序缓冲区内等待操作个数最少的工件优先;
●LRPT:剩余加工时间最大者优先;
●FIFO:先到的工件优先;
●MOPNR:操作数最多的工件优先;
d)交叉和变异
按概率Pc对随机选定的两个个体采用两点交叉方法进行交叉;在对个体进行变异时,采用单点变异方法按概率Pm进行变异;
e)评价和选择
对调度子问题解,采用如下两项指标进行性能评价:
●f(Θ):工件加工进度特征指标预测值;
● 全局调度性能指标预测值;
其中,全局调度性能指标预测值 通过如下流程获得:
1)首先基于当前调度子问题解,对原调度问题进行仿真,仿真起始时间为上一阶段调度子问题对应时间窗口的结束时刻,仿真结束时间为当前阶段调度子问题对应时间窗口的结束时刻tend;
2)在上述仿真过程完成后,分别采用SPT、LRPT、WINQ规则继续对原调度问题进行仿真,仿真起始时间为当前调度子问题对应时间窗口的结束时刻,仿真结束时间为原调度问题所有操作完成加工;
3)将基于上述3条调度规则进行仿真得到的全局调度性能指标中的最小值作为全局调度性能指标预测值;
采用随机联赛选择方法对种群进行选择,联赛规模为2;
为有效评价调度子问题解,针对上述两项评价指标的特点采用一种分级评价方法;具体为:若两个调度子问题解π1和π2对应的全局调度性能指标预测值 和 满足:
则选择 值较低的解作为较好解;否则,选择工件加工进度特征指标预测值f(Θ)较低的解作为较好解;其中,φ为目标分级系数,取值在区间[0,1]中,其大小反映了各聚类内工件加工进度特征指标预测值f(Θ)在对调度子问题解的评价过程中所起的重要程度;该值越大,说明f(Θ)在其评价过程中的重要性就越大;为此,取φ=αe-βN(s),其中,N(s)表示当前所形成的调度子问题序号,α=0.3,β=0.2;
f)停止条件
算法迭代次数达到最大迭代次数;
步骤(4.6):在当前调度子问题求解完成后,固定当前调度子问题对应操作的调度策略,然后转步骤(4.1),继续求解下一阶段的调度子问题,直至原调度问题求解完成;
步骤(5):将最终所得到的原调度问题的调度方案下发执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010119407.8/1.html,转载请声明来源钻瓜专利网。