an iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project...

21
This article was downloaded by: [Queensland University of Technology] On: 06 November 2014, At: 18:09 Publisher: Taylor & Francis Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK International Journal of Production Research Publication details, including instructions for authors and subscription information: http://www.tandfonline.com/loi/tprs20 An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem Francisco Ballestín a & Norbert Trautmann b a Departamento de Estadística e Investigación Operativa , Universidad Pública de Navarra , Campus Arrosadía s/n, 31007 Pamplona, Spain b Departement Betriebswirtschaftslehre , Universität Bern , Schützenmattstrasse 14, 3012 Bern, Switzerland Published online: 02 Oct 2008. To cite this article: Francisco Ballestín & Norbert Trautmann (2008) An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem, International Journal of Production Research, 46:22, 6231-6249, DOI: 10.1080/00207540701420560 To link to this article: http://dx.doi.org/10.1080/00207540701420560 PLEASE SCROLL DOWN FOR ARTICLE Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) contained in the publications on our platform. However, Taylor & Francis, our agents, and our licensors make no representations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of the Content. Any opinions and views expressed in this publication are the opinions and views of the authors, and are not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon and should be independently verified with primary sources of information. Taylor and Francis shall not be liable for any losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoever or howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of the Content. This article may be used for research, teaching, and private study purposes. Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form to anyone is expressly forbidden. Terms &

Upload: norbert

Post on 09-Mar-2017

225 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

This article was downloaded by: [Queensland University of Technology]On: 06 November 2014, At: 18:09Publisher: Taylor & FrancisInforma Ltd Registered in England and Wales Registered Number: 1072954 Registeredoffice: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK

International Journal of ProductionResearchPublication details, including instructions for authors andsubscription information:http://www.tandfonline.com/loi/tprs20

An iterated-local-search heuristic forthe resource-constrained weightedearliness-tardiness project schedulingproblemFrancisco Ballestín a & Norbert Trautmann ba Departamento de Estadística e Investigación Operativa ,Universidad Pública de Navarra , Campus Arrosadía s/n, 31007Pamplona, Spainb Departement Betriebswirtschaftslehre , Universität Bern ,Schützenmattstrasse 14, 3012 Bern, SwitzerlandPublished online: 02 Oct 2008.

To cite this article: Francisco Ballestín & Norbert Trautmann (2008) An iterated-local-searchheuristic for the resource-constrained weighted earliness-tardiness project scheduling problem,International Journal of Production Research, 46:22, 6231-6249, DOI: 10.1080/00207540701420560

To link to this article: http://dx.doi.org/10.1080/00207540701420560

PLEASE SCROLL DOWN FOR ARTICLE

Taylor & Francis makes every effort to ensure the accuracy of all the information (the“Content”) contained in the publications on our platform. However, Taylor & Francis,our agents, and our licensors make no representations or warranties whatsoever as tothe accuracy, completeness, or suitability for any purpose of the Content. Any opinionsand views expressed in this publication are the opinions and views of the authors,and are not the views of or endorsed by Taylor & Francis. The accuracy of the Contentshould not be relied upon and should be independently verified with primary sourcesof information. Taylor and Francis shall not be liable for any losses, actions, claims,proceedings, demands, costs, expenses, damages, and other liabilities whatsoeveror howsoever caused arising directly or indirectly in connection with, in relation to orarising out of the use of the Content.

This article may be used for research, teaching, and private study purposes. Anysubstantial or systematic reproduction, redistribution, reselling, loan, sub-licensing,systematic supply, or distribution in any form to anyone is expressly forbidden. Terms &

Page 2: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 3: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

International Journal of Production Research,Vol. 46, No. 22, 15 November 2008, 6231–6249

An iterated-local-search heuristic for the resource-constrained

weighted earliness-tardiness project scheduling problem

FRANCISCO BALLESTINy and NORBERT TRAUTMANN*z

yDepartamento de Estadıstica e Investigacion Operativa, Universidad Publica de Navarra,

Campus Arrosadıa s/n, 31007 Pamplona, Spain

zDepartement Betriebswirtschaftslehre, Universitat Bern, Schutzenmattstrasse 14,

3012 Bern, Switzerland

(Revision received April 2007)

This paper deals with the weighted earliness-tardiness resource-constrainedproject scheduling problem with minimum and maximum time lags(WET-RCPSP/max). The problem consists of scheduling the activities of a projectsubject to prescribed resource and temporal constraints such that the totalweighted deviation of the activities’ completion times from prescribed due datesis minimized. Key applications are planning of just-in-time production andreactive scheduling. For the (approximative) solution of the WET-RCPSP/max,we present a population-based iterated-local-search heuristic. We also report theresults of an experimental performance analysis where this heuristic outperformedstate-of-the-art methods.

Keywords: Reactive scheduling; Just-in-time production; Resource-constrainedproject scheduling; Weighted earliness-tardiness cost; Iterated-local-search

1. Introduction

A project consists of a set of activities which require time and scarce resourcesfor execution and which are connected by minimum and maximum time lags(cf. e.g. Brucker et al. (1999)). In various publications it has been shown howshort-term production planning can be modelled as a resource-constrained projectscheduling problem (cf. e.g. Neumann and Schwint (1997) for the case of make-to-order production in manufacturing industries or Neumann et al. cf. e.g. (2002)for the case of batch production in process industries). In such models, the projectactivities correspond to the processing of jobs or batches on the different machines orprocessing units, respectively. The machines or processing units and the manpowerare represented by the project resources. The vast majority of the correspondingsolution methods deal with the problem of computing a minimum makespanschedule. An overview of state-of-the-art algorithms can be found inDemeulemeester and Herroelen (2002) and Neumann et al. (2003).

In this paper we consider the objective of minimizing the total weighted earliness-tardiness cost. More precisely, we assume that for each activity of the project, a due

*Corresponding author. Email: [email protected]

International Journal of Production Research

ISSN 0020–7543 print/ISSN 1366–588X online # 2008 Taylor & Francis

http://www.tandf.co.uk/journals

DOI: 10.1080/00207540701420560

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 4: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

date as well as some earliness and some tardiness cost per unit time are prescribed.The problem is to schedule the activities such that the minimum and maximum timelags and the resource scarcity are observed and the total weighted earliness-tardinesscost is minimized. In short-term production planning, this objective is required formodelling the following planning tasks.

. In a just-in-time environment, the due dates of the project activities arisefrom the due dates of the corresponding customer orders. Early or latefulfilment of customer orders results in (fictitious or real) holding cost andpenalties, which are represented by the earliness and tardiness cost of thecorresponding project activities (Vanhoucke et al. 2001).

. Input data such as processing times or machine and manpower availabilityare often subject to change. As a consequence, the original productionschedule may even become infeasible. In this case, rescheduling is necessary.In order to keep the system nervousness as low as possible, it is often desiredto find a feasible schedule that is ‘as close as possible’ to the original schedule(Herroelen and Leus 2004). To this end, we set the due date of a projectactivity equal to its original completion time (Neumann et al. 2003).

There is a vast literature on machine scheduling with earliness and tardiness costs(see, e.g. Baker and Scudder (1990)). In contrast, only a few methods have beenreported for minimizing the total earliness and tardiness cost of a resource-constrained project. For the case where only precedence constraints betweenactivities are prescribed, Serafini and Speranza (1994a, b) decompose the probleminto a sequencing and a scheduling problem. The sequencing problem is tackled bya shifting bottleneck heuristic, and the scheduling problem is solved as a dualnetwork flow problem. For the same case, Vanhoucke et al. (2001) proposeda branch-and-bound method which exploits the technique of minimum delayingalternatives introduced by Demeulemeester and Herroelen (1992) and whichcomputationally outperforms the method of Serafini and Speranza (1994a, b).Recently, Keri and Kis (2006) sketched a new exact solution method that refinesthe branch-and-bound method of Vanhoucke et al. (2001) by using a primal-dualapproach for efficiently computing lower bounds and constraint propagationtechniques for deriving time windows.

In this paper we discuss the more general case where not only precedenceconstraints, but minimum and maximum time lags between start times of activitiesare prescribed. For this case, a local-search heuristic proposed by Schwindt (2000a)and a branch-and-bound method presented by Schwindt (2000b) are known. Thebasic idea of the branch-and-bound method is to solve the resource relaxation usinga primal-dual approach, and to enumerate the possibilities of iteratively replacing theresource constraints by precedence constraints. According to Schwindt (2005), theperformance of the local-search heuristic is competitive with truncated versions ofthe branch-and-bound method.

Our approach is based on the idea of iterated-local-search (Lourenco et al. 2002)and consists of two phases. In the first phase, we initialize a population of schedulesusing a multi-pass heuristic. In the second phase, we try to find better feasibleschedules by iteratively applying some perturbation and local-search procedures toa randomly selected schedule of this population. Whereas the concept of iterated-local-search is quite general, we tailor the multi-pass heuristic, the perturbation

6232 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 5: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

procedures, and the local-search procedures to the particular project schedulingproblem under study. In an experimental performance analysis, it turned outthat our approach compares favourably with the methods proposed by Schwindt(2000a, b) and Vanhoucke et al. (2001). The new method solves more probleminstances to feasibility and, in general, finds a better feasible solution within a shorteramount of CPU time.

The remainder of this paper is organized as follows. In section 2 we give a formalstatement of the project scheduling problem under study. Our solution approachis presented in section 3. In section 4 we report on the results of the experimentalperformance analysis. Section 5 is devoted to the conclusions and directions forfuture research.

2. Problem statement

Assume that n real activities numbered 1, . . . ; n have to be processed.For convenience, we introduce the fictitious activities 0 and nþ 1 of duration zeroeach, representing the project start and the project completion, respectively.We denote the set of all activities by V :¼ f0; 1, . . . ; nþ 1g. Let pi � 0 be the givenprocessing time or duration and Si � 0 the start time of activity i 2 V. The project hasto be started at time zero and completed by a deadline d, i.e. S0 :¼ 0 and Snþ1 � d.The vector S ¼ ðS0;S1, . . . ;Snþ1Þ is called a schedule. We assume that all activitieshave to be processed without interruption. Thus, if activity i 2 V is started at time Si,it will be completed at time Ci :¼ Si þ pi.

We denote the prescribed due date for activity i 2 V by d i � 0. For a givenschedule S, Ei :¼ maxðd i � Ci; 0Þ is the earliness, and Ti :¼ maxðCi � d i; 0Þ is thetardiness of activity i 2 V. The earliness and tardiness cost per unit time of activityi 2 V is denoted wE

i � 0 and wTi � 0, where we assume that wE

0 ¼ 0 and wT0 ¼ 0.

The objective function f to be minimized expresses the total weighted earliness-tardiness cost, i.e.

f ðSÞ :¼Xi2V

ðwEi Ei þ wT

i TiÞ:

Between the start times of different activities i; j 2 V, a minimum time lag dminij � 0

or a maximum time lag dmaxij � 0 can be prescribed, i.e. Sj � Si þ dmin

ij orSj � Si þ dmax

ij , respectively. In particular, a minimum time lag dminij ¼ pi represents

a precedence relationship between activities i and j. In production scheduling, mini-mum and maximum time lags are needed for modelling, for example, the productstructure, quarantine time and shelf life of intermediates, or release dates of customerorders; details and further applications are discussed by Neumann et al. (2003).

We represent the activities and the minimum and maximum time lags of theproject by an activity-on-node network N. The node set of network N coincideswith the set V of activities of the project. If there is a prescribed minimum timelag dmin

ij between the start times of activities i; j 2 V, we introduce an arc hi; ji withweight �ij :¼ dmin

ij . If a maximum time lag dmaxij between the start times of activities

i; j 2 V has been prescribed, we introduce an arc h j; ii and put �ji :¼ �dmaxij .

6233Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 6: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

We denote the arc set of network N by E. The temporal constraints can thenbe written as

Sj � Si � �ij ðhi; j i 2 E Þ;

S0 :¼ 0; Snþ1 � d: ð1Þ

For carrying out the project activities, a set R of renewable resources is required.With Rk>0 we denote the capacity of resource k 2 R available. Let rik � 0 withrik � Rk be the amount of resource k 2 R used by activity i 2 V. We assumer0k :¼ rnþ1;k :¼ 0 for all resources k 2 R. For a given schedule S and a given pointin time t � 0, AðS; tÞ :¼ fi 2 V j Si � t < Si þ pig is the set of activities in process attime t. Then the amount of resource k 2 R used at time t � 0is rkðS; tÞ :¼

Pi2AðS;tÞ rik. At each point in time, the usage of every resource k 2 R

must not exceed the capacity available; this leads to the resource constraints

rkðS; tÞ � Rk ðk 2 R; t � 0Þ: ð2Þ

A schedule S that fulfills constraints (1) and (2) is termed a feasible schedule.A schedule S � is called an optimal schedule if S � is feasible and there is no feasibleschedule S with a better objective function value f ðSÞ < f ðS �

Þ.In sum, the weighted earliness-tardiness resource-constrained project scheduling

problem with minimum and maximum time lags (WET-RCPSP/max) reads

WET�RCPSP=max

Min: f ðSÞ;

s:t: Sj � Si � �ij ðhi; ji 2 EÞ;

S0 ¼ 0; Snþ1 � d;

rkðS; tÞ � Rk ðk 2 R; t � 0Þ:

8>>><>>>:

In the three-field classifications for resource-constrained project scheduling devisedby Herroelen et al. (1998) and Brucker et al. (1999), this problem is designatedas m; 1 j gpr; �n j early=tardy and PS j temp; d j

PwEi Ei þ wT

i Ti, respectively.

3. Solution approach

In this subsection we describe our iterated-local-search (ILS) heuristic forWET-RCPSP/max. A brief presentation of the major elements of this heuristic canbe found in Ballestın and Trautmann (2006).

Subsection 3.1 gives an overview of the ILS heuristic. In subsection 3.2 we presentthe multi-pass heuristic that we use for initializing the population of schedules.The local-search and the perturbation procedures are described in subsections 3.3and 3.4, respectively.

In various phases of our heuristic we operate with schedules that do not fulfill thetemporal constraints (1). More concretely, in these schedules an activity i may startlater than the latest start time LSi resulting from the temporal constraints (1).Therefore, for evaluating a schedule S we use the function

FðSÞ :¼f ðSÞ; if S is feasible;

nd maxi2V wEi ;w

Ti

� �þP

i2V maxð0;Si � LSiÞ; else:

6234 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 7: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

3.1 Overview of the iterated-local-search heuristic

Roughly speaking, the ILS heuristic runs as follows. First, we use a multi-passheuristic (cf. subsection 3.2) to generate a population, i.e. a set of (feasible orinfeasible) schedules. Next, we repeat the following phases until the best schedulein the population cannot be improved upon during a prescribed number ofrepetitions (cf. section 4).

(i) A schedule is selected from the population using a roulette-wheel procedure.The probability of a schedule S being chosen is linearly proportional toF þ

� FðSÞ þ 1, where Fþ is the maximum of F over all schedules in thepopulation.

(ii) A perturbation procedure (cf. subsection 3.4) is randomly chosen and appliedto the selected schedule.

(iii) If a feasible schedule is found in Step (ii), the local-search procedures LS1,LS2, LS3, and LS4 (cf. subsection 3.3) are successively applied to this sche-dule.

(iv) If (in terms of F ) the schedule obtained in Step (iii) is better than the worstschedule in the population, the worst schedule is replaced by the newschedule.

3.2 A multi-pass heuristic

We have developed a novel schedule generation scheme that uses a schedulecodification consisting of an activity list � and a vector ~d of ‘simulated’ due dates.We assume that � is precedence-feasible, i.e. if d ij > 0 (with d ij denoting the lengthof a longest path from node i to node j in the project network), then activity j occursin � after activity i. Our schedule generation scheme (called WET-SGS) decodes apair ð�; ~d Þ in the following way: at iteration � it schedules activity i ¼ �� locallyoptimal w.r.t. ~di, taking into account constraints (1) and (2). If due to somemaximum time lag there is no feasible start time for activity i, WET-SGS performsan unscheduling step as described by Neumann et al. (2003), where we prescribea maximum number of unscheduling steps. We remark that

(a) WET-SGS does not perform any unscheduling step when no maximum timelags are prescribed, and

(b) for every feasible schedule S, there is a pair ð�; ~dÞ such that WET-SGSdecodes ð�; ~dÞ to S; we can obtain � by ordering the activities in non-decreasing order of start times Si, and ~d by setting ~di :¼ Ci

(i ¼ 0; 1, . . . ; nþ 1). This means that when we use the schedule generationscheme WET-SGS within a heuristic, we do not exclude any feasible (and, inparticular, any optimal) schedule from the search space.

Now we turn to the multi-pass heuristic (called MPH) that we use for computingthe initial population of our ILS heuristic. Let � be the population size, i.e.the number of elements of the initial population. MPH generates a set P of(feasible or infeasible) schedules. After performing MPH, we compute F(S) foreach schedule S 2 P. The initial population for ILS then consists of the (in termsof F(S)) � best schedules in set P.

6235Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 8: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

For initializing MPH, we set P :¼ ø. In total, MPH performs 2� passes. In eachpass, MPH adds one schedule to P as follows.

(i) Generate a permutation � of the activities with a roulette-wheel procedure,where the probability �i of an activity i being chosen is determined bythe maximum of its earliness and tardiness cost. With E � V denotingthe set of all activities that have not yet been chosen andwþ :¼ maxj2EfmaxðwE

j ;wTj Þg, we compute these probabilities by

�i :¼wþ

�maxðwEi ;w

Ti Þ þ 1P

j2E ½wþ �maxðwE

j ;wTj Þ þ 1�

:

(ii) Iteratively schedule the activities locally optimal in the order of � taking intoaccount the temporal constraints (1), but not the resource constraints (2).Let S be the resulting schedule.

(iii) Compute an activity list � by ordering the activities in non-decreasing orderof the start times Si, where ties are broken randomly.

(iv) Compute a vector ~d of simulated due dates by setting ~di :¼ Ci

(i ¼ 0; 1, . . . ; nþ 1).(v) Apply WET-SGS to the pair ð�; ~dÞ. Let SWET be the resulting schedule.

If SWET is feasible, then try to improve SWET by applying the local-searchprocedures LS1, LS2, LS3, and LS4 (cf. subsection 3.3) to it, and add theresulting schedule to P.

(vi) If SWET is not feasible, then perform (without taking into account the resultsof the preceding steps) one pass of the regret-based biased random samplingprocedure proposed by Drexl (1991) using the latest-finish-time rule and theserial generation scheme described by Neumann et al. (2003). Let SCnþ1 be theresulting schedule. If SCnþ1 is feasible, then try to improve SCnþ1 by applyingthe local-search procedures LS1, LS2, LS3, and LS4 (cf. subsection 3.3) to it,and add the resulting schedule to P. Otherwise, add SCnþ1 to P.

Note that, in Step (ii), we temporarily discard the resource constraints. Thus, theresulting schedule S is, in general, good in terms of the objective function, but notfeasible. That is why subsequently we try to compute a feasible schedule that is(to some extent) ‘close’ to schedule S. If this approach fails, we try to find at leasta feasible schedule in Step (vi) using a different schedule generation scheme in whichevery activity is started as early as possible w.r.t. the temporal and the resourceconstraints.

In Step (v) and in Step (vi), it may occur that the earliest feasible start time ti foractivity i is greater than LSi. In this case we perform an unscheduling step asdescribed by Neumann et al. (2003). If the number of unscheduling steps exceedsthe prescribed maximum, we schedule activity i with start time ti and continue withscheduling the remaining activities; in that case, the resulting schedule is infeasible.

3.3 Local-search procedures

In this subsection we describe four local-search procedures called LS1, LS2, LS3,and LS4. Throughout the subsection we assume that a feasible schedule S is given.

6236 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 9: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

If we apply any of these procedures to S, the procedure returns a feasible schedule S 0

with f ðS 0Þ � f ðSÞ.

Procedure LS1 (cf. subsection 3.3.1) aims primarily at gaining flexibility withoutincreasing the total cost. The basic idea of procedures LS2, LS3, and LS4is to improve schedule S by moving some activities i closer to their (original) duedates di. In procedure LS2 (cf. subsection 3.3.2), only one activity i can be movedin an iteration. In each iteration of procedures LS3 and LS4, however, we tryto move an activity i together with one or several other activities that block activityi via a minimum or a maximum time lag (procedure LS3, cf. subsection 3.3.3)or (implicitly) via resource scarcity (procedure LS4, cf. subsection 3.3.4).

In the following, for a given schedule S we denote the set of real activities thatare completed before and after their due dates by VE

ðSÞ and VTðSÞ, respectively.

Each of the four procedures first investigates all activities i 2 VEðSÞ in non-increasing

order of completion times and, second, all activities i 2 VTðSÞ in non-decreasing

order of start times.

Example 3.1: We illustrate the local-search procedures presented in this subsectionusing an example project (cf. figure 1 and table 1). When we represent a scheduleby a Gantt-chart, early and late activities are light- and dark-shaded, respectively.We assume that, in the beginning, schedule S depicted in figure 2 with f ðSÞ ¼ 9is given.

3.3.1 Local-search procedure LS1. Procedure LS1 tries to delay early activities asmuch as possible and vice versa without increasing the total earliness and tardiness

Table 1. Data of example project with R1¼3.

i pi ri1 di wEi wT

i

0 0 0 0 0 01 1 2 4 3 12 1 2 3 1 13 1 2 6 1 14 1 1 5 1 15 2 1 6 1 26 1 2 5 1 17 0 0 0 0 0

0

1

2

3

4 5

6

7

0

0

−2

1

1

1

1

1

−1 2

1

Legend :

i jdij

Figure 1. Activity-on-node network of example project.

6237Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 10: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

cost. Consider an activity i 2 VEðSÞ with wE

i > 0. If we delay activity i, any resultingtardiness cost must not be higher than the actual earliness cost of i. In other words,if wT

i > 0, then i must be completed not later than point in time �Ei ðSÞ with

wEi ðd i � CiÞ ¼ wT

i ð�Ei ðSÞ � d iÞ. Thus, procedure LS1 schedules each activity

i 2 VEðSÞ such that it is completed as late as possible, but not later than

�Ei ðSÞ :¼

bd i þ ðwEi =w

Ti Þðd i � CiÞc; if wT

i > 0;

d; if wTi ¼ 0:

(

Vice versa, procedure LS1 schedules each activity i 2 VTðSÞ such that it is completed

as early as possible, but not later than

�Ti ðSÞ :¼

dd i � ðwTi =w

Ei ÞðCi � d iÞe; if wE

i > 0;

pi; if wEi ¼ 0:

(

Example 3.2: If we apply procedure LS1 to schedule S depicted in figure 2, we getthe following results. We have VE

ðSÞ ¼ f1; 3g and VTðSÞ ¼ f2; 5; 6g, and thus we

investigate the activities in the order 3, 1, 2, 5, 6; activity 4 is not considered becauseit is completed at its due date. Activity 3 cannot be delayed due to the timelag dmax

13 ¼ 2 between the start times of activities 1 and 3. Activity 1 cannot bedelayed because of resource scarcity. Activity 2, however, may be started earlier;we get �T

2 ðSÞ ¼ 2 as the new completion time of activity 2. The minimum timelag dmin

45 ¼ 1 between the start times of activities 4 and 5 prevents activity 5 beingstarted earlier. Eventually, we consider activity 6, for which we get �T

6 ðSÞ ¼ 3; due toresource scarcity and dmin

16 ¼ 1, we cannot complete activity 6 earlier than at point intime 6. Figure 3 shows the resulting schedule S 1. We note that f ðS 1

Þ ¼ 8; the onlyreason for this improvement is the movement of activity 6, but we will see that themovement of activity 2 has enabled a further improvement that will be realized bylocal-search procedure LS2.

3.3.2 Local-search procedure LS2. In each iteration, procedure LS2 tries to movean activity i without moving any other activity such that i is completed locallyoptimal w.r.t. the original due date di.

t

r1

1 2 3 4 5 6 7

1

2

3

1 2

3

4 5

6

Figure 2. Initial schedule S.

6238 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 11: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

Example 3.3: We apply local-search procedure LS2 to schedule S 1 shown infigure 3. With VE

ðS 1Þ ¼ f1; 2; 3g and VT

ðS 1Þ ¼ f5; 6g, we get the sorting

3, 1, 2, 5, 6. For the same reason as above, activity 3 cannot be delayed.Activities 1 and 2 can be delayed such that both are completed at their due date.Activities 5 and 6 cannot be started earlier because of the resource scarcity and someminimum time lags. Figure 4 shows the resulting schedule S 2, which has an objectivefunction value of f ðS 2

Þ ¼ 4.

3.3.3 Local-search procedure LS3. Procedure LS3 tries to improve the givenschedule S by delaying an early activity i simultaneously with all activities j 2 Vwith Sj ¼ Si þ d ij, and vice versa for a late activity. Let V � V be the set of activitiesthat are delayed. We perform a uniform right-shift of all activities in V with a shiftlength �, i.e. the start time of activity h 2 V is increased by � if h 2 V.

We choose the shift length � such that the improvement of the objective functionvalue becomes maximal. In general, the shift length � is limited from above by someminimum or maximum time lag between start times of activities i 2 V, j 2 V n Vor resource scarcity, respectively. Otherwise, we choose the maximal shift length �,for which we have � ¼ d i � Ci for at least one i 2 V \ VE

ðSÞ. Therefore we determine� as follows.

(i) Determine set � of all relevant shift lengths, i.e.� :¼ fd i � Ci j i 2 V \ VE

ðSÞg.(ii) For each shift length �2�, compute the resulting schedule Sð�Þ by

Shð�Þ :¼ Sh þ�; if h 2 V

0; elseðh ¼ 0; 1, . . . ; nþ 1Þ:

(iii) Determine the maximal shift length � :¼ argmin�2�½ f ðSð�ÞÞ�.

Example 3.4: Let us consider schedule S � with f ðS �Þ ¼ 16 shown in figure 5. For

V ¼ f1; 2; 3; 4; 5; 6g we get d 2 � C2 ¼ d 5 � C5 ¼ 1, d 4 � C4 ¼ 2, andd 1 � C1 ¼ d 3 � C3 ¼ 3 and thus � ¼ f1; 2; 3g. Because of f ðSð1ÞÞ ¼ 10,f ðSð2ÞÞ ¼ 9, and f ðSð3ÞÞ ¼ 10, the maximal shift length is � ¼ 2.

Example 3.5: To illustrate the local-search procedure LS3, we apply LS3 toschedule S 2 (cf. figure 4). We have VE

ðS 2Þ ¼ f3g and VT

ðS 2Þ ¼ f5; 6g and thus the

1 2 3 4 5 6 7

t

r1

1

2

3

12

3

4 5

6

Figure 3. Schedule S 1 (result of LS1).

6239Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 12: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

sorting 3,6,5. Early activity 3 cannot be delayed due to the resource scarcity. For thesame reason, late activity 6 cannot be completed earlier. In order to complete lateactivity 5 earlier, we have to move activity 4 simultaneously, i.e. V :¼ f4; 5g.By performing a uniform left-shift of V with the (maximal) shift length � :¼ � ¼ 1,we obtain schedule S 3 (cf. figure 6) with objective function value f ðS 3

Þ ¼ 3.

t

1

2

3

1 2

3

4 5

1 2 3 4 5 6

r1

6

Figure 5. Schedule S � (discussed in example 3.4).

t

1

2

3

1

2

3

4 5

6

1 2 3 4 5 6

r1

Figure 6. Schedule S 3 (result of LS3).

1 2 3 4 5 6 7

t

r1

1

2

3

12

3

4 5

6

Figure 4. Schedule S � (result of LS2).

6240 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 13: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

3.3.4 Local-search procedure LS4. Procedure LS4 considers activities i that cannotbe delayed or started earlier due to the resource scarcity, but can be delayed orstarted earlier without violating the temporal constraints. We sketch the procedureat hand of an early activity i 2 VE

ðSÞ; for i 2 VTðSÞ the procedure runs analogously.

In each iteration, procedure LS4 first computes the set VB� V of activities that

require at least one resource in common with activity i, can be delayed or startedearlier without violating the temporal constraints, and start later than Ci, butbefore di. Second, for each activity j 2 VB, procedure LS4 analyses the possibleimprovement that would result from unscheduling both activities i and j and thenscheduling activity i and afterwards j locally optimal. If at least one improvementpossibility has been found, procedure LS4 returns the best feasible schedule thathas been found. Otherwise, the procedure examines all possibilities to unscheduleactivities i and j1; j2 2 f j 2 VB

j j 2 VTðSÞ or wE

j < wEi g and then to schedule those

activities in the order i; j1; j2; again, if an improvement possibility has been found,procedure LS4 returns the best feasible schedule that has been found.

Example 3.6: For schedule S 3 we have VEðSÞ ¼ f3; 4g and VT

ðSÞ ¼ f6g. ProcedureLS4 can be applied to activity i¼ 3. We get VB :¼ f6g. We unschedule activities 3and 6, schedule activity 3 locally optimal at S3 :¼ 5, and then scheduleactivity 6 locally optimal at S6 :¼ 4. The resulting schedule S 4 (cf. figure 7) has anobjective function value f ðS 4

Þ ¼ 1. We remark that this schedule S 4 represents anoptimal schedule for the example project.

3.4 Perturbation procedures

In this subsection we describe the five perturbation procedures P1, P2, P3, P4,and P5. Recall that our iterated-local-search procedure randomly chooses oneof these procedures and applies it to the schedule S selected from the population(cf. subsection 3.1). Each procedure starts by computing a pair ð�; ~d Þ that would bedecoded by WET-SGS to schedule S. The activity list � is obtained by ordering theactivities in non-decreasing order of the start times Si, where ties are brokenrandomly, and the vector of simulated due dates ~d by setting ~di :¼ Ci

t

1

2

3

1

2

3

4 5

6

1 2 3 4 5 6

r1

Figure 7. Schedule S 4 (result of LS4).

6241Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 14: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

(i ¼ 0; 1, . . . ; nþ 1). Then, � and ~d are modified to �0 and ~d 0, respectively, in order toperturb the corresponding schedule. Lastly, the perturbed schedule is computedby applying WET-SGS to ð�0; ~d 0

Þ.In the following subsections, let � and � denote the realizations of a random

variable that is uniformly distributed in �0; 1�, and let �a;b be the integerda� 1þ ðb� aþ 1Þ�e with constants a; b 2 Z�0 (i.e. �a;b 2 fa; aþ 1, . . . ; bg).

3.4.1 Perturbation procedure P1. In procedure P1 we try to delay some earlyactivities, and to complete late activities at their (original) due date. Thus, we set

~d 0i :¼

�Ciþ1;d i; if � < �1

Ci; elseði 2 VE

ðSÞÞ:

and ~d 0i :¼ d i ði 2 V nVE

ðSÞÞ. �1 is a threshold parameter whose value has beendetermined in preliminary tests (cf. section 4). The activity list remains unchanged,i.e. �0 :¼ �.

3.4.2 Perturbation procedure P2. The basic idea of procedure P2 is that some earlyactivities may block some late activities, either because of minimum or maximumtime lags or because of the resource scarcity. Therefore, in this procedure we try tocomplete some early activities earlier such that some late activities can be completedat their (original) due dates. Using a threshold parameter �2, we set

~d 0i :¼

�pi;Ci�1; if � < �2

Ci; elseði 2 VE

ðSÞÞ:

As in procedure P1, we set ~d 0i :¼ d i ði 2 V nVE

ðSÞÞ and �0 :¼ �.

3.4.3 Perturbation procedure P3. In procedure P3 we compute a new activity list �0

using the so-called -biased random sampling method presented by Valls et al.(2003), where we prescribe ¼ 1� ð5=nÞ. Furthermore, we modify vector ~d by

~d 0i :¼

pi; if � < �3

Ci; elseði 2 V Þ;

with threshold parameter �3.

3.4.4 Perturbation procedure P4. In procedure P4 we try to delay some earlyactivities by increasing their position in the activity list and setting their simulateddue date equal to their (original) due dates. Vice versa, we also try to complete somelate activities earlier.

Let �1 and �2 denote the realizations of a random variable that is uniformlydistributed in �0; 1�. Correspondingly, we use two threshold parameters �4;1and �4;2. We iteratively examine activity i ¼ �l ðl ¼ 1, . . . ; nÞ and proceed as follows.

(i) If i 2 VEðSÞ and �1 < �4;1, determine the first position l in � with S�

l� d i � pi,

and set �i :¼ �lþ1;l and

~d 0i :¼ Ci.

6242 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 15: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

(ii) If i 2 VTðSÞ and �1 < �4;1, determine the first position l in � with S�l < d i � pi,

and set �i :¼ �l;l�1 and ~d 0i :¼ pi. Furthermore, for each l0 ¼ �i, . . . ; l� 1

with d �l 0 i� 0, set ��l0

:¼ �i � 1.(iii) If �i and ~d 0

i have not been set in Step (i) or (ii), set �i :¼ l and

~d 0i :¼

pi; if �2 < �4;2;

Ci; else:

Eventually, we build activity list �0 in n steps as follows: at step l ¼ 1, . . . ; n, anactivity i is chosen for position l in �0. An activity can be chosen if all its predecessorshave already been chosen. If several activities meet this criterion, we choose anactivity i with smallest value �i, where ties are broken randomly.

3.4.5 Perturbation procedure P5. The basic idea of perturbation procedure P5 isthe same as for the local-search procedure LS3 for the case of late activities, i.e. wetry to complete a late activity and (if necessary) its predecessors earlier. In contrast toprocedure LS3, we do not directly modify the schedule, but the activity list � and thevector of corresponding simulated due dates ~d.

First, we select an activity i 2 VTðSÞ with the smallest start time of all activities in

VTðSÞ. Second, we compute the set of activities V that we want to complete earlier

and the maximal shift length � as described in subsection 3.3.3. Let S be the start timeof the earliest activity in V. Third, we select a shift length � :¼ �1;�. Next, we generatea new activity list �0 in which all activities in V occur before all activities that(according to S) are completed later than at point in time S� � and that (accordingto �) are scheduled before the activities in V. Lastly, we modify ~d as follows. We set~di :¼ Ci � � if i 2 V, ~di :¼ Ci if Ci � S� �, and ~di :¼ minðd i;CiÞ otherwise.

In contrast to the other perturbation procedures, we continue the ILS heuristicusing the resulting schedule only if all activities in V start earlier than according to S,or if its objective function value is better than f(S). Otherwise, we repeat procedureP5, where we examine the late activities in non-decreasing order of start times, untilat least one of these two conditions is met. If this is never achieved, we continue usingthe original schedule S.

4. Experimental performance analysis

In this section we report the results of an experimental performance analysis wherewe have compared the ILS heuristic presented in this paper with the methodsproposed by Schwindt (2000b) (cf. subsection 4.1) and Vanhoucke et al. (2001)(cf. subsection 4.2). We recall that, according to Schwindt (2005), the performanceof the local-search heuristic presented by Schwindt (2000a) is competitive with theformer method.

All computations were performed on a 1.4GHz Pentium PC with 512MB RAM.The results reported by Schwindt (2000b) and Vanhoucke et al. (2001) were obtainedusing PCs with 333MHz and 200MHz clock pulses and a time limit of 100 s,respectively. In order to obtain comparable results, we stopped these methodsafter 24 s and 14 s, respectively, on our computer.

After previous tests, we selected the parameter values of our method as follows.

6243Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 16: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

. The ILS heuristic is stopped when the best schedule in the population has notbeen improved upon after 200 iterations.

. The population size is �¼ 50.

. In each iteration of ILS, the probability of selecting perturbation procedureP2, P4, or P5 is 1/4; perturbation procedure P1 and P3 is chosen withprobability 1/8.

. For the perturbation procedures we use the following threshold parametervalues: �1 ¼ 0:15, �2 ¼ 0:6, �3 ¼ 0:6, �4;1 ¼ 0:2, and �4;2 ¼ 0:6.

4.1 Results for WET-RCPSP/max

For problem WET-RCPSP/max, our comparison is based on the standard test setsUBO50 and UBO100 that were generated by the project generator ProGen/max(Newmann et al. 2003). Each test set consists of 90 problem instances with 50 and100 real activities, respectively. The weights wE

i and wTi were generated randomly

according to a uniform distribution in set f0; 1, . . . ; 100g. When generating the duedates, parameter was used for controlling their tightness. Seven variations of eachproblem instance were generated by successively choosing the values 1, 1.25, 1.5,1.75, 2.0, 2.25, 2.5 for and generating the due dates di randomly according toa uniform distribution in set f0; 1, . . . ; ESnþ1g. Thereby ESnþ1 denotes the earliestproject completion time of a schedule with S0¼ 0 that fulfills the temporalconstraints (1). Thus, a small value of implies that all due dates are relativelyearly. In contrast, a large value of indicates that some due dates may be tightand others may be loose. The maximal project duration is set to d :¼ ESnþ1.

We applied the ILS heuristic presented in this paper and a truncated version ofthe branch-and-bound method presented by Schwindt (2000b) (abbreviated as TBSin the following) to all seven variations of each problem instance. For 73 instancesof test set UBO50 and for 78 instances of test set UBO100, a feasible solutionexists. For all these instances, the ILS heuristic found a feasible solution for everyvalue of . The number of instances solved to feasibility by TBS for the variousvalues of is shown in table 2. The value of does not seem to have a significantinfluence on that number. However, for every value of , there are one or severalsolvable instances for which TBS did not find a feasible solution.

For the instances that TBS solved to feasibility, tables 3 and 4 show the averagedeviation of the objective function value obtained from a lower bound on theobjective function value that is calculated in the root node of the branch-and-boundmethod of Schwindt (2000b). The values in the individual rows refer to the followingsettings:

. row TBS: truncated version of the branch-and-bound method of Schwindt(2000b);

Table 2. WET-RCPSP/max: number of instances solved to feasibility by TBS.

Test set ¼1.00 ¼1.25 ¼1.50 ¼1.75 ¼2.00 ¼2.25 ¼2.50

UBO50 68 70 70 70 69 68 72UBO100 69 63 64 66 69 68 66

6244 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 17: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

. row MPH: initial population of ILS (cf. subsection 3.2);

. row ILS12: ILS, but only local-search procedures LS1 and LS2 are applied;

. row ILS34: ILS, but only local-search procedures LS3 and LS4 are applied;

. row ILS100: all phases of ILS, but already stopped when the best schedule inthe population has not been improved after 100 iterations;

. row ILS: all phases of ILS;

. row ILS �¼ 25: all phases of ILS with a population size of 25;

. row ILS �¼ 100: all phases of ILS with a population size of 100.

Tables 5 and 6 show the corresponding average CPU times per instance requiredby both algorithms to terminate, referring to all instances of the test sets. We see that,in general, ILS runs faster than TBS.

If we compare TBS with ILS regarding the solution quality, we see that, for allvalues of , the solutions obtained by ILS are better than those obtained by TBS.The difference between the objective function values obtained by the two solutionmethods is increasing in the tightness of the due dates. For both solution methods,the deviation becomes larger if the due dates are getting tighter.

With regard to the individual phases of ILS, we note that, in general for tight duedates, the best schedule in the initial population has a better objective function value

Table 3. WET-RCPSP/max: average relative deviation from lower bound fortest set UBO50.

Method 1.00 (%) 1.25 (%) 1.50 (%) 1.75 (%) 2.00 (%) 2.25 (%) 2.50 (%) Avg. (%)

TBS 16.65 15.91 11.24 7.28 5.64 2.97 2.34 8.83

MPH 16.43 15.85 11.49 8.67 6.33 4.34 3.97 9.56ILS12 13.56 12.52 9.58 7.15 5.07 3.63 3.24 7.80ILS34 13.64 12.56 9.03 6.87 4.62 3.03 2.59 7.46ILS100 13.86 12.43 9.31 6.66 4.61 3.13 2.38 7.46ILS 13.16 11.83 8.73 6.27 4.27 2.77 2.04 6.99

ILS �¼ 25 13.52 12.03 8.79 6.00 4.27 2.71 2.35 7.08ILS �¼ 100 13.36 11.63 8.81 6.28 4.29 2.79 2.28 7.04

Table 4. WET-RCPSP/max: average relative deviation from lower bound fortest set UBO100.

Method 1.00 (%) 1.25 (%) 1.50 (%) 1.75 (%) 2.00 (%) 2.25 (%) 2.50 (%) Avg. (%)

TBS 15.72 9.88 7.15 4.92 4.16 3.08 2.46 6.77MPH 15.01 9.36 7.81 6.08 5.45 4.34 3.46 7.37ILS12 12.72 8.10 6.45 4.94 4.43 3.88 2.95 6.22ILS34 11.95 7.35 5.77 4.25 3.82 3.01 2.45 5.52ILS100 12.58 7.49 5.94 4.53 3.76 3.09 2.31 5.68ILS 11.60 6.86 5.47 3.93 3.36 2.69 1.91 5.12

ILS �¼ 25 12.20 6.96 5.52 4.03 3.41 2.60 1.83 5.23ILS �¼ 100 12.17 7.24 5.50 4.08 3.57 2.80 1.97 5.34

6245Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 18: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

than the schedule obtained by TBS, and vice versa for loose due dates. We also seethat both pairs of local search procedures contribute significantly to thesolution quality. Procedures LS3 and LS4 require more CPU time, but also contri-bute more to the solution quality than procedures LS1 and LS2.

Eventually, we remark that the (positive) effect of increasing the maximumnumber of iterations without improvement from 100 to 200 becomes larger withthe tightness of the due dates. Working with a smaller population size reduces(except for very loose due dates) the solution quality; a higher population size,however, also decreases the solution quality. Moreover, the impact of the populationsize on the CPU time requirements is much smaller than the impact of the maximumnumber of iterations without improvement.

4.2 Results for WET-RCPSP

Additionally, we compared our ILS heuristic with the branch-and-bound methodproposed by Vanhoucke et al. (2001) (abbreviated BBV in the following). Recallthat, in the latter method, only precedence constraints, but no general minimumand maximum time lags are considered (problem WET-RCPSP). Here, ourcomparison is based on the standard test sets j30 and j60 that were generatedby the project generator ProGen (Kolisch et al. 1995). Each test set consists of

Table 5. WET-RCPSP/max: average CPU time (s) required for test set UBO50.

Method 1.00 1.25 1.50 1.75 2.00 2.25 2.50 Avg.

TBS 18.14 18.77 18.42 17.63 18.59 16.79 12.64 17.28MPH 0.23 0.23 0.22 0.23 0.23 0.23 0.23 0.23ILS12 0.76 0.85 0.79 0.84 0.88 0.82 0.88 0.83ILS34 1.06 1.30 1.29 1.26 1.35 1.36 1.32 1.27ILS100 0.52 0.55 0.56 0.59 0.61 0.58 0.60 0.57ILS 0.83 0.89 0.93 0.97 0.98 1.05 1.04 0.96

ILS �¼ 25 0.70 0.69 0.76 0.82 0.89 0.86 0.84 0.79ILS �¼ 100 1.10 1.16 1.16 1.17 1.31 1.24 1.30 1.20

Table 6. WET-RCPSP/max: average CPU time (s) required for test set UBO100.

Method 1.00 1.25 1.50 1.75 2.00 2.25 2.50 Avg.

TBS 24.72 24.27 23.82 23.36 24.13 23.83 22.92 23.86

MPH 0.80 0.82 0.79 0.82 0.80 0.80 0.83 0.81ILS12 3.75 3.95 4.08 4.08 3.95 3.86 4.79 4.07ILS34 5.17 5.88 5.71 5.68 5.50 5.37 5.62 5.56ILS100 2.25 2.33 2.51 2.24 2.33 2.27 2.44 2.34ILS 4.04 4.31 4.09 4.05 4.31 4.25 4.59 4.24ILS �¼ 25 3.06 3.18 3.66 3.82 3.79 3.94 4.42 3.70ILS �¼ 100 4.66 5.03 4.76 4.85 4.86 4.72 5.05 4.85

6246 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 19: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

480 projects with 30 and 60 real activities. As reported by Vanhoucke et al. (2001), theweights were generated randomly according to a uniform distribution in setf0; 1, . . . ; 9g, and the due dates were generated as described above.

Tables 7 and 8 show the CPU times required and the number of instances solvedto feasibility by BBV. Again, the ILS heuristic solved all instances to feasibility.In contrast, for tight due dates, BBV does not always find a feasible solution.

For the instances that BBV solved to feasibility, table 9 shows the averagedeviation of the objective function value obtained by BBV from that obtained bythe ILS heuristic. For very loose due dates and small problem instances, BBV findssolutions with a slightly better objective function value, on average, than the ILSheuristic. In contrast, for tight due dates and larger problem instances, the ILSheuristic clearly outperforms BBV.

5. Conclusions

The subject of this paper is the scheduling problem WET-RCPSP/max. The problemis to determine the start times of project activities such that the total weightedearliness-tardiness cost is minimized, the prescribed minimum and maximum time

Table 7. WET-RCPSP: average CPU time (s) required.

Test set Method 1.00 1.25 1.50 1.75 2.00 2.25 2.50 Avg.

j30 ILS 0.19 0.18 0.18 0.17 0.17 0.17 0.16 0.17j30 BBV 7.36 5.67 3.68 2.66 2.00 1.54 0.98 3.41

j60 ILS 0.64 0.60 0.54 0.50 0.47 0.44 0.43 0.52j60 BBV 23.01 14.73 10.00 7.30 5.69 4.54 3.60 9.84

Table 8. WET-RCPSP: number of instances solved to feasibility by BBV.

Test set 1.00 1.25 1.50 1.75 2.00 2.25 2.50

j30 480 480 480 480 480 480 480j60 450 471 477 478 480 480 480

Table 9. WET-RCPSP: average relative deviation of objective function values.

Test set 1.00 (%) 1.25 (%) 1.50 (%) 1.75 (%) 2.00 (%) 2.25 (%) 2.50 (%) Avg. (%)

j30 3.67 3.78 2.08 2.03 1.03 �0.04 �0.08 1.78j60 12.14 11.23 11.13 11.64 8.14 �4.34 �2.96 8.80

6247Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 20: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

lags between the start times of activities are fulfilled, and the scarce capacity of theresources needed for the execution of the activities is never exceeded. This problem isof vital importance in the context of short-term planning of just-in-time productionand of rescheduling.

For the heuristic solution of this problem, we have proposed a new methodof the iterated-local-search type. We have presented problem-specific proceduresfor initializing a population of schedules, and for the local improvement andperturbation of schedules. In an experimental performance analysis, we havecompared our solution approach with the best methods known from the literaturefor the case of minimum and maximum time lags and for the case where onlyprecedence constraints are prescribed. It turns out that, in general, when using oursolution approach, one obtains better feasible solutions within shorter CPU times.

Van de Vonder et al. (2007) discuss in more detail how to use a simplified versionof our solution approach for reactive project scheduling. An area of future studywould be how our solution approach could be accelerated such that it could be used,for example, in the capable-to-promise module of an Advanced Planning System forSupply-Chain Management. Another important area of future research is theintegration of further resource types (e.g. storage facilities) into our approach.

Acknowledgements

The authors are very grateful for the many helpful comments and suggestions of thethree anonymous referees. This work was performed during the stay of the firstauthor at the Universitat Karlsruhe (Germany). This research was partiallysupported by the Ministerio de Ciencia y Tecnologıa (Spain) under contractTIC2002-02510.

References

Baker, K.R. and Scudder, G.D., Sequencing with earliness and tardiness penalties: a review.Oper. Res., 1990, 38, 22–36.

Ballestın, F. and Trautmann, N., A metaheuristic approach for the resource-constrainedweighted earliness-tardiness project scheduling problem, in 10th InternationalWorkshop on Project Management and Scheduling (PMS 2006), 2006, pp. 56–62.

Brucker, P., Drexl, A., Mohring, R., Neumann, K. and Pesch, E., Resource-constrainedproject scheduling: notation, classification, models, and methods. Eur. J. oper. Res.,1999, 112, 3–41.

Demeulemeester, E. and Herroelen, W., A branch-and-bound-procedure for the multipleresource-constrained project scheduling problem. Mgmt Sci., 1992, 38, 1803–1818.

Demeulemeester, E. and Herroelen, W., Project Scheduling: A Research Handbook, 2002(Kluwer: Boston).

Drexl, A., Scheduling of project networks by job assignment. Mgmt Sci., 1991, 37, 1590–1602.Herroelen, W., Demeulemeester, E. and De Reyck, B., A classification scheme for project

scheduling. In Project Scheduling—Recent Models, Algorithms and Applications, editedby J. Weglarz, pp. 1–26, 1998 (Kluwer: Boston).

Herroelen, W. and Leus, R., Robust and reactive project scheduling: a review and classifica-tion of procedures. Int. J. Prod. Res., 2004, 42, 1599–1620.

6248 F. Ballestın and N. Trautmann

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014

Page 21: An iterated-local-search heuristic for the resource-constrained weighted earliness-tardiness project scheduling problem

Keri, A. and Kis, T., Primal-dual combined with constraint propagation for solvingRCPSPWET. In Operations Research Proceedings 2006, edited by H. Haasis,H. Kopfer and J. Schonberger, pp. 685–690, 2006 (Springer: Berlin).

Kolisch, R., Sprecher, A. and Drexl, A., Characterization and generation of a general class ofresource-constrained project scheduling problems. Mgmt Sci., 1995, 41, 1693–1703.

Lourenco, H.R., Martin, O. and Stutzle, T., Iterated local search. In Handbook ofMetaheuristics, edited by F. Glover and G. Kochenberger, pp. 321–353, 2002(Kluwer: Boston).

Neumann, K. and Schwindt, C., Activity-on-node networks with minimal and maximal timelags and their application to make-to-order production. OR Spektrum, 1997, 19,205–218.

Neumann, K., Schwindt, C. and Trautmann, N., Advanced production scheduling for batchplants in process industries. OR Spectrum, 2002, 24, 251–279.

Neumann, K., Schwindt, C. and Zimmermann, J., Project Scheduling with Time Windows andScarce Resources, 2003 (Springer: Berlin).

Schwindt, C., Local search for project scheduling with convex objective functions, in 7thInternational Workshop on Project Management and Scheduling (PMS 2000), 2000a,pp. 239–241.

Schwindt, C., Minimizing earliness-tardiness costs of resource-constrained projects.In Operations Research Proceedings 1999, edited by K. Inderfurth, G. Schwodiauer,W. Domschke, F. Juhnke, P. Kleinschmidt and G. Wascher, pp. 402–407, 2000b(Springer: Berlin).

Schwindt, C., Resource Allocation in Project Management, 2005 (Springer: Berlin).Serafini, P. and Speranza, M.G., A decomposition approach for a resource-constrained

project scheduling problem. Eur. J. Oper. Res., 1994a, 75, 112–135.Serafini, P. and Speranza, M.G., A decomposition approach in a DSS for a resource

constrained scheduling problem. Eur. J. Oper. Res., 1994b, 79, 208–219.Van de Vonder, S., Ballestın, F., Demeulemeester, E. and Herroelen, W., Heuristic procedures

for reactive project scheduling. Comput. Ind. Engng, 2007, 52, 11–28.Vanhoucke, M., Demeulemeester, E. and Herroelen, W., An exact procedure for the resource-

constrained weighted earliness-tardiness project scheduling problem. Ann. Oper. Res.,2001, 102, 179–196.

Valls, V., Quintanilla, S. and Ballestın, F., Resource-constrained project scheduling: a criticalactivity reordering heuristic. Eur. J. Oper. Res., 2003, 149, 282–301.

6249Weighted earliness-tardiness project scheduling

Dow

nloa

ded

by [

Que

ensl

and

Uni

vers

ity o

f T

echn

olog

y] a

t 18:

09 0

6 N

ovem

ber

2014