All Minimal and Maximal Open Single Machine Scheduling Problems Are Polynomially Solvable
1. All Minimal and Maximal Open Single Machine
Scheduling Problems are Polynomially Solvable
Harmen W. Bouma
1345982
April 8, 2009
2. Master’s Thesis Operations Research
Supervisor: Prof. Sc.D. B. Goldengorin
Co-assessor: Prof. dr. G. Sierksma
3. All Minimal and Maximal Open Single Machine
Scheduling Problems are Polynomially Solvable
H.W. Bouma
Abstract
In this thesis, Boolean Linear Programming (BLP) models are presented for
three single machine scheduling problems with equal-length jobs and different
release 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 the
total weighted completion time. The objective of the other two problems is to
minimize the total weighted tardiness. The second problem is preemptive, the
third is not. To this date, the complexity status of these problems has remained
open. The open complexity status was mentioned by Labetoulle et al. [21] in
1984.
The BLP models are based on the Assignment Problem formulation, which
is a well-known polynomially solvable problem in combinatorial optimization.
The Assignment Problem can be used to solve many problems, including for
example the single machine scheduling problems in which the total weighted
tardiness is minimized and in which all jobs have unit processing times and
different release dates. In order to solve the three problems mentioned above
only preoptimized permutations are incorporated into the Assignment Problem
formulation. The proof that the problems are polynomially solvable is based on
the notion of Total Dual Integrality.
Keywords: (Non-)preemptive scheduling; Equal-length jobs; Release dates; Weighted
completion time; Weighted tardiness; Total dual integrality.
4.
5. Preface
Since the fifties of the twentieth century Scheduling Theory has been a popular
research area. In the early years pioneers came up with algorithms to solve
simple job scheduling problems. In the years that followed, many algorithms
and 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 polynomially
solvable. Two of the problems are about finding a preemptive schedule in a
single machine setting where the jobs have equal processing times and different
release dates. The objectives are to minimize the total weighted completion
time and the total weighted tardiness, respectively. The third problem is the
non-preemptive version of the total weighted tardiness problem. All problems
will 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 computational
complexity and Integer Linear Programming are discussed. In Chapter 2 the
problems are defined and an informal description of 1|pmtn; pj = 2; rj | wj Cj
is presented which motivates the use of the Assignment Problem formulation.
A similar approach is used for the other open problems. Chapter 3 contains
a discussion of problems that are modeled as a variation on the Assignment
Problem as well. In Chapter 4, the Boolean Linear Programming (BLP) model
for the problem 1|pmtn; pj = 2; rj | wj Cj is given and it is proven that the
corresponding system of equations is Totally Dual Integral. This implies that
the problem is polynomially solvable. In Chapter 5 these results are generalized
to the case pj = p. In Chapter 6 the BLP models are presented for the total
weighted tardiness scheduling problems and it is proven that they are also poly-
nomially solvable. In Chapter 7 some computational results are presented and
Chapter 8 contains recommendations for future research and a short summary.
I wish to thank my supervisor Prof. Sc.D. B. Goldengorin for giving me the
opportunity to do this research. He advanced the idea of solving the problem
by a model based on the Assignment Problem. I would like to thank him for
his 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-assessor
of this research project, and Guido Diepen of Paragon Decision Technology for
his technical support with AIMMS.
Groningen,
Harmen Bouma
9. List of Figures
1.1 The EDD and optimal schedule for an instance of 1|rj |Lmax . . . 19
1.2 The preemptive WSPT and the optimal schedule for an instance
of 1|pmtn; rj | wj Cj . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1 Graphical representation of a special case of the three-dimensional
assignment model. . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2 Graphical representation of the multidimensional assignment prob-
lem for 1|pmtn; pj = 2; rj | wj Cj with n = 3. . . . . . . . . . . 37
4.1 Schedule S1 , where d ∈ {2, 4, 6, . . .}, 0 < λ < 1 . . . . . . . . . . . 55
4.2 Schedule S2 , where d1 , d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1. . . . . . . . . 55
4.3 Schedule S3 , where d1 , d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1. . . . . . . . . 56
4.4 Schedule S4 , where d1 , d2 ∈ {1, 3, 5, . . .}, 0 < λ < 1. . . . . . . . . 56
4.5 Schedule S5 , where d1 ∈ {2, 4, 6, . . .}, d2 , d3 ∈ {3, 5, 7, . . .}, d2 >
d1 , d3 > d2 , 0 < λ < 1. . . . . . . . . . . . . . . . . . . . . . . . . 56
4.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 | wj Cj and 1|pj = p; rj | wj Cj . 78
7.2 The differences in terms of percentages between the optimal val-
ues of the problems 1|pmtn; pj = p; rj | wj Tj and 1|pj = p; rj | wj Tj . 79
9
10.
11. List of Tables
1.1 Overview of complexity results of problems that are related to
the open problems that are solved in this thesis. . . . . . . . . . 26
2.1 The cost matrix W , representing the costs of assigning job parts
to time intervals. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.2 The cost matrix W , representing the costs of assigning job parts
to time intervals when wj Tj is the objective. . . . . . . . . . . 32
4.1 The way in which dual variables p, q and s correspond to the
rows 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 | wj Cj , for p = 2. . . . . . . . . . . . . . . . . . . . . . . . 75
7.2 CPU time in seconds and optimal solutions for the problem 1|pmtn; pj =
p; rj | wj Cj , with p = 3 and p = 4. . . . . . . . . . . . . . . . . 76
7.3 CPU time in seconds and optimal solutions 1|pmtn; pj = p; rj | wj Tj ,
for p = 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7.4 CPU time in seconds and optimal solutions for the problem 1|pmtn; pj =
p; rj | wj Tj , with p = 3 and p = 4. . . . . . . . . . . . . . . . . 77
7.5 CPU time in seconds and optimal solutions 1|pj = p; rj | wj Tj ,
for p = 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
7.6 CPU time in seconds and optimal solutions for the problem 1|pj =
p; rj | wj Tj , with p = 3 and p = 4. . . . . . . . . . . . . . . . . 78
7.7 Optimal solutions for the problem 1|pj = p; rj | wj Cj . . . . . . 78
8.1 The problems that are solved in this thesis and problems that are
closely related to them. . . . . . . . . . . . . . . . . . . . . . . . 83
C.1 Instances with 20 jobs and p = 2. . . . . . . . . . . . . . . . . . . 97
C.2 Instances with 50 jobs and p = 2. . . . . . . . . . . . . . . . . . . 98
C.3 Instances with 100 jobs and p = 2. . . . . . . . . . . . . . . . . . 99
C.4 Instances with 50 jobs and p = 3. . . . . . . . . . . . . . . . . . . 100
C.5 Instances with 30 jobs and p = 4. . . . . . . . . . . . . . . . . . . 101
11
12.
13. Chapter 1
Introduction
In many manufacturing and service industries planning and scheduling belong
to the day-to-day activities. Whether it is about a copy shop holder who needs
to determine which order to print first, or the type of aircraft that should be
assigned to a particular flight, the decisions made can substantially affect the
efficiency 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 and
should be presented the following morning has higher priority for a firm than
the quarterly staff magazine. The urgency of an order is given by the difference
between 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 holder
does not meet a deadline, the client receives a discount based on the amount
of delay and the weight of the order. Naturally, urgent and large orders have
higher weights than low priority and small jobs. Given all orders, the copy shop
holder would like to determine the printing schedule such that the total amount
of discount is as small as possible.
Now consider the airline company. It needs to assign airplanes to flights such
that 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 by
a departure and arrival time and by the expected number of passengers. Each
airplane has a certain capacity. Obviously, it is desirable that an airplane has
sufficient capacity to carry all passengers, since otherwise a certain amount of
revenue is missed. On the other hand, when there is overcapacity the revenues
may 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 and
the revenue per passenger, the airline is interested in assigning its airplanes to
flights 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, considerable
amounts of attention have been paid to scheduling techniques in literature for
13
14. 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 to
be such that a company optimizes its objectives and achieves its goals. In the
examples stated above, the photocopiers in the copy shop and the fleet of the
airline company are the resources. The activities are the orders and the flights.
The objectives are to minimize the total amount of discount and to maximize
profits, respectively.
Scheduling techniques rely heavily on mathematical models, exact algo-
rithms and heuristics. For many problems efficient algorithms have been found
to solve the problems to optimality. However, there are still many problems
that have not been solved yet. In this thesis suitable models for three of these
unsolved scheduling problems will be presented. In Chapter 2 the problem is
formulated and in Chapter 3 some background information is given about the
modeling techniques that are used in Chapters 4 to 6. In the remainder of the
Introduction an overview of scheduling problems is given in which only one type
of resource is involved, the so-called single machine models. Furthermore, the
concept of computational complexity and the mathematical techniques that are
used 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 do
not arise frequently in practice, a study of them is valuable for two reasons.
Firstly, the solution methods for single machine models provide insights into
solution techniques that could be used in more complex situations with sev-
eral machines. Secondly, in many production settings there is one stage that
is crucial for the overall performance of a schedule. This stage is called the
bottleneck. Optimizing the schedule for the bottleneck, which could well be a
single machine, then optimizes the schedule for the entire problem (Chen, Potts
and Woeginger [11]).
In a single machine model there is a certain resource which is generally
referred 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 job
may have different characteristics, such as the time that is needed to complete
a 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 might
be interested in minimizing the total number of tardy jobs, or the point in time
at which all jobs are completed.
Most types of scheduling problems can be described by a triple α|β|γ which is
widely used in the literature and was introduced by Graham et al. [17]. Here, α
describes the machine environment, β the job characteristics and γ the objective
criterion to be minimized. Hence, for single machine models it follows that
α = 1. An overview of several job characteristics and objective criteria is given
below. It should be noted that this overview is not exhaustive. However, it is
sufficient to define most basic scheduling problems.
14
15. Job Characteristics. Assume that there are n jobs to be scheduled and let
the 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. When
this due date is not met, a penalty is incurred. When the due date must
be 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 the
importance of job j relative to other jobs.
Preemption (pmtn). When preemption is allowed, a job can be removed from
a machine before it is fully processed. At a later stage it can then be
resumed. In case of preemption, processing that has already been done is
not lost.
Precedence constraints (prec). When a job cannot be processed before an-
other job is completed, the problem is subject to so-called precedence
constraints. Precedence constraints can be depicted by acyclic graphs,
where each node is a job and each arc a precedence constraint. When
the 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 all
in the β-field since it is clear from the objective whether there are weights and
due dates. This is not the case for strict deadlines Dj . Note that it could well
be that the β-field is empty.
Objective Criteria. Let the time at which job j is finished be denoted by
Cj , the completion time of job j. Define the lateness Lj and the tardiness Tj of
job 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. Note
that a negative value implies that a job is early. The tardiness indicates the
amount of delay of a job, and is zero when a job is early or exactly in time.
Furthermore, let
1 if Cj > dj
Uj =
0 otherwise.
When job j is delayed Uj is one, otherwise it is zero. This criterion can be
used to count the number of tardy jobs. However, the amount of delay is not
expressed by it.
The objective criteria can now be given by:
15
16. Makespan (Cmax = maxj Cj ). The makespan is the maximum completion
time, or the time at which all jobs are processed. When the makespan is
minimized, the schedule tends to finish processing as early as possible.
Total completion time ( j Cj ). This objective sums the completion time of
all jobs. Minimizing the total completion time can be used as a surrogate
for minimizing the total Work-In-Process, since it tends to finish each job
as quickly as possible.
Total weighted completion time ( j wj Cj ). This objective sums the completion
time of all jobs, after they have been adjusted for their weights. When
total weighted completion time is minimized it becomes advantageous to
finish jobs with high weights early relative to jobs with low weights. The
total weighted completion time can be used to minimize the total value of
the Work-In-Process.
Maximum lateness (Lmax = maxj Lj ). The maximum lateness records the
largest delay in a schedule. The maximum lateness objective minimizes
in a way the worst performance of a schedule, since all delays are kept as
small as possible.
Total number of tardy jobs ( j Uj ). This objective counts the number of tardy
jobs. Minimizing the number of tardy jobs can be used to maximize the
percentage of on-time deliveries.
Total weighted number of tardy jobs ( j wj Uj ). This objective counts the cu-
mulative weight of all tardy jobs. This objective can be used to maximize
the 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 number
of tardy jobs. When the total number of tardy jobs is minimized, some
jobs may get seriously delayed in order to keep the number of tardy jobs
low. This in turn may lead to unacceptable situations in practice and does
not occur when the total tardiness objective is used.
Total weighted tardiness ( j wj Tj ). The total weighted tardiness sums the
total amount of tardiness adjusted for the weights of the jobs. It can be
used 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 to
solve that problem. The problem size is determined by the input data and it is
generally assumed that the input data is binary encoded. The following can be
found 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 when
a problem is solved by algorithm A. That is, TA (n) is the maximum number of
computational steps, over all input sizes n, that are required for the execution
16
17. of algorithm A. When the computational complexity is determined, it is crucial
to 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 algorithm
A1 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 growth
and 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 said
to 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 than
or equal to the order of G, it is denoted F = O(G). Hence TA1 (n) is O(n2 ) and
TA2 (n) is O(n).
The worst-case time complexity of an algorithm is important in order to
determine whether it is efficient or not. Complexity theory is used to classify
algorithms either as efficient or inefficient. Any O(P )-algorithm, where P is
a polynomial in the problem size, is an efficient algorithm. All problems that
can be solved by an O(P )-algorithm are said to be polynomially solvable and
belong 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 (using
unary encoding), but non-polynomial with respect to binary encoding.
Problems which can only be solved by non-polynomial algorithms belong to
the class N P. It has been shown that the majority of the problems belonging
to 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 can
be used to solve all problems that are in this class. Conversely, when it can
be proven that no such algorithm possibly exists for one of these problems, it
immediately follows that no efficient algorithm exists for any problem in this
class. These problems are called NP-complete. A more formal definition will
be given below. However, it is necessary to introduce the difference between
optimization and recognition problems first.
An optimization problem is concerned with the solution that actually min-
imizes (maximizes) a certain objective function. A recognition problem deals
with the question whether or not there exists a certain instance such that the
objective 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 a
recognition problem is a YES instance if the answer to this problem is YES, and
a NO instance if it is NO. Note that the optimization problem can be solved by
repetitive application of the recognition problem. To define NP-complete and
NP-hard problems the following is needed as well:
A problem P1 polynomially reduces to a problem P2 if some polynomial-time
algorithm 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 reduces
to P2 and some polynomial-time algorithm solves P2 , then some polynomial
time-algorithm solves P1 .
17
18. A special form of problem reduction is called problem transformation. A
problem P1 polynomially transforms to problem P2 if for every instance I1 of
problem P1 an instance I2 of problem P2 can be constructed in polynomial time
such 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 ∈ N P, and
2. all other problems in the class N P polynomially transform to P1 .
A recognition problem P1 is said to be NP-hard if all other problems in
the class N P polynomially reduce to P1 . Note that this class of problems is
broader than the class NP-complete, because it includes the class N P as well
as problems that are not in this class.
Note that these definitions of NP-completeness and NP-hardness are based
on the assumption of binary encoded problem sizes. A problem that is NP-
complete or NP-hard could well be pseudo-polynomially solvable. When a
problem is NP-complete with respect to unary encoding as well, it is said to
be 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 track
of the complexity results of scheduling problems. Problems that were solved in
the fifties of the previous century are for example
1||Lmax and 1|| wj Cj .
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 jobs
have different processing times and due dates, but that preemption is not al-
lowed and there are no release dates, precedence constraints, etcetera. This
problem is solved by the Earliest Due Date (EDD) first rule, which orders all
jobs by their due date (from low to high) and schedules them accordingly. This
algorithm runs in O(n2 ).
In 1|| wj Cj (Smith [33]) the schedule that minimizes the total weighted
completion time needs to be determined. All jobs have different processing times
and weights. This problem is solved by the Weighted Shortest Processing Time
(WSPT) first rule, where job j is scheduled before job k if
wj wk
> .
pj pk
The WSPT algorithm has running time O(n log(n)).
18
19. Another example of a scheduling problem that is polynomially solvable is
1|pj = p; rj | wj Cj .
In this problem the schedule that minimizes the total weighted completion time
needs to be determined. All jobs have the same processing time and different
release dates. The problem can be solved by a dynamic programming algorithm
that was introduced by Baptiste [4]. The time complexity of the algorithm is
O(n7 ).
Examples of problems that are NP-hard are:
1|rj |Lmax and 1|pmtn; rj | wj Cj .
The problem 1|rj |Lmax is a generalization of the problem 1||Lmax . In this
problem, the jobs have different release dates, processing times and due dates.
In Lenstra, Rinnooy Kan and Brucker [23], it is proven that this problem is
strongly NP-hard. To see why the EDD rule does not necessarily solve this
problem to optimality, consider the following example:
job j 1 2 3 4
pj 4 1 6 4
rj 0 0 1 3
dj 13 14 7 11
The EDD schedule is depicted in Figure 1.1a. It is not difficult to see that
Lmax = L3 = L4 = 3. In Figure 1.1b, the optimal schedule is depicted, with
Lmax = L1 = L2 = 2.
Figure 1.1: (a) The EDD schedule with Lmax = 3. (b) The optimal schedule
with Lmax = 2.
Now consider the problem 1|pmtn; rj | wj Cj , which is a generalization of
1|| wj Cj . A possible approach for this problem would be to check whether
the preemptive version of the WSPT rule leads to an optimal solution. This
rule compares the ratios of the weight of a job and the remaining processing
time for all available jobs and schedules the job with highest ratio first. When
a new job is released, or when a job is finished, this procedure is repeated until
all jobs are processed. However, the preemptive WSPT rule does not always
lead to an optimal solution. Consider the following example:
19
20. job j 1 2 3
pj 2 3 4
rj 0 1 2
wj 1 4 10
The preemptive WSPT schedule is depicted in Figure 1.2a and has objective
value wj Cj = 101. However, the optimal schedule is depicted in Figure 1.2b
and has objective value wj Cj = 98. The proof that 1|pmtn; rj | wj Cj is
strongly NP-hard is given in Labetoulle et al. [21].
Figure 1.2: (a) The preemptive WSPT schedule with wj Cj = 101. (b) The
optimal schedule with wj Cj = 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 is
known, there still exist problems with an open complexity status. This means
that it is not known whether they are polynomially solvable or not. One of these
problems is the preemptive equal-length job scheduling problem with release
dates 1|pmtn; pj = p; rj | wj Cj , in which the total weighted completion time is
minimized. This problem is similar to two of the problems that were discussed in
the preceding paragraph, namely 1|pj = p; rj | wj Cj and 1|pmtn; rj | wj Cj .
The non-preemptive problem 1|pj = p; rj | wj Cj , which is an easier case
of the open problem, is polynomially solvable. It can be shown that this is
the case for all easier cases of the open problem. Therefore, 1|pmtn; pj =
p; rj | wj Cj is said to be minimal open. The problem 1|pmtn; rj | wj Cj is
slightly harder than the open problem, since the processing times of the jobs may
differ. As was already indicated, this problem is strongly NP-hard. However,
1|pmtn; pj = p; rj | wj Cj is not maximal open, which implies that there are
harder cases that are not known to be NP-hard. Consider for example the open
problem with strict deadlines, 1|pmtn; pj = p; rj ; Dj | wj Cj . This problem
is harder than the open problem under consideration and its complexity status
is 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 | wj Cj are
1|pmtn; pj = p; rj | wj Tj and 1|pj = p; rj | wj Tj .
20
21. In both problems the total weighted tardiness is minimized instead of the to-
tal weighted completion time. The first problem allows for preemption, the
second does not. According to the website of Brucker and Knust [10], the non-
preemptive problem is both minimal and maximal open. This implies that all
easier problems are polynomially solvable and all harder cases are NP-hard.
Apparently, Brucker and Knust do not regard the preemptive problem as an
easier 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 stated
that the preemptive problem is maximal open, but not minimal. However, it
will be shown in the following section that all easier problems (i.e., with equal
job weights or without release dates) are known to be polynomially solvable.
Since 1|pj = p; rj | wj Tj is not regarded as an easier problem, this implies
that 1|pmtn; pj = p; rj | wj Tj must be minimal open as well.
1.3.2 Related Problems
In this paragraph an overview of problems that are related to the open problems
introduced in Section 1.3.1 is given. It should be noted that some complexity
results 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 be
described 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|| wj Cj
(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|| wj Tj if the weighting of jobs is agreeable.
This is the case when pi < pj implies that wi ≥ wj . Note that it immediately
follows 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| wj Tj , is polynomially solvable. The schedule for this prob-
lem can be divided into parts of length p. At each of these time intervals, a
job is scheduled. For each job and time interval combination the corresponding
costs are known. By means of the Assignment Problem, which is polynomially
solvable and discussed in more detail in Chapter 2, the optimal assignment of
jobs 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 Lenstra
et 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 beginning
of Section 1.3. Note that the problem 1|rj |Cmax is polynomially solvable, since
every non-delay schedule is optimal. A schedule is called non-delay if a machine
is 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
22. Lmax and wj Cj 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 the
single 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 is
minimized for equal-length jobs with different release dates is one of the open
problems that is solved in this thesis. The version with equal job weights as well
as the version with unit processing times pj = 1 are polynomially solvable. The
former case is proven by Baptiste [4], the latter can be solved by the Assignment
Problem (see Chapter 2 for a discussion of the Assignment Problem). Hence,
the model of Baptiste [4] solves the equal-length job scheduling problem with
release dates when the total weighted completion time or the total tardiness
is minimized, but not when the total weighted tardiness is minimized. This is
caused 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. It
follows 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 release
dates, are subject to precedence constraints and where preemption is allowed.
Baker et al. [2] present an algorithm that solves the problem
1|prec; pmpn; rj |fmax in polynomial time. However, the counterparts in which
the total completion time and the total tardiness are minimized are NP-hard,
which follows from Lenstra and Rinnooy Kan [22]. Baptiste et al. [5] show
that 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 by
Simons [32] that solves 1|prec; pj = p; rj | Cj in polynomial time.
Let us now return to the problems without precedence constraints. Baker
et al. [2] give a polynomial time algorithm that solves 1|pmtn; rj |fmax . However,
both 1|pmtn; rj | wj Cj (Labetoulle et al. [21]) and
1|pmtn; rj | wj Tj are strongly NP-hard. Because 1|| wj Tj is strongly NP-
hard, it follows directly that 1|pmtn; rj | wj Tj is strongly NP-hard as well.
Now look at the problem in which the total completion time and not the total
weighted completion time is minimized: 1|pmtn; rj | Cj . This problem is poly-
nomially solvable (Baker [1]). Likewise, the problem
1|pmtn; pj = p| wj Cj 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|| wj Cj , which is polynomially solvable.
However, when release dates are added it is not known whether the resulting
problem is polynomially solvable or not. In conclusion we have that there ex-
ist algorithms that solve 1|pmtn; pj = p| wj Cj , 1|pj = p; rj | wj Cj and
1|pmtn; pj = p; rj | Cj in polynomial time, but that none of these algorithms
solves the problem when respectively release dates, preemption or unequal job
22
23. 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 the
jobs have equal processing times the problem becomes easier. The problem
1|pmtn; pj = p| wj Tj is equivalent to 1|pj = p| wj Tj since preemption
is not advantageous when the release dates are equal. It has already been
shown that this problem is polynomially solvable. Furthermore, Tian, Ng and
Cheng [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 weighted
tardiness 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 why
the introduction of job weights gives rise to difficulties. He states that although
it might be locally optimal to preempt job j in favor of job k, it does not mean
that this leads to a globally optimal solution. To put it differently, it often is
optimal to interrupt job j by job k only if job j can be completed before a
critical 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. In
that 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 that
1|pmtn; pj = p| wj Tj and 1|pmtn; pj = p; rj | Tj are polynomially solvable,
but that 1|pj = p; rj | wj Tj and 1|pmtn; pj = p; rj | wj Tj are open problems.
A problem that is related to the preemptive open problems that are solved
in this thesis is 1|pmtn; pj = p; rj | wj Uj . When Uj does not denote the total
weighted number of tardy jobs, but the total weighted throughput that has to
be maximized, i.e.,
0 if Cj > dj
Uj =
1 otherwise,
the problem is polynomially solvable (Baptiste et al. [6]). However, when
wj Uj 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 | wj Tj
(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 of
an objective function and a number of constraints which are all linear functions
of 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
24. 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 LP
model is called the primal model. When the primal model is a minimization
problem, the dual is a maximization problem and vice versa. Each decision
variable (constraint) of the primal model corresponds to a constraint (decision
variable) of the dual model. The dual of the primal LP model presented above
is 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 the
optimal solution of the corresponding dual model, provided that both solutions
are feasible and bounded. A nice relation between the optimal solutions of the
primal and dual model is called Complementary Slackness (CS), which states
that x and y are both optimal solutions (provided that they are feasible) if and
only if
yi (ai x − 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 to
solve ILP problems. A possible way to solve an ILP model is by solving the
corresponding LP relaxation. That is, the model is solved without the restriction
of integrality. When the optimal solution of the LP relaxation appears to be
integer, it is the optimal solution to the ILP model as well. However, this occurs
only 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 polyhedron
P 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, we
need 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 supporting
hyperplane H of P . Furthermore, a point p ∈ P is a vertex of P if {p} is a face
of P (see e.g. Schrijver [30]).
A polyhedron P is said to be integral, if each face of P contains integral
vectors (see e.g. Schrijver [30]). In that case, there always exists an optimal
solution to the corresponding LP relaxation that is integral. This is very useful
24
25. when one is trying to solve an ILP model. When the polyhedron is integral, it
suffices to solve the LP relaxation corresponding to the ILP model.
Sometimes it is possible to tell from the properties of the constraint matrix
A that the polyhedron P = {x ∈ Rn | Ax ≥ b, x ≥ 0} is integral for each integral
vector b. This is the case if and only if A is Totally Unimodular (TU). A matrix
A is called TU if each subdeterminant of A is 0, 1, or −1. In particular, each
entry of A is 0, 1, or −1. There exist polynomial time algorithms to check
whether A is TU (see e.g. Schrijver [30]).
However, when the constraint matrix A is not TU, the integrality of the
polyhedron P = {x ∈ Rn | Ax ≥ b, x ≥ 0} for a particular integral vector
b can still be guaranteed by the notion of Total Dual Integrality (TDI). The
system Ax ≥ b, x ≥ 0 is TDI if the dual has an integral optimal solution y for
each integral vector w for which the maximum is finite. Furthermore, it can be
shown that when Ax ≥ b, x ≥ 0 is a TDI system, and when b is integral, the
polyhedron 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 TDI
system in which A is TU, is that in the former case an integral optimal solution
is only guaranteed when w is an integer vector, while in the latter case this
restriction is not needed.
The concepts of Total Unimodularity and Total Dual Integrality are very
useful to determine the complexity status of ILP problems. As was already
indicated, 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 exists
an optimal solution to the LP relaxation that is an optimal solution to the ILP
model as well. In case of a Total Unimodularity, the optimal solution of the LP
relaxation that is found by a regular LP solver is integral. In case of Total Dual
Integrality, 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 of
presolvers such that an ILP is solved very efficiently in case of TDI.
25
26. Table 1.1: Overview of complexity results of problems that are related to the open problems that are solved in this thesis.
1||fmax in P 1|| wj Cj in P 1|| wj Tj (*) NP-hard
1|| Tj (**) NP-hard
1|pj = p| wj Tj in P
1|rj |Lmax NP-hard 1|rj | Cj NP-hard 1|rj | Tj NP-hard
1|rj |Cmax in P 1|pj = p; rj | wj Cj in P 1|pj = p; rj | wj Tj open
1|pj = p; rj |Lmax in P 1|pj = 1; rj | wj Tj in P
1|pj = p; rj | Tj in P
1|pmtn; prec; rj |fmax in P 1|pmtn; prec; rj | Cj NP-hard 1|pmtn; prec; rj | Tj NP-hard
1|pmtn; prec; pj = p; rj | Cj in P 1|pmtn; prec; pj = p; rj | Tj NP-hard
1|prec; pj = p; rj | Cj in P 1|prec; pj = p; rj | Tj NP-hard
1|prec; pj = p| Tj NP-hard
1|pmtn; rj | wj Cj NP-hard 1|pmtn; rj | wj Tj NP-hard
1|pmtn; rj | Cj in P 1|pmtn; rj | Tj NP-hard
1|pmtn; pj = p; rj | wj Cj open 1|pmtn; pj = p; rj | wj Tj open
1|pmtn; pj = p| wj Cj in P 1|pmtn; pj = p| wj Tj in P
1|pmtn; pj = p; rj | Tj in P
(*) Pseudo-polynomially solvable for special cases
(**) Pseudo-polynomially solvable
27. Chapter 2
Problem Formulation
In this chapter the three scheduling problems that are solved in this thesis will
be defined. By means of an example, a motivation is given for the use of the AP
formulation. In Section 2.3 the structure of the proof of polynomial solvability
will be explained.
2.1 Minimizing the Total Weighted Completion
Time
Consider the problem 1|pmtn; pj = p; rj | wj Cj , in which n jobs with process-
ing time p have to be scheduled. Each job j has a certain release date rj and
cannot be finished before rj + p. Without loss of generality, assume that the
release dates are such that r1 ≤ r2 ≤ . . . ≤ rn . Furthermore, assume that all
entries are nonnegative integers and that there exists a schedule without idle
time, 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 schedule
preemption occurs only at unit points in time. Hence, the time horizon can be
divided into pn time intervals of unit length and each job j needs to be assigned
to p of these time intervals.
This problem presented above is an open problem. At the website of D¨rr [13]
u
two attempts are presented to solve the (more general) problem
1|pmtn; pj = p; rj | wj Cj .
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 LP
model will be shortly discussed below.
The BLP Model. Let the indices be given by
j ∈ {1, 2, . . . , n},
a ∈ {0, 1, 2, . . . , n − 1},
t ∈ {0, 1, 2, . . . , T }.
27
28. Let the boolean decision variable xjt denote how much of job j is completed
at time t. The BLP model reads
min wj txjt
j,t
T
subject to t=0 xjt = 1 j = 1, . . . , n
j≥i t<ri +(a+1)p xjt ≤ a a = 0, . . . , n − 1
i = 1, . . . , n − a + 1
xjt ∈ {0, 1} for all j, t.
The first set of constraints states that every job should eventually be fully
processed. The second set states that in an interval strictly less than (a + 1)p
time units at most a jobs that are released at or after the starting time of that
interval can be entirely executed and completed.
Baptiste et al. [8] show that the polyhedron determined by the LP relaxation
contains vertices which are not integral. Therefore, it cannot be assured that
the optimal solution of the LP relaxation is integral. Although this is not a
proof 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 that
do not correspond to a feasible schedule. Consider for example the case with
n = p = 3 and rj = j − 1. A feasible solution is given by
1
x13 = x19 = x26 = x29 = x35 = x37 = ,
2
and all other variables are zero. Hence, after 2 time units nothing of job 1 is
1
produced yet, but after 3 time units it is already processed for 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 and
fractional - correspond to feasible schedules.
2.1.1 The Assignment Model
In order to show that the problem
1|pmtn; pj = p; rj | wj Cj
is polynomially solvable the problem is modeled as an Assignment Problem (AP)
with additional constraints. The AP is widely discussed in the literature and
can be found in most textbooks on combinatorial optimization and integer lin-
ear programming (see e.g. Sierksma [31]). The first polynomial time algorithm
for 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 matrix
W where wjt is the cost of assigning element j ∈ U to t ∈ V . An assignment
is a permutation π = (π(1), π(2), . . . , π(T )) of V in which the jth element of
U is assigned to element tj = π(j) from V . An optimal assignment minimizes
28
29. T
j=1 wjπ(j) . The Assignment Problem can be stated as a BLP model as follows:
T T
min wjt xjt
j=1 t=1
T
subject to j=1 xjt = 1 t = 1, . . . , T
T
t=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 (see
e.g. Sierksma [31]), there always exists an integral optimal solution to the LP
relaxation. This implies that the AP is polynomially solvable.
In order to illustrate how to use the AP formulation for the problem
1|pmtn; pj = p; rj | wj Cj , 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 5
rj 0 1 2 3 4
wj 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. Since
the processing time of each job is 2, they can be divided into two parts such
that 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 be
assigned to time interval rj + 1 or any later time interval. The second part can
only 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 time
intervals against minimum costs, where the costs of assigning each job part j to
a 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, wj Cj , depends on the
completion time of the jobs, it follows that the assignment of the first part of a
job to a certain time interval does not come with any costs. However, since a
job can not be processed before it is released and since processing has to start
before the final time interval T , the costs for t < rj + 1 and t = T are set to
infinity. Consequently, the first part of a job will never be assigned to one of
these intervals.
If the second part of a job is assigned to time interval t the costs are wj t.
As the second part of a job cannot be processed before time interval rj + 2, it
29
30. Table 2.1: The cost matrix W , representing the costs of assigning job parts to
time intervals.
Time Intervals t
1 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 30
t 3.2 ∞ ∞ ∞ 28∗ 35 42 49 56 63 70
s 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 in
Table 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 ( wj Cj = 493)
is not equal to the objective value of the AP, which is 325. The reason for this
difference is that in the AP the first parts of jobs 3, 4 and 5 are scheduled after
their second parts, which has a positive effect on the costs, but which should
not be possible in a correct model.
It is not difficult to see that the schedule S cannot be optimal; it is possible
to assign job 3 to the 4th and 6th time interval and to assign job 5 to the 7th and
9th interval. The completion time of job 5 does not change by this operation
while the completion time of job 3 decreases. Hence, the resulting schedule is
better than S.
A natural question that comes to mind is whether the solution of the AP
can be used to construct an optimal solution of the scheduling problem under
consideration. 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 the
optimal solution of the AP.
2. Starting at time interval 1, assign each first job part that was originally
scheduled after its second part to the time interval right before this second
part. Note that the second job part and all subsequent job parts move to
the 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
31. with objective value 460. Unfortunately, it can be shown that S is not optimal
either. It is not difficult to see that interchanging jobs 4 and 5 leads to a better
schedule.
Although the AP formulation clearly does not lead to an optimal solution
of the problem 1|pmtn; pj = 2; rj | wj Cj , the example shows that this formu-
lation could be used when additional constraints are added which ensure that
the 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 are
destroyed when side constraints are added to the AP. In the literature, there
can be found many examples that have to contend with these difficulties. A
selection of them is treated in Chapter 3. However, first the other two open
problems are formulated.
2.2 Minimizing the Total Weighted Tardiness
The open problems in which the total weighted tardiness is minimized consist
of a preemptive and a non-preemptive version. They are very similar to the
problem defined in Section 2.1 as will be shown below.
2.2.1 The Preemptive Problem
Consider the problem 1|pmtn; pj = p; rj | wj Tj , in which n jobs with process-
ing time p have to be scheduled. Each job has a certain release date and due
date and can not be finished before rj + p. Without loss of generality, assume
that the release dates are such that r1 ≤ r2 ≤ . . . ≤ rn . Furthermore, assume
that all entries are nonnegative integers and that there exists a schedule without
idle time intervals, i.e., all pn time intervals will be assigned without any time
interval remaining idle. This implies that at least one job is released at time
zero and all jobs are completed at time T = pn.
Just like the problem 1|pmtn; pj = p; rj | wj Cj , this is an open problem.
It should be noted that the problems are very similar. To see this, consider the
example of Section 2.1.1 with due dates. Recall that in this example p = 2.
Example
job j 1 2 3 4 5
rj 0 1 2 3 4
wj 1 3 7 16 33
dj 5 8 7 7 6
A similar cost matrix as depicted in Table 2.1 can be constructed. Note that in
this case, assigning the second part of job j to time interval t does only come
with any costs if dj > t.
An optimal solution to the AP is given by the asterisks in Table 2.2. The
corresponding optimal value is 5. This solution leads to the following schedule
31
32. Table 2.2: The cost matrix W , representing the costs of assigning job parts to
time intervals when wj Tj is the objective.
Time Intervals t
1 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 6
t 3.2 ∞ ∞ ∞ 0∗ 0 0 0 7 14 21
s 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 the
total 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 problem
1|pmpn; pj = p; rj | wj Tj , the example shows that the AP formulation can
be used when extra constraints are added that ensure that the job parts are
scheduled in the right order.
2.2.2 The Non-Preemptive Problem
Consider the problem 1|pj = p; rj | wj Tj , in which n jobs with processing
time 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. When
this assumption does not hold, the problem can be split up into two separate
problems. Furthermore, assume that all entries are nonnegative integers. Just
as in the preemptive case, the time horizon can be divided into time intervals of
unit length. However, since preemption is not allowed, it should be noted that
an optimal schedule might contain idle time intervals. Consider for example the
following instance with p = 2:
job j 1 2 3
rj 0 1 4
dj 8 3 6
wj 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 idle
time exists.
32
33. Note that the maximum number of idle time intervals is (n−1)(p−1). To see
this, 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 processing
job j = 3. This can be repeated until job j = n is completed and processing of
job j = 1 is started. It follows that all job parts have to be assigned to time
intervals 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 by
the AP with side constraints. The cost matrix is similar to the one in Table
2.2. Since there are more time intervals than job parts, the constraints of the
AP require that each time interval is assigned at most (but not exactly) one job
part. 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 are
polynomially 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 the
constraint matrix corresponding to this BLP model is not Totally Unimodu-
lar. Therefore, it can not be concluded directly that the polyhedron determined
by 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 the
corresponding 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 integral
optimal solution. Since all job weights are assumed to be integral, it then im-
mediately follows from the definition of Total Dual Integrality that the system
of (in)equalities determined by the LP relaxation is Totally Dual Integral.
The model for the non-preemptive problem in which total weighted tardiness
is minimized is based on its preemptive counterpart. Since preemption is not
allowed, many constraints can be simplified. Following the same line of reasoning
as in the preemptive case, it can be easily proven that the resulting system of
(in)equalities is Totally Dual Integral.
33
34.
35. Chapter 3
Variations on the
Assignment Problem
In this chapter four problems will be discussed that can be modeled using the
framework of the Assignment Problem. From the examples it follows that the
nice properties of the AP are not always preserved when extra constraints are
added; 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 and
Gutin [3, p. 142]. Let there be a directed weighted graph D. Suppose one
would like to identify the minimum cost subgraph of D, if one exists, with
prescribed degrees on the vertices. This could be of interest for example when
the 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 D
which satisfies d+ (vi ) = ai and d− (vi ) = bi for each i = 1, 2, . . . , n, or show
D D
that no such subdigraph exists. Here, d+ (vi ) and d− (vi ) denote the out- and,
D D
respectively, in-degree of vertex i in subgraph D .
This problem can be formulated as a BLP model as follows. Let wij denote
the weight of arc (i, j). Assume that ai ≤ d+ (vi ) and bi ≤ d− (vi ) for all
D D
n n
i ∈ {1, 2, . . . , n} and i=1 ai = i=1 bi . Furthermore, define the following
decision variable:
1 if (i, j) ∈ A∗
xij =
0 otherwise.
The model reads:
n n
min wij xij
i=1 j=1
35
36. 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 excluded
beforehand (only existing arcs can be included in the subdigraph). One could
also say that extra constraints which ensure that xij = 0 when (i, j) ∈ A need
/
to 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 polynomial
time.
3.2 A Polynomial Solvable Case of the Axial
Three-Dimensional Assignment Model
The following is taken from Gilbert and Hofstra [15]. Consider the problem in
which there are p jobs, q workers and r machines, p ≤ q ≤ r. Each job has to
be assigned to a worker and a machine, but each worker and each machine can
be assigned to at most one job. Suppose the cost of assigning job i to worker j
and machine k can be expressed as the cost of assigning job i to worker j plus
the cost of assigning job j to machine k, i.e., wijk = wij + wjk . This problem
can be formulated by means of the (two-dimensional) Assignment Problem.
Define the following decision variables:
1 if job i is assigned to worker j
xij =
0 otherwise,
for i = 1, . . . , p and j = 1, . . . , q,
1 if worker j is assigned to machine k
yjk =
0 otherwise,
for j = 1, . . . , q and k = 1, . . . , r,
0 if worker j is assigned a job
zj =
1 otherwise.
The BLP model can now be formulated as:
p q q r
min wij xij + wjk xjk
i=1 j=1 j=1 k=1
q
subject to j=1 xij = 1 i = 1, . . . , k
p
i=1 xij + zj = 1 j = 1, . . . , q
r
k=1 yjk + zj = 1 j = 1, . . . , q
q
j=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
37. the variables yjk , which assign workers to machines. The cells on the diagonal
of the lower left quadrant correspond to the zj variables. All black cells are
infeasible. Since this problem is now formulated as a classical AP, it immediately
follows that it is polynomially solvable.
Figure 3.1: Graphical representation of a special case of the three-dimensional
assignment model.
A suggestion would be to use this formulation for the problem
1|pmtn; pj = 2; rj | wj Cj , by assigning each first job part to a certain time
interval and each time interval to another (idle) time interval. This second time
interval can then be assigned to a second job part. A graphical representation
with 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 | wj Cj with n = 3.
However, it appears that this model does not prevent the second part of a job
to be scheduled before the first part. Therefore, it has no advantages compared
to the classical AP formulation. In fact, it is worse because the number of
variables is increased.
37
38. 3.3 The Imbalanced Time Minimizing Assign-
ment Problem
This problem is taken from M¨ller, Camozzato and Bassi de Ara´jo [27]. Con-
u u
sider the problem of assigning n jobs to m machines, n > m, each job with
a distinct processing time for each machine. One job is assigned to exactly
one machine and each machine is assigned to at least one job. Hence, this is
the problem R||Cmax , where R stands for unrelated parallel machines, with the
constraint that each machine performs at least one job.
Let pij denote the processing time of job j on machine i. Define the following
decision variable:
1 if job j is assigned to machine i
xij =
0 otherwise.
Furthermore, let t be a positive integer. The BLP model is given by:
min Z = t
m
subject to i=1 xij = 1 j = 1, . . . , n
n
j=1 xij ≥ 1 i = 1, . . . , m
n
j=1 pij xij ≤ t i = 1, . . . , m
xij ∈ {0, 1} for all i, j.
Constraint 1 assures that every job is assigned to exactly one machine. The
second constraint assures that every machine is assigned to at least one job.
The third constraint imposes that every machine finishes processing not later
than time t, which is the time to be minimized.
Note that this problem is equivalent to the recognition problem where the
question is posed whether there exists a feasible schedule for R||Cmax such that
the maximum completion time is at most t. This question can be answered
by YES or NO. If there is a polynomial time algorithm that solves the latter
problem, it can be applied iteratively for smaller and smaller values of t until the
answer is NO. The solution to the former problem is then equal to the solution
to 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 to
solve 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 in
which personnel has to be scheduled to tasks. There are often departmental
resource 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 have
to be assigned to n jobs j. The time needed for worker i to complete job j
is denoted by wij . The cost incurred by department k, k ∈ {1, . . . , s}, when
38
39. worker i is assigned to job j is denoted by rijk . The budget of department k
is denoted by bk . Similar to the AP, let xij be the decision variable indicating
whether worker i is assigned to job j or not. The Assignment Problem with
Side Constraints (APSC) is given by:
n n
min wij xij
i=1 j=1
n
subject to i=1 xij = 1 j = 1, . . . , n
n
j=1 xij ≥ 1 i = 1, . . . , n
n n
i=1 j=1 rijk xij ≤ 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-complete
problem.
39
40.
41. Chapter 4
Minimizing the Total
Weighted Completion Time
when p = 2
In this chapter, the BLP model for the problem 1|pmtn; pj = 2; rj | wj Cj
will be presented, as well as its Integer and LP relaxations. By means of the
dual problem, it will be shown that the system of (in)equalities determined
by the LP relaxation is TDI. The immediate consequence is that the problem
1|pmtn; pj = 2; rj | wj Cj 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 the
First and Second Part of a Job
Consider the following simple example with 2 jobs, r1 = 0, r2 = 1 and
p = 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 is
resumed. 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 | wj Cj ,
there are either zero or an even number of time intervals between the intervals
to which the first and second part of a particular job are assigned.
Proof: By contradiction. Suppose a schedule S - in which there is an odd
number 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 completed
before job k is fully processed. Note that job k does not need to interrupt job
j directly. It might be that some other jobs are fully processed after the first
part of job j and before the first part of job k.
41
42. Suppose part 1 of job j is scheduled at time interval t, its second part is
scheduled 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. Now
interchange the positions of part 2 of job j and part 1 of job k. All other jobs
remain in the same position. Note that the number of time intervals between
the first and second part of job j is now zero or even. Call the new schedule
S . The total weighted completion time of all jobs completed before job j is not
affected by the interchange, nor is the total weighted completion time of the jobs
finished after job j. Since the weighted completion time of job j is strictly less in
schedule 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 extra
constraints 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 a
p-active schedule, job i is either fully processed before job j is started, or job i
is interrupted by job j and not resumed before job j is completed. This implies
that if job i is interrupted, it is interrupted for p = 2 or a multiple of p time
units. Note that a preemptive schedule is p-active if no job’s completion time
can be advanced without postponing the completion time of some other job. It
is not difficult to show that an optimal preemptive schedule is p-active when
the total weighted completion time is minimized.
4.2 The Primal Model
The following indices, parameters and decision variables are used in the BLP
model.
Indices
j ∈ {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.
Parameters
wjt cost of part 1 of job j when it is processed at time interval t;
wjt 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, wjt and
wjt are introduced. They are defined as:
0 for all j, for T − 1 ≥ t ≥ rj + 1
wjt =
∞ otherwise.
42
43. wj t for all j, for t ≥ rj + 2
wjt =
∞ otherwise.
Decision Variables
1 if job j’s first part is assigned to time interval t
xjt =
0 otherwise.
1 if job j’s second part is assigned to time interval t
xjt =
0 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 including
interval k;
Ul = {2, 4, 6, . . . , l} The subset of even time intervals up to and including
interval l.
4.2.1 BLP Model
The BLP model can now be formulated as:
n T n T
min wjt xjt + wjt xjt
j=1 t=1 j=1 t=1
T
subject to xjt ≥ 1 j = 1, . . . , n (4.1)
t=1
T
xjt ≥ 1 j = 1, . . . , n (4.2)
t=1
n
xjt + xjt = 1 t = 1, . . . , T (4.3)
j=1
xjt − xj,t+1 ≥ 0 j = 1, . . . , n (4.4)
t∈Tk t∈Tk
k = 1, 3, 5, . . . , T − 1
xjt − xj,t+1 ≥ 0 j = 1, . . . , n (4.5)
t∈Ul t∈Ul
l = 2, 4, 6, . . . , T − 2
xjt , xjt ∈ {0, 1} j = 1, . . . , n t = 1, . . . , T. (4.6)
Constraints (4.1) and (4.2) ensure that each first respectively second part
of 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 job
part. 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 to
exactly one time interval. This can be seen as follows:
Suppose xjt = 1 and xj t = 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
44. 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 xjt = 1 and xj t = 1.
ˆ
Constraints (4.4) and (4.5) together assure that one cannot start processing
the second part of a job before the first part is processed. Furthermore, they
assure that the number of time intervals that lies between the processing of the
first and second part of a job is either zero or even; when part 1 is assigned to
time 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 5
rj 0 1 2 3 4
wj 1 3 7 16 33
The optimal solution is given by
x11 = 1, x29 = 1, x33 = 1, x47 = 1, x55 = 1,
x12 = 1, x2,10 = 1, x34 = 1, x48 = 1, x56 = 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 wj Cj 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
xjt , xjt ∈ 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 xjt , xjt ≤ 1. By constraints (4.3), we already have
that the decision variables xjt and xjt 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 obtained
when constraints (4.6) are replaced by
xjt , xjt ≥ 0 for all j, t.
From now on, the LP relaxation will be denoted by (P).
44