902696_维护时长依赖于机器负载和机器空闲的单机调度问题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

收稿日期:2016-01-12;修订日期:2016-02-15
作者简介:王宇盛(1991-),男,江西新余人,硕士研究生,主要研究方向:调度理论与算法基金项目:国家自然科学基金项目(71201022);江西省自然科学基金项目(20122BAB201010)。


通讯作者:刘爱华(1982-),女,山东潍坊人,讲师,主要研究方向:调度理论与算法。

第34卷 第1期2016年2月
江 西 科 学
JIANGXI SCIENCE
Vol.34No.1Feb.2016
doi :10.13990/j.issn1001-3679.2016.01.002
维护时长依赖于机器负载和机器空闲的单机调度问题
王宇盛,刘爱华∗,姜俊坡
(东华理工大学理学院,330013,南昌)
摘要:考虑一个含有单次维护的单机调度问题,其中工件不可中断,维护的开始时刻给定但维护时长是维护之前机器负载和机器空闲时长的线性增函数,目标是最小化时间表长。

分3种情况进行讨论,对前2种情况分别给出了一个多项式时间最优算法,对最后一种情况分析了LPT 算法的性能并给出了通过经典背包问题的任意一个FPTAS 来获得该情况的一个FPTAS 的方法。

关键词:维护;机器调度;负载;时间表长;算法分析
中图分类号:O232 文献标识码:A 文章编号:1001-3679(2016)01-005-05
Single⁃machine Scheduling Problem with a Machine Workload Dependent and Machine Idle Time Dependent Maintenance Duration
WANG Yusheng,LIU Aihua ∗,JIANG Junpo
(School of Science,East China University of Technology,330013,Nanchang,PRC)
Abstract :Consider a single⁃machine scheduling problem with a maintenance where jobs are non⁃pre⁃
emptive,the start time of the maintenance is given but the duration of the maintenance is an increas⁃
ing function of the machine workload and the machine idle time before the maintenance,the objective
is to minimize the makespan.The problem is divided into three cases for discussion.For each of the first two cases,a polynomial time optimal algorithm is proposed.For the last case,the performance of the LPT algorithm is analyzed and the method to obtain an FPTAS for the case from any FPTAS for
the classical knapsack problem is provided.
Key words :maintenance;machine scheduling;workload;makespan;algorithm analysis
0 引言
调度问题是一类重要的组合优化问题,有着
广泛的实际应用背景。

近年来,对调度问题的研究越来越多,新模型也不断涌现。

在考虑机器维护
[1]
的调度模型方面,经典的维护模型有单次维
护模型[2-3]、周期维护模型[4-7]、柔性周期维护模
型[8-10]等。

在维护的时长方面,通常假设维护的时长是事先给定的[2,4-9]或者仅依赖于维护之前的机器负载[3,10]。

注意到在实际生产中,机器的空闲时长也会对机器的维护时长产生影响。

因此,有必要研究维护时长不仅依赖于维护之前的
机器负载还同时依赖维护之前的机器空闲时长的维护模型。

1 问题描述
本文考虑如下调度问题:有n个相互独立的工件,J1,J2,…,J n需要在一台机器上加工。

工件J i的加工时长为p i。

工件在零时刻均已到达且均不可中断。

机器在同一时刻最多只能加工一个工件。

已知该机器将从时刻u开始进行一次维护,维护的时长l依赖于维护的开始时刻u之前的机器负载λ1与机器空闲时长λ2且是这2个量的线性函数,即l=aλ1+bλ2,其中a⩾0,b⩾0且a、b 不同时为0。

目标是把所考虑的n个工件安排在这台机器上加工使得这些工件的时间表长(即最后一个完工的工件的完工时刻)最小。

令λ=p1+p2+…+p n。

显然,如果λ⩽u,那么可以把所有的工件从零时刻开始按任意序逐个连续进行加工直至所有的工件都加工完成。

这样就得到了该调度问题的最优解。

另外,如果min {p i|1⩽i⩽n}>u,那么所有的工件都必须安排在维护之后加工。

这样可以把所有的工件从u+bu 时刻开始按任意序逐个连续进行加工直至所有的工件都加工完成。

这样就得到了该调度问题的最优解。

因此,除非特别说明,下文中均假设λ>u 且min{p i|1⩽i⩽n}⩽u。

这样的话,对于任意一个给定的可行方案,其维护之后必然有工件加工。

注意到在时刻u之前,机器要么在加工工件,要么空闲,因此有λ1+λ2=u。

从而l=aλ1+b(u -λ1),即l=(a-b)λ1+bu。

为了便于叙述,记f (x)=(a-b)x+bu。

同时记λ3为维护之后的机器负载。

注意到,从维护的结束时刻起至最后一个工件被加工完成这段时间,机器无需空闲。

因此,除非特别说明,下文均假设机器在维护之后一直忙碌直至所有的工件被加工完成。

那么,显然有λ1+λ3=λ。

在上述假设下,易知,调度方案的时间表长C max=u+f(λ1)+λ3(1)注意到f(x)=(a-b)x+bu和λ1+λ3=λ。

因此有
C max=(b+1)u+λ+(a-b-1)λ1(2) 2 问题的计算复杂性
定理1院本文所考虑的调度问题是NP⁃难的。

证明:考虑此调度问题的一个特殊情形:当a =b时,时间表长C max=(b+1)u+λ-λ1。

若要最小化C max,只需最大化维护之前的负载λ1。

注意到λ1⩽u。

这样可以构造一个划分问题使得λ1 =u当且仅当所构造的划分问题有解(可划分)此特殊情形有最优解。

注意到划分问题是NP⁃完全的。

因此该问题的特殊情形是NP⁃难的。

从而本文所考虑的调度问题是NP⁃难的。

证毕。

3 算法设计与分析
由上一节的分析,知道所考虑的调度问题是NP⁃难的,因此该问题不存在多项式时间最优算法除非P=NP。

注意到C max是关于λ1的线性函数。

经过对该问题进行细致的分析后,发现λ1的系数a-b-1与0之间的大小关系非常重要。

故下文将分别考虑a-b-1>0,a-b-1=0和a-b-1<0这3种情况。

3.1 a-b-1>0的情况
下面首先来描述一个基于经典的LS算法的LS⁃AM算法。

LS⁃AM算法:维护前机器不加工工件,把所有工件按照任意一个序列排列好,然后从维护结束时刻开始,将工件按照排列好的这个序列尽早地对这些工件进行加工,直至最后一个工件完成加工为止。

显然,LS⁃AM算法的计算复杂度是O(n)。

下面将证明,LS⁃AM算法对于a-b-1>0的情况是多项式时间最优算法。

定理2:对于所考虑的调度问题,当a-b-1 >0时,LS⁃AM算法是多项式时间最优算法。

证明:注意到a-b-1>0。

由式(2)知时间表长C max为λ1的严格增函数。

注意到0⩽λ1⩽u。

因此当λ1=0时,时间表长C max取得最小值。

注意到LS⁃AM算法把所有的工件都安排在维护之后加工且LS⁃AM算法的计算复杂度是O(n)。

因此LS⁃AM算法是对所考虑的调度问题在a-b-1 >0情况下的多项式时间最优算法。

证毕。

3.2 a-b-1=0的情况
显然,此时时间表长C max与λ1在区间[0,u]中的取值无关。

事实上,可以任意选取一些加工时长之和不超过u的工件(如果存在这样的一些或一个工件的话)安排在维护之前加工,然后确定维护的结束时刻,最后把剩余的工件从维护的结束时刻开始按任意序依次连续安排加工即可。

记这个算法为LS⁃ANY。

显然该算法是所考虑的
·6·江 西 科 学2016年第34卷
调度问题在a-b-1=0情况下的最优算法。

定理3:对于所考虑的调度问题,当a-b-1 =0时,LS⁃ANY算法是多项式时间最优算法。

显然,LS⁃AM算法是LS⁃ANY算法的特殊情况。

于是有下面的结论。

定理4:对于所考虑的调度问题,当a-b-1 =0时,LS⁃AM算法是多项式时间最优算法。

3.3 a-b-1<0的情况
下面首先考虑一个经典的算法,即LPT算法对该问题的性能。

LPT算法的主要思想是:先将所有工件按照加工时长从大到小的顺序排列,然后在不改变已经安排的工件的前提下依次将工件安排在使得该工件的完工时刻最早的时间区间上加工。

注意到由于维护的时长依赖于维护之前的负载,而在工件未完全安排之前无法事先获知维护之前最终的负载,因此根据LPT算法主要思想的上述描述不好确定维护之后的工件的加工时间区间。

不过,注意到一旦确定了哪些工件需要在维护之前加工,便很自然地确定了维护的时长,因而其余的工件(即需要在维护之后加工的工件)的加工时间区间也就能够很容易地确定了。

基于这种想法,结合所考虑的调度问题,LPT算法可如下描述。

LPT算法
步骤1:将所有工件按照加工时长从大到小的顺序排列。

步骤2:在不改变已经安排的工件的前提下依次尝试将工件安排在维护之前加工:若该工件可安排在维护之前加工,则将其安排在能够使其完工时刻尽量早的时间区间上加工;否则将其放入另一个待安排加工的工件集合中。

步骤3:根据维护之前的负载确定维护的时长。

步骤4:把待安排加工的工件集合中的工件从维护的结束时刻开始按加工时长从大到小的顺序依次连续安排加工。

不失一般性,下文假设经过LPT算法的步骤1之后,序列中工件的编号(即工件名称的下标)依次为i1,i2,…,i n,即p i1⩾p i2⩾…⩾p i n。

记S LPT 为LPT调度方案,S∗为某个最优调度方案,λLPT1和λLPT3分别为调度方案S LPT中维护之前和之后的负载,λ∗1和λ∗3分别为调度方案S∗中维护之前和之后的负载,C LPT max和C∗max分别为调度方案S LPT和调度方案S∗的时间表长。

与式(2)类似,有
C LPT max=(b+1)u+λ+(a-b-1)λLPT1(3)和
C∗max=(b+1)u+λ+(a-b-1)λ∗1(4)引理1:λ∗1⩾λLPT1。

证明:注意到C∗max⩽C LPT max且a-b-1<0。

由式(3)和式(4)易知λ∗1⩾λLPT1。

证毕。

定理5:对于所考虑的调度问题,当a-b-1 <0时,如果在LPT调度方案S LPT中维护之后仅有一个工件,那么S LPT是最优调度方案。

证明:设S LPT中维护之后加工的工件的编号为i k,其中1⩽i k⩽n。

那么显然有λLPT1=λ-p i k。

现在,考虑编号为i1,i2,…,i k的工件在最优调度S∗中的安排。

由于S LPT中维护之后加工的工件的编号为i k,那么由LPT算法知编号为i1,i2,…,i k的工件的加工时长之和必定大于u。

从而在最优调度S∗中编号为i1,i2,…,i k的工件中至
少有一个安排在维护后加工。

注意到p i
1⩾p i2⩾…⩾p i n。

因此,有λ∗3⩾p i k。

从而,λ∗1⩽λLPT1。


式(3)和式(4)易知C LPT max⩽C∗max,即S LPT是最优调度方案。

证毕。

引理2:λ⩾u+λ∗1-λLPT1。

证明:(反证法)假设λ<u+λ∗1-λLPT1。

注意到λ=λLPT1+λLPT3,因此有λLPT1+λLPT3<u+λ∗1-λLPT1。

注意到λ∗1⩽u,因而有λLPT3<2(u-λLPT1)。

注意到在LPT调度方案中维护之后每个工件的时长都严格大于u-λLPT1,从而在LPT调度方案中维护之后安排的工件的数量不能大于或等于2,即只能安排一个工件。

由定理5可知,S LPT是最优调度方案,从而λ∗1=λLPT1。

将其代入假设λ<u+λ∗1-λLPT1,有λ<u。

这与在第1节的假设λ>u 相矛盾。

故λ⩾u+λ∗1-λLPT1。

证毕。

定理6:对于所考虑的调度问题,当a-b-1 <0时,记J⩽={J i|p i⩽u},如果J⩽中的工件的加工时长之和小于或等于u,那么S LPT是最优调度方案。

证明:显然,对于任意一个可行的调度方案,集合J⩽之外的工件只能安排在维护之后加工,而维护之前的最大负载即为集合J⩽中工件的加工时长之和。

由于在a-b-1<0的情况下,C max为λ1的严格减函数而LPT算法显然把J⩽中工件全部安排在维护之前加工。

故S LPT是最优调度方案。

证毕。

·7·
第1期 王宇盛等:维护时长依赖于机器负载和机器空闲的单机调度问题
引理3:对于所考虑的调度问题,当a-b-1 <0时,记J⩽={J i|p i⩽u},如果J⩽中的工件的加工时长之和大于u,那么λLPT1>u/2。

证明:如果J⩽中存在加工时长大于u/2的工件,那么显然结论成立。

下面假设J⩽中的工件的加工时长均小于或等于u/2。

注意到J⩽中的工件的加工时长之和大于u。

因此,J⩽中必定至少有一个工件被安排在维护之后加工。

注意到如果,那么该工件将不可能被安排在维护之后加工。

从而,有λLPT1>u/2。

证毕。

定理7:对于所考虑的调度问题,当a-b-1 <0时,记J⩽={J i|p i⩽u},如果J⩽中的工件的加工时长之和大于u,那么LPT算法的最坏情况界为1-(a-b-1)/(2a+3),并且该界为紧界。

证明:由式(3)和式(4)有
C LPT max=C∗max+(a-b-1)(λLPT1-λ∗1)(5)由式(4)有
C∗max=(b+1)(u-λ∗1)+λ+aλ∗1。

注意到u⩾λ∗1。

因此有
C∗max⩾λ+aλ∗1。

由引理2知λ⩾u+λ∗1-λLPT1。

将其代入上式,得C∗max⩾u+λ∗1-λLPT1+aλ∗1,

C∗max⩾u+(a+1)(λ∗1-λLPT1)+aλLPT1。

由引理3知λLPT1>u/2。

从而有
C∗max⩾u+(a+1)(λ∗1-λLPT1)+au/2,

C∗max⩾(1+a/2)u+(a+1)(λ∗1-λLPT1)(6)注意到λ∗1⩽u且λLPT1>u/2。

因此有λ∗1-λLPT1⩽u-u/2=u/2。

利用该式对式(6)进行放缩,有
C∗max⩾(2a+3)(λ∗1-λLPT1)(7)由式(5)和式(7),有
C LPT max C∗max ⩽1-(a-b-1)
2a+3。

下面举例说明该最坏情况界是紧界。

考虑下面调度问题的实例:n=3,p1=u/2+ε,p2=u/2, p3=u/2,其中0<ε⩽u/2。

对于此调度实例,最
优调度方案把工件J2和J3安排在维护之前加工,把工件J1安排在维护之后加工,此时C∗max= (a+3/2)u+ε;由LPT算法把工件J1安排在维护之前加工,把工件J2和J3安排在维护之后加工,此时C LPT max=(a+3/2)u+ε+(a-b-1)(-u/2+ε)。

因此
C LPT max
C∗max
=1+(a-b-1)(-u/2+ε)
(a+3/2)u+ε。

当ε→0时,显然有
C LPT max
C∗max→1-
a-b-1
2a+3。

证毕。

由定理6和定理7有下面的结论。

定理8:对于所考虑的调度问题,当a-b-1 <0时,LPT算法的最坏情况界为1-(a-b-1)/ (2a+3),并且该界为紧界。

注意到当a-b-1<0时,时间表长C max为λ1的减函数。

故此时λ1应越大越好。

注意到0⩽λ1⩽u。

于是,λ1应尽量接近或达到u。

这显然可以通过求解经典背包问题的一个特殊情况(即物品的价值与其尺寸在数值上相等的情况)来实现。

注意到经典背包问题存在完全多项式时间近似策略(FPTAS)。

因此,我们的问题也存在FP⁃TAS。

事实上,设背包的最大承重为u,n个物品的重量依次为p1,p2,…,p n,每个物品的价值与其重量在数值上相等。

设A是该背包问题的一个FPTAS,ε是一个正数。

令ε1=ε/(b+1-a)。

由算法A,有λA1⩾(1-ε1)λ∗1,其中λA1和λ∗1分别为算法A得到的目标值和最优目标值。

把这些物品看作工件,把放入背包中的物品均安排在维护之前加工,把未放入背包中的物品安排在维护之后加工。

这样便得到了基于算法A的调度问题的时间表长
C A max=(b+1)u+λ+(a-b-1)λA1
和最优时间表长
C∗max=(b+1)u+λ+(a-b-1)λ∗1。

注意到λA1⩾(1-ε1)λ∗1。

不难发现,C A max⩽C∗max-(a-b-1)ε1λ∗1。

注意到λ∗1⩽u和ε1=ε/ (b+1-a)。

从而有C A max=C∗max+uε。

注意到u⩽C∗max。

因此有C A max⩽(1+ε)C∗max。

这样就利用背包问题的一个FPTAS得到了所考虑的调度问题在a-b-1<0情况下的一个FPTAS。

即有下述定理。

定理9:可由经典背包问题的FPTAS获得求解所考虑的调度问题在a-b-1<0情况下的FPTAS。

4 结论
本文研究了一个维护时长是维护之前的机器
·8·江 西 科 学2016年第34卷
负载和机器空闲时长的线性增函数的单机调度问题。

根据该函数系数之间的关系,分3种情况进行了研究。

对于前2种情况,分别给出了一个多项式时间最优算法。

对于最后一种情况,分析了
LPT算法的性能:在某些情形下,LPT算法能够得到最优调度方案;在某种情形下,给出了LPT算法的最坏情况界(此界即为LPT算法对该情况的最坏情况界)。

此外,利用最后一种情况下目标函数的特点,给出了通过经典背包问题的任意一个FPTAS获得该情况的一个FPTAS的方法。

参考文献院
[1] 徐德华.车间运行与维护的集成调度理论[M].武
汉:武汉大学出版社,2015.
[2]Lee C Y.Machine scheduling with an availability con⁃
straint[J].Journal of Global Optimization,1996,9:395
-416.
[3]Xu D,Wan L,Liu A,et al.Single machine total com⁃
pletion time scheduling problem with workload⁃depend⁃
ent maintenance duration[J].Omega⁃The International
Journal of Management Science,2015,52:101-106.
[4]Liao C J,Chen W J.Single⁃machine scheduling with
periodic maintenance and nonresumable jobs[J].Com⁃
puters&Operations Research,2003,30:1335-1347.
[5]Ji M,He Y,Cheng T C E.Single⁃machine scheduling
with periodic maintenance to minimize makespan[J].
Computers&Operations Research,2007,34:1764-
1770.
[6]曹雁卿.具有周期维护的最小化工件完成时刻之和
的平行机调度问题[J].江西科学,2012,30(4):434
-437.
[7]张家宝.考虑维护和可中断工件的混合型平行机调
度问题研究[J].江西科学,2015,33(5):647-651,
707.
[8]Xu D,Sun K,Li H.Parallel machine scheduling with
almost periodic maintenance and non⁃preemptive jobs
to minimize makespan[J].Computers&Operations
Research,2008,35:1344-1349.
[9]Xu D,Yin Y.On single⁃machine scheduling with flexi⁃
ble maintenance activities[J].International Journal of
Advanced Manufacturing Technology,2011,56:1139-
1145.
[10]Xu Z,Xu D.Single⁃machine scheduling with preemp⁃
tive jobs and workload⁃dependent maintenance dura⁃
tions[J].Operational Research,2015,15:423-436.
(上接第4页)
[5] Cakoni F,Colton D,Haddar H.The computation of
lower bounds for the norm of the index of the refrac⁃
tion in an anisotropic media[J].J Integral Equations
and Applications,2009,21:203-227. [6]Cakoni F,Colton D,Monk P.On the use of transmis⁃
sion eigenvalues to estimate the index of refraction
from far field data[J].Inverse Problems,2007,23:
507-522.
[7]Cakoni F,Haddar H.On the existence of transmission
eigenvalues in an inhomogeneous medium[J].Appli⁃
cable Analysis,2008,4:475-493.
[8]Colton D,Päivärinta L,Sylvester J.The interior trans⁃
mission problem[J].Inverse Problems and Imaging,
2007,1:13-28.[9]Cakoni F,Colton D,Haddar H.The interior transmis⁃
sion problem for regions with cavities[J].SIAM J
Math Anal,2010,42:145-162.
[10]Haddar H.The interior transmission problem for aniso⁃
tropic Maxwell′s equations and its applications to the
inverse problem[J].Math Methods Applied Sciences,
2004,27:2111-2129.
[11]Kirsch A,Grinberg N.The Factorization Method for
Inverse Problems[C].Volume36of Oxford Lecture
Series in Mathematics and its Applications.Oxford:
Oxford University Press,2008.
[12]Kirsch A.The denseness of the far field patterns for
the transmission problem[J].IMA J Appl Math,
1986,37:213-255.
[13]Päivärinta L,Sylvester J.Transmission eigenvalues
[J].SIAM J Math Anal,2008,40:738-753.
·9·
第1期 王宇盛等:维护时长依赖于机器负载和机器空闲的单机调度问题。

相关文档
最新文档