An improved approximation algorithm for two-machine flow shop scheduling with an availability constraint

Similar documents
A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint

HEURISTICS FOR TWO-MACHINE FLOWSHOP SCHEDULING WITH SETUP TIMES AND AN AVAILABILITY CONSTRAINT

STABILITY OF JOHNSON S SCHEDULE WITH LIMITED MACHINE AVAILABILITY

Heuristics for two-machine flowshop scheduling with setup times and an availability constraint

Complexity and Algorithms for Two-Stage Flexible Flowshop Scheduling with Availability Constraints

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling.

Scheduling for Parallel Dedicated Machines with a Single Server

Single Machine Scheduling with Job-Dependent Machine Deterioration

LPT rule: Whenever a machine becomes free for assignment, assign that job whose. processing time is the largest among those jobs not yet assigned.

Minimizing the total flow-time on a single machine with an unavailability period

Batch delivery scheduling with simple linear deterioration on a single machine 1

Complexity analysis of job-shop scheduling with deteriorating jobs

On Machine Dependency in Shop Scheduling

Research Article Minimizing the Number of Tardy Jobs on a Single Machine with an Availability Constraint

arxiv: v2 [cs.dm] 2 Mar 2017

1 Ordinary Load Balancing

Polynomial Time Algorithms for Minimum Energy Scheduling

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard

Optimal on-line algorithms for single-machine scheduling

Scheduling linear deteriorating jobs with an availability constraint on a single machine

4 Sequencing problem with heads and tails

Lecture 2: Scheduling on Parallel Machines

More Approximation Algorithms

HYBRID FLOW-SHOP WITH ADJUSTMENT

Embedded Systems 14. Overview of embedded systems design

On-line Scheduling of Two Parallel Machines. with a Single Server

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

Study of Scheduling Problems with Machine Availability Constraint

A Robust APTAS for the Classical Bin Packing Problem

Improved Bounds for Flow Shop Scheduling

Partial job order for solving the two-machine flow-shop minimum-length problem with uncertain processing times

The coordinated scheduling of steelmaking with multi-refining and tandem transportation

2.2 Some Consequences of the Completeness Axiom

page 1 Total ( )

Online Scheduling of Parallel Jobs on Two Machines is 2-Competitive

Approximation Algorithms for scheduling

MINIMIZING IDLE TIME OF CRITICAL MACHINE IN PERMUTATION FLOW ENVIRONMENT WITH WEIGHTED SCHEDULING

Heuristics Algorithms For Job Sequencing Problems

Single machine scheduling with forbidden start times

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

On bilevel machine scheduling problems

Single Machine Models

University of Twente. Faculty of Mathematical Sciences. Scheduling split-jobs on parallel machines. University for Technical and Social Sciences

Accepted Manuscript. An Approximation Algorithm for the Three-Machine Scheduling Problem with the Routes Given by the Same Partial Order

Single Machine Scheduling with a Non-renewable Financial Resource

No-Idle, No-Wait: When Shop Scheduling Meets Dominoes, Eulerian and Hamiltonian Paths

On-line Bin-Stretching. Yossi Azar y Oded Regev z. Abstract. We are given a sequence of items that can be packed into m unit size bins.

FH2(P 2,P2) hybrid flow shop scheduling with recirculation of jobs

Embedded Systems Development

immediately, without knowledge of the jobs that arrive later The jobs cannot be preempted, ie, once a job is scheduled (assigned to a machine), it can

The Power of Preemption on Unrelated Machines and Applications to Scheduling Orders

Parallel machine scheduling with batch delivery costs

Task Models and Scheduling

Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems

Scheduling Lecture 1: Scheduling on One Machine

A Framework for Scheduling with Online Availability

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas January 24, 2014

On Two Class-Constrained Versions of the Multiple Knapsack Problem

This means that we can assume each list ) is

Single Machine Problems Polynomial Cases

Research Article Batch Scheduling on Two-Machine Flowshop with Machine-Dependent Setup Times

Deterministic Models: Preliminaries

RCPSP Single Machine Problems

An FPTAS for parallel-machine scheduling under a grade of service provision to minimize makespan

Basic Scheduling Problems with Raw Material Constraints

SECURITIES AND EXCHANGE COMMISSION FORM 10-D. Filing Date: Period of Report: SEC Accession No

Andrew Morton University of Waterloo Canada

SUPPLY CHAIN SCHEDULING: ASSEMBLY SYSTEMS. Zhi-Long Chen. Nicholas G. Hall

Multiprocessor Scheduling of Age Constraint Processes

General Scheduling Model and

MINIMIZING TOTAL TARDINESS FOR SINGLE MACHINE SEQUENCING

Omega 38 (2010) Contents lists available at ScienceDirect. Omega. journal homepage:

Resource Management in Machine Scheduling Problems: A Survey

Flow Shop and Job Shop Models

A robust APTAS for the classical bin packing problem

Schedule Table Generation for Time-Triggered Mixed Criticality Systems

High Multiplicity Scheduling on One Machine with Forbidden Start and Completion Times

COSC 341: Lecture 25 Coping with NP-hardness (2)

A Note on Modeling Self-Suspending Time as Blocking Time in Real-Time Systems

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES

Polynomial time solutions for scheduling problems on a proportionate flowshop with two competing agents

CMSC 722, AI Planning. Planning and Scheduling

CO759: Algorithmic Game Theory Spring 2015

A pruning pattern list approach to the permutation flowshop scheduling problem

Scheduling in an Assembly-Type Production Chain with Batch Transfer

Preemptive Online Scheduling: Optimal Algorithms for All Speeds

Networked Embedded Systems WS 2016/17

Scheduling problems in master-slave model

A hybrid two-stage transportation and batch scheduling problem

Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Complexity analysis of the discrete sequential search problem with group activities

Review Solutions, Exam 2, Operations Research

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

EDF Feasibility and Hardware Accelerators

Chapter 1: Systems of Linear Equations

Polynomially solvable and NP-hard special cases for scheduling with heads and tails

Embedded Systems - FS 2018

Transcription:

An improved approximation algorithm for two-machine flow shop scheduling with an availability constraint J. Breit Department of Information and Technology Management, Saarland University, Saarbrcken, Germany March 2004 Abstract We study the problem of scheduling n jobs in a two-machine flow shop where the second machine is not available for processing during a given time interval. A resumable scenario is assumed, i.e if a job cannot be finished before the down period it is continued after the machine becomes available again. The objective is to minimize the makespan. The best fast approximation algorithm for this problem guarantees a relative worst-case error bound of 4/3. We present an improved algorithm with a relative worst-case error bound of 5/4. Keywords: Approximation algorithms; Flow shop scheduling; Worst-case analysis 1 Introduction In classical scheduling models machines are assumed to be available throughout the planning horizon. In many practical situations, however, this assumption is not justified. Consider e.g. cases where maintenance requirements, rest periods or machine breakdowns have to be taken into account. Therefore, problems with limited machine availability have received considerable attention from researchers in the past years. For recent surveys of this field see Sanlaville and Schmidt [8] and Schmidt [9]. In this paper we focus on the two-machine flow shop problem with limited machine availability. Flow shop problems with machine availability constraints are studied in many papers. While the classical two-machine flow shop problem is solved by Johnson s algorithm [4], Lee [6] proves the problem to be NP-hard, if an interval of non-availability (or hole, for short) occurs. He proposes a heuristic with a relative worst-case error bound of 3/2 for the case in which the hole occurs on the first machine. A second heuristic with a relative worst-case error bound of 4/3 is presented for the case with a hole on the second machine. Lee also proposes dynamic programming algorithms to solve the problems exactly. Cheng and Wang [3] provide an improved heuristic with a relative worst-case error bound of 4/3 for the case with a hole on the first machine. Problems with several holes have been studied by Cheng and Wang [2], B lažewicz et al. [1] and Kubiak et al. [5]. Our problem, denoted by Π, can be formally described as follows. We are given a set N of jobs to be processed on two machines A and B. A machine can process at most one job at a time. While machine A is continuously available for processing, machine B is not available during the time interval [s, t]. We define = t s. Each job J j N, j = 1,..., n, consists of two operations O Aj E-Mail: jb@itm.uni-sb.de 1

and O Bj to be performed on machines A and B, respectively. We denote by a j and b j the duration of operations O Aj and O Bj, respectively. Furthermore, we define a(q) = j Q {a j}, b(q) = j Q {b j} for a non-empty set Q of jobs, and a( ) = b( ) = 0. R ij (S) and F ij (S) denote the start and finish time of operation O ij, i {A, B}, j {1,..., n} in a schedule S. If schedule S is feasible we have R Bj (S) F Aj (S), j = 1,..., n. We will drop the reference to the schedule S whenever no confusion can arise. We assume that an operation can be suspended at any time and resumed later on without any penalty. Denote the makespan of a schedule S by C(S) = max j {F Bj }. An optimal schedule S has a minimal makespan of C. The remainder of this paper is organized as follows. In Section 2 we analyze the performance of the so-called ratio rule for the classical problem with continuously available machines. The results will be used in Section 3 where we turn to the problem with a hole on machine B. We state our approximation algorithm and analyze its worst-case behavior. Section 4 finally contains our conclusions. 2 Classical problem: analysis of the ratio rule In this section we consider the special case of our problem in which both machines are continuously available, i.e. we assume = 0. We apply the ratio rule which sequences the jobs in nondecreasing order of a j /b j. Without loss of generality we assume that the jobs are indexed such that a 1 b 1 a 2 b 2... a n b n (1) Call the schedule generated by the ratio rule S R. We assume that in schedule S R all operations are started as early as possible. Let J k be a critical job in schedule S R. We have F Ak (S R ) = R Bk (S R ) and a delay of operation O Ak as well as a delay of operation O Bk results in an increase of the makespan. We define the job sets N = {J j j k, a j b j } and N = {J j j k, a j > b j } and provide three obvious lower bounds on the minimal makespan, which are valid both for the classical problem and for the problem with the hole. C C c a(n) + a k + + b(n) (2) C C c b(n) (3) C C c a(n) (4) Here CC denotes the optimal makespan for the problem with continuously available machines. We want to prove the following theorem. Theorem 1. For the two-machine flow shop problem with continuously available machines the relative worst-case error bound of the ratio rule is given by and the bound is tight. C(S R )/C c 5/4 (5) Proof. Suppose in the following that (5) does not hold. It is shown in [6] that C(S R ) C c min{a k, }. Thus, we will assume that min{a k, } > C c /4 (6) 2

Case 1. a k. We define a subset X of job set N, X = {J j j > k, a j b j }, and have C(S R ) = a(n\x) + a k + + b(x) + b(n) (7) Note that set X exists, for otherwise schedule S R is optimal due to (2). Subtracting (2) from (7) we obtain the condition b(x) a(x) > Cc /4 (8) Using inequality (1) we derive that Inserting the right hand side of (9) into (8) gives us a(x) b(x) ak (9) b(x) (1 a k ) > C c /4 b(x) = where α > 0 is a slack variable. Using (6) we have C c /4 (1 a k ) + α (10) a k = ak > C c /4 = C c /4 a k + β (11) where β > 0 is a slack variable. Inserting (10) and (11) into (3) we obtain All feasible values for the ratio a k [ Cc /4 1 a k + C a k ] c /4 + α + β Cc (12) are in the interval ] 1 3, 1[. It can be verified that for a k = 1 2 the term in brackets in inequality (12) reaches a minimum value of C c. Thus, inequality (12) cannot be satisfied. Case 2. a k > This case is symmetrical to the first case. It follows that bound (5) holds. In order to show that the bound is tight we consider the following example (see Figure 1). There are n + 1 jobs. The processing times are a j = k/n and b j = 2k/n for j = 1,..., n and a n+1 = k, b n+1 = 2k, where k n. The ratio rule may generate a sequence (J n+1, J 1,..., J n ) with a makespan of 5k. However, in an optimal sequence job J n+1 must take the last position and we have Cc = k n + 4k. For k n 0 the relative error approaches 5/4. 3 Problem with an availability constraint We now turn to the case in which machine B is not available in the time interval [s, t] and state our approximation algorithm. 3

Figure 1: Worst-case example Algorithm H. 1. Sequence the jobs according to Johnson s rule and call the resulting schedule S 1. 2. Apply the ratio rule and call the resulting schedule S R. Denote by J k the job which starts the last busy period on machine B in schedule S R. 3. Determine job J l with b l = max j {b j j k}. Solve the problem of scheduling only jobs J k and J l optimally and denote the optimal makespan of this problem by Ckl. Schedule the remaining jobs in an arbitrary order after jobs J k and J l. Process these jobs on machine A (B) without idle time starting at time a l + a k (max{t, a(n), Ckl }). Call the resulting schedule S 3. 4. Maintain all jobs in the same order they appear in schedule S R with the exception of job J k. Job J k is shifted as far as possible to the right such that it is the first job started on machine B not earlier than time t while all jobs preceding job J k are started before time s on machine B. Call the resulting schedule S 4. 5. Sequence the jobs in the order (N, J k, N). The jobs of sets N and N, respectively, are sequenced in an arbitrary order and as a block on both machines. Processing on machine A starts at time 0, the machine is never idle until time a(n). On machine B job set N is started at time a(n), job J k is started as early as possible and job set N is started at time max{a(n), F Bk }. Call the resulting schedule S 5. 6. Let C(S H ) = min{c(s 1 ), C(S R ), C(S 3 ), C(S 4 ), C(S 5 )}. It is clear that algorithm H can be executed in O(n log n) time. Our aim is to prove the following theorem. Theorem 2. For the two-machine flow shop problem with a hole on machine B the relative worst-case error bound of algorithm H is given by C(S H )/C 5/4 (13) 4

Figure 2: Two shapes of schedule S R. Proof. We analyze algorithm H step by step. Step 1. It is clear that Johnson s schedule is optimal if C(S 1 ) s. Thus, we may assume that C(S 1 ) > t and C > t. Lower bound (3) can then be modified to the following C b(n) + (14) It also follows from the optimality of Johnson s rule for the classical problem without availability constraint that bound (13) holds for C /4 and s C /4 (see [6]). Thus, we assume in the following > C /4 (15) s > C /4 (16) Step 2. Suppose that F Ak (S R ) = R Bk (S R ) t. Then, obviously, the ratio rule generates the same makespan for the problems with and without availability constraint. As the minimal makespan for the problem with the hole cannot be smaller than the minimal makespan for the classical problem without an availability constraint, using (5) we have that bound (13) holds. In the remainder of the paper we assume that one of the following two conditions holds (see Figure 2). F Ak (S R ) = R Bk (S R ) < s (17) Following [6] we may assume that s F Ak (S R ) < R Bk (S R ) = t (18) min{a k, } > C /4 (19) Otherwise bound (13) holds for S H = S R. Suppose there exists an optimal schedule S with R Bk (S ) < s. Then we can modify the lower bound (2) of Section 2 to C a(n) + a k + + + b(n). Let N j<k (N j>k ) denote the set of jobs scheduled before (after) job J k in schedule S R. Under conditions (17) and (18) we have C(S R ) a(n j<k ) + a k + + + b(n j>k ) If N j<k = N and N j>k = N then schedule S R is clearly optimal. Thus, we are in a situation as in the proof of Theorem 1. For a k there exists a subset X of job set N, as defined in Section 2, 5

and we have C(S R ) a(n\x) + a k + + + b(x) + b(n) (20) Following almost exactly the proof of Theorem 1 we can show that bound (13) holds. The case where a k > is again symmetrical. We omit the details and assume in the rest of the paper that in any optimal schedule S we have R Bk (S ) t (21) Then we have and, using (19) and (15), C t + (22) s < C /2 (23) Step 3. This step deals with the case in which there is a second big operation on machine B besides operation O Bk. Suppose that b l > C /4. Then, it follows from (19), (15) and (14) that b(n\{j l, J k }) < C /4. Because C max{t, a(n), C kl } we have C(S 3) = max{t, a(n), C kl }+b(n\{j l, J k }) < 5C /4. Thus, for the analysis of steps 4 and 5 we may assume that b j C /4, j k (24) Step 4. We distinguish between several cases. (a) Suppose there exists idle time on machine B in schedule S 4 after the completion of operation O Bk. Then there exists a job J v after job J k with F Av = R Bv. We have C(S 4 ) = R Bv (S 4 ) + b v + b(n j>v ) where N j>v denotes the set of jobs following job J v. Let N denote the set of jobs completed on machine A at time R Bv (S 4 ) or later in an optimal schedule. Clearly, we have C R Bv (S 4 )+b( N) and thus C(S 4 ) C b v + b(n j>v ) b( N). Because a(n j>v ) a( N) and the jobs following job J k in schedule S 4 are ordered according to nondecreasing ratio a j /b j we have b(n j>v ) b( N), and so we obtain C(S 4 ) C b v. Using (24) it follows that bound (13) holds. In the following we may assume that in schedule S 4 there exists no idle time on machine B after time R Bk (S 4 ). (b) We first investigate the case where R Bk (S 4 ) = t. Let J u be the job immediately following J k. From (24) it is clear that b u < C /4. Denote by N j<k (N j>u ) the set of jobs preceding (succeeding) job J k (J u ) in schedule S 4. We have C(S 4 ) = s b(n j<k ) + + b(n) (25) We suppose that s b(n j<k ) > C /4 for otherwise bound (13) obviously holds due to (14). Consider now a problem Π which is derived from our problem Π as follows. Firstly, in problem Π we set a k = 0. Secondly, in problem Π we allow R Bu < F Au, if operation O Au is completed by time α = a(n j<k ) + a u. Notice that α s, for otherwise job J u would precede job J k in schedule S 4. For both problems Π and Π we restrict attention to the case where operations O Bk must be started after the hole. Then, it is not difficult to see that the optimal makespan for problem Π cannot exceed the optimal makespan for our original problem, i.e. C (Π ) C (Π). We now construct a (possibly infeasible) schedule S 4 for problem Π. The schedule for machine A is the same as in schedule S 4 with the exception that operation O Ak is removed and all following operations are shifted to the left by a k time units. The schedule for machine B is as follows. Operation 6

O Bu is started at time 0. Then the jobs of set N j<k are processed in the same order as they appear in schedule S 4, not leaving machine B idle, unless no job is available for processing. Notice that all jobs of set {N j<k, J u } can be completed before the hole. After the hole operation O Bk and the jobs of set N j>u are processed in the same order as they appear in schedule S 4 without any idle time. We have C(S 4 ) = s b(n j<k) b u + + b(n) (26) Denote by Z the set of jobs completed on machine B by time s in an optimal schedule for problem Π. Suppose that b(z) > b(n j<k ) + b u. Because the job sequence for machine A in schedule S 4 is chosen according to nondecreasing a j /b j this implies that a(z) > α > s. Then, however, no matter whether F Au α or F Au > α, at least one job in Z must complete after the hole on machine B, a contradiction. It follows that C(S 4) C (Π ) C (Π). Subtracting (26) from (25) we have C(S 4 ) C (Π) C(S 4 ) C (Π ) C(S 4 ) C(S 4) = b u < C /4 (c) Now we suppose R Bk (S 4 ) > t. There are two cases. In the first case there exists a critical job, say job J v, before job J k. In the second case job J k itself is critical. We start with the first case. (c1) F Av (S 4 ) = R Bv (S 4 ) < s. Machine B is not idle after time R Bv (S 4 ). Denote by N j<v (N j>v ) the set of jobs scheduled before (after) job J v in schedule S 4. We have C(S 4 ) = a(n j<v ) + a v b(n j<v ) + + b(n) (27) Let I be the amount of idle time on machine B before time R Bv (S 4 ) in an optimal solution. We have C I + + b(n). Only jobs completed on machine A before time R Bv (S 4 ) can reduce the value of I. Clearly, under condition (21) there is no advantage in scheduling operation O Ak to start earlier than time R Bv (S 4 ) in order to reduce the value of I. Thus, as the jobs in schedule S 4 are sequenced according to nondecreasing values a j /b j it follows that I a(n j<v ) + a v b(n j<v ) b v, and we obtain C a(n j<v ) + a v b(n j<v ) b v + b(n) + (28) Subtracting (28) from (27) gives us C(S 4 ) C b v C /4. (c2) Job J k is critical in schedule S 4. In this case we have C(S 4 ) = a(n j<k ) + a k b(n j<k ) + b(n) (29) Note that R Ak (S 4 ) s. We can use a similar argument as above to show that in an optimal schedule the idle time up to time a(n j<k ) on machine B cannot be less than a(n j<k ) b(n j<k ). Thus, we have C a(n j<k ) b(n j<k ) + + b(n) (30) Subtracting (30) from (29) we get C(S 4 ) C a k. If a k C /2 then bound (13) holds for S H = S 4 due to (15). For the analysis of step 5 of algorithm H we therefore suppose that a k > C /2 (31) 7

Step 5. Using (2) we obtain that max{a(n), b(n)} C /4. Suppose that in schedule S 5 there exists idle time on machine B between operation O Bk and the block of operations of job set N. Then we have C(S 5 ) = a(n) + b(n) 5C /4. Thus, we assume that there is no idle time on machine B after time R Bk. Suppose now that machine B is busy from time a(n) on. Using (16) we have C(S 5 ) = a(n) + + b(n) 5C /4. Finally, suppose that there exists idle time on machine B after the last job of set N has been completed and before the start of operation O Bk. From (23) and (31) it follows that either F Ak (S 5 ) = R Bk (S 5 ) > t or F Ak (S 5 ) < t = R Bk (S 5 ) holds. In the first case the lower bound (2) is met and we have an optimal schedule. In the second case we have C(S 5 ) = t + + b(n) 5C /4, using (22). This completes the proof. 4 Conclusions In this paper we studied the two-machine flow shop problem with an availability constraint imposed on the second machine. A fast approximation algorithm with a relative worst-case error bound of 5/4 was presented which improves an earlier result by Lee. For future research it is interesting to develop a good heuristic for the non-preemptive case of this problem. References [1] J. B lažewicz, J. Breit, P. Formanowicz, W. Kubiak, G. Schmidt, Heuristic algorithms for the two-machine flowshop with limited machine availability, Omega 29 (2001) 599 608 [2] T.C.E. Cheng, G. Wang, Two-machine flowshop scheduling with consecutive availability constraints, Inf. Proc. Lett.71 (1999) 49 54 [3] T.C.E. Cheng, G. Wang, An improved heuristic for two-machine flowshop scheduling with an availability constraint, Oper. Res. Lett. 26 (2000) 223 229 [4] S. M. Johnson, Optimal two- and three-stage production schedules with setup times included, Nav. Res. Log. Quarterly 1 (1954) 61 68 [5] W. Kubiak, J. B lažewicz, P. Formanowicz, J. Breit, G. Schmidt, Two-machine flow shops with limited machine availability, Eur. J. Oper. Res. 136 (2002) 528 540 [6] C.-Y. Lee, Minimizing the makespan in the two-machine flowshop scheduling problem with an availability constraint, Oper. Res. Lett. 20 (1997) 129 139 [7] C.-Y. Lee, Two-machine flowshop scheduling with availability constraints, Eur. J. Oper. Res. 114 (1999) 420 429 [8] E. Sanlaville, G. Schmidt, Machine scheduling with availability constraints, Acta Inform. 35 (1998) 795 811 [9] G. Schmidt, Scheduling with limited machine availability, Eur. J. Oper. Res. 121 (2000) 1 15 8