Sie sind auf Seite 1von 25

European Journal of Operational Research 112 (1999) 322±346

Theory and Methodology

Computing lower bounds by destructive improvement:


An application to resource-constrained project scheduling
Robert Klein *, Armin Scholl
Institut f
ur Betriebswirtschaftslehre, Technische Hochschule Darmstadt, Fachgebiet OR, Hochschulstrasse 1, D-64289 Darmstadt,
Germany
Received 1 July 1997; accepted 30 October 1997

Abstract

In this paper, two meta-strategies for computing lower bounds (for minimization problems) are described. Con-
structive (direct) methods directly calculate a bound value by relaxing a problem and solving this relaxation. Destructive
improvement techniques restrict a problem by setting a maximal objective function value F and try to contradict (de-
struct) the feasibility of this reduced problem. In case of success, F or even F + 1 is a valid lower bound value. The
fundamental properties and di€erences of both meta-strategies are explained by applying them to the well-known re-
source-constrained project scheduling problem (RCPSP). For this problem, only a few constructive bound arguments
are available in the literature. We present a number of extensions and new methods as well as techniques for reducing
problem data which can be exploited within the destructive improvement framework. Comprehensive numerical ex-
periments show that the new constructive bound arguments clearly provide better bounds than the former ones and that
further really signi®cant improvements are obtained through an appropriate application of destructive improve-
ment. Ó 1999 Elsevier Science B.V. All rights reserved.

Keywords: Scheduling theory; Project management; Bounding techniques

1. The problem mized. Realizing the project requires performing a


set of jobs J ˆ f1; . . . ; ng, each of which has a
We present di€erent methods for computing given duration dj (in number of periods with
lower bounds for the NP-hard resource-con- j ˆ 1; . . . ; n). No preemption of jobs is allowed,
strained project scheduling problem (RCPSP). i.e., whenever a job has started in a period t it must
This well-known problem can be stated as follows: be performed consecutively during the periods
A project has to be realized such that its duration t; t ‡ 1; . . . ; t ‡ dj ÿ 1. Due to technological re-
or, equivalently, its total completion time is mini- strictions, precedence constraints, de®ning end-
start relationships between the jobs, may exist.
Within a project, jobs which may be performed
*
Corresponding author. Tel.: +49 6151 16 3964; fax: +49 concurrently compete for a number of di€erent
6151 16 6504; e-mail: rklein@bwl.tu-darmstadt.de resource types (workers, machines, budgets).

0377-2217/99/$ ± see front matter Ó 1999 Elsevier Science B.V. All rights reserved.
PII: S 0 3 7 7 - 2 2 1 7 ( 9 7 ) 0 0 4 4 2 - 6
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 323

Whenever the availability of a resource type is not Alvarez-Valdez and Tamarit, 1989; Boctor, 1990;
sucient to satisfy the requirements, those jobs Kolisch, 1996; Thomas and Salhi, 1997). For ex-
must not be performed simultaneously and re- actly solving RCPSP a number of branch and
source constraints have to be observed. The basic bound procedures have been developed (e.g. Stin-
type of the RCPSP considers m (renewable) re- son et al., 1978; Talbot and Patterson, 1978;
source types, de®ned by the index set Christo®des et al., 1987; Carlier and Latapie, 1991;
R ˆ f1; . . . ; mg. In each period of the planning Demeulemeester and Herroelen, 1992; Mingozzi et
horizon, a type r is available in a constant number al., 1995; Brucker et al., 1996; Sprecher, 1996).
ar of units …r ˆ 1; . . . ; m†. Performing a job j re- However, only small-sized and medium-sized
quires ujr units of type r in each period. The problem instances with up to 30 jobs can be solved
RCPSP is to ®nd a non-preemptive schedule of the exactly in a satisfactory manner. Since clever
jobs, i.e., a set of starting times, such that the branching strategies are available this is mainly
precedence and resource constraints are satis®ed due to the lack of strong lower bounds.
and the project duration is minimized. In Section 2, we present basic concepts for
The structure of a project can be represented by computing lower bounds for RCPSP proposed in
a network diagram with jobs as nodes, durations the literature so far. We restrict ourselves to
as node weights, and precedence constraints as methods which can be realized with small com-
arcs. Arcs between two jobs which are also con- putational e€ort by using the special problem
nected by any path containing more than one arc structure of RCPSP and exclude approaches based
are redundant and can be omitted. Fig. 1 shows a on LP or Lagrangean relaxation. LP relaxation
project with n ˆ 12 jobs and one renewable re- based approaches have been presented by Chris-
source …m ˆ 1† which is available with a1 ˆ 4 units to®des et al. (1987), Mingozzi et al. (1995) as well
per period. Job 1 and job n are dummy start and as Brucker et al. (1996). The latter two consider a
terminal nodes with duration 0. reformulation of RCPSP based on all ``feasible''
In the last decades, a large variety of solution subsets of jobs, i.e., all combinations of jobs,
procedures have been proposed for RCPSP. which may be performed simultaneously without
Among the heuristics, priority-rule based ap- violating precedence or resource constraints. Its
proaches, based on the serial and parallel sched- LP relaxation corresponds to allowing preemption
uling schemes, are the most important (e.g. of jobs. Since the number of feasible subsets grows

Fig. 1. Project network.


324 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

exponentially with the number of jobs, the com- Subsequently, latest ®nishing and starting times
putational e€ort is very high, though the quality of may be computed by a backward pass beginning
bounds obtained is good. Determining all feasible with LFn ˆ LSn ˆ LB1:
subsets in advance can be avoided by using the
technique of column generation for solving the LFj ˆ minfLSh jh 2 Fj g; LSj ˆ LFj ÿ dj
RCPSP with preemption as proposed in Weglarz for j ˆ n ÿ 1; . . . ; 1: …2†
et al. (1977). Lagrangean relaxation based ap-
For each job j, the interval ‰ESj ; LFj Š de®nes a
proaches can be found in Fisher (1973) and
time window in which j has to be processed if the
Christo®des et al. (1987).
project should be completed after LB1 time units.
Section 3 is devoted to introducing new direct
In our example, the critical path is
bound arguments which utilize relationships to
C ˆ h1; 3; 6; 8; 11; 12i with total duration LB1 ˆ 16
other optimization problems and can favourably
periods (cf. Fig. 1).
exploit the special problem structure of RCPSP. In
Capacity bound (LB2): This rather simple
Section 4, the new meta-strategy ``destructive im-
bound argument, which can be computed in
provement'' is discussed and contrasted with tra-
O…mn† time, discards all but one resource type. A
ditional concepts of computing bounds. Section 5
bound value is computed as the total requirement
shows its application to RCPSP based on tech-
of this resource divided by its per period avail-
niques for reducing the problem data and adapted
ability and rounded up to the next larger integer.
direct bound arguments. Computational results
In the example, we obtain LB2 ˆ d66=4e ˆ 17.
indicating considerably improved bound values for (& ! ' )
standard benchmark data sets are reported in X n
Section 6. Section 7 contains conclusions which LB2 ˆ max ujr dj =ar jr ˆ 1; . . . ; m :
can be drawn from this research and discusses jˆ1

future research tasks. …3†


Critical sequence bound (LB3): A job j is said to
2. Literature based bound arguments for RCPSP be incompatible to another job h if both jobs can-
not be processed in parallel. This is true if they are
Critical path bound (LB1): The most obvious either related by precedence or their cumulated
lower bound is based on omitting the capacity capacity requirement exceeds the supply for any
restrictions. Then the minimal project duration is resource r. The critical sequence bound adds ca-
obtained by computing the length of a critical pacity considerations to the critical path bound
(longest) path in the project network. For de- (cf. Stinson et al., 1978). Imagine the jobs of a
scribing this calculation the following notation is critical path C being scheduled one immediately
introduced: after its predecessor. Processing some job j 62 C in
Pj =Fj set of jobs which immediately precede/ parallel to the critical path requires that within the
follow job j time window ‰ESj ; LFj Š there is an interval with
ESj =LSj earliest/latest starting time of job j minimum length dj during which the residual ca-
EFj =LFj earliest/latest ®nishing time of job j pacity is no smaller than ujr for each resource type
r. Let emax
j be the maximal length of such an in-
A forward pass, which can be realized in O…n2 † terval. In case of emax
j < dj , job j cannot be pro-
time, yields earliest starting and ®nishing times for cessed completely and the project cannot be
all jobs, with LB1 (length of the critical path) being terminated within less than LB1 ‡ dj ÿ emax j peri-
equal to the earliest starting time of the terminal ods. Hence, a lower bound LB3 is de®ned as:
dummy job. Starting with ES ˆ EF1 ˆ 0 we obtain:
n n oo

ESj ˆ maxfEFi ji 2 Pj g; LB3 ˆ LB1 ‡ max 0; max dj ÿ emax
j j 62 C :
EFj ˆ ESj ‡ dj for j ˆ 2; . . . ; n: …1† …4†
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 325

Example: Consider the partial schedule built by Table 1


the critical path C ˆ h1; 3; 6; 8; 11; 12i of our ex- Time windows
ample given in Fig. 2. With LB1 ˆ 16 we obtain Job 2 4 5 7 9 10
the time windows and values emax j of the remaining dj 3 1 3 4 6 4
jobs shown in Table 1. For example, consider job ESj 0 0 3 6 7 7
LFj 5 5 8 12 16 16
7 which is incompatible to all jobs but 6. Due to
emax 0 0 5 1 9 9
ES7 ˆ 6 we get emax7 ˆ 1. Hence, job 7 requires 3 j

further periods. The same is true for job 2 and


LB3 ˆ 19.
Both determining the critical path as well as project network. The nodes on each path are in-
computing the values emaxj , can be done in O…n2 † terpreted as a task sequence building two jobs in
time. Since this is done consecutively, the overall a job-shop problem with the objective of mini-
complexity of LB3 is O…n2 †, too. Two extensions mizing the completion time. Task pairs from
of LB3 have been proposed trying to consider the di€erent jobs for which simultaneous pro-
several jobs, which cannot be processed within cessing causes a resource con¯ict in the original
their time windows, simultaneously: RCPSP instance must not be executed in paral-
· Demeulemeester (1992) determines a lower lel, whereas this is possible for all other pairs.
bound on the minimal project completion time Identifying such imcompatible task pairs takes
necessary to schedule a further sequence of jobs O…mn2 † time and subsequently solving the job-
along to those on a critical path. The sequence shop problem, which gives a lower bound for
starts with a job h and ends with one of its (in- RCPSP, has complexity O…n log n†. In order to
direct) successors j. Both jobs are chosen such improve on this bound, additional jobs which
that they cannot completely be processed within can still not be scheduled within their time win-
their time windows, i.e. emax
h < dh and emax
j < dj . dows, are considered.
Additionally, the sequence contains all jobs Node packing bound (LB4): Another lower
building a single path between h and j. The low- bound is based on solving a weighted node pack-
er bound value can be obtained by a pseudo- ing problem (cf. Mingozzi et al., 1995). It consists
polynomial dynamic programming approach of ®nding a subset S of jobs each of which is in-
and is calculated for all possible combinations compatible to any other one within this set. These
of h and j. jobs must be scheduled sequentially thereby de-
· Brucker et al. (1996) consider a critical path as ®ning a lower bound equal to the sum of their
well as an additional disjoint path through the durations. A heuristic solution to this weighted
node packing problem can be found as follows.
First the set of all jobs is sorted and stored in an
ordered list. The ®rst job is removed from the list
and added to S. All jobs being compatible to this
job are deleted from the list. This process is re-
peated until the list is empty. The total duration of
jobs in S de®nes a lower bound LB4. Di€erent
solutions can be obtained by applying several
sorting criteria (cf. Mingozzi et al., 1995; Demeu-
lemeester and Herroelen, 1997). An obvious ap-
proach is to set the jobs of a critical path at the
®rst positions followed by the remaining jobs in
increasing order of the number of jobs which can
be processed in parallel to the job considered. This
rule re¯ects the fact that as many jobs as possible
Fig. 2. Computation of LB3. should remain in the list after each iteration.
326 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Additionally, the list is cyclically rotated and the subset can be performed at a time may be inter-
procedure is applied repeatedly. An improved preted as a set S of jobs to be scheduled on k
version of the node packing bound does not parallel machines. Additionally, heads and tails for
completely delete from the list a job h being those jobs may be derived using the information
compatible to a job j just added to S (de Reyck inherent to earliest and latest starting and ®nishing
and Herroelen, 1996b). Instead, if dh > dj , job h times. Since ESj is a lower bound on the starting
stays in the list with modi®ed duration time of job j in the RCPSP instance, j cannot be
dh :ˆ dh ÿ dj . Since the list has to be processed available earlier on a ``machine''. Hence aj ˆ ESj
once completely and updating the remaining jobs for all j 2 S. Accordingly, tails @j may be deter-
requires checking all resource constraints, the mined. At least @j ˆ LFn ÿ LFj periods have to
computational complexity of LB4 is O…mn2 †, if pass after performing j before the whole project is
rotation is omitted. completed. By analogy, having processed job j on
Example: The list may be L ˆ h3; 6; 8; 11; 4; 2; one of the machines, a tail of @j periods is neces-
7; 5; 9; 10i according to the sorting criterion men- sary for its termination.
tioned above. The jobs 3,6,8,11 of the critical path To determine a set S of jobs for a given value of
are successively included in S, because they are k, Carlier and Latapie (1991) discard all but one
incompatible to each other. After considering job resource type r. Since for each type r several sub-
3, job 5 is deleted. Job 6 requires reducing the sets of jobs de®ning a parallel machine problem
duration of jobs 2 and 7 to d2 ˆ 1 and d7 ˆ 2. may exist, they present an approach for enumer-
Including job 8 and 11 results in deleting the jobs 9 ating all of them, which results in a rather high
and 10. Now only job 4 and the remainders of 2 total computational e€ort. Therefore, we describe
and 7, which are incompatible to each other, re- a restricted approach to determine a single subset S
main. Therefore, they are included in S resulting in for each resource type r: S contains all jobs j with
a bound LB4 ˆ 16 ‡ 1 ‡ 1 ‡ 2 ˆ 20. The original their demand ujr not being less than
version of the node packing bound, which con- umin
r ˆ bar =…k ‡ 1†c ‡ 1, because at most k of them
siders complete jobs only, would give a lower can be processed in parallel. Performing a job j
bound value of 17. requires at least b ˆ bujr =umin r c machines. There-
Parallel-machine bound (LB5): This bound is fore, b copies of j are included in S, i.e., j is rep-
based on the relaxation of RCPSP to a special licated b ÿ 1 times.
parallel-machine scheduling problem (cf. Carlier Exactly solving a parallel-machine problem
and Latapie, 1991) which can be described as fol- de®ned by a set S of jobs yields a lower bound on
lows: A set S of jobs has to be performed on k the completion time of the underlying RCPSP in-
identical parallel machines with at most one job stance. Since the parallel-machine problem is NP-
being processed on each machine at a time. At the hard, the e€ort may usually be too high. Never-
beginning of the planning horizon, not all of the theless, bound arguments on hand for the parallel-
jobs are available immediately. This may, e.g., be machine problem can be applied. For S 0  S being
due to preprocessing or restricted availability of an arbitrary subset of S, a lower bound on the
materials. The amount of time which has to pass makespan can be calculated by
before a job j becomes available on the machines is 2 3
called head aj of j. Analogously, terminating a job X
j may require additional time after leaving the M…S 0 † ˆ minfaj jj 2 S 0 g ‡ 6 7
6 dj =k 7
6 j2S 0 7
machines, e.g., for post-processing, called tail @j of
j. The objective of the parallel-machine problem is
‡ minf@j jj 2 S 0 g: …5†
to ®nd a sequence of all jobs for which the make-
span, i.e., the amount of time necessary for ter- The maximum of all those values M…S 0 † for any
minating all jobs, is minimized. S 0  S de®nes a lower bound on RCPSP. It can be
A subset of jobs of the original RCPSP instance computed in O…n3 † by systematically considering
for which it is known that at most k jobs of the all pairs of values ah and @i with h; i 2 S and
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 327

ah 6 ai ; @h P @i . The maximal set S 0 corresponding for each resource type r. Furthermore, it can be
to ah and @i being the minimum head and tail in seen that it may be helpful, in particular when ar is
Eq. (5) contains all jobs j 2 S (including h and i) small, to determine the number b of copies more
which ful®ll ah 6 aj and @j P @i . The computa- carefully, because, e.g., for k ˆ 2 the jobs with
tional e€ort can be reduced to O…n2 † by consider- ujr ˆ 3 actually could be duplicated.
ing the pairs …ah ; @i † following a lexicographic
ordering. Then the sets S 0 and the corresponding
sums of job durations are derived from the pre-
ceding pair by a constant time update. An alter- 3. New lower bound arguments for RCPSP
native and more complex method of computing S 0
is presented in Carlier and Latapie (1991). Extended node packing bound (LB6): LB4 can
For each resource type r, a set S is constructed be improved by applying additional bound argu-
as described above and the maximal M…S 0 † with ments to a residual project instance consisting of
S 0  S is computed. The maximum of all bound the jobs remaining in the list after each iteration.
values obtained in this manner serves as LB5. These jobs are considered with their reduced du-
Example: Applying a forward and backward rations. The corresponding precedence network is
pass to our project of Fig. 1 results in the heads derived from the original one by deleting all nodes
and tails of jobs given in Table 2. If we consider representing jobs removed from the list, preserving
k ˆ 1 (one-machine problem) for the single re- original direct and indirect precedence relations.
source r ˆ 1, we get umin r ˆ 3 and S ˆ f3; 4; 8g. The best bound value obtained for the residual
Evaluating Eq. (5) for all subsets of S gives the instance may be added to the total duration of jobs
maximal bound value M…S 0 ˆ f3; 4g† ˆ 0 ‡ 5‡ currently in S thereby de®ning a lower bound on
1 ‡ 11 ˆ 17, whereas M…f3; 4; 8g† ˆ 15. For k ˆ 2, the initial instance in each iteration. The maximum
we obtain uminr ˆ 2 and S ˆ f3; 4; 8; 7; 2g all jobs of those values serves as LB6.
requiring at least b ˆ 1 machine. The maximal To keep the computational e€ort low, we only
bound value is determined by M…f2; 3; 4g† ˆ use the simple bound arguments LB1 and LB2 for
0 ‡ d9=2e ‡ 11 ˆ 16. For k ˆ 3, we again obtain evaluating the residual projects. Due to applying
umin
r ˆ 2 and S ˆ f3; 4; 8; 7; 2g yielding the weaker LB1 anyway, it is no longer appropriate to put the
value M…f2; 3; 4g† ˆ 0 ‡ d9=3e ‡11 ˆ 14. In case jobs of the critical path at the beginning of the list.
of k ˆ 4, we have umin r ˆ 1 so that each job is Instead, jobs are sorted in increasing order of the
contained in lP S in m ˆ ujr copies. Hence,
b number of jobs which may be processed in parallel
M…S† ˆ 0 ‡ j ujr dj =ar ‡ 0 ˆ 17: This value is as proposed by Demeulemeester and Herroelen
maximal, because no subset of S gives a better (1997). Ties are broken according to longer job
value in Eq. (5). The best overall bound value is durations so that among a set of pairwise com-
LB5 ˆ 17. patible jobs the longest one is preferred.
In each of O…n† iterations, updating S and re-
Remark 1. For each value of k, the computational moving jobs from the list requires time O…mn†.
complexity of LB5 is O…mn2 †. As indicated by the Applying LB1 and LB2 to the residual project
example in case of k ˆ 4, LB5 always gives results takes time O…n2 † and O…m†, respectively. Thus, the
at least as good as LB2 when k ˆ ar is examined total complexity is O…n…mn ‡ n2 ††.

Table 2
Heads and tails of jobs
2 3 4 5 6 7 8 9 10 11
aj ˆ ESj 0 0 0 3 5 6 7 7 7 12
LFj 5 5 5 8 7 12 12 16 16 16
@j ˆ LFn ÿ LFj 11 11 11 8 9 4 4 0 0 0
328 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Example: Using the adapted sorting criterion, Example: Sorting the jobs as mentioned above
we obtain the list L ˆ h3; 4; 11; 8; 7; 2; 6; 9; 10; 5i. yields the list L ˆ h3; 8; 6; 4; 7; 11; 2; 5; 9; 10i. After
After successively including the pairwise incom- four iterations S1 ˆ S ˆ f3; 8; 6; 4g is obtained.
patible jobs 3,4,11, and 8 in S and
P removing 5,9, Now, job 7 has to be added. Since it is compatible
and 10 from the list, we obtain j2S dj ˆ 15. For to 6, both are members of S but not of S1 . The
the residual instance de®ned by the remaining jobs current bound is LB7…S† ˆ 11 ‡ maxfd…2  1 ‡ 4
2,6, and 7 with original durations, the critical path 2†=4e; d6=2eg ˆ 14. The maximum bound value
consists of the jobs 2 and 7 with a length of LB7(S) ˆ 20 is obtained two iterations later for
LB1 ˆ 7. The capacity bound only gives S1 ˆ f3; 8; 4; 11g and S ˆ S1 [ f6; 7; 2g. After in-
LB2 ˆ d…3  2 ‡ 2  1 ‡ 4  2†=4e ˆ 4. Hence, a cluding 5 and 9, the process stops, because job 10
bound value of 22 is reached in this iteration. Since cannot be added due to, e.g., the compatible triplet
no better value is found in another iteration, 2,9,10.
LB6 ˆ 22.
Generalized node packing bound (LB7): We
describe a further extension of the node packing Remark 2. LB7 may be extended. According to
bound LB4. In general, one may identify a subset LB4, jobs may be included in S or S1 with reduced
S of the jobs any triplet of which is incompatible, durations rather than deleting them completely.
i.e., no subset of three or more jobs can be So, one part of a job may belong only to S and
scheduled in parallel, either due to precedence or another one also to S1 . In the example, a bound
resource constraints. Furthermore, some jobs from value of LB7(S) ˆ 21 is yielded for S ˆf3; 8; 6; 4; 7;
S (forming a subset S1 ) may be incompatible to 11; 2g. The increase compared to above is due to
any other (single) job of S and must be performed the jobs 7 and 2, now partially contained in S1 with
exclusively. Then a lower bound on the project durations 2 and 1, respectively.
duration is de®ned as follows …LB2…S† denotes the Additionally, LB1 and LB2 are applied to an
application of LB2 to a subset S of jobs): appropriately de®ned residual instance as done for
X LB6. Beyond these extensions, LB6 and LB7 can
LB7…S† ˆ dj be generalized by considering k-tuples …k  4† of
j2S1
jobs, which cannot be processed simultaneously.
8 0 1, 3 9 The computational complexity is O…mnk †. Instead,
< X =
in order to avoid such high computational e€ort,
‡ max LB2…S ÿS1 †; @ d j A 27
7 : …6†
: j2SÿS1 † 7; all but one capacity constraint can be discarded.
Then, di€erent sets S could be determined like in
The set S may be determined heuristically as in the case of LB5.
case of LB4. For example, each job may be given a One-machine bound (LB8): Within the frame-
priority value equal to the number of compatible work of LB4 a weighted node packing problem is
triplets in which it is contained. The jobs are solved in order to ®nd a subset S of jobs which are
considered in increasing order of the priority val- incompatible to each other. Since at most one job
ues. Ties are broken in favour of longer job du- out of this set can be performed at a time, a cor-
rations. A job is added to S whenever it is responding one-machine problem can be de®ned
incompatible to any pair of jobs already con- which is a special case of the parallel-machine
tained. If it is even incompatible to any single job problem …k ˆ 1† considered by LB5. Following
of S, it also becomes a member of S1 . Otherwise, its this idea, LB8 proceeds as follows. A subset S of
inclusion causes at least one job to be removed jobs is determined heuristically according to LB4.
from S1 (but not from S). Always after adding a In each iteration of constructing S, formula (5) is
job, the expression LB7(S) is evaluated and the applied for S 0 ˆ S yielding a lower bound M(S).
maximum of all those values serves as LB7. Due to Note that Eq. (5) can easily be evaluated by up-
checking triplets of jobs concerning m resource dating its expressions in constant time. Therefore,
types, LB7 requires O…mn3 † time. the complete process takes time O…mn2 †.
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 329

Since LB8, in contrast to LB4, considers heads only this part is duplicated. By analogy with LB8,
and tails, a more suitable sorting criterion for the the bound LB9 is determined as the maximum
priority list is used. For each job j, the center of its value found starting with each job as q once. Each
time window is computed by CTj ˆ …ESj ‡ of those iterations takes time O…mn3 †.
LFj †=2. Starting with an arbitrary job q, the jobs Example: The jobs are added to S according to the
are added to S in order of increasing absolute list described for LB8 starting with q ˆ 3. In the ®fth
distances of their centers CTj to CTq . Ties are iteration, S ˆ f3; 4; 2; 5; 6g. The subset S1 consists of
broken in favour of the smallest number of jobs a part of job 3 with reduced duration 2 and a part of
which can be processed in parallel to the job job 2 with reduced duration 1. The remainder of
considered. This sorting rule follows the idea that those jobs has been removed from this set due to
it is advantageous to select jobs for S which have adding the compatible jobs 5 and 6, respectively. The
similar values of heads and tails, respectively. In set S 0 for applying Eq. (5) is composed of all jobs in S
this case, the sum of the minimum terms of Eq. (5) and additional copies of the jobs 3 and 2 with their
tends to become large. The maximum of the values reduced durations. We get M…f3; 2; 30 ; 20 ; 4; 5;
M(S) obtained during constructing S de®nes a 6g† ˆ 0‡ d17=2e‡ 8 ˆ 17. After assigning the jobs 8
lower bound LB8(q). and 7, which additionally become members of S1
Example: We consider q ˆ 3 with ES3 ˆ 0; with reduced durations of 2, M…f3; 4; 2;
LF3 ˆ 5 and CT3 ˆ 2:5 (see Table 2). Applying 30 ; 20 ; 5; 6; 7; 8; 70 ; 80 g† ˆ 0 ‡ d30=2e ‡ 4 ˆ 19 de®n-
the sorting criterion results in the list ing the maximal bound value for q ˆ 3 is found.
L ˆ h3; 4; 2; 5; 6; 7; 8; 9; 10; 11i. Following the usual Precedence bound 1 (LB10): This bound argu-
process of constructing S we add the jobs 3,4,2 ment is based on considering incompatible pairs of
thereby discarding 5 and 6 and reducing the du- jobs. For any such pair …h; j† either a precedence
rations of 9 and 10 to 3 and 1, respectively. The relation exists or their cumulated capacity re-
jobs j 2 f3; 4; 2g may start immediately at time quirement exceeds the supply of any resource type
aj ˆ 0. Since all have the tail @j ˆ 11, we obtain r. In the latter case, a so-called disjunctive prece-
M…f3; 4; 2g† ˆ 0 ‡ 9 ‡ 11 ˆ 20. Two iterations la- dence relation can be de®ned, because h either must
ter, we get M…f3; 4; 2; 7; 8g† ˆ 0 ‡ 18 ‡ 4 ˆ 22 be ®nished before j can be started or vice versa (cf.
which is the maximal value de®ning LB8(q ˆ 3). Balas, 1970).
In order to construct di€erent sets S, each job in Therefore, lower bound values can be com-
turn is used as the start job q yielding an over- puted by testing both directions of the disjunctive
all lower bound LB8 ˆ maxfLB8…q†j q ˆ 2; . . . ; precedence relation between any incompatible pair
n ÿ 1g. of jobs. Consider such an incompatible pair …h; j†.
Two-machine bound (LB9): It is obvious, that First a directed arc is temporarily introduced from
LB7 and LB5 may be combined in the same h to j thereby de®ning a test project TP…h; j†. To
fashion as described above. In this case, a parallel- this test project any bound argument for RCPSP
machine problem with k ˆ 2 is present, because at can be used to compute a lower bound LB…h; j† on
most two jobs may be processed simultaneously. the project duration given that h is performed
The set of tasks to be considered is determined as before j. Analogously, a second test project
follows. Starting with an arbitrary job q, the heu- TP…j; h† is built by introducing a directed arc from
ristic of LB7 is applied combined with the sorting j to h and a lower bound LB…j; h† is determined. A
criterion of LB8. This results in a set S and a lower bound on the original RCPSP instance is
subset S1 , which contains all jobs being incom- given by the minimum of LB…h; j† and LB…j; h†. A
patible to all other jobs in S. As is the case with lower bound LB10 is obtained by applying this test
LB8, formula (5) is evaluated always after adding to all incompatible pairs, computing LB1 for all
a job to S. For this purpose, a set S 0 is formed test projects and taking the maximal value found.
which contains all jobs from S and a copy of each Example: Consider the incompatible job pair 7
job currently in S1 . Following Remark 2, a job and 8. Introducing the directed arc (7,8) and
may be part of S1 with a reduced duration. Then, applying LB1 results in LB(7,8) ˆ 19, while the
330 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

reverse arc (8,7) results in LB(8,7) ˆ 20. Since laxation heuristically). Usually, the most compli-
evaluating the other incompatible pairs does not cating restrictions are relaxed or even omitted. By
give improved bounds, LB10 ˆ 19. relaxing complicating restrictions important in-
Precedence bound 2 (LB11): LB11 is an exten- formation about the special problem structure
sion of LB10 to incompatible triplets of jobs. If no often get lost such that bounds may be rather
pair of jobs contained in such a triplet is incom- weak. Therefore, Lagrangean relaxation methods
patible, the resource con¯ict can be resolved by incorporate restrictions into the objective function
adding a single directed arc between one pair at a by penalizing violations such that as many as
time, in total de®ning six test projects (three pairs, possible of those constraints can be ful®lled within
two directions). Otherwise, disjunctive precedence the solution of the relaxation (see e.g. Fisher,
relations between the jobs of each resource-in- 1973). Another approach, which is called additive
compatible pair have to be directed, whereas ex- bounding, successively solves di€erent relaxations
isting precedence relations are preserved. Due to six of the problem and combines results via the con-
sequences of three jobs being possible, up to six test cept of reduced costs (see e.g. Fischetti and Toth,
projects have to be considered. These test projects 1989). However, such bound computations are
are evaluated by applying a bound procedure, usually expensive and success in achieving strong
giving a lower bound for each of them. Among the bounds is questionable. These traditional tech-
values obtained, the minimum represents a lower niques of computing lower bounds are referred to
bound on the original RCPSP instance. Examining as constructive or direct methods because they di-
all triplets of incompatible jobs and taking the rectly tackle the problem by constructing solutions
maximal value yields a lower bound LB11. to relaxed problems.
Example: Consider the triplet (2,3,4). Each pair We want to introduce a di€erent approach
of those jobs is incompatible due to resource which is called destructive improvement. Within
constraints. For each of the six test projects, rep- this new meta-strategy, lower bounds are obtained
resenting all possible sequences, LB1 ˆ 20. Since by thoroughly examining trial bound values LB.
none of the other triplets yields an improved For example, one may consider a bound value LB
bound, LB11 ˆ 20. for a problem P determined by any constructive
method. The value LB is utilized to restrict the set
Remark 3. If the evaluation of test projects is of feasible solutions by setting LB as the maximal
restricted to computing LB1, LB10 and LB11 can be value of the objective function allowed. If this re-
calculated eciently using heads and tails. Consider stricted set of feasible solutions is empty, the ob-
an incompatible pair …h; j†. The length of the longest jective function value of the optimal solution of P
path using arc …h; j† is equal to ah ‡ dh ‡ dj ‡ @j . If must exceed the value LB. Therefore LB+1 is a
this length exceeds LB1 for the initial project, new lower bound (provided that the objective
introducing …h; j† leads to a new critical path in function values are integral). In order to ®nd out
TP…h; j† containing the jobs h and j. Sequences for whether a feasible solution with its objective
incompatible triplets can be evaluated in the same function value not exceeding LB may exist or not,
fashion. Since these computations take constant two steps are performed.
time, LB10 can be computed in O…mn2 † time, which To be more speci®c, let us consider a general
is needed for determining all incompatible pairs. formulation of problem P as an integer linear
The time complexity of LB11 is O…mn3 †. program where the linear objective function f …x† is
restricted to integer values whenever the vector x is
integral:
4. Meta-strategies for computing lower bounds
…P† Minimize f …x† …7†
Traditionally, lower bounds are computed by subject to A  x ˆ b;
relaxing the problem considered and solving the
relaxation exactly (or solving the dual of the re- x P 0 and integer: …8†
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 331

A restricted problem P…LB† is obtained by addi- Obviously, no integer value is feasible for x1
tionally enforcing f …x† to be equal to LB: within P…19† and, hence, LB is no feasible objec-
tive function value of P. Thus, LB is increased to
f …x† ˆ LB: …9† 20 and P…20† is constructed from P by adding the
The ®rst step consists of applying reduction tech- equation 3  x1 ‡ 2  x2 ˆ 20. As intervals of the
niques to the restricted problem P…LB† in order to variables we obtain x1 2 ‰2; 3:08Š; x2 2 ‰5:38; 7Š.
®nd additional constraints (cutting planes) or to Due to the integrality of the variables the upper
modify problem parameters so as to strengthen the bound on x1 and the lower bound on x2 can be set
problem data. Possibly, a contradiction occurs and to 3 and 6, respectively. Adding those boundaries
feasibility of P…LB† is precluded. Otherwise, in a of the variables to P…20† and solving the LP-re-
second step the restricted and strengthened prob- laxation yields the solution x ˆ …2; 7† with
lem is relaxed and solved, e.g. by applying a con- f …x † ˆ 20. This solution is integral and, therefore,
structive bound argument. If the relaxation has no optimal for P…20†. Since LB ˆ 20 is a lower bound
feasible solution, P…LB† is infeasible, too, and LB for problem P, the solution is optimal for P, too,
is no valid objective function value. If neither step
is able to exclude the possible feasibility of P…LB†
the process stops and LB serves as lower bound
value. (Sometimes, a feasible solution of the re-
laxation is even feasible for P and the process stops
with an optimum.) Otherwise, LB is increased by 1
and the two steps are repeated. The principle of
destructive improvement just outlined is illustrated
in Fig. 3.
An example problem P:
Minimize f …x† ˆ 3  x1 ‡ 2  x2 …I†
subject to 9  x1 ‡ x2 P 25; …II†
4  x1 ‡ 7  x2 P 50; …III†
x1 ; x2 P 0 and integer: …IV†
Traditionally, the LP-relaxation of P is built by
dropping the integrality constraints of the vari-
ables and solved by some LP-solver. The optimal
LP-solution of the example is x ˆ …2:12; 5:93†
with f …x † ˆ 18:22 (Fig. 4). Since the cost coe-
cients in the objective function are integral, LB
ˆ 19 is a ®rst lower bound on the optimal objec-
tive function value.
The destructive improvement method starts
with this value of LB and introduces the additional
constraint 3  x1 ‡ 2  x2 ˆ 19 to de®ne the re-
stricted problem P…19†. In order to strengthen
P(19), (sharper) lower and upper bounds on the
values of x1 and x2 are computed. This is achieved
by solving the LP-relaxation of P…19† with the
objectives of minimizing and maximizing x1 and
x2 , respectively. This results in the restrictions:
x1 2 ‰2:06; 2:53Š and x2 2 ‰5:69; 6:40Š. Fig. 3. Destructive improvement.
332 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Remark 5. Sometimes, it is possible to utilize


information drawn from the reduced P…LB† or the
solution of its relaxation in order to increase LB by
more than 1. As an example consider the critical
sequence bound LB3 from Section 2 which may be
interpreted as some type of destructive improve-
ment method. It starts with a critical path and
restricts the schedule to the critical path length LB.
If it can identify another job which cannot be
processed within its time window (completely), the
lower bound can immediately be increased by
dj ÿ emax
j . The other bounds of Section 2 and 3 are
typical direct methods.

5. Destructive improvement for RCPSP

In the following, we describe how the destruc-


tive improvement technique can be adapted to
RCPSP. First of all, di€erent reduction techniques
are introduced. Secondly, modi®cations of direct
bound arguments which can bene®t from the re-
duction in problem data are presented.

Fig. 4. Problems P and P(LB).


5.1. Reduction techniques

Reduction by forward and backward pass: The


and the procedure stops. The additional con- most intuitive reduction technique has already
straints of P…19† and P…20† are shown in Fig. 4. been presented in Section 2. It consists of com-
The bold parts of the lines indicate the feasible puting earliest and latest starting and ®nishing
regions of the LP-relaxations. times by a forward and a backward pass using
LFn ˆ LB1 to start the backward pass. The re-
sulting time windows of jobs can be exploited by
Remark 4. Whenever the objective function has a other reduction techniques and adapted bound
large number of possible values one should prefer arguments.
another search method (e.g. binary search) than Reduction by subprojects: This technique is
successively considering values LB, LB + 1,. . . based on identifying and evaluating subprojects of
Starting with an interval ‰LB; UBŠ of possible the original RCPSP instance. A subproject SP…h; j†
values, the mean element M ˆ b…LB ‡ UB†=2c is is de®ned by a pair of jobs …h; j† with j being a
chosen and the restriction f …x† 2 ‰LB; MŠ is added transitive successor of h and contains all jobs i
to build P…M†. If feasibility of P…M† can be which are successor of h as well as predecessor of j.
precluded, then LB is set to M ‡ 1. Otherwise, Between h,j and the jobs of SP…h; j†, the original
UB is set to M. The search is repeated until LB ˆ precedence constraints are preserved. The jobs h
UB. If the objective function is real-valued, M and j serve as dummy start and terminal nodes
must not be rounded and LB is set to M instead of (with duration 0) of the subproject, respectively. If
M ‡ 1 in case of infeasible P…M†. The search stops the optimal project completion time of SP…h; j† is
if the remaining interval is suciently small. T  , the processing of job j starts at least T  periods
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 333

after job h has been ®nished. Hence, T  or a lower considered. Then the following formulae have to
bound on this value de®nes a minimum time lag khj be used in the forward and the backward pass, the
between h and j. Whenever khj exceeds the length latter being started with LFn ˆ EFn :
of the critical paths of at least one subproject

SP…h; j†, applying a forward and backward pass to ESj ˆ maxfEFn ‡ khj h 2 Pj g;
the overall project considering minimum time lags
results in sharper time windows. Note that this
LFj ˆ minfLSh ÿ kjh h 2 Fj g: …10†
may improve the bound by more than 1 as men-
tioned in Remark 5. If EFn > LB, a contradiction is present and LB is
Minimum time lags may be derived by applying increased to EFn .
any (computationally inexpensive) bound to a Example: The following subprojects have to be
subproject. Thus, the computational complexity of evaluated: SP…1; 6†; SP…1; 7†; SP…1; 11†; SP…3; 11†;
this reduction technique depends on the complex- SP…3; 12†, and SP…6; 12†. The time lags obtained
ity of the bound arguments used and the number for these subprojects by computing LB1 through
of subprojects being of order O…n2 †. LB4 are given in Table 3. Since a subsequent for-
Example: The pair (1,6) builds a subproject ward pass results in ES12 ˆ 19, LB can be in-
containing the jobs 3 and 4. The nodes 1 and 6 are creased from 16…ˆ LB1† to 19.
the dummy start and terminal node, respectively. Reduction by precedence: If the project com-
Since 3 and 4 cannot be processed concurrently, a pletion time is restricted to LB some jobs must
lower bound on the completion time of SP…1; 6† is precede others to which they are not related by
6. Hence, due to LS6 ˆ 5, no feasible schedule can precedence. Following the logic of LB10, two test
exist for LB ˆ 16. projects are evaluated for each incompatible pair
In general, any pair of jobs …h; j† with j being a of jobs h and j by computing lower bounds
transitive successor of h excluding …1; n† forms a LB…h; j† and LB…j; h† on the project durations.
subproject. But not all of these subprojects have to Going beyond the capabilities of LB10, one of the
be evaluated. Consider a subproject SP…h; j† with arcs, say …h; j†, can temporarily be ®xed whenever
job j having only one predecessor i. Since i does not LB…h; j†  LB < LB…j; h†. Such a problem reduc-
compete for resources with other jobs of SP…h; j† tion (which is independent of being able to in-
and is a terminal job of a smaller subproject SP…h; i†, crease LB) is valid as long as LB < LB…j; h†. That
the time lag between h and j can simply be computed is, additional arcs can be ®xed using former re-
by khj ˆ khi ‡ di . Analogously, the time lag khj of a ductions which are still valid for the current LB. If
subproject SP…h; j† with the start node having only a LB < LB…h; j†  LB…j; h† is true for some incom-
single successor i is obtained by khj ˆ di ‡ kij . patible pair currently considered, a contradiction
Hence, only the subprojects SP…h; j† which have occurs and LB can be increased. The new value is
start and terminal nodes with at least two successors set to LB…h; j† or the minimum project duration
and two predecessors, respectively, have to be for which any of the arcs ®xed earlier becomes
evaluated. For all pairs of jobs …h; j† with j being a invalid, whatever is smaller. Note that thereby
direct successor of h, khj ˆ 0: bound increments larger than 1 are possible (cf.
When computing earliest and latest starting and Remark 5).
®nishing times using minimum time lags, respec- By considering such additional precedence re-
tively, the set of all (direct and indirect) predeces- lations in the forward and the backward pass
sors Pj and followers Fj of a job have to be sharper time windows for the jobs are obtained

Table 3
Minimum time lags
SP(h,j) SP(1,6) SP(1,7) SP(1,11) SP(3,11) SP(3,12) SP(6,12)
khj 6 8 15 9 13 9
334 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

which may be exploited by other reduction tech- Always after increasing LB or getting improved
niques. Further precedence relations are added core times, another iteration of the reduction
considering incompatible triplets as in case of process is started. The time complexity O…mn2 † of
LB11. Then, only such arcs …h; j† can be ®xed for each iteration is due to searching possible time
which any test project containing the reverse arc intervals for each of n jobs. The search requires
…j; h† gets a bound exceeding LB. checking O…n† changes in the resource pro®le,
Reduction by precedence is an iterative process which occur when core times start or end, and
which is active as long as reductions are possible. observing m resource types.
Initially, all incompatible pairs and triplets are Example: The Gantt chart in Fig. 5 shows each
determined which takes O…mn3 † time. Always after job, starting as early (light grey beam) and as late
increasing LB or ®xing an arc, another iteration is (dark grey beam) as possible (for LB ˆ LB1 ˆ 16).
performed which has complexity O…n3 † due to The hatched bars are the core times. For example,
checking all (predetermined) pairs and triplets the core time of job 3, which lies on the critical
again provided that LB1 is used to evaluate the path, is equal to its complete duration whereas job
test projects. 2 has a core time of only a single period and jobs 4
Example: Examining the incompatible pair of and 10 have none.
jobs 7 and 8 gives LB…7; 8† ˆ 19 and LB…8; 7† ˆ Fig. 6 contains capacity oriented Gantt charts
20. Hence, the arc (7,8) can be ®xed as long as for core times. Jobs are represented by rectangles
LB ˆ 19 is true. The feasibility of LB ˆ 19 is with horizontal extents in length of their core times
precluded by additionally considering the incom- and vertical extents uj1 . Starting with the critical
patible jobs 2 and 3 because of LB…2; 3† ˆ 21 and path length LB ˆ 16 (cf. Fig. 6(a)), we recognize
LB…3; 2† ˆ 24. As a consequence, the overall that in some periods the capacity requirements
bound LB can be increased to 20 and the arc (7,8) exceed the availability (periods 3,9,10) and LB is
must be removed. Note that it is not possible to increased to 17.
increase LB to 21, because this value, obtained for For LB ˆ 17, the latest starting times are in-
TP…2; 3†, was based on ®xing the arc (7,8), which is creased by one reducing the core times (Fig. 6(b)).
no longer valid. Since there is still a resource con¯ict in period 10,
Reduction by core times: This reduction tech- LB is increased again giving Fig. 6(c) without a
nique is based on the following idea: For a certain resource con¯ict caused by core times. Checking
LB, earliest and latest starting and ®nishing times for feasible time intervals yields that processing job
have been computed. Whenever the latest starting 7 within its time window [6,14] completely before
time LSj of a job j is smaller than its earliest ®n- or after job 8, which is incompatible to 7, is im-
ishing time EFj , job j must be active during possible (Fig. 6(c)). LB is increased to 19 resulting
‰LSj ; EFj Š as long as LB is valid. This time interval in Fig. 6(d).
is called core time of a job. The only time interval during which job 7 can
The reduction is started with scheduling all jobs now be processed is [6,10]. Hence its latest starting
(only) during their core times. If a resource con¯ict time is set to LS7 ˆ 6. Due to this reduction, the
occurs in any period, LB can be increased. Oth- latest starting and ®nishing times of its predeces-
erwise, for each job we look for feasible time in- sors can be decreased, too. With LS2 ˆ 0 and
tervals during which it can be processed LS5 ˆ 3 the modi®ed chart in Fig. 7 is obtained.
completely (in addition to the schedule built by the Due to the core times of jobs 2 and 7, job 3 cannot
core times of the other jobs). In case only one in- be processed completely. For the resulting
terval is available for a job j, the time window LB ˆ 20, no reduction is possible at all.
‰ESj ; LFj Š is restricted to this interval thereby also Applying di€erent reduction techniques: Usually,
restricting time windows of predecessors and suc- not only one reduction technique will be applied.
cessors, respectively. This may result in new or Instead, it is more promising to use di€erent
enlarged core times. If no interval exists, LB can be techniques subsequently before trying to contra-
increased. dict the feasibility of the reduced problem in-
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 335

Fig. 5. Gantt chart for LB ˆ 16.

Fig. 6. Reduction by core times.


336 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

5.2. Lower bound arguments for contradicting


feasibility

Within the destructive improvement approach,


lower bound arguments are used in order to con-
tradict the feasibility of a reduced problem when
this is not possible during the reduction phase.
Hence, not the value obtained is of interest but an
Fig. 7. New core times for LB ˆ 19.
answer to the question, whether a feasible schedule
can exist or not. LB3; LB5, and LB8 through LB11
can be applied directly to the reduced problem,
pro®ting from the sharper time windows (heads
stance. Therefore, it is necessary to put the general and tails), whereas LB2, LB4, LB6 and LB7 must
framework described in Section 4 (cf. Fig. 3) into be strengthened in order to be successful in the
more concrete terms. The following steps are destructive improvement context.
performed, after determining an initial bound LB2: Consider a time interval I ˆ ‰ts ; tt Š 
value LB by direct methods: Using the current LB ‰0; LBŠ and the set SI of jobs which have to be
as trial project duration, the reduction process is performed completely or partially within I given
started by a forward and a backward pass using LB as maximal project duration. That is, SI con-
minimum time lags (see below). Afterwards, ad- tains all jobs j with EFj > ts and LSj > tt which
ditional precedence constraints are introduced and are active within I for at least dj0 ˆ
core times are evaluated. This is continued until minfEFj ÿ ts ; tt ÿ LSj ; dj g periods. Computing
no further reduction is possible or a contradiction LB2 for this interval reveals whether or not it is
in the problem data occurs. In the ®rst case, direct not precluded to perform all jobs from SI within an
bound arguments are applied to the reduced in- interval of length tt ÿ ts :
stance (see Section 5.2). If feasibility of LB can be (& ' )
precluded, the bound value is increased and the X
0 0
LB2 …SI † ˆ max ujr dj =ar jr ˆ 1; . . . ; m :
reduction process is restarted maintaining only j2SI
reductions which are still valid for the new LB.
…11†
Reduction by subprojects is computationally
more expensive than the other reduction concepts 0
If LB2 …SI † > tt ÿ ts , the current bound value LB is
(cf. Section 6.3). Therefore, this technique is ap- contradicted and increased. In order not to ex-
plied only once before starting the destructive amine all possible intervals, ts and tt are restricted
improvement process to determine minimum time to the earliest starting and latest ®nishing times of
lags between the jobs. All relevant subprojects are the jobs.
determined and sorted according to non-decreas- Example: With LB ˆ 16, we obtain the Gantt
ing numbers of jobs contained. Considering them chart in Fig. 5. Examining I ˆ ‰2; 12Š; SI contains
in this order ensures that a subproject is not con- the jobs 5, 6, 7, 8 with their initial durations and
sidered earlier than all the ones it includes. That is, the jobs 2, 3 and 9 with d20 ˆ 1, d30 ˆ 3 and d90 ˆ 2.
larger subprojects can use minimum time lags be- Since d…3  1 ‡ 2  1 ‡ 4  2 ‡ 5  3‡ 1  2 ‡ 3  3‡ 2
tween their jobs obtained by evaluating smaller 1†=4e ˆ d41=4e ˆ 11 exceeds the length of I, no
subprojects. A minimum time lag for any sub- feasible schedule can exist and LB is increased
project SP…h; j† is computed in the same manner as to 17.
the lower bound for the complete project. That is, Node packing bounds LB4, LB6 and LB7:
we start with applying direct bound arguments to Within the framework of destructive improve-
the RCPSP instance de®ned by SP…h; j† and per- ment, the notion of incompatibility may be ex-
form the destructive improvement process as de- tended. Besides precedence and resource
scribed above. incompatibility, two jobs are also incompatible to
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 337

each other if concurrent processing is impossible terms of computation time (Kolisch et al., 1995; de
due to their time windows. Hence, if the time Reyck and Herroelen, 1996a; Thomas and Salhi,
windows of a job j just added to set S and a job h 1997). In this paper the measures are used in order
remaining in the list only overlap partially, the to describe the data sets considered as well as ex-
duration of h is reduced by the maximal number of amine the e€ectiveness of destructive improvement
periods the two jobs can be performed in parallel. more systematically. The following measures are
most popular. A detailed discussion can be found
in Kolisch et al. (1995).
6. Computational results · The network complexity NC is de®ned as the ra-
tio of nonredundant precedence relations to the
We report on results of comprehensive numer- number of jobs.
ical experiments based on well-known standard · The resource factor RF equals the average num-
benchmark data sets. After comparing the e€ec- ber of resource types used by a job.
tiveness of direct bounding procedures the ap- · The resource strength RS is determined for each
proach of destructive improvement is examined resource type r. It considers the per period avail-
thoroughly by evaluating di€erent combinations ability ar , the maximum demand of a single job
of reduction techniques and bound arguments. All umax
r ˆ maxfujr jj ˆ 2; . . . ; n ÿ 1g as well as the
tests are performed on a Pentium PC with 166 peak demand upeak r which arises when all jobs
MHz using the operating system Windows 95. The are started at their earliest starting times ob-
bound arguments and the destructive improve- tained by a simple forward pass. These parame-
ment procedures have been coded in C and com- ters are related by computing RSr ˆ …ar ÿ
piled by means of Borland C‡‡ 5:0. umax
r †=…upeak
r ÿ umax
r ). If ar < umax
r …RSr < 0† for
any resource type r, there obviously does not ex-
ist a feasible schedule whereas in case of
6.1. Data sets and complexity measures ar  upeak
r …RSr  1† for all resource types
r ˆ 1; . . . ; m an optimal solution can be ob-
The ®rst standard benchmark set (PATT) has tained by a simple forward pass.
been collected from the literature by Patterson In general, the following relationships between the
(1984). Since all instances of this data set can be complexity measures and expected computation
solved very eciently by modern branch and times have been observed in the literature. A de-
bound procedures, Kolisch et al. (1995) have de- creasing network complexity leads to longer com-
veloped a problem generator in order to create putation times, because more combinations of jobs
more challenging instances. With this generator, become feasible due to the decreasing number of
two new data sets (SMFF, SMCP) have been as- precedence relations. Considering the resource
sembled serving as reference sets in most of the measures, computation times tend to get longer
recent publications (e.g. Mingozzi et al., 1995; when the average number of jobs using a resource
Brucker et al., 1996; Demeulemeester and Her- type increases or when the availability of a re-
roelen, 1997). source type is scarce compared to its demand. This
Comprehensive computational experiments can is the case for an increasing resource factor and a
be found in the literature comparing and evaluat- decreasing resource strength.
ing the e€ectiveness of exact as well as heuristic Table 4 shows the values of the main character-
procedures for solving RCPSP. They all show that istics and complexity measures of the data sets
even though RCPSP is NP-hard, a large number of considered. ``#inst.'' denotes the number of in-
instances considered can be solved very quickly, stances contained in each set. Since PATT has been
whereas others remain computationally intractable collected from the literature, every instance has
for a restricted amount of computation time. di€erent values of the measures. Therefore, a range
Hence, di€erent complexity measures are proposed of the values obtained is given in each column, with
trying to predict the complexity of an instance in £RS containing the average value of all resource
338 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Table 4
Characteristics of data sets
Data sets #inst. n m NC RF £RS
PATT 110 7±51 1±3 1.08±3.05 0.25±1 0.00±1.42
SMFF 480 (360) 32 4 1.5, 1.8, 2.1 0.25, 0.5, 0.75, 1 0.2, 0.5, 0.7, 1
SMCP 200 12, 22, 32, 42 1±6 1.5 0.5 0.1, 0.3, 0.4, 0.5, 0.6, 0.8, 0.9

types. For three instances, RSr is larger than 1 for all respect to the following measures (UB is the op-
resource types and, hence the optimal objective timal or best known objective function value):
function value equals the length of the critical path. · av.dev: average relative deviation of the bound
Though the di€erent bound arguments as well as the LBi from UB in % (relative deviation:
destructive improvement technique may not im- …UB ÿ LBi†=UB  100%)
prove on LB1 in this case, the instances have been · max.dev: maximum relative deviation of LBi
considered for the sake of completeness. from UB in %
SMFF and SMCP have been generated by For PATT and SMFF the optimal solutions to all
Kolisch et al. (1995) using the measures as control instances are known. In case of SMCP, the best
parameters for the generating process. For each known solutions are used. Computation times are
instance, RSr possesses the same value for all re- omitted, because they are negligible for all in-
source types. In case of SMFF, the values given for stances.
NC, RF, and £RS have systematically been Tables 5 and 6 show the results obtained for
combined resulting in 48 di€erent combinations. existing and new bound arguments, respectively.
For each of them, a group of ten instances has The procedures performing best for each set are
been generated. Those 12 groups with an average marked with an asterisk. LB5 has been computed
resource strength of 1.0 have been excluded from for all resource types and up to ®ve ``machines''.
the tests, because LB1 always yields the optimal For LB4, LB6, and LB7, di€erent sets S are ob-
objective function value. That is, only 360 in- tained by rotating the priority list as described for
stances of this set are considered. LB4.
Comparing LB4 and LB6 reveals that the ex-
tension is very successful. LB5 is clearly outper-
6.2. Lower bounds formed by the arguments LB6 to LB9 which are
based on incompatible pairs and triplets and con-
We examine the e€ectiveness of existing and sider all resources. This indicates that discarding
new bound arguments. They are compared with all but one resource is often a too strong relaxation

Table 5
E€ectiveness of existing lower bound arguments
Data set LB1 LB2 LB3 LB4 LB5 LBold
PATT
av.dev 13.53 24.17 10.73 11.32 10.62* 7.62
max.dev 51.56 57.89 43.75 36.00 32.81 28.00
SMFF
av.dev 12.28 38.50 8.87 8.19* 8.76 5.41
max.dev 54.72 68.85 45.28 36.21 32.22 26.09
SMCP
av.dev 9.22 39.92 6.31 6.00* 6.95 4.29
max.dev 50.67 64.00 40.00 27.50 36.36 26.58
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 339

Table 6
E€ectiveness of the new lower bound arguments
Data set LB6 LB7 LB8 LB9 LB10 LB11 LBnew LB
PATT
av.dev. 7.43 5.89* 7.78 5.87* 11.16 8.63 3.74 3.74
max.dev. 24.00 25.00 28.00 25.00 43.75 39.06 13.04 13.04
SMFF
av.dev. 6.05 6.48 5.28* 7.00 9.69 8.98 4.05 4.05
max.dev. 26.98 23.88 34.33 25.86 49.60 44.34 19.74 19.74
SMCP
av.dev. 5.07 5.33 4.03* 5.83 7.21 6.34 3.43 3.43
max.dev. 26.58 35.38 27.85 32.31 44.00 40.00 26.58 26.58

for the data sets considered. This observation has bound LB4 and its derivatives LB6 and LB8
been con®rmed by adapting bounds for the related dominate LB1 if the set S generated contains the
bin packing problem, such as described in Scholl et jobs of the critical path. Since LB6 directly extends
al. (1997), which also show large deviations. The LB4 there is also a dominance relationship when
success of the procedures LB7 and LB9 shows that the same sorting criterion is used. Furthermore,
the increase in the computational complexity, LB5 dominates LB2 as indicated in Remark 1.
caused by checking for triplets, pays o€. Com- Some of the bound arguments show a poor
paring LB6, LB7 and their relatives LB8, LB9 in- performance considering the measures av.dev. and
dicates that di€erent strategies should be applied max.dev. So, it has to be examined if their appli-
in order to ®nd incompatible subsets. Despite the cation can be justi®ed at all. Table 7 shows the
simplicity of their approaches, the precedence quota of instances over all data sets, for which LBi
based bound arguments LB10 and LB11 perform is one of the arguments yielding the maximum
nearly as good as the old bounds especially for bound value (denoted by % max). It reveals that
PATT. some of the bound arguments showing large de-
Comparing the best bound values obtained by viations surprisingly obtain the best bound for a
existing and new procedures (columns LBold and large portion of the instances, in particular LB3,
LBnew ) shows that the new bound arguments clearly LB10 and LB11. This indicates that they strongly
outperform the existing ones. For PATT the aver- depend on the problem structure.
age as well as the maximum deviations are nearly
halved. The superiority is underlined by comparing
LBnew with the maximum LB of all bound argu-
ments. That is, the existing bound arguments can be 6.3. Destructive improvement
omitted without any loss in bound quality.
In the following, we examine the e€ectiveness of
Remark 6. Partially, the superiority of the new the destructive improvement approach by com-
(and extended) bounds is caused by their con- bining di€erent reduction techniques and bound-
struction. For example, the bounds LB3, LB10 ing procedures and applying them to the
and LB11 start from computing LB1 such that benchmark sets. The combinations of the reduc-
they dominate this basic bound. Furthermore, the tion techniques considered are given in Table 8.

Table 7
Quotas of maximum bound values
LBi LB1 LB2 LB3 LB4 LB5 LB6 LB7 LB8 LB9 LB10 LB11
% max 44.54 1.97 59.70 46.36 52.88 60.61 59.70 69.39 59.40 57.42 62.73
340 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Table 8
Combinations of reduction techniques
Reduction by RS RP RC RPC RSP RSC RSPC
Subprojects j j j j
Precedence relations j j j j
Core times j j j j

If reduction by subprojects is employed, the RPC leads to a further decrease of av.dev. This
lower bound arguments and the destructive im- combination already obtains better average devi-
provement technique are applied to the initial ations than LB for SMCP though its computation
project as well as to all subprojects. Since the takes less time.
computational e€ort per instance strongly depends If subprojects are evaluated the bound quality
on the chosen combination, the average compu- is greatly improved in particular for PATT and
tation time (av.cpu) in seconds is introduced in SMFF. However, the average computation times
addition to the measures used above. are increased, too. This is particularly true, if
Pure reduction process: In order to compare the subprojects as well as additional precedence rela-
potential of the di€erent reduction techniques, tions are examined. Using all reduction techniques
they have been applied in the destructive im- clearly obtains the best results, indicating that they
provement process without using any lower bound complement each other well. RSPC outperforms
arguments except for LB1. That is, only the re- LB for all data sets concerning av.dev. In general,
duction step is performed (cf. Fig. 3). The results the bound arguments lead to smaller maximum
are given in Table 9. The combination RS has deviations, because the large variety of approaches
been omitted from this test, because it does not is successful even for special structures of problem
improve on LB1 until any other bound argument instances.
or reduction technique is applied. The settings RP Destructive improvement with all bound argu-
and RC perform nearly identical concerning av.- ments: In order to examine the full potential of the
dev. whereas for max.dev. RP is slightly better destructive improvement technique, the same test is
than RC but requires considerably larger compu- repeated using all bounding procedures. The re-
tation times. Nevertheless, each technique yields duction process is started with the best bound value
smaller values for av.dev. than the best existing LB . The results in Table 10 show that if only one
bounds except for SMFF. Combining them to reduction technique is applied, RC is most suc-

Table 9
Destructive improvement without bound arguments
Data set LBold LB RP RC RPC RSP RSC RSPC
PATT
av.dev 7.62 3.74 6.37 6.21 5.70 4.06 3.94 3.16
max.dev 28.00 13.04 32.00 38.00 32.00 23.44 26.56 23.44
av.cpu 0.01 0.08 0.03 0.01 0.03 0.35 0.07 0.36
SMFF
av.dev 5.41 4.05 5.92 6.14 5.54 4.24 4.50 3.81
max.dev 26.09 19.74 32.80 33.71 32.80 29.35 31.25 29.35
av.cpu 0.01 0.09 0.05 0.01 0.05 0.25 0.07 0.27
SMCP
av.dev 4.29 3.43 3.67 3.71 3.24 2.82 2.90 2.39
max.dev 26.58 26.58 29.33 31.71 29.33 29.23 29.33 26.67
av.cpu 0.01 0.08 0.05 0.01 0.05 0.14 0.04 0.14
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 341

cessful. It obtains the smallest values for av.dev the data sets considered, the number of incom-
taking the shortest computation times. By the way patible pairs and triplets strongly depends on the
of contrast, RS takes much more computation time average resource strength of an instance. For ex-
but hardly improves on LB . If two reduction ample, the maximum number of incompatible
techniques are combined, RPC is the fastest strat- pairs of an SMFF instance with £RS ˆ 0:2 is 151,
egy, though it obtains clearly worse results than whereas it is only 22 for £RS ˆ 0:7. Therefore, it
RSP and RSC. Evaluating subprojects by applying may be promising to select the bound arguments
all bound arguments and reduction techniques is and the reduction techniques used according to,
computationally rather expensive. Nevertheless, e.g., the resource strength of an instance. In order
the results for RSPC underline the power of de- to ®nd out which combination should be selected,
structive improvement. The values of av.dev are the instances of each data set have been divided
nearly halved compared to those of LB . into three classes subject to their resource strength,
Restricted application of bounds: In order to containing those instances with £RS 2 ‰0; 1=3†; £
reduce computation times, it seems to be appro- RS 2 ‰1=3; 2=3†, and £RS P 2=3, respectively.
priate to compute only a subset of the bounding The results obtained as well as a more detailed
procedures within the destructive improvement discussion can be found in the appendix. In gen-
process. The subset which turned out to be most eral, the following observations can be made. For
successful in relation to computation times con- the ®rst class, the combination RPC together with
tains the arguments LB2, LB8, and LB9. Table 11 the bound arguments LB2, LB8 and LB9 repre-
shows that restricting the initial bound and the sents the best compromise between bound quality
reduction process to this subset reduces the com- and computational e€ort. For the two other
putation times to approximately one third. In classes the computation of lower bound arguments
general, the rather small loss in bound quality is should be omitted, completely. The combination
more than compensated by the gain in speed. For RSC clearly outperforms LB for those classes,
example, RPC can be computed as fast as LB but concerning the measures av.dev and av.cpu. For
yields much smaller average deviations, in partic- the last class of PATT and SMCP, the lower
ular for SMCP. The fastest combination RC still bounds computed by RSC are equal to the optimal
clearly outperforms LB for all data sets. project durations for all instances.
In¯uence of problem complexity: Most of the The in¯uence of other measures of problem
existing and new bound arguments are based on complexity such as NC and RF on the perfor-
the incompatibility of pairs or triplets of jobs. For mance of bound arguments is much less signi®cant

Table 10
Destructive improvement with all bound arguments
Data set LBold LB RS RP RC RPC RSP RSC RSPC
PATT
av.dev 7.62 3.74 3.43 3.10 3.03 2.89 2.28 2.14 1.97
max.dev 28.00 13.04 13.04 13.04 13.04 13.04 13.04 13.04 13.04
av.cpu 0.01 0.08 1.19 0.18 0.16 0.18 2.85 2.56 2.85
SMFF
av.dev 5.41 4.05 3.99 3.25 3.06 2.88 2.64 2.48 2.25
max.dev 26.09 19.74 19.74 19.74 19.74 19.74 19.74 19.74 19.74
av.cpu 0.01 0.09 0.67 0.22 0.18 0.22 1.63 1.44 1.64
SMCP
av.dev 4.29 3.43 3.43 2.09 1.90 1.67 1.74 1.57 1.33
max.dev 26.58 26.58 26.58 24.05 26.58 24.05 20.00 20.00 20.00
av.cpu 0.01 0.08 0.33 0.21 0.17 0.21 0.82 0.72 0.82
342 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Table 11
Destructive improvement with LB2, LB8, LB9
Data set LBold LB RS RP RC RPC RSP RSC RSPC
PATT
av.dev 7.62 3.74 4.51 3.31 3.19 3.00 2.38 2.21 2.08
max.dev 28.00 13.04 21.74 15.38 13.04 13.04 13.04 13.04 13.04
av.cpu 0.01 0.08 0.26 0.06 0.04 0.06 0.88 0.61 0.90
SMFF
av.dev 5.41 4.05 4.61 3.37 3.18 2.99 2.73 2.56 2.34
max.dev 26.09 19.74 19.74 19.74 19.74 19.74 19.74 19.74 19.74
av.cpu 0.01 0.09 0.14 0.09 0.06 0.09 0.54 0.36 0.55
SMCP
av.dev 4.29 3.43 3.95 2.18 1.97 1.76 1.81 1.63 1.41
max.dev 26.58 26.58 27.85 26.58 27.85 26.58 20.00 20.00 20.00
av.cpu 0.01 0.08 0.08 0.09 0.06 0.10 0.29 0.20 0.30

than for £RS. Hence, it does not seem to be ap- to be computationally too expensive within a
propriate to select reduction techniques and bound branch and bound procedure (cf. Mingozzi et al.,
arguments on the basis of those measures. 1995), this con®guration of destructive improve-
Comparison with LP-based bounds: Finally, we ment can be evaluated in an average time of less
compare destructive improvement with LP-based than 0.1 s. RSPC reduces the average deviation for
bound arguments based on a reformulation of PATT and SMFF by more than 40% and 30%,
RCPSP as presented by Mingozzi et al. (1995) and respectively.
Brucker et al. (1996). In both papers, the results
given indicate that the LP-based approach cleary
outperforms existing methods such as described in 7. Summary and conclusions
Section 2. Table 12 shows the results for PATT
and SMFF obtained by Mingozzi et al. (1995), all The ®rst part of the article (Sections 1±3) is
bound arguments and destructive improvement. devoted to describing existing direct bound argu-
The results for SMCP have been omitted because ments and presenting a number of new ones for the
the optimal solutions are not available for all in- resource-constrained project scheduling problem
stances. The values for SMFF refer to the subset (RCPSP). The new arguments advantageously
of instances evaluated by Mingozzi et al. (1995). exploit special problem structures and relation-
The indices for the di€erent destructive improve- ships to other combinatorial optimization prob-
ment con®gurations represent the bound argu- lems such as machine scheduling. They allow
ments used. tackling a problem from di€erent directions in
Already RPC289 obtains better results than the order to obtain sharper bound values than being
LP-based approach. Whereas the latter has proved possible by former bound arguments.

Table 12
Destructive improvement vs. LP-based approaches
Data set LP-based LB RPC289 RPCall RSPCall
PATT
av.dev 3.29 3.74 3.00 2.89 1.97
max.dev 14.60 13.04 13.04 13.04 13.04
SMFF
av.dev 6.38 6.77 5.72 5.49 4.42
max.dev 23.71 19.74 19.74 19.74 19.74
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 343

In Section 4, we introduce a new meta-strategy meration process. In particular, the root node
for computing lower bounds (on minimization should be tackled by the full power of destruc-
problems), which is called destructive improve- tive improvement. This e€ort can be compensat-
ment. The basic idea of this approach is to prove ed, if the branching process is able to take
that no feasible solution for a trial bound value advantage of the information gained during
can exist. In case of success, the trial value may be the reduction process.
increased and the process is repeated for a larger · In order to examine the potential of the destruc-
value. Two steps are performed to furnish the tive improvement technique as a meta-strategy
proof. Assuming that the objective function value for calculating lower bounds, it has to be ap-
must not exceed the trial one, the problem data is plied to other capacity constrained combinatori-
reduced. If this does not result in a contradiction, al optimization problems such as bin packing,
modi®ed direct bounding procedures, taking ad- assembly line balancing and job shop scheduling
vantage of the reduced data, are applied. problems.
Section 5 describes how to apply the meta-
strategy to RCPSP. Di€erent techniques for re-
ducing the problem data are proposed. Further-
Acknowledgements
more, direct lower bound methods are adapted
such that they can successfully be used within the
We want to thank Professor Dr. Andreas
destructive improvement framework.
Drexl, Dr. Rainer Kolisch, and Dr. Arno
Comprehensive numerical tests have been
Sprecher for providing us with the data sets.
performed on di€erent standard data sets (Sec-
Furthermore, we are grateful to two anonymous
tion 6). They show that the new bounding pro-
referees which gave valuable suggestions for im-
cedures clearly outperform the ones described in
proving the paper.
the literature. The results obtained are further
improved by the destructive improvement tech-
nique. It turns out, that for some problem
classes, the direct bound arguments may even be Appendix A
omitted completely, without a severe loss in
bound quality. Nevertheless, depending on the We examine the in¯uence of the resource
reduction techniques applied, the destructive strength on the performance of the destructive
improvement technique may consume a consid- improvement technique. The instances of each
erable amount of computation time. This leads data set are subdivided into three classes C1,C2,
to the following conclusions: and C3 subject to their resource strengths. The
· Considering subprojects is the computationally classes contain the instances with £RS 2 ‰0;
most expensive reduction technique. In order 1=3†; £ RS 2 ‰1=3; 2=3†; and £RS P 2=3, re-
to reduce the overall computational e€ort, heu- spectively. Among the combinations of reduction
ristic rules can be incorporated to determine techniques given in Table 8, RPC, RSC and RSPC
which subprojects should be evaluated. have been selected for examination. The ®rst two
· In case that the destructive improvement pro- represent the most promising compromise con-
cess considerably improves on a lower bound cerning computation time and bound quality. The
obtained by direct methods, a lot of trial bound last one is chosen, because it uses the full potential
values have to be considered, if they are exam- of the destructive improvement technique. These
ined incrementally. Hence, more versatile search combinations are applied without any bound ar-
procedures such as binary search should be ap- guments, together with LB2, LB8, and LB9 as well
plied. as with all arguments.
· Within a branch and bound procedure, di€erent The results obtained can be found in Table 13.
con®gurations of destructive improvement may Combinations giving the best bound quality
be applied depending on the state of the enu- are marked with `*', whereas `+' marks those
344 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Table 13
Results for di€erent resource strengths
Destructive improvement
Without arguments With LB2, LB8, LB9 With all arguments
old 
LB LB RPC RSC RSPC RPC RSC RSPC RPC RSC RSPC
PATT
C1
av.dev 5.02 1.77 13.96 11.65 7.50 1.21‡ * 1.77 1.21 1.21 1.77 1.21
max.dev 10.53 5.26 32.00 26.56 23.44 5.26 5.26 5.26 5.26 5.26 5.26
av.cpu 0.01 0.04 0.02 0.02 0.12 0.03 0.12 0.20 0.09 0.60 0.68
C2
av.dev 8.49 4.35 5.56 3.74 3.18‡ 3.48 2.59 2.47 3.35 2.49 2.34*
max.dev 28.00 13.04 21.88 15.62 13.04 13.04 13.04 13.04 13.04 13.04 13.04
av.cpu 0.01 0.07 0.03 0.07 0.35 0.06 0.57 0.84 0.18 2.38 2.66
C3
av.dev 3.49 0.96 0.96‡ 0.00* 0.00 0.96 0.00 0.00 0.96 0.00 0.00
max.dev 25.00 12.50 12.50 0.00 0.00 12.50 0.00 0.00 12.50 0.00 0.00
av.cpu 0.01 0.12 0.03 0.11 0.60 0.09 1.24 1.75 0.28 5.13 5.62

SMFF
C1
av.dev 10.55 7.58 14.50 11.55 9.65 6.91‡ 5.75 5.22 6.59 5.53 4.95*
max.dev 26.09 19.74 32.80 31.52 29.35 19.74 19.74 19.74 19.74 19.74 19.74
av.cpu 0.01 0.10 0.08 0.08 0.39 0.11 0.36 0.65 0.22 1.58 1.90

C2
av.dev 4.27 3.52 1.77‡ 1.60‡ 1.47* 1.71 1.60 1.47 1.68 1.60 1.47
max.dev 18.87 15.09 11.32 11.32 11.32 11.32 11.32 11.32 11.32 11.32 11.32
av.cpu 0.01 0.08 0.04 0.07 0.22 0.09 0.36 0.51 0.21 1.36 1.52
C3
av.dev 1.29 0.94 0.30‡ 0.28 0.27* 0.30 0.28 0.27 0.30 0.27 0.27
max.dev 10.91 9.09 5.45 5.45 5.45 5.45 5.45 5.45 5.45 5.45 5.45
av.cpu 0.01 0.08 0.03 0.07 0.19 0.08 0.36 0.48 0.20 1.38 1.51

SMCP
C1
av.dev 12.15 9.25 16.75 15.34 13.13 8.26 7.32‡ 6.77‡ 7.70 6.86 6.25*
max.dev 26.58 26.58 29.33 29.33 26.67 26.58 20.00 20.00 24.05 20.00 20.00
av.cpu 0.01 0.10 0.09 0.04 0.24 0.12 0.19 0.36 0.28 0.79 0.97
C2
av.dev 3.21 2.67 0.98 0.80 0.55‡ 0.69 0.72 0.52* 0.69 0.72 0.52
max.dev 23.53 20.59 21.82 8.82 8.82 8.82 8.82 8.82 8.82 8.82 8.82
av.cpu 0.01 0.07 0.05 0.04 0.13 0.09 0.20 0.29 0.20 0.70 0.79
C3
av.dev 0.56 0.43 0.00‡ * 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
max.dev 5.26 3.92 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
av.cpu 0.01 0.08 0.03 0.03 0.10 0.08 0.20 0.26 0.19 0.75 0.80
R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346 345

combinations which yield a good bound quality Demeulemeester, E., 1992. Optimal Algorithms for Various
with short computation times appearing to be Classes of Multiple Resource-Constrained Project Schedul-
ing Problems. Unpublished Ph.D. Thesis, Department of
most favourable. In general, the results for the Applied Economic Sciences, Katholieke Universiteit Le-
Patterson data set are less expressive than for the uven.
others, because it has not been generated system- Demeulemeester, E., Herroelen, W., 1992. A branch-and-
atically. For example, the maximum number of bound procedure for the multiple resource-constrained
jobs varies considerably in the di€erent classes. project scheduling problem. Management Science 38,
1803±1818.
Therefore, the following indications are mainly Demeulemeester, E., Herroelen, W., 1997. New benchmark
based on the new data sets. For C1, RSPC com- results for the resource-constrained project scheduling
bined with all bound arguments must be applied to problem. Management Science 43, 1485±1492.
obtain the best results. In order to avoid the high De Reyck, B., Herroelen, W., 1996a. On the use of the
computation times, reduction by subprojects as complexity index as a measure of complexity in activity
networks. European Journal of Operational Research 91,
well as the bound arguments except for LB2, LB8, 347±366.
and LB9 should be omitted. Considering C2 and De Reyck, B., Herroelen, W., 1996b. A branch-and-bound
C3, even those arguments can be excluded without procedure for the resource-constrained project scheduling
considerable loss in bound quality. It is remark- problem with generalized precedence relations, Research
able that pure RSC without any bound arguments Report No. 9613, Department of Applied Economic
Sciences, Katholieke Universiteit Leuven.
always outperforms LB for C2 and C3, though Fischetti, M., Toth, P., 1989. An additive bounding procedure
requiring the shorter computation times. for combinatorial optimization problems. Operations Re-
search 37, 319±328.
Fisher, M.L., 1973. Optimal solution of scheduling problems
using Lagrange multipliers: Part I. Operations Research 21,
1114±1127.
References Kolisch, R., 1996. Serial and parallel resource-constrained
project scheduling methods revisited ± Theory and compu-
Alvarez-Valdez, R., Tamarit, J.M., 1989. Heuristic algorithms tation. European Journal of Operational Research 90, 320±
for resource-constrained project scheduling: A review and 333.
an empirical analysis, in: Slowinski, R., Weglarz, J. (Eds.), Kolisch, R., Sprecher, A., Drexl, A., 1995. Characterization
Advances in Project Scheduling, Elsevier, Amsterdam, pp. and generation of a general class of resource-constrained
113±134. project scheduling problems. Management Science 41,
Balas, E., 1970. Project scheduling with resource constraints, 1693±1703.
in: Beale, E.M.L. (Ed.), Applications of Mathematical Kolisch, R., Sprecher, A., 1996. PSPLIB ± A project scheduling
Programming Techniques, Elsevier, New York, pp. 187± problem library. European Journal of Operational Research
200. 96, 205±216.
Boctor, F.F., 1990. Some ecient multi-heuristic procedures for Mingozzi, A., Maniezzo, V., Ricciardelli, S., Bianco, L., 1995.
resource-constrained project scheduling. European Journal An exact algorithm for project scheduling with resource
of Operational Research 49, 3±13. constraints based on a new mathematical formulation.
Brucker, P., Schoo, A., Thiele, O., 1996. A branch and bound Management Science (to appear).
algorithm for the resource-constrained project scheduling Patterson, J.H., 1984. A comparison of exact approaches for
problem. European Journal of Operational Research (to solving the multiple constrained resource, project scheduling
appear). problem. Management Science 30, 854±867.
Carlier, J., Latapie, B., 1991. Une methode arborescente pour Scholl, A., Klein, R., J
urgens, C., 1997. BISON: A fast hybrid
resoudre les problemes cumulatifs. Recherche Operationelle procedure for solving the one-dimensional bin packing
25, 311±340. problem. Computers and Operations Research 24, 627±
Christo®des, N., Alvarez-Valdes, R., Tamarit, J.M., 1987. 645.
Project scheduling with resource constraints: A branch and Sprecher, A., 1996. Solving the RCPSP eciently at modest
bound approach. European Journal of Operational Re- memory requirements. Manuskripte aus den Instituten f ur
search 29, 262±273. Betriebswirtschaftslehre der Universitat Kiel, No. 425.
346 R. Klein, A. Scholl / European Journal of Operational Research 112 (1999) 322±346

Stinson, J.P., Davis, E.W., Khumawala, B.M., 1978. Multiple characteristics. Journal of the Operational Research Society
resource-constrained scheduling using branch and bound. 48, 34±43.
AIIE Transactions 10, 252±259. Weglarz, J., Blazewicz, J., Cellary, W., Slowinski, R., 1977.
Talbot, F.B., Patterson, J.H., 1978. An ecient integer ALGORITHM 520: An automatic revised Simplex method
programming algorithm with network cuts for solving for constrained resource network scheduling. ACM Trans-
resource-constrained scheduling problems. Management actions on Mathematical Software 3, 295±300.
Science 24, 1163±1175.
Thomas, P.R., Salhi, S., 1997. An investigation into the
relationship of heuristic performance with network-resource

Das könnte Ihnen auch gefallen