Resource Allocation in Project Management
Resource Allocation in Project Management
J. Schönberger
Operational Freight Carrier Planning
IX, 164 pages. 2005. ISBN 3-540-25318-1
Christoph Schwindt
Resource Allocation
in Project Management
With 13 Figures
and 12 Tables
123
Professor Dr. Christoph Schwindt
Institut für Wirtschaftswissenschaft
TU Clausthal
Julius-Albert-Straße 2
38678 Clausthal-Zellerfeld
E-mail: [email protected]
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
3 Relaxation-Based A l g o r i t h m s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.1 Regular Objcctivc Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.1.1 Enumeration Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.1.2 Solving the Relaxations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.1.3 Branch-and-Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.4 Additional Notes and References . . . . . . . . . . . . . . . . . . . . 76
3.2 Corwexifiablc Objective Functions . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.2.1 Enumeration Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.2.2 Solving thc Rclaxations: Thc Primal Approach . . . . . . . . 85
3.2.3 Solving the Relaxations: The Dual Approach . . . . . . . . . . 94
3.2.4 Branch-and-Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
3.2.5 Additional Notes and References . . . . . . . . . . . . . . . . . . . . 99
4 C o n s t r u c t i v e A l g o r i t h m s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.1 Schedule-Generation Schcme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
4.2 Local Scarch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.3 Additional Notcs and Rcfererlccs . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5 Supplements.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
5.1 Break Calendars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
5.2 Scquencc-Dcpcndent Changeover Times . . . . . . . . . . . . . . . . . . . .128
5 . 3 Alternative Execution Modes for Activities . . . . . . . . . . . . . . . . .131
5.4 Continuous Cumulative Resources . . . . . . . . . . . . . . . . . . . . . . . . . 135
6 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141
.
6.1 Make-to-Order Production Scheduling . . . . . . . . . . . . . . . . . . . . . .142
6.2 Small-Batch Production Planning in Manufacturing Industries 147
6.3 Production Scheduling in thc Proccss Industrics . . . . . . . . . . . . .149
6.4 Evaluation of Investment Projects . . . . . . . . . . . . . . . . . . . . . . . . .155
6.5 Coping with Uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .167
.
List of S y m b o l s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
.
I n d e x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Introduction
Each phase in the project Ufe cycle requires specific project management
techniques. Several recent textbooks on project management are devoted to
the managerial and behavioral aspects of project conception, project defini-
tion, project planning, project execution, and project termination (see, e.g.,
Lewis 1998, Pinto 1998, Turner 1999, Keeling 2000, Meredith and Mantel
2002, or Kerzner 2003). This book is concerned with quantitative methods
for the project planning phase and, more specifically, with t h e problem of
optimally allocating resources over time.
arid some objective function reflecting the managerial goal of the project is
optimized. In the resource allocation methods developed in this book, scquenc-
ing and time-constrained project scheduling will be performed jointly in an
iterative manner.
If activitics can be performed in altcrnative exccution modes that differ in
durations and rcsourcc rcquircments, the selcction of an appropriate execution
mode for each activity may be included into the resource allocation problem.
In that case, the time and resource estimations providc thc scts of alternative
cxecution modes, and solving the mode assignment problem constitutes the
first stcp of resource allocation. Depending on whcthcr thc sets of execution
modes are countable or uncountable, we speak of a discrete or a continuous
mode assignment problem. A resource allocation problem that comprises a
modc assignment problcm is termed a multi-mode rcsourcc allocation prob-
lem.
Historical perspective and state of the art. Algorithms for resource
allocation in project management date back to the 1960s, see Davis (1966),
Laue (1968), Herroelen (1972), and Davis (1973) for ovcrvicws. The early work
was concerned with three types of resource allocation problcms: the time-cost
tradeoff problem, the projcct duration problem, and the resource lcvelling
problem. For all threc problem typcs it is assumed that a strict order in the
set of activitics specifies completion-to-start prcccdencc constraints among
activitics. The tzme-cost tradeoff problem is a multi-mode resource allocation
problcm which arises when certain activity durations can be reduced a t the ex-
pense of higher direct cost. The project budget is then regarded as the resource
to bc allocated. If for each activity the cost incurred is a convex function in
the activity duration, thc continuous mode assignmcnt problcm that consists
in computing all combinations of project duration and corresponding least-
cost schcdule can be determined by applying network flow techniqucs (see
Kelley 1961). A survey of multi-modc resource allocation problcms including
diffcrcnt types of tradeoffs between the durations, resource requirements, and
direct costs of activity exccution modes can bc found in Domschkc and Drcxl
(1991). The project duratzon problem consists in schcduling the activities of
a project subject to the limited availability of renewable resources like man-
power or machinery such that all activities are completed within a mininium
4 Introduction
amount of time. Early approaches to solving thc project duration problem in-
cludc mixed-integer linear programming formulations (see, c.g., Wicst 1963)
and priority-rule methods (cf. Kelley 1963, Vcrhincs 1963, and Moder and
Phillips 1964). The objective when dealing with a resource leuellzng problem
is to "smooth" the utilization of renewable rcsources over timc as much as
possible, within a prcscribcd maximum projcct duration. In some cases, a de-
sired threshold limit on thc rcsourcc availability is given, and resources are to
bc lcvcllcd around this targct. In other cases, one strives at minimizing the
variancc of resource utilization over time or minimizing the absolute magni-
tudc of fluctuation in the resource profiles. The first proccdurcs for resource
levelling offered by Burgcss and Killebrew (1962) and Levy et al. (1963) wcrc
bascd on sequentially moving in tirnc slack activities.
In the following years, a great deal of effort has bccn dcvotcd to heuristic
and exact algorithms for thc projcct duration problem. In the 1990s, projcct
planning methods gained increasing importance from their applicability to
schcduling problems arising beyond thc area of proper projcct management,
for cxample, in production planning, time-tabling, or investment scheduling.
Diffcrcnt gencralizations of the basic resource allocation problems have re-
ceived growing attention in recent years. Those expansions include a varicty
of objectives as well as the presence of different kinds of resources, general
temporal constraints given by prescribed minimum and maximum time lags
between the start times of activities, and uncertainty with rcspcct to activity
durations. For a review of solution procedures, we refer to the survey papers by
Icmcli ct al. (1993), Elmaghraby (1995), 0zdamar and Ulusoy (l995), Tavares
(1995), Herroelen et al. (1998), Brucker et al. (1999), Kolisch and Padman
(2001), arid Kolisch ( 2 0 0 1 ~ )A. comprehensive state-of-the-art overview of the
field is given by the handbook of Demeulemeester and Herroelen (2002), with
an emphasis on algorithrris for project scheduling problems with prcccdcnce
constraints among activities instead of temporal constraints. A detailed treat-
ment of specific project scheduling problems of the lattcr type can bc found in
thc monographs by Kolisch (1995), Schirmer (1998), Hartmann (1999a), Klein
(2000), and Kimms ( 2 0 0 1 ~ )Thc . book by Hajdu (1997) is mainly concerned
with several types of time-cost tradeoff problems. Solution procedures for sev-
eral project scheduling problcms with general temporal constraints have been
discussed by De Reyck (1998), Dc Reyck et al. (1999), Neumann and Zim-
niermarin (l999a), Zimrnermann (2001a), and Neumann et al. (20036). Models
and algorithms for project scheduling with stochastic activity durations arc
studicd in the doctoral dissertations of Stork (2001) and Uetz (2002). A review
of models and algorithms for projccts with stochastic evolution structurc can
bc found in Neumann (1999b).
Contribution. In this monograph we discuss structural issues, efficient
solution methods, and applications for various types of determznzstzc resource
alloratzon problems including gcncral tcmporal constraints, different typcs of
resource requirements, and several classes of objcctive functions. The divcr-
sity of the niodels dealt with permits us to cover many featurcs that arise in
Introduction 5
pi E Z>o with each activity and a tirne lag hij E Z with each pair (i, j) E E.
An activity i E V is referred to as fictitious activity or event if pi = 0. Oth-
erwise, we speak of a real activity. The project beginning and termination,
the receipt of materials, or ndcstones are examples of events. V a and V e
respectively denote the sets of real activities and events of the project. We
assume that the real activities must not be interrupted once they have been
begun. Let Si denote the start time of activity i , which has to be determined
when scheduling the project in the temporal scheduling and resource alloca-
tion steps. If i is a fictitious activity, Si is also termed the occurrence time of
event i. The tirne lags Sij give rise to the temporal constraints
If ( i ,j ) E E , activity j cannot be started earlier than fiij units of time after the
start of activity i. A nonnegative value of Sij corresponds to a rninimum t i m e
>
lag d:YYL= Sij 0 between activities i and j,whereas a negative value of bij
can be viewed as a m a x i m u m t i m e lag d g a x = -hij > 0 between activities j
and i. If dg2" = pi, inequality (1.1) is referred to as a precedence constraint
between activities i and j . For what follows, we establish the following con-
vention.
The temporal constraints (1.1) connect the start times of activities i and j.
Since by assumption activities must not be interrupted when being in progress,
+
From C, = S, p, it follows that thc schedule for executing the activi-
ties i E V of the project is uniquely given by specifying the respcctivc start
times S,. That is why we shall always represent solutions to project scheduling
problenis by a vector of activity start times.
1 Minimize f (S)
subject to S E ST
1
Definition 1.4 (Time-optimal schedule). A time-feasible schedule S solv-
ing the time-constrained project scheduling problem (1.2) is called time-
optimal.
All objective functions that will be considercd in this book arc lower scrni-
continuous, i.e., any lower-level set L, = {S E ST I f ( S ) <
a), a E IR, is
closcd. Since sct STis compact, this property ensures that there always exists
a time-optimal schedule provided that ST# 0.
In this subsection we shall show how thc activitics i E V and the tempo-
ral constraints S, - S, > 6,, for ( i , j ) E E can be represented by a project
net.cuork. Basically, thcrc are thrce different types of project networks. Actzvity-
on-arc or CPM networks associatc an arc ( u , v ) with each activity i , where
10 1. Models and Basic Concepts
the nodes u and u represent events (see Kelley 1961). CPM stands for "Crit-
ical Path Method", a temporal scheduling method based on activity-on-arc
networks. u is the first start of all activities i bclonging t o arcs emanating
from nodc u, whereas v is the last completion of all activitics i bclonging to
arcs terminating a t riode u. Arc (u, u) is weighted by the duration pi of the
corresponding activity i . Though only precedence constraints can be modclled
by CPM nctworks, this type of project network is widcly used in practice. In
gencral, dummy activitics havc to bc introduced for modelling the precedence
constraints among the activities arid there is no uniquc reprcsentation of the
projcct as a CPM network. The problem t o assign a CPM nctwork to the
project in question using a minimum number of dummy activities is known to
bc NP-hard (cf. Garcy and Johnson 1979, problcm ND44). Neurnann ( 1 9 9 9 ~ )
devises an O ( n 7 timc algorithm for thc construction of a CPM network with
a small nurnbcr of dummy activities, which is based on a proccdure by Brucker
(1973).
In activity-on-node networks, the nodcs are identified witli the activities.
For each timc lag dij, the network contains one arc (i,j) witli initial nodc i
and tcrminal node j, i.e., V is the riode set and E is the arc set of the nctwork.
An arc (i,j) E E is weighted by dij. Activity-on-node networks belong t o the
class of MPM networks (cf. Roy 1964, Sect. 11.2.1). MPM is thc acronym of
"Metra Potential Mcthod", the tcmporal scheduling rricthod for activity-on-
riode networks to be discussed in Subsection 1.1.3. Similar to CPM, MPM is
based on calculating longest directed paths in the project network. Obviously,
activity-on-node networks can cope with general temporal constraints. In ad-
dition, due t o the one-to-onc correspondcncc betwccn prcccdencc relationships
and arcs, thcre is a unique activity-on-node representation of the project (cf.
Neumann and Schwindt 1997).
Elnmghraby and Karnburowki (1992) havc introduced the following event-
on-node network. Each real activity i is represented by two events is and ic in
node set V. is corrcsponds to the start and ic to the completion of activity i .
Both nodes arc linked by two arcs (is,iC) and (iC,is) with wcights diic = p,
and hicis = -pi. For each time lag Sij between activities i and j , arc set E
contains ail arc (iC,jS)with weight diCj3 = dij - p i . Analogously to activity-
on-node networks, the arcs of the resulting MPM network can be intcrprcted
as minimum arid maxinlum t h e lags between the incident events. The arcs
(is,iC)and (iC,is) state that the completion of activity i must occur cxactly
pi units of time after its start, i.e., activity i must not be interrupted. The
arcs (ic,js) rcpresent completion-to-start time lags between activities i and j .
Fig. 1.1. Types of project networks: (a) activity-on-arc network; (b) activity-on-
node network; ( c ) event-on-node network
In this subsection we review thc Metra Potential Method for the temporal
scheduling of the projcct. Lct N = (V, E, 6) bc the MPM network under con-
sideration, where 6 = (6z3)(2,3)EE
denotes the vector of arc weights. Temporal
schcduling consists of
(a) computing earliest and latest start time of activitics,
(b) finding the shortest projcct duration,
(c) calculating total floats, early frcc floats, and latc free floats of activities,
and
(d) idcntifying the critical activities with zcro total float
12 1. Models and Basic Concepts
Minimize x,icv
n,~
subject to .irj - .iri > hij ((i,j) E E ) (1.3)
xi >0 (i E V)
Problcm (1.3) corresponds to thc time-constrained optimization problem (1.2)
whcrc f (S) = CiEv Si. The latcst schedule L S is obtained by solving (1.3)
with objcctivc function - CiEv .iri and additional constraint TO = 0.
Now let D = (dij)ijEv bc the matrix solving the following system of
equations
The values dij can bc intcrprctcd as time lags between activities i and j which
are induced by the set of given time lags hij ((i,j) E E ) .
Remarks 1.6.
(a) Due to Sij E Z for all (i,j ) E E, matrix D is intcgral as well.
(b) For each activity i E V, we assume that doi 2 0 (i.e, activity i cannot
be started before the project beginning) and di,,+l >
pi (i.e., the projcct
cannot be terminated before all activities have been complctcd).
(c) Each node i E V in project network N is reachable from nodc 0 and
+
node n 1 is reachable from each node-i E V. Since we always have a
maximum time lag dTE"+ = --6,+1,0 = d bctween the project beginning
+
arid the project termination and thus ( n 1,0) E E, project network N
is strongly conncctcd.
(d) Without loss of generality
-
we assume that 2 is the latcst project termina-
tion time, LC., d,+l,o = d.
(e) The minimum time lag between the project beginning and activity i equals
the earliest start time ESi of activity i , i.c.,
( f ) Likcwise, the maximum time lag between the project beginning and ac-
tivity i equals the latest start time of activity i , i.e.,
1.1. Temporal Constraints 13
If thcrc is no given maximum time lag di;"'" -die between the project
beginning and activity i , thcn LSi = 2 - di,,,+l.
(g) The earliest and latest completion times of activity i are
This formulation gives rise to the following Algorithnl 1.2 by Floyd and War-
shall (cf. Floyd 1962) for computing distances dij for all i , j E V. After having
14 1. Models and Basic Concepts
--
initialized thc values dij according to the prescribed time lags 6ij, tllc algo-
rithm computes the transitive closure of those time lags by itcrativcly putting
into force the triangle inequalities
(1.5) and thus (1.4) is solvable exactly if the matrix D calculated by thc
Floyd-Warshall algoritlin~satisfies d,, = 0 for all i E V. The number of corn-
putations performed is O(n"), which is the best possible time complexity for
this problem (note that for chccking whether or not distances d,, satisfy (1.5),
U(n3) triangle incqualitics must bc cvaluatcd).
The next algorithm, which is duc to Bartusch et al. (1988), achieves the
updatc of thc distance matrix D in U ( n 2 ) time when adding some arc (i, j )
t o tllc project network (see Algorithm 1.3). The calculation of the distance
matrix D from scratch by initializing the values dij as in the Floyd-Warshall
algoritlini and then applying the algoritl~rrlfor all arcs ( i ,j ) E E would re-
quire 0 ( m n 2 ) time, which is more cxpensivc than using the Floyd-Warshall
algorithm. The formcr procedure, however, will prove useful later on when
dealing with resource constraints and the resolution of so-called resource con-
flicts, where individual arcs are added to N.
1.1. Temporal Co~~straints 15
Remark 1.8. Thc updatc of distarlces dol, (or, cquivalcntly, carlicst start times
ES,,) after the addition of sorne arc (i, j ) to project network N can be pcr-
+ +
formed in (3(n) time by putting doh := max(dOh,doi hij djh) for all h E V.
This can easily be seen by using thc fact that the correctncss of Algorithm 1.3
docs not depend on the sequence in which pairs (g, h) are iterated. Symmetri-
cally, distances dyO(which coincide with the negative latest start timcs -LS,)
can be updated by putting dgo := max(dqO,dgi +dij +djO) for all g E V. Morc-
over, adding somc arc (0, j ) to N does not affect distances dio (i E V) and
adding sorne arc (i,O) t o N does not affect distances doj ( j E V).
Proof. Suficiency: After the addition of arc ( i , j ) with hij > -dj, t o N it
holds that dij > hij. Thus, we have dij dji+ > +
hij dji > 0, which means
that there is a directed cycle of positive length containing nodes i and j.
Necessity: Now assume that hij <-dji and consider an itcration of Al-
goritlm 1.3 for somc pair (g, h) such that distance dyh is increased. Then
+ + <
the updatcd distancc is dyl, = dyi hi3 dJh dyi - dji djh. T h e trian-+
glc incqualitics (1.6) say that dji > + +
djh dlLg dgi and thus dglL dhg + <
+ + + +
dgi - (djh dhg dgi) djh dhg = 0. This means that after applying Al-
+
gorithm 1.3 it holds that dgh dhg 5 0 for all g, h E V, i.e., N contains no
directed cycle of positive lcngth. 0
and activity i arid thus fixes the start time Si of i t o ESi = LSi. Activity i is
critical exactly if TFi = 0.
The early free float EFFi is the maximum amount of time by which the
earliest start of activity i a t time ESi can increase given that any other
activity j can be begun a t its earliest start time E S j . Hence,
The late free float LFF, is the maxinium amount of time by which the latest
start of activity i at time LS, can decrease given that any other activity j can
bc bcgun a t its latest start times LSJ. Thus,
rik = 0 means that activity i does not use resource k. Furthcrmore, we assume
that
rik 5 Rk (i E V u , k E RP)
which cnsures that sufficient rcsourcc capacity is available for processing each
activity individually. For simplicity, we may onlit resource index k whcn thcre
is only one renewable resource available.
Now lct S be somc schedulc and lct t be somc point in time. Then
For given schedule S, function r k ( S , .) : R -7' Z>Ois tcrmcd the loading profile
for renewable resource k . rk(S,.) is a right-corTtinuous step function with at
most 2n jump discontinuities. Obviously, we have r k ( S , t ) = 0 for all t < 0.
The renewable-resource constraints can be stated as follows:
7
1 subject to S E ST n SR
When dealing with the projcct duration problem, we may drop the as-
sumption that there is a deadlinc 2 on the project termination because the
objective is to maximize the slack 2 - of the deadline constraint. The
constructiori of a feasiblc schedule then turns into an easy problem if there
are no maximum time lags given. In that case, projcct network N is acyclic,
and the activities can be schcdlilcd consecutively according to any topological
ordering of the nodes z E V of N.
1.2. Renewable-Resource Constraints 19
Proposition 1.15 (Neumann et al. 2003b, Sect. 2.5). The following de-
cision problem is NP-complete.
Instance: A project with one renewable resource, a forbidden set F,
and an activity h E F.
Question: Does there exist a minimal delaying alterr~ativeB for F
containing h ?
Proof. Since conditions (1.9) and (1.10) can be verificd in polynomial time,
the problem is contained in NP. Let B with h E B be an arbitrary set of
activities using the single resource. Then B is a minimal delaying alternative
if and only if R - rninjEB rj < CiEFiB ri R. For rh = 1, we then havc
rtl = rninjEB r j and thus R- 1 < CiEF r, <
R, i.e., CiEFiB ri = R. Hcnce,
b
there is a minimal delaying alternative containing h exactly if there is a sct
A F \ {h) with CiEA ri = R. Now let I be a n instance of problcrn SUBSET
S U Mwith index set Z,sizes s ( i ) E N for i E Z, and threshold M E W (cf.
Garey and Johnson 1979, problem SP13). Wc obtain a n equivalent instance
of our dccision problcm by choosing F = Z U {h), r, = s ( i ) for all i E Z,
rh = 1, and R = M. 0
between set F \ { j ) and activity j saying that j must riot be started bc-
fore the earliest completion of some other activity i from set F . Disjunctive
precedence constraint (1.12) is equivalent to the disjunction of the precedence
constraints (1.11) for all i E F, i # j and represents a so-callcd linear reverse-
convex coristraint (see, e.g., Tuy 1995, Sect. 7). Whereas the number of altcr-
natives for breaking up F by precedence constraints is C3(IFI2), this number
is of linear order O(IF1) when using disjunctive precedence constraints. Thc
set of all schedules satisfying a disjunctive prcccdcnce constraint is generally
disconnectcd and thus in particular nonconvcx. As will bc shown in Subsec-
tion 3.1.2, the mininiization of regular (i.e., cornponcntwise nondecreasing)
objcctivc functions can nevertlleless be done with a timc complcxity that is
linear in the maximum projcct duration d. In literature, disjunctive prece-
dence constraints are also referred to as AND/OR precedence constraints or
waiting conditions (cf. Mijhring ct al. 2004). They have been introduced by
Igelmund and Radcrmachcr (1983) in thc form of preselective strategies for
resource-constrained projcct schcduling with stochastic activity durations.
An arbitrary forbidden set F is said to be brokcn up if all minimal for-
bidden subsets of F are broken up. Let B be some minimal delaying alterna-
tivc for F . From Proposition 1.16 it thcri follows that brcaking up F can be
achieved by imposing a set of precedence constraints
s, 2 5'2 +Pz ( j E B)
between some activity i from thc maximal fcasiblc sct A = F \B and all
activities j E B or by a disjunctive prccedencc constraint
between set A and sct B. Notc that in the case of precedence constraints, onc
and the same activity i E F \ B can be chosen for all j E B because any
conjunction of precedencc constraints (1.11) for the activities j from delaying
alternative B implies shifting all j E B behind the earlicst finishing activity
i E F \ B, which breaks up forbidden set F.
1.2. Renewable-Resource Constraints
the resulting matrix is unique (cf. Dorndorf et al. 2000b). More precisely,
any consistency test can be interpreted as a function y mapping distance
matrices D to updatcd distancc matrices y(D). If for all consistency tests
y E r, D < <
D' implies y ( D ) y(D1), then thcrc exists only one fixed-point
rnatrix D with D = y ( D ) .
denote the minimum time activity i has to be processed in interval [a,b[. For
any time-feasible schedulc S E ST,
the addition of the respective arc (0, i ) with weight ti to project network N
it holds that
+
~ k ( t , 1) > Rk (1.16)
for some resource k E RP and some time t. Then the capacity of rcsource k is
not sufficient to match the requircments for resource k a t time t, i.e., we havc
<
shown that any fcasiblc schcdule S satisfics Si ti - 1 (recall that conv(S)
is integral). For cach activity i , thc values for ti can be tcsted according to
a binary search in sct [ESi,LSi] n Z,wherc ti is dccreascd if the test fails in
refuting the hypothesis, and increased, otherwise. Testing hypothetical latest
start times can be performed analogously. When we apply the test to a givcn
activity i E Va, we have to update the core loading profiles ri a t each itera-
tion of the binary scarch, which again takcs U(IRf In log n ) tirne. Obviously,
inequality (1.16) needs only to be evaluated at jump-up discontinuities of the
core loading profiles, i.e., at points t = LSj (j E V). Thus, the time cornplex-
ity of applying shaving to activity i is U(1og dlRf In log n ) . Since updating the
core loading profiles is includcd in thc shaving proccdurc, establishing a new
earlicst or latest start time does not incur any additional effort.
The following unit-interval capacity test determines points in time at
which certain activities cannot be executed. Consider some real activity i E V a
that, at a given time t, is not necessarily in progress (i.e., ESi < t - pi or
> +
LSi t 1). In this case, activity i cannot be carried out at time t if for some
resourcc k E RP
+
'UJk(t,t f 1) T,k > R k
+
which implies S, E [ES,,t -pi] U [t 1,LSi] for any feasible schedule S (note
+
that due to pi@,t I ) = 0, rcquiremcnt r i k does not cntcr into workload
+
wk(t,t I ) ) . Two particular cases allow the introduction of additional ternpo-
ral constraints. If t is less than the carliest complction time ECi of activity i ,
> +
we obtain S, t 1, and if t is greater than or equal to the latest start time
LSi of i, it follows that Si 5 t - pi. Again, it suffices to consider points in
time t coinciding with the latest start time LSj of some j E Va. Accordingly,
applying the unit-interval capacity test to activity i requires O(IRPln) time.
The update of core loading profiles after having established a new earliest or
latest start tirne can again be performed in Q(IRPIn1ogn) time.
Thc activity-interval capacity test generalizes several consistency tests
that havc been devised for machine scheduling (see Dorndorf et al. 1999). Let
U C Va bc a rlonempty sct of rcal activities and let U', U" c U be two subscts
of U. If for some resource k E RP, the interval capacity in the interval frorn
the earliest start of an activity from set U \ U' to the latcst complction of an
activity from set U \ U" is lcss than the workload of the activities frorn set U,
1.e.,
then there is somc activity from set U' that is startcd first or somc activity
from set U" that is conlpleted last among the activities frorn set U:
1.2. Renewable-Resource Constraints 27
For certain choices of scts U' and U", the disjunction (1.18) results in temporal
constraints (cf. Table 1.1).The corresponding consistency tests are known as
input, output, input negation, and output negation tests. Thc computational
effort associated with the diffcrcnt activity-intcrval consistency tests will arise
from the analysis of the next consistency test.
Thc general interval capacity test refers to time intervals [a, b[ for
which the residual interval capacity Rk(b - a ) - wk(a,b) for given resource
k E R P is minimum. In Schwindt (1998c), Sect. 3.3, and, independcntly, in
Baptiste ct al. (1999) it has been shown that intervals [a, b[ with minimum
residual interval capacity can be determined by investigating U(n2) critical
intervals (where interestingly it is not sufficient to consider only intervals
whose endpoints coincide with carliest or latest start or completion times).
Similarly to the shaving technique, we may establish a hypothesis on the
consistency of somc tcmporal constraint St-SJ >
t,,. If under this assumption
there is a resource k with
the hypothesis has bcen refuted and thus we can introduce the reverse tempo-
>
ral constraint S, - S, -t,, +1. For each pair (i, j ) E Va x Va wherc i # j ,
a binary search in sct [d,, , -d,,] n Z provides, within U(log d ) iterations, the
minimum t,, for which S, - S, >
t,, can be disproved. Since for given re-
source k , an intcrval [a,b[ with rnininium residual interval capacity can be
found in U(n2 logn) time (cf. Schwindt 1998c, Sect. 3.3), the time required
for applying the general interval capacity tcst to a given pair ( i , ~is )of order
~ ( l o g 2 l R " nlog
~ n).
The general intcrval capacity test represents a gencralization of all activity-
interval consistency tests listed in Table 1.1. This can be seen as follows. Con-
sidcr, for given sets U, U', U", the time intcrval [a,b[ wherc a := ming,u\u, ES,
and b := maxhEu\u,, LCh. Then the right-hand side of inequality (1.17) co-
incides with the interval capacity Rk(b - a ) of interval [a, b[. We first show
that the general interval capacity test generalizes the input test. Let U C Va
28 1. Models and Basic Concepts
Note that in contrast to the prcccding interval capacity tests, tlie effective-
ness of the energy prccedencc test is independent of the tightness of time win-
dows [ES,,LS,]. Applying the energy precedence tcst to activity j requires
O(1RPln) time. If the energy precedence test is applied to all activities, the
amortized computational effort per activity can be decreased to O(IRpl+ n).
In practice, resources that arc consumcd are generally renewed later on. If
the replenishment occurs during the project cxccution, thc availability of the
rcsourcc increases at certain points in time. In that case, the feasibility of a
schedule generally depends on thc scqucncc of dcplctions and replenishments.
For examplc, in many real-life projects certain project activitics arc associated
with disbursements for materials or staff leasing, and progress payments arise
for completed subprojects. It may then be necessary to delay certain disbursc-
mcnts behind payments in order to avoid a negative cash balance. Resources
that are depleted and replcnished over timc arc called cumulatzve resources.
The concept of cumulative resources has bcen introduced by Schwindt (1998~).
A cumulative resource can bc regarded as the inventory level in some storage
facility of finite capacity. The invcntory level is bounded from below by somc
safety stock and boundcd from abovc by thc capacity of the storage facility.
Carlier and Rinnooy Kan (1982) and Carlier (1989) havc dcalt with the
special case where activitics consume nonrenewable resources that become
available at givcn points in time. Thc authors provide a polynomial-time al-
gorithm for minimizing regular and max-separable objective functions f . In
addition they show that in prcsence of replenishing activities the optimization
problem becomes NP-hard.
Shewchuk and Chang (1995) havc considercd scheduling problems with
recyclable resources, i.e., renewable resources whose availability expircs after a
given lifcspan and which may be reused after a certain repair time (likc cutters
that have to be re-ground from time to timc). Such a recyclable resource can be
vicwcd as the combination of a classical renewable resourcc and a cumulative
resource kceping thc rcsidual time bcfore recycling becomes necessary.
Of course, cumulative resources can also be used to formulate part avail-
ability constraints arising, c.g., in construction projects or assembly manufac-
turing (sec, c g , Kolisch 2000, who has deviscd a mixed-irtegcr lincar program
for scheduling in assembly environments). If certain intermediate products
represent common parts, which arc components of differcnt subassemblies or
final products, onc has to decide on the sequence in which completed items of
those common parts are allotted to the respective products into which they
are installed (assignment-sequence problem, cf. Neurnann and Schwindt 1997).
The conccpt of cumulativc rcsourccs pcrmits to intcgrate the assignment-
sequence problem into the resource allocation problem (see Section 6.1). A
further application of cumulativc rcsourccs in thc context of assembly man-
agement is the modelling of spatial capacity constraints, which are due to
the limitcd asscmbly area. Kolisch and Hefi (2000) have dcvcloped schcdulc-
improvement methods for asscmbly scheduling problems including the latter
type of constraints (sce also Kolisch 2001b, Ch. 10).
Thc case of general cumulative resources has bcen considered by Neumann
and Schwindt (2002), who have discussed structural issues and have proposed
a branch-and-bound algorithm for project scheduling subject to inventory
constraints. Constraint-based methods for solving scheduling problems with
cumulative resources have been dcveloped by Beck (2002) and Laborie (2003).
30 1. Models and Basic Concepts
For what follows, we assume that cumulativc resources are depleted and
replenished discontinuously at the occurrence of certain evcnts likc the starts
and completions of real activities. Accordingly, we associate the resource re-
quirements with events instead of real activities, and we represent the project
undcr study by an event-on-node network (see Subsection 1.1.2). Thc case
whcrc curnulative resources are replenished and depleted continuously over
the processing timc of activities is treated in Section 5.4.
Notice that conditions (1.19) are ncccssary and sufficient for the existence
of a resource-feasible schedule. Under conditions (1.19), a resource-feasible
schedule is obtaincd by scheduling all events at time 0.
The basic resource-constrarned project scheduling problem with cumulative
resources can be stated as follows:
(1.21)
subject to S E ST n Sc
Remarks 1.21.
(a) Without loss of generality we may assume that Ek = m for all k E RY
because the storage capacity of resource k can be - taken
- into account by
introducing a fictitious resource k' with &, = - R k , R k , = m , and rik, =
-rik for all i E Ve. Since SR remains unchanged when adding some integer
r. E Z to r o k , &, and &, we may in addition assume that Rk = 0 for
all k E RY.
(b) The resource-constrained project scheduling problem (1.8) with rcncwable
resources is a special case of problem (1.21). To formulate the renewable-
resource constraints in terms of temporal and cumulative-resource con-
straints, we replace each real activity i by two events activities is and ic
with dz',"f,'" dz,ac" = pi. For each renewable resource k E RP, we intro-
duce a cumulative resource k' with safety stock & = 0, storage capacity
-
Rk, = m, as well as requirements r ~ k = , R k , rTL+l,kf= 0 and r i p = -rik,
'r,ck/ = r ,k for all real activities i E V a .
<
Remark 1.24. We assume that Bk. 0 and R k > 0 for all k E 727, which
ensures that F = 0 is not a forbiddcn set. It follows from Remark 1.21a that
this convention docs not mcan any loss of generality.
From (1.23) it immediately follows that minimal delaying alternatives for sur-
plus sets only contain replenishing cvents and that conversely, minimal delay-
ing alternatives for shortage sets only contain depleting events.
To prove the basic theorem that will show how to resolve resource conflicts
in a systcmatic way, we need the following preliminary lemma.
Now assume that C j E F \ B rjk > Rk. Then F \ B is a k-surplus set, and Lem-
ma 1.26 implics the existence of a set F' E .F+ with F' n v;'
C ( F \ B ) n VL+
and F' n V;- > ( F \ B ) n V , F R o m F' n VEBC ( F \ B) n v;'
it then follows
that F' n v,"' n B = 0, which contradicts the assumption. Consequently, we
have C j E F \ B r j k 5 Rlc for any set B with property (1.24), and thus each
C-minimal set B meeting condition (1.24) is a minimal delaying alternative.
Necessity: Now let B be a minimal dclaying alternative. We assume the exis-
tence of a set F' E 3: with ~ ' v{+ c
n Fn v;', F' n V z -> FnVl-,
and F' n v,"' n B = @. Clearly, we have r 3 k > 0 for all j E B, which
then implies B n v;' = B , i.e., F' n B =-0 and F' = F' \ B. Thus,
<
C j E F , r j k = CjEI.',\B r j k <
C j E F \ B ~ j k R k , i . ~ . F'
, is not a k-surplus
-
set, which contradicts the assumption. Moreover, we have C j E F \ B , ~ j > k Rk
for all subsets B' c B, which implies that for each B' c B, there is a set
F' E F .: with F' n v,"' 2 Fn v,"' and F' n v;' n B' = 0 (see the proof of
sufficiency). Thus, B is C-minimal in the set of all sets satisfying (1.24).
The proofs for the casc of a shortage set F are analogous. 17
Algorithm 1.6, which is a variant of Algorithm 1.4, shows the correspond-
ing rccursive procedure used for computing the set B of all minimal delaying
alternatives for a forbiddcn set F and a resource k. Sincc the projcct begin-
ning 0 may be contained in minimal delaying alternatives, the procedurc is
invoked by MinimalDelayingAlternatives(F,k, -1).
1.3. Cun~ulative-ResourceConstraints 35
Theorem 1.28 states that any resource conflzct caused by the occurrence
of the events of somc forbidden set can be resolved by adding prccedcncc
constraints S, >
S, t o the original temporal constraints. As a consequence,
thc sct Sc of all resource-feasible schedules rcpreserits a union of polyhedral
36 1. Models and Basic Concepts
cones, and the sct S of all fcasible schedules again is a finite union of inte-
gral polytopcs. Since each project scheduling problem with rcnewable-resource
constraints can bc represented as an cquivalent project scheduling problem
with cumulative-resource constraints, this union is generally disconncctcd.
Similarly to thc casc of rencwable resources, forbidden scts F can be broken
up by introducing (ordinary) precedence constraints or disjunctivc preccdence
constraints. Let F bc a k-surplus sct for somc rcsource k and let B be some
minimal delaying alternative for F and k . Then we may cithcr irnposc a set
of precedence constraints
S,>Si ( j E B )
-
min S .
jEB ' > rnin
ZEA
- .
S,i
between some replenishing event i from set A = V;' \ F and all events j from
a corresponding minimal delaying alternative B or by a disjunctive precedence
constraint
jEo SG
rnin . > min Si
Z EA
~ , =k ES,, if r z k > O
S: = LS,, otherwisc
} (i E v e )
1.3. Cumulative-Resource Constraints 37
i.c., as the sum of all requirements that must take place before j and all re-
plenishments that possibly but not necessarily occur before j . Now assume
that ChtVP.dhl>O r i L k < &, which implies that somc of thc lattcr replenish-
ments must arise bcforc 2. Lct h l , . . . , h, be a nurnbcring of the events from
set vli(j) := {h E Vz I d,iL < 0, dh, < 0) according to nondecreasing
earliest occurrence tirnes ESh,and let p be the smallest index such that
Then j must occur aftcr time ES,,p,and we obtain the temporal constraint
+
S, 2 ESh,L 1. If distance matrix D is givcn, thc timc needed for applying
thc balance test to activity j is of ordcr U(IRYInlogn). Updating matrix D
after having increased ESJ takes U ( n 7 timc.
The balancc test can be strengthrncd as follows. Wc consider one event
i E v{+(~) and we assume that St >
S,. Thcn upper bound 5;;;<(j)
on the
38 1. Models and Basic Concepts
on the invcntory lcvcl at the occurrence of evcnt j and the corresponding lowcr
bounds r- < .
(j)and ~ 1 (;3 ) .
Relations, Schedules, and Objective Functions
When allocating scarce resources over time we have to define precedence rcla-
tionships among the activities of the project. Those precedence relationships
establish a binary relation in the activity set of tlie project. Together with
tlie original temporal constraints, the binary relation gives rise to a preorder
in thc activity sct. Dcpcnding on tlie type of basic project scheduling prob-
lcrn given and the specific objective function to be minimized, different types
of preordcrs have to bc investigated. In this chapter we revicw and extcnd
a classificatiorl of schedules and objective functions that has been proposed
by Ncumann ct al. (2000). The classification is based on two basic repre-
sentations of the fcasible rcgion of project schcduling problcms as unions of
relation-induccd polytopes. Thc purpose of the classification is to provide, for
each class of objective functions, a finite set of candidates for optimal sched-
ulcs that arc characterized as specific points of the relation-induccd polytopes
slick1 as minimal points, local minimizers of the objective function, or vertices.
Definition 2.4 (Relation network). Given relation p i n set V", the rela-
tion network N(p) results from project network N by adding, for each pair
( i ,j ) E p, the arc ( I , j) ,with weight pi. B y D(p) = (d&)i,jEva we denote the
distance matrix belonging to relation network N(p).
Bartusch ct al. (1988) consider time-feasible strict orders 8 that are extcn-
sions of the strict order
Proposition 2.5 (Bartusch et al. 1988). Let M3R be the set of all 2 -
minimal feasible relations i n uctiv.ity set Va. Then {ST(p) I p E M F R ) is a
covering of S .
Notice that in general thc abovc covcring is not a partition of S because two
different time-feasible relations p and p' may not be contradicting each other
(i.e., ST(p U p') = ST(p) n ST(p') # 0). Proposition 2.5 will be uscful when
dealing with objective functions that can efficiently be minimized on convex
polytopes like regular or convex functions. In this casc, thc basic rcsource-
constrained project scheduling problem (1.8) can be solved by cnumerating
(subscts of) relations p E M 3 R .
In the following wc develop characterizations of timc-fcasiblc and feasible
relations that allow for efficiently checking the feasibility of a given relation.
42 2. Relations, Scl~edules,and Objective Functions
The latter technique will bc used when dealing with the case of uncertain input
data in Section 6.5, where solving a resource allocation problcm requires the
generation of appropriate feasible relations in the activity set. We shall apply
a similar approach in Section 5.2 for deciding on the feasibility of schedules
when resource units are occupied during a sequence-dependent changcover
time between the execution of consecutive activities.
Lemma 2.7. Let ST# 0 and let U C: Va be a set of real activities such that
dij < pi for all i, j E U . Then there exists a time-feasible schedule S with
>
A(S, t ) U for some t > 0.
A constructive proof of Lemma 2.7 for the case where no deadline d for the
latest termination of the project is prescribed can be found in Bartusch et al.
(1988).
2.1. Resource Constraints and Feasible Relations 43
Proof Sufficiency: Let p be a time-feasible relation such that for all minimal
forbidden sets F G ^ , there is a pair (i, j) of activities i, j G F with d^- > pi.
Each schedule S G <5T(P) satisfies precedence constraint Sj > Si -\- pi for
all those pairs (i, j ) G G{D{p)). From Theorem 1.17 it then follows that all
schedules S G ST{P) are resource-feasible. Thus, with ST{P) Q ^T we have
9y^ST{p)CSRnST = S.
Necessity: We assume that there is a forbidden set F with d^j < pi for
all 2, j G F. Then from Lemma 2.7 it follows that there exists a schedule
S G ST{P) for which all activities i e F overlap in time. Thus, S is not
resource-feasible and ST{P) % S, which contradicts the feasibility of rela-
tion p. D
Example 2.10. We consider a project with four real activities and one renew-
able resource. Figure 2.1a shows the relation network N{p) belonging to strict
order p = {(1, 2), (3,4)}, where nodes i GV^ are labelled with durations pi on
44 2. Relations, Schedules, and Objective Functions
Fig. 2 . 1 . Difference between feasibility and BMR-feasibility of strict orders: (a) re-
lation network N{p); (b) minimum (s,t)-flow in network G{0)
D e f i n i t i o n 2 . 1 1 ( S c h e d u l e - i n d u c e d s t r i c t o r d e r ) . Given a schedule S,
strict order 9{S) := { ( i , j ) £ V^ x V^ \ Sj > Si -i-Pi} is the schedule-induced
strict order which corresponds to the precedence relationships established by S.
The relation polytope ST{9{S)) of 9{S) is called the schedule polytope of S,
and the relation network N{9{S)) is called the schedule network of S.
<
0 t' < d is a subset of some activc sct A ( S ,t ) where 0 < t < 2.This proves
the following proposition.
Proposition 2.12 (Neumann et al. 2000). Strict order Q ( S )induced by a
time-feasible schedule S i s feasible if and only if schedule S i s feasible.
Notice that for a timc-feasible schedule S , strict order Q ( S )represents the
C-maximal relation whosc rclation polytopc contains S . This can easily be
shown by assuming the existcnce of some rclation p > Q ( S )with S E ST(p).
Then relation p contains a pair (i, j ) f Q ( S ) That
. is, we have S3 < S, p,, +
which contradicts thc assumption S E ST(p).The lattcr observation implies
the following statcmcnt.
Proposition 2.13. Each C - m a z i m a l feasible relation i s induced by s o m e fea-
sible schedule.
The rclation polytope S T ( @of
) some strict order 8 is the set of all time-
fcasible schedules inducing an extension of 8. The set of all schedules induc-
ing B is termed the equal-order set of Q.
Definition 2.14 (Equal-order set). Let B be s o m e schedule-induced strict
order i n set V a . Equal-order set SF(Q):= { S E ST I H(S) = 0 ) i s the set of
all time-feasible schedules inducing strict order. 0 .
Equal-order sets represent differences of schedule polytopes and thus are
generally not closed. If Q is an C-maximal time-feasible strict order, we
have SF(@)= S T ( @ )and, ST(8) c S T ( Q )otherwise.
, Equal-ordcr sets arc
convex because every schedule S on a line segmcnt joining two schedules
S', S" E SF(Q)induces strict ordcr 0. The concept of cqual-order sets leads
to the second basic representation of the set S of all feasiblc schedulcs.
Proposition 2.15. Let SZO be the set of all feasible schedule-induced strzct
orders. T h e n { S F ( Q I) Q E SZO) i s a partition of S .
We will refer to this rcprescntation of S when dealing with rcsourcc levclling
problems, where the objective function is regular or concave on equal-order
sets and thus can be minimized by investigating minimal points or verticcs,
respectively, of equal-order sets. The following proposition shows that this
corresponds to enumerating minimal points or vertices of schedule polytopes.
Proposition 2.16. For a given project, the set of ull m i n i m a l points (resp.
vertices) of equal-order sets coincides with the set of all m i n i m a l points (resp.
vertices) of sch,edule polytopes.
Proof. We show thc coincidence of the vertex sets. The same reasoning can be
applied to minimal points. Let S be a vertex of some schcdule polytope ST(0).
Then S is a vertex of equal-order set SF(O(S))as well because S E S F ( Q ( S ) )
and SF ( Q ( S )C) S T ( Q )Now
. let S bc a vertex of some equal-order set ST (0).
Then SF(8) = S T ( Q ( S )\ )(Up3@ST(p)). Since set uP3@ST(p) is closed, S must
be a vertex of S T ( Q ( S ) ) . 0
46 2. Relations, Schedules, and Objective Functions
2.1.2 Cumulative-Resource C o n s t r a i n t s
L e m m a 2.19. Let ST # @ and let U C Ve be a set of events such that for all
i, j E Ve with dij >
0, j E U implies i E U. T h e n there exists a time-feasible
schedule S with A(S, t ) = U for s o m e t 2 0.
Moreover, from the definition of set U it follows that (2) dgh < -1 for all
g f U , h E U . We first consider the addition of one arc ( i , j ) with i E U .
Since (1) providcs d j i < 0, it follows from Proposition 1.9 that no directed
cycle of positive length is created. Next we show that the updatcd distance
matrix D still satisfies inequalities (1) and (2). Obviously, adding ( i ,j ) docs
not change any distance d j h with h E U since from (1) we havc dji+hij +dj,, 5
+ +
0 0 d j h = d j h . For distances d,,, with g f U and h E U that are modified
whcn calling Algorithm 1.3 we have dgh = dgi hiJ d j h -1+ + < + +
0 0 = -1
because of (1) and (2). Now consider thc addition of one arc ( j , i ) where
+ +
i f U. (2) providcs d j i d i j < 1 (-1) = 0, and thus none of the created
directed cyclcs has positive lengtli. By applying (2) wc obtain thc incquality
+ + + +
djlL = d j j Sji dZl, < 0 1 (-1) = 0 for thc modified distances d j h with
+ +
h E U. From (2) is also follows that d g h = d g j bji dZh -1 < +
1 - 1 = -1
for the modified distances d g h with g f U and Iz E U.
Thus, we can introduce a minimum time lag d;"" = 0 for all i E U, i # j
arid a minimum time lag dytir" 1 for all i f U such tliat the reduced
set S& of time-feasible schedules belonging to expanded project network N' is
nonempty. Since all cvents i E U occur before or at the same time as j and all
cvents i f U must be scheduled (strictly) latcr than j , the active set A(S, Sj)
at timc S j coincides with set U for all schedules S E S;. 0
Lemma 2.20. If there is a minimal k-surplus set F E 3; with d i j < 0 for all
2
i E V,' \ F , E F n v;' or a minimal k-shortage set F E .Fi with dii < 0
for all i E Vz \ F , j E F n V,"-, then there exists a forbidden set F' for which
j E F' implies i E F' for all i , j E v," U Vt- with d i j > 0.
Proof. Let F be a minimal k-surplus set with dij < 0 for all i E V -: \ F,
j E F n v,". We construct surplus set F' as follows. Wc first delctc all
i E Vz- n F from F for which d i j < 0 for all j E F n v;+. Sincc for none of
>
the deleted cvcnts i there is some j E F' n VE' with dij 0, it holds that (1)
d i j < 0 for all i E V;- \ F', j E F'nv,"'. After the deletion of events i it holds
that for any h E F' there is some j E F' n v': >
with drbj 0. Now consider
distances dih for i E Vt- \ F' and h E Vz- n F'. For given h E Vz- n F', let
j E F' n v,"' bc an event such that d h j > +
0. ( I ) provides 0 < dij L dih d h j
for all i E Vz- \ F, which together with d h j 2 0 implies dih < 0. Thus, we
have (2) dih < 0 for all i E V ; \ F', h E F' n Vf- .
Ncxt, we add all j E v;' \ F' to F' for which d j j , > 0 for some
j' E F' n v{+, so that (3) d g j < 0 for all g E v;+\ F', j E F' n v;+. Lct
j bc o m of the added events and let j' E F' n v;+ be an cvent such that
dj,, > 0. From (1) it follows that 0 > d i j , > +
dij d j j , for all i E Vz- \ F'.
Due to d j j ! 2 0, this implies d i j < 0 for all i E Vl- \ F', and thus property
(1) is preserved. The validity of property (2) is not affected by adding events
j E v+: \ F' to F' either. Finally, consider distances d9h for g E v':
\ F' and
h E F' n Vz-. For given h E F' n V;- , Ict j E F' n Vz be an cverit such tliat
> >
d h j 0. Using (1) wc have 0 > d g j d g h + d h j , which then implies dgr, < 0.
Thus, it holds tliat (4) d g h < 0 for all g E v': \ F', h E F' n V:-.
48 2. Relations, Schedules, and Objective Functions
The resulting set F' is a surplus set bccausc it ariscs from F by deleting
events i E Vc- and adding events j E Vf. Morcover, from (1) t o (4) we have
d,, < 0 for all i $ F' and all j E F', which proves thc asscrtion. The case of
a minimal k-shortagc sct F can be dealt with analogously. 0
Maximize rikxi
t€Vr
subjcct to xh - xi >0 ((h,i ) E 0 : h # i)
xj = 1 (2.2)
xi = 0 (i E Ve : ( j , i ) E 0, (i, j) $ 0) (3)
xi E {O,1) (i E Ve)
Thc coefficient matrix of constraints (1) coincides with the negative transposed
incidence matrix of the directed graph G j k with nodc set Ve and arc set
H \ {(i,i ) I i E V"}. That is why the coefficient matrix of constraints (1) to (3)
is totally unirnodular, and the integrality condition (4) for variables xi can be
replaced with 0 5 xi < 1 (i E V"). As a consequence, problcm (2.2) can bc
fornlulated as a linear program. In the sequel, we show that the dual of this
linear program reprcscnts a minimum-flow problem.
Let i E Ve be some predecessor of j in 0. Then it follows from (1) and
(2) that xi = 1. Conversely, let j be predecessor of some i E V" in 0 with
(i,j) $ 0. Then (3) implies that x, = 0. The variables xi with fixcd value 1
or 0 can be eliminated as follows. If z i = 1 because ( i , j ) E 0, thc transitivity
of rcflcxive preorder 0 provides (h, j ) E 0 and thus xr, = 1 for all (h, i) E 0.
Symmetrically, assume that xh = 0 because (j,h) E H and ( h , j ) $ 0. Then
the transitivity of 0 implics that ( j , i ) E 0 and (i,j) $ 0 and thus by (3) xi = 0
for all ( h , i ) E 8. Hcncc, constraint (1) can be restricted to variables z ; for
which (i, j) $ 0 and variablcs xh for which (j,h) $ 0 or (h, j) E 0. Otherwise
we would have X I , = 1 or x; = 0, which implies (1). For those variables x ,
50 2. Relations, Schedules, and Objective Functions
x
Now let s and
Maximize
zEV;
~nx,
subject to z,, - z, 2 0
O<xi<l
((h,i ) E Qj : h # i )
(iEY) I
- t be a source and a sink to be added t o directed graph Gjk.
(2.3)
—1
Fig. 2.2. Verification of feasibility: (a) project network; (b) minimum (s,^)-flow in
network Gi\ (c) minimum (5,t)-flow in network G2 — G3
Again, it can bc shown that cach minimal point (resp. vertcx) of an equal-
preorder set is a minimal point (resp. vcrtex) of some schedule polytope and
vice versa (see Proposition 2.16).
In machine and project scheduling without maximum timc lags, different finite
sets of minimal-point schedulcs havc been used for the optimization of regular
objective functions (see, e g . , Baker 1974, Sect. 7.2, for a study of nondelay, ac-
tive, arid serniactive schedules in machine scheduling and Sprecher et al. 1995
for the generalization of those concepts to projcct scheduling with renewable
resources). Based on the feasible relations discussed in Subsection 2.1.1, thc
classification of Sprccher et al. (1995) has been extended by Ncumann et al.
(2000) to project scheduling problems with general temporal constraints and
nonregular objective functions. This section rcfcrs to thc latter classification
of schcdules.
All resource allocation methods discussed in this book arc based on one of
the two basic representations of set S , either as a covering by relation poly-
topes or as partition by equal-preorder sets (where the term equal-prcorder
set may also designate an equal-order set). The schedules to be dealt with in
Subsections 2.2.1 and 2.2.2 rcfer to the first and to the second representations,
respectively.
Legend:
A + B rriearls A >B
Fig. 2.3. Relationship between sets of schedules
Since the minimal point of a relation polytope is always a vcrtcx, any quasi-
active schedule is quasistablc as well.
A schedule S is quasiactive precisely if no noncmpty set of activities can
be scheduled earlier without deleting at least one prcccdencc rclationship
(i,j ) E Q(S)or violating some temporal constraint. Schedulc S is quasistable
exactly if there is no nonernpty set of activities which can be scheduled both
earlicr and later such that all prcccdencc rclationsllips ( i ,j) E Q(S) and all
temporal constraints are observed. The next proposition provides an equiva-
lent formulation of thc latter observation, which will be useful when dealing
with algorithms operating on the sets &AS and Q S S of all quasiactive and
all quasistable schcdulcs in Chapter 4.
From Proposition 2.28 it follows that the quasiactiveness and thc qua-
sistableness of a givcn schedule can be checked in polynomial timc. A furthcr
implication of Proposition 2.28 is that any quasistablc schcdule (and thus any
quasiactivc schedule as wcll) is intcgral and that any quasiactive schedule S
satisfics
2.3. Objective Functions
Legend:
A + 13 means A >B
Fig. 2.4. Relationship between sets of schedules, revisited
Consider some nonempty relation polytope ST(p). Any regular objective func-
tion is minimizcd by thc uniquc minimal point minST(p) of ST(p), which co-
incides with the earliest schedule belonging to relation network N(p). Now let
f bc some convex (and due to our lower serriicoritiriuity assumption) contin-
uous objcctive function. Then finding a minimizer of f on ST(p) can, under
somc mild technical assumptions, be achicvcd in polynomial time, e.g., by
the ellipsoid method (cf. Grotscliel et al. 1998, Sect. 4.1) or, more cfficiently
on the average, by interior-point methods based on self-concordant barriers
for ST(p). Self-concordant barriers are available for different classes of con-
vex functions (sce thc book by Ncsterov and Nemirovskii 1994 for details).
The next definition provides a class of objective functions which admits a
smooth coordinate transforniation such that the resulting time-constrained
project schcduling problem is a convex programming problem. Recall that a
bijection ip is called a C1-diffe~mor~hisrn if both p and i p - l arc continuously
differentiable.
Definition 2.29 (Convexifiable and linearizable objective functions).
Let f : ST -+ E% be some objective function. W e call f conuexijiable if
there exists a C1-diffeomorphism cp : ST + X from ST onto some Eu-
clidean space X such that f o p-' is a convex function and the images
p(ST(p)) = {p(S) I S E ST(p)) of all relation polytopes under ip are con-
vex sets. I f f o ip-' is linear, we speak of a linearizable objective function f .
Trivially, each convex objectivc function is convcxifiable and each linear objec-
tive function is linearizable. In addition, we notice that due to the continuity
of ip-l, all images p(ST(p)) are compact sets and because ST is a relation
polytopc, sct X = p(ST) is convex.
A time-fcasiblc schedule S E M C ST is called a local minimizer of f on
M if for some E > 0, S is a rninirriizer of f on the relative ball M n B,(S)
around S in M (for the basic concepts of relative topology in Euclidean spacc
nccded for what follows we refer to Sydszter et al. 1999, Ch. 12). Roughly
speaking, the reason for the tractability of time-constrained project scheduling
with convex objectivc functions is that each local minimizer of f on a relation
polytope ST(p) minimizes f on ST(p).The next proposition relates the sched-
ule sets introduced in Subsection 2.2.1 to regular and convcxifiable objective
functions. It also shows that, as for convex objcctivc functions, any convexi-
fiable objective function f can bc minimized on relation polytopes ST(p) by
computing a local minimizer of f on ST(p).
Proposition 2.30. Let f be some lower semicontinuous objective function
r ~ n dassum.e th,at S # 0.
2.3. Objeckive Functions 57
(a) Iff is regular, the set of active schedules contains an optimal schedule.
(b) Iff is linear, the set of stable schedules contains an optimal schedule.
(c) I f f is linearizable, the set ofpse,udostable schedules contains a n optimal
schedule.
(d) I f f is convexifiable, any set containing a local minimizer o f f for each
(c-maximal) relation polytope contains an optimal schedule.
Proof. (a) and (b) arc obvious. We first show (d). Let S bc a local mini-
mizer of f on somr relation polytopc ST(^). Then there exists some E > 0
such that f (S) < f (S') for all S' E ST(P) n B E ( S ) .With x = cp(S) and
x' = cp(S1)this mcans that (f 0 cp-')(x) = f (S) 5 f (S') = ( f 0 cp-')(XI)
for all x' E cp(ST(p) n BE(S)).From the injectivity of cp we can infcr that
cp(ST(p) n BE( S ) ) = cp(ST(p)) n p(B,(S)), wherc it follows from the continu-
ity of cp-l that cp(B,(S)) is open. As a consequence, there cxists some E' > 0
such that thc ball B:,(x) with radius E' around x in X is included in p(B,(S)).
This implies that x is a minimizcr of f o cp-' on set c p ( S ~ ( p )n ) B:, (x), i.e., a
local minimizer off ocp-' on c p ( S ~ ( p ) )Sincc
. by assumption f op-' is a convex
function and p(ST(p)) is a convcx set, x is also a (global) minimizer of f op-'
on cp(ST(p)), i.e., f (S) = ( f o cp-l)(x) < (f o cp-')(XI) for all 3:' E c p ( S ~ ( p ) ) .
<
Thus, wc havc f (S) f (S') for all S' with x' = cp(S1)E c p ( S ~ ( p ) )or, , equiva-
<
lently, f (S) f (Sf)for all S' E ST(^). As a conscqucnce, any local minimizer
o f f on some relation polytope ST(P) minimizes f on the total polytope ST(P).
From Propositions 2.5 and 2.18 it follows that cp(S)= ( P ( U ~ ~ ~ ~ R S = ~ ( P ) )
upEMFRP(ST (p))) , which proves the assertion.
We now show statement (c). Since f o p-' is linear on X , there exists somc
extreme point x of p ( S ) C X that minimizes f o cp-' on p ( S ) . Now assume
that S = p-'(2) is not a local extreme point of S . Thcn there is an open line
segment t c S containing S . Since cp-' is continuous and p is injcctive, this
means that x is a relative interior point of cp(t)c p ( S ) , which contradicts thc
fact that x is an extreme point of cp(S). 0
Neumanri et al. (2000) have considered quaszconcave objective functions
and so-called bznary-monotone objcctivc functions. An objective function f
is said to be quasiconcave if its upper-level sets U, = {S E ST I f (S) 2 a )
arc convex for every a E R (see, e.g., Avriel et al. 1988, Sect. 3.1). f is
termed binary-monotone if f is nondccrcasing or nonincreasing on each linc
scgmcnt in binary direction z E (0, 1}TL+2. A quasiconcave function attains its
minimum on a compact sct M at an extreme point of M becausc on closed
line segments, the function is minimized at one of the two endpoints. That is
why there always exists a stable schedule that minimizes f on set S if f is
quasiconcave and S # 8. Since each relation polytopc ST(p) arises from the
intcrscction of finitely many half spaces {S E I So = 0, S3- Sz 2 df')
whcrc ( a , ~ )E E U p, binary-monotonc objectivc functions, like the linearizable
objective functions, always posscss a vertex of ST(p) among their nlinirniz-
ers on ST(p). Thus, binary-monotone objective functions arc minirnizcd by
pseudostable schedlil~s.Unlike the case of convexifiahle objective functions,
58 2. Relations, Schedules, and Objective Functio7~s
Thc project duration problem with rcncwablc resources has been extensively
studied in the literature during the four last decades (see Subscction 3.1.4 for
an overvicw). Minimizing tlie project duration is a suitable objective if tlie
majority of income payments occur at or aftcr thc end of the project, if the
project dcadlinc is tight and thus finishing the implementation of the project
as carly as possibly lowers the danger of cxceeding the deadline, or if resource
capacity is needed for future projects (cf. Kolisch 1995, Sect. 2.1).
A sccond regular objective function is the total tardzness cost
whcrc d, E Z>o - denotes a given duc date for thc completion of activity i
and W: E Z>o is the cost arising from a latc complction of activity i per
unit time. T ~ objcctivc
S function is of particular intcrest for applications of
resource allocation methods in make-to-order production scheduling, which
will be discussed in Section 6.1. In tliat case, each real activity corresponds
to the processing of a job on a machine, and violations of the delivery dates
for the completed jobs incur conventional penalty per unit time.
We now turn to convexifiablc objective functions. Of coursc, any linear and
any convex objectivc function is convexiiiable. A nonrcgular linear objectivc
function is the total znventory holdin,g cost
where wc assume that each cunmlative rcsource k stands for the invcntory in
a storage facility keeping one intermediate or final product with unit hold-
ing cost rate C I , E Z>O.Then f ( S ) represents the cost arising from the stock
in planning interval-[0,2]. The linearity of f can bc seen as follows. A re-
plenishment of resource k by r,k units at timc S, incurs a holding cost of
c I , T , ~ ( X - S t ) . A depletion of k by -r,k units at time S, saves a holding cost
of CI, ( - r i k ) (2 - S Z ) .Thus, thc total inventory holding cost f ( S ) can also be
written as 2CkERr ck CitVe Ti\< - CkcR7 ck CZEVc riksi
In general, certain activities and events i of a project are associated with
a cash flow cf E Z, which may be a paying out for raw materials or workforce
or a paying in arising at thc corripletiori of a task when reaching a milcstonc.
2.3. Objective Functions 59
When evaluating thc profitability of a long-term project, the cash flows have
to bc discountcd by some intcrcst ratc a , which can, e.g., be chosen to be the
minirnurn attractive rate of return. The sum of all cash flows discounted to
time 0 is called the net present value of the project. For thc sake of simplicity,
we sup ose that all cash flows are discounted contiriuously and that each cash
P .
flow c, a r m s at time S,. The factor by which cash flow cf is discountcd
then equals e-"'., and thus the net present valuc dcpcnds on the schedule S
according to which the project is pcrformcd. By minimizing the negative net
prcscnt valuc
where w: and w: respectively denote the cost per unit time incurred by an
carly or a late completion of activity i E V with respect to given due date
d, E Z>o (see, e.g., Schwindt 2000c or Vanlioucke et al. 2001). Another cxam-
a
ple of convex objective function is the negative total weighted free float of
the project
For given schedule S, the total weighted free float of thc projcct is the weighted
sum of all early and late free floats of activities i E V if thc carlicst and latest
start times ES, and LS, arc sct to bc cqual to S, (cf. Subsection 1.1.3). A
schedule with maximum total wcightcd free float can be regarded as robust
in the sense that when executing the project, deviations of individual start
times S, from schedule will minimally affect the start times of other activities.
In Scction 6.5 wc shall discuss how the total weighted earliness-tardincss and
total weighted free float objective functions can be used for project scheduling
under ~lncrrtainty.
60 2. Relations, Schedules, m d Objective Functions
the concavity off on equal-preorder sets it follows that f assumes its minimum
at a vertex of some equal-preorder set. Proposition 2.16 says that this vertex
is also a vertcx of a schedulc polytope. 0
Proof. The lower scmicontinuity can be seen as follows. Let S bc somc timc-
fcasible schedule. The closedness of relation polytopes ST(^) with p @(S)
implies that therc cxists some E > 0 such that @(Sf) 5 @(S) for all S' containcd
in the relative ball B,(S) nST in ST,around S. Since for each resource k t R",
rnax,,<,<;l r k (S,t) coincides with thc wcight of a maximum-weight antichairi in
Q(S), weobtain f (S')> f (S) for all S' E B,(S)nST. The lower semicontiriuity
now follows from the fact that f is lower semicontinuous precisely if f (S) 5
liminfs,,s f (S') for all S E ST (see, e.g., Hiriart-Urruty and LcmarCchal
62 2. Relations, Schedules, and Objective Functions
Thc total procurement cost is the objectivc function of the resource in-
vestment problem iritroduced by Mohrirlg (1984). Thc rcsource investment
problem arises in applications where installing resources incurs fixed trans-
portation or setup costs pcr unit capacity. The recognition version (i.c., the
question whether there is a feasible solution whose objectivc function value
is smaller than or equal to a given threshold value, scc, c.g., Papadimitriou
arid Steiglitz 1998, Sect. 15.2) of a resource investment probleni with one re-
source coincides with thc feasibility version (i.c., thc question whether there is
a feasible solution) of thc corresponding rcsource-constrained project duration
problcm. Thc latter dccision problem has bccn shown t o be NP-cornplete by
Theorem 1.12, which implies that the resource investment problem is NP-hard
cvcn if R k = cm for all k E R P . A classical objectivc function in the field of
resourcc lcvclling that has bccn studied since the early work of Burgess and
Killchrew (1962) is the total squared utzlzzatzon cost for renewable resources
d
whcrc cl; E Z>o. Since workload r k ( S , t ) d t = CZEva
rZkpZdoes not depend
on schedule $ f ( S ) equals the weighted sum of the varzances of the loading
profiles r k (S, .) plus a constant.
a t times t contain both real activities and evcnts, and resourcc-feasible sched-
ules satisfy both the renewable-resource constraints (1.7) and the cumulative-
resource constraints (1.20). The set of all feasible scliedules is now S =
ST n Sn n Sc. As a straightforward extension of the definitions from Sub-
sections 2.1.1 and 2.1.2, we say that a relation p zn s e t V is time-feasiblc
if ST(p) # Q) and is feasible if 0 # S T ( p ) C S . It is easily seen that first,
relation p is again time-feasiblc prcciscly if relation nctwork N ( p ) docs not
contain any cyclc of positive length and that second, a time-feasible relation p
is fcasiblc exactly if both induced sub-relations pn (Va x Va) arid pn (Ve x Ve)
arc feasible in the sense of Definitions 2.3 and 2.17. As a consequence of the
latter statement, tlie feasibility of a time-feasible relation p in sct V can bc
verified by sequentially applying thc nctwork flow tcchniqucs discussed in
Subsections 2.1.1 and 2.1.2 to the respective sub-relations.
The resource-constrazned project schedulzng problem to be dealt with rcads
as follows:
Minirnizc f ( S )
subject to S E STn SRn Sc
denote the set of irrcflexivc relations {i} x B with i E A, which each give
rise to the (ordinary) preccdcncc constraints between activity i and all ac-
tivities j E B . Introducing disjunctive precedence constraint (3.1) refines the
resource relaxation by restricting the initial search space P = ST to the sct
of all schedules S contained in thc union of rclation polytopes ST(p) with
P E P(A, B).
After the selection of a minimal delaying alternative B, we minimize f on
thc restricted search space. Checking the resource-feasibility of the resulting
minimizer, rcfining the relaxation by disjunctive preccdcnce constraints, and
re-optimizing f on the rcstrictcd search spacc is performed until either the
search space has bccomc void or thc resulting minimizer S of f is resource-
fcasiblc. The disjunctive precedence constraints are reprcsentcd as a collec-
tion P of relations p whose relation polytopes ST(p) covcr the scarch space.
In each iteration, when adding a disjunctive precedence constraint of typc (3.1)
we put P := P @ P ( A , B) whcrc P = (0) at the root node and
Input: A project.
Output: Set C of candidate schedules.
initialize list of relation sets Q := ((0)) and set of candidate schedules C := 0;
repeat
delete some relation set P from list Q;
determine schedule S = min(UpEpS~(p));
if S < S" then (*search space is nonempty *)
if S is resource-feasible then C := C U {S); (*candidate schedule found *)
else (* introduce disjunctive precedence constraints *)
determine time t such that resource constraints (1.7) or (1.20) are violated
for some k E RPU R Y ;
if k E RPthen
set F := A(S, t) n V";
compute set B of all minimal delaying alternatives for F;
(* Algorithm 1.4 *)
else
set F := A(S, t) n Vc;
compute set B of all minimal delaying alternatives for F and k;
(*Algorithm 1.6 *)
for all B E B do -
if k E R P then set A := F \ B ; elsif B C v;+ then set A := Vc \ F;
else set A := v,"' \ F;
set P' := P @ P(A, B ) and add P' on list Q;
until Q = 0;
return C;
Proof.
(a) At cach itcratiori a relation set P is removed from list Q and a finite num-
ber of expanded relation sets PI are added to Q. For each p E P , sets P I
contain a relation p' > p cach. Sincc thc cardinality of any irreflexive re-
+ +
lation in sct V is bounded from above by (n l ) ( n 2), this implics that
the number of iterations performed by Algorithm 3.1 is finite.
(b) Clearly, the scarch spacc P = ST(@)= ST associatcd with thc initial
relation set P = (0) is a supcrsct of thc fcasiblc rcgion S and thus
S = ST(@)n S. Now let S bc the minimal point of somc search space P
cnumcratcd in the course of Algorithni 3.1. If S is not resource-feasible,
there is a time t such that active sct A(S, t ) includcs a forbiddcn set F. Let
B bc thc sct of minimal delaying alternatives for F. Then Theorems 1.17
and 1.28 say that any resource-feasible schedule in set P satisfics one of
thc disjunctive precedence constraints (3.1) with B E B and appropriate
set A. Since in addition all enumerated schedules S minimize f on thc
respective search spaccs, thcrc is at least one optimal candidate schedule
S E C provided that S # 0. Convcrsely, all candidate schedules S E C
are feasible and the lower semicontinuity of f implies that O S = 0 only
if S = 0. Consequently, from C # 0 it follows that U S # 0.
(c) Each candidate schedule S E C is the minimal point of some relation
polytopc ST(p) and fcasible. Due to Q(S)1) p and thus ST(Q(S))C ST(p),
it follows from S E ST(B(S)) that S is thc minimal point of its schedule
polytope ST(Q(S))as well, i.e., S E QAS. 0
<
Wc first show by induction on X that SX S+ for all X E Pi.From P ST c
it follows that S1 = ES = (rninsEs, Sj)jEV I (minSEPSj)jEV =Sf.
+
Now assume that SX5 S f . Sincc opcrator is isotonic, we have SXfl=
<
$(SX) $(S+) 5 S+, where the last inequality results from Sf E P.
For S1 = ES it holds that Si
= [ m a ~ ( ~ , ~ ) ~ Sij)lf + ! all j E V.
~ ( S , for
This provides S2 = $(S1) >
S1,which proves thc scquence {s') to bc
componentwisc nondecreasing. Thus, the existence of an upper bound S+
irnplics the corivergerice of {s'). Then lirnx,, SX= lirnx,, SX+I =
limxi, 4(SX)= +(limxi, s'), arid the limit of { S X )represents a fixed
poirit of $. The last cquation is duc to the continuity of 41. From S: =
ESo = 0 < lirrix,, St 5 S: = 0 we obtain limx,, St
= 0. Since
S = S+ is the unique fixed point S of 4 with So = 0, S+ coincidcs with
thc limit of sequence {SX).
3.1. Regular Objective Functions 71
(d) The asscrtion is immcdiate with the monotonicity of {S') and the prop-
erty that as long as SXfl # s', there is an activity h E V with
2 SX
, 1.+ 0
stack. The main advantages of depth-first search are that first, this strategy
minimizes the memory requiremcnts necessary for storing list Q and that sec-
ond, the number of branchings for reaching thc first leaf u of the cnumcration
tree (and thus often the timc for computing a first fcasiblc solution) is mini-
mum. Child nodes v are pushed onto stack Q according to nonincreasing lower
bounds. One drawback of the depth-first search strategy is that typically, two
enumeration nodes visited consecutively belong to similar relation sets, which
sharc a large number of common elements. As a consequence, it rnay take a
long time beforc any schedule located in a given part of the fcasiblc rcgion is
invcstigated, and thus the algorithm may spend much time in useless parts
of the enumeration tree. This shortcoming can bc avoidcd by partitioning the
enumeration tree into a number of subtrees, which are simultaneously tra-
versed according to a depth-first scarch strategy each (scattered search, cf.
Klein and Scholl 2000).
Basically, each of the consistency tests discussed in Subsections 1.2.4
and 1.3.4 can be applied at any enumeration node. Since disjunctivc precc-
dence constraints cannot be represented by a distance matrix D , thc tcsts
using distanccs dij between arbitrary nodes i ,j E V (the disjunctivc ac-
tivities, energy precedence, and balance tests) refer to a modified distance
matrix Dl = (dij)i,jEv reflecting the temporal constraints Sj - Si > d:,
that arc implied by the original temporal constraints and the added dis-
junctive precedence constraints. For example, the modified distance matrix
can be chosen to be equal to the elementwise minimal matrix Dl with
dLA > + +
max(dgll,minitA, m a x j ~ o (dki
, pi d;,,)) for all g , h E V and all
p = 1, . . . , v which satisfies the triangle inequalities (1.6). For distances d&,
we may choose dbh = Sh (h E V), where S is the minimal point of search
space P ' computed by Algorithm 3.2.
The question which consistency test should actually be uscd at which node
has to bc invcstigated with care. The reason for this is that intuitively there
is a tradeoff between the efficiency (i.e., the computation time required) and
the effectiveness (i.c., thc dccrcasc in sizc of the search space) of a tcst. As
a rule, the deeper the enumeration node, the less time should be spent with
consistcncy tests. In any case, the seardl space reduction algorithm (cf. Algo-
rithm 1.5) should be implemented in the form of a label-correcting procedure
iterating thc hypothetical temporal constraints whose validity may be affected
by the last constraint added (either an imposed disjunctive precedence con-
straint or a temporal constraint arising from applying a consistency test).
In branch-and-bound algorithms for the project duration problem with re-
newable resource constraints, Dc Rcyck and Herroclcn ( 1 9 9 8 ~and ) Schwindt
( 1 9 9 8 ~ have
) applied the disjunctivc activities tcst to two-clerncnt forbidden
sets (De Reyck and Herroelen used thc tcst as a preprocessing technique at
the root nodc). Dorndorf et al. ( 2 0 0 0 ~ )report on favorable results using the
workload-based disjunctive activities tcst and thc unit-intcrval capacity test
in a time-orientcd branch-and-bound procedure for the same problem (the
latter algorithm is briefly sketched in Subsection 3.1.4). Dorndorf et al. have
74 3. Relaxation-Based Algorzthn~s
also experimented with the activity interval and general interval consistcncy
tests, but on their testbed (projects with 100 or 500 activities) thc additional
search space reduction has been, on the average, outweighed by tlie incrcasc in
computation time. Finally, Laboric (2003) has been able to improve upon thc
results obtained by Neuniann and Schwindt (2002) for the project duration
problem with cumulative resources by using the balancc test.
Next, wc turn to lower bounds on the minimum objective function value.
Let S be the minimal point of scarch space P' under study (possibly reduced by
applying consistcncy tests). Obviously, lbo = f (S) represents a lowcr bound
on thc objcctivc function valuc inins,Epns f ( S f ) of a best feasible schedule
in P.Within a branch-and-bound algorithm for tlie project duration problen~
with renewable resources, Scliwiridt (1998a) has uscd two further lower bounds
lbl and lbz, respcctivcly being based on disjunctive activities and energetic
reasoning. We first deal with lowcr bourid lbl (scc also Klein and Scholl 1998).
< <
Let ;i' E Z>" with Sn+l df d denotc somc hypothetical upper bound on
thc projectduration. Clearly, thc latcst start time LSi = -dio of activity i is,
under the assumption of a projcct dcadline d', less than or equal t o ;i'- di,,n+l,
and the earliest completion time Si +pi of activity i is independent of d'.Now
let {i,j ) be a forbidden set such that d' - dj,,,+l < Si + p i and ;i' - di,n+l <
Sj + p j Then activities i and j must overlap in timc, which is impossible due
to their excessive joint resource requirements. Consequently, d' + 1 is a lowcr
bound on the shortest project duration of all schcdulcs in the search spacc.
Moreover, 2' must be increased by niin(Si p, + + + +
dj,,,+l, Sj p j di,7L+I)
units of timc t o avoid the above
- contradiction. Thus, instead of performing
a binary scarch in set [S,n+l, dl n Z,wc may directly compute thc smallest
deadline 2' = lbl which cannot bc disprovcd as
lbz = max(Si
,Eva
+ xtn.
rnax
1 2)
~ k ( S i ,
Ri 1)
on the minimum projcct duration. Computing value lb2 can be done in
O(JRPlnlog n ) time.
We briefly touch upon further, more timc-cxpensive lower bounds on thc
minimurn duration of projects with renewable resourccs, which can be found in
Heilrnann and Schwindt (1997), Brucker and Knust (2003), and Mohring et al.
(2003) arid will be used for the pcrformancc analysis of exact and heuristic
methods for the project duration problem in Subsection 3.1.4. The latter two
lower bounds are also described in more detail in Neurriann et al. (2003b),
Subsect. 2.5.8.
Heilnlanri and Schwindt (1997) discuss scvcral lower bounds based on
disjunctive activities, energetic reasoning, and a relaxation of thc resourcc-
constrained project scheduling problem (1.8) leading to a prccmptivc one-
machine problem with release dates dg" and quarantinc times dyAn+l (z E V").
Similarly to lower bound lbl, the lower bound on thc minimum project
duration devised by Bruckcr and Knust (2003) is based on falsifying hypo-
thetical project deadlines 2 . For a givcn value of 2 , the procedure of testing
the consistency of deadline d/ constructs a linear program and tries to show
that it is unsolvable. At first, several consistcncy tests are applied in ordcr
to tighten the time windows [S,,LS,] of individual activitics i E V" (recall
that minimal point S coincides with the earliest schedule in sct P ) . For each
pair (t, t') of consecutive earliest start or latest complction timcs of activi-
ties i E V a ,the set of all tentative active sets A for intcrval [ t , t l [ is then
computed, where S, < t' and LC, > t for all i E A and d,, < p, for all
i, j E A. For each set A, a continuous decision variablc y~ >
0 is introduced
providing the time during which A is in progrcss in intcrval [t, t'[ (i.e., during
which precisely the activities i E A overlap in time). The project duration
is then minimized subject to the constraints that first, each real activity i is
carried out for p, units of time in the different scts A and second, the total
execution time of all sets A belonging to somc pair (t, t') is lcss than or equal
to interval length t' - t. The latter problem can be formulated as a linear
program in decision variables y~ and corresponds to the relaxation of prob-
lem (1.8) wherc the tcmporal constraints arc replaced with the weaker rclcase
dates d g z n = S, and deadlines dgax = LS,. Moreover, activities arc allowed
to be interrupted during their execution. Since the number of tentative activc
sets A grows exponentially in n, it is expedient to solve the linear program by
column-generatzon technzques (see, e.g., Goldfarb arid Todd 1989, Sect. 2.6).
Thc basic idea is to consider only a restricted working sct of decision vari-
ables that are generated when needed. Each time the linear program with thc
currcnt working set of decision variables has been solvcd to optimality, ncw
decision variables arc added to the working set or it is shown that the cur-
rent basic solution is optimal. For finding an improving decision variable y~
76 3. Relaxution-Based Algorithms
whcrc the right-hand side is the smallest completion time of somc activity
i E A with respect to the schedule S undcr considcration, onc obtains thc
enumcration scheme of the branch-and-bound algorithm by Fest et al. (1999).
The main advantagc of this approach is that given distance matrix D, min-
imizcrs S of the project duration on the search space can be calculated in
U(IB1n) time. Furthermore, thcrc exists a vcry simple and effective domi-
nance criterion, which enables fathoming nodes by comparing corresponding
release datc vcctors. The drawback of the release-date based enumeration
scheme is that constraints (3.2) only temporarily establish a precedcncc rc-
lationship between sets A and B . Sincc in contrast to the case of disjunctive
precedence constraints, thc right-hand side of (3.2) is a constant, thc resourcc
conflict caused by forbiddcn sct F = A U B is not definitely settled and thus
onc and the same resource conflict may be resolved repeatcdly along a path
from the root to some leaf of the enunieration tree. Computational experience,
however, indicates that this situation can often be avoided by discarding cnu-
meration nodes which due to unnecessary idle times cannot lead to quasiactive
schedules (total-idle-time dominance rule, cf. Fest et al. 1999).
All algorithms mentioned thus far are based on breaking up forbidden sets.
Thc constraint propagation algorithm by Dorndorf ct al. ( 2 0 0 0 ~branchcs
) over
the binary decision whether to schcdulc a givcn activity i E Va at its (currcnt)
earliest possible start timc ES, or delaying i by introducing a release date
+
db:"'" 2 ES, 1. The large size of the corrcsponding complete enumeration
tree is significantly reduccd by applying the disjunctive activities and unit-
interval capacity consistency tests and exploiting specific properties of active
schcdules.
Wc proceed with heuristic proccdurcs for the project duration problem
with renewable resources. Franck (1999), Ch. 4, has proposcd thc following
przorzty-rule method. Prclirninary variants of this algorithm have been dc-
78 3. Relaxation-Based Algorzthms
viscd by Neumann and Zhan (1995) and Brinkmann and Neumann (1996). A
streamlined version of Franck's algorithm is described in Franck et al. (2001b).
At first, a preprocessing step is pcrformed by applying the disjunctive activ-
ities consistency test t o two-clcmcnt forbiddcn sets. To construct a feasible
schedule, a serial schedule-generation scheme is used (cf. Kolisch 1996), which
in each iteration schedules one eligible activity j E Vn by fixing its start
time S,. An activity j is called eligible if all of its prcdcccssors i E Pred4(j)
with respect to strict ordcr + in set V a havc bccn schcdulcd, wliere i < j if (1)
dij > 0 or (2) di, = 0 and d,ji < 0. From the set of eligible activities, the activ-
ity t o be scheduled next is chosen according t o a priority rule. Let C denote the
set of all activities already schcdulcd. Thc activity j selectcd is started a t the
earliest point in time t E [ESJ,LSj], where ES, = max[doj, maxiEc(Si d,j)] +
and LSj = min-doj , miniEc (Si - dji)], such that in intcrval [t,t + p j [ the joint
resource requircments by j arid the activities i E C do not cxcced thc rcsource
capacities. Due to the presence of maximum time lags, it may happen that for
a sclccted activity j there is no such point in time t . Let t' := miniEc(Si - dji)
then denote the latcst start timc of j due to the (induced) maximum time lags
betwccn schcduled activities i E C arid activity j . To rcsolvc thc deadlock, an
unscheduling step is performed, which cancels the start times of all schcdulcd
>
activities i E C with Si t' and increases the earliest start time ESi of all
scheduled activities i E C with Si = t' by one unit of timc. The procedure
is terminatcd if a prescribed maximum number of unscheduling stcps liavc
been performed or if all activities j E V" have been schedulcd. Thc numbcr
of required unschcduling steps can be markedly dccreased on thc avcragc if
activities of strong componcnts in project network N arc schedulcd directly
+
one after another, where N does not contain backward arc (n 1 , 0 ) (recall
that when miriiniizirig the project duration, we may delete the deadline 2 on
the project termination).
Bascd on this priority-rule method, Franck (1999), Ch. 6, has also devel-
oped a scllcdulc-improvement procedure of type parallel genetic algorithm (scc
also Franck et al. 20010), which is an adaptation of a genetic algorithm by
Hartmarm (1998) for the project duration problem without maximum time
lags. The genetic algorithm works on several subpopulations of equal size,
where cach island evolves separately until after a given number of iterations,
some individuals migrate from one subpopulation t o another one. The indi-
viduals are represented by feasible activity lists (i.e., complete strict orders G
in set Vn extending strict ordcr +), which are transformed into schedules by
applying the serial schcdule-generation sclierrie with strict order + substituted
into Q. Thc initial subpopulations are created by randomly biasing priority
rules and transforming the resulting priority values ~ ( iof) activitics i in an
activity list G by putting i G j if (1) i + j or (2) j 74 i and ~ ( i < ) ~ ( j )At
.
each itcration, two individuals are selected for crossovcr in each subpopulation
according t o a double roulet te-wheel selection. By applying a one-point arid a
two-point crossover operation to those two individuals two new activity lists
are generated. With a certain probability, the new activity lists are then sub-
3.1. Regular Objective Functions 79
Table 3.1. Performance of algorithms for the project duration problem with renew-
able resources
Schwindt ( 1 9 9 8 ~ FBS
) 28.1 s 59.4% 1.9 % 38.7% 0.0% 6.4%
Fest et al. (1999)
and insolvability is shown if the consistency tests included reduce the search
space to void.
As far as the cxact algorithms are conccrned, the results suggest that
the most recent of the branch-and-bound procedures (Dorndorf et al. 2000c)
is also the algorithm which performs best with respect to all five evaluation
criteria. The good performance of the constraint propagation algorithm is pri-
marily due to a clever scarch strategy and the effectiveness of thc consistcncy
tcsts, which are applied at cvcry cnurneration node. In particular, the mean
deviation Albfrom lower bound is significantly smaller than for all remaining
algorithms and for almost thrcc quartcrs of the instances, the cnumeration
is completed within a timc limit of 100 seconds. It is worth mentioning that
all algorithms compared, except De Reyck and Herroelen's branch-and-bound
proccdurc, are ablc to identify all insolvable instanccs and to find a feasible
schedule for cach solvablc instancc. The comparison of the results obtaincd
when varying thc time limit of the branch-and-bound procedurcs, howcvcr,
indicates that solving all of the remaining open instances would probably
require a prohibitively large computation time.
The priority-rule method provides fcasiblc schedules with an acceptable
deviation from lower bound within a very short amount of time. If more
computation time is available, the genetic algorithm may be uscd to improve
the initial schcdule calculated by thc priority-rule method. Thc comparison
with Dorndorf ct al.'s algorithm stoppcd after three seconds, however, shows
that tllc latter algorithm also outpcrforms the heuristics. In addition, the
data for the filtered beam search version of the branch-and-bound procedure
of Schwindt (1998a) suggest that even better results may be obtaincd by a
truncatcd version of Dorndorf ct al.'s algorithm.
We proceed with the project duration problem with cumulative re-
sources. To the best of our knowledge, there are only two algorithms for
solving this problem: the branch-and-bound procedure dcviscd by Ncurnann
and Schwindt (2002), which is bascd on thc cnumeration scheme given by
Algorithm 3.1, and a branch-and-bound algorithm that has been proposed by
Laborie (2003).
The enumeration scheme of the latter procedure picks two distinct cvents
i, j with dij < 0 and dji < 0 in each iteration and branches ovcr the binary
decision whether or not i occurs before j (i.e., Si 5 Sj - 1 or Si 2 Sj). The
sclcction of cvents i , j is based on the upper and lower bounds ~ ; ; < ( h~) ,: ( h ) ,
Tz ( h ) ,& ( h ) on the inventory levels in resources k E 727 just before and at
the occurrencc, rcspectivcly, of evcnts 11 E Ve (sce Subscction 1.3.4). At each
node of the enumeration tree, the balance test is used to reduce the time
windows [ESh,LS,,] of evcnts h E Ve.
Table 3.2 shows the results of an experimental performance analysis of
Ncurnann and Schwindt's and Laborie's algorithms. The test set has again
bccn generated by ProGenlrnax and contains 360 instances with 10, 20, 50,
or 100 cvents and 5 cumulative resources cach. The computations havc bccn
82 3. Relaxntion-Based Algorithrr~s
pcrformed on a Pentium personal computer with 200 MHz clock pulse. For
cach instance we have imposed a time limit of 100 seconds. The mean devia-
tion from lower bound &, is bascd on thc lower bound lbl that is obtaincd
+
by applying the profile test t o the project termination event n 1 (see Sub-
section 3.1.3).
Table 3.2. Performance of algorithms for the project duration problem with cumu-
lative resources
Algorithm 7~ popt PZILS pnopt punk &b
Wc first discuss tlie results obtained with the algorithni by Neumarm arid
Schwindt (2002). For all 180 instanccs with 10 and 20 cvcnts, the enumeration
is completed within the time limit. Evcn for thc projects with 100 events, 90 %
of the instances can be cithcr solvcd to optimality or provcd to be insolvable.
P u t into perspective with the data displayed in Table 3.1, those results may in-
dicate that problems with cumulative-resource constraints are more tractable
than problerris with renewable resources. As far as the computation of feasible
schedules is concerned, the picture is different. There exist projects with 50
events for which aftcr 100 seconds neither a feasible schedule can be found nor
insolvability can be shown. With the branch-and-bound algorithm by Laborie
(2003), however, the twelve open instances with 50 or 100 activities can be
solved within less than 100 scconds (56 scconds on a HP 9000/785 worksta-
tion), which again confirms the benefit of efficient and effective consistency
tests. The results for thc projects with 10 or 20 activitics arc the sarnc as for
tlie algorithm by Neumann and Schwindt (2002).
project. Whcrcas the primal steepest descent algorithm iterates over time-
feasible schcdulcs, the dual flattest ascent algorithm consecutivcly enforces
the precedence constraints. Both algorithms are used within a branch-and-
bound algorithm for minimizing convexifiable objcctivc functions. In addition,
we provide an ovcrvicw of altcrnative solution proccdures that have been de-
vised in litcraturc for specific convexifiable objective functions and discuss the
rcsults of an experimental performance analysis of the methods trcatcd.
whcre the functions fi and f; and the functions f i j arid f,?;j are conjugatc to
each other (see Rockafellar 1998, Sect. 8G). Recall that a function 4' with
86 3. Relaxation-Based Algorithms
effective domain X* (i.e., $*(y) < oo for all y E X*) is conjugate t o a function
4 : X + R if $*(y) = suPzEx(yTs - 4(x)) for all y E X*. For given functions
fi and f i j , the corresponding conjugate functions f,i and f& are piccewise
affirie as well. The functions f , ,and f,*,(up to an additive constant) and the
lower and upper bounds ci and ci on supplies a t nodes i E V can be determined
by reversing the roles of breakpoints and slopes in passing from functions fi
and f i j to their respective conjugates f,i and f;. The additive constants arise
from evaluating a convcnicnt point on the characteristic curves of fi and fij
(see Rockafellar 1998, Example 3 in Scct. 8F). The characteristic curve I' of
a convex function of onc variable is the set of all points (x, y) E R2 such that
y is between thc left-hand and the right-hand derivative of the function a t x.
+
The convex-cost flow problem can be solved in 0 ( m n 2l o g [ C i E v ( l ~ i I IGil)])
time by a generalization of the capacity-scaling algorithrri for the min-cost
flow problern (see Ahuja et al. 1993, Scct. 14.5).
The subcase where fi(Si) = wiSi for all i E V and fij(Sj- S i ) = 0 for all
(i,j ) E E leads t o the followirig niin-cost flow problem (cf. e.g., Russell 1970):
Minimize 23 1.7
dfls(z) := lim
f(S + XZ) - f (S)
A10 X
if the limit exists. Now recall that function $ = f o y-l is convex and thus is
directionally differentiable in any direction a t any interior point of its domain
(cf. Shor 1998, Sect. 1.2). Since f = o y is a composition of a C1-function
$J
two main phases: the direction-finding phase and the line-search phase (see
Hiriart-Urruty and Lemarkchal 1993, Sect. 11.2). Thc direction-finding phase
dctcrrnines a steepcst feasible desccrit dircction z at the current iterate S or
establishes that there is no feasible descent direction at S . Line search provides
+ +
a feasible destination S' = S a z with f (S a z ) < f (S).a is tcrmed the
stepszze. Algorithm 3.4 specifies a gencric (primal) stccpest descent algorithm.
We now deal with the direction-finding phase in more detail. The prob-
lem of finding a normalized stecpest feasible descent dircction at schedule S
rcads as follows:
Minimize
subject to
g(z)
z, >0
I
zj - ((i,j ) E E ( S ) )
(3.5)
z" = 0
ll4 5 1
The fcasible region of problem (3.5) is compact and noncmpty since z = 0
is always a feasible solution. Thc choice of vector norm 11 . 11 is of cru-
cial importance for the cfficicncy of the steepest descent algorithm. For
what follows, wc assume that 11 . 11 is chosen to be supremum norm, i.e.,
llzll = llz/lco := maxzcv Iz,J, which means that normalization constraint
<
llzll 1 can be stated as -1 < <
z, 1 for all 2 E V. In this case, all constraints
of problem (3.5) are linear, and (3.5) can easily be transformed into a lincar
program by introducing an additional variable y, for each E V togcthcr with
the constraints y, >d+f/dS, (S)z, and y, >
d-f / d ~ , ( ~ ) and
z , replacing g(z)
wit11 CtEV YZ.
In the following wc considcr a rclaxation of problem (3.5) which can bc
solved in linear time. To this end, we again assume that llzll = 1 1 ~ 1 1 but
~ , wc
only consider a subset of the tcmporal constraints that are activc at S. Tllc
active temporal constraints to be taken into account are chosen such that tlic
3.2. Convexifiable Objective Functions 89
Proof. Let z+ := max(0, z) and z - := rnin(0, z). Trivially, for any direction
zE we have z = z f + z - .
Suficiency: Lct H denotc the coefficient matrix of constraints zj - 0 >
( ( i j, ) E E G ) ,which coincides with the negative arc-nodc incidence matrix of
spanning forest G. If z+ and z- are feasible solutions to (SDP), then H z + 0 >
and Hz- > + +
0, which irnplies that H z + Hz- = H ( z + z-) = H z 0. In >
addition, zo = z:+zi = 0 arid zi = z + + z i>0-1 = -1 and zi = z + + z i <
1 - 0 = 1 for all i E V.
Necessity: Let z and z' be two feasible solutions to (SDP). Then it follows
from elementary calculus that max(z, z') and min(z, z') are feasible solutions
to (SDP) as well. By choosing z' = 0 we obtain the feasibility of directions
z+ and z-. 0
+
Proof. Wc first show that g(z) = g(z+) g(z-). As a consequcnce of
Lemma 3.4 wc have g(z) = CtEv r n a x ( a + f / a ~(, s ) ~ a-f/aS,
, (s)z,), from
which it follows that g is convex. The positive homogeneity of g then
implies the sublinearity and thus the subadditivity of g. Hence, g(z) =
g(z+ + z-) < +
g(z+) g(z-). Since max(0, z) is a feasible solution to (SDP+)
<
(scc Lemma 3.5), we have g(zf ) g(max(O, 2)). Symmetrically it holds that
3.2. Conve~~fiable
Objective Functions 91
+
Minimize g(zl) g(zl')
subject to z: - zi 0, zy> - z," >0 ( ( i , j ) E EG)
zI, = z;: = 0
0 < zi < 1, -1<z,"<o (iEV)
Since in the latter problem the vcctors z1 and z" are unrelated, the problem
decomposes into the two independent problems (SDP+) and (SDP-) with
corresponding solutions z+ and z - . 0
is given by pred,. Thc scts C ( j )of coalesced nodes can efficiently be identified
via a labelling technique.
+
When moving from S to destination S' = S a z , spanning forest G is
updated as follows. At first, we dclctc all arcs (g, h) from G for which zh > z,.
>
If a = a1(i) for somc i E V, a ncw tcmporal constraint S, - S, 6,, becomes
active and the corrcsponding arc (i,j) is added to G.
For the time-constrained net present value problcm, Schwindt and Zim-
mermann (2001) have shown the following plausiblc statement, which readily
carries over to thc morc gcncral casc of piecewise affine or binary-monotone
objective functions f .
Proposition 3.7 (Schwindt and Zimmermann 2001). If in Algorithm 3.3
the initial schedule is chosen to be the earliest schedule ES and the stepsizes a
are calculated according to (3.6), then at each iterate S there is a solution z
to steepest descent problem (SDP) with z > 0.
Under the assumptions of Proposition 3.7, it is thus sufficient to solve sub-
problem (SDP+) for computing optimal directions z.
For piecewise affine or binary-monotone objective functions, the number
of iteratcs needcd to reach a schedule S satisfying necessary optimality con-
dition (3.4) can markedly be decrcascd by using an acceleration technique.
Consider the spanning forest G arising from deleting all arcs (i, j) with zj > zi
and let i be an activity with a = min(al(i),a2(i)). All componcnts C of G
consist of nodes j with identical zj. If there is a componcnt of G which does
not contain node i and for whose nodcs j we have zj # 0, those nodes can
be shifted further without recomputing a new steepest descent direction. By
shifting the components in order of nondccrcasing minimuni slacks between
component nodes i and nodcs j with zi > zj, we obtain the acceleration step
displayed in Algorithm 3.6. If the one-sided Si-derivatives of f arc obtained in
constant O(1) time, the algorithm can be implemented to run in O ( m log m)
timc by maintaining a Fibonacci hcap of arcs ( i , j ) E E with zi > z j and
a Fibonacci heap of nodes i E V with zi # 0 that are sorted according to
nondecrcasing slack timcs iLsi6a1 and o2(i), respectively.
We finally notice that if f is binary-monotone arid z > 0, thc resulting
destination schcdule S is always a vcrtcx. Furthermorc, it can be shown that
in case of regular and in case of so-called antiregular objectivc functions f ,
which arc componcntwise nonincrcasing in start times S,, the steepest descent
algorithm with the acceleration step included reaches the respective minimiz-
ers ES and L S after one iteration, indcpcndcntly of thc initial schedule chosen
(see Schwindt and Zimmcrmanri 2001).
94 3. Relaxation-Based Algorithms
Minimizc g(z)
subject to zh - zg 2 0 ((g, h) E E(S))
z" = 0 (3.7)
zj-zi>l ( ~ E B )
llzll 51
The normalization constraint llzll <
1 may be deleted if f is convex and piccc-
wise affinc (thc objcctive functions of the total inventory holding cost and total
earliness-tardiness cost problems are examples of such an objcctivc function).
We notice that in contrast to thc stecpcst descent problem (3.5), problem (3.7)
does not ncccssarily posscss a feasible solution. It is casily sccn, however, that
under the assumption that relation p' is timc-feasible, i.e., S T ( p l ) # B, there
is always a flattest ascent direction at S .
In analogy to the primal stecpcst descent algorithm treated in Subsec-
tion 3.2.2, we choose the vector norm 11 . 11 in (3.7) to be the supremum norm
and rclax thc problcm by rcplacing the arc set E(S) belonging to all active
constraints at S with the arc set EG 2 E(S) of some spanning forcst G of
project network N. The resulting problem will be referred to as the flattest
ascent dzrectzon problem ( F A P ) at S .
96 3. Relaxation-Based Algorithms
Minimize g (z)
subject to z,, - z,
z,J = 0
3-zi>l
>0 ( ( g , h ) E EG)
(jEB)
- 1 < ~ \ , < 1( ~ E V ) I (FAPI
Proof. Analogously to the proof of Proposition 3.3 it can again be shown that,
if (FAP) is solvable, there exists an integral solution z to (FAP). In the latter
case, zi may assume the two values 0 and -1. If zi = 0 , we have z j = 1 for
>
all j E B . For zi = -1, the constraints z j - zi 2 1 ( j E B) turn into z j 0
( j E B). 0
Proposition 3.9. Let S be a time-feasible schedule and assume that for given
minimal delaying mode { i ) x B, z = 0 solves the steepest descent problem
3.2. Convexzfiable Objective Functions 97
for all j E B. a s ( j ) is the amount by which the time lag between the starts
of activities i and j has to be increased for satisfying precedence constraint
>
Sj &+pi. In addition, a is chosen such that destination schedule S' = S + a z
is time-feasible and we do not move beyond a kink of g, i.e.,
compute lower bounds for the net present value arid total earliness-tardiness
cost problems, respcctively, with rcncwablc resources.
Sometimes relations p can be excluded from further consideration because
thcy are dominated by other relations p' in the scnsc that either the absence
of feasible schedules in ST(pl) excludes the existcrice of fcasible schedules in
ST(p) or the minimum objective function value of the best fcasiblc schedule
in ST(pl) can bc proved to be not greater than for the best feasible schedule
in ST(p). The simplest type of dominance between relations is given by the set
inclusion of relation polytopes: relation p' doniinates p if ST(p) C ST(pl).Since
such dominance r d e s define a reflexive relation in tlie set of relations, one has
to ensure by appropriate tic-breakers that "cross-pruning" ( i . ~ . rclation
, p'
dominates relation p and vice versa) does not occur. The branch-and-bound
algorithm may apply several dominance rules to newly generated relations p
with corresponding minimal delaying mode {i) x B .
The first dorninance rule is as follows (cf. Dc Reyck arid Herroelen 1 9 9 8 ~ ) .
We add all activities h E A(S, t ) \ B with djh 2 0 for sonic j E B to set B
because they are delaycd as wcll when shifting activities j E B behind the
completion of activity i. If there is a minimal delaying alternative B' E B with
B1 c B , relation p is dominatcd by relation p' belonging to minimal delaying
mode {i) x B'. The second dominance rule refers to a (possibly induced)
minimum time lag between activity i and some activity i' of a delaying mode
(2') x B with the same minimal delaying alternative. If eithcr (1) d,,, + p i > pi,
+
or (2) dili pi = pi1 and (as tie-breaker) i1 < i, then relation p can be
fathomed because tlie conipletiori time of activity i is greater than or cqual
to the completion time of activity i'.
Whereas the first two rules establish dorninance between child nodes p of
one and the same parent node, the following subset-dominance rules compare
the recent child nodes p with (arbitrary) relations p1 from which we have
branched formerly or which remain on stack Q. The first subset-dominance
rule has again been proposed by De Reyck and Herroelen (1998a). If the whole
search space ST(pl) of a relation p' has been explored and if p' is a subset
of p, relation p can be fathomed. This rule can be implemented to run quite
efficiently by exploiting two properties of the enumeration trcc (see Schwindt
1 9 9 8 ~ )First,
. p' c p" for all descendants ,ol' of relations p' and second, in
case of a dcpth-first search thc parents p" of relations p' with C-maximal
cornplctely explored search spaces ST(pl) arc ancestors of p.
Ncurnann and Zimmermann (2002) have uscd a generalization of the lattcr
rule in their branch-and-bound algorithm for the net present value problem
with renewable resources. Comparing relations p and p' docs not take into
account the time lags that are induced by the distance matrix D . In other
words, we may have ST(p) 5 ST(pl) though p 2 p'. Rather, condition ST(p) C
ST(pl) can be checked by (elementwise) comparing the corresponding relation
matrices D(p) and D(pl), i.e., ST(p) SI.(pi) precisely if d$ 2 d$ for all
i , j E V.
3.2. Conve~ifiableObjective Functions 99
activities, respectively (see Schwindt and Zimmermann 2001 for details). The
results for the algorithm by De Reyck and Herroelen (1998b) arc quoted from
De Reyck (1998). We provide the mean number #it of iterations needed to
reach an optimal solution (where "n. a," indicates that this number is not
available) arid the corresponding mean computation time t,,, on an Intel 486
personal computer with 50 MHz clock pulse ( n = 100) and a Pcntium personal
computer with 200 MHz clock pulse (n = 1000).
Table 3.3. Perforniarice of primal algorithms for the time-constrained net present
value problem
CPLEX
Kaniburowski (1990)
The results depicted in Table 3.3 permit several conclusions. First, the
methods based on Grinold's vertex-following algorithm show a much better
performance than the primal simplex method applied to the linearized prob-
lem. Second, the preprocessing method allows to save roughly one half of
the computation time. Third, the efficiency of the recursive-search method is
poor, which is presumably less due to the recursion itself than rather to the
use of the distance matrix, whose computation is expensive arid which causes
almost any vertex of set ST to be degenerate. As a consequence, the algo-
rithm performs many pivot steps that do not lead to a new vertex. Fourth,
the steepest descent method appears as the most efficient solution procedure
for the time-constrained net present value problem. If we reduce ,.,t by the
time needed for computing the earliest schedule, the speed-up factor between
the procedure of Neumann and Zirnmcrmann (2000) and the steepest descent
algorithm is morc than six (cf. Schwindt and Zimrnermann 2001). The small
value for #it can be mainly attribut,cd to the acceleration step, which for
n = 1000 reduces the number of iterations by more than 90 %. This reduc-
tion does not lead to an equally large saving in computation time because
the acceleration step is morc time consuming than simple line search (recall
3.2. Convexifiable Objective Functions 101
that the time complexity of thc acceleration step is O ( mlog m ) ,whereas line
search can be done in O ( m )time).
Next, we consider thc time-constrained total earliness-tardiness cost
problem. The only algorithm for this problem we arc aware of is the steepest
desccnt procedure proposed by Schwindt (2000~).For the special case where
only minimum time lags are prcsent, Vanhoucke et al. (2001) have devised a
rccursivc-scarch procedure, which is an adaptation of Herroclcn et al.'s algo-
rithm for the net prcsent value problcm. The time-constrained total earliness-
tardiness cost problcm can rcadily bc transformed into a linear program by
>
introducing two continuous variables ei 2 0 and ti 0 for each activity i E V
along with the constraints e, > +
di - S, -pi and ti 2 Si pi - di. The ob-
+
jective function of the linear program then is x i e v ( w , " e i w:ti). Obviously,
for ST # 0 there is always an optimal solution satisfying ei = (di - Si - pi)+
and ti = (Si + p i - di)+ for all i E V, ix., ei equals the earliness and ti equals
the tardiness of i. Notice that the existence of an equivalent linear program
does not imply that the total earliness-tardiness cost is a linearizable objective
function in the sense of Definition 2.29, which is obviously not true.
Tablc 3.4 compares the primal simplex algorithm with the steepest descent
proccdure. The analysis is based on two test sets with 100 and 1000 activi-
ties, respectively, containing 90 instances each (details are given in Neumann
et al. 2003b, Sect. 3.5). The computations have been performed on a 200 MHz
Pentium personal computer.
The results are in line with those obtained for the nct present value prob-
lem. Again, the stccpcst desccnt algorithm clearly outperforms the LP solver.
However, the gap bctwccn both approaches is less important, which is duc
to two reasons. First, though the linear program contains more variables and
constraints than for the net present value problem, the computation time de-
creases since the coefficient matrix of the constraints is now binary instead of
real-valued. Second, since the objectivc function is no longer binary-monotone,
the stepsizes for the steepest descent algorithm are typically much smaller,
which is also indicated by the large increase in the number of iterations.
We proceed to thc net prcsent value and total earliness-tardiness cost
problcrns with renewable or cunlulative resources. We restrict ourselves to
102 3. Relaxation-Based Algorithms
procedures that are dedicated to the case of general temporal constraints be-
tween activities. For a review of various types of precedence-constrained nct
present value problems and solution procedures we rcfer to the survey pa-
per by Herroelen et al. (1997). Algorithms for total carliness-tardiness cost
problcms with precedencc constraints and rencwable resources have becn de-
vised by Serafini and Speranza (1994a,b) and Vanhoucke et al. (2001). For
solving the resource relaxation, Serafini and Speranza cxploit the duality re-
lationship bctween the latter problcm and thc convex-cost flow problcm (see
Subsection 3.2.2).
We first consider the net present value problem with renewable
resources. The branch-and-bound algorithms by De Reyck and Hcrroelen
(19986) and Ncumann and Zimmcrmann (2002) are both based on tlic enu-
meration scherne discussed in Subsection 3.2.1. The algorithms mainly diffcr in
the proccdurcs for solving the relaxations at the enunieration nodes. Whereas
Dc Reyck and I-Ierroelen (19983) use their (primal) rccursive-search mcthod,
Ncumann and Zimmcrmann (2002) solve thc initial resource relaxation a t thc
root node by the primal steepcst descent algorithm by Schwindt and Zim-
rnerniann (2001) and the relaxations at desccndant nodes with a dual method
resembling the flattest asccnt algorithm dcalt with in Subsection 3.2.3. In
addition, De Reyck and Herroelcn (19983) and Ncumann and Zinimerniarlri
(2002) havc used disjunctivc activitics tests and dominance rules for reducing
tllc size of the enumeration tree. Sellc and Zirnrncrmann (2003) have proposed
a bidirectional priority-rule rnethod for approximatively solving large-scale
net prcscnt valuc problcms. Similarly to the heuristic by Franck (1999) for
thc project duration problcm (sce Subscction 3.1.4), one activity is scheduled
per iteration, where the essential difference is that ccrtain activities, namely
those with negativc cash flows, arc started at their latest feasible start timc.
An analysis of this schedule-generation scherne in Section 4.1 will show that
thc schedules obtaincd in this way arc stable, provided that no unschcduling
step is pcrformcd. Sincc thc sct of all optimal schedules may not contain a
stable schedule, the heuristic may systematically miss thc optimal solution.
A similar rcsult is known for the minimization of regular objective functions,
where the parallel schedule-generation scheme yields nondelay schedules (see
Kolisch 1996), among which thcre is not necessarily an optimal schedule.
Table 3.5 shows thc results of an experimental performance analysis where
we have conlparcd thc thrcc algorithms on a test set containing 1440 projects
with 50 activitics and 5 renewable resources each. A detailed description of the
remaining ProGen/max control parametcrs chosen can be found in De Reyck
and Herroelen (1998b). We have imposed a limit tLp, of 3 and 30 seconds on
the niaxiniuni running time of the branch-and-bound algorithms, which rcfcrs
to a Peritiuni personal computer operating at 200 MHz (for comparison pur-
poses, the computation times havc been scaled according to the clock pulse
ratio by a factor of 0.3 for De Reyck and Herroelen's branch-and-bound al-
gorithm arid by a factor of 2.5 for thc priority-rulc mcthod). Since De Reyck
and Hcrroelcn (1998b) only report on the number of instanccs for which the
3.2. Convexzjiable Objective A~nctions 103
Table 3.5. Perfornlance of algorithms for the net present value problem with re-
newable resources
where p is the rclation in set V a arising frorn the arcs of G that belong to
precedence constraints (precedence arcs, for short). Two types of neighbor-
hood operations are considered, which transform forcst G into a neighboring
forest GI. If S is feasiblc, GI rcsults from G by deleting somc prcccdcncc arc.
Otherwise, a precedence arc may bc dclctcd or a ncw preccdcncc arc may be
addcd for which both the initial and terminal nodes arc contained in a forbid-
den activc set for S . The reason why precedence arcs may also be cancelled
cvcri if S is not resource-feasiblc is that duc to maxirrlum timc lags, it may be
necessary to pcrform backtracking before attaining a feasible solution. When
some prcccdcnce arc is deleted frorn G, the new rniriirnizer of f is determined
by applying the primal method starting at S . In case a precedence arc is added
to G, the dual method is uscd.
We have tested a simplc randomized best-fit search implcmcntation (cf.
Kolisch and Hartmarin 1999) of this approach for the total earliness-
tardiness cost problem with renewable resources. At each iteration the
algorithm movcs to the best neighboring forest. The quality of a forest G is
evaluatcd according to the objective function value f (S) of the corresponding
schedulc S and its degree of infeasibility measured in terms of the excessive
workload CkFRP J;(T-~(S, t ) - Rk)+dt.In order to avoid cycling, the qual-
ity is randomly biased. Each time the local search gets stuck in a deadlock
where S is not yet resource-feasible and no additional precedence arc can be
added to G without gcncrating a cycle of positive length in the corresponding
rclation network N ( p ) , we return to the best schedule found thus far. 10%
of the computation time is allotted to the branch-and-bound algorithm by
Schwindt ( 2 0 0 0 ~ )for the computation of an initial feasible schedule serving
as starting-point for thc local scarch. If the branch-and-bound procedure fails
in finding a feasible solution within the imposed time limit, the search starts
at the minimizer of f on set ST.
The results for the branch-and-bound method and the best-fit search pro-
cedurc are given in Table 3.6. They have been obtained for the test set with
90 instances comprising 100 activities and 5 renewable resources already used
for the analysis of the algorithms for the time-constrained problcm (see Ta-
ble 3.4). Again, the tests have been performed on a 200 MHz Pentium personal
computer.
Table 3.6. Performance of algorithms for the earliness-tardiness problem with re-
newable resources
Comparing the results from Tables 3.1 and 3.6 suggests that the earliness-
tardiness problem is much more difficult to solve to optimality than the project
duration problem. The mean deviation Alb from the lower bound lbo arising
from the resource relaxation, however, indicates that the quality of the schcd-
ules found is comparablc to those computed for the project duration problcm.
This deviation can bc furthcr dccrcascd by stopping the enumeration after a
short amount of time and subscclurntly executing the best-fit search proccdurc
based on the neighborhood function of Schwindt (2000b).
We concludc thc subsection by corisidcring thc capital-rationed n e t
p r e s e n t value p r o b l e m , where the project is executed with a limitcd bud-
get. In that case, the funds available for disbursement dcpcnd on thc initial
budget (possibly plus a credit line) and the difference of all past progrcss
payments arid paying outs. This situation frequently occurs in the building
industry, where the receipts from completed subprojects serve to financc suc-
ceeding subprojccts. It is readily seen that the cash balance can be interprctcd
as a cumulative resource with infinite storage capacity 3 and a safety stock
of R = 0. The initial inventory ro equals the project budget, and the rcsource
+
requirements r, of events i E V r , i 0 coincide with the cash flows cf. This
project scheduling problem has been treated in an early paper by Doersch
and Patterson (1977), who h a w devised an integer programming formulation
based on time-indexcd binary variables xZtbeing equal to one if t = St and
LS
zero, otherwise. Thc objcctivc function thcn rcads CzEv Ct=bS, ~ f e - ~ ~ x , ~ ,
and thc rcsource constraints can bc written as
A priority-rule rncthod for solving the problcm has bcen proposed by Smith-
Daniels et al. (1996). The priority values are based on delay penalties, which
arise from solving the dual of the tirnc-constrained problem where the objec-
tive function is replaced by its first-order Taylor expansion (as it has bcen
shown by Russell 1970, the dual then represents a transshipment problem).
Schwindt (2000a) has addressed the capital-rationed problem as a net
present value problem with cumulative-resource constraints. His branch-and-
bound algorithm is based on the enumeration scheme from Subscction 3.2.1,
and the relaxations at the enumeration nodes are solved by the dual flattest
ascent method discusscd in Subsection 3.2.3. Kimms (2001a), Sect. 8.2, has
proposed a mixed-integer linear program for a gcncralization of thc problem
setting where residual cash is lent from one period to the next and scvcral
projects from a given portfolio are considered simultaneously. The objective
is to select the projects to be performed from the portfolio and to schedule
the selected projects in a way that thc cash balancc at planning horizon d is
maximized. Kolisch (1997) has investigated a variant of this problem where
in addition, cash can be borrowed a t an interest rate of a' >
a but only
106 3. Relaxation-Based Algorithms
Table 3.7. Performance of algorithms for the net present value problem with one
cumulative resource
Algorithm n popt Ptns PTLOPL Punk
ing rcflexive preorder in set Ve. Since the ground sets Va and V e of those
two preorders arc disjoint, thc union of both prcorders is again transitive and
thus represents a prcordcr in ground sct V = Vu U V". Accordingly, for given
schedule S we define the schedule-induced preorder to be
denote the earliest arid latest start times of activity j given that activities
i E C start at times Si. Thc schedule S generated is time-fcasiblc precisely if
< +
at any itcration it holds that ESF S, 6g 5 LSf if a forward arc (i, j ) is
selected and ESf < Si - 6; < L S F if a backward arc (j,i ) is chosen.
Froni the viewpoint of implementation, it is expedient to allow the sched-
uling of activities j a t their earliest or latcst start times E S or ~ LSf even if
the corresponding tcmporal arc connects activity j with an activity i that is
not scheduled either. We then need not check whether or not activity j can
already be linked to some activity i E C , while the set of schedules which
can be generated is not affected by this modification. The reason for this is
that the same tree G could have been constructed by the original method just
by processing the activities j in a different order. Figuratively speaking, the
modification means that the directed graph G whose node set C is iteratively
expanded may now be unconnected unless C = V. Nevertheless, the property
that the start times of all scheduled activities i E C are known as soon as
they arc added to G is preserved.
Algorithm 4.1 shows an implementation of the procedure for the case wherc
the availability of tile resources is not limited, i.e., Rk: = cc for all Ic E RP and
110 4. Constructive Algorithms
-
Rk = -co, Rk =
- for all k E R Y . As we have mentioned in Subsection 2.3.2,
this assumption is generally met in practice when dealing with rcsourcc level-
ling problems, where only renewable resources are taken into account and the
resource capacities may be chosen according to the respective requirements.
How to modify the schedule-generation scheme in the presence of resource
constraints will be explained below. For simplicity, we assume that ST # 0.
Aftcr the computation of the earliest and latest schedules ES and LS, at each
iteration some activity j E V \ C not yet scheduled is selected. Then, the de-
cision set Dj of tentative start times t for j is determined. The conditions on
start times t ensure that the resulting schedule S is (time-)feasible and that
precedence relationships arc only established between activities of the same
type (i.e., among real activities and among events; recall our discussion about
the proper definition of schcdule-induced prcorder B(S)). Finally, some t E Dj
is selected to be the start time of j and the time windows [EStL,LSh] for the
activities h E V \ C arc updated. These steps are reiterated until all activities
have been scheduletl. The resulting tree G is a spaririirig tree of all relation
networks N(p) for which p contains the precedence arcs added and thus in
particular a spanning tree of schedule network N(Q(S)).The time complexity
of Algorithm 4.1 equals O ( m n ) ,which is the time required for calculating the
initial earliest and latest schedules.
The following proposition (cf. Neumanri et al. 2000) establishes the com-
pleteness of the schedulc-generation scheme. This means that, at least in thc-
ory, a rcsourcc allocation problem with locally concave objective function can
be solved by a brute-force algorithm branching over the activity j E V \ C to
be scheduled next and the tentative start time t E Dj chosen.
4.1. Schedule-Generation Scheme 111
Proof.
(a) Since the earliest and latest start times are updated in the course of the al-
gorithm, schcdule S is (time-)feasible if at each iteration V j [ES,, LSj].
It follows from the definition of decision set 'Dj that we only necd t o show
that ESj <LSj. Now assumc that we have schcdulcd somc activity j'
and before the update of the earliest and latest start times it holds that
ES,, <
LSh for all h E V \ C. Then Sjl 5 LSj, 5 LSt, - djtt, and
>
Sj, ES,, > ESh+dhj, for all h E V \ C and in particular S3,+djrj < LSj
and Sj, - djj, > ES,. Conscqucntly, ES, > LSj aftcr thc update would
imply Sj,+djrj > Sj, -djj,, i.c., djjj +djj, > 0, which contradicts ST # 0.
Thus, S is feasible. The quasistableness of S now follows from Proposi-
tion 2.28b.
(b) We consider some quasistablc schcdulc S and show how to gcncratc
S by using Algorithm 4.1. Let G be a spanning tree of schedule net-
work N(O(S)). The existence of such a spanning tree is guaranteed by
Proposition 2.2813. Since G is a trcc and thc procedure starts with C = {O),
at cach iteration there is some activity j E V \ C whose predecessor i on
thc path from node 0 to node j in G has already been scheduled. We may
+
then conncct j with i by selecting t = Si 6; E V j if Sj = S, dG + 23
and
t = Si - 6$ E D j , othcrwisc. Thus, whcn C = V, the schedulc gcncratcd
coincides with schedule S . 0
Now recall that any quasiactive schedule S can be associated with a span-
ning outtrcc G of its schedule network N(0(S)) with root node 0. Such a
spanning outtree is obtained if each activity J to be schcdulcd is linkcd with
somc activity z E C by a forward arc ( 2 , ~ ) . Accordingly, a schcdulc-generation
scheme for quasiactive schedules is readily obtained from Algorithm 4.1 by
initializing dccision set V3 with {ES,} instcad of {ES,, LS,} and dclcting
lines 8 and 9. The statemcnts of Proposition 4.1 with "quasistable" and QSS
replaced by LLquasiactive"and QS1S immcdiately carry over t o this modifica-
tion of Algorithm 4.1.
For what follows, we drop our assumption of infinite renewable-resource
capacities. To take account of renewable-resource constraints, in line 10 of Al-
gorithm 4.1 we only sclcct feaszble start tzmes t from decision set DJ such that
the residual resource capacities sufficc to cxccute activity J in time interval
[t,t + PJ [, i.c.7
112 4. Constructive Algorithms
Of coursc, inequality (4.1) only necds to be evaluated for real activitics
j E Va. By using a support-point rcprcsentation of the resource demand over
time that results from the real activities i E C n V a scheduled, testing (4.1) for
givcn t E D j takes C?(IRPln) tinlc. If tinies t in decision set D j are iteratcd in
increasing order, the amortizcd time complcxity for eliminating all infeasible
+
start t i n ~ c sfrom 'Dj is C?(nlogn IRYn). By keeping a sortcd list of all start
and completion times of schedulcd activitics i E C n Va, the amortized time
complexity for checking (4.1) is decreased t o O(IRPln) per iteration. Thus,
the time complexity of Algorithm 4.1 including the test of inequality (4.1) is
O ( m n + IRpln2).
It may happen that no tentative start time t E D j is resource-feasible,
which means that the current purtial schedule (Si)itc cannot be extended t o a
fcasiblc scllcdule S E S. In that casc, cither the schedule generation is stopped
or an unschcduling stcp is pcrformcd. Diffcrcnt unscheduling techniques arc
known from literature. The method by Franck (1999), Ch. 4, tailored to the
case of regular objective functions, has been skctchcd in Subsection 3.1.4. Fur-
ther unscheduling procedures have been devised by Ncumann and Zimmer-
mann (1999b, 2000) (see also Zirnmermann 2001a, Scct. 3.2, and Neumann
et al. 20030, Scct. 3.7), whcrc thosc activities i E C are unscheduled whose
start a t a different time frees capacity for processing activity j. Alternatively,
onc may also gencrate a time-feasible schcdule S using Algorithm 4.1 first
and then resolve resource conflicts by left- or right-shifting certain activitics.
This approach corresponds to schedule-repair methods described by Neumann
arid Zimmermann (2000). Wc finally noticc that the proof of Proposition 4.1
remains valid for the case of renewable-resource constraints, which mcans that
even without unscheduling, any quasistablc schedulc may still be generated
using Algorithm 4.1 with rcduced decision scts D j .
For certain choices of tentative start times t E D j one obtains specific types
of schedules. If a t cach iteration wc select t = min 'Dj and no unscheduling stcp
is performed, thc resulting schcdule is active because each activity is schedulcd
a t its earliest feasible start time. Likewise, by always choosing t = minDj or
t = m a x D j wc obtain a stable schcdule. The following example, however,
shows that duc to the prescnce of rnaximum time lags, not all active or stable
schedules can be generated in this way.
= S,, and bhO= -Sh to project network N . The set S&C_ STof all time-
feasible schedules belonging to project network N1 coincides with the set of all
schedules that can bc obtained by extending (Sh)hECUI,)to a time-feasiblc
schedule. If for all schedules S E S!,, the invcntory lcvcl a t time S, either falls
below the safcty stock or exceeds the storage capacity, i.e.,
J
3
11 2 _
Fig. 4.2. Cases occurring when shifting set C : (a) shift along leaving and against
entering arc; (b) shift along leaving and along entering arc; (c) shift against leaving
and against entering arc; (d) shift against leaving and along entering arc
In all four cases, the resulting schedule S' either coincides with S (which
may happen when 5 is a degenerate vertex of its schedule polytope) or S' is
a vertex adjacent to S in the closure of equal-order set S^{9{S'')) of some
schedule S'\ In cases (a) and (b), S and S' are adjacent vertices of the closure
oiSf{9{S)). In cases (a) and (c), S and S' are adjacent vertices of the closure
of Sf{6{S')). In case (d), S and S' are adjacent vertices of the closure of
S^{0{S'')) with S'' := i ( 5 + S').
A neighbor G^ e J\f^^{G) can be determined in two steps. First, we delete
an arc (z, j ) from G. Then, we shift set C until a temporal or precedence con-
straint corresponding to some arc {i\j') becomes active. If (i, j ) is a temporal
arc, C can only be shifted along (i, j ) . C can be shifted along or against
(z,j) if (i,i) is a precedence arc. Finally, we add arc (i', j ' ) to G and obtain
spanning tree G'. Since G contains n-hl arcs (i, j ) , which all may leave G, and
because we may shift either along or against (i, j ) , the size of neighborhood
J\r'\G) isoforder C)(n).
Next, we define a neighborhood function A/*^* on the set S^^ C E^^ of
spanning outtrees G of schedule networks A^(^) where 0 G SXV. Those span-
118 4. Constructive Algorithms
Proof.
(a) Clearly, each spanning outtree G representing the earliest schedulc ES
can be reached from any other spanning tree G E CStby performing a
sequence of (lcft-)shifts along a backward lcaving arc or against a forward
leaving arc. This proves GSt to be weakly connected. Moreover, each shift
of type (a), (b), (c), or (d) transforming some spanning tree G into a
different neighboring spanning tree G' is reversible because the opposite
shift is of type (a), (c), (b), or (d), rcspectively. Consequently, any two
adjacent nodes in G5t are linked by a pair of oppositely dircctcd arcs,
i.e., GSt is symmetric (see, e.g., Bang-Jenser~and Gutin 2002, Scct. 1.6).
From thc weak connectivity and the symmetry of GSt it follows that GSt
is strongly connected.
(b) Got is the subgraph of GSt that is induced by set Cot and thus Got is
symmetric as well. The weak connectivity of Got follows from the fact
that the spanning outtrees representing schedule ES can be obtained from
any outtree G E Cot by successively shifting against leaving prccedcncc
arcs ( z , j ) . 0
Locally regular and locally concavc objective functions have essentially been
studied in the context of resource levelling problems, where one strives at
4-3. Additional Notes and References 119
ablc, we give the mean dcviation Abehtfrom thc objective function value of
a best solution found by the three procedures. pbest denotes the percentagc
of instances for which thc respective method has found a best solution (the
values sum to more than 100% because for some instanccs, a best solution
was found by more than onc proccdurc).
The data from Table 4.1 suggest that the tabu search heuristic provides
markedly bettcr schedules on the average than the truncated exact algorithms.
For 81 out of the 90 projects, thc trcc-bascd approach yields a best solution.
In addition, thc mcan deviation from the best solution found is considerably
smaller than for the two other algorithms.
The results for thc total squared resource utilization cost prob-
lem arc given in Table 4.2. The tree-based tabu search procedure has been
compared to the priority-rule ( " P R ) and tabu search ("TS") methods by
Neumann and Zimmermann (2000). The priority-rule method has bccn run
as a multi-pass procedure with ten priority rules. Again, we give the mean de-
viation from the best objective function valuc and thc percentage pbeSt
of bcst solutions found.
Table 4.2. Performance of algorithms for the total squared utilization cost problem
When coping with rcal-lifc rcsourcc allocation problems, somc of thc assump-
tions of our three basic project scheduling problems may be too restrictive.
This chapter is dcdicatcd to expansions of the basic models which permit us
to cover some features that arc frcqucntly encountered in practice.
In Section 5.1 we deal with break calendars, which specify time intervals
during which some renewable resourccs cannot be uscd (such as weekcnds or
night shifts, where skilled staff is not available). In that case, it is often nec-
essary to relax the requircment that activities must not be interruptcd whcn
being in progress. Instead, we assume that the execution of certain activities
can be suspended during brcaks, whercas othcr activitics still must not be
intcrruptcd. We explain how to perform temporal scheduling computations
in presence of brcak calendars and outlinc how the enumeration scheme for
rcgular objective functions discussed in Section 3.1 can be generalized to this
problem setting.
When performing projects whose activities are distributed over different lo-
cations sharing common resources like manpower, heavy machinery, or equip-
ment, changeover tzmes for tear down, transportation, and reinstallation of
resource units have to be taken into account. During the changeover, those
resource units arc not available for processing activities. Due to the transporta-
tion of resource units, the changeover times arc gcncrally sequcncc-dcpcndcnt,
which mcans that the time needed for changing over a resource unit between
the execution of two consecutive activities depends on both activities. In Sec-
tion 5.2 we show how to adapt the relaxation-bascd approaches to the occur-
rcncc of sequence-dependent changcovcr timcs.
In many applications of project management, thc assignment of resources
to the project activities is not (complctcly) predetermined by technology. We
may then perform certain activities in alternatme ezecutzon modes, which dif-
fer in durations, time lags, and resource rcquircmcnts. The exccution modcs
of an activity reflect tradeoffs betwcen thc timc and rcsourcc demands. For
examplc, the duration of an activity may bc shortcrlcd by incrcasing the nurn-
bcr of allotted resourcc units (timc-resource tradeoff) or some rcsources used
124 5. Supplements
In many real-lifc projects, certain renewable resources are not availablc during
breaks like weekends or scheduled maintenance times. Scheduling the activi-
tics subject to break calendars is termed calendarization. For what follows, we
assume that some real activitics may be interrupted during a break, whereas
others must not be interrupted due to technical reasons. Hence, the set of
all real activities VU decomposes into the set Vg of a11 (break-)interruptible
activitics and the set V$ of all non-interruptible activitics. The proccssing
of interruptible activities i E Vg can only be stopped at the beginning of a
break and has to bc rcsumcd at the end of the break. This assumptiori distin-
guishes calendarization from preemptive projcct scheduling problems, where
activities may be interrupted at any point in time (scc, c.g., Dcmeulcmccstcr
and Herroelen 1996). Furthermore, for each interruptible activity i E Vg, a
m i n i m u m execution time ei E W is prescribed during which i has to bc in
progress without being suspended, e g . , e, = 1. To simplify notation, we set
ei := pi for non-intcrruptible activities i E V,+rid assume that for activities
i E Vc, tlie time between any two succcssive breaks is not less than e i .
5.1. Break Calendars 125
Clearly, minimum and maximum time lags may dcpend on calendars, too.
For example, a precedence constraint between activities i and j refers to the
completion time Ci and thus to the calcndar bi of activity i. Thereforc, wc
introduce a time lag calendar bij for each arc ( 2 , j ) E E of project network N.
Point in time t is taken into account when computing the total working
time between the starts of activitics i and j exactly if bij(t) = 1. That is,
<
J.,' bZj(r)dr equals the total working timc in interval [S,,Sj[ if Si Sj and
equals the negative total working time in intcrval [Sj,Si[,otherwise.
The actual minimum difference Aij between start times Si and Sj that is
prescribcd by arc (i,j ) E E depends on start time Si and calendar bij:
+
Si Aij(S,) is the earliest point in time t 2 0 for which thc total working
timc in interval [Si,t [ or [t,Si[,respectively, is grcatcr than or equal to Idij[.
126 5. Supplements
> >
Since b i j ( t ) E {0,1) for all t 0, it holds that liSij(Si)l Ihijll and A i , ( S i )
and hij have the same sign.
For temporal scheduling, thc temporal constraints S j - S i 2 hij for all
( i ,j ) E E have to be replaced by
Minimize Si
Input: MPM project network N = (V, E , 6 ) ,partition {Vg, VZZ of set V U activity
,
calcndars b, for i E V a ,time lag calendars bij for (i,j ) E E.
Output: Earliest schedule E S .
set ESo := 0, Q := { 0 } , and ES, := -m for all i E V \ Q;
while Q # 0 do
dequeue i from Q;
if i E V" then
determine t* := min{t > ESi I b , ( ~= < +
) 1 for all t T < t e , } ;
a
if t* > then terminate; (*there is no time-feasible schedule *)
else if ES, < t* then set ES, := t * ;
for all ( 2 , j ) E E do
determine t* := min{t 2 ES, I SLS, >
bij ( 7 ) d ~ 6,j);
if ES, < t* then
set ESj := t*;
if j $ Q then enqueue j to Q;
if j E Va \ Q and b , ( ~ = < +
) 0 for some t* T < t* e3 then enqueue j to Q;
return earliest schedule E S ;
Let ,O denote the number of brcaks in all activity and time lag calendars. If
somc activity i is inspccted more than n(/3+1) times, then thcrc is no schedule
satisfying the calendar constraints, and the algorithm can be stopped. Franck
et al. ( 2 0 0 1 ~ )have shown that if the calcndars are given as sorted lists of
start and cnd timcs of breaks, Algorithm 5.1 can be implcmcnted to run in
O(mn/3) time.
The latcst schcdulc L S can be computed by using a similar labcl-correcting
procedure again starting at node 0 and procccding from terminal nodes j to
initial nodes i of arcs ( i , j ) E E. In difference to Algorithm 5.1, t* is set to be
the lastest time for which condition (5.1) or (5.2), respectively, is fulfilled (for
details we refer to Neumann et al. 2003b, Sect. 2.11).
The enumeration scheme for resource allocation problems with regular ob-
jective functions (see Algorithm 3.1) can be used without almost any modifica-
tion for thc casc of calcndar constraints as wcll. Schedule S = m i n ( ~ , , ~ S ~ ( p ) )
is then computed by the adaptation of Algorithm 3.2 to the casc of break cal-
cndars, where the calendars b,, for pairs ( z , ~ )E p coincide with calendars b,
< <
if z E V a and are given by bag(t)= 1 for all 0 t 2 if z E V". ST(^) now
denotcs the set of all schedules satisfying the calendar constraints (5.1) and
(5.2) for rclation network N(p). Similarly to the case without calendars, it
128 5. Supplements
can be shown that set ST(p), though generally being disconnected, possesses
a unique minimal point (cf. Franck 1999, Sect. 3.2) and that this property
still carries over to the union U p E p S ~ ( pof) sets ST(^).
and
( 2 ) 1 ,. } (2 E Vg) (5.6)
(5.5) says that if there is a unit of resource k proccssing both activities i
and j, then activitics i and j (including the possible changeover in between)
must not overlap. (5.6) limits the availability of resource k to R k units. Since
all changeover times are nonnegative, a changeover-feasible schedule always
observes the rencwablc-rcsourcc constraints (1.7).
In the following, we develop an equivalcnt charactcrization of the change-
ovcr-feasibility of schedules, which will serve as a basis for thc solution
method discussed later on and which draws from a model used by Nagler
and Schonherr (1989) for solving time-resource and time-cost tradeoff prob-
lcms. The underlying concepts go back to a model for aircraft schcduling
presented in Lawler (1976), Sect. 4.9. A similar tanker scheduling problem
has already been studied in an early paper by Daritzig and Fulkcrson (1954).
Let S be some schedule and let k E RP be a renewable resourcc. Thc ana-
logue to schedule-induced strict order O(S) introduced in Subsection 2.1.1 is
thc relation
0"s) := {(i,j ) E V t x VE I Sj 2 Si + p , + dtj}
Owing to the weak triangle inequality and because pi > 0 for all i E Va, rela-
tion Ok(S) is transitive and asymmetric and thus represents a strict order in
set V t . In contrast to the case without changeover times, however, Ok(S) does
not represent an interval order in general. We illustrate the latter statement
by an example.
130 5. Supplements
1 2
Fig. 5 . 1 . Schedule-induced strict orders are no longer interval orders: (a) Gantt
chart for schedule S; (b) precedence graph G{0{S))
by arc (il,i") with lower capacity liri,, = r i k and infinitc upper capac-
ity. The nctwork flow methods then do not only provide a minimum (s,t)-
flow u q n G k ( Q k ( S ) )but also a maximum ( s ,t)-cut [UL, U;], whose ca-
pacity equals thc minimum flow valuc 4 ( u k ) (see, e.g., Ahuja et al. 1993,
Sect. 6.5). In addition, it can easily be shown that any niaximum ( s , t ) -
cut in G k p k ( s ) )is a uniformly directed cut containing only forward arcs.
Thus, &(S) = {i E V{ I (il,il') E [UL,UL]}. As has already been noticed by
Mohring (1985), Sect. 1.5, the computation of a maximuni ( s ,t)-cut may also
bc pcrformcd in the transitive reduction of G k ( ~ k ((i.e.,~ ) )in the network
which ariscs from Gk(Bk(s))by replacing the arc set with its covering rcla-
tion). In that casc, any maximum (s, t)-cut [UA, UL] contains only arcs (it,i")
obtained by splitting up some node i E V{, i.e., A k ( S ) = {i E V{ I i' E UL}.
To adapt the enumeration schemes for regular and convcxifiablc objec-
tive functions from Algorithms 3.1 and 3.3, rcspectively, to the occurrence of
sequence-dependent changeover times, we make the following modifications.
First, we replacc thc activc scts A ( S , t ) at times t by active sets A k ( S ) . If
for some k E R P , &(S) is a forbidden sct, we compute thc sct B of all rnin-
irnal delaying alternatives B for F = A k ( S ) . In casc of a rcgular objective
function f , for given B E B we then introduce the disjunctivc precedcncc
constraint
jcB - . A
G
+ +
min S. > min(S, pi 1 9:
j)
In practice an activity can often be carried out in one out of finitely many
alternativc execution modes with different processing times, time lags, and rc-
source requirements. Thc multiple modcs give rise to several types of tradeoffs
permitting a more efficient use of resources. Sometimes the tradeoffs include
the consumption of nonrenewable resources likc the project budget. As for rc-
newable resources, the availability of nonrenewable resources is limited. The
availability of nonrcnewable resources, however, does not refer t o individual
points in time but to the cntire planning period. Each time an activity is
carried out, the rcsidual availability of a nonrenewable resource is decreased
by thc corresponding resource demand. Thus, nonrcnewablc resources can
be viewed as spccial cumulative resources (cf. Section 1.3) that are depleted
132 5. Supplements
but never replenished. This implies that for nonrenewable resources, resource-
feasibility solely depends on the selection of activity modes and not on the
schedule. That is the reason why nonrenewable resources can be omitted when
dealing with single-mode project scheduling problems.
Since the early 1980s, the (discrete) multi-mode project duration problem
with precedence constraints among the activities instead of general temporal
constraints has been treated by several authors. The case of rcsourcc-rcsourcc
tradeoffs has already been considered by Elmaghraby (1977), Sect. 3.4.2. Ex-
act algorithms havc bcen rcvicwcd and their performance has been tested by
Hartmann and Drcxl (1998). At present, the most cfficicnt method for solving
this problcm is the branch-and-bound algorithm of Sprechcr and Drcxl (1998).
Hartmann (1999b), Sect. 7.3, has compared several heuristic approaches. An
cxpcrimental performance analysis presented in thc lattcr reference reveals
that among thc tcstcd hcuristics, the best procedurc is a genetic algorithm
published in Hartrnann (2001). A special case of the multi-mode project du-
ration problem has been studied by Demeulemeester et al. (2000), who havc
developed a branch-and-bound algorithm for the discrete time-resourcc tradc-
off problem. For each real activity, a workload for a single renewable resource
is specified. The alternative execution modes arisc from all undominatcd inte-
gral duration-requirement combinations the product of which is at least cqual
to the given workload.
For the case of general temporal constraints, four different algorithms have
been proposcd in literature. The tabu search procedurc by De Reyck and Her-
roelen (1999) performs a local search in the set of possible mode assignments
to activities. For givcn exccution modes, thc resulting single-mode problem
is then solved by the branch-and-bound algorithm of De Reyck and Herroc-
len ( 1 9 9 8 ~ )Franck
. (1999), Sect. 7.2, has adapted a priority-rule method by
Kolisch (1995), Sect. 6.2, to the case of general temporal constraints. At each
iteration, the activity to be scheduled is choscn on thc basis of a first prior-
ity rule. A second priority rule providcs the execution mode for the selected
activity. A streamlined multi-pass version of this procedure can be found in
Heilmann (2001). Dorndorf (2002), Ch. 6, has described an extension of the
branch-and-bound algorithm by Dorndorf et al. ( 2 0 0 0 ~ )for the single-mode
project duration problem (cf. Subsection 3.1.4) to the multi-mode case, where
mode assignmcnt and activity scheduling are iterated alternately. Bruckcr
and Knust (2003) have presentcd an adaptation of thcir lowcr bound for the
single-mode problem (see Subscction 3.1.3) to the prescncc of multiple exe-
cution modes. The corresponding linear program is again solved by column-
generation techniques.
In this section wc discuss thc cnumcration schcmc of a branch-and-bound
procedure proposed by Heilmann (2003) for the multi-mode project duration
problem, where the selection of activity modes and the allocation of resources
are performed in parallel. The basic principle of this rclaxation-based enumer-
ation scheme can be used for solving multi-mode resource-constrained project
scheduling problems with arbitrary regular or convexifiable objective func-
5.3. Alternative Execution Modes for Activities 133
be the set of modes that can be selected for activity i in full-assignment exten-
>
sions rc g and Ict R " be the set of nonrenewable resources with availabilitics
Rk E W.By rzknL, E Z>Owe denote the requirement for resource k E R P U R"
if real activity i E Va executed in modc rn, E M , . Then
The set of schedules which are time-feasible with respcct to assignment g arc
denoted by ST ( g )
Dcfinc p,,% E W to be the processing time if real activity i E V a is executed
in mode m , E M , . Thc (corc) duration of activity i E V given assignmcnt g
is
p,(z) := min pam%
~%€Mz(&)
For schedule S , the set of real activities being in progrcss at time t then
cquals A ( S , g , t ) := { i E V a I S, < +
t < S, p,(g)} arid r k ( S , g ,t ) :=
C,Ea(s,l,r) r,i;(g) is thc demand for rcsourcc k t R" at time t. A schedule S
which satisfies thc renewable-resource coiistraints
Minimizc f(S) I
subjcct to ximi = 1 (i E V )
m,EM,
Xim, E (0, I } ( i E V , m,, E M i )
s E ST ( x )n Sn ( x )n Sc
5.4. Continuous Cumulative Resources 135
c
S(a') S(:) (z' 2 z )
This observation is the starting point for a relaxation-based cnumeration
scheme for solving multi-mode problem (MP). Let p bc somc rclation in node
) { S E ST(.) I SJ
set V, and let S ~ ( p , g := > +
St pt(g) for all ( 5 , ~ ) E p)
be the relation polytope belonging to p and assignment g . Thc algorithm
starts with the empty assignment g = 0. For the corrcsponding single-mode
problem (P(g)), schedules are enumerated as minimal points of appropriatc
(unions of) relation polytopes ST(p,g),see Algorithms 3.1 and 3.3. Each time
a schedule S feasible with respect to g has been obtained, tlie execution mode
of some activity i with C7rL,EM, gtm, = 0 is fixed such that the resulting
assignment g' is still feasible (if there is no mode m, E M, such that g' is fea-
sible, we perform backtracking). Then, the time-feasibility of S with respect
to thc new assignment g' is restored. Due to S ( g l ) S ( g ) , S may bc not
resource-feasible with respect to g'. In that case, the enumeration of sched-
ules is resumcd by cxtending the current relation p until a schedulc S' which
is feasible with respect to g' has been found. These steps are reiterated until
a fcasible full assignment x has been reached or there is no feasible extension
of the current assignment gl.
project. This type of resources has been considered by Schwindt (2002) and
Neumann et al. (2005) in the context of scheduling problems arising in thc pro-
cess industries. Recently, Sourd arid Rogcric (2005) have presented constraint
propagation techniques for computing lower and upper approximations to the
loading profiles of continuous cumulative rcsources.
The concept of continuous cumulative resources also covcrs the renewable
and (discrete) cumulativc rcsources, which we have considered until now. For
the case of convex objectivc functions f , wc show how the expanded resourcc-
constrained project scheduling problem can be solved by using a rclaxation-
based approach. The basic principle is again to substitute the rcsourcc con-
straints into a finite disjunction of linear incqualities, which can be viewed as
pararnetcrized preccdcnce constraints between activities.
RY
Let be the sct of continuous curnulativc resources with safety stocks
R k E Z U {-oo) and storage capacities
- zk E Z U {oo), where Rk > I&.
Performing an activity i E V incrcascs the inventory in resource k E R Y
by r,k E Z units. Analogously to the case of discrete cumulative resources,
wc suppose that Rk < CiEV rik< & for all k E %Y, which ensures that
the ternlirial inventories are within the prescribed bounds. If r i k < 0, we
again spcak of a deplction of resource k , and if r i k > 0, we say that re-
source k is replenished. Depletion and replenishments arise at constant rates
. /pi This mcans that evcnts i E Ve deplcte and replenish at infi-
r i k = r ,k
nite rates, which corresponds to the setting for discrete cumulative resourccs.
Since renewable-resource constraints can be expressed by temporal and dis-
crete cumulative-resource constraints, the new model also includes both types
of resourcc constraints that have bcen studicd previously. By VL and V z we
respectively denote the sets of activities depleting or replenishing resource k .
Vk := VL U V ,is the set of all depleting and replenishing activitics for re-
source k. The resource constraints again say that at any point in time, the
inventory level of each resource must be between the safety stock and thc
storage capacity.
Now let S be some schedule. By
0, if t < S,
1, i f t 2 S , + p i
(t - S,)/pi, otherwise
Inequalities (5.15) ensure that for each schedule S satisfying (5.15) it holds
that x j > z j ( S , t ) if activity j E B depletes and zj <
z j ( S , t ) if activity
j E B rcplenishcs the stock of k . Adding constraints (5.12) to (5.15) to the
relaxation removes the inventory shortage at tirne t .
The inventory in resource k attains its minimum at a point in time when
some replenishing activity i is started or when sonie depleting activity i is
complctcd. That is why time t can always be chosen to be cqual to S, for
+
somc i E V z or equal to Si p, for some i E VL, and thus we can replace t
in (5.12) and (5.15) by Sior Si + p i . Wc then write Aik and Bi%nstead of
A and B as wcll as z:k instead of z j . Note that without loss of generality wc
can assume i E Aik for all k E ??f and all i E Vk because the corrcsponding
inequality (5.12) is always satisfied. Passing from constants t to variablcs Si
ensurcs that only a finite number of constraints have to be introduced before
the resource constraints (5.11) arc satisficd.
From the above reasoning it follows that & again represents thc union
of finitely many polyhedra. The set of all minimal points of Sc, however, is
generally uncountable, which implics that the set AS of all active schedules
is irifinitc (and hencc so arc all of its supersets depicted in Figure 2.4).
The solution procedure is now as follows. We solve the convex program
Minimize f ( S )
subject to S E ST (5.16)
(5.12) to (5.15) for partitions {Aik,BB?" selectcd
and add new constraints of type (5.12) to (5.15) to problcm (5.16) until either
the search spacc P becomes void or the resulting schcdule S is feasible. Then,
we return to an altcrriative partition {Aik,Bik} and proceed until all alter-
natives have been investigated. Convex program (5.16) can be solved in poly-
nomial time because its feasible region P represents a polytope. Of course,
the objcctive function value of any optimal solution to (5.16) represents a
lower bound on the objective function value f ( S ) of any feasible schedule S
satisfying the added constraints of typc (5.12) to (5.15).
- iniplemeritation issues. Assumc that the inventory
Ncxt we discuss some
in some resource k E 727 falls below the safety stock at time t = Si ( i E Vc)
or t = Si + p i (i E VJ. To enumerate the sets Aik and Bik we construct a
binary trcc as follows. Each lcvel of the trce belongs to one activity j E Vk.
For cach activity j we branch ovcr the alternatives j E Aik and j E Bik and
add the corresponding constrairits (5.12) or (5.13), (5.15), as well as for both
alternatives the relaxation
5.4. Continuo,us Cumulative Resources 139
of constraint (5.14) to the convex program (5.16). Each lcaf of the tree corre-
sponds to one distinct partition {Ai< BBik}. We can stop the enumcration for
activity i as soon as the inventory shortage at time Si or Si + p i is settled,
even if Aik u c Vk. In thc latter case, it may be necessary to resume the
branching later on if the shortage reappears whilc dealing with other resource
conflicts. Since for each resourcc k E 6 7 and each activity i E Vk, the con-
struction of thc corrcsponding sets AZkand Bik requires at most lVkl steps,
the height of the branch-and-bound tree is of order 0(1671n2).
The computational effort can be reduced considerably by tcsting whether
the search spacc P has becomc void before solving convex program (5.16).
Let Zj be the minimum time lag between activities i and j that is implied
by the prescribcd temporal constraints, incqualitics (5.12), and inequalities
(5.15) where 23" is sct to be cqual to 1 if j E VL and equal to 0, otherwise.
Assumc that for somc activity j E Vk the addition to set A i h r Bik leads to
+
a new temporal constraint Sj - Si 2 hij. Then P = 0 if hij dji > 0. In that
case, the alternative set B i b r Aik, respectively, can immediately bc selected
for activity j .
Now let (S,rc) be an optimal solution to (5.16) such that schedule S is
feasible. We then obtain a feasible schedule S' with f (S') < f (S) by
(a) moving all activities j E Vk from A" to B" for which (5.12) is activc,
(b) rnoving all activities j E VL from Bik to Aik for which rcjk = 1, and
(c) moving all activitics j E V: from Bik to Aik for which xgk = 0
and solving convex program (5.16) again. Bascd on this dominance rule, fea-
sible solutions belonging to leaves of the enumeration tree can bc improved
and thus thc currcnt upper bounds can bc dccrcased by performing the above
transformations (a) to (c).
Eventually, we consider the gcncral casc including discrete depletions and
rcplenishments at the occurrcnce timcs of events. For events j E B n V"
decision variable z, can be fixed to 0 if j E V; and to 1 if J E Vk+ because
p, = 0 (compare (5.15)). If activity i with t = S, or t = SZ+p, is chosen to be
an event, then i must deplete the stock of resource k . Moreovcr, for an event
j E B n V c it may happen that S, = t though x, = 0, i.e., x, < x,(S,t).
As a conscquence, the shortage at time t may pcrsist aftcr having introduced
constraints (5.12) to (5.15), in which case we perform backtracking. If problem
(F) is solvable, the enumeration tree contains alternative partitions removing
the shortage.
Applications
product l are directly installed into one unit of product 1'. Pf coincides with
the set of all sinks of G.
Now let xl E Z>o denote the gross requirements for products 1 E P . The
gross requirements-zl for final products l E Pf arc equal to the primary
requirements dl given by the customer orders. The gross rcquirements xl for
intermediate products 1 can easily be obtained by a bill of materials explosion,
all'xl, (1 E P ) .
i.e., by solving the systcm of lincar equations xl = dl + C ( l , l , ) E A
Since there are no stocks available, the gross requirerncnts xl coincide with
the amounts ql of products 1 to bc manufacturcd.
Each product 1 E P must be processed on machines of diffcrcnt types k in a
prescribed order, which is given by the process plan of product I. Scvcral iden-
tical machines of each type k (k-machines, for short) may bc available. The
processing of a batch of product 1on a k-machine is referred to as an operation,
which is denoted by kl. The execution of operation kl requires a (sequence-
independent) setup time dkl during which the machine is occupied. For what
follows wc assume that no items of product 1 arc nccded for installing the
machine. In addition, we suppose that the production is performed accord-
ing to a single-lot strategy, i.e., all units of a product are processed in one
batch of sizc xl. The latter assumption is gcncrally met in make-to-order pro-
duction sincc cach product is manufactured in response to a customer ordcr,
and splitting the batches would incur additional setup times without saving
considerable holding cost. Hence, the processing time of operation kl is
whcrc u k , E W is the unit processing time needed for producing one itcm of
product 1 on a k-machine.
The make-to-order production scheduling problem consists in finding an
opcration schedule such that no two operations overlap in time on a machine,
the opcration sequences given by thc process plans are observed, a sufficient
amount of input products is available during the execution of cach opcration,
and somc objcctivc function (e.g., the makespan) is minimized. In the follow-
ing, we show how the production scheduling problcm can bc modelled as a
resource-constrained project scheduling problem with renewablc and cumula-
tive resources. The model is based on the previous work by Giinther (1992)
and Neumann and Schwindt (1997).
For each operation kl we introduce one real activity, also denoted by kl,
whose duration pkl is given by (6.1). A machine type k is identified with a
renewable resource k E RP.Resource capacity Rk equals the number of k-
machines available. Each activity kl requires one unit of resource k .
Project network N is obtained by exploding each node 1 E P of gozinto
graph G into the respective (directed) path from the initial operation kl to
the terminal operation k'l in the process plan of product 1 (see Figure 6.1).
Thc arcs (1,l') E A are then replaced by arcs (k'l, kl'l') linking the terminal
operation k'l of 1 with the initial opcration k"l1 of 1'. Moreover, all initial
144 6. Applications
operations of products at the lowest production level are connected with the
project beginning event 0, and the terminal operations of the final products
are connected with the project termination event n + 1. Finally, backward arc
(n -f-1,0) is added.
Fig. 6.1. Project network without arc weights arising from gozinto graph
]
k "^ δkl,k'l kl ukl
. t
Fig. 6.2. Overlapping operations kl and k'l with Uki < uy,
6.1. Make-to-Order Production Scheduling 145
T h e case where Uki > Uk'i is illustrated in Figure 6.3. Here, starting opera
tion k'l at the completion of the first item of product / on t h e A:-machine would
mean t h a t after the processing of the first item on the fc'-machine, the required
second item from the /c-machine is not finished. Thus, we synchronize b o t h
operations in a way t h a t the last item on the fc'-machine is processed after
the completion of operation kl, i.e., Ski^k'i = '^ki + xiUki - {xi - l)uk'i - 'dk'i-
I
k' δ kl,k'l J k'l uk'l
k kl ukl
_^ t
Fig. 6.3. Overlapping operations kl and k'l with Uki > u^n
+ + <
81;~ Y ~ U M- 2 9 1 c / ~ t ~ if allfukl
, ukrl
Skl,k'l' =
+
flk1 alllxllul;l - ( ~ 1 1- E ) u l c / ~ +
- Iqk'l/ tkk,, otherwise (6.4)
Note that formula (6.3) may be interpreted as the special case where 1' = 1
and all, := 1.
We now turn to gcncral product structures containing common parts 1 E P.
The presence of common parts leads to an asszgnment sequence problem, where
we have to decide on the order in which completed items of product 1 are al-
lotted to succeeding products l'. For a given assignment sequence, appropriate
time lags may then be computed in analogy to the case of a convergent prod-
uct structure. For details we refer to Neumann and Schwindt (1997). In the
latter reference, a procedure for finding a suitable block-structured assignment
sequence has been devised, where all items allotted to one and the same prod-
uct 1' are processed consecutively. For that case, time lags Skl,k,l,can again
be written in closed form.
Alternatively, common parts can be dealt with by introducing cumulative
resources. This approach, which has not been considered by Neumann and
Schwindt (1997), offers the prospect of being independent of an assignment
sequence to be specified in advance. Let 1 E P be some common part. We
again consider the case where all items of 1 being assigned t o some product
are processed one after another, and for simplicity we assume that 1 is in-
stalled into two products, say, 1' and 1". At first, we identify product 1 with
a cumulative resource 1 E R Y with zero safety stock and infinite storage
capacity R1. We then decompose a copy of operation kl into two auxiliary op-
erations kl' and kl'' with durations pkl~= all,zpukl arid pkl,, = all,,xl,,ukl to
be executed on the same fictitious kmachine (which must be represented by a
separate renewable resource & with capacity Ri = 1).To ensure that after the
setup of the k-machine, operations kl' and kl" are processed in parallel with
operation kl, we add the time lags bkl,kl,= 6kl,kl,,= d k l , Skl,,kl = pkl, - pkl,
and bkl,~,kl = pkl" - pkl. Because kl' and kl" cannot overlap, they must be
6.2. Small-Batch Production Planning in Manufacturing Industries 147
That is why storage problems play an important role in the process industries
(see, e.g., Schwindt and Trautmann 2002). Further peculiarities encountered
in the process industries are cyclic product structures, sequence-depcndcnt
cleaning times on processing units, and large processing times, which may
necessitate the explicit consideration of breaks like night-shifts or weekends.
Throughout this section we assurnc that the production is operated in
butch mode, which means that at tlie beginning of a task, the input products
are loadcd into thc processing unit, and the output becomes available at thc
termination of the task. The case of continuous production modc can be dealt
with by using the concept of continuous cumulativc rcsources introduced in
Scction 5.4. As a rulc, the production is organized according to batch mode if
small amounts of a large number of final products are required (whereas the
continuous production mode is typical of basic rnatcrials industry such as oil or
dycstuff industries). The combination of a task and the corresponding quantity
produced is called a batch. An oper.ation corresponds to the processing of a
batch. Since the batdl sizes are limited by the capacity of the processing units,
a task may bc performcd morc than once, rcsulting in several corresponding
operations. In contrast to manufacturing, the processing tinies of operations
are gencrally independent of the respective batch sizcs.
The production scheduling problem to be dealt with consists in allocating
processing units and storage facilities over time to the production of given pri-
mary requirements such that all operations are completed within a rriininlum
makespan. This objective is particularly important in batch production, where
often a large number of different products are processed on multi-purpose
equipmcnt (cf. Blomcr and Giinther 1998). In this case, the production plant
is configured according to the set of production orders rcleascd. Before process-
ing the next set of production orders, the plant has generally to be rearrangcd,
which requircs the completion of all opcrations.
There is an extensive literature dealing with production scheduling in the
process industries. Most of the solution approaches discusscd are based on
time-indexed or continuous-time mixed-integer programming formulations of
the problem, cf. e.g., Kondili et al. (1993), Pinto and Grossmann (1995),
Blomer and Giinther (1998, 2000), or Burkard et al. (1998). For a detailed
review of literature, we rcfcr to Blomer (1999), Sect. 4.2, and Schwindt and
Trautmann (2000).
Thc spccial feature of the approach by Neumann ct al. (2001), which wc
shall discuss in what follows, is the decomposition of the production scheduling
problem into a batcl~ingand a batch scheduling problcm. A similar technique
has been used by Brucker and Hurink (2000) for solving a related produc-
tion scheduling planning problem. This decomposition offers the prospect of
markedly decreasing the sevcrc computational requirements incurred by solv-
ing tlie entire production schcduling problcm at once. Thc hatching phase
gencrates appropriate batches, which in the course of the batch scheduling
phasc are subsequently scheduled on the processing units subject to inventory
constraints. The batching probleni can be formulated as a mixed-integer lin-
6.3. Production Scheduling i n the Process Industries 151
3 3
payments D % payments D
Q
temp. constr. D temp. constr. D
G 5'
09
ti'
09
$
payments D
payment times D
F 7
1 optimization problem 1 1 optimization problem 1
?
-0
f $
=i discou1~1~t
rate D
project deadline D
f2, P
0
5' v
tt F
T
lpayme1 lpayment stream] [net present value function]
discount rate D
value of thc project subject to tlic temporal constraints that are given by the
rninirnuni and maximum time lags (casc (b) in Figure 6.4).
The formulation of the latter optimization problem presupposes the knowl-
edge of the required rate of return (i.e., the discount rate) for discounting the
payments arid the specification of a maximum project duration (i.c., the proj-
ect dcadlinc). When dealing with rcal invcstmcnts in material goods like in
thc building industry, however, often neither is the propcr discount rate to be
applied known with sufficient accuracy nor is the projcct dcadline fixed when
the investment project must be evaluated. The required rate of return is a
thcorctical quantity and can only be estimated (scc Brcaley and Myers 2002,
Ch. 23). The project deadline generally arises from negotiations bctwecn the
investor performing the project and his customers. The parametric optimizu-
tion approach by Scliwindt and Zirnmermann (2002) providcs the maximum
project net prcsent value as a function of the discount ratc and project dead-
line chosen. The rcsulting net present value curve can then scrve as a basis for
thc decision of the investor, which depends on his individual risk preference
(casc (c) in Figure 6.4).
Lct Ve bc thc set of project cvents, including thc project beginning 0
+
and the project termination n 1, the start events of project activities, and
milestones at the completion of subprojects. The project events and thc corre-
sponding prescribed time lags among them can be representcd by an event-on-
node network N = (V", E, S) with nodc set V", arc set E, and arc weights 6ij
for (i,j) E E (see Subsection 1.1.2). Each event i E Ve belonging to an ac-
tivity start is associated with a (negative) disburscmcnt cf < 0 for bought-in
supplies or outsidc scrvices. Progress payments cjf > 0 arise when subprojects
with milestones j E Ve have becn finishcd. Progress payments generally re-
fer to the direct cost which is incurrcd by the activities of the corresponding
subproject (cf. Daynand and Padniari 1997).
Given a discount rate CY > 0 and a project deadline 2,thc time-constrained
net present value problem reads as follows, whcre the- project deadline 2 is
+
specified by arc (n 1,O) E E with weight 6,,+l,o = -d:
project it is necessary to know the projcct nct prescnt value for a rangc of
rclevant values of a and d. In the sequel, we describe a paramctric optimization
procedure that determines the nlaximurn project net prcsent value C* as a
function of discount ratc a and project deadline 2. This algorithm extends a
method by Grinold (1972), who has studied the dependcncy betwccn C * and
> >
the project deadline d. Clearly, since Sf,' S$ if dl 2, C* is nondccreasing
in d.
The following considcrations are based on two basic observations that de-
rive from the study of schedulc scts and objective functions in Scctions 2.2
and 2.3. First, since thc net prcsent value objective function is lincarizable,
there always exists an optimal solution S to thc timc-constrained net prcsent
value problem (6.61that is a vertex of the feasible region S$ of (6.6). Second,
cach vcrtex S of S$ can be rcpresentcd by a spanning tree G = (V", EG)of
project network N.
Thc basic idca for computing net present value functzon
C* : [0,c o [ x [ E S , + ~ , w [ - +
Remarks 6.1
(a) Given a and d, vertex S of S$ is optimal if and only if there exists a
spanning tree G representing S such that for each arc (i, j) E EG,it holds
> <
that C,", (S) 0 if arc (2, j) is a forward arc and C,",(S) 0 if (i, j) is a
backward arc. The latter condition is equivalent to the requircmcnt that
thcrc does not exist a feasible ascent direction z at S (see Subscction 3.2.2).
Hcncc, thc set U of all cvcnts that are shifted in time whcn modifying
projcct dcadlinc d coincidcs with set Un+l,oif backward arc ( n + l , 0) E EG
and is empty, otherwise.
(b) Givcn discount ratc a > 0, a spanning tree G belonging to an optimal
vertex S of S$ does not change whcn modifying project deadline 2, un-
>
til a temporal constraint S, - S, S,, with ( i , j ) $ EG becomes activc.
158 6. Applications
Now recall that set U either coincides with set Un+l,o or is void. As
a consequence, nodes i and j necessarily belong to the same set U or
+
V \ U unless (i, j ) = ( n 1,O). For U = Un+l,o we have Uij = U if
+
(i, j) = (n 1,O), Uij C U if i, j E U, and Uij n U = 8 if i , j @ U . This
means that independently of set U and arc (i,j) wc have (I) Uij n U = 8
or (2) Uij \ U = 8. In case ( I ) , it follows from (6.7) that CG(St) = CG(S)
and in case (2), equation (6.7) providcs C$(St) = ~-"@-')c"(s). 23 In
sum, for each (i,j ) E EG it holds that Cg(S1) = O precisely if CG(S) = 0.
For a given spanning tree G, the nct present value function C* takes the
form
The spanning tree G'- for an optimal schedule S' to project deadline d' =
-
d + a + ( G ) or 2' = d - a-(G) can be constructed without re-performing
any optimization by first, adding the arc (i,j) for the ncw active tcmporal
constraint to G and second, deleting an oppositely directed arc (g, h) with
minimum absolute net present value IC;,(S1)I in the resulting (undirected)
cycle in G.
We now turn to the problem of finding the sniallest discount rate a' > a
where some C$ (S)with (i, j) E Ec changes in sign. Let a&< a;j < . . . < a&
denote all discount rates aij > a. such that for given optimal schcdulc S,
~~y.1(S)= C C $ P . =0
hE u,,
Each of those discount rates aij corresponds to an intcrnal rate of return for
the payment stream given by payments c i for h E UZj arid schedule S. Thus,
discount rates aij can be determined by one of thc standard algorithms for
the calculation of internal rates of return (see, e.g., Zlieng and Sun 1999). Thc
following condition is necessary and sufficient for a changc in sign of C$ (S)
at a' = aij , where Aa := min{al. 23
- a, a$ - cutj, . . . , a,vj - a;''):
For each set U,, , we calculate the smallest discount rate a,, > a for which
(6.9) and (6.10) arc satisficd. An optimal schcdule S' for discount rate a' :=
min(,,,)EE, at3then results from dclaying cvents h E U,, by a + ( G ) time units
if (i,3) is a forward arc of G or from putting events h E U,, forward by a - ( G )
time units if ( i , ~ is
) a backward arc of G. Thc corrcsponding spanning tree
G' can be determined analogously to the case where deadline d is varied.
In summary, each spanning tree G is valid for a rectangular set M which
can be specified by the bottom left corner ( a , d ) and the top right corner
(al,d')(see Figure 6.5). For given a and d, the values of a' and d' can be
computed as described above. On the validity domain M for G , thc net prcscnt
value function can bc writtcn in the closcd form (6.8).
Algorithm 6.1 provides a proccdure for computing all bottom-left corners
(a,2) of scts M along with the corresponding spanning trces G that uniquely
define function C* on sets M. Q is a list of triples ( a , & G) sorted according
to nondecreasing discount rates a, ties being broken on the basis of incrcasing
deadlincs d. For convcnicncc wc again put min 0 := oo.How to find an appro-
priate initial discount ratc a0 > 0 is described in Schwindt and Zimmcrmann
(2002).
160 6. Applications
deadline
I
I I I I I discount rate
Input: Event-on-node network N = ( V " ,E , 6), cash flows cf for all events i E V ' ,
initial discount rate ao > 0.
z,
Output: Set C of triples ( a , G ) .
compute spanning tree G belonging to optimal schedule for 2= ES,+1 and
ff = CYO;
initialize list Q := ((0, ES,+l, G ) ) and set of triples C := ( ( 0 ,ES,+l,G));
while Q # 8 do
delete first element ( a ,2,G ) and all other elements ( a ,., G ) from list Q ;
repeat
determine a' := mi11{a,~I (z,j ) E EG, aZ3satisfies (6.9) and (6.10));
if a' < m then
construct the spanning tree G' belonging to a' and 2;
add triple (a',& G') to Q and C ;
if a+(G)< m then
+
set 2' := 2 a + ( G ) ;
construct the spanning tree G' belonging to CY and ;i';
if there is no triple (.,;i',
G') in list Q then add triple ( a , d ' ,G') to C ;
set 2 :=-
;
i' and G := G';
else put d' := ca;
until 2' = m;
return C ;
In this section we propose two deterministic strategies for coping with uncer-
tainty in resource allocation problems. When executing a project, unforeseen
downtimes of resources, staff time off, reworking time, late delivery of raw
materials or bought-in parts, or imprecise time and resourcc estimations may
cause considerable deviations from the schedule determined. Basically, there
are two ways of taking uncertainty into account when performing the resource
6.5. Coping with Uncertainty 161
f ( S )= w a x S +6 - min [S, -
icv (.i,i)~E (i,j)~E
fp(S)=
iEv
w j ( max [S,
(.?,i)EEUp
+ 651 - (i,j)EEUp
min [Si - 6$])
whcre 6;% and 6: denote the weights of arcs ( j , i ) and ( i ,j ) in relation net-
work N ( p ) . Thus, the objective function to be minimized cxplicitly depends
<
on p. From the definition of f P it follows that f f ( S ) f p l ( S ) for all S E ST
if p' is an cxtcnsion of p. I11 addition, it obviously holds that S T ( p l ) C S T ( p )
if p1 > p. That is why the feasiblc relation p sought can be chosen among the
C-minimal feasible relations. The latter rclatioris can be gcncrated by using
6.5. Coping with Uncertainty 163
where w, E W are integers specifying thc cost for shifting the start of activ-
ity i E V by onc unit of timc. A(S1,S) coincides with the objective function
' )schedule S' if f is chosen to be the total earlzness-tardiness
value f ( ~ of
+
cost function with duc datcs d, being cqual to completion times S, p, and
WP = W: = wz for all i E V. Thus, we may determine a new fcasiblc sched-
ule S' by minimizing the total earliness-tardiness cost with respcct to previ-
ous schcdulc S and put S := S'. In case of frequent schedule revisions, the
computational cffort for rcschcduling the project can be markedly decrcascd
- relation p in set V. We
by providing, in addition to schedule S, a feasible
then minimizc thc total earlincss-tardiness cost f on the interscction of re-
lation polytope ST(p) with the updatcd feasible region S'. An appropriatc
c-minimal feasible relation p can bc determined in the same way as for thc
anticipative approach.
Conclusions
Summary. In this book we have been concerned with models, algorithms, and
applications of deterministic resource allocation problcms in project manage-
ment. A special emphasis has been placed on developing a unifying framework
within which a variety of project scheduling problems can be treated. Those
problems involve general temporal constraints given by prcscribed minimum
and maximum time lags, different types of scarce resources, and a broad class
of regular and nonregular objective functions. The diversity of the models pro-
posed allows to cover many features arising in applications beyond the proper
field of project management like short-term production planning in the man-
ufacturing or process industries.
The main contributions of this monograph are
an in-depth analysis of temporal constraints and different kinds of resource
constraints (Chapter I),
the formulation of resource constraints in terms of specific relations in
the activity set, which permits a classification of schedules and objective
functions (Chapter 2),
the development of efficient solution procedures for time-constrained proj-
ect scheduling and resource allocation, which are based on the results of
the previous structural analysis (Chapters 3 and 4),
the expansion of the basic resource allocation models to problems with
break calendars, sequence-dependent changeover times in distributed proj-
ects, alternative execution modes for activities, and consumption and re-
newal of resources at constant rates (Chaptcr 5), and
the application of concepts from resource allocation in projcct manage-
ment to first, production scheduling in the manufacturing and process
industries, second, the evaluation of investment projects with respect to
variable project deadline and discount rate, and third, deterministic strate-
gies for coping with uncertainty in project planning (Chaptcr 6).
In particular, we have generalized order-based approaches for projcct
scheduling with renewable rcsourccs to resource allocation problems including
166 Conclusions
cumulative resources that are deplcted and replenished over time. The con-
ccpt of curnulativc rcsources offers a natural way of studying several resource
types that have been dealt with in litcraturc (renewable, nonrenewable, and
recyclable resources). In addition, cumulative resources havc many immedi-
ate applications in their own right such as scarce budgets, matcrial flows, or
limited storage capacitics.
Suggestions for future research. When planning rcal-life projects,
managers usually have to deal with problems that are much less wcll-structured
than the models treated in this book. However, to make resource allocation
amenable to methods of Operations Research, it is generally necessary to make
simplifying assumptions on thc objectives pursued and constraints included.
Thus, bridging the gap betwccn theoretical concepts and practical require-
ments rcnlains a challenging field of furthcr rescarch. The following topics
may be directions of future developments.
74. Goldwasser MH, Motwani R (1999) Complexity measures for assembly se-
quences. International Journal of Computational Geometry and Applica-
tion 9:371-418
75. Golumbic MC (2004) Algorithmic Graph Theory and Perfect Graphs, Annals
of Discrete Mathematics Vol 57. Elsevier, Amsterdam
76. Grinold RC (1972) The payment scheduling problem. Naval Research Logis-
tics 19:123-136
77. Grotschel M, LovAsz L, Schrijver A (1998) Geometric Algorithms and Combi-
natorial Optimization. Springer, Berlin
78. Gunther HO (1992) Netzplanorientierte Auftragsterminierung bei offener Fer-
tigung. OR Spektrum 14:229-240
79. Hajdu M (1997) Network Scheduling Techniques for Construction Project Man-
agement, Nonconvex Optimizations and Its Applications Vol 16. Kluwer, Dor-
drecht
80. Hartmann S (1998) A competitive genetic algorithm for resource-constrained
project scheduling. Naval Research Logistics 45:733-750
81. Hartmann S ( 1 9 9 9 ~ )Project Scheduling under Limited Resources: Models,
Methods, and Applications, Lecture Notes in Econonlics and Mathematical
Systerns Vol 478. Springer, Berlin
82. Hartmann S (19996) Project scheduling with multiple modes: A genetic algo-
rithm. Annals of Operations Research 102:111-136
83. Hartmann S (2001) Project scheduling with multiple modes: A genetic algo-
rithm. Annals of Operations Research 102:111-136
84. Hartmann S, Drexl A (1998) Project scheduling with multiple modes: A com-
parison of exact algorithms. Networks 32:283-298
85. Hartmann S, Kolisch R (2000) Experimental evaluation of state-of-the-art
heuristics for the resource-constrained project scheduling problem. European
Journal of Opcrational Research 127:394-407
86. Heilmann R (2001) Resource-constrained project scheduling: A heuristic for
the multi-mode case. OR Spektrum 23:335-357
87. Heilnlarm R (2003) A branch-and-bound procedure for the multi-mode resour-
ce-constrained project scheduling problem with minimum and maximum time
lags. European Journal of Operational Research 144:348-365
88. Heilmann R, Schwindt C (1997) Lower bounds for RCPSP/max. Report
WIOR-511, University of Karlsruhe
89. Held M, Wolfe P, Crowder HP (1974) Validation of subgradient optimization.
Mathematical Programming 6:62-88
YO. Herroelen WS (1972) Resource-constrained project scheduling: The state of
the art. Operational Research Quarterly 23:261-275
91. Herroelen WS, Leus R (2004~)The construction of stable project baseline
schedules. European Journal of Operational Research 156:550-565
92. Herroelen WS, Leus R (2004b) Robust and reactive project scheduling: A re-
view and classification of procedures. International Journal of production Re-
search 42:1599-1620
93. Herroelen WS, Leus R (2005) Project scheduling under uncertainty: Survey and
research potentials. European Journal of Operational Research 165:289-306
94. Herroelen WS, De Reyck B, Demeulemeester EL (1998) Resource-constrained
project scheduling: A survey of recent developments. Computers and Opera-
tions Research 25:279-302
172 References
95. Herroelen WS, Demeulemeester EL, Van Dommelen P (1996) An optimal re-
cursive search procedure for the deterministic unconstrained max-NPV project
scheduling problem. Research Report 9603, University of Leuven
96. Herroelen WS, Van Dommelen P, Demeulemeester EL (1997) Project network
models with discounted cash flows: A guided tour through recent developments.
European Journal of Operational Research 100:97-121
97. Hertz A, Taillard E, De Werra D (2003) Tabu search. In: Aarts E, Lenstra JK
(eds) Local Search in Cornbinatorial Optimization. Princeton University Press,
Princeton, pp 121-136
98. Hiriart-Urruty JB, Lemarkchal C (1993) Convex Analysis and Minimization
Algorithms I. Springer, Berlin
99. Horst R, Tuy H (1996) Global Optimization: Deterministic Approaches.
Springer, Berlin
100. Icmeli 0, Erengii~SS (1996) A branch and bound procedure for the resource-
constrained project scheduling problem with discounted cash flows. Manage-
ment Science 42:1395-1408
101. Icmeli 0, Erengii~SS, Zappe CJ (1993) Project scheduling problems: A survey.
International Journal of Operations and Production Management 13:80-91
102. Igelmund G, Radermachcr F J (1983) Preselective strategies for the optimiza-
tion of stochastic project networks under resource constraints. Networks 13:l-
28
103. Jacoby SLS, Kowalik JS, Pizzo JT (1972) Iterative Methods for Nonlinear
Optimization Problems. Prentice Hall, Englewood Cliffs
104. Kaerkes R, Leipholz B (1977) Generalized network functions in flow networks.
Operations Research Verfahren 27:225-273
105. Kallrath J (2002) Planning and scheduling in the process industry. OR Spec-
trum 24:219-250
106. Kamburowski J (1990) Maximizing the project net present value in activity
networks under generalized precedence relations. In: Proceedings of 21st DSI
Annual Meeting, San Diego, pp 748-750
107. Keeling R (2000) Project Management: An International Perspective. Macmil-
lan, Basingstoke
108. Kelley J E (1961) Critical path planning and scheduling: Mathematical basis.
Operations Research 9296-320
109. Kelley J E (1963) The critical-path method: Resource planning and scheduling.
In: Muth JF, Thompson GL (eds) Industrial Scheduling. Prentice Hall, Engle-
wood Cliffs, pp 347-365
110. Kerzner H (2003) Project Management: A Systems Approach to Planning,
Scheduling, and Controlling. Holt, Rinehart, and Winston, New York
111. Kimms A (2001a) Mathematical Programming and Financial Objectives for
Scheduling Projects. Kluwer, Boston
112. Kimms A (2001b) Maximizing the net present value of a project under resource
constraints using a Lagrangian relaxation based heuristic with tight upper
bounds. Annals of Operations Research 102:221-236
113. Kiwiel KC (1986) A linearization method for minimizing certain quasidifferen-
tiable functions. In: Denlyanov VF, Dixon LCW (eds) Quasidifferential Calcu-
lus. North-Holland, Amsterdam, pp 85-94
114. Klein R (2000) Scheduling of Resource-Constrained Projects. Kluwer, Boston
References 173
154. Neumann K, Zhan J (1995) Heuristics for the minimum project-duration prob-
lem with minimal and maximal time lags under fixed resource constraints.
Journal of Intelligent Manufacturing 6:145-154
155. Neumann K, Zimmermann J (1999a) Methods for resource-constrained proj-
ect scheduling with regular and nonregular objective functions and schedule-
dependent time windows. In: Wqglarz J (ed) Project Scheduling: Recent Mod-
els, Algorithms and Applications. Kluwer, Boston, pp 261-287
156. Neumann K, Zimmermann J (1999b) Resource levelling for projects with
schedule-dependent time windows. European Journal of Operational Re-
search 117:591-605
157. Neurnann K, Zimmermann J (2000) Procedures for resource levelling and net
present value problems in project scheduling with general temporal and re-
source constraints. European Journal of Operational Research 127:425-443
158. Neumann K, Zimmermann J (2002) Exact and truncated branch-and-bound
procedures for resource-constrained project scheduling with discounted cash
flows and general temporal constraints. Central European Journal of Opera-
tions Research 10:357-380
159. Neumann K, Nubel H, Schwindt C (2000) Active and stable project scheduling.
Mathematical Methods of Operations Research 52:441-465
160. Neumann K, Schwindt C, Trautmann N (2001) Short-term planning of batch
plants in process industries. In: Kischka P, Leopold-Wildburger U, Mohring
RH, Radermacher F J (eds) Models, Methods and Decision Support in Man-
agement. Physica, Heidelberg, pp 211-226
161. Neumann K, Schwindt C, Trautmann N (2002) Advanced production sched-
uling for batch plants in process industries. OR Spectrum 24:251-279
162. Neumann K, Schwindt C, Trautmann N (2005) Scheduling of continuous and
discontinuous material flows with intermediate storage restrictions. European
Journal of Operational Research 165:495-509
163. Neumann K, Schwindt C, Zimmermaml J (2003a) Order-based neighborhoods
for project scheduling with nonregular objective functions. European Journal
of Operational Research 149:325-343
164. Neumann K, Schwindt C, Zimmermann J (2003b) Project Scheduling with
Time Windows and Scarce Resources. Springer, Berlin
165. Nubel H (1999) A branch-and-bound procedure for the resource investment
problem subject to temporal constraints. Report WIOR-574, University of
Karlsruhe
166. 0zdamar L, Ulusoy G (1995) A survey on the resource-constrained project
scheduling problem. IIE Transactions 27:574-586
167. Papadimitriou CH, Steiglitz K (1998) Combinatorial Optimization: Algorithms
and Complexity. Dover, Mineola
168. Patterson JH, Slowihski R, Talbot FB, Wsglarz J (1989) An algorithm for a
general class of precedence and resource constrained project scheduling prob-
lems. In: Slowihski R, Wqglarz J (eds) Advances in Project Scheduling. Else-
vier, Amsterdam, pp 3-28
169. Pinto JK, ed (1998) Project Management Handbook. Jossey-Bass Publishers,
San Francisco
170. Pinto M, Grossmann IE (1995) A continuous time mixed integer linear pro-
gramming model for short term scheduling of multistage batch plants. Indus-
trial Engineering Chemistry Research 34:3037-3051
176 References
171. Pritsker AAB, Watters LJ, Wolfe PM (1969) Multi-project scheduling with
limited resources. Management Science 16:93-108
172. Radermacher F J (1978) Kapazitiitsoptirnierurlg in Netzpliinen, Mathematical
Systems in Economics Vol 40. Anton Hain, Meisenheim am Glan
173. Radermacher F J (1985) Scheduling of project networks. Annals of Operations
Research 4:227-252
174. Rockafellar RT (1998) Network Flows and Monotropic Optimization. Athena
Scientific, Belmont
175. Roy B (1962) Graphes et ordonnancement In: Algan M, Eddison RT, Gillis
PP, Castaiie Ortega JM, Roy B, Viggiani S (eds) metra No. 1, SQrie sp6ciale.
METRA Paris pp 83-125
176. Roy B (1964) Physionomie et traitement des problkmes d'ordonnancement In:
Carre D, Darnaut P, Guitard P, Nghiem P, Pacaud P, de Rosinski J , Roy B,
Sandier G (eds) Lcs Problkmes dlOrdonnancement. Durlod Paris pp 1-18
177. Russell AH (1970) Cash flows in networks. Management Science 16:357-373
178. Sauer J , Suelmann G, Appelrath HJ (1998) Multi-site scheduling with fuzzy
concepts. International Journal of Approximate Reasoning 19:145-160
179. Schirmer A (1998) Project Scheduling with Scarce Resources: Models, Methods
and Applications. Dr. K o v a ~ Hamburg
,
180. Schneeweia C (1995) Hierarchical structures in organisations: A conceptual
framework. European Journal of Operational Research 86:4-31
181. Schneeweia C (2003) Distributed Decision Making. Springer, Berlin
182. Scholl A (2001) Robuste Planung und Optimierung. Physica, Heidelberg
183. Scholtes S (1990) On Convex Bodies and Some Applications to Optimization.
Anton Hain Meisenheim, Frankfurt
184. Schwiegelshohn U, Thiele L (1999) Dynamic min-max problems. Discrete Event
Dynamic Systems 9:111-134
185. Schwindt C (1998a) A branch-and-bound algorithm for the resource-con-
strained project duration problem subject to temporal constraints. Report
WIOR-544, University of Karlsruhe
186. Schwindt C (19986) Generation of resource-constrained project scheduling
problems subject to temporal constraints. Report WIOR-543, University of
Karlsruhe
187. Schwindt C (1998~)Verfallren zur Losung des ressourcenbeschrankteri Pro-
jektdauerminimierungsproblems rnit planungsabhangigen Zeitfenstern. Shaker,
Aachen
188. Schwindt C (1999) A branch-and-bound algorithm for the project duration
problem subject to temporal and cumulative resource constraints. In: Proceed-
ings of the International Conference on Industrial Engineering and Production
Management (IEPM '99), Glasgow, pp 515-522
189. Schwindt C (2000a) A branch-and-bound algorithm for the capital-rationed
net present value problem. In: Abstracts of the 17th European Conference on
Operational Research (EURO XVII), Budapest, p 89
190. Schwindt C (2000b) Local search for project scheduling with convex objective
functions. In: The Seventh International Workshop on Project Management
and Scheduling (PMS 2000), Osnabriick, pp 239-241
191. Schwindt C (2000~)Minimizing earliness-tardiness costs of resource-constrain-
ed projects. In: Inderfurth K, Schwodiauer G, Domschke W, Juhnke F, Klein-
References 177
209. Sourd F, Rogerie J (2005) Continuous filling and emptying of storage sys-
terns in constraint-based scheduling. European Journal of Operational Re-
search 165:510-524
210. Sprecher A, Drexl A (1998) Multi-mode resource-constrained project sched-
uling by a simple, general and powerful sequencing algorithm. European Jour-
nal of Operational Research 107:431-450
211. Sprecher A, Kolisch R, Drexl A (1995) Semi-active, active, and nondelay sched-
ules for the resource-constrained project scheduling problem. European Journal
of Operational Research 80:94-102
212. Stork F (2001) Stochastic Resource-Constrained Project Scheduling. PhD The-
sis, Technical University of Berlin
http://edocs.tu-berlin.de/diss/2001/stork~frederik.htm
213. Stork F , Uetz M (2005) On the generation of circuits and minimal forbidden
sets. Mathematical Programming, Series A, to appear
214. S y d s ~ t e rK, Strgm A, Berck P (1999) Economist's Mathematical Manual.
Springer, Berlin
215. Tavares LV (1995) A review on the contributions of Operatiorlal Research to
project management. In: Proceedings of the 14th European Conference on
Operational Research, Jerusalem, pp 67-82
216. Tempelmeier H, Derstroff M (1996) A Lagrangean-based heuristic for dynamic
rnultilevel multiitem constrained lotsizing with setup times. Management Sci-
ence 42:738-757
217. Trautmann N (2001a) Anlagenbelegungsplanung in der Prozessindustrie. Gab-
ler, Wiesbaden
218. Trautmann N (2001b) Calenders in project scheduling. In: Fleiscllmann B,
Lasch R, Derigs U, Domschke W, Rieder U (eds) Operations Research Pro-
ceedings 2000. Springer, Berlin, pp 388-392
219. Trotter W T (1992) Combinatorics and Partially Ordered Sets: Dimension The-
ory. Johns Hopkins University Press, Baltimore
220. Turner J R (1999) The Handbook of Project-Based Management. McGraw-Hill,
London
221. Tuy H (1995) D.C. optimization: Theory, methods and algorithms. In: Horst
R, Pardalos PM (eds) Handbook of Global Optimization. Kluwer, Dordrecht,
pp 149-216
222. Uetz M (2002) Algorithms for Deterministic and Stochastic Scheduling. Cuvil-
lier, Gottingen
223. Uetz M (2003) When greediness fails: Examples from stochastic scheduling.
Operations Research Letters 31:413-419
224. Vanhoucke M, Demeulemeester EL, Herroelen WS (2001) An exact proce-
dure for the resource-constrained weighted earliness-tardiness project sched-
uling problem. Annals of Operations Research 102:179-196
225. Verhines DR (1963) Optimum scheduling of limited resources. Chemical Engi-
neering Progress 59:65-67
226. Wagelmans A, van Hoesel S, Kolen A (1992) Economic lot sizing: An O ( n log n)
algorithm that runs in linear time in the Wagner-Whitin case. Operations
Research 40: 145-156
227. Wqglarz J (1980) On certain models of resource allocation problems. Kyber-
netes 9:61-65
References 179
Equal by definition
End of proof
Smallest integer greater than or equal to x
Maximum of 0 and x
Empty set
Half open interval {x E R I a 5 x < b}
Cardinality of finite set X
Ball of radius E around S in I W " + ~
Line segment in Rnf
Set of all positive integers
Landau's symbol
Power set of set X
Set of all real numbers
Set of all n-tuples of real numbers
Set of all nonnegative real numbers
X is proper subset of Y
X is subset of Y
Difference of sets X and Y
Intersection of sets X and Y
Union of sets X and Y
Set of all integers
Set of all nonnegative integers
Resources
Forbidden set of activities
Set of all minimal forbidden sets
Set of all minimal k-surplus sets
Set of all miriimal k-shortage sets
Requirement of activity i for resource k
Requirement of activity i for resource k in execution mode m,
Loading profile for resource k given schedule S
Capacity of renewable resource k or availability of nonrenewable
resource k
Safety stock of cumulative resource k
Storage capacity of cumulative resource k
Set of all (discrete) cumulative resources
Set of all corltinuous cumulative resources
Set of all nonrenewable resources
Set of all renewable resources
List of Symbols
Objective functions
Continuous interest rate
Cash flow associated with the start of activity i
Per unit cost for resource Ic
Left-hand Si-derivative of f at S
Right-hand &-derivative of f at S
Objective function to be minimized
Continuation of objective function f
C1-diffe~mor~hism
Derivative of f at S
Left-hand derivative of f at S
Right-hand derivative of f at S
Directional derivative of f at S in direction z
Weight of activity i
Earliness and tardiness costs for activity i per unit time
Weight of free floats for activity i
Temporal scheduling
(2% Completion time of activity i
dv Induced minimum time lag between the starts of activities i and j
EC, Earliest conipletion time of activity i
EFF, Early free float of activity i
E S, Earliest start time of activity i
L cL Latest completion time of activity i
LFF, Late free float of activity i
L st Latest start time of activity i
st Start time of activity i
TF, Total float of activity i
Resource allocation
A Maximal feasible set
A(S,t) Active set at time t given schedule S
B Minimal delaying alternative
I3 Set of all minimal delaying alternatives
C Set of all activities scheduled
C' Set of all activities shifted
C Set of candidate schedules
DJ Set of all tentative start times for activity j (decision set)
G Spanning forest of project network N with arc set Ec
dz) Directional derivative of f at iterate S in direction z
16 Lower bound on minimum objective function
P Search space
u Stepsize
'% v Enumeration nodes
w ( a , 6) Workload for renewable resource k in time interval [a, 6[
x Full mode assignment
x
- Partial mode assignment
t Steepest descent direction
Index
- critical 15 161
.'
f i ct1t1ous 8 - subgradient 76
- real 8 - tabu search 119
activity calendar 125,153 - vertex-following 99
activity list 78 antichain 39,43, 114, 130
activity-interval capacity test 26 anticipative approach 161
activity-on-arc network 9 antiregular objective function 93
activity-on-node network 10 arc
- backward 109,116,157
additional-cost function 113, 119
algorithm - entering 115
- forward 109,111,116,157
- augmenting path 153
- leaving 115
- best-fit search 104
- branch-and-bound 72,97,120 - precedence 104,109,116
- capacity-scaling 86 - temporal 109,116
ascent direction
- column-generation 75,80,132
- flattest feasible 94
- constructive 6,107
assignment 133
- cllipsoid 56,85
- feasible 134
- feasible direction 87
- full 133
- flattest ascent 94,95, 102
- resource-feasible 133
- genetic 78
- time-feasible 134
- label-correcting 13, 71,73, 126
assignment sequence problem 146
- label-setting 72 augmenting path algorithm 153
- local search 115
- multi-pass 79 B
- parametric optimization 156 backward arc 109,116,157
- preflow push 43 balance test 37,81
- priority-rule 77, 113, 119 batch 148, 150
-- bidirectional 102 batch mode 150
186 Index