Computer-Aided Way to Prove Theorems in Scheduling - Springer Link

4 downloads 570 Views 587KB Size Report
This paper concerns probably the first experience in using computer programs ... is the number of jobs) which constructs a schedule S with the makespan in the.
Computer-Aided Way to Prove Theorems in Scheduling S.V. Sevastianov1 and I.D. Tchernykh2 1

Institute of Mathematics, Siberian Branch of the Russian Academy of Sciences, Universitetskii prosp. 4, 630090, Novosibirsk-90, Russia [email protected] 2 Department of Algebra and Mathematical Logic, Novosibirsk State Technical University, pr. Marksa, 20, 630092, Novosibirsk-92, Russia [email protected]

Abstract. For two scheduling problems (O3||Cmax and AL3||Cmax ) tight bounds of the optima localization intervals are found in terms of lower ˆ respectively) computable in linear time. The main bounds (C˜ and C, part of the proof was made with an aid of computer. As a by-product, we obtain linear-time approximation algorithms for solving these problems with worst-case performance ratios 4/3 and 5/3, respectively.

1

Introduction

This paper concerns probably the first experience in using computer programs to prove theorems in scheduling. Not that the authors wanted to share the laurels of Appel and Haken [1] who solved the four-color problem with a help of computer, but we just encountered the fact that we cannot avoid using the computer while solving some scheduling problems. The history of creating this paper should be started from the article by Gonzalez and Sahni [3], who introduced a new scheduling model called an open shop model. Following a standard classification scheme [5], we will denote it by O||Cmax and by Om||Cmax for an arbitrary and a fixed number m of machines, respectively. It was shown in [3] that the problem of constructing the shortest schedule is NP-hard even for three machines. For the case of two machines, they presented a linear-time algorithm for solving the problem to the optimum. In 1982 B´ar´ any and Fiala [2] presented a very simple (greedy) algorithm (due to Raˇcsmany) for solving the open shop problem with ratio performance guarantee of 2. This result stayed unsurpassed for more than 10 years, until Chen and Strusevich investigated the open shop problem with three machines with an objective of creating an approximation algorithm with better performance guarantee. They proved ([4]) that any greedy algorithm for O3||Cmax has a worst-case performance ratio of 53 and created another algorithm with worst-case performance ratio of 32 , the ratio 32 being attained for the best of two schedules constructed. G. Bilardi et al. (Eds.): ESA’98, LNCS 1461, pp. 502–513, 1998. c Springer-Verlag Berlin Heidelberg 1998

Computer-Aided Way to Prove Theorems in Scheduling

503

While investigating this algorithm, we found that in some cases the bound can be improved by applying a third schedule, in the remaining cases this improvement can be achieved by applying a fourth, fifth, etc. schedule, so why should we stop on the bound 32 ? We started to consider cases, subcases, subsubcases, etc.; after 3 years of intensive research it became clear that we were going a wrong way and our approach should be revised. What exactly was proved by Chen and Strusevich? To formulate this, we need some notation. Let lmax be the maximum machine load (the sum of processing times of all operations on the most busy machine), dmax be the maximum job . length (the sum of processing times of all operations of the longest job), C˜ = max{lmax , dmax }. As our objective is to minimize the makespan (Cmax (S)), the ∗ following trivial lower bound on the optimum Cmax is evident: 3 2

∗ ˜ Cmax ≥ C.

(1)

If we use only this lower bound on the optimum, then to substantiate a ratio ∗ performance guarantee Cmax (S)/Cmax ≤ ρ for some ρ, we have to prove that for any problem instance, a schedule S can be constructed that meets the bound ˜ Cmax (S) ≤ ρC. A result of exactly this type was obtained by Chen and Strusevich. They proved that for any instance of a three-machine open shop, a schedule S can ˜ 3 C]. ˜ Now the question is, what is the be constructed such that Cmax (S) ∈ [C, 2 ˜ minimal interval (in terms of C) which contains the optimum of any problem ˜ of the above instance? It is evident that we cannot improve the lower bound (C) interval. There is a simple instance with 4 jobs and the vectors of processing ∗ times (1, 1, 1), (2, 0, 0), (0, 2, 0), (0, 0, 2), for which Cmax = 43 C˜ holds. Is it a worst∗ ˜ case upper bound on Cmax in terms of C? To get an answer, we had written a computer program which output ”Yes” after more than 200 hours of running time. Thus, we have found tight bounds of the optima localization interval for ˜ which is a contents of all instances of the O3||Cmax problem in terms of C, Theorem 1. As a by-product, we present an algorithm with running time O(n) (where n is the number of jobs) which constructs a schedule S with the makespan in the ˜ 4 C] ˜ (which is a contents of Theorem 2). This guarantees a worstinterval [C, 3 case performance ratio of 43 for our algorithm. As follows from Theorem 1, this algorithm is the best (both in time complexity and in worst-case ratio) among those algorithms that use no lower bounds on the optimum other than (1) to get grounds for their performance. What is the value of our algorithm in comparison with the approximation scheme for Om||Cmax recently presented in [8]? Any algorithm Aε from this scheme has a ratio performance guarantee of (1 + ε) while its running time is not greater than O(n) plus an additive constant depending on m and ε. This constant is an upper bound on the time needed for an optimal scheduling of socalled ”large” jobs of a given instance. The number of such jobs can be evaluated m from above by 10( m ) ε −2 ; in our case (m = 3, ε = 13 ) this number is 10 · 97 ≈ ε 50000000.

504

S.V. Sevastianov, I.D. Tchernykh

So, for any n ≤ 50000000, if we decide to use the algorithm A 13 from the approximation scheme to solve the O3||Cmax problem with the ratio performance guarantee of 43 , we have to solve it to the optimum. Although, it was clear beforehand that the approximation scheme was not dedicated to practical applications, but rather to determination of the complexity status of the Om||Cmax problem. And this purely theoretical question was successfully solved: while it is proved in [9] that for O||Cmax problem (i.e., for the open shop problem when m is part of the input) there is no polynomial approximation algorithm with ratio performance guarantee better than 54 (unless P = N P), an approximation scheme exists in the case of any fixed m.

Now, a few words about the idea behind the computer-aided proof of Theorem 1. The main insight in the proof can be referred to as ”jobs number reduction” and is formalized in Lemma 1. The fact is, that in order to prove Theorem 1 for any n, it is sufficient to prove it for n = 5. Thus, a practical algorithm of solving the O3||Cmax problem with ratio performance guarantee of 43 is as follows. First, we reduce a given instance into an instance with no more than 5 ”aggregated” jobs (preserving the property dj ≤ C˜ while C˜ preserves its initial value, where dj denotes the length of job Jj ); second, for the reduced instance with n ≤ 5 jobs we build a schedule S with Cmax (S) ≤ 43 C˜ which exists due to Theorem 1. We do not even need to find an optimal schedule for this instance (unlike the approximation scheme discussed above).

The idea of jobs number reduction can be applied to other shop scheduling problems for getting results similar to Theorems 1 and 2. To illustrate this in our paper, we apply this method to a three-machine assembly line problem (AL3||Cmax). For this problem, a similar trivial lower bound Cˆ on the optimum is defined. It is proved in Theorem 3 that for any AL3||Cmax problem instance ˆ 5 C], ˆ and the bounds of the interval its optimum belongs to the interval [C, 3 are tight. This result has also a practical application, formulated in Theorem 4. It consists in the fact that for any instance of the AL3||Cmax problem, a schedule S with the makespan Cmax (S) ≤ 53 Cˆ can be found in linear time. For reference, in [7] an approximation algorithm with better ratio performance of 32 but worse running time O(n log n) was presented for AL3||Cmax. So, an improvement of ratio performance guarantee can be bought for the price of running time increasing, and it is fair.

The remainder of the paper is organized as follows. Sect. 2 contains a formalization of the open shop problem and the main Theorem 1. A description of the computer-aided proof of Lemma 2 is given in Sect. 3. An application of the jobs number reduction method to AL3||Cmax is described in Sect. 4. Some concluding remarks are given in Sect. 5.

Computer-Aided Way to Prove Theorems in Scheduling

2

505

Optima Localization for the Open Shop Problem

Let us formally define the notions mentioned in the previous section. Consider the classical open shop scheduling problem. Let M = {M1 , . . . , Mm } be the machine set, J = {J1 , . . . , Jn } be the job set, pji be the processing time of an operation Oij of job Jj on machine Mi . Thus, for each job Jj a vector of . processing times pj = (pj1 , . . . , pjm ) is defined. In the case of three machines, we will use A, B, C instead of M1 , M2 , M3 , and aj , bj , cj instead of pj1 , pj2 , pj3 , respectively. Let Cmax (S) bePthe makespan (i.e., the maximum completion time) . . n of a schedule S. Let li = j=1 pji stand for the load of machine Mi , lmax = P . m max li be the maximum machine load, dj = i=1 pji denote the length of job i=1,...,m . . Jj , dmax = max dj stand for the maximum job length,C˜ = max{lmax , dmax}, j=1,...,n . ∗ Cmax = min Cmax (S) be the optimum makespan of a given instance. We wish to S

find the minimal function ρ˜(m) such that the inequality ∗ Cmax ≤ ρ˜(m)C˜

holds for any instance of the Om||Cmax problem. The following simple instance 1 shows that ρ˜(m) cannot be less than 32 − 2m for odd m. Indeed, it is sufficient to take (m+1) jobs with the following vectors of processing times: (1, 1, . . . , 1), (m− 1, 0, . . ., 0), (0, m − 1, 0, . . . , 0), . . . , (0, . . . , 0, m − 1). For this instance, we have C˜ = m, whereas lmm m+1 3 1 ∗ Cmax = min max{k, m − k} + m − 1 = +m−1 = +m−1 = m− . k 2 2 2 2 The same instance defined for the first m − 1 machines yields the bound ρ˜(m) ≥ 3 1 − 2(m−1) for the case of even m. (It would be strange if this instance — with 2 zero load of one machine — turned out to be the worst one. However, we can suggest nothing better for the case of even m.) As is shown in the following Theorem 1, this lower bound on ρ˜(m) is tight for m = 3. Theorem 1 (the main result). For any instance of the O3||Cmax problem, ˜ 4 C] ˜ and the bounds of this interval are its optimum belongs to the interval [C, 3 tight. Proof. The tightness of the lower bound C˜ is evident. The ”bad” instance described above shows that the upper bound 43 C˜ cannot be improved. It remains ∗ to prove that Cmax ≤ 43 C˜ holds for any instance of the O3||Cmax problem. This in turn is straightforward from the following two lemmas. ∗ Lemma 1. For any number of machines m, the supremum ρ∗ = sup Cmax /C˜ over all instances of the Om||Cmax problem is attained on an instance with at most 2m − 1 jobs.

506

S.V. Sevastianov, I.D. Tchernykh

Lemma 2. For any instance of the O3||Cmax problem with 5 jobs, the optimum meets the bound 4 ˜ ∗ Cmax ≤ C. (2) 3 Pn Pm ˜ Suppose we are Proof (of Lemma 1). . It is clear that j=1 dj = i=1 li ≤ mC. given an instance of Om||Cmax with n > 2m−1 jobs, for which the supremum ρ∗ is attaining. We want to show, that there exists an instance with lesser number ∗ of jobs, for which the ratio Cmax /C˜ is not less than that for the initial instance. Suppose that there are two jobs Jj1 and Jj2 in the instance such that dj1 ≤ ˜ ˜ C/2, dj2 ≤ C/2. In this case we combine them to a new large job with processing j1 times pi + pji 2 of its operations on machines Mi , i = 1, . . . , m. So, we unite jobs Jj1 and Jj2 in a block which cannot be divided in a schedule, and treat this block as a new job instead of Jj1 and Jj2 . Since any feasible schedule for the modified instance is a feasible schedule for the initial one, this transformation does not lead to decreasing the optimum. It is also evident that this transformation does ˜ not affect the value of C. ˜ Now assume that the instance contains at most one job Jj with dj ≤ C/2. Suppose next that our instance contains more than (2m − 1) jobs. (Otherwise ˜ we are done.) Choose (2m − 2) ”large” jobs with dj > C/2. Their total length P ˜ Therefore, the total length of the remaining jobs is P dj < C˜ dj > (m − 1)C. Pn ˜ This implies that all the remaining (due to the inequality j=1 dj ≤ mC). ˜ The resulting instance jobs can be combined into one block without affecting C. contains at most (2m − 1) jobs. Since this was done without decreasing the value ∗ ˜ the claim follows. of Cmax and changing C, t u Note that the transformation described requires at most O(n) time units. Proof (of Lemma 2). is described below in Sect. 3. Thus, the claim of Theorem 1 follows. A practical application of this result is described in the following

t u t u

Theorem 2. For any O3||Cmax problem instance, a schedule S with Cmax (S) ∈ ˜ 4 C] ˜ can be constructed in linear time. [C, 3

3

A Description of the Proof of Lemma 2

Since our computer-aided proof of Lemma 2 cannot be fully presented in this paper, we will give only a description of the proof. In this section we assume that C˜ = 1 and measure all operation processing times in these units. In order to entrust the proof to a computer, we have to reduce the number of cases we need to consider to a finite one. Although we have reduced our problem to a case with a limited number of jobs (the number of machines was fixed in advance), we still have an infinite number of instances. The following observation allows us to avoid considering particular instances.

Computer-Aided Way to Prove Theorems in Scheduling

507

Note that any feasible schedule for a given instance is determinated by some network which specifies an order of operations for every job and every machine. On the other hand, for any such network it is sufficient to consider the only (so-called early) schedule, in which each operation is started as early as possible. The number of such networks is finite (in our case, it does not exceed 15!). We want to show that for any O3||Cmax instance there exists a network such that a schedule specified by this network meets bound (2). As is known from calendar planning, the makespan of the schedule specified by a network G and an instance I is equal to the length of a critical path in this network, which, in turn, must be a complete path in the network. We will treat a network as a set of its complete paths. Consider a network G1 shown in Fig. 1 a).

mJ- amJ- amJ-*amJ-*am -J^bm-J^ bm J^ bm-J^bm bmJ J J J m -J^ cm-J^ cm-J^ cm-J^ cm c 

m- amH-3 amX-Xam-3am ZZ~3 m-HHm-> XmX-Xz m b PPb HHb b bm  3 PPPq3cHmHHj- cm cm- cm- cm-

a1

2

3

4

5

a1

2

3

4

5

5

1

2

3

4

2

1

4

5

3

4

5

1

2

3

3

4

5

1

2

a)

b)

Fig.1. The schemes of a) a cyclic network G1 , b) and a network of the second type for O3||Cmax problem Similar networks and corresponding schedules will be referred to as cyclic. Note that G1 can be transformed to any cyclic network by applying a proper permutation π of jobs and a permutation σ of machines. Such networks will be denoted by Cyclic(π; σ). Network G1 contains 21 complete paths: a1 → a2 → a3 → a4 → a5 , a1 → a2 → a3 → a4 → b4 , etc. We will not consider paths with length evidently not ˜ e.g., a1 → a2 → a3 → a4 → a5 . Eliminating such paths, we greater than C, leave only 16 non-trivial complete paths. For an arbitrary instance I, we do not know beforehand which path in G1 will become critical. Thus, we should consider all the 16 paths separately, assuming that this particular path became critical in G1 . For some instances, the network G1 can be extremely bad, so we will consider . also a cyclic network G2 = Cyclic((5, 4, 3, 2, 1); (1, 2, 3)). These two networks (G1 and G2 ) will be referred to as basis networks. Now assume that an instance given corresponds to critical paths p1 , p2 in networks G1 and G2 , respectively. We want to show that for any such combination (p1 ∈ G1 , p2 ∈ G2 ) and for any particular instance there exists a sequence of schedules such that the makespan of the shortest one among them does not exceed 43 . We have to consider every such combination independently to complete the proof of Lemma 2. How does our program deal with any combination? We will illustrate this on the following example. Consider a combination (p1 , p2 ), where pi is a critical path from Gi. Let, for instance, p1 = a1 → a2 → a3 → a4 → b4 , p2 = a5 → a4 → b4 → b3 → c3 .

508

S.V. Sevastianov, I.D. Tchernykh

Notation pi will be further used for not only the actual path, but also for its length. Thus, p1 = a1 + a2 + a3 + a4 + b4 , p2 = a5 + a4 + b4 + b3 + c3 . Denote schedules corresponding to networks Gi as Si . We are under assumption that Cmax (S1 ) = p1 , Cmax (S2 ) = p2 . Summing, we obtain Cmax (S1 ) + Cmax (S2 ) = (a1 + a2 + a3 + a4 + a5 ) + (a4 + b4 ) + (b4 + b3 ) + c3 ≤ 4, therefore, Cmax (S1 ∧ S2 ) ≤ 2 (where S1 ∧ S2 denotes the shortest schedule among S1 and S2 ). This bound is attained for some critical instance which meets the following constraints: Cmax (S1 ) = a1 + a2 + a3 + a4 + b4 = 2; Cmax (S2 ) = a5 + a4 + b4 + b3 + c3 = 2; a1 + a2 + a3 + a4 + a5 = 1; a4 + b4 = 1; b4 + b3 = 1; c3 = 1. Solving this linear system, we obtain b4 = c3 = a1 + a2 + a5 = 1, while the remaining operations have zero length. For this critical instance, we can easily construct a schedule S with the makespan of 1. Our next step is to find a network G3 such that the schedule S corresponds to G3 and to the critical instance obtained. For this purpose, we can use a network Cyclic((3, 4, 5, 2, 1); (1, 2, 3)) Now we should consider 16 more subcases, since G3 contains 16 (non-trivial) complete paths. Consider, for example, a path p3 = a3 + a4 + a5 + b5 + b2 . Summing p2 and p3 , we obtain Cmax (S2 ) + Cmax (S3 ) = (a1 + a2 + a3 + a4 + a5 ) + (a4 + a3 ) + (b5 + b2 + b4 ) ≤ 3, therefore, in this case Cmax (S1 ∧ S2 ∧ S3 ) ≤ 32 . This improved bound is attained for the following instance: 1 1 b4 = a4 = a3 = c3 = b5 + b2 = , c1 + c2 + c5 ≤ , 2 2 other operations are of zero length. For this critical instance, we can also find a schedule with the unit makespan. It corresponds to a network G4 = Cyclic((5, 2, 1, 4, 3); (1, 2, 3)). Proceeding in this way, we have to consider 16 complete paths from G4 . Consider, for example, a path p4 = a5 + a2 + a1 + a4 + b4 . Summing p1 , p3 and p4 we obtain: Cmax (S1 )+Cmax (S3 )+Cmax (S4 ) = 2(a1 +a2 +a3 +a4 +a5 )+(b2 +b4 +b5 )+a4 ≤ 4, therefore Cmax (S1 ∧ . . . ∧ S4 ) ≤ 43 . Thus, this part of proof is completed, though we still have to consider other complete paths in G4 , then return to G3 and continue this tree-like process. Although finite, this process is too long to perform it manually. Let us show, how computer can perform this proof. Assume that complete paths in any network G are enumerated in some way, and let Pk (Gi) denote the k-th complete non-trivial path from a network Gi. Note that due to the symmetry of networks G1 and G2 , we only need to consider 136 combinations (Pi(G1 ), Pj (G2 )) with i ≤ j (since combinations (Pi(G1 ), Pj (G2 )) and

Computer-Aided Way to Prove Theorems in Scheduling

509

(Pj (G1 ), Pi(G2 )) can be transformed to each other by the reverse reordering of jobs). The program we used to prove Lemma 2 is an implementation of the following Algorithm A BEGIN Let G1 = Cyclic((1, 2, 3, 4, 5); (1, 2, 3)), G2 = Cyclic((5, 4, 3, 2, 1); (1, 2, 3)); FOR i := 1 TO 16 DO FOR j := i TO 16 DO BEGIN p1 := Pi(G1 ); p2 := Pj (G2 ); N := 2; paths := {p1 , p2 }; Prove(N , paths); END; WRITE(”Yes”) END. Prove is a recursive procedure which branches a proof starting with a current node of the tree of proof, specified by the set paths and the number N corresponding to a current depth of the tree. Procedure Prove(N , paths). Step 1. For N paths contained in paths calculate the best provable bound ρ. Find a critical instance I, for which ρ is attained. If ρ ≤ 43 then RETURN. Step 2. Find, if possible, a schedule S for I with the makespan not greater than 43 . If schedule S was not found, WRITE(”No”) and STOP. Build an improving network GN +1 corresponding to schedule S. Step 3. FOR k := 1 TO (number of paths in GN +1 ) DO BEGIN paths := paths ∪ {Pk (GN +1 )}; Prove(N + 1, paths); paths := paths \ {Pk (GN +1 )} END; Note that if Algorithm A has output the ”Yes” statement, this means that the claim of Lemma 2 is valid. Now a few words about the implementation of Steps 1 and 2 of procedure Prove. Let paths p1 , . . . , pN be an input of Prove. Each path pi is a linear combination of operations (aj , bj , cj , j = 1, . . . , 5) with coefficients λik belonging to {0, 1}. A problem described at Step 1 can be simulated by the following linear programming problem with 16 variables (aj , bj , cj , ρ): ρ → max

510

S.V. Sevastianov, I.D. Tchernykh

 l1 = a1 + a2 + a3 + a4 + a5 ≤ 1,     l2 = b1 + b2 + b3 + b4 + b5 ≤ 1,     l3 = c1 + c2 + c3 + c4 + c5 ≤ 1,     d1 = a1 + b1 + c1 ≤ 1,     ..  . d5 = a5 + b5 + c5 ≤ 1,     p1 = λ11 a1 + · · · + λ115 c5 ≥ ρ,     ..    .    pN = λN a1 + · · · + λN c5 ≥ ρ,  1 15   aj , bj , cj ≥ 0. Our program uses the simplex algorithm to solve this problem. An implementation of the procedure of searching for an improving network at Step 2 is made as follows. We have a reasonably limited number of networks used. In the beginning we used only cyclic networks, starting with G1 and G2 described above. At Step 2 the program searches through all networks known to it in order to find the best one for the current instance, i.e., a network minimizing the makespan of the corresponding schedule. In the case when the minimal makespan is greater ˜ the program gives the ”No” output, and this means that the above than 43 C, limitations on network classes are too strong, and we should add another class of networks to the program’s data bank. In fact, the case described occurred only once when the program found an instance with the following vectors of processing time: ( 12 , 0, 12 ), (0, 1, 0), ( 12 , 0, 12 ). It is easy to show that the makespan of any cyclic schedule for this instance is not lesser than 32 , while the optimum makespan is equal to 1. We added the second type of networks, shown in Fig. 1b. Thus, we used only two types of networks (and 2 · 3! · 5! = 1440 networks in all), and the successful run of the program showed that to prove Lemma 2, it is sufficient to use only these networks. Although it seems to be possible to reduce the running time by adding another proper network type. Being launched for the first successful time, the program output the ”Yes” statement after more than 200 hours of running time. (We were using IBM PCclone with 100MHz CPU speed). The implementation of Steps 1 and 2 took the largest part of time. After this first launch, a full Tree of Proof (i.e., the attributes of the networks found at Step 2) was saved. Now the second version of algorithm A (and also the second version of the program) has the following step instead of Steps 1,2: Step 1-2. Read the network GN corresponding to the current node (N , paths). If this node is ending (i.e., without successors) then calculate the bound for paths from paths and make sure that it is not greater than 43 , otherwise output the ”No” statement and STOP. (Actually, this ”STOP” event can never happen.) This version of the program runs considerably faster and can be verified by any meticulous reader. (The PASCAL code of this program can be found via Internet, URL: http://math.nsc.ru/LBRT/k4/seva.html.) The Tree of Proof saved gives us also an approach to fast search for a schedule ˜ Assume, we are S (for any instance with at most 5 jobs) with Cmax (S) ≤ 43 C.

Computer-Aided Way to Prove Theorems in Scheduling

511

given an instance I with at most 5 jobs. Build schedules S1 and S2 , corresponding to networks G1 and G2 . If Cmax (S1 ∧ S2 ) > 43 , choose the node (2, {p1, p2 }) from the Tree of Proof, where p1 and p2 are critical paths in G1 and G2 , respectively, corresponding to instance I. Read the corresponding network G3 and build the ˜ As the depth of the schedule S3 . Continue this process until Cmax (Si ) ≤ 43 C. tree does not exceed 10 (as turned out while running the program), this method is very effective. This completes the description of the proof of Lemma 2.

4

Optima Localization for the Assembly Line Problem

The assembly line problem can be formulated as follows. Let M, J , pji (A, B, C, aj , bj , cj in the case of three machines) have the same meaning as in Sect. 2. Operations of job Jj on machines M1 , . . . , Mm−1 can be processed simultaneously. An operation of Jj on machine Mm cannot start until all operations of this job on machines M1 , . . . , Mm−1 are finished. Any machine can process at most one operation in time. No preemption is allowed. The objective is to find a feasible schedule with minimal makespan. We will denote this problem as ALm||Cmax . For m = 2 this problem is equivalent to the classical Johnson problem and can be solved by Johnson’s algorithm ([6]). For m ≥ 3 it is N P -hard ([7]). We are presenting the result on optima localization for AL3||Cmax , similar to Theorem 1. Let li and dˆj denote the machine load and job length, correspondingly: n X li = pji ; dˆj = max pji + pjm ; j=1

i=1,...,m−1

lmax = max li ; dˆmax = max dˆj ; Cˆ = max{lmax , dˆmax}. ˆ therefore C ∗ ≥ C. ˆ We wish to For any schedule S, we have Cmax (S) ≥ C, max ∗ find the minimal function ρˆ(m) such that the inequality Cmax ≤ ρˆ(m)Cˆ holds for any ALm||Cmax problem instance. The following simple instance shows that 1 ρˆ(m) cannot be less than 2 − m . Consider m jobs with the following vectors of processing times: (1, . . . , 1), (m − 1, 0, . . . , 0, 1), . . . , (0, . . . , 0, m − 1, 1). For this ∗ instance we have Cˆ = m, whereas Cmax = 2m − 1. The following theorem shows that this bound on ρˆ(m) is tight for m = 3. Theorem 3.h For any i instance of AL3||Cmax problem, its optimum belongs to 5 ˆ ˆ the interval C, 3 C and the bounds of this interval are tight. Proof. Proof of this theorem is fully similar to that of Theorem 1. The tightness of the interval is evident from the existence of the instance described above; the remainder of the proof is straightforward from the following two lemmas: ∗ Lemma 3. For any number of machines m, the supremum ρ = sup Cmax /Cˆ over all instances of the ALm||Cmax problem is attained on an instance with at most 2m − 1 jobs.

512

S.V. Sevastianov, I.D. Tchernykh

Lemma 4. For any instance of the AL3||Cmax problem with 5 jobs, its optimum ∗ ˆ meets the bound Cmax ≤ 53 C. Proofs of these lemmas are analogous to those of Lemmas 1 and 2 and can be omitted. The computer-aided proof of Lemma 4 is more easy than that of Lemma 2, because it is shown in [7] that for ALm||Cmax problem an optimal schedule can be found among permutation ones. So, we had to use the only network type, shown in Fig. 2. t u

m m m m m m m m m m m m m m m

a1 - a2 - a3 - a4 - a5 A A A A A b1 A- b2 A- b3 A- b4 A- b5 A ZAU ZA ZA ZA QQ AA U s ~ Z ~ Z U A ~ Z ~ Z U A U A c1 - c2 - c3 -6 c4 - c5

Fig.2. The scheme of a permutation network for AL3||Cmax problem A practical application of this result is described in the following Theorem 4. h For iany AL3||Cmax problem instance a schedule S such that ˆ 5 Cˆ can be constructed in linear time. Cmax (S) ∈ C, t u 3

5

Concluding Remarks

1. We can summarize the approach applied in this paper for proving some properties of a shop scheduling problem as follows. First, we prove that we can perform a jobs number reduction preserving some ˜ or C, ˆ or pmax ) and leading to an instance with the limited parameters (say, C, number of jobs. Second, we prove with an aid of computer that the desired property (depending on the parameters preserved) holds for any instance with the limited number of jobs. To apply this approach in its constructive form (given an instance, we need to construct its schedule that meets a desired property), we do as follows. First, apply the jobs number reduction to a given instance, and next, construct the desired schedule for the resulting instance with a limited number of jobs. We are convinced that possible applications of the approach just outlined cannot be restricted to two scheduling problems considered in this paper. We would be glad to hear about other useful applications of this method. 2. Chen and Strusevich, being based on their result for O3||Cmax ([4]), formulated a conjecture that the makespan of any greedy schedule for Om||Cmax ˜ (2− 1 )C], ˜ and the bounds of this interval are problem belongs to the interval [C, m tight. (The unimprovability of the upper bound was substantiated by the existence of a simple instance.) For the time being, this conjecture is still unproved, it was just corroborated for the cases m = 2 and m = 3.

Computer-Aided Way to Prove Theorems in Scheduling

513

In order to make a stimulus for further investigation of the open shop problem, we are presenting a conjecture also corroborated yet for m ≤ 3, and a similar conjecture for the assembly line problem. Conjecture 1 For any instance of the Om||Cmax problem with an odd number ∗ ˜ ( 3 − 1 )C], ˜ and of machines m, its optimum Cmax belongs to the interval [C, 2 2m the bounds of the interval are tight. ∗ Conjecture 2 For any instance of the ALm||Cmax problem, its optimum Cmax ˆ (2 − 1 )C], ˆ and the bounds of the interval are tight. belongs to the interval [C, m Lower bounds are evident, whereas unimprovability of the upper bounds is shown in Sections 2 an 4, respectively. 3. To conclude the paper, we would like to put the most intriguing question: does there exist an analytical proof of Theorem 1 which needs no assistance of a computer?

6

Acknowledgments

We would like to thank our anonymous referee whose constructive remarks helped to eliminate some inaccuracy committed in the paper.

References 1. Appel, K., Haken, W.: Every planar map is four colorable. A.M.S. Contemporary Math. 98 (1989), 741 pp. 2. B´ ar´ any, I., Fiala, T.: Nearly optimum solution of multimachine scheduling problems. Szigma - Mat.-K¨ ozgaz-das´ agi Foly´ oirat, 15 (1982) 177–191. 3. Gonzalez, T., Sahni, S.: Open shop scheduling to minimize finish time. J. Assoc. Comput. Mach., 23 (1976) 665–679. 4. Chen, B., Strusevich, V.A.: Approximation algorithms for three-machine open shop scheduling. ORSA Journal on Computing, 5 (1993) 321–326. 5. Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G., Shmoys, D.B.: Sequencing and scheduling: algorithms and complexity. Handbooks in Operations Research and Management Science, Amsterdam, 1993, Vol. 4, 445–522. 6. Johnson, S.M.: Optima two- and three-stage production schedules with setup times included. Naval Res. Logist. Quart., 1 (1954), 61–68. 7. Potts, C.N., Sevast’janov, S.V., Strusevich, V.A., Van Wassenhove, L.N.,Zvaneveld, C.M.: The two-stage assembly scheduling problem: complexity and approximation. Oper. Res. 43 (1995) 346–355. 8. Sevastianov, S.V., Woeginger, G.J.: Makespan Minimization in Open Shops: a Polynomial Time Approximation. SFB-Report 68, Mai 1996, TU Graz, Austria. 9. Williamson, D.P., Hall, L.A., Hoogeveen, J.A., Hurkens, C.A.J., Lenstra, J.K., Sevastianov, S.V., Shmoys, D.B.: Short Shop Schedules. Oper.Res., 45 (1997), No.2, 288–294.

Suggest Documents