all minimal and maximal open single machine scheduling problems are polynomially solvable

112
All Minimal and Maximal Open Single Machine Scheduling Problems are Polynomially Solvable Harmen W. Bouma 1345982 April 8, 2009

Upload: ssa-kpi

Post on 23-Jan-2015

1.550 views

Category:

Education


4 download

DESCRIPTION

AACIMP 2009 Summer School lecture by Boris Goldengorin. "Logistics" course. 3rd - 4th hour. Part 4.

TRANSCRIPT

Page 1: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

All Minimal and Maximal Open Single Machine

Scheduling Problems are Polynomially Solvable

Harmen W. Bouma1345982

April 8, 2009

Page 2: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Master’s Thesis Operations Research

Supervisor: Prof. Sc.D. B. Goldengorin

Co-assessor: Prof. dr. G. Sierksma

Page 3: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

All Minimal and Maximal Open Single MachineScheduling Problems are Polynomially Solvable

H.W. Bouma

Abstract

In this thesis, Boolean Linear Programming (BLP) models are presented forthree single machine scheduling problems with equal-length jobs and differentrelease dates, and it is proven that they are polynomially solvable. The objec-tive of the first problem, in which preemption is allowed, is to minimize thetotal weighted completion time. The objective of the other two problems is tominimize the total weighted tardiness. The second problem is preemptive, thethird is not. To this date, the complexity status of these problems has remainedopen. The open complexity status was mentioned by Labetoulle et al. [21] in1984.

The BLP models are based on the Assignment Problem formulation, whichis a well-known polynomially solvable problem in combinatorial optimization.The Assignment Problem can be used to solve many problems, including forexample the single machine scheduling problems in which the total weightedtardiness is minimized and in which all jobs have unit processing times anddifferent release dates. In order to solve the three problems mentioned aboveonly preoptimized permutations are incorporated into the Assignment Problemformulation. The proof that the problems are polynomially solvable is based onthe notion of Total Dual Integrality.Keywords: (Non-)preemptive scheduling; Equal-length jobs; Release dates; Weightedcompletion time; Weighted tardiness; Total dual integrality.

Page 4: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 5: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Preface

Since the fifties of the twentieth century Scheduling Theory has been a popularresearch area. In the early years pioneers came up with algorithms to solvesimple job scheduling problems. In the years that followed, many algorithmsand heuristics were found to solve both basic and more complicated problems.Nowadays, the complexity status of many basic scheduling problems is known,although there are still some problems with an open complexity status.

In this thesis I will show that three of these open problems are polynomiallysolvable. Two of the problems are about finding a preemptive schedule in asingle machine setting where the jobs have equal processing times and differentrelease dates. The objectives are to minimize the total weighted completiontime and the total weighted tardiness, respectively. The third problem is thenon-preemptive version of the total weighted tardiness problem. All problemswill be modeled as Assignment Problems with side constraints.

The thesis is organized as follows. In Chapter 1 an overview of single ma-chine scheduling problems is given and some basic concepts of computationalcomplexity and Integer Linear Programming are discussed. In Chapter 2 theproblems are defined and an informal description of 1|pmtn; pj = 2; rj |

∑wjCj

is presented which motivates the use of the Assignment Problem formulation.A similar approach is used for the other open problems. Chapter 3 containsa discussion of problems that are modeled as a variation on the AssignmentProblem as well. In Chapter 4, the Boolean Linear Programming (BLP) modelfor the problem 1|pmtn; pj = 2; rj |

∑wjCj is given and it is proven that the

corresponding system of equations is Totally Dual Integral. This implies thatthe problem is polynomially solvable. In Chapter 5 these results are generalizedto the case pj = p. In Chapter 6 the BLP models are presented for the totalweighted tardiness scheduling problems and it is proven that they are also poly-nomially solvable. In Chapter 7 some computational results are presented andChapter 8 contains recommendations for future research and a short summary.

I wish to thank my supervisor Prof. Sc.D. B. Goldengorin for giving me theopportunity to do this research. He advanced the idea of solving the problemby a model based on the Assignment Problem. I would like to thank him forhis support and advice he provided me with during my research. Furthermore,I would like to thank Prof. dr. G. Sierksma, who was willing to be co-assessorof this research project, and Guido Diepen of Paragon Decision Technology forhis technical support with AIMMS.

Groningen,

Harmen Bouma

Page 6: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 7: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Contents

1 Introduction 131.1 Single Machine Scheduling Problems . . . . . . . . . . . . . . . . 141.2 Computational Complexity . . . . . . . . . . . . . . . . . . . . . 161.3 Overview of Complexity Status of Single Machine Scheduling

Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181.3.1 Open Problems . . . . . . . . . . . . . . . . . . . . . . . . 201.3.2 Related Problems . . . . . . . . . . . . . . . . . . . . . . . 21

1.4 Linear and Integer Programming . . . . . . . . . . . . . . . . . . 231.4.1 Total Unimodularity and Total Dual Integrality . . . . . . 24

2 Problem Formulation 272.1 Minimizing the Total Weighted Completion Time . . . . . . . . . 27

2.1.1 The Assignment Model . . . . . . . . . . . . . . . . . . . 282.2 Minimizing the Total Weighted Tardiness . . . . . . . . . . . . . 31

2.2.1 The Preemptive Problem . . . . . . . . . . . . . . . . . . 312.2.2 The Non-Preemptive Problem . . . . . . . . . . . . . . . . 32

2.3 Outline of the Proof . . . . . . . . . . . . . . . . . . . . . . . . . 33

3 Variations on the Assignment Problem 353.1 Finding Subdigraphs with Prescribed Degrees . . . . . . . . . . . 353.2 A Polynomial Solvable Case of the Axial Three-Dimensional As-

signment Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.3 The Imbalanced Time Minimizing Assignment Problem . . . . . 383.4 Resource-Constrained Assignment Scheduling . . . . . . . . . . . 38

4 Minimizing the Total Weighted Completion Time when p = 2 414.1 The Number of Time Intervals between the First and Second Part

of a Job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.2 The Primal Model . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.2.1 BLP Model . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2.2 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444.2.3 Integer and LP Relaxations . . . . . . . . . . . . . . . . . 444.2.4 Total Unimodularity . . . . . . . . . . . . . . . . . . . . . 45

4.3 The Dual Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 464.3.1 Model Formulation . . . . . . . . . . . . . . . . . . . . . . 464.3.2 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

4.4 Total Dual Integrality . . . . . . . . . . . . . . . . . . . . . . . . 494.4.1 Integrality of Solutions to the Dual Problem . . . . . . . . 50

7

Page 8: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

4.4.2 A Polynomial Time Algorithm . . . . . . . . . . . . . . . 534.5 Optimality Conditions . . . . . . . . . . . . . . . . . . . . . . . . 57

4.5.1 Complementary Slackness . . . . . . . . . . . . . . . . . . 574.5.2 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584.5.3 Optimality Conditions . . . . . . . . . . . . . . . . . . . . 59

5 Minimizing the Total Weighted Completion Time when pj = p 635.1 The Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635.2 Computational Complexity . . . . . . . . . . . . . . . . . . . . . 65

5.2.1 A Polynomial Time Algorithm . . . . . . . . . . . . . . . 655.3 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

6 Minimizing the Total Weighted Tardiness 696.1 The Preemptive Case . . . . . . . . . . . . . . . . . . . . . . . . . 69

6.1.1 Computational Complexity . . . . . . . . . . . . . . . . . 706.1.2 A Polynomial Time Algorithm . . . . . . . . . . . . . . . 706.1.3 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

6.2 The Non-Preemptive Case . . . . . . . . . . . . . . . . . . . . . . 716.2.1 The Model . . . . . . . . . . . . . . . . . . . . . . . . . . 726.2.2 Computational Complexity . . . . . . . . . . . . . . . . . 736.2.3 A Polynomial Time Algorithm . . . . . . . . . . . . . . . 736.2.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

7 Computational Results 75

8 Summary and Concluding Remarks 81

A Complexity Results for Single Machine Problems 85

B Proofs from Chapters 5 and 6 87B.1 The Dual Model of Chapter 5 . . . . . . . . . . . . . . . . . . . . 87

B.1.1 Integrality of the Dual Optimal Solution . . . . . . . . . . 89B.2 The Dual Model of Section 6.2 . . . . . . . . . . . . . . . . . . . 92

B.2.1 Total Dual Integrality . . . . . . . . . . . . . . . . . . . . 93

C Instances used for Computational Results 97

D List of Symbols and Abbreviations 103

8

Page 9: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

List of Figures

1.1 The EDD and optimal schedule for an instance of 1|rj |Lmax. . . 191.2 The preemptive WSPT and the optimal schedule for an instance

of 1|pmtn; rj |∑

wjCj . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.1 Graphical representation of a special case of the three-dimensionalassignment model. . . . . . . . . . . . . . . . . . . . . . . . . . . 37

3.2 Graphical representation of the multidimensional assignment prob-lem for 1|pmtn; pj = 2; rj |

∑wjCj with n = 3. . . . . . . . . . . 37

4.1 Schedule S1, where d ∈ {2, 4, 6, . . .}, 0 < λ < 1 . . . . . . . . . . . 554.2 Schedule S2, where d1, d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1. . . . . . . . . 554.3 Schedule S3, where d1, d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1. . . . . . . . . 564.4 Schedule S4, where d1, d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1. . . . . . . . . 564.5 Schedule S5, where d1 ∈ {2, 4, 6, . . .}, d2, d3 ∈ {3, 5, 7, . . .}, d2 >

d1, d3 > d2, 0 < λ < 1. . . . . . . . . . . . . . . . . . . . . . . . . 564.6 Schedule S6, d1 ∈ {2, 4, 6, . . .}, d2, d3 ∈ {3, 5, 7, . . .}, d2 > d1,

d3 > d2, 0 < λ < 1. . . . . . . . . . . . . . . . . . . . . . . . . . . 57

7.1 The differences in terms of percentages between the optimal val-ues of the problems 1|pmtn; pj = p; rj |

∑wjCj and 1|pj = p; rj |

∑wjCj . 78

7.2 The differences in terms of percentages between the optimal val-ues of the problems 1|pmtn; pj = p; rj |

∑wjTj and 1|pj = p; rj |

∑wjTj . 79

9

Page 10: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 11: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

List of Tables

1.1 Overview of complexity results of problems that are related tothe open problems that are solved in this thesis. . . . . . . . . . 26

2.1 The cost matrix W , representing the costs of assigning job partsto time intervals. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2.2 The cost matrix W , representing the costs of assigning job partsto time intervals when

∑wjTj is the objective. . . . . . . . . . . 32

4.1 The way in which dual variables p, q and s correspond to therows and columns of the cost matrix W . . . . . . . . . . . . . . . 48

4.2 Cost matrix W adjusted by the dual variables. . . . . . . . . . . 49

7.1 CPU time in seconds and optimal solutions for the problem 1|pmtn; pj =p; rj |

∑wjCj , for p = 2. . . . . . . . . . . . . . . . . . . . . . . . 75

7.2 CPU time in seconds and optimal solutions for the problem 1|pmtn; pj =p; rj |

∑wjCj , with p = 3 and p = 4. . . . . . . . . . . . . . . . . 76

7.3 CPU time in seconds and optimal solutions 1|pmtn; pj = p; rj |∑

wjTj ,for p = 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

7.4 CPU time in seconds and optimal solutions for the problem 1|pmtn; pj =p; rj |

∑wjTj , with p = 3 and p = 4. . . . . . . . . . . . . . . . . 77

7.5 CPU time in seconds and optimal solutions 1|pj = p; rj |∑

wjTj ,for p = 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

7.6 CPU time in seconds and optimal solutions for the problem 1|pj =p; rj |

∑wjTj , with p = 3 and p = 4. . . . . . . . . . . . . . . . . 78

7.7 Optimal solutions for the problem 1|pj = p; rj |∑

wjCj . . . . . . 78

8.1 The problems that are solved in this thesis and problems that areclosely related to them. . . . . . . . . . . . . . . . . . . . . . . . 83

C.1 Instances with 20 jobs and p = 2. . . . . . . . . . . . . . . . . . . 97C.2 Instances with 50 jobs and p = 2. . . . . . . . . . . . . . . . . . . 98C.3 Instances with 100 jobs and p = 2. . . . . . . . . . . . . . . . . . 99C.4 Instances with 50 jobs and p = 3. . . . . . . . . . . . . . . . . . . 100C.5 Instances with 30 jobs and p = 4. . . . . . . . . . . . . . . . . . . 101

11

Page 12: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 13: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 1

Introduction

In many manufacturing and service industries planning and scheduling belongto the day-to-day activities. Whether it is about a copy shop holder who needsto determine which order to print first, or the type of aircraft that should beassigned to a particular flight, the decisions made can substantially affect theefficiency or profitability of a company.

Consider for example a copy shop holder, who serves several business clients.Some orders are urgent, while others are not. A report that is just finished andshould be presented the following morning has higher priority for a firm thanthe quarterly staff magazine. The urgency of an order is given by the differencebetween the deadline of an order and the point in time at which the order actu-ally comes in at the copy shop. This is the so-called time window. Furthermore,each order has a different processing time, depending on its size, its quality etc.Last but not least, each order has a certain weight. When the copy shop holderdoes not meet a deadline, the client receives a discount based on the amountof delay and the weight of the order. Naturally, urgent and large orders havehigher weights than low priority and small jobs. Given all orders, the copy shopholder would like to determine the printing schedule such that the total amountof discount is as small as possible.

Now consider the airline company. It needs to assign airplanes to flights suchthat none of the flights is canceled. The cost of assigning a certain type of air-craft to a particular flight is known in advance. Each flight is characterized bya departure and arrival time and by the expected number of passengers. Eachairplane has a certain capacity. Obviously, it is desirable that an airplane hassufficient capacity to carry all passengers, since otherwise a certain amount ofrevenue is missed. On the other hand, when there is overcapacity the revenuesmay not be sufficient to cover the flight’s costs. Given the departure and ar-rival time, the cost of a flight, the expected number of passengers per flight andthe revenue per passenger, the airline is interested in assigning its airplanes toflights such that total profits are maximized.

These examples show that scheduling problems arise frequently in prac-tice and often involve the core business of a company. Therefore, considerableamounts of attention have been paid to scheduling techniques in literature for

13

Page 14: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

over fifty years. Pinedo [28] defines scheduling as the allocation of limited re-sources to activities that have to be done over time. This allocation needs tobe such that a company optimizes its objectives and achieves its goals. In theexamples stated above, the photocopiers in the copy shop and the fleet of theairline company are the resources. The activities are the orders and the flights.The objectives are to minimize the total amount of discount and to maximizeprofits, respectively.

Scheduling techniques rely heavily on mathematical models, exact algo-rithms and heuristics. For many problems efficient algorithms have been foundto solve the problems to optimality. However, there are still many problemsthat have not been solved yet. In this thesis suitable models for three of theseunsolved scheduling problems will be presented. In Chapter 2 the problem isformulated and in Chapter 3 some background information is given about themodeling techniques that are used in Chapters 4 to 6. In the remainder of theIntroduction an overview of scheduling problems is given in which only one typeof resource is involved, the so-called single machine models. Furthermore, theconcept of computational complexity and the mathematical techniques that areused in this thesis are shortly discussed.

1.1 Single Machine Scheduling Problems

Most of the scheduling problems that were solved during the fifties of the twen-tieth century involved only one machine. Although single machine problems donot arise frequently in practice, a study of them is valuable for two reasons.Firstly, the solution methods for single machine models provide insights intosolution techniques that could be used in more complex situations with sev-eral machines. Secondly, in many production settings there is one stage thatis crucial for the overall performance of a schedule. This stage is called thebottleneck. Optimizing the schedule for the bottleneck, which could well be asingle machine, then optimizes the schedule for the entire problem (Chen, Pottsand Woeginger [11]).

In a single machine model there is a certain resource which is generallyreferred to as a ‘machine’. This resource is needed to fulfill a number of tasks,usually called ‘jobs’. The machine can only handle one job at a time. Each jobmay have different characteristics, such as the time that is needed to completea job or the point in time at which a job becomes available for processing.Finally, there is an objective that has to be optimized. For example, one mightbe interested in minimizing the total number of tardy jobs, or the point in timeat which all jobs are completed.

Most types of scheduling problems can be described by a triple α|β|γ which iswidely used in the literature and was introduced by Graham et al. [17]. Here, αdescribes the machine environment, β the job characteristics and γ the objectivecriterion to be minimized. Hence, for single machine models it follows thatα = 1. An overview of several job characteristics and objective criteria is givenbelow. It should be noted that this overview is not exhaustive. However, it issufficient to define most basic scheduling problems.

14

Page 15: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Job Characteristics. Assume that there are n jobs to be scheduled and letthe subscript j refer to a particular job. Examples of job characteristics are:

Processing time (pj). The time that is needed to fully process job j.

Release date (rj). The time at which job j becomes available for processing.

Due date (dj). The time at which job j is committed to be completed. Whenthis due date is not met, a penalty is incurred. When the due date mustbe met at all costs, it can replaced by a (strict) deadline Dj .

Weight (wj). The weight of a job, which is a priority factor. It reflects theimportance of job j relative to other jobs.

Preemption (pmtn). When preemption is allowed, a job can be removed froma machine before it is fully processed. At a later stage it can then beresumed. In case of preemption, processing that has already been done isnot lost.

Precedence constraints (prec). When a job cannot be processed before an-other job is completed, the problem is subject to so-called precedenceconstraints. Precedence constraints can be depicted by acyclic graphs,where each node is a job and each arc a precedence constraint. Whenthe graph consists of chains, prec is replaced by chains in the β-field.Similarly, when the precedence constraints can be represented by a series-parallel graph, prec is replaced by sp-graph.

It should be noted that pj only appears in the β-field when pj = p, i.e.,when all processing times are equal. In general, wj and dj do not appear at allin the β-field since it is clear from the objective whether there are weights anddue dates. This is not the case for strict deadlines Dj . Note that it could wellbe that the β-field is empty.

Objective Criteria. Let the time at which job j is finished be denoted byCj , the completion time of job j. Define the lateness Lj and the tardiness Tj ofjob j as follows:

Lj = Cj − dj ,

Tj = max{Cj − dj , 0}.

The lateness of job j indicates the amount of time that a job is delayed. Notethat a negative value implies that a job is early. The tardiness indicates theamount of delay of a job, and is zero when a job is early or exactly in time.

Furthermore, let

Uj ={

1 if Cj > dj

0 otherwise.

When job j is delayed Uj is one, otherwise it is zero. This criterion can beused to count the number of tardy jobs. However, the amount of delay is notexpressed by it.

The objective criteria can now be given by:

15

Page 16: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Makespan (Cmax = maxj Cj). The makespan is the maximum completiontime, or the time at which all jobs are processed. When the makespan isminimized, the schedule tends to finish processing as early as possible.

Total completion time (∑

j Cj). This objective sums the completion time ofall jobs. Minimizing the total completion time can be used as a surrogatefor minimizing the total Work-In-Process, since it tends to finish each jobas quickly as possible.

Total weighted completion time (∑

j wjCj). This objective sums the completiontime of all jobs, after they have been adjusted for their weights. Whentotal weighted completion time is minimized it becomes advantageous tofinish jobs with high weights early relative to jobs with low weights. Thetotal weighted completion time can be used to minimize the total value ofthe Work-In-Process.

Maximum lateness (Lmax = maxj Lj). The maximum lateness records thelargest delay in a schedule. The maximum lateness objective minimizesin a way the worst performance of a schedule, since all delays are kept assmall as possible.

Total number of tardy jobs (∑

j Uj). This objective counts the number of tardyjobs. Minimizing the number of tardy jobs can be used to maximize thepercentage of on-time deliveries.

Total weighted number of tardy jobs (∑

j wjUj). This objective counts the cu-mulative weight of all tardy jobs. This objective can be used to maximizethe percentage of on-time deliveries adjusted for their weights.

Total tardiness (∑

j Tj). The total tardiness criterion sums all delays. Minimiz-ing the total tardiness may be preferable to minimizing the total numberof tardy jobs. When the total number of tardy jobs is minimized, somejobs may get seriously delayed in order to keep the number of tardy jobslow. This in turn may lead to unacceptable situations in practice and doesnot occur when the total tardiness objective is used.

Total weighted tardiness (∑

j wjTj). The total weighted tardiness sums thetotal amount of tardiness adjusted for the weights of the jobs. It can beused when some delays are more expensive than other delays.

1.2 Computational Complexity

One of the most important questions in scheduling theory concerns the complex-ity status of a problem. The complexity status roughly describes the relation-ship between the size of a problem and the computation time that is needed tosolve that problem. The problem size is determined by the input data and it isgenerally assumed that the input data is binary encoded. The following can befound in any textbook on Complexity Theory (see e.g. Garey and Johnson [14]).

For problem size n, let TA(n) denote the worst-case time complexity whena problem is solved by algorithm A. That is, TA(n) is the maximum number ofcomputational steps, over all input sizes n, that are required for the execution

16

Page 17: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

of algorithm A. When the computational complexity is determined, it is crucialto look at the order of the function TA(n). Consider for example algorithm A1

with TA1(n) = 0.5n2 and algorithm A2 with TA2(n) = 5n. Although algorithmA1 is faster than algorithm A2 for 1 ≤ n ≤ 9 and equally fast for n = 10,algorithm A2 is faster for all n > 10. This has to do with asymptotic growthand is caused by the fact that TA2(n) is of lower order than TA1(n).

Given two functions F (n) and G(n), with n ∈ N, the order of F (n) is saidto be lower than or equal to the order of G(n) if

F (n) ≤ K ·G(n) for all n > n0,

where K and n0 are two positive constants. When the order of F is lower thanor equal to the order of G, it is denoted F = O(G). Hence TA1(n) is O(n2) andTA2(n) is O(n).

The worst-case time complexity of an algorithm is important in order todetermine whether it is efficient or not. Complexity theory is used to classifyalgorithms either as efficient or inefficient. Any O(P )-algorithm, where P isa polynomial in the problem size, is an efficient algorithm. All problems thatcan be solved by an O(P )-algorithm are said to be polynomially solvable andbelong to the class P. A problem is said to be pseudo-polynomially solvable,when the running time is polynomial in the numerical value of the input (usingunary encoding), but non-polynomial with respect to binary encoding.

Problems which can only be solved by non-polynomial algorithms belong tothe class NP. It has been shown that the majority of the problems belongingto this class are equivalent to each other. This implies the following: if an effi-cient algorithm could be developed that solves one problem in this class, it canbe used to solve all problems that are in this class. Conversely, when it canbe proven that no such algorithm possibly exists for one of these problems, itimmediately follows that no efficient algorithm exists for any problem in thisclass. These problems are called NP-complete. A more formal definition willbe given below. However, it is necessary to introduce the difference betweenoptimization and recognition problems first.

An optimization problem is concerned with the solution that actually min-imizes (maximizes) a certain objective function. A recognition problem dealswith the question whether or not there exists a certain instance such that theobjective function is at most (at least) k, where k is an arbitrary constant.Hence, a recognition problem can be answered by YES or NO. An instance of arecognition problem is a YES instance if the answer to this problem is YES, anda NO instance if it is NO. Note that the optimization problem can be solved byrepetitive application of the recognition problem. To define NP-complete andNP-hard problems the following is needed as well:

A problem P1 polynomially reduces to a problem P2 if some polynomial-timealgorithm that solves P1 uses the algorithm for solving P2 at unit cost. Here,at unit cost means that the algorithm for P2 requires unit time to execute.From this definition the following property arises: If P1 polynomially reducesto P2 and some polynomial-time algorithm solves P2, then some polynomialtime-algorithm solves P1.

17

Page 18: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

A special form of problem reduction is called problem transformation. Aproblem P1 polynomially transforms to problem P2 if for every instance I1 ofproblem P1 an instance I2 of problem P2 can be constructed in polynomial timesuch that I1 is a YES instance of P1 if and only if I2 is a YES instance of P2.

Now, a recognition problem P1 is said to be NP-complete if

1. P1 ∈ NP, and

2. all other problems in the class NP polynomially transform to P1.

A recognition problem P1 is said to be NP-hard if all other problems inthe class NP polynomially reduce to P1. Note that this class of problems isbroader than the class NP-complete, because it includes the class NP as wellas problems that are not in this class.

Note that these definitions of NP-completeness and NP-hardness are basedon the assumption of binary encoded problem sizes. A problem that is NP-complete or NP-hard could well be pseudo-polynomially solvable. When aproblem is NP-complete with respect to unary encoding as well, it is said tobe strongly NP-complete. A similar result holds for strongly NP-hard problems(see e.g. Leung [24]). For a more detailed description of computational com-plexity, the reader is referred to Garey and Johnson [14] or Leung [24].

1.3 Overview of Complexity Status of Single Ma-chine Scheduling Models

Many single machine models have already been shown to be (pseudo-)polyno-mially solvable or NP-hard. On a website, Brucker and Knust [10] keep trackof the complexity results of scheduling problems. Problems that were solved inthe fifties of the previous century are for example

1||Lmax and 1||∑

wjCj .

In the first problem (Jackson [18]) the objective is to find a schedule that min-imizes the maximum lateness. The β-field is empty, which implies that all jobshave different processing times and due dates, but that preemption is not al-lowed and there are no release dates, precedence constraints, etcetera. Thisproblem is solved by the Earliest Due Date (EDD) first rule, which orders alljobs by their due date (from low to high) and schedules them accordingly. Thisalgorithm runs in O(n2).

In 1||∑

wjCj (Smith [33]) the schedule that minimizes the total weightedcompletion time needs to be determined. All jobs have different processing timesand weights. This problem is solved by the Weighted Shortest Processing Time(WSPT) first rule, where job j is scheduled before job k if

wj

pj>

wk

pk.

The WSPT algorithm has running time O(n log(n)).

18

Page 19: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Another example of a scheduling problem that is polynomially solvable is

1|pj = p; rj |∑

wjCj .

In this problem the schedule that minimizes the total weighted completion timeneeds to be determined. All jobs have the same processing time and differentrelease dates. The problem can be solved by a dynamic programming algorithmthat was introduced by Baptiste [4]. The time complexity of the algorithm isO(n7).

Examples of problems that are NP-hard are:

1|rj |Lmax and 1|pmtn; rj |∑

wjCj .

The problem 1|rj |Lmax is a generalization of the problem 1||Lmax. In thisproblem, the jobs have different release dates, processing times and due dates.In Lenstra, Rinnooy Kan and Brucker [23], it is proven that this problem isstrongly NP-hard. To see why the EDD rule does not necessarily solve thisproblem to optimality, consider the following example:

job j 1 2 3 4pj 4 1 6 4rj 0 0 1 3dj 13 14 7 11

The EDD schedule is depicted in Figure 1.1a. It is not difficult to see thatLmax = L3 = L4 = 3. In Figure 1.1b, the optimal schedule is depicted, withLmax = L1 = L2 = 2.

Figure 1.1: (a) The EDD schedule with Lmax = 3. (b) The optimal schedulewith Lmax = 2.

Now consider the problem 1|pmtn; rj |∑

wjCj , which is a generalization of1||

∑wjCj . A possible approach for this problem would be to check whether

the preemptive version of the WSPT rule leads to an optimal solution. Thisrule compares the ratios of the weight of a job and the remaining processingtime for all available jobs and schedules the job with highest ratio first. Whena new job is released, or when a job is finished, this procedure is repeated untilall jobs are processed. However, the preemptive WSPT rule does not alwayslead to an optimal solution. Consider the following example:

19

Page 20: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

job j 1 2 3pj 2 3 4rj 0 1 2wj 1 4 10

The preemptive WSPT schedule is depicted in Figure 1.2a and has objectivevalue

∑wjCj = 101. However, the optimal schedule is depicted in Figure 1.2b

and has objective value∑

wjCj = 98. The proof that 1|pmtn; rj |∑

wjCj isstrongly NP-hard is given in Labetoulle et al. [21].

Figure 1.2: (a) The preemptive WSPT schedule with∑

wjCj = 101. (b) Theoptimal schedule with

∑wjCj = 98.

In Appendix A a complete overview of the complexity status of single ma-chine problems is given.

1.3.1 Open Problems

Although the complexity status of most single machine scheduling problems isknown, there still exist problems with an open complexity status. This meansthat it is not known whether they are polynomially solvable or not. One of theseproblems is the preemptive equal-length job scheduling problem with releasedates 1|pmtn; pj = p; rj |

∑wjCj , in which the total weighted completion time is

minimized. This problem is similar to two of the problems that were discussed inthe preceding paragraph, namely 1|pj = p; rj |

∑wjCj and 1|pmtn; rj |

∑wjCj .

The non-preemptive problem 1|pj = p; rj |∑

wjCj , which is an easier caseof the open problem, is polynomially solvable. It can be shown that this isthe case for all easier cases of the open problem. Therefore, 1|pmtn; pj =p; rj |

∑wjCj is said to be minimal open. The problem 1|pmtn; rj |

∑wjCj is

slightly harder than the open problem, since the processing times of the jobs maydiffer. As was already indicated, this problem is strongly NP-hard. However,1|pmtn; pj = p; rj |

∑wjCj is not maximal open, which implies that there are

harder cases that are not known to be NP-hard. Consider for example the openproblem with strict deadlines, 1|pmtn; pj = p; rj ;Dj |

∑wjCj . This problem

is harder than the open problem under consideration and its complexity statusis open as well. The problem can be solved by the model presented in Chapter 5.

Two problems that are very similar to 1|pmtn; pj = p; rj |∑

wjCj are

1|pmtn; pj = p; rj |∑

wjTj and 1|pj = p; rj |∑

wjTj .

20

Page 21: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

In both problems the total weighted tardiness is minimized instead of the to-tal weighted completion time. The first problem allows for preemption, thesecond does not. According to the website of Brucker and Knust [10], the non-preemptive problem is both minimal and maximal open. This implies that alleasier problems are polynomially solvable and all harder cases are NP-hard.Apparently, Brucker and Knust do not regard the preemptive problem as aneasier or harder case. This is in agreement with a observation in Pinedo [29],which says that allowing preemptions usually simplifies the analysis of a prob-lem, but not always. On the website of Brucker and Knust [10] it is also statedthat the preemptive problem is maximal open, but not minimal. However, itwill be shown in the following section that all easier problems (i.e., with equaljob weights or without release dates) are known to be polynomially solvable.Since 1|pj = p; rj |

∑wjTj is not regarded as an easier problem, this implies

that 1|pmtn; pj = p; rj |∑

wjTj must be minimal open as well.

1.3.2 Related Problems

In this paragraph an overview of problems that are related to the open problemsintroduced in Section 1.3.1 is given. It should be noted that some complexityresults have been obtained for the general class of problems with objective func-tion fmax = maxj{fj(Cj)}. Here fj is a monotone, non-decreasing cost func-tion. Both the (weighted) completion time and the (weighted) tardiness can bedescribed by such functions fj . In Table 1.1, the overview is given schematically.

As was already shown at the beginning of Section 1.3, the problem 1||∑

wjCj

(Smith [33]) is polynomially solvable. The same result holds true for 1||fmax,which can be solved by the EDD rule. When the objective is replaced by the to-tal (weighted) tardiness, the problem becomes (strongly) NP-hard (Lawler [20],Du and Leung [12]). However, Lawler [20] shows that there exists a pseudo-polynomial algorithm to solve 1||

∑wjTj if the weighting of jobs is agreeable.

This is the case when pi < pj implies that wi ≥ wj . Note that it immediatelyfollows that the equal weight problem 1||

∑Tj is also pseudo-polynomially solv-

able.The simplified total weighted tardiness problem in which the jobs have equal

lengths, 1|pj = p|∑

wjTj , is polynomially solvable. The schedule for this prob-lem can be divided into parts of length p. At each of these time intervals, ajob is scheduled. For each job and time interval combination the correspondingcosts are known. By means of the Assignment Problem, which is polynomiallysolvable and discussed in more detail in Chapter 2, the optimal assignment ofjobs to time intervals can be easily found.

When release dates are added to the polynomially solvable problems 1||Lmax

and 1||∑

Cj , they both become strongly NP-hard. This is shown by Lenstraet al. [23]. From the fact that 1||

∑Tj is NP-hard it immediately follows that

1|rj |∑

Tj is NP-hard as well. An example of 1|rj |Lmax is given at the beginningof Section 1.3. Note that the problem 1|rj |Cmax is polynomially solvable, sinceevery non-delay schedule is optimal. A schedule is called non-delay if a machineis not kept idle while one or more jobs are available for processing.

When the scheduling problems with release dates are relaxed by the assump-tion of equal processing times pj = p, they become polynomially solvable when

21

Page 22: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Lmax and∑

wjCj are minimized. The latter problem was solved by Baptiste [4].Simons [32] showed that the problem P |pj = p; rj |Lmax is polynomially solv-able. Here, P stands for m parallel machines, which is a generalization of thesingle machine problem. It immediately follows that 1|pj = p; rj |Lmax is poly-nomially solvable as well. The problem in which the total weighted tardiness isminimized for equal-length jobs with different release dates is one of the openproblems that is solved in this thesis. The version with equal job weights as wellas the version with unit processing times pj = 1 are polynomially solvable. Theformer case is proven by Baptiste [4], the latter can be solved by the AssignmentProblem (see Chapter 2 for a discussion of the Assignment Problem). Hence,the model of Baptiste [4] solves the equal-length job scheduling problem withrelease dates when the total weighted completion time or the total tardinessis minimized, but not when the total weighted tardiness is minimized. This iscaused by the fact that the model only holds true when the function (fi − fj)is monotone. This implies that either

(fi − fj)(t1) ≥ (fi − fj)(t2) ∀t1 ∀t2 > t1 or

(fi − fj)(t1) ≤ (fi − fj)(t2) ∀t1 ∀t2 > t1.

When fj(t) = wj max{0, t− dj} it can be shown that (fi− fj) is not monotone.Consider, for example, the case with d1 = 2, d2 = 3, w1 = 1 and w2 = 10. Itfollows that (f1 − f2)(2) = 0, (f1 − f2)(3) = 1 and (f1 − f2)(4) = −8. Hence(f1 − f2)(2) < (f1 − f2)(3) but (f1 − f2)(2) > (f1 − f2)(4).

Now consider the scheduling problem in which jobs have different releasedates, are subject to precedence constraints and where preemption is allowed.Baker et al. [2] present an algorithm that solves the problem1|prec; pmpn; rj |fmax in polynomial time. However, the counterparts in whichthe total completion time and the total tardiness are minimized are NP-hard,which follows from Lenstra and Rinnooy Kan [22]. Baptiste et al. [5] showthat the relaxed problem 1|prec; pmpn; pj = p; rj |

∑Cj has a non-preemptive

optimal schedule, and can therefore be solved by the algorithm developed bySimons [32] that solves 1|prec; pj = p; rj |

∑Cj in polynomial time.

Let us now return to the problems without precedence constraints. Bakeret al. [2] give a polynomial time algorithm that solves 1|pmtn; rj |fmax. However,both 1|pmtn; rj |

∑wjCj (Labetoulle et al. [21]) and

1|pmtn; rj |∑

wjTj are strongly NP-hard. Because 1||∑

wjTj is strongly NP-hard, it follows directly that 1|pmtn; rj |

∑wjTj is strongly NP-hard as well.

Now look at the problem in which the total completion time and not the totalweighted completion time is minimized: 1|pmtn; rj |

∑Cj . This problem is poly-

nomially solvable (Baker [1]). Likewise, the problem1|pmtn; pj = p|

∑wjCj is polynomially solvable. Since all jobs are released

at the same time the optimal schedule is non-preemptive. Therefore, the result-ing problem is just a special case of 1||

∑wjCj , which is polynomially solvable.

However, when release dates are added it is not known whether the resultingproblem is polynomially solvable or not. In conclusion we have that there ex-ist algorithms that solve 1|pmtn; pj = p|

∑wjCj , 1|pj = p; rj |

∑wjCj and

1|pmtn; pj = p; rj |∑

Cj in polynomial time, but that none of these algorithmssolves the problem when respectively release dates, preemption or unequal job

22

Page 23: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

weights are added to the problem.

Now consider the scheduling problems in which the total weighted tardi-ness has to be minimized. The problem 1|pmtn; rj |

∑Tj is NP-hard. This

follows directly from the NP-hardness of 1||∑

Tj ; the addition of preemp-tion and/or release dates does not simplify the problem. However, when thejobs have equal processing times the problem becomes easier. The problem1|pmtn; pj = p|

∑wjTj is equivalent to 1|pj = p|

∑wjTj since preemption

is not advantageous when the release dates are equal. It has already beenshown that this problem is polynomially solvable. Furthermore, Tian, Ng andCheng [34] show that 1|pmtn; pj = p; rj |

∑Tj is polynomially solvable. The

fact that their model does not solve the problems in which the total weightedtardiness or the total weighted completion time is minimized, is a direct conse-quence of the addition of job weights. In a note, Goldengorin [16] shows whythe introduction of job weights gives rise to difficulties. He states that althoughit might be locally optimal to preempt job j in favor of job k, it does not meanthat this leads to a globally optimal solution. To put it differently, it often isoptimal to interrupt job j by job k only if job j can be completed before acritical point in time t0. Otherwise, job j should not be interrupted by job k.This restriction does not hold true when the total tardiness is minimized. Inthat case, when it is locally optimal to preempt job j in favor of job k, it imme-diately follows that it is globally optimal as well. Summarizing, it follows that1|pmtn; pj = p|

∑wjTj and 1|pmtn; pj = p; rj |

∑Tj are polynomially solvable,

but that 1|pj = p; rj |∑

wjTj and 1|pmtn; pj = p; rj |∑

wjTj are open problems.

A problem that is related to the preemptive open problems that are solvedin this thesis is 1|pmtn; pj = p; rj |

∑wjUj . When Uj does not denote the total

weighted number of tardy jobs, but the total weighted throughput that has tobe maximized, i.e.,

Uj ={

0 if Cj > dj

1 otherwise,

the problem is polynomially solvable (Baptiste et al. [6]). However, when∑wjUj denotes the weighted number of tardy jobs that needs to be mini-

mized, the problem can be seen as a special case of 1|pmtn; pj = p; rj |∑

wjTj

(see Chapter 6) and can be solved accordingly.

1.4 Linear and Integer Programming

Many decision problems - like the scheduling problems of the preceding section -can be modeled by Linear Programming (LP) models. An LP model consists ofan objective function and a number of constraints which are all linear functionsof the decision variables. When the decision variables can only take integer val-ues, the resulting model is called an Integer Linear Programming (ILP) model.Similarly, when the decision variables can only take boolean values (i.e., 0 or 1),the model is called a Boolean Linear Programming (BLP) model.

The LP model that will be used in this thesis has the form

min{wx |Ax ≥ b, x ≥ 0},

23

Page 24: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

where A is a m× n-matrix, w and x are vectors in Rn and b is a vector in Rm.

Every LP model has a dual, which is a LP model itself. The original LPmodel is called the primal model. When the primal model is a minimizationproblem, the dual is a maximization problem and vice versa. Each decisionvariable (constraint) of the primal model corresponds to a constraint (decisionvariable) of the dual model. The dual of the primal LP model presented aboveis given by

max{yb | yA ≤ w, y ≥ 0},

where y is a vector in Rm. By the strong duality theorem of Linear Programming(see e.g. Schrijver [30]), the optimal solution of the primal model is equal to theoptimal solution of the corresponding dual model, provided that both solutionsare feasible and bounded. A nice relation between the optimal solutions of theprimal and dual model is called Complementary Slackness (CS), which statesthat x and y are both optimal solutions (provided that they are feasible) if andonly if

yi(aix− bi) = 0 for all i,

(wj − yAj)xj = 0 for all j.

Here, ai denotes the ith row of A and Aj the jth column of A.

It is generally known that LP models are polynomially solvable. However,ILP models are NP-complete. Therefore, no efficient algorithms are known tosolve ILP problems. A possible way to solve an ILP model is by solving thecorresponding LP relaxation. That is, the model is solved without the restrictionof integrality. When the optimal solution of the LP relaxation appears to beinteger, it is the optimal solution to the ILP model as well. However, this occursonly in certain special cases and sometimes just by coincidence.

1.4.1 Total Unimodularity and Total Dual Integrality

The set of all possible solutions to a LP model is a polyhedron. The polyhedronP corresponding to the model presented above is

P = {x ∈ Rn |Ax ≥ b, x ≥ 0}.

Polyhedra are closed, convex sets. To define what a face of a polyhedron is, weneed the following:

A hyperplane is a set of the form Hw,d = {x ∈ Rn | wx = d}, where w ∈ Rn

is a nonzero row vector and d ∈ R. The hyperplane Hw,d is a supporting hy-perplane of P if max{wx | x ∈ P} = d.

Now, F is called a face of P if F = P or F = P ∩ H for some supportinghyperplane H of P . Furthermore, a point p ∈ P is a vertex of P if {p} is a faceof P (see e.g. Schrijver [30]).

A polyhedron P is said to be integral, if each face of P contains integralvectors (see e.g. Schrijver [30]). In that case, there always exists an optimalsolution to the corresponding LP relaxation that is integral. This is very useful

24

Page 25: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

when one is trying to solve an ILP model. When the polyhedron is integral, itsuffices to solve the LP relaxation corresponding to the ILP model.

Sometimes it is possible to tell from the properties of the constraint matrixA that the polyhedron P = {x ∈ Rn |Ax ≥ b, x ≥ 0} is integral for each integralvector b. This is the case if and only if A is Totally Unimodular (TU). A matrixA is called TU if each subdeterminant of A is 0, 1, or −1. In particular, eachentry of A is 0, 1, or −1. There exist polynomial time algorithms to checkwhether A is TU (see e.g. Schrijver [30]).

However, when the constraint matrix A is not TU, the integrality of thepolyhedron P = {x ∈ Rn | Ax ≥ b, x ≥ 0} for a particular integral vectorb can still be guaranteed by the notion of Total Dual Integrality (TDI). Thesystem Ax ≥ b, x ≥ 0 is TDI if the dual has an integral optimal solution y foreach integral vector w for which the maximum is finite. Furthermore, it can beshown that when Ax ≥ b, x ≥ 0 is a TDI system, and when b is integral, thepolyhedron P = {x ∈ Rn |Ax ≥ b, x ≥ 0} is integral (see e.g. Schrijver [30]).

The difference between a TDI system in which A is not TU, and a TDIsystem in which A is TU, is that in the former case an integral optimal solutionis only guaranteed when w is an integer vector, while in the latter case thisrestriction is not needed.

The concepts of Total Unimodularity and Total Dual Integrality are veryuseful to determine the complexity status of ILP problems. As was alreadyindicated, ILP problems are in general NP-complete. However, when the con-straint matrix is TU, or when the system Ax ≥ b, x ≥ 0 is TDI, there existsan optimal solution to the LP relaxation that is an optimal solution to the ILPmodel as well. In case of a Total Unimodularity, the optimal solution of the LPrelaxation that is found by a regular LP solver is integral. In case of Total DualIntegrality, this does not need to be the case. However, in that case the frac-tional optimal solution can be used to construct an integral optimal solution.Furthermore, there exists sophisticated solvers (e.g. CPLEX) that make use ofpresolvers such that an ILP is solved very efficiently in case of TDI.

25

Page 26: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table

1.1:O

verviewof

complexity

resultsof

problems

thatare

relatedto

theopen

problems

thatare

solvedin

thisthesis.

1||fm

ax

inP

1|| ∑w

j Cj

inP

1|| ∑w

j Tj

(*)N

P-hard

1|| ∑T

j(**)

NP

-hard1|p

j=

p| ∑w

j Tj

inP

1|rj |L

max

NP

-hard1|r

j | ∑C

jN

P-hard

1|rj | ∑

Tj

NP

-hard1|r

j |Cm

ax

inP

1|pj

=p;r

j | ∑w

j Cj

inP

1|pj =

p;r

j | ∑w

j Tj

open

1|pj

=p;r

j |Lm

ax

inP

1|pj

=1;r

j | ∑w

j Tj

inP

1|pj

=p;r

j | ∑T

jinP

1|pm

tn;prec;r

j |fm

ax

inP

1|pm

tn;prec;r

j | ∑C

jN

P-hard

1|pm

tn;prec;r

j | ∑T

jN

P-hard

1|pm

tn;prec;p

j=

p;rj | ∑

Cj

inP

1|pm

tn;prec;p

j=

p;rj | ∑

Tj

NP

-hard1|p

rec;pj

=p;r

j | ∑C

jinP

1|prec;p

j=

p;rj | ∑

Tj

NP

-hard1|p

rec;pj

=p| ∑

Tj

NP

-hard1|p

mtn;r

j | ∑w

j Cj

NP

-hard1|p

mtn;r

j | ∑w

j Tj

NP

-hard1|p

mtn;r

j | ∑C

jinP

1|pm

tn;rj | ∑

Tj

NP

-hard1|p

mtn

;pj =

p;r

j | ∑w

j Cj

open

1|pm

tn;p

j =p;r

j | ∑w

j Tj

open

1|pm

tn;pj

=p| ∑

wj C

jinP

1|pm

tn;pj

=p| ∑

wj T

jinP

1|pm

tn;pj

=p;r

j | ∑T

jinP

(*)

Pseu

do-p

oly

nom

ially

solv

able

for

specia

lca

ses

(**)

Pseu

do-p

oly

nom

ially

solv

able

Page 27: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 2

Problem Formulation

In this chapter the three scheduling problems that are solved in this thesis willbe defined. By means of an example, a motivation is given for the use of the APformulation. In Section 2.3 the structure of the proof of polynomial solvabilitywill be explained.

2.1 Minimizing the Total Weighted CompletionTime

Consider the problem 1|pmtn; pj = p; rj |∑

wjCj , in which n jobs with process-ing time p have to be scheduled. Each job j has a certain release date rj andcannot be finished before rj + p. Without loss of generality, assume that therelease dates are such that r1 ≤ r2 ≤ . . . ≤ rn. Furthermore, assume that allentries are nonnegative integers and that there exists a schedule without idletime, i.e., the machine remains busy until all jobs are completed. It immedi-ately follows from the assumption of integral entries that in an optimal schedulepreemption occurs only at unit points in time. Hence, the time horizon can bedivided into pn time intervals of unit length and each job j needs to be assignedto p of these time intervals.

This problem presented above is an open problem. At the website of Durr [13]two attempts are presented to solve the (more general) problem

1|pmtn; pj = p; rj |∑

wjCj .

The first is a LP model (Baptiste et al. [8]), the second is a dynamic program-ming model (Baptiste et al. [7]) for the special case when p > max rj . The LPmodel will be shortly discussed below.

The BLP Model. Let the indices be given byj ∈ {1, 2, . . . , n},a ∈ {0, 1, 2, . . . , n− 1},t ∈ {0, 1, 2, . . . , T}.

27

Page 28: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Let the boolean decision variable xjt denote how much of job j is completedat time t. The BLP model reads

min∑j,t

wjtxjt

subject to∑T

t=0 xjt = 1 j = 1, . . . , n∑j≥i

∑t<ri+(a+1)p xjt ≤ a a = 0, . . . , n− 1

i = 1, . . . , n− a + 1xjt ∈ {0, 1} for all j, t.

The first set of constraints states that every job should eventually be fullyprocessed. The second set states that in an interval strictly less than (a + 1)ptime units at most a jobs that are released at or after the starting time of thatinterval can be entirely executed and completed.

Baptiste et al. [8] show that the polyhedron determined by the LP relaxationcontains vertices which are not integral. Therefore, it cannot be assured thatthe optimal solution of the LP relaxation is integral. Although this is not aproof that the LP relaxation does not solve the problem in polynomial time,another observation could be made that explain the incorrectness of the model.

The LP relaxation of the model presented above allows for solutions thatdo not correspond to a feasible schedule. Consider for example the case withn = p = 3 and rj = j − 1. A feasible solution is given by

x13 = x19 = x26 = x29 = x35 = x37 =12,

and all other variables are zero. Hence, after 2 time units nothing of job 1 isproduced yet, but after 3 time units it is already processed for 1 1

2 time units. Al-though Baptiste et al. [8] mention this example and show that it is not optimal,they do not say anything about the infeasibility of the corresponding schedule.In the models presented in Chapters 4 to 6, all feasible solutions - integral andfractional - correspond to feasible schedules.

2.1.1 The Assignment Model

In order to show that the problem

1|pmtn; pj = p; rj |∑

wjCj

is polynomially solvable the problem is modeled as an Assignment Problem (AP)with additional constraints. The AP is widely discussed in the literature andcan be found in most textbooks on combinatorial optimization and integer lin-ear programming (see e.g. Sierksma [31]). The first polynomial time algorithmfor the AP was suggested by Kuhn [19]. The AP can be formulated as follows:

Consider two sets U and V , both containing T elements and a cost matrixW where wjt is the cost of assigning element j ∈ U to t ∈ V . An assignmentis a permutation π = (π(1), π(2), . . . , π(T )) of V in which the jth element ofU is assigned to element tj = π(j) from V . An optimal assignment minimizes

28

Page 29: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

∑Tj=1 wjπ(j). The Assignment Problem can be stated as a BLP model as follows:

minT∑

j=1

T∑t=1

wjtxjt

subject to∑T

j=1 xjt = 1 t = 1, . . . , T∑Tt=1 xjt = 1 j = 1, . . . , T

xjt ∈ {0, 1} for all j, t.

When the boolean constraint is replaced by

0 ≤ xjt ≤ 1,

the LP relaxation is obtained. Since the constraint matrix of the AP is TU (seee.g. Sierksma [31]), there always exists an integral optimal solution to the LPrelaxation. This implies that the AP is polynomially solvable.

In order to illustrate how to use the AP formulation for the problem1|pmtn; pj = p; rj |

∑wjCj , consider the following example for the special case

with p = 2.

Example. Let there be 5 jobs with processing time 2 that have to be sched-uled. The release dates and weights of the jobs are given in the following table:

job j 1 2 3 4 5rj 0 1 2 3 4wj 1 3 7 16 33

Processing of the jobs starts at time 0 and is finished at time T = 10. Hence,there are 10 unit time intervals to which the jobs have to be assigned. Sincethe processing time of each job is 2, they can be divided into two parts suchthat each of the ten evolving job parts is assigned to exactly one time interval.It should be noted that when job j is released at time rj , the first part can beassigned to time interval rj + 1 or any later time interval. The second part canonly be processed at time interval rj + 2 or at any later time interval.

Now consider the AP in which ten job parts have to be assigned to ten timeintervals against minimum costs, where the costs of assigning each job part j toa certain time interval t are given in Table 2.1.

Here, 1.1 denotes the first part of job 1, 2.1 the first part of job 2, etcetera.Since the objective value of the scheduling problem,

∑wjCj , depends on the

completion time of the jobs, it follows that the assignment of the first part of ajob to a certain time interval does not come with any costs. However, since ajob can not be processed before it is released and since processing has to startbefore the final time interval T , the costs for t < rj + 1 and t = T are set toinfinity. Consequently, the first part of a job will never be assigned to one ofthese intervals.

If the second part of a job is assigned to time interval t the costs are wjt.As the second part of a job cannot be processed before time interval rj + 2, it

29

Page 30: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table 2.1: The cost matrix W , representing the costs of assigning job parts totime intervals.

Time Intervals t1 2 3 4 5 6 7 8 9 10

1.1 0∗ 0 0 0 0 0 0 0 0 ∞J 2.1 ∞ 0∗ 0 0 0 0 0 0 0 ∞o 3.1 ∞ ∞ 0 0 0 0 0∗ 0 0 ∞b 4.1 ∞ ∞ ∞ 0 0 0 0 0∗ 0 ∞p 5.1 ∞ ∞ ∞ ∞ 0 0 0 0 0∗ ∞a 1.2 ∞ 2 3 4 5 6 7 8 9 10∗

r 2.2 ∞ ∞ 9∗ 12 15 18 21 24 27 30t 3.2 ∞ ∞ ∞ 28∗ 35 42 49 56 63 70s 4.2 ∞ ∞ ∞ ∞ 80∗ 96 112 128 144 160

5.2 ∞ ∞ ∞ ∞ ∞ 198∗ 231 264 297 330

follows that the corresponding costs can be set to infinity as well.

An optimal solution for the Assignment Problem is given by the asterisks inTable 2.1. Note that, although the resulting schedule

S = (1, 2, 2, 3, 4, 5, 3, 4, 5, 1)

is feasible, the objective value corresponding to this schedule (∑

wjCj = 493)is not equal to the objective value of the AP, which is 325. The reason for thisdifference is that in the AP the first parts of jobs 3, 4 and 5 are scheduled aftertheir second parts, which has a positive effect on the costs, but which shouldnot be possible in a correct model. �

It is not difficult to see that the schedule S cannot be optimal; it is possibleto assign job 3 to the 4th and 6th time interval and to assign job 5 to the 7th and9th interval. The completion time of job 5 does not change by this operationwhile the completion time of job 3 decreases. Hence, the resulting schedule isbetter than S.

A natural question that comes to mind is whether the solution of the APcan be used to construct an optimal solution of the scheduling problem underconsideration. A possible way to do this would be the following:

1. Let the sequence in which the second job parts are scheduled be as in theoptimal solution of the AP.

2. Starting at time interval 1, assign each first job part that was originallyscheduled after its second part to the time interval right before this secondpart. Note that the second job part and all subsequent job parts move tothe next time interval.

3. Repeat step 2 until all first job parts are scheduled before the correspond-ing second job parts.

Applying these steps to the solution of the example leads to the schedule

S′ = (1, 2, 2, 3, 3, 4, 4, 5, 5, 1)

30

Page 31: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

with objective value 460. Unfortunately, it can be shown that S′ is not optimaleither. It is not difficult to see that interchanging jobs 4 and 5 leads to a betterschedule.

Although the AP formulation clearly does not lead to an optimal solutionof the problem 1|pmtn; pj = 2; rj |

∑wjCj , the example shows that this formu-

lation could be used when additional constraints are added which ensure thatthe second part of a job can not be processed before its first part. However,it is desirable to maintain the nice properties of the AP that assure an inte-gral optimal solution of the LP relaxation. In general, these nice properties aredestroyed when side constraints are added to the AP. In the literature, therecan be found many examples that have to contend with these difficulties. Aselection of them is treated in Chapter 3. However, first the other two openproblems are formulated.

2.2 Minimizing the Total Weighted Tardiness

The open problems in which the total weighted tardiness is minimized consistof a preemptive and a non-preemptive version. They are very similar to theproblem defined in Section 2.1 as will be shown below.

2.2.1 The Preemptive Problem

Consider the problem 1|pmtn; pj = p; rj |∑

wjTj , in which n jobs with process-ing time p have to be scheduled. Each job has a certain release date and duedate and can not be finished before rj + p. Without loss of generality, assumethat the release dates are such that r1 ≤ r2 ≤ . . . ≤ rn. Furthermore, assumethat all entries are nonnegative integers and that there exists a schedule withoutidle time intervals, i.e., all pn time intervals will be assigned without any timeinterval remaining idle. This implies that at least one job is released at timezero and all jobs are completed at time T = pn.

Just like the problem 1|pmtn; pj = p; rj |∑

wjCj , this is an open problem.It should be noted that the problems are very similar. To see this, consider theexample of Section 2.1.1 with due dates. Recall that in this example p = 2.

Example

job j 1 2 3 4 5rj 0 1 2 3 4wj 1 3 7 16 33dj 5 8 7 7 6

A similar cost matrix as depicted in Table 2.1 can be constructed. Note that inthis case, assigning the second part of job j to time interval t does only comewith any costs if dj > t.

An optimal solution to the AP is given by the asterisks in Table 2.2. Thecorresponding optimal value is 5. This solution leads to the following schedule

31

Page 32: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table 2.2: The cost matrix W , representing the costs of assigning job parts totime intervals when

∑wjTj is the objective.

Time Intervals t1 2 3 4 5 6 7 8 9 10

1.1 0∗ 0 0 0 0 0 0 0 0 ∞J 2.1 ∞ 0∗ 0 0 0 0 0 0 0 ∞o 3.1 ∞ ∞ 0∗ 0 0 0 0 0 0 ∞b 4.1 ∞ ∞ ∞ 0 0 0 0 0 0∗ ∞p 5.1 ∞ ∞ ∞ ∞ 0∗ 0 0 0 0 ∞a 1.2 ∞ 0 0 0 0 1 2 3 4 5∗

r 2.2 ∞ ∞ 0 0 0 0 0 0∗ 3 6t 3.2 ∞ ∞ ∞ 0∗ 0 0 0 7 14 21s 4.2 ∞ ∞ ∞ ∞ 0 0 0∗ 16 32 48

5.2 ∞ ∞ ∞ ∞ ∞ 0∗ 33 66 99 132

(1, 2, 3, 3, 5, 5, 4, 2, 4, 1). Note that the AP schedules the second part of job 4 be-fore its first part. Therefore, the corresponding objective value is not equal to thetotal weighted tardiness, which is in fact 37. This schedule is not optimal. By in-spection, it is possible to find the better schedule (1, 1, 3, 3, 5, 5, 4, 4, 2, 2) with ob-jective value 22. �

Although the AP does not lead to an optimal solution of the problem1|pmpn; pj = p; rj |

∑wjTj , the example shows that the AP formulation can

be used when extra constraints are added that ensure that the job parts arescheduled in the right order.

2.2.2 The Non-Preemptive Problem

Consider the problem 1|pj = p; rj |∑

wjTj , in which n jobs with processingtime p have to be scheduled. Each job has a certain release date and due date.Without loss of generality, assume that jobs are ordered by their release date,r1 ≤ r2 ≤ . . . ≤ rn and that there is always a job available for processing. Whenthis assumption does not hold, the problem can be split up into two separateproblems. Furthermore, assume that all entries are nonnegative integers. Justas in the preemptive case, the time horizon can be divided into time intervals ofunit length. However, since preemption is not allowed, it should be noted thatan optimal schedule might contain idle time intervals. Consider for example thefollowing instance with p = 2:

job j 1 2 3rj 0 1 4dj 8 3 6wj 1 1 1

It is not difficult to see that the schedule

2 2 3 3 1 1

with objective value 0 is optimal, and that no optimal schedule with less idletime exists.

32

Page 33: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Note that the maximum number of idle time intervals is (n−1)(p−1). To seethis, consider the case in which the machine remains idle during the first (p−1)time intervals before it starts processing job j = 2. When this job is completed,the machine remains idle for another p− 1 time units until it starts processingjob j = 3. This can be repeated until job j = n is completed and processing ofjob j = 1 is started. It follows that all job parts have to be assigned to timeintervals t = 1, . . . , T , where T = (n− 1)(p− 1) + np.

This is an open problem. In Chapter 6 it is shown that it can be solved bythe AP with side constraints. The cost matrix is similar to the one in Table2.2. Since there are more time intervals than job parts, the constraints of theAP require that each time interval is assigned at most (but not exactly) one jobpart. The side constraints require that as soon as the first job part is scheduled,all other job parts are scheduled successively and in the right order.

2.3 Outline of the Proof

In order to prove that the preemptive problems discussed in this thesis arepolynomially solvable the following line of reasoning is used:

First, a crucial property for any optimal preemptive schedule is introduced.This property is used to formulate a BLP model. Then, it is shown that theconstraint matrix corresponding to this BLP model is not Totally Unimodu-lar. Therefore, it can not be concluded directly that the polyhedron determinedby the LP relaxation is integral. Nevertheless, it can be proven that the sys-tem of (in)equalities determined by the LP relaxation is Totally Dual Integral.Since the LP relaxation is polynomially solvable, this directly implies that thecorresponding scheduling problem is polynomially solvable.

The proof of Total Dual Integrality is based on the dual of the LP relax-ation. After the dual is formulated, it is proven that it always has an integraloptimal solution. Since all job weights are assumed to be integral, it then im-mediately follows from the definition of Total Dual Integrality that the systemof (in)equalities determined by the LP relaxation is Totally Dual Integral.

The model for the non-preemptive problem in which total weighted tardinessis minimized is based on its preemptive counterpart. Since preemption is notallowed, many constraints can be simplified. Following the same line of reasoningas in the preemptive case, it can be easily proven that the resulting system of(in)equalities is Totally Dual Integral.

33

Page 34: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 35: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 3

Variations on theAssignment Problem

In this chapter four problems will be discussed that can be modeled using theframework of the Assignment Problem. From the examples it follows that thenice properties of the AP are not always preserved when extra constraints areadded; the first two problems are polynomially solvable, the others are not.

3.1 Finding Subdigraphs with Prescribed De-grees

The following is a special case of the problem discussed in Bang-Jensen andGutin [3, p. 142]. Let there be a directed weighted graph D. Suppose onewould like to identify the minimum cost subgraph of D, if one exists, withprescribed degrees on the vertices. This could be of interest for example whenthe cheapest cycle factor of D is required. This problem can be stated as follows:

Given the weighted graph D = (V,A) with V = {v1, v2, . . . , vn} and inte-gers a1, a2, . . . , an, b1, b2, . . . , bn, find the cheapest subgraph D′ = (V,A∗) of Dwhich satisfies d+

D′(vi) = ai and d−D′(vi) = bi for each i = 1, 2, . . . , n, or showthat no such subdigraph exists. Here, d+

D′(vi) and d−D′(vi) denote the out- and,respectively, in-degree of vertex i in subgraph D′.

This problem can be formulated as a BLP model as follows. Let wij denotethe weight of arc (i, j). Assume that ai ≤ d+

D(vi) and bi ≤ d−D(vi) for alli ∈ {1, 2, . . . , n} and

∑ni=1 ai =

∑ni=1 bi. Furthermore, define the following

decision variable:

xij ={

1 if (i, j) ∈ A∗

0 otherwise.

The model reads:

minn∑

i=1

n∑j=1

wijxij

35

Page 36: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

subject to∑

j:(i,j)∈A xij = ai i = 1, . . . , n∑i:(i,j)∈A xij = bj j = 1, . . . , n

xij ∈ {0, 1} for all i, j.

This is a special case of the AP since many possible assignments are excludedbeforehand (only existing arcs can be included in the subdigraph). One couldalso say that extra constraints which ensure that xij = 0 when (i, j) /∈ A needto be added to the AP. Note also that ai and bj are not necessarily equal to one.Bang-Jensen and Gutin [3] show that this problem can be solved in polynomialtime.

3.2 A Polynomial Solvable Case of the AxialThree-Dimensional Assignment Model

The following is taken from Gilbert and Hofstra [15]. Consider the problem inwhich there are p jobs, q workers and r machines, p ≤ q ≤ r. Each job has tobe assigned to a worker and a machine, but each worker and each machine canbe assigned to at most one job. Suppose the cost of assigning job i to worker jand machine k can be expressed as the cost of assigning job i to worker j plusthe cost of assigning job j to machine k, i.e., wijk = w′

ij + w′′jk. This problem

can be formulated by means of the (two-dimensional) Assignment Problem.

Define the following decision variables:

xij ={

1 if job i is assigned to worker j0 otherwise,

for i = 1, . . . , p and j = 1, . . . , q,

yjk ={

1 if worker j is assigned to machine k0 otherwise,

for j = 1, . . . , q and k = 1, . . . , r,

zj ={

0 if worker j is assigned a job1 otherwise.

The BLP model can now be formulated as:

minp∑

i=1

q∑j=1

w′ijxij +

q∑j=1

r∑k=1

w′′jkxjk

subject to∑q

j=1 xij = 1 i = 1, . . . , k∑pi=1 xij + zj = 1 j = 1, . . . , q∑r

k=1 yjk + zj = 1 j = 1, . . . , q∑qj=1 yjk ≤ 1 k = 1, . . . , r

xij , yjk, zj ∈ {0, 1} for all i, j, k.

In Figure 3.1 the two-dimensional representation of this problem is given.Note that the cells in the upper left quadrant correspond to the variables xij ,which assign jobs to workers. The cells in the lower right quadrant correspond to

36

Page 37: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

the variables yjk, which assign workers to machines. The cells on the diagonalof the lower left quadrant correspond to the zj variables. All black cells areinfeasible. Since this problem is now formulated as a classical AP, it immediatelyfollows that it is polynomially solvable.

Figure 3.1: Graphical representation of a special case of the three-dimensionalassignment model.

A suggestion would be to use this formulation for the problem1|pmtn; pj = 2; rj |

∑wjCj , by assigning each first job part to a certain time

interval and each time interval to another (idle) time interval. This second timeinterval can then be assigned to a second job part. A graphical representationwith a possible assignment is given in Figure 3.2 for n = 3.

Figure 3.2: Graphical representation of the multidimensional assignment prob-lem for 1|pmtn; pj = 2; rj |

∑wjCj with n = 3.

However, it appears that this model does not prevent the second part of a jobto be scheduled before the first part. Therefore, it has no advantages comparedto the classical AP formulation. In fact, it is worse because the number ofvariables is increased.

37

Page 38: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

3.3 The Imbalanced Time Minimizing Assign-ment Problem

This problem is taken from Muller, Camozzato and Bassi de Araujo [27]. Con-sider the problem of assigning n jobs to m machines, n > m, each job witha distinct processing time for each machine. One job is assigned to exactlyone machine and each machine is assigned to at least one job. Hence, this isthe problem R||Cmax, where R stands for unrelated parallel machines, with theconstraint that each machine performs at least one job.

Let pij denote the processing time of job j on machine i. Define the followingdecision variable:

xij ={

1 if job j is assigned to machine i0 otherwise.

Furthermore, let t be a positive integer. The BLP model is given by:

minZ = t

subject to∑m

i=1 xij = 1 j = 1, . . . , n∑nj=1 xij ≥ 1 i = 1, . . . ,m∑n

j=1 pijxij ≤ t i = 1, . . . ,mxij ∈ {0, 1} for all i, j.

Constraint 1 assures that every job is assigned to exactly one machine. Thesecond constraint assures that every machine is assigned to at least one job.The third constraint imposes that every machine finishes processing not laterthan time t, which is the time to be minimized.

Note that this problem is equivalent to the recognition problem where thequestion is posed whether there exists a feasible schedule for R||Cmax such thatthe maximum completion time is at most t. This question can be answeredby YES or NO. If there is a polynomial time algorithm that solves the latterproblem, it can be applied iteratively for smaller and smaller values of t until theanswer is NO. The solution to the former problem is then equal to the solutionto the latter problem where t is chosen such that the answer is just YES.

However, this problem is proven to be NP-hard. It is already difficult tosolve the model for relatively short instances.

3.4 Resource-Constrained Assignment Schedul-ing

The following is taken from Mazzola and Neebe [26]. Consider the problem inwhich personnel has to be scheduled to tasks. There are often departmentalresource constraints involving characteristics such as budgetary considerations,degree of technical training of department personnel, or rank of personnel. Be-sides minimizing the total time required to handle all tasks by the personnel,these constraints have to be taken into account. Suppose that n workers i haveto be assigned to n jobs j. The time needed for worker i to complete job jis denoted by wij . The cost incurred by department k, k ∈ {1, . . . , s}, when

38

Page 39: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

worker i is assigned to job j is denoted by rijk. The budget of department kis denoted by bk. Similar to the AP, let xij be the decision variable indicatingwhether worker i is assigned to job j or not. The Assignment Problem withSide Constraints (APSC) is given by:

minn∑

i=1

n∑j=1

wijxij

subject to∑n

i=1 xij = 1 j = 1, . . . , n∑nj=1 xij ≥ 1 i = 1, . . . , n∑n

i=1

∑nj=1 rijkxij ≤ bk k = 1, . . . , s

xij ∈ {0, 1} for all i, j.

The APSC is shown to be NP-complete.Lieshout and Volgenant [25] consider the case with only one side constraint

(k = 1). For some special cases, this problem is polynomially solvable. However,in general, the addition of one side constraint already results in a NP-completeproblem.

39

Page 40: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 41: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 4

Minimizing the TotalWeighted Completion Timewhen p = 2

In this chapter, the BLP model for the problem 1|pmtn; pj = 2; rj |∑

wjCj

will be presented, as well as its Integer and LP relaxations. By means of thedual problem, it will be shown that the system of (in)equalities determinedby the LP relaxation is TDI. The immediate consequence is that the problem1|pmtn; pj = 2; rj |

∑wjCj is polynomially solvable. The chapter will be con-

cluded with the optimality conditions that evolve from Complementary Slack-ness.

4.1 The Number of Time Intervals between theFirst and Second Part of a Job

Consider the following simple example with 2 jobs, r1 = 0, r2 = 1 andp = 2. Depending on the job weights either the schedule (1, 2, 2, 1) or (1, 1, 2, 2)is optimal. The feasible schedule (1, 2, 1, 2) can never be optimal since (1, 1, 2, 2)has a strictly better objective value irrespective of the weights. It appears that,when it is profitable to interrupt job 1, job 2 is fully processed before job 1 isresumed. A generalization of this result is given in Theorem 1.

Theorem 4.1 In an optimal schedule of the problem 1|pmtn; pj = 2; rj |∑

wjCj,there are either zero or an even number of time intervals between the intervalsto which the first and second part of a particular job are assigned.

Proof: By contradiction. Suppose a schedule S - in which there is an oddnumber of time intervals between the first and second part of job j - is optimal.Hence, we have that job j is interrupted by some job k, but job j is completedbefore job k is fully processed. Note that job k does not need to interrupt jobj directly. It might be that some other jobs are fully processed after the firstpart of job j and before the first part of job k.

41

Page 42: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Suppose part 1 of job j is scheduled at time interval t, its second part isscheduled at time interval t + d, d ∈ {2, 4, 6, . . .}, and part 1 of job k is sched-uled somewhere in between at time interval t + c, c ∈ {1, 3, 5, . . .}, c < d. Nowinterchange the positions of part 2 of job j and part 1 of job k. All other jobsremain in the same position. Note that the number of time intervals betweenthe first and second part of job j is now zero or even. Call the new scheduleS′. The total weighted completion time of all jobs completed before job j is notaffected by the interchange, nor is the total weighted completion time of the jobsfinished after job j. Since the weighted completion time of job j is strictly less inschedule S′ than in schedule S, it follows that S cannot be optimal. This com-pletes the proof of the theorem. �

Theorem 4.1 appears to be crucial for the implementation of the side con-straints in the AP formulation. It makes it possible to formulate the extraconstraints such that the system of (in)equalities remains TDI.

It should be noted that Theorem 4.1 is a direct consequence of Lemma 2.1 in-troduced by Tian et al. [34]. This lemma states that in ap-active schedule, job i is either fully processed before job j is started, or job iis interrupted by job j and not resumed before job j is completed. This impliesthat if job i is interrupted, it is interrupted for p = 2 or a multiple of p timeunits. Note that a preemptive schedule is p-active if no job’s completion timecan be advanced without postponing the completion time of some other job. Itis not difficult to show that an optimal preemptive schedule is p-active whenthe total weighted completion time is minimized.

4.2 The Primal Model

The following indices, parameters and decision variables are used in the BLPmodel.

Indicesj ∈ {1, . . . , n} job index;t ∈ {1, . . . , T} time index;k ∈ {1, 3, 5, . . . , T − 1} the set of all odd time indices;l ∈ {2, 4, 6, . . . , T − 2} the set of all even time indices up to and

including T − 2.

Parametersw′

jt cost of part 1 of job j when it is processed at time interval t;w′′

jt cost of part 2 of job j when it is processed at time interval t;rj release date of job j.

In the BLP model the regular weight wj will not be used. Instead, w′jt and

w′′jt are introduced. They are defined as:

w′jt =

{0 for all j, for T − 1 ≥ t ≥ rj + 1∞ otherwise.

42

Page 43: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

w′′jt =

{wjt for all j, for t ≥ rj + 2∞ otherwise.

Decision Variables

x′jt ={

1 if job j’s first part is assigned to time interval t0 otherwise.

x′′jt ={

1 if job j’s second part is assigned to time interval t0 otherwise.

Furthermore, the following subsets of time intervals, Tk and Ul, are used.

Tk = {1, 3, 5, . . . , k} The subset of odd time intervals up to and includinginterval k;

Ul = {2, 4, 6, . . . , l} The subset of even time intervals up to and includinginterval l.

4.2.1 BLP Model

The BLP model can now be formulated as:

minn∑

j=1

T∑t=1

w′jtx

′jt +

n∑j=1

T∑t=1

w′′jtx

′′jt

subject toT∑

t=1

x′jt ≥ 1 j = 1, . . . , n (4.1)

T∑t=1

x′′jt ≥ 1 j = 1, . . . , n (4.2)

n∑j=1

x′jt + x′′jt = 1 t = 1, . . . , T (4.3)

∑t∈Tk

x′jt −∑t∈Tk

x′′j,t+1 ≥ 0 j = 1, . . . , n (4.4)

k = 1, 3, 5, . . . , T − 1∑t∈Ul

x′jt −∑t∈Ul

x′′j,t+1 ≥ 0 j = 1, . . . , n (4.5)

l = 2, 4, 6, . . . , T − 2x′jt, x

′′jt ∈ {0, 1} j = 1, . . . , n t = 1, . . . , T. (4.6)

Constraints (4.1) and (4.2) ensure that each first respectively second partof a job is processed for the duration of at least one time interval. Constraints(4.3) take care of the fact that each time interval is assigned to exactly one jobpart. Since the number of job parts is equal to the number of time intervals,it immediately follows from (4.1) and (4.2) that each job part is assigned toexactly one time interval. This can be seen as follows:

Suppose x′jt = 1 and x′jt

= 1 are part of a feasible solution. Constraint (4.1)is satisfied for job j. However, by constraints (4.1), (4.2) and (4.3) there are

43

Page 44: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

T − 1 job parts that have to be assigned to the remaining T − 2 time intervals.Since at most one job part can be assigned to each time interval by constraints(4.3), this contradicts the feasibility of x′jt = 1 and x′

jt= 1.

Constraints (4.4) and (4.5) together assure that one cannot start processingthe second part of a job before the first part is processed. Furthermore, theyassure that the number of time intervals that lies between the processing of thefirst and second part of a job is either zero or even; when part 1 is assigned totime interval t, part 2 can only be assigned to time interval t+d, d ∈ {1, 3, 5, . . .}.Constraints (4.6) are boolean constraints.

4.2.2 Example

Consider the example of Chapter 2.

job j 1 2 3 4 5rj 0 1 2 3 4wj 1 3 7 16 33

The optimal solution is given by

x′11 = 1, x′29 = 1, x′33 = 1, x′47 = 1, x′55 = 1,x′′12 = 1, x′′2,10 = 1, x′′34 = 1, x′′48 = 1, x′′56 = 1,

and all other variables are zero. Hence, it follows that

(1, 1, 3, 3, 5, 5, 4, 4, 2, 2)

is the optimal schedule and the objective value∑

wjCj is 386.

4.2.3 Integer and LP Relaxations

Consider the BLP model presented in Section 4.2.1. Note that constraints (4.6)may be replaced by

x′jt, x′′jt ∈ Z+ for all j, t. (4.7)

Constraints (4.7) require that the decision variables are non-negative integers.Note that it is sufficient to require that the decision variables are non-negative;it is not necessary to add x′jt, x

′′jt ≤ 1. By constraints (4.3), we already have

that the decision variables x′jt and x′′jt can not take any value larger than one.When (4.6) is replaced by (4.7), an ILP model is obtained.

From the ILP, it immediately follows that the LP relaxation is obtainedwhen constraints (4.6) are replaced by

x′jt, x′′jt ≥ 0 for all j, t.

From now on, the LP relaxation will be denoted by (P).

44

Page 45: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

4.2.4 Total Unimodularity

A natural question to be asked is whether the constraint matrix correspondingto the LP relaxation is Totally Unimodular (TU). This would directly implythat the problem 1|pmtn; pj = 2; rj |

∑wjCj is polynomially solvable. Before

the constraint matrix of the LP relaxation is inspected, (P) is presented inmatrix notation. Define

x′j· = (x′j1, x′j2, . . . , x

′jT ) j = 1, . . . , n,

x′′j· = (x′′j1, x′′j2, . . . , x

′′jT ) j = 1, . . . , n,

w′j· = (w′

j1, w′j2, . . . , w

′jT ) j = 1, . . . , n,

w′′j· = (w′′

j1, w′′j2, . . . , w

′′jT ) j = 1, . . . , n.

Define the vectors x and w as follows:

x = (x′1·, . . . , x′n·, x

′′1·, . . . , x

′′n·) ∈ RT 2×1,

w = (w′1·, . . . , w

′n·, w

′′1·, . . . , w

′′n·) ∈ R1×T 2

.

The matrices B, C and D are defined by

B =

1T 0 . . . 00 1T . . . 0...

.... . .

...0 0 . . . 1T

∈ RT×T 2,

where 1T is a unit row vector containing T ones,

C =[

IT IT . . . IT

]∈ RT×T 2

,

D =

J 0 . . . 0 K 0 . . . 00 J . . . 0 0 K . . . 0...

.... . .

......

.... . .

...0 0 . . . J 0 0 . . . K

∈ Rn(T−1)×T 2,

where,

J =

1 0 0 0 0 . . . 0 00 1 0 0 0 . . . 0 01 0 1 0 0 . . . 0 00 1 0 1 0 . . . 0 01 0 1 0 1 . . . 0 0...

......

......

. . ....

...1 0 1 0 1 . . . 1 0

∈ R(T−1)×T ,

and

K =

0 −1 0 0 0 0 . . . 00 0 −1 0 0 0 . . . 00 −1 0 −1 0 0 . . . 00 0 −1 0 −1 0 . . . 00 −1 0 −1 0 −1 . . . 0...

......

......

.... . .

...0 −1 0 −1 0 −1 . . . −1

∈ R(T−1)×T ,

45

Page 46: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

The LP relaxation can now be written as:

min{wx |Bx ≥ 1, Cx = 1, Dx ≥ 0, x ≥ 0}.

Hence, the constraint matrix is given by (Bt Ct Dt)t. For n = 2 this matrix isgiven by:

1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 1 1 1 1 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 1 1 1 1 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 1 1 1 11 0 0 0 1 0 0 0 1 0 0 0 1 0 0 00 1 0 0 0 1 0 0 0 1 0 0 0 1 0 00 0 1 0 0 0 1 0 0 0 1 0 0 0 1 00 0 0 1 0 0 0 1 0 0 0 1 0 0 0 11 0 0 0 0 0 0 0 0 −1 0 0 0 0 0 00 1 0 0 0 0 0 0 0 0 −1 0 0 0 0 01 0 1 0 0 0 0 0 0 −1 0 −1 0 0 0 00 0 0 0 1 0 0 0 0 0 0 0 0 −1 0 00 0 0 0 0 1 0 0 0 0 0 0 0 0 −1 00 0 0 0 1 0 1 0 0 0 0 0 0 −1 0 −1

Consider the submatrix consisting of the bold elements. It follows that

det

1 1 0 00 0 1 11 0 1 00 1 0 −1

= −2.

Hence, the constraint matrix is not TU. Note that this submatrix always occurs,irrespective of the size of n, n ≥ 2.

4.3 The Dual Model

In this section the dual of (P) will be formulated. Recall that (P) is given by

min{wx |Bx ≥ 1, Cx = 1, Dx ≥ 0, x ≥ 0}.

The dual problem reads:

max{(1, . . . , 1) pt + (1, . . . , 1) qt | pB + qC + sD ≤ w, p ≥ 0, s ≥ 0},

where p ∈ R1×T , q ∈ R1×T and s ∈ R1×n(T−1).

4.3.1 Model Formulation

In order to write the dual problem out, the following indices and decision vari-ables are used:

Indicesj ∈ {1, . . . , n},t ∈ {1, . . . , T},m ∈ {1, . . . , n(T − 1)}.

46

Page 47: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Decision Variablesp = (p′1, . . . , p

′n, p′′1 , . . . , p′′n),

q = (q1, . . . , qT ),s = (s1, . . . , sn(T−1)).

Now define, for all j and for all t ∈ {1, . . . , T − 1}

Fjt ={

{κj + t, κj + t + 2, κj + t + 4, . . . , κj+1} for odd t{κj + t, κj + t + 2, κj + t + 4, . . . , κj + T − 2} for even t.

Here, κj is a constant defined by κj = (j − 1)(T − 1).

The dual Model (D) reads:

maxn∑

j=1

(p′j + p′′j ) +T∑

t=1

qt

subject to p′j + qt +∑

m∈Fjt

sm ≤ w′jt j = 1, . . . , n (4.8)

t = 1, . . . , T − 1p′j + qT ≤ w′

jT j = 1, . . . , n (4.9)p′′j + q1 ≤ w′′

j1 j = 1, . . . , n (4.10)

p′′j + qt −∑

m∈Fj,t−1

sm ≤ w′′jt j = 1, . . . , n (4.11)

t = 2, . . . , T

p′j , p′′j ≥ 0 j = 1, . . . , n (4.12)

sm ≥ 0 m = 1, . . . , n(T − 1). (4.13)

Analogous to Kuhn [19], the dual problem can be interpreted in the followingway. Let p′j be the cost reduction that can be brought off on the production ofthe first part of job j and let p′′j be the cost reduction of the second part of job j.Let qt denote the cost increase/decrease of production at time interval t. Whenqt is negative (positive), it implies a cost increase (decrease). Let sm denote thecost decrease for certain combinations of first job parts and time intervals, anda cost increase for certain combinations of second job parts and time intervals(note the minus sign in constraints (4.11)). When the costs of processing thefirst part of job j during time interval t decrease by sm, the costs of processingthe second part of job j at time interval t + 1 increase by sm. The objective ofthe dual is to find the largest cost reduction realized by p′j , p′′j and qt, such thatthe savings do not exceed the corresponding costs.

In terms of the cost matrix W , the dual variables p′j and p′′j correspond toits rows, the variables qt to its columns and the variables sm to certain specificentries. See Table 4.1, in which the connection between W and the dual variablesfor the scheduling problem with 5 jobs is given. Consider for example constraint(4.11) for j = 2 and t = 3. It follows that the sum of the variable left of row 7,the variable on top of column 3 and the variables in cell (7, 3) should not exceedw′′

23.

47

Page 48: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table

4.1:T

hew

ayin

which

dualvariables

p,q

ands

correspondto

therow

sand

columns

ofthe

costm

atrixW

.q1

q2

q3

q4

q5

q6

q7

q8

q9

q10

p′1

s1

+s3+

s2

+s4

s3

+s5

s4

+s6

s5

+s7

s6

+s8

s7

+s9

s8

s9

s5

+s7

+s9

+s6

+s8

+s7

+s9

+s8

+s9

p′2

s10

+s12+

s11

+s13

s12

+s14

s13

+s15

s14

+s16

s15

+s17

s16

+s18

s17

s18

s14

+s16

+s18

+s15

+s17

+s16

+s18

+s17

+s18

p′3

s19

+s21+

s20

+s22

s21

+s23

s22

+s24

s23

+s25

s24

+s26

s25

+s27

s26

s27

s23

+s25

+s27

+s24

+s26

+s25

+s27

+s26

+s27

p′4

s28

+s30+

s29

+s31

s30

+s32

s31

+s33

s32

+s34

s33

+s35

s34

+s36

s35

s36

s32

+s34

+s36

+s33

+s35

+s34

+s36

+s35

+s36

p′5

s37

+s39+

s38

+s40

s39

+s41

s40

+s42

s41

+s43

s42

+s44

s43

+s45

s44

s45

s41

+s43

+s45

+s42

+s44

+s43

+s45

+s44

+s45

p′′1

−s1−

s3 −

−s2−

s4

−s3−

s5

−s4−

s6

−s5−

s7

−s6−

s8

−s7−

s9

−s8

−s9

s5−

s7−

s9

−s6−

s8

−s7−

s9

−s8

−s9

p′′2

−s10−

s12 −

−s11−

s13

−s12−

s14

−s13−

s15

−s14−

s16

-s15−

s17

−s16−

s18

−s17

−s18

s14−

s16−

s18

−s15−

s17

−s16−

s18

−s17

−s18

p′′3

−s19−

s21 −

−s20−

s22

−s21−

s23

−s22−

s24

−s23−

s25

−s24−

s26

−s25−

s27

−s26

−s27

s23−

s25−

s27

−s24−

s26

−s25−

s27

−s26

−s27

p′′4

−s28−

s30 −

−s29−

s31

−s30−

s32

−s31−

s33

−s32−

s34

−s33−

s35

−s34−

s36

−s35

−s36

s32−

s34−

s36

−s33−

s35

−s34−

s36

−s35

−s36

p′′5

−s37−

s39 −

−s38−

s40

−s39−

s41

−s40−

s42

−s41−

s43

−s42−

s44

−s43−

s45

−s44

−s45

s41−

s43−

s45

−s42−

s44

−s43−

s45

−s44

−s45

48

Page 49: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

4.3.2 Example

The dual variables sm correspond to constraints (4.4) and (4.5) of (P). Theseconstraints ensure that the second part of a job cannot be processed before itsfirst part. The interpretation of the dual variables sm is that they cancel thecost increases out that are caused by the dual variable qt for certain first jobparts and time interval combinations. Furthermore, by a cost increase on somecombinations of second job parts and time intervals they compensate for valuesof p′′j that are too large (i.e., when the total cost decrease is larger than theactual cost). In this way, it becomes advantageous to schedule the first part ofa job before its second part. This can be clearly seen from the optimal solutionsto (P) and (D) for the example of Section 2.1. An optimal solution to (D) isgiven by

p′′1 = 4, p′′2 = 24, p′′3 = 57, p′′4 = 129, p′′5 = 247,q2 = −2, q3 = −13, q4 = −16, q5 = −33, q6 = −16,q7 = −1, q10 = 6,s6 = 2, s15 = 2, s21 = 12, s24 = 7, s25 = 1,s32 = 16, s33 = 16, s34 = 1, s41 = 33, s42 = 15,

and all other variables are zero. The objective value is 386. The corresponding(adjusted) cost matrix is given in Table 4.2. In this table the optimal scheduleis indicated by asterisks. Note that according to this cost matrix, it seems thatthere is another optimal schedule, namely

(1, 1, 3, 4, 5, 5, 4, 3, 2, 2).

Although this schedule is feasible, it will be shown in Section 4.5 that it is notoptimal.

Table 4.2: Cost matrix W adjusted by the dual variables.Time Intervals t

1 2 3 4 5 6 7 8 9 101.1 0∗ 0 13 14 33 14 1 0 0 ∞

J 2.1 ∞ 0 13 14 33 14 1 0 0∗ ∞o 3.1 ∞ ∞ 0∗ 9 32 9 0 0 0 ∞b 4.1 ∞ ∞ ∞ 0 16 0 0∗ 0 0 ∞p 5.1 ∞ ∞ ∞ ∞ 0∗ 1 1 0 0 ∞a 1.2 ∞ 0∗ 14 16 36 18 6 4 5 0r 2.2 ∞ ∞ 0 4 26 10 0 0 3 0∗

t 3.2 ∞ ∞ ∞ 0∗ 18 2 0 0 6 7s 4.2 ∞ ∞ ∞ ∞ 0 0 0 0∗ 15 25

5.2 ∞ ∞ ∞ ∞ ∞ 0∗ 0 17 50 77

4.4 Total Dual Integrality

In this section it will be proven that there always exists an integral optimalsolution to the dual problem (D). This in turn implies that the system of

49

Page 50: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

(in)equalities given by the primal model (P) is Totally Dual Integral and thatthe problem 1|pmtn; pj = 2; rj |

∑wjCj is polynomially solvable.

First, the strong duality theorem of Linear Programming and the definitionof Total Dual Integrality are given.

Theorem 4.2 (Strong duality theorem of Linear Programming) (See e.g.Schrijver [30]) Given the matrices B, C and D and vector w, the following holds

min{wx |Bx ≥ 1, Cx = 1, Dx ≥ 0, x ≥ 0} =max{(1, . . . , 1) pt + (1, . . . , 1) qt | pB + qC + sD ≤ w, p ≥ 0, s ≥ 0},

provided that the minimization problem, or maximization problem, is both fea-sible and bounded.

From the strong duality theorem it follows that, given a feasible optimalsolution x of the primal model (P), there exists a feasible optimal solution(p q s) to (D) with an optimal value that is equal to wx. The reverse is alsotrue. Note that by assumption of the existence of a non-idle schedule for theproblem 1|pmtn; pj = p; rj |

∑wjCj and by the assumption of proper job weights

wj , it automatically follows that the minimization problem is both feasible andbounded.

Definition 4.3 (See e.g. Schrijver [30]) For integral B, C and D, the systemx ≥ 0; Bx ≥ 1, Cx = 1, Dx ≥ 0 is Totally Dual Integral (TDI) if and only ifthe maximum in

min{wx |Bx ≥ 1, Cx = 1, Dx ≥ 0, x ≥ 0} =max{(1, . . . , 1) pt + (1, . . . , 1) qt | pB + qC + sD ≤ w, p ≥ 0, s ≥ 0} (4.14)

has an integral optimal solution (p, q, s) for each integral vector w with finitemaximum.

Note that B, C, D are integral by definition and that w is integral by as-sumption.

Denote the system x ≥ 0; Bx ≥ 1, Cx = 1, Dx ≥ 0 by (?). In order toprove that (?) is TDI it remains to show that an integral optimal solution to(D) always exists.

4.4.1 Integrality of Solutions to the Dual Problem

Theorem 4.4 There always exists an integral optimal solution to the dual prob-lem (D).

Proof: Suppose the optimal solution to (D) is not integral. Let us considerfive cases, to which all other instances of fractional solutions can be reduced byrepetitively applying the operations described below.

1 Only p′j , p′′j or qt is fractional, for some j or t.

2a. Only p′j and qt are fractional, for some j and t.

2b. Only p′j and sm are fractional, for some j and m.

50

Page 51: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

2c. Only p′j , qt and sm are fractional, for some j, t and m.

3a. Only p′′j and qt are fractional, for some j and t.

3b. Only p′′j and sm are fractional, for some j and m.

3c. Only p′′j , qt and sm are fractional, for some j, t and m.

4. Only qt and sm are fractional, for some t and m.

5. Only sm is fractional for one or several m.

Case 1. Suppose that p′j is fractional for some j and all other variables areintegral. By integrality of w, this implies that none of the constraints contain-ing p′j is binding. Therefore, it is possible to replace p′j by dp′je, where dp′jeis the rounded up value of p′j . Since this leads to a better objective value, itcontradicts the assumption of optimality. The same result holds true when p′′jor qt is fractional.

Case 2a. Suppose p′j and qt are such that their sum is integer. By integralityof w, no constraint containing either p′j or qt (and not both) can be binding.Now replace p′j and qt by dp′je and bqtc. Since p′j+qt = dp′je+bqtc, the constraintcontaining both variables is still feasible. All constraints containing only dp′jeare still feasible and possibly binding. Furthermore, the decrease of qt does notcause any violations of constraints either. Since the objective value does notchange, it follows that an integral optimal solution has been found.

Now suppose that the sum of p′j and qt is not integer. No constraint con-taining either p′j or qt can be binding, and the constraint containing both p′jand qt can be binding only when p′j = −qt. It is not difficult to see that in thiscase, p′j and qt can be safely replaced by dp′je and bqtc when

dp′je+ bqtc = dp′j + qte,

and by dp′je and dqte when

dp′je+ dqte = dp′j + qte.

However, since dp′j + qte > p′j + qt, it follows that the objective value improvesby this change. This contradicts the assumption of optimality and completesthe proof of case 2a.

Case 2b. Since w is integral, no constraint containing either p′j or sm canhold with equality. One can easily check that p′j and sm can be replaced bydp′je and bsmc without causing any infeasibilities. Yet, since the objective valueincreases by dp′je−p′j , the original solution cannot be optimal. This contradictsthe assumption of optimality and completes the proof of case 2b.

Case 2c. This case is similar to case 2a, in which the sum of p′j and qt isnot integer, extended by the fact that sm is fractional as well for some m. Notethat when p′j + qt is integer, this case is a combination of case 2a and case 5and can be solved accordingly. Following the same line of reasoning as in case2a, p′j can be rounded up, and qt and sm can be rounded down when

dp′je+ bqtc+ bsmc = dp′j + qt + sme.

51

Page 52: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Whendp′je+ dqte+ bsmc = dp′j + qt + sme,

qt is rounded up instead of down and when

dp′je+ dqte+ dsme = dp′j + qt + sme,

all three variables are rounded up. After this change all constraints containingone, two or three of these variables still hold. However, the objective valueimproves when the variables are rounded, because the sum of p′j and qt is notinteger. This was already noted in case 2a and contradicts the assumption ofoptimality. This completes the proof of case 2c.

Case 3a - 3c can be proven in a similar way as case 2a - 2c.

Case 4. Since w is integral, no constraint containing either qt or sm canhold with equality. It is not difficult to see that qt and sm can be replacedby dqte and bsmc without causing any violations of constraints. Yet, since theobjective value increases by dqte − qt, the original solution cannot be optimal.This contradicts the assumption of optimality and completes the proof of case 4.

Case 5. Assume that sm is fractional for exactly one m. No constraintcontaining sm can hold with strict equality. Since rounding down sm doesnot affect the objective value and since it does not lead to a violation of anyconstraint, it can be concluded that an integral optimal solution to (D) exists.

Now assume that sm is fractional for several m. Consider the case in whichsm1 , . . . , smn

, n ∈ N are fractional. Without loss of generality, assume thatm1 < m2 < . . . < mn. Each variable sm needs to be rounded up or down.Denote the rounded variable sm by s′m. All s′m need to be such that

⌊ n∑j=i

smj

⌋≤

∑nj=i s′mj

≤⌈ n∑

j=i

smj

⌉, i = 1, . . . , n. (4.15)

holds true. When this is the case, all constraints containing one or more vari-ables smi

, i = {1, . . . , n} are satisfied, while the solution is integral and theobjective value remains the same. By optimality of the fractional solutions itimmediately follows that an integral optimal solution exists as well. So it re-mains to show that the variables smi

can be rounded up and down such that(4.15) holds. Starting at i = n, round smn

up. Next, for i = n − 1, determinewhether smn−1 should be rounded up or down in order for (4.15) to hold true.Working backwards, do this for every remaining i = 1, . . . , n−2. This results inan integral optimal solution of (D) and completes the proof of case 5. Now thatall cases are discussed, the proof of Theorem 4.4 is completed. �

From Theorem 4.4 it immediately follows that (?) is a TDI-system. Now,the following results holds:

Result 4.5 (See e.g. Schrijver [30]) If x ≥ 0; Bx ≥ 1, Cx = 1, Dx ≥ 0 isa TDI-system, and if w is integral, then there is a polynomial time algorithmwhich finds an integral optimal solution for the minimum in (4.14).

52

Page 53: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Hence, it can be concluded that the problem

1|pmtn; pj = 2; rj |∑

wjCj

is polynomially solvable.

4.4.2 A Polynomial Time Algorithm

Now that it is proven that there exists a polynomial time algorithm that solves1|pmtn; pj = 2; rj |

∑wjCj , the question arises how this algorithm works. Be-

cause the system (?) is TDI, it follows from Definition 4.3 that the optimal valuefor 1|pmtn; pj = 2; rj |

∑wjCj is equal to the optimal value of (P). This optimal

value can be found using a regular LP solver. Furthermore, it follows from theTDI that the polyhedron P = {x | Bx ≥ 1, Cx = 1, Dx ≥ 0, x ≥ 0} is integral.Hence, every face of P contains integral vectors. Now there are two possibilities:the vertex in which the optimal is attained is integral, or it is fractional. In thefirst case, an optimal schedule is obtained. In the second case, it follows byintegrality of P that there is an integral optimal solution as well. In order toillustrate this, consider the following example with four jobs.

Example Let there be four jobs with processing time two that have to bescheduled. The release dates and weights of the jobs are given in the followingtable:

job j 1 2 3 4rj 0 1 3 4wj 1 10 2 2

The optimal solution of the LP relaxation found by a regular LP solver is thefollowing:

x′11 = 1, x′22 = 1, x′34 = 12 , x′36 = 1

2 , x′45 = 12 , x′457 = 1

2 ,x′′14 = 1

2 , x′′18 = 12 , x′′23 = 1

2 , x′′35 = 12 , x′′37 = 1

2 , x′′46 = 12 , x′′48 = 1

2 ,

and all other variables are zero. The optimal solution is∑wjCj = 30 +

12(4 + 10 + 12 + 14 + 24) = 62.

Although this solution is optimal, it is possible to finish job 1 completely attime interval 4, job 4 at time interval 6 and job 3 at time interval 8 such thatthe following schedule is obtained:

(1, 2, 2, 1, 4, 4, 3, 3)

The corresponding objective value∑wjCj = 30 + 4 + 12 + 16 = 62

as well.

53

Page 54: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Summarizing, when the LP solver finds an integral optimal solution, thescheduling problem is solved. When it finds a fractional solution, we know byintegrality of P that there exists an integral optimal solution as well. Startingwith the fractional solution found by the LP solver, an integral optimal solutioncan be constructed by the following algorithm:

Algorithm 4.6

Step 0 Set J = {1, 2, . . . , n}, S = {1, 2, . . . , T}.

Step 1 If |J | = 1 then go to Step 4.Else go to Step 2.

Step 2 Set X ′′ = {x′′jt|x′′jt > 0, j ∈ J, t ∈ S}.Define t′′ = arg mint∈S{x′′jt ∈ X ′′} and j0 = arg minj∈J{x′′jt′′ ∈ X ′′}.

� If xj0t′′ = 1, then

– Set

t′ =

min

{{rj0 + 1, rj0 + 3, . . . , t0 − 1} ∩ S

} if rj0 and t′′

even (odd),

min{{rj0 + 1, rj0 + 3, . . . , t0 − 1} ∩ S

} if rj0 even (odd)and t′′ odd (even).

Go to Step 3.

� Else,

t′ =

min

{{rj0 + 1, rj0 + 3, . . . , t0 − 1} ∩ S

} if rj0 and t′′

even (odd),

min{{rj0 + 1, rj0 + 3, . . . , t0 − 1} ∩ S

} if rj0 even (odd)and t′′ odd (even).

– If t′ = ∅, then set xj0t′′ = 0. Go to Step 2.– Else, go to Step 3

Step 3 Set x′j0t′ = 1, set x′′j0t′′ = 1.For all j 6= j0, set x′jt′ = 0 and set x′′jt′′ = 0.J = J\{j0}.S = S\{t′, t′′}. Go to Step 1.

Step 4 j0 = J . t′ = min{S}. Set x′j0t′ = 1 and x′′j0T = 1. STOP.

Algorithm 4.6 looks for the smallest t for which x′′jt is positive. When thereare more than two jobs j for which this variable is positive, the one with lowestindex j is picked. When the variable is equal to one, the first part is scheduledbefore the second part and as early as possible. When x′′jt < 1, it is checkedwhether the first part can be scheduled before the second part. If this is thecase, the first part is scheduled as early as possible (say to time interval t) andx′′jt is set to one. All other variables involving either t or t are set to zero. Jobj and time intervals t and t will no longer be taken into consideration and theprocess is repeated until all jobs are (re)scheduled. Note that by Step 4, it isassured that the final job j is completed at the final time interval. This step isnecessary, since the fractional solution might have xjT = 0 for final job j. This

54

Page 55: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

happens for example in the example presented above.

Note that step 2 takes at most 2T + n + 1 steps. In the worst case scenario,step 2 is executed

T − 2 + T − 4 + . . . + T − 2(n− 1) =nT

2− T

times. Step 3 takes at most (4+n) steps and is executed n times. Step 0 takes 2steps, step 1 takes 1 step and is executed n times, and step 4 takes 4 steps. Bothstep 0 and step 3 are executed only once. Hence, the computational complexityof Algorithm 4.6 is O(T 2).

In the following theorem it is proven that Algorithm 4.6 always leads to anintegral optimal solution.

Theorem 4.7 Starting with a fractional integral optimal solution of the prob-lem 1|pmtn; pj = 2; rj |

∑wjCj, an integral optimal solution can be obtained by

application of Algorithm 4.6.

Proof: Let us consider three cases, to which all instances of fractional so-lutions can be reduced by repetitive application of Algorithm 4.6, or of whichthey are combinations:

1. x′jt + x′′kt = 1, x′jt > 0 and x′′kt > 0;

a. j 6= k;

b. j = k;

2. x′jt + x′kt = 1, x′jt > 0 and x′kt > 0, j 6= k;

3. x′′jt + x′′kt = 1, x′′jt > 0 and x′′kt > 0, j 6= k.

Case 1a. Call the resulting schedule S1. Application of Algorithm 4.6 leads

x′jt = λ . . . x′j,t+d = 1− λ x′′j,t+d+1 = 1x′k,t−1 = 1 x′′kt = 1− λ . . . x′′k,t+d = λ

Figure 4.1: Schedule S1, where d ∈ {2, 4, 6, . . .}, 0 < λ < 1

to the restructured schedule in which x′′kt = 1 and x′j,t+d = 1, and the othervariables are as in S1. Call this new integer schedule S′1. Note that the weightedcompletion time of job k is strictly less in schedule S′1 than in schedule S1, con-tradicting the optimality of S1.

Case 1b. Without loss of generality the following two options are considered:

x′l,t−d1= λ . . . x′jt = λ . . . x′′j,t+d2

= λ

x′j,t−d1= 1− λ . . . x′′jt = 1− λ . . . x′l,t+d2

= 1− λ

Figure 4.2: Schedule S2, where d1, d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1.

55

Page 56: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

x′′l,t−d1= λ . . . x′jt = λ . . . x′′j,t+d2

= λ

x′j,t−d1= 1− λ . . . x′′jt = 1− λ . . . x′′l,t+d2

= 1− λ

Figure 4.3: Schedule S3, where d1, d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1.

Consider schedule S2. Application of Algorithm 4.6 leads to the schedule inwhich job j is processed during the time intervals t − d1 and the first part ofjob l is processed during time interval t + d2. Hence, the weighted completiontime of job j improves while all other completion times remain the same, whichcontradicts the assumption of optimality.

Consider schedule S3. The weighted completion time of jobs l and j is givenby

wlCl + wjCj = λ(t− d1)wl + (1− λ)(t + d2)wl + (1− λ)twj + λ(t + d2)wj

= (t + d2 − λ(d1 + d2))wl + t + λd2)wj

By application of Algorithm 4.6, job l is finished at time interval t− d1 and jobk is processed during the time intervals t and t + d2. Note that the objectivevalues only remain the same when

(t + d2 − (d1 + d2)λ)wl + (t + λd2)wj = (t− d1)wl + (t + d2)wj , ⇒(d1 + d2)(1 + λ)wl = (1 + λ)d2(1 + λ)wj , ⇒

wl =d2

d1 + d2

When wl > d2d1+d2

the objective value improves, contradicting the assumptionof optimality of the fractional solution. Similarly, when wl < d2

d1+d2, it can be

shown that the schedule in which job j is processed during time intervals t− d1

and t and job l is finished at time interval t + d2 is strictly better than the frac-tional schedule. It thus follows that schedule S3 only occurs when wl = d2

d1+d2.

Case 2. There are two possible schedules, S4 and S5.

x′j,t = λ . . . x′′j,t+d1= λ . . . x′

j,t= 1− λ . . . x′′

j,t+d2= 1− λ

x′k,t = 1− λ . . . x′′k,t+d1= 1− λ . . . x′

k,t= λ . . . x′′

k,t+d2= λ

Figure 4.4: Schedule S4, where d1, d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1.

x′j,t = λ . . . x′j,t+d1= 1− λ . . . x′′j,t+d2

= 1 . . .

x′k,t = 1− λ . . . x′k,t+d1= λ . . . . . . x′′k,t+d3

= 1

Figure 4.5: Schedule S5, where d1 ∈ {2, 4, 6, . . .}, d2, d3 ∈ {3, 5, 7, . . .}, d2 > d1,d3 > d2, 0 < λ < 1.

Consider S4. Without loss of generality assume that j < k. Application ofAlgorithm 4.6 leads to the schedule in which job j is scheduled at time intervalst and t + d1 and job k at time intervals t + d2. Note that wj = wk in order for

56

Page 57: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

S4 to be optimal. Now consider S5. The algorithm schedules the first part ofjob j to interval t, and the first part of job k to t+d1, which leads to an optimalintegral schedule.

Case 3. Without loss of generality, assume that j < k. There are two possibleschedules. One of them is equal to S4, the other is depicted in Figure 4.5. It is al-

x′j,t = 1 . . . x′′j,t+d2= λ . . . x′′j,t+d3

= 1− λ

. . . x′k,t+d1= 1 x′′k,t+d2

= 1− λ . . . x′′k,t+d3= λ

Figure 4.6: Schedule S6, d1 ∈ {2, 4, 6, . . .}, d2, d3 ∈ {3, 5, 7, . . .}, d2 > d1,d3 > d2, 0 < λ < 1.

ready shown how the algorithm transform S4 into an integral schedule. Considerschedule S6. After application of Algorithm 6.4, job j is finished at t+d2 and jobk at t+d3. The resulting schedule is optimal and integral. Note that wj = wk inorder for S6 to be optimal. Since all cases are now examined, this completes theproof of Theorem 4.7. �

In conclusion, it follows that an optimal solution for 1|pmtn; pj = 2; rj |∑

wjCj

can be found by solving (P) and applying Algorithm 4.6 afterwards when theoptimal solution that is found for (P) appears to be fractional.

4.5 Optimality Conditions

In this section, some optimality conditions are derived from ComplementarySlackness. First, Complementary Slackness is formulated.

4.5.1 Complementary Slackness

For notational convenience the matrix A is introduced:

A =

BCD

.

Let Ai, i ∈ {1, . . . , T 2} denote the ith column of A. The following is knownas Complementary Slackness (CS).

Complementary Slackness A pair of vectors x and (p, q, s) that are feasiblesolutions to the primal and dual model respectively, are both optimal solutionsif and only if

p′j(bjx− 1) = 0 j = 1, . . . , n,

p′′j (bj+nx− 1) = 0 j = 1, . . . , n,

qt(ctx− 1) = 0 t = 1, . . . , T,

sm(dmx− 0) = 0 m = 1, . . . , n(T − 1),

and

((p, q, s)Ai − wi)xi = 0 i = 1, . . . , T 2.

57

Page 58: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Here, bj denotes the jth row of B (similar for ct and dm) and vi and wi denotethe ith element of v and w.

Hence, from CS it follows that a pair of vectors v and (p, q, s) that are feasiblesolutions to the primal and dual model respectively, are both optimal solutionsif and only if

p′j(T∑

t=1

x′jt − 1) = 0 j = 1, . . . , n (4.16)

p′′j (T∑

t=1

x′′jt − 1) = 0 j = 1, . . . , n (4.17)

qt(n∑

j=1

(x′jt + x′′jt)− 1) = 0 t = 1, . . . , T (4.18)

sm(∑t∈Tk

x′jt −∑t∈Tk

x′′j,t+1) = 0 j = 1, . . . , n (4.19)

k = 1, 3, 5, . . . , T − 1 and wherem = (j − 1)(T − 1) + k

sm(∑t∈Ul

x′jt −∑t∈Ul

x′′j,t+1) = 0 j = 1, . . . , n (4.20)

l = 2, 4, 6, . . . , T − 2 and wherem = (j − 1)(T − 1) + l

(p′j + qt +∑

m∈Fjt

sm − w′jt)x

′jt = 0 j = 1, . . . , n (4.21)

t = 1, . . . , T − 1(p′j + qT − w′

jT )x′jT = 0 j = 1, . . . , n (4.22)(p′′j + q1 − w′′

j1)x′′j1 = 0 j = 1, . . . , n (4.23)

(p′′j + qt −∑

m∈Fj,t−1

sm − w′′jt)x

′′jt = 0 j = 1, . . . , n (4.24)

t = 2, . . . , T.

4.5.2 Example

It can easily be checked that the optimal solutions of (P) and (D) found inSections 4.2.2 and 4.3.2 do satisfy CS. However, it was already indicated thatinspection of the cost matrix in Table 4.2 leads one to suspect that there isanother optimal assignment of job parts to time intervals, namely:

x′11 = 1, x′29 = 1, x′33 = 1, x′44 = 1, x′55 = 1,x′′12 = 1, x′′2,10 = 1, x′′38 = 1, x′′47 = 1, x′′56 = 1,

which leads to the feasible schedule (1, 1, 3, 4, 5, 5, 4, 3, 2, 2). Take j = 3, l = 3and m = 21. Checking (4.20) gives

s21(x′31 + x′33 − x′′32 − x′′34) = 12× 1 6= 0,

58

Page 59: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

This implies that CS is violated and that the schedule (1, 1, 3, 4, 5, 5, 4, 3, 2, 2)can not be optimal.

4.5.3 Optimality Conditions

From the Total Dual Integrality of (?), it follows that there always exists anintegral optimal solution to (P). This has the following implications for (4.16) -(4.24).

Assume the optimal solution to (P) is given by the integral vector x∗. Notethat in any optimal solution x∗ of (P), x′jt = 1 (x′′jt = 1) only if w′

jt = 0(w′′

jt < ∞).Since the terms in parentheses in (4.16), (4.17) and (4.18) are zero for each

possible vector x∗, it follows that they do not impose any restrictions on p′j , p′′jand qt for all j respectively t.

From (4.19) and (4.20) it follows that sm = 0 for certain j and t and

m ∈ {κj + t, κj + t + 2, . . . , κj + T − 3}

if and only if x′jt = 1 and x′′j,t+1 6= 1; Hence, sm is zero for certain m if and onlyif the second part of a job is not scheduled immediately after its first part. Inall other cases, sm ≥ 0. Since x′jT = 0 and x′′j1 = 0 in any optimal solution of(P), (4.22) and (4.23) do not impose any restrictions on p′j , p′′j , q1 and qT .

It remains to show how (4.21) and (4.24) are affected by x∗. There are twocases to consider:

Case 1 x′jt = 1 and x′′j,t+1 = 1 for certain j and t;

Case 2 x′jt = 1 and x′′j,t+d = 1 for certain j, t and d ∈ {3, 5, 7, . . .}.

Case 1. In this case, it follows from (4.19) and (4.20) that sm ≥ 0,m ∈ {(j − 1)(T − 1) + 1, . . . , j(T − 1)}. From (4.21) and (4.24) it followsthat

p′j + qt + ϕ = 0,

p′′j + qt+1 − ϕ = w′′j,t+1,

where ϕ =∑

m∈Fjtsm. Adding both equations gives:

p′j + p′′j + qt + qt+1 = w′′j,t+1.

From the objective function of (D) it follows that p′j , p′′j , qt and qt+1 are chosensuch that their sum is as large as possible. Note that whatever value they take,their sum is equal to w′′

j,t+1. By optimality of x∗ it is clear that x′js = 0 for alls 6= t, x′kt = 0 for all k 6= j, x′′js = 0 for all s 6= t+1 and x′′k,t+1 = 0 for all k 6= j.Therefore, none of the variables under consideration is restricted by some otherequation (4.16) - (4.24). However, in order to be feasible in (D), they naturallyneed to satisfy the constraints corresponding to (D).

Case 2. In this case, it follows from (4.19) and (4.20) that sm = 0, for allm ∈ {κj + t, κj + t + 2, . . . , κj + t + d− 3} and sm ≥ 0 for all other m. Recallthat κj = (j − 1)(T − 1).

59

Page 60: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

From (4.21) and (4.24) it follows that

p′ + qt + γ + η = 0,

p′′j + qt+d − η = w′′j,t+d,

whereγ =

∑m∈Fjt\Fj,t+d−1

sm,

Fjt\Fj,t+d−1 = {κj + t, κj + t + 2, . . . , κj + t + d− 3},

andη =

∑m∈Fj,t+d−1

sm,

Fj,t+d−1 = {κj + t + d− 1, κj + t + d + 1, . . . , κj+1},

when t is odd and

Fj,t+d−1 = {κj + t + d− 1, κj + t + d + 1, . . . , κj + T − 2},

when t is even. It thus follows that γ = 0.Just as in case 1, adding the two equations gives:

p′j + p′′j + qt + qt+d = w′′j,t+d.

From the objective function of (D) it follows that p′j , p′′j , qt and qt+d are chosensuch that their sum is as large as possible. Note that whatever value they take,their sum is equal to w′′

j,t+d. By optimality of x∗ it follows that x′js = 0 for alls 6= t, x′kt = 0 for all k 6= j, x′′js = 0 for all s 6= t+d and x′′k,t+d = 0 for all k 6= j.Therefore, none of the variables under consideration is restricted by some otherequation (4.16) - (4.24). However, in order to be feasible in (D) they need tosatisfy the constraints corresponding to (D).

Summarizing, the existence of an integral optimal solution to (P) impliesthe following for the dual variables:

� For every j, there is at least one t ∈ {1, . . . , T − 1} for which

p′j + qt +∑

m∈Fjt

sm = w′jt.

� For every j, there is at least one t ∈ {2, . . . , T} for which

p′′j + qt −∑

m∈Fj,t−1

sm = w′′jt.

� For t = 1 there is at least one j ∈ {1, . . . , n} such that

p′j + q1 +∑

m∈Fj1

sm = w′jt.

60

Page 61: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

� For each t ∈ {2, . . . , T − 1} there is at least one j ∈ {1, . . . , n} for whicheither

p′j + qt +∑

m∈Fjt

sm = w′jt, or

p′′j + qt −∑

m∈Fj,t−1

sm = w′′jt.

� For t = T there is at least one j ∈ {1, . . . , n} such that

p′′j + qT −∑

m∈Fj,T−1

sm = w′′jt.

61

Page 62: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 63: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 5

Minimizing the TotalWeighted Completion Timewhen pj = p

In Chapter 4 it is shown that the problem 1|pmtn; pj = 2; rj |∑

wjCj is poly-nomially solvable. However, the question is whether the more general problem1|pmtn; pj = p; rj |

∑wjCj is polynomially solvable as well. In this chapter a

BLP model will be presented for this problem. The model is based on a genera-lization of Theorem 4.1 and is in itself a logical extension of the model presentedin Chapter 4. By means of the concept of TDI, it is proven that the problem ispolynomially solvable.

5.1 The Model

Consider the following Theorem, which is a generalization of Theorem 4.1:

Theorem 5.1 In an optimal schedule of the problem 1|pmtn; pj = p; rj |∑

wjCj,there are either zero, p, or a multiple of p time intervals between the intervalsto which two subsequent parts of a job are assigned.

Proof: The proof is similar to the proof of Theorem 4.1. �

The notation that is used in the general model is slightly different from thenotation in Chapter 4. In addition to j and t, the following indices are intro-duced:

k ∈ {1, 2, . . . , p} the job parts;a ∈ {1, 2, . . . , n} index used to construct subsets of time intervals;b ∈ {1, 2, . . . , p} index used to construct subsets of time intervals.

Also note, that T = np now. Furthermore, the following decision variablesare used:

xjkt ={

1 if job j’s kth part is assigned to time interval t0 otherwise.

63

Page 64: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

The weights for parts 1, . . . , p− 1 are given by

wjkt ={

0 for all j, for T − p + k ≥ t ≥ rj + k∞ otherwise.

and for part p by

wjpt ={

wjt for all j, for t ≥ rj + p∞ otherwise.

Now define:

Tab ={

∅ if b = p ∧ a = n{b, b + p, b + 2p, . . . , b + (a− 1)p} otherwise.

to be a subset of time intervals.

The BLP model is formulated as follows:

minn∑

j=1

p∑k=1

T∑t=1

wjktxjkt

subject toT∑

t=1

xjkt ≥ 1 j = 1, . . . , n k = 1, . . . , p (5.1)

n∑j=1

p∑k=1

xjkt = 1 t = 1, . . . , T (5.2)

∑t∈Tab

xjkt −∑

t∈Tab

xj,k+1,t+1 ≥ 0 j = 1, . . . , n k = 1, . . . , p− 1 (5.3)

for all Tab

xjkt ∈ {0, 1} j = 1, . . . , n k = 1, . . . , p (5.4)t = 1, . . . , T.

Constraints (5.1) assure that each job part is assigned to at least one time in-terval and constraints (5.2) state that exactly one job part must be assigned toeach time interval. These constraints correspond to constraints (4.1) - (4.3) ofthe BLP model for p = 2. Constraints (5.3) states that the job parts have to beprocessed in the right order and that the number of time intervals between twosubsequent job parts is either zero or a multiple of p. Note that Tab = ∅ whenboth b = p and a = n, since the final time interval T does not need to be a partof Tab: only the pth part of a job can be assigned to it.

Note that a regular ILP model is obtained when constraints (5.4) are replacedby

xjkt ∈ Z+,

and that the LP relaxation is obtained when they are replaced by

xjkt ≥ 0.

64

Page 65: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

5.2 Computational Complexity

Result 5.2 The problem 1|pmtn; pj = p; rj |∑

wjCj is polynomially solvable.

Proof: This result is a direct consequence of the Total Dual Integrality of thesystem of (in)equalities determined by the LP relaxation of Section 5.1. In or-der to prove that this system is TDI, it has to be shown that the correspondingdual model always has an integral optimal solution. This is proven in AppendixB.1. Since the weight vector consisting of all parameters wjkt is integral, andsince the constraint matrix of the LP relaxation is integral, the desired resultimmediately follows from the definition of a TDI system. �

5.2.1 A Polynomial Time Algorithm

Now that it is proven that there exists a polynomial time algorithm that solves1|pmtn; pj = p; rj |

∑wjCj , the question arises how this algorithm works. As

was already shown in Chapter 4, the optimal solution of the LP relaxationpresented in Section 5.1 that is found by a LP solver might be fractional. Thisis the case when the optimum is attained in a fractional vertex. However, anintegral optimal solution can be constructed by means of Algorithm 5.3, whichis a generalization of Algorithm 4.6.

Algorithm 5.3

Step 0 Set J = {1, 2, . . . , n}, S = {1, 2, . . . , T}.

Step 1 If |J | = 1 then go to Step 4.Else, go to Step 2.

Step 2 Set Xp = {xjpt|xjpt > 0, j ∈ J, t ∈ S}.Define tp = arg mint∈S{xjpt ∈ Xp}, j0 = arg minj∈J{xjptp ∈ Xp}.

� If xj0ptp= 1,

– Let

t1 = min{{rj0 + i, . . . , tp − 2p + 1, tp − p + 1} ∩ S

},

where 1 ≤ i = tp − r0 − cp + 1 ≤ p, and i, c ∈ N.For k = 2, . . . , p− 1 do

tk = min{{tk−1 + 1, tk−1 + p + 1, . . . , tp − p + k} ∩ S

}.

Go to Step 3.

� Else, set

t1 = min{{rj0 + i, . . . , tp − 2p + 1, tp − p + 1} ∩ S

},

where 1 ≤ i = tp − r0 − cp + 1 ≤ p, and i, c ∈ N,and for k = 2, . . . , p− 1

tk = min{{tk−1 + 1, tk−1 + p + 1, . . . , tp − p + k} ∩ S

}.

65

Page 66: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

– If tk = ∅ for some k = 1, 2, . . . , p− 1, then set xj0ptp= 0. Go to

Step 2.– Else, go to Step 3

Step 3 For all k ∈ {1, 2, . . . , p} set xj0ktk= 1.

For all j 6= j0, for all k ∈ {1, 2, . . . , p} set xjktk= 0.

J = J\{j0}.S = S\{t1, t2, . . . , tp}. Go to Step 1.

Step 4 j0 = J . t1 = min{S}.For k = 2, . . . , p− 1 do tk = min{S\{t1, . . . , tk−1}.Set xj0ktk

= 1 and xj0pT = 1. STOP.

The algorithm works in the same way as Algorithm 4.6. First, the small-est t for which xjpt > 0 is taken under consideration. If its value is one, allpreceding parts are scheduled to appropriate time intervals. If xjpt < 1, it ischecked whether the first p − 1 job parts can be scheduled in the right orderbefore tp. If this is possible, all corresponding variables including xjpt are setto one, otherwise xjpt is set to zero and the procedure repeats itself.

Step 0 takes 2 steps to execute and step 1, which is executed n times, takes2 steps. Step 2 takes at most T + n + T (p− 1) + p− 1 steps to execute. In theworst case scenario, step 2 is executed

T − p + T − 2p + . . . + T − (n− 1)p =nT

2− T

times. Step 3 takes at most (p + n) steps and is executed n times. Finally, step4 takes 2p steps and is executed once. Hence, the computational complexity ofAlgorithm 5.3 is O(T 2).

Theorem 5.4 Starting with a fractional integral optimal solution of the prob-lem 1|pmtn; pj = p; rj |

∑wjCj, an integral optimal solution can be obtained by

application of Algorithm 5.3.

Proof: Suppose an optimal fractional solution of the LP relaxation is foundby the LP solver. Application of Algorithm 5.3 leads to an integral schedule, inwhich some jobs are completed earlier and some jobs are completed later. Byassumption of optimality of the fractional solution, the gains earned by com-pleting some jobs earlier can not be greater than the losses that are incurredby completing some other jobs later. Now suppose the losses are greater thanthe gains. Hence, jobs with high weights are moved too far to the back inthe integral schedule while the jobs with low weights are moved too much tothe front. By feasibility of the fractional optimal schedule, the jobs with highweights could be scheduled earlier and the jobs with low weights later. Thisleads to a cost reduction in comparison with the fractional schedule. Hence,this is a contradiction. It can be concluded that the optimal schedule obtainedby application of Algorithm 5.3 is optimal. �

In conclusion, it follows that an optimal solution for 1|pmtn; pj = p; rj |∑

wjCj

can be found by solving the LP relaxation of Section 5.1 and by applying Algo-rithm 5.3 when the optimal solution that is for the LP relaxation is fractional.

66

Page 67: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

5.3 Example

At the website of Durr [13], a problem is presented in which 5 jobs with process-ing time 3 need to be scheduled. The release dates and job weights are given by

job j 1 2 3 4rj 0 1 3 4wj 3 100 3 10

This problem can be solved by the BLP model presented above. The optimalsolution of this problem is: given by

x111 = 1, x212 = 1, x31,10 = 1, x415 = 1,x128 = 1, x213 = 1, x32,11 = 1, x426 = 1,x129 = 1, x214 = 1, x33,12 = 1, x437 = 1,

and all other variables are equal to zero. This solution corresponds to theschedule

(1, 2, 2, 2, 4, 4, 4, 1, 1, 3, 3, 3).

The optimal value is 533. Note that the optimal value mentioned at the websiteof Durr [13] is not correct.

67

Page 68: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 69: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 6

Minimizing the TotalWeighted Tardiness

In this chapter the models for the problems 1|pmtn; pj = p; rj |∑

wjTj and1|pj = p; rj |

∑wjTj are presented and it is proven that they are polynomially

solvable. The models appear to be very similar to the models presented inChapters 4 and 5. In Section 6.1, the preemptive case is discussed, and inSection 6.2 the non-preemptive case.

6.1 The Preemptive Case

In Chapter 2 it was already mentioned that there is a strong similarity betweenthe problems 1|pmtn; pj = p; rj |

∑wjCj and 1|pmtn; pj = p; rj |

∑wjTj . The

only difference is that the costs of assigning final job parts to time intervalsare not only determined by the time interval under consideration, but also bythe due date of the job. The structure of both problems is the same. This isreflected by a variation of Theorem 5.1 that holds true when the total weightedtardiness is minimized.

Theorem 6.1 There always exists an optimal schedule for the problem1|pmtn; pj = p; rj |

∑wjTj, in which there are either zero, p, or a multiple

of p time intervals between the intervals to which two subsequent parts of a jobare assigned.

Proof: Suppose that the schedule S - in which the number of time intervalsbetween two subsequent parts A and B of job j is not a multiple of p - is optimal.Hence, we have that job j is interrupted by job k, but job j is completed beforejob k is fully processed.

Suppose part A of job j is scheduled at time interval t, and part B is sched-uled at time interval t+d, d /∈ {1, p+1, 2p+1, . . .}, and some parts of job k (butnot all) are scheduled somewhere in between. It can be safely assumed that somepart of job k is schedule at t+d, d ∈ {1, p+1, 2p+1, . . .}. Now interchange the po-sitions of part B of job j and the part of job k that is scheduled at t+d. All otherjob parts remain in the same position. Note that the number of time intervals be-tween part A and B of job j is now zero or even. Call the new schedule S′. Since

69

Page 70: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

no job is completed later in schedule S′ than in schedule S, it follows from theoptimality of S that S′ is optimal as well. This completes the proof of the theo-rem. �

It should be noted that in Theorem 6.1 an existential property of an optimalschedule is presented: ‘there is an optimal schedule with this property’, whereasTheorems 4.1 and 5.1 reveal universal properties: ‘all optimal schedules havethis property’ (see Tian et al. [34]). Consider for example the problem in whicha schedule has to be determined for two jobs, r1 = 0, r2 = 1, d1 = 3, d2 = 4.Although the schedule (1, 2, 1, 2) does not satisfy the property of Theorem 6.1,it is not difficult to see that is optimal.

A direct consequence of Theorem 6.1 is that the model of Chapter 5 canbe used to solve the problem 1|pmtn; pj = p; rj |

∑wjTj as well. The only

adjustment that has to be made concerns the weight vector w, which is redefinedas follows:

Let the weights for parts 1, . . . , p− 1 be given by

wjkt ={

0 for all j, for T − p + k ≥ t ≥ rj + k∞ otherwise.

and for part p by

wjpt =

0 for all j, for dj ≥ t ≥ rj + pwj(t− dj) for all j, for T ≥ t > dj

∞ otherwise.

6.1.1 Computational Complexity

Result 6.2 The problem 1|pmtn; pj = p; rj |∑

wjTj is polynomially solvable.

Proof: Since the weight vector w is integral and the dual of the LP relaxationpresented in Chapter 5 has an integral optimal solution for all proper probleminstances, it immediately follows that the system of (in)equalities determined bythe LP relaxation is TDI. This implies that 1|pmtn; pj = p; rj |

∑wjTj is poly-

nomially solvable. �

6.1.2 A Polynomial Time Algorithm

Now that it is proven that there exists a polynomial time algorithm that solves1|pmtn; pj = p; rj |

∑wjTj , the question arises how this algorithm works. Just

as in Chapters 4 and 5, the optimal solution of the LP relaxation presented inSection 5.1 that is found by a LP solver might be fractional. This is the casewhen the optimum is attained in a fractional vertex. It should be noted thata fractional solution is found far more often when the total weighted tardinessis minimized than when the total weighted completion time is minimized. Thishas to do with the fact that assigning the final job part to a certain time intervalhas zero costs as long as the due date is not reached. Hence, when two jobs arescheduled far before their own and each other’s due dates, they can be freelyinterchanged irrespective of their weights. Clearly, this is not the case whenthe total weighted completion time is minimized. When a fractional optimal

70

Page 71: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

solution is found by a LP solver, an integral optimal solution can be constructedby application of Algorithm 5.3. In Chapter 5 it is shown that this algorithmruns in O(T 2).

Theorem 6.3 Starting with a fractional integral optimal solution of the prob-lem 1|pmtn; pj = p; rj |

∑wjTj, an integral optimal solution can be obtained by

application of Algorithm 5.3.

Proof: The proof is similar to the proof of Theorem 5.4. �

6.1.3 Example

Consider the example of Chapter 2.2.1. It is given by

job j 1 2 3 4 5rj 0 1 2 3 4dj 5 8 7 7 6wj 1 3 7 16 33

The optimal solution is given by

x11 = 1, x29 = 1, x33 = 1, x44 = 1, x55 = 1,x′′12 = 1, y2,10 = 1, y38 = 1, y47 = 1, y56 = 1,

and all other variables are zero. Hence, it follows that

(1, 1, 3, 4, 5, 5, 4, 3, 2, 2)

is the optimal schedule and the objective value∑

wjTj is 13.

6.2 The Non-Preemptive Case

The difference between the preemptive problem 1|pj = p; rj |∑

wjTj and its non-preemptive counterpart, is that all job parts need to be scheduled successively,once the first job part is assigned to a time interval. This means that constraints(5.3) can be simplified in the non-preemptive case.

As was already indicated in Section 2.2.2, the optimal schedule of the prob-lem 1|pj = p; rj |

∑wjTj might contain idle time. As a consequence, the number

of time intervals that needs to be considered is larger. The maximum num-ber of idle time intervals in an optimal schedule is (n − 1)(T − 1). Therefore,all job parts have to be scheduled to one time interval t = 1, . . . , T , whereT = (n− 1)(p− 1) + np.

71

Page 72: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

6.2.1 The Model

In the model, the following indices are usedj ∈ {1, 2, . . . , n} job index;k ∈ {1, 2, . . . , p} job part index;t ∈ {1, 2, . . . , T} time index, where T = (n− 1)(p− 1) + np.

Furthermore, the following decision variables are used:

xjkt ={

1 if job j’s kth part is assigned to time interval t0 otherwise.

The weights for parts 1, . . . , p− 1 are given by

wjkt ={

0 for all j for T − p + k ≥ t ≥ rj + k∞ otherwise.

and for part p by

wjpt =

0 for all j for dj ≥ t ≥ rj + pwj(t− dj) for all j for T ≥ t > dj

∞ otherwise.

The BLP model is formulated as follows:

minn∑

j=1

p∑k=1

T∑t=1

wjktxjkt

subject toT∑

t=1

xjkt = 1 j = 1, . . . , n k = 1, . . . , p (6.1)

n∑j=1

p∑k=1

xjkt ≤ 1 t = 1, . . . , T (6.2)

xjkt − xj,k+1,t+1 ≥ 0 j = 1, . . . , n k = 1, . . . , p− 1 (6.3)t = 1, . . . , T − 1

xjkt ∈ {0, 1} j = 1, . . . , n k = 1, . . . , p (6.4)t = 1, . . . , T.

Note that the (in)equalities in constraints (6.1) and (6.2) are different in com-parison with constraints (5.1) and (5.2). This is caused by the fact that in thenon-preemptive case the number of job parts is smaller than the number of timeintervals. Constraints (6.1) assure that each job part is assigned to exactly onetime interval and constraints (6.2) state that each time interval must be assignedto at most one job part. Constraints (6.3) state that the job parts have to beprocessed in the right order and successively. Constraints (6.4) are the booleanconstraints.

The ILP model and the LP relaxation can be obtained by replacing con-straints (6.4) by

xjkt ∈ Z+ and xjkt ≥ 0,

respectively.

72

Page 73: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

6.2.2 Computational Complexity

Result 6.4 The problem 1|pj = p; rj |∑

wjTj is polynomially solvable.

Proof: This result is a direct consequence of the Total Dual Integrality of thesystem of (in)equalities determined by the LP relaxation of Section 6.2.1. In or-der to prove that this system is TDI, it has to be shown that the correspondingdual model always has an integral optimal solution. This is proven in AppendixB.2. Since the weight vector consisting of all parameters wjkt is integral, andsince the constraint matrix of the LP relaxation is integral, the desired resultimmediately follows from the definition of a TDI system. �

6.2.3 A Polynomial Time Algorithm

Just as in the preemptive case, the optimal solution to the LP relaxation thatis found by a LP solver might be fractional. By means of an algorithm thatis similar to Algorithm 5.3, an integral optimal solution can be constructed inpolynomial time. The algorithm is presented below.

Algorithm 6.5

Step 0 Set J = {1, 2, . . . , n}, S = {1, 2, . . . , T}.

Step 1 If |J | = 1 then go to Step 4.Else, go to Step 2.

Step 2 Set Xp = {xjpt|xjpt > 0, j ∈ J, t ∈ S}.Define tp = arg mint∈S{xjpt ∈ Xp}, j0 = arg minj∈J{xjptp

∈ Xp}.

� If xj0ptp= 1 then

– For k = 2, . . . , p− 1 set

tk = {tp − p + k},

� Else, set k = 1, . . . , p− 1

tk = {tp − p + k} ∩ S,

– If tk = ∅ for some k = 1, 2, . . . , p− 1, then set xj0ptp= 0. Go to

Step 2.– Else, go to Step 3

Step 3 For all k ∈ {1, 2, . . . , p} set xj0ktk= 1.

For all j 6= j0, for all k ∈ {1, 2, . . . , p} set xjktk= 0.

J = J\{j0}.S = S\{t1, t2, . . . , tp}. Go to Step 1.

Step 4 j0 = J . t1 = min{S}.For k = 2, . . . , p− 1 do tk = min{S\{t1, . . . , tk−1}.Set xj0ktk

= 1 and xj0pT = 1. STOP.

Algorithm 6.5 works in the same way as Algorithm 5.3. The only differenceis that parts 1, . . . , p−1 can only be scheduled at specific time intervals, becausepreemption is not allowed. The algorithm runs in O(T 2).

73

Page 74: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Theorem 6.6 Starting with a fractional integral optimal solution of the problem1|pj = p; rj |

∑wjTj, an integral optimal solution can be obtained by application

of Algorithm 6.5.

Proof: The proof is similar to the proof of Theorem 5.4. �

In conclusion, it follows that an optimal solution for 1|pj = p; rj |∑

wjTj

can be found by solving the LP relaxation of Section 5.1 and by application ofAlgorithm 6.5 when the optimal solution that is found for the LP relaxation isfractional.

6.2.4 Examples

Consider the example of Section 6.1.3:

job j 1 2 3 4 5rj 0 1 2 3 4dj 5 8 7 7 6wj 1 3 7 16 33

The optimal solution is given by

x111 = 1, x219 = 1, x313 = 1, x417 = 1, x515 = 1,x122 = 1, x2,2,10 = 1, x324 = 1, x428 = 1, x526 = 1,

and all other variables are zero. Hence, it follows that

(1, 1, 3, 3, 5, 5, 4, 4, 2, 2)

is the optimal schedule and the objective value∑

wjTj is 22.

When the release dates and due dates are replaced by

jobs 1 2 3 4 5rj 0 1 3 5 7dj 5 8 7 7 9

a non-delay optimal schedule is obtained:

2 2 3 3 4 4 5 5 1 1

The objective value of this schedule is 6.

74

Page 75: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 7

Computational Results

In this chapter some computational results are presented. All models (BLP,ILP and LP relaxation) were implemented in AIMMS 3.9 and tested for severalproblem instances using the CPLEX 11.2 solver. In these instances, the pro-cessing times of the jobs are either 2, 3 or 4 and the number of jobs varies from20 to 100. All problem instances can be found in Appendix C. The tests wereperformed on a 3 GHz, 4 GB RAM processor.

Algorithms 5.3 and 6.5 were not incorporated into AIMMS. Since CPLEXmakes use of presolvers, the BLP and ILP models can be solved very efficiently.In fact, for many cases the computation time for the Integer models is muchshorter than for the LP relaxation, due to the presolvers of CPLEX. This canbe seen for instance in Table 7.6.

The computational results are given in Tables 7.1 to 7.6. Note that when thecomputation time is written in italics, the optimal solution found by CPLEXis fractional. In Tables 7.1 and 7.2 the computational results for the problem1|pmtn; pj = p; rj |

∑wjCj are presented.

Table 7.1: CPU time in seconds and optimal solutions for the problem1|pmtn; pj = p; rj |

∑wjCj , for p = 2.

n Case BLP ILP LP relaxation Opt. Solution20 1 0.08 0.14 0.03 15,741

2 0.11 0.08 0.06 3,1183 0.14 0.09 0.08 4,2024 0.08 0.11 0.11 3,9035 0.17 0.14 0.14 9,669

50 6 1.50 1.50 1.37 35,1447 0.67 0.67 0.45 24,6998 1.08 1.05 0.94 44,0069 1.00 1.00 0.87 47,565

10 1.22 1.26 1.08 63,298100 11 14.99 14.66 11.98 142,370

12 5.19 5.24 2.28 99,507

In Tables 7.3 and 7.4 the computational results are given for the problem

75

Page 76: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table 7.2: CPU time in seconds and optimal solutions for the problem1|pmtn; pj = p; rj |

∑wjCj , with p = 3 and p = 4.

n p Case BLP ILP LP relaxation Opt. Solution50 3 13 19.02 18.99 16.88 50,226

14 11.08 11.06 11.90 29,17815 10.17 10.17 9.20 65,12116 5.18 5.15 3.46 80,221

30 4 17 11.40 11.48 10.28 26,62018 8.97 8.92 8.55 11,73719 8.44 8.35 4.96 28,89620 5.24 5.30 4.85 27,529

1|pmtn; pj = p; rj |∑

wjTj and in Tables 7.5 and 7.6 the results are given for1|pj = p; rj |

∑wjTj . From the tables, it immediately becomes clear that the

solution of the LP relaxation for the preemptive weighted tardiness problem isoften fractional. This is caused by the fact that in many cases it is possible tointerchange the positions of job parts, since the jobs are completed far beforetheir due dates. Because preemption is allowed, the job parts do not have to bescheduled successively which makes the occurrence of many optimal solutionspossible.

Table 7.3: CPU time in seconds and optimal solutions 1|pmtn; pj =p; rj |

∑wjTj , for p = 2.

n Case ILP Boolean LP relaxation Opt. Solution20 1 0.06 0.06 0.03 46

2 0.09 0.12 0.02 463 0.11 0.11 0.01 04 0.14 0.16 0.05 05 0.09 0.08 0.06 38

50 6 2.09 2.12 0.67 697 1.67 1.64 0.42 88 2.48 2.53 0.44 339 3.87 3.92 0.58 84

10 2.51 2.46 0.59 108100 11 37.10 37.08 6.79 2210

12 17.41 17.36 4.48 18

It is interesting to have a look at the differences between the optimal val-ues of the preemptive and non-preemptive problems. Therefore, the problem1|pj = p; rj |

∑wjCj is solved for all problem instances as well. The computa-

tional times are not given, but the optimal values are presented in Table 7.7.Naturally, when the optimal schedule of a preemptive problem is non-pre-

emptive, it is the optimal solution to the non-preemptive problem as well. InFigure 7.1 the differences in terms of percentages are given for the weighted com-pletion time problems, and in Figure 7.2 for the weighted tardiness problems.It immediately become clear that the gains from preemption are much higherwhen the total weighted tardiness is minimized than when the total weighted

76

Page 77: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table 7.4: CPU time in seconds and optimal solutions for the problem1|pmtn; pj = p; rj |

∑wjTj , with p = 3 and p = 4.

n p Case ILP Boolean LP relaxation Opt. Solution50 3 13 10.78 10.83 6.51 1457

14 27.49 27.75 6.58 23215 25.05 25.10 6.51 347616 16.22 16.43 4.94 9389

30 4 17 14.12 14.29 5.76 38018 13.59 13.57 5.18 23219 22.00 22.48 4.55 51220 25.18 24.90 4.49 142

Table 7.5: CPU time in seconds and optimal solutions 1|pj = p; rj |∑

wjTj , forp = 2.

n Case ILP Boolean LP relaxation Opt. Solution20 1 0.05 0.05 0.05 47

2 0.08 0.05 0.03 513 0.03 0.08 0.09 04 0.05 0.11 0.09 05 0.05 0.05 0.02 38

50 6 1.06 1.08 0.94 697 0.92 0.95 0.45 158 0.98 1.00 0.79 339 0.90 0.92 0.83 84

10 1.42 1.48 1.59 108100 11 13.68 13.73 25.07 2234

12 6.16 6.08 8.55 18

completion time is minimized. This can be explained by the fact that a smalldelay does lead to a relatively small increase when the total weighted completiontime is minimized, while it might be the difference between a penalty and nopenalty when the total weighted tardiness is minimized.

77

Page 78: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table 7.6: CPU time in seconds and optimal solutions for the problem 1|pj =p; rj |

∑wjTj , with p = 3 and p = 4.n p Case ILP Boolean LP relaxation Opt. Solution

50 3 13 15.54 15.58 34.71 148414 14.90 15.04 27.39 23215 14.81 14.93 20.94 358816 5.93 6.01 8.07 9588

30 4 17 14.73 14.56 18.25 46018 12.04 12.10 13.37 24219 11.31 11.29 16.35 51220 6.21 6.08 8.11 142

Table 7.7: Optimal solutions for the problem 1|pj = p; rj |∑

wjCj .Case Opt. Solution Case Opt. Solution

1 15,754 11 142,3702 3,127 12 99,5833 4,223 13 50,2264 3,910 14 29,2355 9,670 15 65,1726 35,144 16 80,5577 24,783 17 26,6738 44,177 18 11,7569 47,764 19 28,896

10 63,464 20 27,900

Figure 7.1: The differences in terms of percentages between the optimal valuesof the problems 1|pmtn; pj = p; rj |

∑wjCj and 1|pj = p; rj |

∑wjCj .

Page 79: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Figure 7.2: The differences in terms of percentages between the optimal valuesof the problems 1|pmtn; pj = p; rj |

∑wjTj and 1|pj = p; rj |

∑wjTj .

Page 80: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 81: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Chapter 8

Summary and ConcludingRemarks

In this thesis it is shown that the problems

1|pmtn; pj = p; rj |∑

wjCj ,

1|pmtn; pj = p; rj |∑

wjTj and

1|pj = p; rj |∑

wjTj ,

are polynomially solvable. The problems are modeled as Assignment Problemswith side constraints. The Assignment Problem has some nice properties thatexplain its polynomial solvability, namely Total Unimodularity and Total DualIntegrality. After the identification of a fundamental property of optimal sched-ules (see Theorems 5.1 and 6.1) it was possible to formulate the side constraintssuch that the system of (in)equalities determined by the LP relaxation remainedTotally Dual Integral. The polynomial solvability is a direct consequence of theproperty of Total Dual Integrality.

Now that the complexity status of these problems is known, Table 1.1 inwhich a schematic overview of the complexity status of single machine schedulingproblems is given can be updated. See Table 8.1. From this table, and fromthe website of Brucker and Knust [10], it follows that all open single machineproblems have now been solved. Therefore, in future research, more attentioncan be paid to other open machine scheduling problems.

It should be noted that the BLP models for the preemptive problems con-tain p2n2 decision variables and p(p − 1)n2 + (p + 1)n constraints. The BLPmodel for the non-preemptive problem contains p(p−1)n(n−1)+p2n2 decisionvariables and (2p−1)n2 +(1 1

2n−1)p+1 constraints. Many of these constraintsare superfluous, since part k of job j can generally not be processed at timeinterval 1, which is implied by (5.3) and (6.3), but not earlier than time inter-val t = rj + k. Depending on the problem instance, this could lead to quite alarge reduction on the number of constraints, without affecting the Total DualIntegrality of the system.

81

Page 82: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Since the models introduced in this thesis are based on the Assignment Prob-lem, it will be interesting to check whether pure combinatorial algorithms existthat solve the scheduling problems. A combinatorial algorithm could be foundby inspection of the primal and dual models and by the optimality conditionsthat arise from Complementary Slackness which are given in Section 4.5 for theproblem 1|pmtn; pj = 2; rj |

∑wjCj .

82

Page 83: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Tab

le8.

1:T

hepr

oble

ms

that

are

solv

edin

this

thes

isan

dpr

oble

ms

that

are

clos

ely

rela

ted

toth

em.

1||f

max

inP

1||∑ w

jC

jinP

1||∑ w

jT

j(*

)N

P-h

ard

1||∑ T

j(*

*)N

P-h

ard

1|p

j=

p|∑ w

jT

jinP

1|r j|L

max

NP

-har

d1|

r j|∑ C

jN

P-h

ard

1|r j|∑ T

jN

P-h

ard

1|r j|C

max

inP

1|p

j=

p;r

j|∑ w

jC

jinP

1|p

j=

p;r

j|∑ w

jTj

inP

1|p

j=

p;r

j|L

max

inP

1|p

j=

1;r j|∑ w

jT

jinP

1|p

j=

p;r

j|∑ T

jinP

1|pm

tn;p

rec;

r j|f

max

inP

1|pm

tn;p

rec;

r j|∑ C

jN

P-h

ard

1|pm

tn;p

rec;

r j|∑ T

jN

P-h

ard

1|pm

tn;p

rec;

pj

=p;r

j|∑ C

jinP

1|pm

tn;p

rec;

pj

=p;r

j|∑ T

jN

P-h

ard

1|pre

c;p

j=

p;r

j|∑ C

jinP

1|pre

c;p

j=

p;r

j|∑ T

jN

P-h

ard

1|pre

c;p

j=

p|∑ T

jN

P-h

ard

1|pm

tn;r

j|∑ w

jC

jN

P-h

ard

1|pm

tn;r

j|∑ w

jT

jN

P-h

ard

1|pm

tn;r

j|∑ C

jinP

1|pm

tn;r

j|∑ T

jN

P-h

ard

1|pm

tn;p

j=

p;r

j|∑ w

jCj

inP

1|pm

tn;p

j=

p;r

j|∑ w

jTj

inP

1|pm

tn;p

j=

p|∑ w

jC

jinP

1|pm

tn;p

j=

p|∑ w

jT

jinP

1|pm

tn;p

j=

p;r

j|∑ T

jinP

(*)

Pse

udo-p

oly

nom

ially

solv

able

for

spec

ialca

ses

(**)

Pse

udo-p

oly

nom

ially

solv

able

Page 84: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 85: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Appendix A

Complexity Results forSingle Machine Problems

The following is taken from the website of Brucker and Knust [10]. The singlemachine problems are divided into five classes:

1. Maximal polynomially solvable: the hardest problems which are polynomi-ally solvable, i.e., problems which are known to be polynomially solvable,but any harder cases are not known to be polynomially solvable.

2. Maximal pseudo-polynomially solvable: the hardest problems which areknown to be pseudo-polynomially (but not polynomially) solvable.

3. Minimal NP-hard: the easiest problems which are NP-hard, i.e., problemswhich are known to be NP-hard, but any easier cases are not known to beNP-hard.

4. Minimal open: problems for which the complexity status is not known,but all easier cases are known to be polynomially solvable.

5. Maximal open: problems for which the complexity status is not known,but all harder cases are known to be NP-hard.

� Maximal polynomially solvable problems are:1|prec; rj |Cmax

1|prec; pj = p; rj |Lmax

1|prec; pmtn; rj |Lmax

1|prec; pj = p; rj |∑

j Cj

1|prec; pmtn; pj = p; rj |∑

j Cj

1|pmtn; rj |∑

j Cj

1|pj = p; rj |∑

j wjCj

1|sp− graph|∑

j wjCj

1|pmtn; rj |∑

j Uj

1|pj = p; rj |∑

j wjUj

85

Page 86: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

1|pmtn; pj = p; rj |∑

j wjUj

1|pj = p; rj |∑

j Tj

1|pmtn; pj = p; rj |∑

j Tj

1|pj = 1; rj |∑

j wjTj

� Maximal pseudo-polynomially solvable problems are:1|pmtn; rj |

∑j wjUj

1||∑

j Tj

� Minimal NP-hard problems are:1|rj |Lmax

1|chains; pmtn; rj |∑

j Cj

1|prec|∑

j Cj

1|rj |∑

j Cj

1|chains; pj = 1; rj |∑

j wjCj

1|prec; pj = 1|∑

j wjCj

1|pmtn; rj |∑

j wjCj

1|chains; pj = 1|∑

j Uj

1||∑

j wjUj

1||∑

j Tj

1|chains; pj = 1|∑

j Tj

1||∑

j wjTj

� Minimal open problems are:1|pmtn; pj = p; rj |

∑j wjCj

1|pj = p; rj |∑

j wjTj

� Maximal open problems are:1|pj = p; rj |

∑j wjTj

1|pmtn; pj = p; rj |∑

j wjTj

References for each problem can be found on the website of Brucker andKnust [10].

Note that all minimal and maximal open single machine scheduling problemsthat are mentioned on the website of Brucker and Knust are solved in this thesis.

86

Page 87: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Appendix B

Proofs from Chapters5 and 6

In this appendix it is proven that the dual models corresponding to the LPrelaxation of Section 5.1 and Section 6.2 always have integral optimal solutions.In Section B.1. the dual model of Chapter 5 is considered, in Section B.2 theproof of Theorem 5.4 is given and in Section B.2 the dual model of Section 6.2.

B.1 The Dual Model of Chapter 5

The LP relaxation for the problem 1|pmtn; pj = p; rj |∑

wjCj can be writtenin matrix notation as follows:

min{wx |Bx ≥ 1, Cx = 1, Dx ≥ 0, x ≥ 0}.

Here, the vectors x and w are given by

x = (x11·, . . . , xn1·, x12·, . . . , xnn·) ∈ RT 2×1,

w = (w11·, . . . , wn1·, w12·, . . . , wnn·) ∈ R1×T 2,

and

xjk· = (xjk1, xjk2, . . . , xjkT ) j = 1, . . . , n k = 1, . . . , p,

wjk· = (wjk1, wjk2, . . . , wjkT ) j = 1, . . . , n k = 1, . . . , p.

The matrices B, C, J and K are the same as in Section 4.2.4. The matrixD is given by

D =

D1 D2 0 . . . 00 D1 D2 . . . 0...

.... . . . . .

...0 0 . . . D1 D2

∈ R(T−n)(T−1)×T 2,

where

D1 =

J 0 . . . 00 J . . . 0...

.... . .

...0 0 . . . J

∈ Rn(T−1)×nT ,

87

Page 88: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

and

D2 =

K 0 . . . 00 K . . . 0...

.... . .

...0 0 . . . K

∈ Rn(T−1)×nT ,

From the LP relaxation

min{wx |Bx ≥ 1, Cx = 1, Dx ≥ 0, x ≥ 0},

it follows that the dual model is given by

max{(1, . . . , 1) pt + (1, . . . , 1) qt | pB + qC + sD ≤ w, p ≥ 0, s ≥ 0}.

Here, p ∈ R1×T , q ∈ R1×T and s ∈ R1×(T−n)(T−1).

In order to write the dual problem out, the indices t and m are given by

Indicest ∈ {0, 1, . . . , T};m ∈ {1, . . . , (T − n)(T − 1)}.

Note that in comparison to the dual model presented in Chapter 4, the indext = 0 is added to the list of indices. This is a dummy index, which makes acompact formulation of the dual model possible. The indices j and k are as inSection 5.1.

Decision Variablespjk j = 1, . . . , n k = 1, . . . , p;qt t = 1, . . . T ;sm m = 1, . . . , (T − n)(T − 1).

Now define, for all j, for all k ∈ {1, . . . , p− 1} and for all t ∈ {1, . . . , T − 1}

Fjkt ={

{κjk + t, κjk + t + 2, κjk + t + 4, . . . , κj+1,k} for odd t{κjk + t, κjk + t + 2, κjk + t + 4, . . . , κjk + T − 2} for even t.

Here, κjk is a constant defined by κjk = (n(k − 1) + j − 1)(T − 1).

When k = p and/or t = 0 or t = T we have that

Fjkt = ∅.

88

Page 89: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

The dual model reads:

maxn∑

j=1

p∑k=1

pjk +T∑

t=1

qt

subject to pj1 + qt +∑

m∈Fj1t

sm ≤ wj1t j = 1, . . . , n (B.1)

t = 1, . . . , T

pjk + qt −∑

m∈Fj,k−1,t−1

sm +∑

m∈Fjkt

sm ≤ wjkt j = 1, . . . , n (B.2)

k = 2, . . . , p− 1 t = 1, . . . , T

pjp + qt −∑

m∈Fj,p−1,t−1

sm ≤ wjpt j = 1, . . . , n (B.3)

t = 1, . . . , T

pjk ≥ 0 j = 1, . . . , n (B.4)k = 1, . . . , p

sm ≥ 0 m = 1, . . . , (T − n)(T − 1).(B.5)

The dual variables and constraints could be interpreted in the same wayas in Section 4.3. Note that the only difference is, that most constraints nowcontain two subsets of the dual variables sm instead of one. From now on, let(D) denote the dual model just presented.

B.1.1 Integrality of the Dual Optimal Solution

Theorem B.1 There always exists an integral optimal solution to the dualproblem (D).

Proof: Suppose the optimal solution of (D) is not integral. Let us con-sider four cases, to which all instances of fractional solutions can be reduced byrepetitively applying the operations described below:

1 Only pjk or qt is fractional, for some j and k or t.

2a. Only pjk and qt are fractional, for some j, k and t.

2b. Only pjk and sm are fractional, for some j, k and m.

2c. Only pjk, qt and sm are fractional, for some j, t and m.

3. Only qt and sm are fractional, for some t and m.

4. Only sm is fractional for one or several m that are part of the same con-straints.

Case 1. Suppose that only pjk is fractional for some j and k. By integrality ofw, this implies that none of the constraints containing pjk is binding. Therefore,it is possible to replace pjk by dpjke, where dpjke is the rounded up value ofpjk. Since this leads to a better objective value, it contradicts the assumption

89

Page 90: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

of optimality. The same result holds true when qt is fractional.

Case 2a. Suppose pjk and qt are such that their sum is integer. By integralityof w, no constraint containing either pjk or qt (and not both) can be binding.Now replace pjk and qt by dpjke and bqtc. Since pjk + qt = dpjke + bqtc, theconstraint containing both variables is still feasible. All constraints containingonly dpjke are still feasible and possibly binding. Furthermore, the decrease ofqt does not cause any violations of constraints either. Since the objective valuedoes not change, it follows that an integral optimal solution is found.

Now suppose that the sum of pjk and qt is not integer. No constraint con-taining either pjk or qt can be binding, and the constraint containing both pjk

and qt can be binding only when pjk = −qt. It is not difficult to see that in thiscase, pjk and qt can safely be replaced by dpjke and bqtc when

dpjke+ bqtc = dpjk + qte,

and by dpjke and dqte when

dpjke+ dqte = dpjk + qte.

However, since dpjk +qte > pjk +qt, it follows that the objective value improvesby this change. This contradicts the assumption of optimality and completesthe proof of case 2a.

Case 2b. There are two cases to consider: either sm has a plus sign or ithas a minus sign in the constraint under consideration. Suppose it has a plussign. Since w is integral, no constraint containing either pjk or sm can hold withequality. One can easily check that pjk and sm can be replaced by dpjke andbsmc without causing any infeasibilities. Yet, since the objective value increasesby dpjke − pjk, the original solution cannot be optimal. This contradicts theassumption of optimality.

Now suppose sm has a minus sign. Following the same line of reasoning, pjk

and sm can be safely replaced by dpjke and dsme. Again, the objective valueincreases, contradicting the assumption of optimality. This completes the proofof case 2b.

Case 2c. This case is similar to case 2a, in which the sum of pjk and qt isnot integer, extended by the fact that sm is fractional as well for some m. Notethat when pjk + qt is integer, this case is a combination of case 2a and case 4and can be solved accordingly. Following the same line of reasoning as in case2a, pjk can be rounded up, and qt and sm can be rounded down when

dpjke+ bqtc ± bsmc = dpjk + qt ± sme.

Whendpjke+ dqte ± bsmc = dpjk + qt ± sme,

qt is rounded up instead of down and when

dpjke+ dqte ± dsme = dpjk + qt ± sme,

all three variables are rounded up. After this change, all constraints containingone, two or three of these variables still hold. However, the objective value

90

Page 91: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

improves when the variables are rounded, because the sum of pjk and qt is notinteger. This was already noted in case 2a and contradicts the assumption ofoptimality. This completes the proof of case 2c.

Case 3. Since w is integral, no constraint containing either qt or sm canhold with equality. It is not difficult to see that qt and sm can be replacedby dqte and bsmc without causing any violations of constraints. Yet, since theobjective value increases by dqje − qj , the original solution cannot be optimal.This contradicts the assumption of optimality and completes the proof of case 3.

Case 4. Assume that sm is fractional for exactly one m. No constraintcontaining sm can hold with strict equality. Since rounding down sm doesnot affect the objective value and since it does not lead to a violation of anyconstraint, it can be concluded that an integral optimal solution to the dualproblem exists.

Now assume that sm is fractional for several m that are part of the samesubset Fjkt. Consider the case in which sm1 , . . . , smn

, n ∈ N are fractional.Without loss of generality, assume that m1 < m2 < . . . < mn. Each variablesm needs to be rounded up or down. Denote the rounded variable sm by s′m.All s′m need to be such that⌊ n∑

j=i

smj

⌋≤

∑nj=i s′mj

≤⌈ n∑

j=i

smj

⌉, i = 1, . . . , n. (B.6)

holds true. When this is the case, all constraints containing one or more variablessmi

, i = {1, . . . , n} are satisfied, while the solution is integral and the objectivevalue remains the same. By optimality of the fractional solutions it immediatelyfollows that an integral optimal solution exists as well. So it remains to showthat the variables smi can be rounded up and down such that (B.6) holds.Starting at i = n, round smn up. Next, for i = n − 1, determine whethersmn−1 should be rounded up or down in order for (B.6) to hold true. Workingbackwards, do this for every remaining i = 1, . . . , n − 2. This results in anintegral optimal solution of the dual model.

It only remains to consider the case in which sm is fractional for severalm, where some m are elements of Fj,k−1,t−1 and some m are elements of Fjkt.Suppose m1 < m2 < . . . < mn1 are in Fj,k−1,t−1 and mn1+1 < . . . < mn1+n2

are in Fjkt, n1, n2 ∈ N. Again, all variables sm needs to be rounded up or down.Let the rounded value be denoted by s′m. When⌊ n1∑

j=i

smj

⌋≤

∑n1j=i s′mj

≤⌈ n1∑

j=i

smj

⌉, i = 1, . . . , n1, (B.7)

and ⌊ n2∑j=i

smj

⌋≤

∑n2j=i s′mj

≤⌈ n2∑

j=i

smj

⌉, i = n1 + 1, . . . , n2. (B.8)

all constraints containing one or several variables s′m still hold. It has alreadybeen shown how to construct the new variables s′m. Hence, an integral optimalsolution can be found. This completes the proof of case 4. Now that all cases arediscussed, the proof of Theorem B.1 is completed. �

91

Page 92: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

B.2 The Dual Model of Section 6.2

The LP relaxation for the general case can be written in matrix notation asfollows:

min{wx |Bx = 1, Cx ≤ 1, Dx ≥ 0, x ≥ 0}.

Here, the vectors x and w are given by

x = (x11·, . . . , xn1·, x12·, . . . , xnn·) ∈ RnpT×1,

w = (w11·, . . . , wn1·, w12·, . . . , wnn·) ∈ R1×npT ,

and

xjk· = (xjk1, xjk2, . . . , xjkT ) j = 1, . . . , n k = 1, . . . , p,

wjk· = (wjk1, wjk2, . . . , wjkT ) j = 1, . . . , n k = 1, . . . , p.

The matrices B, C and D are given by

B =

1T 0 . . . 00 1T . . . 0...

.... . .

...0 0 . . . 1T

∈ Rnp×npT ,

where 1T is a unit row vector containing T ones,

C =[

IT IT . . . IT

]∈ Rnp×npT ,

D =

D1 D2 0 . . . 00 D1 D2 . . . 0...

.... . . . . .

...0 0 . . . D1 D2

∈ Rn(p−1)(T−1)×npT ,

where

D1 =

J 0 . . . 00 J . . . 0...

.... . .

...0 0 . . . J

∈ Rn(T−1)×nT ,

J = [IT−1 0] ∈ R(T−1)×T ,

D2 =

K 0 . . . 00 K . . . 0...

.... . .

...0 0 . . . K

∈ Rn(T−1)×nT ,

andK = [0 − IT−1] ∈ R(T−1)×T .

From the LP relaxation

min{wx |Bx = 1, Cx ≤ 1, Dx ≥ 0, x ≥ 0},

92

Page 93: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

it follows that the dual model is given by

max{(1, . . . , 1) pt + (1, . . . , 1) qt | pB + qC + sD ≤ w, q ≤ 0, s ≥ 0}.

Here, p ∈ R1×np, q ∈ R1×np and s ∈ R1×n(p−1)(T−1).

In order to write the dual problem out, the indices t and m are given by

Indicest ∈ {0, 1, . . . , T};m ∈ {1, . . . , n(p− 1)(T − 1)}.

Note that the index t = 0 is added to the list of indices, just as in SectionB.1 This is a dummy index, which makes a compact formulation of the dualmodel possible. The indices j and k are as in Section 5.1.

Decision Variablespjk j = 1, . . . , n k = 1, . . . , p;qt t = 1, . . . T ;sm m = 1, . . . , n(p− 1)(T − 1).

Now define

Mjkt =

((k − 1)n + (j − 1)) (T − 1) + tj = 1, . . . , n k = 1, . . . , p− 1t = 1, . . . , T − 1

∅ if k = p ∨ t = T.

The dual model reads:

maxn∑

j=1

p∑k=1

pjk +T∑

t=1

qt

subject to pj1 + qt + sMj1t≤ wj1t j = 1, . . . , n (B.9)

t = 1, . . . , T

pjk + qt − sMj,k−1,t−1 + sMjkt≤ wjkt j = 1, . . . , n (B.10)

k = 2, . . . , p− 1 t = 1, . . . , T

pjp + qt − sMj,p−1,t−1 ≤ wjpt j = 1, . . . , n (B.11)t = 1, . . . , T

qt ≤ 0 j = 1, . . . , n k = 1, . . . , p (B.12)sm ≥ 0 m = 1, . . . , n(p− 1)(T − 1). (B.13)

The dual variables and constraints could be interpreted in the same way asin Section 4.3. Note that in this model, the constraints contain at most twovariables sm. From now on, let (D) denote the dual model just presented.

B.2.1 Total Dual Integrality

Theorem B.2 There always exists an integral optimal solution to the dualproblem (D).

93

Page 94: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Proof: Suppose the optimal solution of (D) is not integral. Let us con-sider four cases, to which all instances of fractional solutions can be reduced byrepetitively applying the operations described below:

1 Only pjk or qt is fractional, for some j and k or t.

2a. Only pjk and qt are fractional, for some j, k and t.

2b. Only pjk and sm are fractional, for some j, k and m.

2c. Only pjk, qt and sm are fractional, for some j, t and m.

3. Only qt and sm are fractional, for some t and m.

4. Only sm is fractional for one or two m that are part of the same constraint.

Case 1. Suppose that only pjk is fractional for some j and k. By integrality ofw, this implies that none of the constraints containing pjk is binding. Therefore,it is possible to replace pjk by dpjke, where dpjke is the rounded up value ofpjk. Since this leads to a better objective value, it contradicts the assumptionof optimality. The same result holds true when qt is fractional.

Case 2a. Suppose pjk and qt are such that their sum is integer. By integralityof w, no constraint containing either pjk or qt (and not both) can be binding.Now replace pjk and qt by dpjke and bqtc. Since pjk + qt = dpjke + bqtc, theconstraint containing both variables is still feasible. All constraints containingonly dpjke are still feasible and possibly binding. Furthermore, the decrease ofqt does not cause any violations of constraints either. Since the objective valuedoes not change, it follows that an integral optimal solution is found.

Now suppose that the sum of pjk and qt is not integer. No constraint con-taining either pjk or qt can be binding, and the constraint containing both pjk

and qt can be binding only when pjk = −qt. It is not difficult to see that in thiscase, pjk and qt can be safely replaced by dpjke and bqtc when

dpjke+ bqtc = dpjk + qte,

and by dpjke and dqte when

dpjke+ dqte = dpjk + qte.

However, since dpjk +qte > pjk +qt, it follows that the objective value improvesby this change. This contradicts the assumption of optimality and completesthe proof of case 2a.

Case 2b. There are two cases to consider: either sm has a plus or a minussign in the constraint under consideration. Suppose it has a plus sign. Since wis integral, no constraint containing either pjk or sm can hold with equality. Onecan easily check that pjk and sm can be replaced by dpjke and bsmc withoutcausing any infeasibilities. Yet, since the objective value increases by dpjke−pjk,the original solution cannot be optimal. This contradicts the assumption ofoptimality.

Now suppose sm has a minus sign. Following the same line of reasoning, pjk

and sm can be safely replaced by dpjke and dsme. Again, the objective value

94

Page 95: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

increases which contradicts the assumption of optimality. This completes theproof of case 2b.

Case 2c. This case is similar to case 2a, in which the sum of pjk and qt isnot integer, extended by the fact that sm is fractional as well for some m. Notethat when pjk + qt is integer, this case is a combination of case 2a and case 4and can be solved accordingly. Following the same line of reasoning as in case2a, pjk can be rounded up, and qt and sm can be rounded down when

dpjke+ bqtc ± bsmc = dpjk + qt ± sme.

Whendpjke+ dqte ± bsmc = dpjk + qt ± sme,

qt is rounded up instead of down and when

dpjke+ dqte ± dsme = dpjk + qt ± sme,

all three variables are rounded up. After this change, all constraints containingone, two or three of these variables still hold. However, the objective valueimproves when the variables are rounded, because the sum of pjk and qt is notinteger. This was already noted in case 2a and contradicts the assumption ofoptimality. This completes the proof of case 2c.

Case 3. Since w is integral, no constraint containing either qt or sm canhold with equality. It is not difficult to see that qt and sm can be replacedby dqte and bsmc without causing any violations of constraints. Yet, since theobjective value increases by dqje − qj , the original solution cannot be optimal.This contradicts the assumption of optimality and completes the proof of case 3.

Case 4. Assume that sm is fractional for exactly one m. No constraintcontaining sm can hold with strict equality. Since rounding down sm doesnot affect the objective value and since it does not lead to a violation of anyconstraint, it can be concluded that an integral optimal solution to the dualproblem exists.

Now assume that two variables sm that are part of the same solution arefractional. When both variables are rounded down, the constraint containingboth variables, as well as the constraints containing one of the two variables, stillhold. Hence, this leads to an integral optimal solution and completes the proofof case 4. Now that all cases are discussed, the proof of Theorem B.2 is com-pleted. �

95

Page 96: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 97: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Appendix C

Instances used forComputational Results

Table C.1: Instances with 20 jobs and p = 2.Case 1 Case 2 Case 3 Case 4 Case 5

Job rj dj wj rj dj wj rj dj wj rj dj wj rj dj wj

1 0 30 1 0 10 4 0 22 1 0 9 8 0 11 122 1 27 3 0 14 5 2 20 3 0 12 7 2 8 213 2 25 7 1 24 3 3 17 5 0 14 4 2 12 154 3 8 15 2 13 8 3 15 7 0 8 11 4 16 135 4 15 33 3 15 4 4 12 9 5 13 17 5 11 186 5 21 28 3 9 11 6 25 3 5 18 9 6 14 117 6 21 60 3 18 7 6 24 5 8 24 15 11 18 258 7 11 122 4 11 6 6 17 7 8 24 15 12 16 389 8 32 10 6 15 6 8 16 9 11 38 3 12 21 23

10 9 24 23 7 14 8 11 16 11 13 17 8 13 20 2911 10 15 50 7 21 11 14 28 5 18 26 5 14 17 3712 11 14 111 9 25 11 19 31 7 21 27 10 21 27 1413 12 20 45 10 36 2 19 35 9 24 28 9 22 30 1814 13 30 4 13 26 5 19 25 11 24 30 9 23 29 3715 14 35 18 17 32 9 21 31 13 25 32 11 24 33 1116 15 20 58 25 25 13 23 28 15 25 31 13 24 35 1017 16 35 66 25 31 13 29 36 11 31 36 15 31 39 1518 17 38 74 27 36 8 29 34 13 31 40 7 32 38 3019 18 27 101 31 39 9 34 39 15 33 40 3 32 37 3320 19 31 59 35 38 11 37 40 17 34 39 14 32 38 31

97

Page 98: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table C.2: Instances with 50 jobs and p = 2.Case 1 Case 2 Case 3 Case 4 Case 5

Job rj dj wj rj dj wj rj dj wj rj dj wj rj dj wj

1 0 50 1 0 23 3 0 75 9 0 18 29 0 24 12 1 18 4 0 19 8 1 80 7 0 15 46 1 20 103 2 18 11 2 31 4 1 33 33 0 36 14 2 16 1004 3 18 19 3 28 10 1 50 11 0 71 30 3 44 75 4 36 15 5 41 5 1 18 27 0 75 17 4 58 136 5 42 21 5 27 12 1 91 4 2 27 5 5 50 587 6 37 12 5 39 6 5 14 41 4 36 9 6 21 748 7 69 1 6 24 14 5 23 30 5 41 4 7 46 119 8 72 22 7 55 5 5 47 22 6 28 30 8 52 23

10 9 56 35 9 48 9 8 35 27 6 27 13 9 67 611 10 51 31 12 69 13 8 21 31 10 56 39 10 43 512 11 19 2 12 77 12 9 64 7 10 67 13 11 87 4813 12 72 28 15 20 18 9 51 19 10 78 26 12 34 9614 13 49 25 18 44 6 9 78 3 12 70 18 13 39 515 14 33 14 22 81 1 9 42 27 12 85 3 15 61 1416 15 78 1 23 50 7 9 67 22 14 47 9 17 30 3717 16 24 29 23 47 11 12 17 40 17 55 13 19 48 2618 17 27 25 24 59 2 13 91 6 19 80 45 20 59 5219 18 39 21 31 54 5 14 25 44 20 55 37 21 64 4220 19 45 27 35 40 16 15 38 21 20 77 13 22 78 3021 20 53 22 37 45 18 17 49 11 22 66 13 23 94 1022 21 69 33 40 73 3 19 55 26 27 35 18 23 80 223 22 88 40 43 71 4 21 50 27 30 44 26 23 80 224 23 48 24 43 68 19 22 44 28 31 91 1 23 72 525 24 30 21 44 73 12 22 42 32 31 91 20 25 50 5726 25 89 8 45 89 7 22 69 15 33 64 28 25 44 8327 26 62 1 52 78 14 25 72 14 35 70 48 25 58 7328 27 64 18 52 97 6 28 85 9 35 78 2 25 67 929 28 54 30 52 93 8 31 83 7 35 66 18 25 77 830 29 57 26 53 98 1 33 71 17 39 48 6 25 80 531 30 69 32 53 67 15 33 66 23 40 51 29 27 36 5632 31 80 17 58 68 20 35 58 21 42 53 18 27 91 3633 32 83 15 58 78 7 40 46 27 42 58 21 28 82 4734 33 45 2 59 88 8 45 69 16 43 71 30 28 77 5135 34 91 6 60 95 3 50 70 17 45 69 26 29 46 2336 35 77 9 63 87 16 52 94 2 46 83 27 30 52 8437 36 93 16 64 84 10 52 90 8 50 88 5 30 67 6538 37 98 28 68 79 8 58 80 44 50 86 10 30 72 5339 38 74 24 71 75 19 59 77 49 50 62 30 31 72 5340 39 62 30 71 79 2 61 95 1 57 69 41 32 78 7441 40 47 33 72 88 10 65 93 14 57 74 44 32 85 4142 41 56 24 73 89 3 65 78 14 59 85 32 32 86 2343 42 80 23 79 91 7 67 79 17 61 90 3 32 81 1444 43 73 4 81 85 11 69 73 35 61 74 46 32 71 245 44 78 38 83 88 14 75 85 28 64 92 29 32 99 3646 45 80 6 83 87 14 75 88 41 65 73 38 32 88 6847 46 94 1 85 95 3 81 90 9 66 68 1 32 60 7548 47 74 2 91 97 15 81 95 31 67 80 34 32 90 7549 48 60 15 91 97 15 82 92 10 68 86 41 33 72 850 49 69 21 92 96 20 83 92 23 69 87 24 33 40 3

98

Page 99: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table C.3: Instances with 100 jobs and p = 2.Case 1 Case 2

Job rj dj wj job rj dj wj job rj dj wj job rj dj wj

1 0 41 1 51 50 77 21 1 0 10 3 51 93 103 52 1 66 4 52 51 89 12 2 0 21 8 52 94 145 123 2 20 11 53 52 164 1 3 2 46 4 53 94 148 64 3 78 19 54 53 119 22 4 3 13 10 54 94 156 145 4 35 15 55 54 81 35 5 5 26 5 55 100 142 56 5 36 21 56 55 95 31 6 5 47 12 56 101 190 97 6 99 12 57 56 181 2 7 5 15 6 57 102 173 138 7 140 1 58 57 167 28 8 6 27 14 58 104 110 129 8 16 22 59 58 150 25 9 7 49 5 59 105 128 3

10 9 67 35 60 59 94 14 10 9 19 9 60 108 150 411 10 52 31 61 60 83 1 11 12 33 13 61 109 179 1912 11 98 2 62 61 81 29 12 12 54 12 62 113 133 1213 12 87 28 63 62 89 32 13 15 25 18 63 113 174 714 13 27 25 64 63 67 17 14 18 39 6 64 121 197 1415 14 74 14 65 64 127 15 15 22 64 1 65 122 190 616 15 63 1 66 65 156 2 16 23 33 7 66 123 150 1117 16 67 29 67 66 180 6 17 23 44 11 67 123 143 1418 17 50 25 68 67 99 9 18 24 66 2 68 123 168 1419 18 44 21 69 68 80 16 19 31 41 5 69 125 175 320 19 66 27 70 69 100 28 20 35 56 16 70 130 160 1521 20 30 22 71 70 101 24 21 37 79 18 71 133 167 1522 21 27 33 72 71 94 30 22 40 54 3 72 137 169 2023 22 47 40 73 72 98 22 23 43 64 4 73 137 170 524 23 83 24 74 73 96 33 24 43 85 19 74 137 150 825 24 59 21 75 74 78 40 25 44 54 12 75 142 162 1926 25 50 8 76 75 151 24 26 45 67 7 76 142 166 227 26 47 1 77 76 163 21 27 52 94 14 77 148 173 1528 27 71 18 78 77 120 8 28 52 62 6 78 150 181 2129 28 80 30 79 78 137 9 29 52 93 8 79 151 186 1030 29 111 26 80 79 100 16 30 53 135 1 80 152 174 331 30 123 32 81 80 97 28 31 53 73 15 81 152 172 732 31 94 17 82 81 109 24 32 58 99 20 82 152 160 1133 32 66 15 83 82 126 30 33 58 140 7 83 152 192 434 33 72 2 84 83 134 33 34 59 79 8 84 158 168 735 34 169 6 85 84 181 24 35 60 101 3 85 159 173 736 35 135 9 86 85 189 15 36 63 185 16 86 162 179 837 36 78 16 87 86 170 21 37 64 84 10 87 162 191 1938 37 91 28 88 87 161 12 38 68 109 8 88 165 193 839 38 43 24 89 88 152 1 39 71 152 19 89 166 182 140 39 121 30 90 89 103 22 40 71 91 2 90 169 185 341 40 94 33 91 90 188 25 41 72 113 10 91 173 189 2042 41 58 24 92 91 190 21 42 73 157 3 92 173 178 543 42 63 23 93 92 113 12 43 79 99 7 93 179 183 844 43 163 4 94 93 147 1 44 81 163 11 94 179 187 1945 44 80 38 95 94 167 22 45 83 124 14 95 180 190 646 45 90 6 96 95 172 35 46 83 103 14 96 181 193 1447 46 92 1 97 96 110 31 47 85 126 3 97 185 191 548 47 57 2 98 97 130 2 48 91 173 15 98 188 198 949 48 57 15 99 98 108 28 49 91 101 15 99 189 193 1350 49 62 21 100 99 177 25 50 92 112 20 100 191 195 19

99

Page 100: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table C.4: Instances with 50 jobs and p = 3.Case 1 Case 2 Case 3 Case 4

Job rj dj wj rj dj wj rj dj wj rj dj wj

1 0 50 1 0 99 3 0 63 9 0 12 292 1 61 4 0 60 8 2 55 7 2 18 463 2 44 11 2 22 4 4 10 33 5 23 144 3 12 19 3 20 10 6 14 11 9 32 305 4 18 15 5 46 5 8 21 27 10 81 176 5 33 21 6 31 12 10 53 4 12 77 57 6 38 12 8 72 6 12 27 41 15 92 98 7 99 1 11 41 14 14 38 30 19 61 49 8 66 22 12 39 5 16 64 22 20 40 30

10 9 42 35 14 42 9 18 64 27 22 62 1311 10 53 31 15 35 13 20 34 31 25 58 3912 11 107 2 17 72 12 22 59 7 29 76 1313 12 39 28 19 56 18 24 88 19 30 81 2614 13 27 25 19 98 6 26 101 3 32 100 1815 14 45 14 21 107 1 28 43 27 35 111 316 15 109 1 22 44 7 30 92 22 39 85 917 16 88 29 24 43 11 32 77 40 40 91 1318 17 94 25 26 58 2 34 43 6 42 53 4519 18 63 21 26 69 5 36 88 44 45 61 3720 19 77 27 29 61 16 38 77 21 49 98 1321 20 81 22 31 40 18 40 103 11 50 70 1322 21 103 33 33 77 3 42 91 26 52 75 1823 22 35 40 35 80 4 44 87 27 55 80 2624 23 75 24 37 62 19 46 82 28 59 113 125 24 82 21 38 83 12 48 84 32 60 90 2026 25 84 8 39 82 7 50 60 15 62 93 2827 26 111 1 42 66 14 52 106 14 65 88 4828 27 17 18 43 104 6 54 91 9 69 104 229 28 85 30 43 112 8 56 95 7 70 96 1830 29 101 26 45 113 1 58 100 17 72 103 631 30 74 32 48 80 15 60 77 23 75 63 2932 31 62 17 51 87 20 62 68 21 79 80 1833 32 50 15 52 64 7 64 50 27 80 75 2134 33 88 2 53 78 8 66 101 16 82 77 3035 34 130 6 55 104 3 68 105 17 85 99 2636 35 121 9 57 136 16 70 63 2 89 80 2737 36 48 16 59 80 10 72 68 8 90 121 538 37 41 28 62 96 8 74 71 44 92 136 1039 38 71 24 64 112 19 76 83 49 95 111 3040 39 83 30 64 105 2 78 89 1 99 99 4141 40 141 33 64 132 10 80 78 14 100 101 4442 41 92 24 66 100 3 82 131 14 102 80 3243 42 103 23 67 95 7 84 92 17 105 92 344 43 78 4 70 124 11 86 101 35 109 93 4645 44 53 38 75 111 14 88 120 28 110 67 2946 45 63 6 80 139 14 90 90 41 112 68 3847 46 79 1 85 142 3 92 127 9 115 99 148 47 143 2 91 123 15 94 111 31 119 121 3449 48 103 15 91 141 15 96 108 10 120 80 4150 49 100 21 92 120 20 98 96 23 122 117 24

100

Page 101: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Table C.5: Instances with 30 jobs and p = 4.Case 1 Case 2 Case 3 Case 4

Job rj dj wj rj dj wj rj dj wj rj dj wj

1 0 50 1 0 99 3 0 63 9 0 12 292 1 59 4 0 60 8 2 55 7 2 18 463 2 44 11 2 22 4 4 10 33 5 23 144 3 12 19 3 20 10 6 14 11 9 32 305 4 18 15 5 46 5 8 21 27 10 81 176 5 33 21 6 31 12 10 53 4 12 77 57 6 38 12 8 72 6 12 27 41 15 92 98 7 99 1 11 41 14 14 38 30 19 61 49 8 66 22 12 39 5 16 64 22 20 40 30

10 9 42 35 14 42 9 18 64 27 22 62 1311 10 53 31 15 35 13 20 34 31 25 58 3912 11 107 2 17 72 12 22 59 7 29 76 1313 12 39 28 19 56 18 24 88 19 30 81 2614 13 27 25 19 98 6 26 101 3 32 100 1815 14 45 14 21 107 1 28 43 27 35 111 316 15 109 1 22 44 7 30 92 22 39 85 917 16 88 29 24 43 11 32 77 40 40 91 1318 17 94 25 26 58 2 34 43 6 42 53 4519 18 63 21 26 69 5 36 88 44 45 61 3720 19 77 27 29 61 16 38 77 21 49 98 1321 20 81 22 31 40 18 40 103 11 50 70 1322 21 103 33 33 77 3 42 91 26 52 75 1823 22 35 40 35 80 4 44 87 27 55 80 2624 23 75 24 37 62 19 46 82 28 59 113 125 24 82 21 38 83 12 48 84 32 60 90 2026 25 84 8 39 82 7 50 60 15 62 93 2827 26 111 1 42 66 14 52 106 14 65 88 4828 27 17 18 43 104 6 54 91 9 69 104 229 28 85 30 43 112 8 56 95 7 70 96 1830 29 101 26 45 113 1 58 100 17 72 103 6

Page 102: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 103: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Appendix D

List of Symbols andAbbreviations

d e rounded up integer value, 51, 52, 89–91, 94–95b c rounded down integer value, 51, 52, 89–91, 94–95(?) system of (in)equalities, 50(P ) primal model, 44(D) dual model, 47, 89, 93α machine environment, 14β job characteristics, 14γ objective criterion, 14κj constant, 47κjk constant, 88A constraint matrix, 57a job index, 63AP assignment problem, 28b job part index, 63B constraint matrix, 45, 92BLP boolean linear programming, 23C constraint matrix, 45, 92Cj completion time, 15CS complementary slackness, 24chains precedence relation, 15D constraint matrix, 45, 87, 92D1 submatrix of D, 87, 92D2 submatrix of D, 88, 92Dj deadline, 15dj due date, 15EDD earliest due date, 18, 19Fjt subset of index m, 47Fjkt subset of index m, 88fj monotone, non-decreasing cost function, 21

103

Page 104: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

i index, 57ILP integer linear programming, 23J constraint submatrix, 45, 92J set of jobs, 54, 65, 73j job index, 42, 71K constraint submatrix, 45, 92k odd time interval index, 42k job part index, 63, 71Lj lateness, 15LP linear programming, 23l even time interval index, 42Mjkt index, 93m index, 46, 88, 93n number of jobs, 27N set of natural numbers, 17NP class of non polynomially solvable problems, 17O(n) O-notation, 17P class of polynomially solvable problems, 17, 26, 83p vector of p′js and p′′j s (pjks), 47, (88, 93)pj processing time, 15p′j dual decision variable, 47p′′j dual decision variable, 47pjk dual decision variable, 88, 93pmtn preemption, 15prec precedence constraints, 15q vector of qts, 47, 88, 93qt dual decision variable, 45R set of real numbers, 23rj release date, 15, 42S set of time intervals, 54, 65, 73s vector of sms, 47, 88, 93sm dual decision variable, 47, 88, 93sp-graph precedence relation, 15Tk subset of odd time intervals, 43Tab subset of time intervals, 64T final time interval, 29, 31, 55Tj tardiness, 15t time index, 42, 71, 88, 93TDI total dual integrality, 25TU total unimodularity, 25Ul subset of even time intervals, 43Uj indicates whether job j is late or not, 15w vector of w′

jts and w′′jts (wjkts), 45, (87, 92)

wj job weight, 15w′

jt cost parameter, 42w′′

jt cost parameter, 42wjkt cost parameter, 64, 70, 72WSPT weighted shortest processing time, 18, 19

104

Page 105: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

x vector of x′jts and x′′jts (xjkts), 45, (87, 92)x′jt decision variable, 43x′′jt decision variable, 43xjkt decision variable, 63, 72Z+ set of nonnegative integers, 44, 64, 72

105

Page 106: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 107: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Bibliography

[1] Baker, K.R. (1974). Introduction to Sequencing and Scheduling. New York:John Wiley & Sons.

[2] Baker, K.R., E.L. Lawler, J.K. Lenstra and A.H.G. Rinnooy Kan (1983,Mar.-Apr.). Preemptive scheduling of a single machine to minimize maxi-mum cost subject to release dates and precedence constraints. OperationsResearch 31(2), 381–386.

[3] Bang-Jensen, J. and G. Gutin (2001). Digraphs: Theory, Algorithms andApplications. London: Springer.

[4] Baptiste, P. (2000). Scheduling equal-length jobs on identical parallel ma-chines. Discrete Applied Mathematics 103, 21–32.

[5] Baptiste, P., P. Brucker, S. Knust and V.G. Timkovsky (2004). Ten noteson equal-processing time scheduling. At the frontiers of solvability in poly-nomial time. Quarterly Journal of the Belgian, French and Italian Oper-ations Research Societies 2, 111–127.

[6] Baptiste, P., M. Chrobak, C. Durr, W. Jawor and N. Vakhania (2004).Preemptive scheduling of equal-length jobs to maximize weighted through-put. Operations Research Letters 32, 258–264.

[7] Baptiste, P., M. Chrobak, C. Durr and J. Sgall. A dynamical programfor 1|rj ; pmtn; pj = p|

∑wjCj for the special case when p > max ri.

Unpublished manuscript.http://www.lix.polytechnique.fr/˜durr/OpenProblems/1 rj pmtn pjp sumWjCj/

[8] Baptiste, P., M. Chrobak, C. Durr and J. Sgall. A linear program for1|rj ; pmtn; pj = p|

∑wjCj . Unpublished manuscript.

http://www.lix.polytechnique.fr/˜durr/OpenProblems/1 rj pmtn pjp sumWjCj/

[9] Brucker, P. (2004). Scheduling Algorithms (4th ed.). Berlin: Springer Ver-lag.

[10] Brucker, P and S. Knust. Complexity results for scheduling problems.http://www.mathematik.uni-osnabrueck.de/research/OR/class/

[11] Chen, B., C.N. Potts and G.J. Woeginger (1998). A review of machinescheduling: complexity, algorithms and approximability. In: D.-Z. Du andP.M. Pardalos (Eds.), Handbook of Combinatorial Optimization, Volume3, pp. 21–170. Boston, Dordrecht: Kluwer Academic Publishers.

107

Page 108: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

[12] Du. J. and J.Y.-T. Leung (1990, Aug.). Minimizing total tardiness on onemachine is NP-hard. Mathematics of Operations Research 15(3), 483–495.

[13] Durr, C. Minimizing total waiting time in preemptive equal job lengthscheduling or 1|rj ; pj = p; pmtn|

∑wjCj .

http://www.lix.polytechnique.fr/˜durr/OpenProblems/1 rj pmtn pjp sumWjCj/

[14] Garey, M.R. and D.S. Johnson (1979). Computers and Intractability. AGuide to the Theory of NP-Completeness. San Francisco: W.H. Freemanand Company.

[15] Gilbert, K.C. and R.B. Hofstra (1988). Multidimensional assignmentproblems. Decision Sciences 19(2), 306–321.

[16] Goldengorin, B. When preemptive schedules of equal-length jobs to min-imize the weighted completion time should be (not) interrupted. Unpub-lished manuscript.

[17] Graham, R.L., E.L. Lawler, J.K. Lenstra and A.H.G. Rinnooy Kan (1979).Preemptive scheduling of uniform machines subject to release dates. An-nals of Operations Research 5, 287–326.

[18] Jackson, J.R. (1955). Scheduling a production line to minimize maximumtardiness. Research Report 43, Management Science Research Project,University of California, Los Angeles.

[19] Kuhn, H.W. (1955). The Hungarian method for the assignment problem.Naval Research Logistics Quarterly 2(1-2), 83–97.

[20] Lawler, E.L. (1977). A ”pseudopolynomial” algorithm for sequencing jobsto minimize total tardiness. Annals of Discrete Mathematics 1, 331–342.

[21] Labetoulle, J., Lawler, E.L., Lenstra, J.K. and Rinnooy Kan, A.H.G.(1984). Preemptive scheduling of uniform machines subject to releasedates. In: W.R. Pulleyblank (Ed.), Progress in Combinatorial Optimiza-tion, New York: Academic Press, 245–261.

[22] Lenstra, J.K., A.H.G. Rinnooy Kan (1978). Complexity of scheduling un-der precedence constraints. Operations Research 26(1), 22–35.

[23] Lenstra, J.K., A.H.G. Rinnooy Kan and P. Brucker (1977). Complexityof machine scheduling problems. Annals of Discrete Mathematics 1, 343–362.

[24] Leung, J. Y-T. (2004). Handbook of Scheduling. Algorithms, Models andPerformance Analysis Chapman & Hall/CRC Computer and InformationScience Series. Boca Raton, Florida [etc.]: Chapman & Hall/CRC.

[25] Lieshout, P.M.D. and A. Volgenant (2007). A branch-and-bound algo-rithm for the singly constrained assignment problem. European Journalof Operational Research 176, 151–164.

[26] Mazzola, J.B. and A.W. Neebe (1986, Jul.-Aug.). Resource-constrainedassignment scheduling. Operations Research 34(4), 560–572.

108

Page 109: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

[27] Muller, F.M., M.M. Camozzato and O.C. Bassi de Araujo (2001, April).Exact algorithms for the imbalanced time minimizing assignment prob-lem. Electronic Notes in Discrete Mathematics 7, 122–125.

[28] Pinedo, M.L. (2005). Planning and Scheduling in Manufacturing and Ser-vices. Springer Series in Operations Research and Financial Engineering.New York: Springer.

[29] Pinedo, M.L. (2008). Scheduling. Theory, Algorithms and Systems (3rded.). New York: Springer.

[30] Schrijver, A. (1994). Theory of Linear and Integer Programming. Chich-ester [etc.]: John Wiley & Sons.

[31] Sierksma, G. (2002). Linear and Integer Programming. Theory and Prac-tice (2nd ed.). New York [etc.]: Marcel Dekker, Inc.

[32] Simons, B (1983). Multiprocessor scheduling of unit-time jobs with arbi-trary release times and deadlines. SIAM Journal on Computing 12, 294–299.

[33] Smith, W.E. (1956). Various optimizers for single-stage production. NavalResearch Logistics Quarterly 3, 59–66.

[34] Tian, Z.J., C.T. Ng and T.C.E. Cheng (2006). An O(n2) algorithm forscheduling equal-length preemptive jobs on a single machine to minimizetotal tardiness. Journal of Scheduling 9, 343–364.

109

Page 110: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
Page 111: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

Index

β-field, 15p-active schedule, 423-dimensional assignment problem, 36

assignment problem, 22, 28

binary encoding, 16, 17boolean linear programming model, 23

class NP, 17class P, 17complementary slackness, 24, 57completion time, 15complexity status, 16computational complexity, 17

dual, 24dual variables, 47due date, 15

earliest due date, 18, 19existential property, 70

face, 24

hyperplane, 24

idle time, 27integer linear programming model, 23,

44

job, 14job characteristics, 14job part, 29

lateness, 15linear programming models, 23LP relaxation, 24, 44, 72

machine, 14machine environment, 14makespan, 16maximal open, 20

maximum lateness, 16minimal open, 20

NO instance, 17non-delay schedule, 21NP-complete, 17, 18NP-hard, 18number of tardy jobs, 15

objective criterion, 14, 15open complexity status, 20optimality conditions, 59optimization problem, 17order, 17

parallel machine, 22parallel machines, 38polyhedron, 24polynomially solvable, 17precedence constraints, 15preemption, 15preemptive WSPT rule, 19primal model, 24problem reduction, 17problem transformation, 18processing time, 15pseudo-polynomially solvable, 17

recognition problem, 17, 38release date, 15

single machine model, 14strong duality theorem, 24, 50strongly NP-complete, 18strongly NP-hard, 18supporting hyperplane, 24

tardiness, 15total (weighted) number of tardy jobs,

16total completion time, 16total dual integrality, 25, 49, 50

111

Page 112: All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable

total tardiness, 16total unimodularity, 25, 45total weighted completion time, 16total weighted tardiness, 16

unary encoding, 17universal property, 70

vertex, 24

weight, 15weighted shortest processing time, 18,

19

YES instance, 17

112