第30卷 第4期运 筹 与 管 理
Vol.30,No.4
2021年4月OPERATIONSRESEARCHANDMANAGEMENTSCIENCE
Apr.2021
收稿日期:2019 01 13
基金项目:国家自然科学基金资助项目(11901255);江西省教育厅科技项目(GJJ150447)
作者简介:李刚刚(1985 ),男,河南省汝州人,讲师,博士学位,组合最优化;鲁习文(1962 ),通讯作者,男,教授,博士学位,组合最优化。
李刚刚1, 鲁习文2
(华东理工大学理学院,上海)
摘 要:本文研究了两台机器带柔性维修时间限制的排序问题,其中第一台机器在固定的时间内必须进行维修,而
第二台机器一直可用,目标是最小化所有工件的最大完工时间。工件在加工过程中不允许中断。对于该问题,我们给出了一个性能比为的近似算法,并证明了该性能比是紧的。关键词:序;柔性维修;算法;性能比中图分类号:O224 文章标识码:A 文章编号:1007 3221(2021)04 0129 05 doi:10.12005/orms.2021.0155 AnApproximationAlgorithmforTwo machineschedulingProblemwith
FlexibleMaintenancetoMinimizeMakespan
LIGang gang1,LUXi wen
2
(EastChinaUniversityofScienceandTechnology,Collegeofscience,Shanghai,China)
Abstract:Thispaperconsidersatwo machineschedulingproblemwithflexiblemaintenancewiththeobjectiveto
minimizemakespan.Intheschedulingmodel学习卡
,thefirstmachineneedsmaintenanceduringafixedperiod,whiletheotheroneisavailableallthetime.Preemptionisnotallowed.Weprovideanapproximationalgorithmwithworst caseratioofandshowthattheworst caseratioistight.Keywords:scheduling;flexiblemaintenance;algorithm;worst caseratio
0 引言
在经典排序模型中,我们一般假设机器是一直可用的。这种假设与实际生产生活不太相符,因为机器在加工工件的过程中可能因为损坏、维修、保养等因素停下来,在这期间机器不能加工任何工件。根据这些实际背景,学者们提出了机器带使用限制
的排序模型。文献Schmidt[1]以及Sanlaville和Schmidt[2]对机器带使用限制的排序问题的一些研究成果做出了综述。Luo和Cheng[3]研究了几个不
同目标下单台机器带可变性不可用时间限制的排序问题,并给出了相应的算法。对于工件带拒绝的排
序问题,Li和Zhao[4]
考虑了单台机器带不可用时间
限制的,每个工件都有释放时间,机器在加工过程中
可以拒绝加工某些工件,目标是最小化加工工件中的最大完工时间与所有被拒绝工件的惩罚费用的和,并给出了一个FPTAS(FullyPolynomialTime
ApproximationSchemes)。同样,Zhong等[5]
研究了
机器有不可用约束且工件带拒绝的排序问题。
Wang和Liu[6]研究了单台机器带可变性不可用时
间约束,目标是最小化工件的加权完工时间和的排序问题,其中,机器的不可用时间变化服从Weibull概率分布的,他们给出了一个分支定界算法来解决
该问题。Luo和Ji[7]考虑了工件加工时间有线性
恶化率的,目标分别为最小化最大完工时间和最小化完工时间和的机器带使用限制的排序问题,并给
出了相应的算法。Xu等[8]
研究了目标函数是最小
化工件完工时间和的单台机器带不可用时间限制的排序问题,其中机器不可用时间段的大小是机器负载的函数。Detti等[9]研究了在一个固定的时间窗内有一个不可用时间段限制的单台机器的排序问题,目标分别是最小化最大完工时间和最小化所有工件的完工时间和,并给出了相应的算法。Ji等[10]研究了单台机器带周期性不可用时间限制的排序问题,并给出了相应的近似算法。后来,Yu等[11]也研究了该问题,他们比较了LS(ListSched uling)算法,L
PT(LongestProcessingTimeFirst)算法和MLPT(ModifiedLongestProcessingTimeFirst)算法在这个问题中的表现性能,并指出这三个算法有相同的性能比。Nesello等[12]研究了单台机器带周期性维修时间,工件有安装时间,目标是最小化最大完工时间的排序问题,并给出了相应的解决方案。Yin等[13]考虑了单台机器带一个维修时间的排序问题,目标是最小化所有延迟工件的个数,他们分别给出了两个拟多项式时间动态规划算法和一个FPTAS。后来,Liu等[14]将机器有一个维修时间段的情形扩展到机器有周期性维修时间段的情形,目标函数也是最小化所有延迟工件的个数,他们给出了一个分支定界算法。Luo和Liu[15]研究了单台机器带不可用约束的排序问题,其中不可用时间段的长度是机器负载的非负递增函数,目标是最小化所有工件的完工时间和,他们给出了一个近似比为的近似算法和一个FPTAS。Cui和Lu[16]考虑了单台机器带柔性不可用时间约束的排序问题,目标是最小化最大完工时间。当工件允许恢复时,他们给出了一个最优多项式时间算法;当工件不可恢复时,他们给出了一个混合整数规划算法和一个启发式算法。
为了满足不同的生产需求,一些研究者将机器带不可用约束的排序问题从单机推广到平行机,并取得了丰富的研究成果。Wang和Cheng[17]考虑了两台机器的排序问题,其中一台机器带一个不可用时间段,而另一台机器一直可用,目标是最大化完工工件的个数,他们给出了一个性能比为4/3的近似算法。后来,Hashemian等[18]研究了机器带多个不可用时间段的平行机
排序问题,工件在加工过程中不可中断,目标是最小化最大完工时间,他们给出了一个混合整数规划算法。Xu等[19]考虑了两台机器带周期性不可用时间约束的排序问题,其中第一台机器带周期性不可用时间约束,第二台机器一直可用,工件被中断后不允许恢复,目标是最小化最大完工时间,他们证明了SPT算法的性能比为3/2。Li和Lu[20]同样研究了该问题,给出了
一个性能比为4/3的近似算法,并指出该性能比是紧的。Lee和Kim[21]研究了两台机器带不可用约束的排序问题,目标为最小化所有工件的延迟时间和,并给出了一个分支定界算法。Huo和Zhao[22]研究了两台机器带不可用约束的单目标和双目标排序问题,每台机器有多个不可用时间段,两台机器的不可用时间段可以同时出现,工件在加工过程中允许恢复,他们给出了相应的算法,并进行了理论分析。Kaabi和Harrath[23]研究了平行机带不可用时间限制的排序问题,每台机器上都有一个不可用时间段,目标是最小化最大完工时间和最小化工件的完工时间和。他们给出了问题的复杂性证明,并对问题的特殊情形给出了最优多项式时间算法。
在流水作业车间里,加工机器可能因为维修、保养等而停止加工工件。对于机器带不可用时间约束,目标为最小化最大完工时间的流水作业排序问题,Li等[24]分别研究了不可用时间段在第一台机器和第二台机器上的两种情形,给出了相应的算法,并证明了算法的性能比都为2。
下面我们描述一下这篇文章中要解决的问题:给定工件集合J={J
1
,J
2
,…,J
n
},工件J
i
的加工
时间为p
i
,工件在加工过程中不允许中断。将所有工件安排在两台加工机器上加工,其中第一台机器在Δ时间
内必须有一次维修,即两次维修时刻之间的间隔不能大于Δ,每次维修时间长为T,而第二台机器一直可用,目标是最小化最大完工时间。我们将在第二部分给出算法,分析最优解和算法得到的解之间的关系,给出性能比分析;文章第三部分将给出总结与展望。
1 算法设计与分析
算法H:将所有工件按照LPT规则尽可能早地安排在机器M1和M2上加工。
令π表示由算法H生成的时间表。令
π(M1)=B
1
(π),T,B
2
(π),T,…,T,B
j
(π),T,…,
B
r
(π),其中B
j
(π)和r分别表示在时间表π中,机器M1上第j个可用时间段中加工工件的集合和占用可用时间段的总数目。记π 为一个最优时
间表。同样,可以令π (M1)=B
1
(π ),T,B
2
(π ),
T,…,T,B
j
(π ),T,…,B
h
(π ),其中B
j
p2p网络电视录像专家(π )和h表示在时间表π 中,机器M1上第j个可用时间段中工件的集合和占用可用时间段的总数目。下面我们举一个实例来简单介绍一下算法H:
0
3
1运 筹 与 管 理 2021年第30卷
假设总共有7个工件,其中p1=4,p2=3,p3=20,p4=4,p5=3,p6=3,p7=3,Δ=6。机器的维修时间长为T=4。按照算法H的规则,由于p3>Δ,J3只能安排在M2上加工;p1<Δ,J1可以被安排在M1加工;由于p1+p4>Δ,J4只能被安排在一个维修之后加工;同理,p4+p5>Δ,J5只能被安排在一个维修之后加工;由于p5+p6=Δ,J5和j6将被安排在M1上同一个可用区间内一起加工;J2和J7将被安排在M2上一起加工,从而它们可以尽可能早地完工。计算可得cmax(
π)=26,cmax
(π )=24。引理1
∑水下呼吸器
Ji∈Bj
玻璃钢套管(π)pi>
Δ
2
,j=1,2,…,r-1。证明 不妨设Js为Bj中最后加工的工件。根据算法的规则可知,ps+1 ps。若∑
Ji∈Bj
(π)pi
Δ2
,则ps+1 ps
Δ
2。由此可得,∑Ji∈Bj
(π)pi+ps+1 Δ。可推出Js+1∈Bj(π)。这与Js是Bj中最后加工的工件矛盾。因此,∑Ji∈Bj
(π)pi Δ2。现在我们先考虑一个特殊的问题,记为问题I:将工件J1,J2,…,Jk(pj Δ,1 j k)安排在机器M1上加工,目标是最小化工件的最大完工时间。记σ为问题I中在工件
不允许中断的前提下由LPT规则生成的时间表,LB(I)为问题I中允许工件中断时得到的最优值。不妨记时间表σ=(B1,T,B2,T,…,T,Bs),其中T和s分别为机器维修时间段的长度和工件占用可用区间的个数。我们可以得到以下引理:
引理2 Cmax
(σ) 2LB(I)。证明 对于问题I,时间表σ=(B1,T,B2
,T,…,T,Bs),由引理1可知,∑Ji∈Bj
p
i Δ/2,j=1,2,…,s-1。
若s=2m,可知 LB(I)
(s-2)
2(Δ+T)+(Δ+T)=(m-1)(Δ+T)+(Δ+T)
1
2Cma
x(σ)若s=2m+1,可知 LB(I)
(s-1)
2(Δ+T)+∑Ji∈Bs
pi
=m(Δ+T)+∑Ji∈Bs
pi 1
2Cma
x
(σ)因此,Cmax
(σ) 2LB(I)。引理3 当r>2时,若π不是最优时间表,可
得|C2max(π)-C1
max
(π)| 12
Cmax(π
)。证明 不妨设时间表π中最后完工的工件为Jl。若pl>Δ,由算法H可知安排在机器M2上加工的每个工件的加工时间都大于Δ,可知最优时间表的表长不小于工件Jl的完工时间,这可推出π是一个最优时间表。因为π不是最优时间表,所以pl
Δ。(1)若C2max(π) C1
max(
π),由算法H可得C1max(π)-C2max
(π) pl,又由pl 12
Cmax(π
),可得C1max(π)-C2
max(
π) 12Cmax(π
)。若pl>12
Cmax
(π
),则工件集中至多有两个工件的加工时间大于等于pl。由此可得,π是一个最优时间表。因此,pl
12
Cmax(π
)。(2)若C2max(π)>C1max(π),则C2max(π)-C1
max
(π) T+Δ。由r>2和C2max(π)>C1
max(π),可推出Cmax(π
) 2(T+Δ),所以,C2max(π)-C1max
(π) T+Δ
12
Cmax(π
)。定理1 Cmax
(π) 32
Cmax(π
)。证明 不妨设在时间表π中最后完工的工件为Jl。若pl>Δ,由算法可知安排在机器M2上加工的每个工件的加工时间都大于Δ,可知最优时间表的表长不小于工件Jl的完工时间,这可推出π是一个最优时间表。否则,我们用反证法证明该定理。假设Cmax(π)>32
Cmax(π
),可知π不是最优时间表,因此pl
12
Cmax(π )。令π(M1)=(B1,T,B2,T,…,T,Br),其中T和r分别为机器M1的维修时间长度和时间表π中机器M1上工件占用的可用区间段的个数。我们将从以下两个方面证明该定理:
情形1 Cmax(π)=C2max(π)>32Cmax
(π
)。若r=1,则∑Ji∈B1pi+12Cmax(π
) ∑Ji∈B1
pi+pl>Δ。由此可推出Cmax(π )>Cmax(
π ),这与π
是最优时间表矛盾,所以结论成立。
若r=2,则
(a)当C2max(π)-C1
max(π) 2pl时,
可知1
31第4期 李刚刚,等:目标是最小化最大完工时间带柔性维修时间限制的两台机器排序问题的一个近似算法
Cmax(π ) C2max
(π)-pl。结合Cmax(π
)>Δ+pl 2pl
,可得C2
max
(π)Cmax(π ) 1+pl
Cmax
(π
) 32(b)当2pl<C2
max
(π)-C1
max
(π) 3pl时,若pl
>Δ/2,可推出C2max
(π)-Cmax(π
) Δ-pl pl。再结合C2
max
(π) 4pl
,可推出C2
max
(π
)Cmax(π
) 1+pl
C2max(π)-pl
32若pl Δ/2,可推出C2
max
(π) 5pl和C
2
max
(π)-Cmax(π
) pl+δ,其中0 δ pl
/2。因此,C2
max
(π)Cmax(π ) 1+pl+
δC2max
(π)-pl-δ 3
2(c)当C2max(π)-C1
max(π)>3pl时,可知Cmax(π ) 4pl和C2max(π)-Cmax(π
)
2pl
。所以,
C2
max
(π)Cmax(π ) 1+pl
Cmax
(π
) 3
2若r>2,由引理3可知
C2max
(π)-C1
max
(π) 12
Cmax
(π )再由假设C2max
(π)>32
Cmax(π
),可推出C1max
(π)>Cmax
(π
)。再结合引理2,可知Cmax(π )>Cmax(π
)。这就推出了矛盾,所以C2假山的堆叠
max
(π) 32
Cmax(π
)。情形2 Cmax(π)=C1max(π)>32
Cmax
(π
)。由算法H可知,C1max(π)-C2
max
(π) pl。由此可推出C2max(π) C1max(π)-pl>32Cmax(π
)-pl
由pl
12Cmax(π
),可知C1max(π)-pl>32
Cmax(π
)-pl
32Cmax(π )-12
Cmax(π
)=Cmax(π )。结合引理2,可知Cmax(π )>Cmax
(π )。这与π
是最优时间表矛盾,因此结论成立。定理2 算法H的性能比是紧的。
证明 工件集中总共有四个工件J1,J2,J3
,J4,p1=p2=
Δ2+ε,p3=p4=Δ2
,T=4Δ。其中ε是一个足够小的正数。由算法H可得Cmax
(π)=3
2
Δ+ε,而最优值Cmax
(π
)=Δ+2ε。因此,Cmax
(π)Cmax
(π
)=3
2Δ+
εΔ+2ε→32(ε→0)2 总结与展望:
本文研究了两台机器带柔性使用限制的排序问题,其中第一台机器在Δ时间内必须有一次维修,即两次维修时刻之间的间隔不能大于Δ,每次维修时间长为T,而第二台机器一直可用,工件在加工过程中不允许中断,目标是最小化最大完工时间。该模型比较符合实际生产背景,对该模型的研究可以为现实生产生活提供一定的理论指导作用。对于该问题,我们基于经典LPT算法的思想,结合该问题最优解的一些性质,给出了一个性能比为的近似算法,并证明了该算法的性能比是紧的。在下一步的研究工作中,我们将考虑其它目标函数,例如Lmax和ΣCj。这种模型的不足之处是每个维修时间长度都是固定的,而在现实生产中,机器的维修时间可能并不是恒定的,大部分情况下,机器的维修时间长度与机器的负载有关系。一般来讲,随着机器负载的增加,机器越容易出现故障,并且维修时间可能会越长。因此,在今后的研究工作中,我们将考虑机器的维修时间长度是机器负载的某个函数的排序模型,以及带运输的加工机器有柔性使用限制的供应链排序问题,我们将为这些问题设计算法并分析算法的性能,期望能够得到比较好的结果。参考文献:
[1]SchmidtG.Schedulingwithlimitedmachineavailability
[J].EuropeanJournalofOperationalResearch,200
0,121:1 15.[2]SanlavilleE,SchmidtG.Machineschedulingwithavail
abilityconstraints
[J].ActaInformatica,1998,35:795 811.[3]LuoWC,ChengTCE,JiM.Single machineschedu
lingwithavariablemaintenanceactivity[J].Computers&IndustrialEngineering,2015,79:168 174.[4]LiWX,ZhaoCL.Deterioratingjobsschedulingona
singlemachinewithreleasedates,rejectionandafixednon availabilityinterval[J].JournalofAppliedMathe
maticsandComputing
,2015,48:585 605.[5]ZhongXL,OuJW,WangGQ.Order
acceptanceand
schedulingwithmachineavailabilityconstraints[J].EuropeanJournalofOperationalResearch,2014,232:435 441.[6]WangSJ,LiuM.Abranchandboundalgorithmfor
single machineproductionschedulingintegratedwithpre ventivemaintenanceplanning[J].InternationalJournal
2
31运 筹 与 管 理 2021年第30卷
ofProductionResearch,2013,51:847 868.
[7]LuoWC,JiM.Schedulingavariablemaintenanceandlineardeterioratingjobsonasinglemachine[J].Infor mationProcessingLetters,2015,115:33
39.
[8]XuDH,WanL,LiuAH,YangDL.Singlemachinetotalcompletiontimeschedulingproblemwithworkload dependentmaintenanceduration[J].Omega,2015,52:101 106.
[9]DettiP,NicosiaG,PacificiA,LaradeGZM.Robustsinglemachineschedulingwithaflexiblemaintenanceactivity[J].Computers&OperationsResearch,2019,107:19 31.
[10]JiM,HeY,ChengTCE.Single machineschedulingwithperiodicmaintenancetominimizemakespan[J].
Computers&OperationsResearch,2007,34:1764 1770.[11]YuXY,ZhangYL,SteinerG.Single machinesched ulingwithperiodicmaintenancetominimizemake
span
revisited[J].JournalofScheduling,2014,17:
263 270.
[12]NeselloV,SubramanianA,BattarraM,LaporteG.Exactsolutionofthesingle machineschedulingproblem
withperiodicmaintenancesandsequence dependent
setuptimes[J].EuropeanJournalofOperational
Research,2018,266:498 507.
[13]YinYQ,XuJY,ChengTCE,WuCC,WangDJ.Approximationschemesforsingle machinescheduling
withafixedmaintenanceactivitytominimizethetotal
amountoflatework[J].NavalResearchLogistics,
2016,63:172 183.
[14]LiuM,WangSJ,ChuCB,ChuF.Animprovedexactalgorithmforsingle machineschedulingtominimizethe
numberoftardyjobswithperiodicmaintenance[J].
InternationalJournalofProductionResearch,2016,54:
3591 3602.
[15]LuoWC,LiuF.Onsingle machineschedulingwithworkload dependentmaintenanceduration[J].Omega,
2017,68:119 122.[16]CuiWW,LuZQ.Minimizingthem
akespanonasinglemachinewithflexiblemaintenancesandjobs’
releasedates[J].Computers&OperationsResearch,
电蒸汽发生器蒸箱2017,80:11 22.
[17]WangXL,ChengTCE.Aheuristicforschedulingjobsontwoidenticalparallelmachineswithamachine
availabilityconstraint[J].InternationalJournalof
ProductionEconomics,2015,161:74 82.
[18]HashemianN,DialloC,VizváriB.Makespanminimi zationforparallelmachinesschedulingwithmultiple
availabilityconstraints[J].AnnalsofOperations
Research,2014,213:173 186.
[19]XuDH,ChengZM,YinYQ,LiHX.Makespanminimizationfortwoparallelmachinesschedulingwitha
periodicavailabilityconstraint[J].Computers&Opera
tionsResearch,2009,36:1809 1812.
[20]LiGG,LuXW.Two machineschedulingwithperiod icavailabilityconstraintstominimizemakespan[J].
JournalofIndustrialandManagementOptimization,
2015,11:685 700.
[21]LeeJY,KimYD.Abranchandboundalgorithmtominimizetotaltardinessofjobsinatwoidentical paral
lel achineschedulingproblemwithamachineavailabili
tyconstraint[J].JournaloftheOperationalResearch
Society,2015,66:1542 1554.
[22]HuoYM,ZhaoHR.Twomachineschedulingsubjecttoarbitrarymachineavailabilityconstraint[J].Omega,
2018,76:128 136.
[23]KaabiJ,HarrathY.Schedulingonuniformparallelmachineswithperiodicunavailabilityconstra
ints[J].
InternationalJournalofProductionResearch,2019,57:
216 227.
[24]LiDB,ChenKJ,WangX.Propertiesoftwo machineno waitflow shopschedulingwithanon resumable
unavailableinterval[J].JournalofIndustrialand
ProductionEngineering,2017,34:232 238.
3
3
1
第4期 李刚刚,等:目标是最小化最大完工时间带柔性维修时间限制的两台机器排序问题的一个近似算法