Upload
svetlana-a-kravchenko
View
214
Download
1
Embed Size (px)
Citation preview
European Journal of Operational Research 199 (2009) 595–600
Contents lists available at ScienceDirect
European Journal of Operational Research
journal homepage: www.elsevier .com/locate /e jor
Short Communication
Minimizing the number of machines for scheduling jobs with equalprocessing times
Svetlana A. Kravchenko a, Frank Werner b,*
a United Institute of Informatics Problems, Surganova St. 6, 220012 Minsk, Belarusb Otto-von-Guericke-Universität, Fakultät für Mathematik, 39106 Magdeburg, Germany
a r t i c l e i n f o
Article history:Received 18 January 2008Accepted 10 October 2008Available online 21 October 2008
Keywords:Parallel machine schedulingLinear programming
0377-2217/$ - see front matter � 2008 Elsevier B.V. Adoi:10.1016/j.ejor.2008.10.008
* Corresponding author. Tel.: +49 391 67 12025; faE-mail addresses: [email protected] (S.A
a b s t r a c t
In this paper, we consider a parallel machine environment when all jobs have the same processing timeand arbitrary release dates and deadlines of the jobs are given. We suppose that the available number ofmachines, which can be used simultaneously, may vary over time. The aim is to construct a feasible sche-dule in such a way that the maximal number of simultaneously used machines is minimal. We give apolynomial algorithm for this problem.
� 2008 Elsevier B.V. All rights reserved.
1. Introduction
The problem considered can be stated as follows. There are n jobs J1; . . . ; Jn which have to be processed on a set of identical parallel ma-chines. For each job Jj; j ¼ 1; . . . ;n; a processing time pj ¼ p; which is equal for all jobs, a release date rj; and a deadline Dj are given. Eachmachine can process only one job at a time. Besides we suppose that the time interval ½minjfrjg;maxjfDjg½ is divided into several intervals½t1; t2½; ½t2; t3½; . . . ; ½tT�1; tT ½; where minjfrjg ¼ t1 6 t2 6 . . . 6 tT ¼maxjfDjg; such that for each interval ½tg ; tgþ1½ the number of available ma-chines mgþ1 is known in advance. Note that we do not fix the concrete set of mgþ1 machines, i.e. at two different points of ½tg ; tgþ1½, one canuse different sets of mgþ1 machines. Preemption of processing is not allowed, i.e. the processing of any job started at time t on one of theidentical machines will be completed at time t þ p on the same machine. We want to find a feasible schedule such that the maximal num-ber of machines used by J1; . . . ; Jn is minimal. In this paper, we present a polynomial time algorithm for the above problem. The algorithm isbased on the approach given in [1,2].
Note that, if the number of available machines is m at any time point, then the problem of finding a feasible schedule was considered in [7].The criterion of minimizing the number of machines is very important in practice. The described problem can appear, for example, in a sit-uation when several users work on parallel processors with shared memory. The working time of each user is restricted by some time frames.Besides the number of available processors can vary over time since some jobs can be planned in advance. The aim is to minimize the cost, i.e.the number of used processors. In the literature one can find some other applications of the criterion considered in this paper. In [3], it arisesin connection with the transportation problem of Navy fuel oil. In [6], the same criterion is considered for the problem of developing distrib-uted memory architectures. Kroon et al. [5] consider the problem of minimizing the number of processors arising in an airport managementproblem. In [4], this criterion is used in connection with the problem of designing systolic networks.
The remainder of this note is organized as follows. In Section 2, we give a linear programming (LP) formulation for a relaxation of thescheduling problem under consideration. A polynomial algorithm for the scheduling problem is presented in Section 3. Then, we give thecorrectness proof for this algorithm in Section 4. Finally, we give an illustrative example in Section 5 and some concluding remarks in Sec-tion 6.
2. LP formulation
A feasible schedule for the problem considered can be found in the class of schedules, where each job is processed in one of the follow-ing intervals of length p:
ll rights reserved.
x: +49 391 67 11171.. Kravchenko), [email protected] (F. Werner).
596 S.A. Kravchenko, F. Werner / European Journal of Operational Research 199 (2009) 595–600
½rj þ kp; rj þ kpþ p½jj 2 f1; . . . ;ng; k 2 f0;1; . . .g� �
[ ½tj þ kp; tj þ kpþ p½jj 2 f1; . . . ; Tg; k 2 f0;1; . . .g� �
:
Statement 1. There exists an optimal schedule, where jobs are processed only within the time interval ½minifrig;minifrig þ 2np½:
Proof. For an optimal schedule, the time interval ½minifrig;1½ can be considered as the union of intervals each of which belongs to one ofthe following types:
(1) Intervals where all available machines are idle.(2) Intervals where at any time point at least one available machine is busy.(3) Intervals without available machines, i.e. ml ¼ 0.
The intervals without available machines can be omitted, i.e. we can restrict to the case when at any time there exists at least oneavailable machine. This implies that for an optimal schedule the time interval ½minifrig;1½ can be considered as the union of intervals oftypes (1) and (2).
Now suppose that there is a job processed after minifrig þ 2np: Taking into account that the total length of the intervals of type (2) doesnot exceed np; we obtain that the total length of the intervals of type (1) exceeds np: Since the number of the intervals of type (1) is lessthan or equal to n, there is an interval of type (1) whose length exceeds p. However, in this case either the problem can be decomposed intotwo subproblems or the schedule is not active. h
Thus, we will restrict the possible positions of the jobs by the set of intervals
f½rj þ kp; rj þ kpþ p½jj 2 f1; . . . ;ng; k 2 f. . . ;�1;0;1; . . .g; rj þ kp P minifrig; rj þ kpþ p 6 minifrig þ 2npg [ f½tj þ kp; tj þ kpþ p½jj2 f1; . . . ; Tg; k 2 f. . . ;�1;0;1; . . .g; tj þ kp P min
ifrig; tj þ kpþ p 6 min
ifrig þ 2npg:
Take all the different intervals from this set and enumerate them in increasing order of their left endpoints. Denote the obtained set byfIiji 2 f1; . . . ; zgg. For each Ii; denote by DðIiÞ the right endpoint and by RðIiÞ the left endpoint of Ii.
One can see that there exists some maximal y such that Iiþ1 \ � � � \ Iiþy–; for any i 2 f0; . . . ; z� yg.Consider the following LP problem:
min M; ð2:1Þ
subject toXz
i¼1
xji ¼ p; j 2 f1; . . . ;ng; ð2:2Þ
Xn
j¼1
xj;iþ1 þ � � � þXn
j¼1
xj;iþq 6minfM;mkþ1gp;
i 2 f0; . . . ; z� qg; q 2 f1; . . . ; yg; k 2 f1; . . . ; T � 1g;Iiþ1 \ � � � \ Iiþq \ ½tk; tkþ1½–;; ð2:3Þxji ¼ 0 if RðIiÞ < rj; i ¼ 1; . . . ; z; j ¼ 1; . . . ; n; ð2:4Þxji ¼ 0 if Dj < DðIiÞ; i ¼ 1; . . . ; z; j ¼ 1; . . . ;n; ð2:5Þxji P 0; i ¼ 1; . . . ; z; j ¼ 1; . . . ;n: ð2:6Þ
The problem includes OðnzÞ variables. Taking into account that z 6 2nðnþ TÞ; we obtain Oðn3 þ n2TÞ variables. The number of constraints isOðyzÞ: Taking into account that y 6 nþ T; we obtain Oðn3 þ n2T þ nT2Þ constraints. Since both numbers are polynomially bounded, the LPproblem can be polynomially solved.
If we set xji equal to the amount of job Jj processed in the interval Ii and M is the number of machines we want to minimize, then anyfeasible schedule for the scheduling problem under consideration can be described as a feasible solution of problem (2.1)–(2.6). Constraint(2.2) ensures that the processing time of each job is p. Constraints (2.4) and (2.5) exclude the possibility of processing any job outside thegiven time window for processing. Constraint (2.3) guarantees that the number of jobs processed at the same time does not exceed thenumber of available machines.
On the other hand, if we solve (2.1)–(2.6) with the restriction
xji 2 f0;pg; i 2 f1; . . . ; zg; j 2 f1; . . . ; ng; M 2 N; ð2:7Þ
then the obtained solution is a solution of the scheduling problem considered.In the following, we will suppose that problem (2.1)–(2.6) has been solved and that the obtained solution ðx�;M�Þ does not satisfy (2.7).
Parallel to the notation xji, we will use xj;i to avoid a confusion between the first index and the second one.
3. Algorithm
In this section, we present a polynomial algorithm for the scheduling problem under consideration. Using x� and m2; . . . ;mT , we deter-mine all intervals where jobs are processed in a feasible schedule. With this purpose, we calculate the value vðIkÞ for each interval Ik asfollows:
vðIkÞ ¼Xk
i¼1
Xn
j¼1
x�ji; k ¼ 1; . . . ; z:
S.A. Kravchenko, F. Werner / European Journal of Operational Research 199 (2009) 595–600 597
Note that vðIzÞ ¼Pz
i¼1
Pnj¼1x�ji ¼ np holds if the solution is feasible.
Since in any interval Ii at most li ¼minfmg jg 2 f2; . . . ; Tg; Ii \ ½tg�1; tg ½–;g jobs can be scheduled, we define the values:
v1 ¼ vðI1Þ; . . . ;vl1¼ vðI1Þ;
vl1þ1 ¼ vðI2Þ; . . . ; vl1þl2¼ vðI2Þ;
. . .
vl1þ...þlz�1þ1 ¼ vðIzÞ; . . . ;vl1þ...þlz¼ vðIzÞ;
i.e. we take li copies of each interval Ii enumerated in non-decreasing order of their left endpoints.Now, using v1; . . . ;vl1þ...þlz
, we mark all intervals where some jobs are processed in an optimal schedule. The marking procedure is asfollows:
Step 1: To select the first marked interval, one moves from v1 to vl1þ���þlzand takes the first v j such that v j > 0 � p holds. Denote the cor-
responding interval by I�1, i.e. v j ¼ vðI�1Þ.Step 2: To select the second marked interval, one moves from v j ¼ vðI�1Þ to vl1þ���þlz
and takes the first vg such that vg > 1 � p holds.Denote the corresponding interval by I�2, i.e. vg ¼ vðI�2Þ.� � �
Step n: To select the n th marked interval, one moves from vðI�n�1Þ to vl1þ���þlzand takes the first vh such that vh > ðn� 1Þ � p holds.
Denote the corresponding interval by I�n, i.e. vh ¼ vðI�nÞ.
The marked intervals determine the places where the jobs are processed in an optimal schedule. Now, we use all marked intervalsI�1; . . . ; I�n and apply the following
Algorithm 1. Consider the marked intervals I�1; . . . ; I�n in the given order and schedule in each of these intervals a
currently available job with the earliest deadline.
To estimate the computational complexity, we observe that the marking procedure requires Oðl1 þ � � � þ lzÞ steps, wherel1 þ � � � þ lz 6 z �maxfmg jg 2 f2; . . . ; Tgg; z 6 2nðnþ TÞ and mg 6 n; i.e. Oðl1 þ � � � þ lzÞ 6 Oðn3 þ n2TÞ: Given all marked intervals, Algo-rithm 1 requires Oðn2Þ time.
4. Correctness of the algorithm
The proof of the correctness of the presented algorithm is quite analogous to that in [1,2]. Before proving that the schedule constructedby Algorithm 1 is a feasible one, we investigate some properties of the vector v : For a solution x�, let Ii1 ; . . . ; Iin be all marked intervals anddenote by eij the number of marked copies of the interval Iij ; j ¼ 1; . . . ;n:
Lemma 1. For any index j 2 f1; . . . ;ng, inequalities
ðei1 þ ei2 þ � � � þ eij Þp P vðIij Þ > ðei1 þ ei2 þ � � � þ eij � 1Þp
hold.Proof. The proof is done by induction. By Algorithm 1, we have the following properties for j ¼ 1:
– the first copy of Ii1 is marked since vðIi1 Þ > 0 � p;– the second copy of Ii1 is marked since vðIi1 Þ > 1 � p;– . . .
– the ei1 th copy of Ii1 is marked since vðIi1 Þ > ðei1 � 1Þp:
Thus, vðIi1 Þ > ðei1 � 1Þp holds. Moreover, if ei1 < li1 , then by definition of ei1; the inequalities ei1
p P vðIi1 Þ > ðei1� 1Þp hold. On the other
hand, vðIi1 Þ 6 li1p holds since for all intervals Ii with i < i1, the equality x�ji ¼ 0 holds. Hence, if ei1 ¼ li1
, then vðIi1Þ 6 ei1 p holds. Thus,
Lemma 1 is true for i1.Suppose that Lemma 1 holds for any j 6 k; where k 6 n� 1; i.e.
ðei1 þ ei2 þ � � � þ eij Þp P vðIij Þ > ðei1 þ ei2 þ � � � þ eij � 1Þp:We want to show that
ðei1 þ ei2 þ � � � þ eikþ1Þp P vðIikþ1Þ > ðei1 þ ei2 þ � � � þ eikþ1
� 1Þp
holds.By Algorithm 1, we have the following properties:
– the first copy of Iikþ1is marked since vðIikþ1
Þ > ðei1 þ ei2 þ � � � þ eik Þp,– the second copy of Iikþ1
is marked since vðIikþ1Þ > ðei1 þ ei2 þ � � � þ eik þ 1Þp,
– . . .
– the eikþ1th copy of Iikþ1
is marked since vðIikþ1Þ > ðei1 þ ei2 þ � � � þ eikþ1
� 1Þp,
i.e. if eikþ1< likþ1
, then vðIikþ1Þ 6 ðei1 þ ei2 þ � � � þ eikþ1
Þp by definition of eikþ1:
Inequality
vðIik Þ 6 ðei1 þ ei2 þ � � � þ eik Þp ð4:1Þ
598 S.A. Kravchenko, F. Werner / European Journal of Operational Research 199 (2009) 595–600
holds by the inductive assumption, and
vðIikþ1Þ ¼ vðIik Þ þ
Xn
l¼1
x�l;ikþ1ð4:2Þ
holds by definition. Moreover, inequality
Xnl¼1
x�l;ikþ16 likþ1
p ð4:3Þ
holds by constraint (2.3). Combining (4.1)–(4.3), we have
vðIikþ1Þ 6 ðei1 þ ei2 þ � � � þ eik Þpþ likþ1
p;
i.e. if eikþ1¼ likþ1
, then vðIikþ1Þ 6 ðei1 þ ei2 þ � � � þ eikþ1
Þp holds. h
Theorem 1. Algorithm 1 constructs a feasible schedule.
Proof. To prove Theorem 1, it is sufficient to show that there is a feasible schedule in which all marked intervals are occupied.Using vector x�, we can calculate the restricted release date r�j and the restricted deadline D�j for each job Jj in the following way:
r�j ¼minfrðIiÞjx�ji–0g; D�j ¼maxfDðIiÞjx�ji–0g: It is clear that ½r�j ;D�j ½# ½rj;Dj½ holds. Now we schedule in each marked interval the job with the
minimal restricted deadline among all jobs that are currently available for processing, denote this schedule by ~s.To prove Theorem 1, it is sufficient to show that ~s is a feasible schedule. Determine ~x in the following way: ~xji ¼ p if job Jj is scheduled in
the interval Ii in ~s, and ~xji ¼ 0 otherwise.Now, we want to prove that ~x is a feasible solution of problem (2.2)–(2.6). It is clear that 0 6 ~xji 6 p for any i ¼ 1; . . . ; z and for any
j ¼ 1; . . . ;n: Thus, we have to prove (2.2)–(2.5).First, we prove (2.2). We show that
Pzi¼1~xji ¼ p for any j ¼ 1; . . . ;n: This means that any job is scheduled in some interval. Since we
choose only jobs which are currently available for processing, this will also prove (2.4) and (2.5). Take any job Jk which is not scheduled yet.Let r�k ¼ rðIcÞ and D�k ¼ DðIbÞ: In ½r�k;D
�k½, there is at least one marked interval since vðIbÞ � vðIcÞP p: For all jobs Jj scheduled in these marked
intervals, we have D�j 6 D�k since otherwise job Jk would be scheduled but not job Jj. Besides all these marked intervals are occupied by somejobs.
Take
r�u ¼minfr�j jJj is scheduled in some marked interval within ½r�k;D�k½g:
Consider ½r�u; r�k½ and all marked intervals in it. For any job Jg scheduled in these marked intervals, inequality D�g 6 D�k holds since otherwise jobJu would be scheduled but not job Jg : Again, all these marked intervals are occupied by some jobs because otherwise Ju could have beenscheduled earlier. Take
r�w ¼ fr�j jJj is scheduled in some marked interval within ½r�u; r�k½g:
Now, we consider ½r�w; r�u½ and all marked intervals in it, and so on. At the end of this process, we find an interval I� ¼ ½r�s;D�k½ such that
� all marked intervals in I� are occupied by some jobs;� for all, say N, jobs scheduled in I�, we have ½r�j ;D
�j ½# ½r�s;D
�k½;
� job Jk is not scheduled in I� but inclusion ½r�k;D�k½# ½r�s;D
�k½ holds.
Denote all marked intervals in ½r�s;D�k½ by Iiqþ1
; Iiqþ2; . . . ; Iiqþf
and the corresponding numbers of marked copies by eiqþ1; eiqþ2
; . . . ; eiqþf: In
addition, we consider Iiq , i.e. the last marked interval before Iiqþ1:
By Lemma 1, we have
ðei1 þ ei2 þ � � � þ eiq Þp P vðIiq Þ > ðei1 þ ei2 þ � � � þ eiq � 1Þp:
Let us assume that vðIiq Þ is equal to ðei1 þ ei2 þ � � � þ eiq � 1Þpþ d; where 0 < d 6 p, and
ðei1 þ ei2 þ � � � þ eiqþfÞp P vðIiqþf
Þ > ðei1 þ ei2 þ � � � þ eiqþf� 1Þp:
Moreover, let vðIiqþfÞ ¼ ðei1 þ ei2 þ � � � þ eiqþf
� 1Þpþ �; where 0 < � 6 p:Then, for the intervals Iiqþ1
; Iiqþ2; . . . ; Iiqþf
; we obtain
Xn
j¼1
x�j;iqþ1þXn
j¼1
x�j;iqþ2þ � � � þ
Xn
j¼1
x�j;iqþf¼ ðN þ 1Þp ¼ vðIiqþf
Þ � vðIiq Þ ¼ ðeiqþ1 þ eiqþ2 þ � � � þ eiqþfÞpþ �� d;
since eiqþ1 þ eiqþ2 þ � � � þ eiqþf¼ N. Hence, we have �� d ¼ p; i.e. � ¼ p and d ¼ 0 but d has to be positive by our assumption. Thus, we get a
contradiction to the statement that Jk is not scheduled by Algorithm 1.Now we want to prove (2.3), i.e. we show that
Xn
j¼1
~xj;iþ1 þXn
j¼1
~xj;iþ2 þ � � � þXn
j¼1
~xj;iþq 6 mkþ1p
holds for any i 2 f0; . . . ; z� qg and for any ½tk; tkþ1½ such that Iiþ1 \ � � � \ Iiþq \ ½tk; tkþ1½–;. Suppose that among the intervals Iiþ1; Iiþ2; . . . ; Iiþq, themarked intervals are the following ones: Iic ; Iicþ1 ; . . . ; Iig with the numbers of marked copies eic ; eicþ1 ; . . . ; eig correspondingly. Thus, we have toshow that ðeic þ eicþ1 þ � � � þ eig Þp 6 mkþ1p:
S.A. Kravchenko, F. Werner / European Journal of Operational Research 199 (2009) 595–600 599
By Lemma 1, we have ðei1 þ ei2 þ � � � þ eic�1Þp P vðIic�1
Þ and vðIig Þ > ðei1 þ ei2 þ � � � þ eig � 1Þp: Thus,
ðeic þ eicþ1 þ � � � þ eig Þp ¼ ðei1 þ ei2 þ � � � þ eig Þp� ðei1 þ ei2 þ � � � þ eic�1 Þp < vðIig Þ � vðIic�1 Þ þ p:
Furthermore, we obtain
vðIig Þ � vðIic�1 Þ ¼Xn
j¼1
x�j;ic þXn
j¼1
x�j;icþ1þ � � � þ
Xn
j¼1
x�j;ig 6 mkþ1p
by condition (2.3). Therefore,
vðIig Þ � vðIic�1 Þ þ p 6 mkþ1pþ p ¼ ðmkþ1 þ 1Þp;
i.e.
eic þ eicþ1 þ � � � þ eig < mkþ1 þ 1;
which gives
eic þ eicþ1 þ � � � þ eig 6 mkþ1: �Thus, Algorithm 1 constructs a feasible solution ð~x; eMÞ of problem (2.1)–(2.6). Since solution ð~x; eMÞ satisfies (2.7), it is also a feasiblesolution of problem (2.1)–(2.7).
Now we have to estimate the difference between M� and ~M. Let ~vðIkÞ ¼Pk
i¼1
Pnj¼1~xji: Then
Xn
j¼1
~xj;iþ1 þXn
j¼1
~xj;iþ2 þ � � � þXn
jþ1
~xj;iþq ¼ ~vðIiþqÞ � ~vðIiÞ:
By construction, 0 6 ~vðIkÞ � vðIkÞ < p for any k. Then
Xn
j¼1
~xj;iþ1 þXn
j¼1
~xj;iþ2 þ � � � þXn
j¼1
~xj;iþq ¼ ~vðIiþqÞ � ~vðIiÞ < vðIiþqÞ þ p� vðIiÞ ¼ vðIiþqÞ � vðIiÞ þ p 6 M�pþ p ¼ ðM� þ 1Þp:
The last inequality holds since, by (2.3), we have vðIiþqÞ � vðIiÞ 6 M�p:Thus,
Xnj¼1
~xj;iþ1 þXn
j¼1
~xj;iþ2 þ � � � þXn
j¼1
~xj;iþq < ðM� þ 1Þp;
i.e. if M� is integer, then
Xnj¼1
~xj;iþ1 þXn
j¼1
~xj;iþ2 þ � � � þXn
j¼1
~xj;iþq 6 M�p:
However, if M� is not integer, then
Xn
j¼1
~xj;iþ1 þXn
j¼1
~xj;iþ2 þ � � � þXn
j¼1
~xj;iþq 6 dM�ep:
Therefore, Algorithm 1 constructs an optimal solution of problem (2.1)–(2.7).
5. Example
To demonstrate the main ideas, we consider an example with the following data: there are two machines and four jobs with p ¼ 4 andr1 ¼ 0; D1 ¼ 9; r2 ¼ 1; D2 ¼ 9; r3 ¼ 1; D3 ¼ 9; r4 ¼ 0; D4 ¼ 10: For the interval ½0;4½; the available number of machines is m2 ¼ 2: For theinterval ½4;6½; the available number of machines is m3 ¼ 1: For the interval ½6;10½; the available number of machines is m4 ¼ 2:
Then the set of intervals fIiji ¼ f1; . . . ; zgg available for processing is the following: I1 ¼ ½0;4½; I2 ¼ ½1;5½; I3 ¼ ½2;6½; I4 ¼ ½4;8½; I5 ¼ ½5;9½;I6 ¼ ½6;10½: Taking into account that intervals I1 and I6 can be used on both machines, we add additional intervals I0 ¼ I1 ¼ ½0;4½ andI7 ¼ I6 ¼ ½6;10½: Thus, we have to consider the eight intervals I0; I1; I2; I3; I4; I5; I6; I7:
By constraints (2.4) and (2.5), all non-zero variables are among the variables x10; x11; x12; x13; x14; x15; x22; x23; x24; x25; x32; x33; x34; x35; x40;
x41; x42; x43; x44; x45; x46; x47: Then the LP problem (2.1)–(2.6) can be written as follows:
min M;
subject to x10 þ x11 þ x12 þ x13 þ x14 þ x15 ¼ 4;
x22 þ x23 þ x24 þ x25 ¼ 4;
x32 þ x33 þ x34 þ x35 ¼ 4;
x40 þ x41 þ x42 þ x43 þ x44 þ x45 þ x46 þ x47 ¼ 4;
x10 þ x40 þ x11 þ x41 þ x12 þ x22 þ x32 þ x42
þ x13 þ x23 þ x33 þ x43 6 2 � 4;x10 þ x40 þ x11 þ x41 þ x12 þ x22 þ x32 þ x42
þ x13 þ x23 þ x33 þ x43 6 M � 4;
600 S.A. Kravchenko, F. Werner / European Journal of Operational Research 199 (2009) 595–600
x12 þ x22 þ x32 þ x42 þ x13 þ x23 þ x33 þ x43
þ x14 þ x24 þ x34 þ x44 6 1 � 4;x12 þ x22 þ x32 þ x42 þ x13 þ x23 þ x33 þ x43
þ x14 þ x24 þ x34 þ x44 6 M � 4;x13 þ x23 þ x33 þ x43 þ x14 þ x24 þ x34 þ x44
þ x15 þ x25 þ x35 þ x45 6 1 � 4;x13 þ x23 þ x33 þ x43 þ x14 þ x24 þ x34 þ x44
þ x15 þ x25 þ x35 þ x45 6 M � 4;x14 þ x24 þ x34 þ x44 þ x15 þ x25 þ x35 þ x45
þ x46 þ x47 6 2 � 4;x14 þ x24 þ x34 þ x44 þ x15 þ x25 þ x35 þ x45
þ x46 þ x47 6 M � 4;xij P 0; i ¼ 1; . . . ;4; j ¼ 0; . . . ;7:
An optimal solution of the above problem is obtained by x10 ¼ x11 ¼ 2; x22 ¼ x25 ¼ 2; x32 ¼ x35 ¼ 2; x46 ¼ x47 ¼ 2 with M ¼ 2: We calculatevðIÞ for each interval, and get vðI0Þ ¼ 2; vðI1Þ ¼ 4; vðI2Þ ¼ 8; vðI3Þ ¼ 8; vðI4Þ ¼ 8; vðI5Þ ¼ 12; vðI6Þ ¼ 14; vðI7Þ ¼ 16: In this case, the markedintervals are I0; I2; I5; I6: Now, applying Algorithm 1, we obtain that job J1 is scheduled in I0; job J2 is scheduled in I2; job J3 is scheduled in I5;
and job J4 is scheduled in I6:
6. Concluding remarks
In this paper, we have shown that the problem of minimizing the number of processors in a parallel machine environment with a var-iable number of available processors, equal processing times and arbitrary release dates and deadlines of the jobs can be solved in poly-nomial time. It is easy to see that, due to the polynomial number of intervals available for processing, the same idea can be applied to solvepolynomially the problem of minimizing the number of machines subject to a minimum length of the schedule obtained.
For future research it is interesting to consider the problem with dedicated machines. However, currently the most interesting questionis whether it is possible to generalize the proposed approach to the case of uniform machines.
Acknowledgements
The results presented in this paper were attained during a visit of S.A. Kravchenko at the Otto-von-Guericke-Universität of Magdeburgwhich was supported by a fellowship of the Alexander von Humboldt Foundation.
References
[1] P. Brucker, S.A. Kravchenko, Scheduling jobs with equal processing times and time windows on identical parallel machines, Journal of Scheduling 11 (2008) 229–237.[2] P. Brucker, S.A. Kravchenko, Scheduling Jobs with Release Times on Parallel Machines to Minimize Total Tardiness, OSM Reihe P, Heft 258, Universität Osnabrück,
Fachbereich Mathematik/Informatik, 2005.[3] G.B. Dantzig, D.R. Fulkerson, Minimizing the number of tankers to meet a fixed schedule, Naval Research Logistics Quarterly 1 (1954) 217–222.[4] G. Finke, P. Lemaire, J.-M. Proth, M. Queyranne, Minimizing the number of machines for minimum-length schedules, European Journal of Operational Research (2008),
doi:10.1016/j.ejor.2006.11.050.[5] L.G. Kroon, M. Salomon, L.N. van Wassenhove, Exact and approximation algorithms for the tactical fixed interval scheduling problem, Operations Research 45 (4) (1997)
624–638.[6] A. Moukrim, On the minimum number of processors for scheduling problems with communication delays, Annals of Operations Research 86 (1999) 455–472.[7] B.B. Simons, M.K. Warmuth, A fast algorithm for multiprocessor scheduling of unit-length jobs, SIAM Journal on Computing 18 (1989) 690–710.