版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于隙网络的单件车间排序问题研究
单位铃的排序问题是最普遍、最复杂的排序问题。只有在极个别的例外,我们才能找到有效的算法。1959年,王希德提出了用概整规划方法解决这个问题,但计算量非常大。例如,当机器数为5和零件数为6时,有105个变量和174个约束条件。1965年,伯克斯和沃尔提出了一种分支边界法,其效果优于通常的分类方法。随着问题规模的增加,计算时间更大。ignall和schrgred采用了这种统计结果:在分支边界法中,三个机器中n个加工工艺的水车间排列所需的计算时间是n(n)m,这只是一个解决方案,也就是说,加工顺序的总数是n!m,这里的m是机器总数。规模较大的单件车间排序问题或它的特殊情况——流水车间排序问题,受计算时间或经济性的制约,求其最优解是不现实的,人们普遍采用启发式方法求“满意解”.启发式方法的效果只能用统计数据比较衡量,对于某一具体的排序问题,无论在计算前或在计算后,都不能确定所求得的结果的满意程度.这是可以理解的:启发式方法简单、方便,但缺乏理论基础,在找不到实用的优化方法之前,大量的实际排序问题总得要解决,只得使用这类方法了.为此,本文定义了一般单件车间排序问题的极小点或局部最优解:任一工件的所有工序在一个排序中都获得最优安排.与数学上函数极值点的定义相比,这一排序极值点的定义更为严谨.函数极值点只允许其自变量沿一个方向增减,而遍历一个工件在排序中的加工安排方案本身就属于NP难题.为此,本文将单件车间排序问题转化成一种新型的网络问题,通过对这种网络的分析和生成,提出了求解这一排序问题极小点的多项式时间算法.1机器上加工和响应面确定与排序问题通常使用的名词术语一致:n个工件J1,…,Jn在m台机器M1,…,Mm上加工.一个工件在一台机器上的加工称之一道“工序”.工件Ji的工序数为ν(i).用“加工路线”表示工件加工工序先后顺序的技术约束,用“加工顺序”表示各台机器上工件加工的先后顺序.排序亦即确定加工顺序,使给定的目标函数优化.1.1机器上加工的工艺条件所讨论的排序问题一般遵循约束:(a)任一工件不能同时在不同的机器上加工;(b)任一工件的上一道工序完成后,即可进入下一道工序所在的机器上加工;(c)一旦工件的某道工序开始加工,必须一直进行到该工序结束;(d)允许工件在工序之间等待,允许机器在工件未到达时闲置;(e)每台机器同时只能加工一个工件.1.2[1[1]的及其分类用{J}表示以下排序:pi(1‚1)‚j(1‚1)‚⋯‚pi(1‚μ(1))‚j(1‚μ(1))⋮pi(m‚1)‚j(m‚1)‚⋯‚pi(m‚μ(m))‚j(m‚μ(m))pi(1‚1)‚j(1‚1)‚⋯‚pi(1‚μ(1))‚j(1‚μ(1))⋮pi(m‚1)‚j(m‚1)‚⋯‚pi(m‚μ(m))‚j(m‚μ(m))Dmax=max{Dr∈[1,m]}其中Dr=μ(r)∑s=1(pi(r‚s)‚j(r‚s)+xr‚s)pi(r,s),j(r,s)=Nr,s·δ称δ为该排序问题的渐变量.若所有的Nr,s之间不存在公约数,则称δ为该排序问题的最大渐变量.亦即,任一工序都可表示为渐变量δ的整数倍,显然,Dmax也是δ的整数倍.设某一加工顺序{J}的总流程时间为Dmax,渐变量为δ,我们对{J}中的任一工序作如下分类:若pi(r,s),j(r,s)增加δ时,Dmax亦增加δ,则称pi(r,s),j(r,s)为关键工序;若pi(r,s),j(r,s)减少δ时,Dmax亦减少δ,则称pi(r,s),j(r,s)为单支关键工序,简称单支工序;若pi(r,s),j(r,s)增加δ时,Dmax增加δ,pi(r,s),j(r,s)减少δ时,Dmax保持不变,则称pi(r,s),j(r,s)为并支关键工序;若pi(r,s),j(r,s)增加δ时,Dmax保持不变,则pi(r,s),j(r,s)为非关键工序.2预测的最优安排—极小点和隙作为最优排序,{J}必须具有这样的性质:对于给定的目标函数,{J}中的任一工件的加工安排是最优的.换言之,从{J}中取出任一工件的全部工序,再任意地插回去,都不可能获得比Dmax更优的目标值.定义具备以上性质的排序为极小点,其总流程时间为极小值.不具备这一性质的排序也称之点,但不是极小点.当然,从某一点上抽出的工件愈多,而任意插回去又能满足这一性质,则该点愈接近于最小点.定理1如果{J}中任一具有单支工序的工件获得最优安排,则{J}为极小点,反之亦然.证明:根据单支工序的定义,若Ji不含单支工序,则从{J}中抽出Ji后,{J}的目标函数值仍保持不变.另一方面,若{J}为极小点,则{J}中的每一工件都获得了最优安排,自然包括具有单支工序的工件在内.(证毕)已知{J}中至少包含一个单支工序的工件Ji的全部工序为pi,j(α(1),β(1)),…,pi,j(α(ν(i)),β(ν(i)))pi‚j(α(k)‚β(k))为Ji的第k道⌶序‚亦即j(α(k),β(k))=k我们用{J}i表示抽出Ji的全部工序后的{J}.若Ji在{J}中的安排不是最优的,则存在另一个点,其目标函数值小于Dmax.基于此,我们取(Dmax-δ)为{J}i的总流程时间,从而定义{J}i的隙yr,s为pi(r,s),j(r,s)开工前或pi(r,μ(r)),j(r,μ(r))完工后机器Mr上的最长闲置时间间隔:yr,s=br,s(s=1)(1)yr,s=br,s-ar,(s-1)-pi(r,s-1),j(r,s-1)(2≤s≤μ(r)-1)(2)yr,s=Dmax-δ-ar,s-pi(r,s),j(r,s)(s=μ(r))(3)根据约束条件(c),处于加工状态的工序不能中断,所以求取Ji在{J}i中的最优安排时,Ji的工序仅能插置在{J}i的隙中.对于每一个隙yr,s,用Ar,s和Br,s分别表示其开始时刻和结束时刻,即yr,s=Br,s-Ar,spi,j(α(k),β(k))>yα(k),s我们将pi‚j(α(k)‚β(k))插置于yα(k)‚s时‚则{J}i的目标值D(i)max≥Dmax‚此时‚无论选择什么方案将Ji的其它⌶序安排到{J}i‚都不可能得到比Dmax更优的目标值.因此‚在机器Μα(k)上我们仅考虑大于或等于pi‚j(α(k)‚β(k))的那些隙∶yα(k),ω(k,1),…,yα(k),ω(k,η(k))Σ(r,s)(k,w):从Ak,w到Ar,s的最短路径,其取值为pi,k插置yk,w后Ar,s必须后延的最短时间,且Ar,s后延了这一时间后,yr,s仍为可行隙.Σ(k-1,v)(r,s)(k,w):当pi,(k-1)插置yk-1,v时,从Ak,w到Ar,s的最短路径.Σ(k-1,v)(k-2,u)(r,s)(k,w):当pi,k-1插置yk-1,v且pi,k-2插置yk-2,u时,从Ak,w到Ar,s的最短路径.3.3节点最短路径的确定生成网络就是确定节点间的最短路径和相邻路径及其取值.为此我们需要符号Ω(r,s),k:第k列的节点子集,第k列上存在到节点Ar,s的最短路径的节点都在该子集中.定理2最短路径Σ(r,s)(k,w)存在的充分与必要条件为Σ(r‚s)(k‚w)<+∞(4)其中Σ(r‚s)(k‚w)=min{Σ(k-1‚v)(r‚s)(k‚w)|Ak-1‚v∈Ω(k‚w)‚k-1∩Ω(r‚s)‚k-1}(5)Σ(k-1‚v)(r‚s)(k‚w)=min{Σ(k-1‚v)(k-2‚u)(r‚s)(k‚w)|Ak-2‚u∈Ω(k-1‚v)‚k-2∩Ω(k‚w)‚k-2∩Ω(r‚s)‚k-2}(6)由以下计算过程确定:A′k‚w=Ak‚w+Σ(k-2‚u)(k‚w)(k-1‚v)A′r‚s=Ar‚s+Σ(k-2‚u)(r‚s)(k-1‚v)将pi,k插置yk,w并且取A′k,w为开工时间,我们计算A′r,s在{J}i中的后延时间σ(k-1,v)(k-2,u)(r,s)(k,w).如果Br‚s-A′r‚s-σ(k-1‚v)(k-2‚u)(r‚s)(k‚w)<pi‚r且A′k‚w+pi‚k>Br‚s-pi‚r则Σ(k-1‚v)(k-2‚u)(r‚s)(k‚w)=+∞否则Σ(k-1‚v)(k-2‚u)(r‚s)(k‚w)=Σ(k-2‚u)(r‚s)(k-1‚v)+σ(k-1‚v)(k-2‚u)(r‚s)(k‚w)(7)定义σ(k-1,v)(k-2,u)(r,s)(k,w)为Σ(k-1,v)(k-2,u)(r,s)(k,w)的相邻路径.证明:a.必要性.假设Σ(r,s)(k,w)=+∞,则根据式(5),(6)仅有2种可能.可能性1:Ω(k,w),k-1∩Ω(r,s),k-1=∅,亦即,当pi,k-1插置第(k-1)列上任何一隙,yk,w和yr,s中至少有一个成为不可行隙.可能性2:Ω(k,w),k-1∩Ω(r,s),k-1≠∅,,但对于任一Ak-1,v∈Ω(k,w),k-1∩Ω(r,s),k-1,当pi,k-1插置yk-1,v和pi,k插置yk,w后,yr,s将转变成不可行隙.无论以上哪种情况出现,都不存在从Ak,w到Ar,s的最短路径.b.充分性.我们运用数学归纳法证明充分性条件,同时给出隙网络的生成过程.证k=2时成立.因为A0,0=0,pi,0=0,所以从节点A0,0到它的后续列上的所有节点的最短路径存在且取值都为0.对于每一v∈[1,η(1)],我们插置pi,1于y1,v,并取pi,1的开工时间为A1,v,从而计算得A1,v到后续列上节点的最短路径.现在,我们讨论从A2,w到Ar,s的最短路径.设A1‚v∈Ω(2‚w)‚1∩Ω(r‚s)‚1(3≤r≤ν(i)+1)如图2所示,当pi,1插置y1,v时,节点A2,w和Ar,s至少后延至A′2‚w=A2‚w+Σ(2‚w)(1‚v)A′r‚s=Ar‚s+Σ(r‚s)(1‚v)插置pi,2于y2,w且在时刻A′2,w开始加工pi,2,我们计算得A′r,s的后延时间σ(1,v)(r,s)(2,w).因此隙yr,s减小为y′r‚s=Br‚s-A′r‚s-σ(1‚v)(r‚s)(2‚w)若y′r,s<pi,r,则只要pi,1插置于y1,v,就不存在从A2,w到Ar,s的最短路径,这种情况用Σ(1,v)(r,s)(2,w)=+∞表示.另一方面,若A′2,w+pi,2>Br,s-p′i,r亦即pi,2在y2,w中的最早完工时刻超过p2,r在yr,s中的最迟开工时刻,这种情况也表示为Σ(1,v)(r,s)(2,w)=+∞.除这两种情况外,我们得到Σ(1‚v)(r‚s)(2‚w)=Σ(r‚s)(1‚v)+σ(1‚v)(r‚s)(2‚w)因此,取遍每一个节点A1,v∈Ω(2,w),1∩Ω(r,s),1,最终求得Σ(r‚s)(2‚w)=min{Σ(1‚v)(r‚s)(2‚w)|A1‚v∈Ω(2‚w)‚1∩Ω(r‚s)‚1}假设(k-1)列成立,证k列成立.设已知pi,k-2插置第(k-2)列上不同的隙中时,第(k-1)列上节点到后续列上节点的全部最短路径,我们来确定pi,k-1插置第(k-1)列上不同的隙中时,第k列上节点到后续列上节点的全部最短路径.不失一般性,设Ak-2‚α;Ak-2‚β∈Ω(k-1‚v)‚k-2∩Ω(k‚w)‚k-2∩Ω(r‚s)‚k-2且Σ(k‚w)(k-1‚v)=Σ(k-2‚α)(r‚w)(k-1‚v)Σ(r‚s)(k-1‚v)=Σ(k-2‚β)(r‚s)(k-1‚v)如图3所示,我们仅需要考虑2种情况.情况1:α=β=u.即仅当pi,k-2插置yk-2,u时,Ak,w和Ar,s同时获得由pi,k-1插置yk-1,v产生的最短后延时间.因此,pi,k在yk,w中和pi,r在yr,s中的最早开工时间分别为A′k‚w=Ak‚w+Σ(k‚w)(k-1‚v)A′r‚s=Ar‚s+Σ(r‚s)(k-1‚v)同理可得相邻路径σ(k-1,v)(r,s)(k,w)和Σ(k-1‚v)(r‚s)(k‚w)=Σ(k-2‚u)(r‚s)(k-1‚v)+σ(k-1‚v)(r‚s)(k‚w)(8)情况2:α≠β.对于这种情况,我们必须计算第(k-2)列上每一个满足必要条件的点,从而产生式(6).显然,式(8)仅是式(6)的特例.(证毕)3.4管插置最优安排定理3对于第r列上任一节点Ar,s,若Ω(r‚s)‚k=∅(9)则Ji在{J}i中不存在最优安排,亦即,Ji在{J}中的加工安排最优.证明:如果Ji在{J}i中存在最优安排,则pi,k必须插置在k列上的某个隙中,而式(9)表明,无论pi,k插置在k列哪个隙,都会导致第r列上无可行隙.(证毕)因此,当这种情况出现时,我们终止{J}i的隙网络生成,转而检查其它具有单支工序的工件在{J}中的安排是否最优.网络分析的目的在于从网络上找出Ji在{J}i中的最优安排.我们给出存在这一安排的充要条件:{J}i的隙网络上第(ν(i)-1)列到ν(i)列至少存在一条最短路径.必要性是显而易见的,证充分性则必须找出这一最优安排,其途径有多条,在此略述.4节点市场条件的确定假设Dmax减少d×δ方可达到某个极小点,且每个工件在每台机器上仅加工一次,即ν(1)=⋯=ν(n)=m在此我们取计算一次排序占用的时间为1个单位,现构造最坏情况:(a)每个工件在优化的过程中始终存在单支工序;(b)任意两个不同列的节点始终存在最短路径;(c)遍历所有的n个工件后才使Dmax减少δ;(d){J}i的所有隙都为可行隙.计算2次排序可获得{J}i的所有隙和隙的开始时刻.根据式(5),(6),最多需n2次排序来确定始于某个节点的全部最短路径.找出极小点,需要的总计算时间为f(R)=2dmn3其中R表示问题的规模.上式表明f(R)具有多项式时间复杂性.因此,本文提出的极小点算法为有效算法.pi(r,s),j(r,s)不仅表示工件Jj的第j道工序,而且表示该工序的加工时间,它为机器Mr上的第s个加工.现用ar,s表示工序pi(r,s),j(r,s)的最早开工时刻,且若j(r,s)=1,s=1,则ar,s=0.定义机器Mr上开始加工前的空闲时间间隔为由此,我们获得完成{J}中全部工件加工所需的时间,即总流程时间存在δ>0,对于每一个工序pi(r,s),j(r,s),都有一个正整数Nr,s,使1.3渐变量和关键工序与ar,s相应,我们用br,s表示pi(r,s),j(r,s)在{J}中的最迟开工时刻,且若j(r,s)=ν(i),s=μ(r),则br,s=Dr-pi(r,s),j(r,s).给定所有工件的加工时间和加工路线,则Dmax仅取决于如何排序.本文亦取Dmax为目标函数.运用式(1)~(3),并注意到用(Br,s-Ar,s)取代式(2),(3)中的yr,s,于是产生基于上述分析,使{J}i中的所有工序在最早开工时刻加工,我们计算得每个隙的开始时刻Ar,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论