the multi-mode resource-constrained multi-project scheduling problem

13
J Sched DOI 10.1007/s10951-014-0402-0 The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem The MISTA 2013 challenge Tony Wauters · Joris Kinable · Pieter Smet · Wim Vancroonenburg · Greet Vanden Berghe · Jannes Verstichel Received: 30 November 2013 / Accepted: 28 October 2014 © Springer Science+Business Media New York 2014 Abstract Scheduling projects is a difficult and time con- suming process, and has far-reaching implications for any organization’s operations. By generalizing various aspects of project scheduling, decision makers are enabled to cap- ture reality and act accordingly. In the context of the MISTA 2013 conference, the first MISTA challenge, organized by the authors, introduced such a general problem model: the Multi-Mode Resource-Constrained Multi-Project Schedul- ing Problem (MRCMPSP). The present paper reports on the competition and provides a discussion on its results. Further- more, it provides an analysis of the submitted algorithms, and a study of their common elements. By making all bench- mark datasets and results publicly available, further research on the MRCMPSP is stimulated. Keywords Project scheduling · Multi-mode · Multi- project · Heuristics · Competition 1 Introduction Project scheduling is well known in operations research and management, and has been the subject of intensive research since the late fifties. It has seen many practical applications, ranging from high-level scheduling of software projects and construction projects to fine-grained scheduling of machine operations on a production floor [e.g. scheduling orders in a food production facility (Wauters et al. 2012)]. However, the T. Wauters (B ) · J. Kinable · P. Smet · W. Vancroonenburg · G. Vanden Berghe · J. Verstichel Department of Computer Science, CODeS-iMinds-ITEC, KU Leuven, Gebroeders De Smetstraat 1, 9000 Gent, Belgium e-mail: [email protected] classical Resource-Constrained Project Scheduling Problem (RCPSP) is not general enough to model all aspects of a real- world problem. Therefore, many extensions to the RCPSP have been presented in the literature, such as min/max time lags, multi-mode, multi-skill, etc. The MISTA 2013 challenge, organized along with the MISTA 2013 conference, tries to encourage research on a new general project scheduling problem: the Multi-Mode Resource-Constrained Multi-Project Scheduling Problem (MRCMPSP). Multiple projects have to be scheduled simul- taneously, while taking into account the availability of local and global resources. The MRCMPSP has a considerable practical relevance, especially in the construction and pro- duction sectors. The challenge results in a new benchmark for the MRCMPSP by releasing public instances, a solution validator, an instance generator and state-of-the-art results. The MRCMPSP is attractive for its simple problem descrip- tion and the lack of complicated constraints to express and evaluate. It therefore requires relatively limited modelling effort, which enables competitors and future researchers to focus on developing powerful algorithms and on the intrin- sic scheduling complexity. The MISTA 2013 challenge is, as far as the authors know, the first academic project scheduling competition. A large international audience has been reached (Fig. 1): 21 teams from 14 countries and 3 continents sub- mitted algorithms. Teams were compared on a benchmark PC with a fixed time limit. Challenges/competitions are important for stimulating research on particular problems or problem domains. Exam- ples of such challenges are the international timetabling com- petitions (ITC 2002, ITC 2007, ITC 2011) (McCollum et al. 2007; Post et al. 2013), the nurse rostering competition (Haspeslagh et al. 2012), the ROADEF challenge series (Sol- non et al. 2008) and the cross-domain heuristic search chal- lenge (CHeSC 2011) (Burke et al. 2011). 123

Upload: jannes

Post on 30-Mar-2017

224 views

Category:

Documents


10 download

TRANSCRIPT

Page 1: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J SchedDOI 10.1007/s10951-014-0402-0

The Multi-Mode Resource-Constrained Multi-Project SchedulingProblemThe MISTA 2013 challenge

Tony Wauters · Joris Kinable · Pieter Smet ·Wim Vancroonenburg · Greet Vanden Berghe ·Jannes Verstichel

Received: 30 November 2013 / Accepted: 28 October 2014© Springer Science+Business Media New York 2014

Abstract Scheduling projects is a difficult and time con-suming process, and has far-reaching implications for anyorganization’s operations. By generalizing various aspectsof project scheduling, decision makers are enabled to cap-ture reality and act accordingly. In the context of the MISTA2013 conference, the first MISTA challenge, organized bythe authors, introduced such a general problem model: theMulti-Mode Resource-Constrained Multi-Project Schedul-ing Problem (MRCMPSP). The present paper reports on thecompetition and provides a discussion on its results. Further-more, it provides an analysis of the submitted algorithms,and a study of their common elements. By making all bench-mark datasets and results publicly available, further researchon the MRCMPSP is stimulated.

Keywords Project scheduling · Multi-mode · Multi-project · Heuristics · Competition

1 Introduction

Project scheduling is well known in operations research andmanagement, and has been the subject of intensive researchsince the late fifties. It has seen many practical applications,ranging from high-level scheduling of software projects andconstruction projects to fine-grained scheduling of machineoperations on a production floor [e.g. scheduling orders in afood production facility (Wauters et al. 2012)]. However, the

T. Wauters (B) · J. Kinable · P. Smet · W. Vancroonenburg ·G. Vanden Berghe · J. VerstichelDepartment of Computer Science, CODeS-iMinds-ITEC,KU Leuven, Gebroeders De Smetstraat 1, 9000 Gent, Belgiume-mail: [email protected]

classical Resource-Constrained Project Scheduling Problem(RCPSP) is not general enough to model all aspects of a real-world problem. Therefore, many extensions to the RCPSPhave been presented in the literature, such as min/max timelags, multi-mode, multi-skill, etc.

The MISTA 2013 challenge, organized along with theMISTA 2013 conference, tries to encourage research on anew general project scheduling problem: the Multi-ModeResource-Constrained Multi-Project Scheduling Problem(MRCMPSP). Multiple projects have to be scheduled simul-taneously, while taking into account the availability of localand global resources. The MRCMPSP has a considerablepractical relevance, especially in the construction and pro-duction sectors. The challenge results in a new benchmarkfor the MRCMPSP by releasing public instances, a solutionvalidator, an instance generator and state-of-the-art results.The MRCMPSP is attractive for its simple problem descrip-tion and the lack of complicated constraints to express andevaluate. It therefore requires relatively limited modellingeffort, which enables competitors and future researchers tofocus on developing powerful algorithms and on the intrin-sic scheduling complexity. The MISTA 2013 challenge is, asfar as the authors know, the first academic project schedulingcompetition. A large international audience has been reached(Fig. 1): 21 teams from 14 countries and 3 continents sub-mitted algorithms. Teams were compared on a benchmarkPC with a fixed time limit.

Challenges/competitions are important for stimulatingresearch on particular problems or problem domains. Exam-ples of such challenges are the international timetabling com-petitions (ITC 2002, ITC 2007, ITC 2011) (McCollum etal. 2007; Post et al. 2013), the nurse rostering competition(Haspeslagh et al. 2012), the ROADEF challenge series (Sol-non et al. 2008) and the cross-domain heuristic search chal-lenge (CHeSC 2011) (Burke et al. 2011).

123

Page 2: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

111 713713713

Fig. 1 World map of MISTA challenge website visits by country (image courtesy of Google Analytics)

The present paper is structured as follows: Section 2 intro-duces the MRCPSP and gives a formal definition of the prob-lem, its constraints and objectives. Section 3 describes thecompetition format, the different phases, test setup and finalranking. Section 4 provides a detailed analysis and discus-sion of the competition results and submitted algorithms. Aconclusion and future perspectives are given in Sect. 5.

2 Problem description

The MRCMPSP is a generalization of the (single-mode)RCPSP in two ways (Fig. 2). First, jobs can be executed

Fig. 2 RCPSP generalization hierarchy

in multiple modes (MRCPSP), and second, multiple projectshave to be scheduled simultaneously while sharing resources(RCMPSP). These modes allow including time/cost, time/re-source and resource/resource trade-offs. The RCPSP wasproven to be NP-hard (Blazewicz et al. 1983), consequentlythe MRCMPSP is also NP-hard. Moreover, the problem offinding a feasible mode assignment subject to more than onenon-renewable resource constraint is NP-complete (Kolischand Drexl 1997).

2.1 Projects and activities

A set P of n projects has to be scheduled, under the restric-tion of several time and resource constraints. The projects areidentified by their index i ∈ P , with P = {0, . . . , n − 1}.Each project i ∈ P consists of a set of non-preemptive jobsor activities Ji . For each activity j ∈ {1, . . . , |Ji |} of projecti , a start time si j ≥ 0 has to be determined. The first andlast activities of the projects ( j = 0, resp. j = |Ji | + 1) aredummy activities, which have a zero duration and no resourcerequirements. Each project i ∈ P has a release date ri , i.e.the earliest time at which the activities of project i can start(si0 ≥ ri ).

123

Page 3: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

2.2 Local and global resources

A set Li = Lρi ∪ Lν

i of resources is associated with eachproject i ∈ P , where the subset Lρ

i = {1, . . . , |Lρi |}

denotes the local renewable resources and Lνi = {|Lρ

i | +1, . . . , |Lρ

i | + |Lνi |} the non-renewable resources. Renew-

able resources have a fixed capacity per time unit, while thenon-renewable resources have a fixed capacity over the entireproject duration. Each resource l ∈ Li has a fixed capacityof cil .

Finally, a set Gρ of global renewable resources is sharedamong the projects. Similar to the local resources, the avail-ability of the global resources is limited by cρ

g , g ∈ Gρ .There are no global non-renewable resources.

2.3 Execution modes

For each activity j ∈ Ji , i ∈ P , one or more executionmodes are available. The execution mode in which an activityis performed determines both the time required to completethe activity, as well as the specific resource requirements.Let Mi j = {1, . . . , |Mi j |} be the set of possible modes inwhich activity j ∈ Ji , i ∈ P , can be performed, and di jm

the processing time of activity j ∈ Ji in mode m ∈ Mi j .The constants rρ

i jml , rνi jml and rρ

i jmg , respectively, define theconsumption of local renewable, non-renewable and globalrenewable resources when activity j ∈ Ji is processed inmode m ∈ Mi j .

Note that a feasible schedule must always adhere to thefollowing resource constraints:

j∈Ji

m∈Mi j

xi j t yi jm rρi jml ≤ cil ∀i ∈ P, l ∈ Lρ

i ,

t ∈ [0, T ](1)

j∈Ji

m∈Mi j

yi jm rνi jml ≤ cil ∀i ∈ P, l ∈ Lν

i

(2)∑

i∈P

j∈Ji

m∈Mi j

xi j t yi jm rρi jmg ≤ cg ∀g ∈ Gρ, t ∈ [0, T ]

(3)∑

m∈Mi j

yi jm = 1 ∀i ∈ P, j ∈ Ji

(4)

xi j t ∈ {0, 1} ∀i ∈ P, j ∈ Ji ,

m ∈ Mi j , t ∈ [0, T ](5)

yi jm ∈ {0, 1} ∀i ∈ P, j ∈ Ji ,

m ∈ Mi j

(6)

where binary variables xi j t indicate whether a particularactivity j ∈ Ji is performed at time t ∈ [0, T ], while binaryvariables yi jm denote whether activity j ∈ Ji runs in modem ∈ Mi j . T is an upper bound on the time horizon of thescheduling problem.

2.4 Precedence constraints

Certain activities may require the completion of other tasksprior to their own start. In such a case, if activity j ∈ Ji

must precede activity j ′ ∈ Ji , a precedence relation j ≺j ′ is defined. Feasible schedules must obey all precedencerelations:

si j +∑

m∈Mi j

yi jmdi jm ≤ si j ′ i f j ≺ j ′ (7)

pred( j) denotes the predecessor set of activity j , i.e.pred( j) = { j ′| j ′ ≺ j}.

2.5 Objectives

The objective is to find a feasible schedule while minimiz-ing the total project delay (TPD) (Sect. 2.5.1) and the totalmakespan (TMS) (Sect. 2.5.2). The two objectives are con-sidered in lexicographical order, where TPD is the primaryobjective, while TMS is used as a tie breaker.

2.5.1 Total project delay (TPD)

The project delay is defined as the difference between thecritical path duration (CPD), a theoretical lower bound onthe earliest finish time of the project, and the actual projectduration (makespan). More formally, the project delay (PDi)for a project i ∈ P is defined as:

PDi = MSi − CPDi

where MSi , the makespan of project i , is:

MSi = fi − ri with fi = si(|Ji |+1).

and CPDi , the critical path duration1 of project i , is:

CPDi = EFi(|Ji |+1),

where EFi j is the earliest finish time of activity j ∈ Ji , whichis recursively defined as:

EFi0 = 0 ∀i ∈ P

EFi j = maxj ′∈pred( j)

(E Fi j ′) + minm

(di jm) ∀i ∈ P, j > 0

1 Values for the critical path duration of the projects are provided in theinput file.

123

Page 4: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

Finally, the TPD is expressed as:

TPD =n∑

i=1

PDi

2.5.2 Total makespan (TMS)

The TMS is the duration of the whole multi-project schedule.

T M S = maxi∈P

( fi ) − mini∈P

(ri )

3 Competition

The initial announcement of the MISTA 2013 challengeattracted 21 teams to register for the competition. The major-ity of participants were affiliated with academic institutions,whereas only three teams were affiliated with industry. Thecompetition’s rules did not stipulate any restrictions on howan algorithm could obtain a solution. The only requirementsfor the approach were that the code was executable by theorganizers, and that it was either completely free or free underacademic licencing.

The competition consisted of three phases. The teams wereprovided with a first dataset to guide the initial developmentof their algorithms (A instances). Problem size in the firstdataset ranged from 2 projects and 10 activities per projectto 10 projects and 30 activities per project. Three monthsafter the competition’s announcement, the teams were askedto submit their approach in order to determine the qualifyingteams for the next phase. The qualification criteria consistedof executable software that was able to produce feasible solu-tions for the initial dataset within a time limit of 5 min. 16out of the 21 registered teams qualified for the second phase.

After the announcement of the qualification results, asecond set, containing larger instances, was published (Binstances). The problem size varied between instances with10 projects and 10 activities per project and instances with20 projects and 30 activities per project. Again, the partici-pants had 3 months to fine-tune their approaches, given thenew dataset and the best obtained solutions from the quali-fications phase. At the end of this second phase, 9 out of 16teams submitted an algorithm for the final phase.

In the last phase, the performance of the final submissionswas evaluated. The final ranking was determined by run-ning each participant’s algorithm ten times on all instancesfrom the second dataset and an additional hidden dataset (Xinstances), with instances of similar size as the B instances.These experiments were executed by the organizers on a

Table 1 Final ranking

Rank Team ID Members Mean rank

1 11 Asta et al. (2013) 1.10

2 8 Geiger (2013) 2.55

3 1 Toffolo et al. (2013) 3.05

4 20 Artigues and Hebrard (2013) 3.60

5 15 Alonso-Pecina et al. (2013) 6.75

5 13 Borba et al. (2013) 6.75

5 17 López-Ibáñez et al. (2013) 6.75

8 14 Bouly et al. (2013) 6.85

9 21 Schnell (2013) 7.60

recent desktop pc2, with a time limit3 of 5 min per instance.For each instance, the algorithms were ranked based on theaverage of all runs. Finally, the ranks were averaged over allinstances per team. Table 1 shows the final results.

Additional details on the competition rules, the datasetsand general information regarding the competition can befound at the competition web page (Wauters et al. 2013).

3.1 Instance generation

Instances of this new MRCMPSP have been generatedby combining multiple MRCPSP instances from PSPLIB.Release dates and global resources had to be added. Therelease dates are generated using a poisson process, i.e. theproject inter arrival times are exponentially distributed withλ = 0.2. The release date of the first project is always r0 = 0.One of the two renewable resources is a global resourcewith a 2/3 probability. The capacity of the global renew-able resources has been set to a value between 50 and 100%of the local renewable resource capacity. To guarantee fea-sibility the capacity should be at least 10, i.e. in the PSPLibfiles, there are jobs with a resource consumption of 10. Thefollowing formula is applied:

cρg = max

(C APmax

5 + rand(6)

10, 10

),

where C APmax is the maximum capacity of the correspond-ing local renewable resources and rand(6) is a uniform ran-dom number between 0 (inclusive) and 6 (exclusive). Theinstance generator is available for download on the compe-tition web page.

2 Intel Core i7-2600 at 3.4 Ghz and 8 GB RAM with hyper-threading,turbo boost and energy saver disabled. ITC2011 benchmark tool score:619 s.3 The time limit was checked by measuring the wall clock time of thealgorithms. The algorithm should stop autonomously within the timelimit. Small deviations of less than 0.1 s were allowed.

123

Page 5: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

4 Discussion

4.1 Detailed results

Table 2 gives an overview of the detailed results per team andper instance, averaged over 10 runs. This produced the finalranking (by mean rank over all instances) shown in Table 3. Itis clear that the competition’s final winner, team 11, producedthe best average results over all instances, except for instancesB-2 and X-1. The second and third ranking positions weremore contested, with team 1, team 8 and team 20 alternatinglyproducing second and third best results (Table 4).

Figure 3 shows box plots of each team’s results perinstance, giving an indication of the spread of the results.It is clear that teams 13, 14, 15, 17 and 21 in general have alarger spread of results per instance, indicating their methodsare either more susceptible to random events or possibly notyet converged after the time limit is reached. Team 1, 8, 11and 20 generally have a low spread of the results; in partic-ular team 20 has a spread of 0 for all instances because thesubmission always produces the same result.

The final ranking method, by mean rank over all instances,was decided as the scoring system at the onset of the compe-tition. Any scoring system is biased in one way or another,e.g. the ranking transformation discards information on therelative performance among submissions on each instance.In order to investigate how the scoring system influenced thefinal results, different scoring systems were tested. In addi-tion to ranking by mean rank, the following systems werecompared:

– Ranking by mean: ranks according to the mean of theaveraged results over all instances. This system is biasedby the difference in magnitude of the objective functionvalue between instances: larger instances will typicallyhave a higher magnitude of objective function value, andthus will contribute more to the mean. Scoring well onlarge instances is thus important. However, the relativeperformance among submissions per instance is not lost.

– Ranking by geometric mean: ranks according to the geo-metric mean of the averaged results over all instances.This system is less biased by the difference in magni-tude of the instance objective function value, and alsomaintains information on relative performance betweensubmissions per instance.

– Ranking by total F1-score: this scoring system is adoptedfrom Formula 1 racing point system (before 2010),and was used by the CHeSC 2011 competition (Burkeet al. 2011). For each instance, the submissions areattributed points from 10 to 0. The highest average resultis attributed 10 points, the second highest 8, the third 6,and finally 5, 4, 3, 2 and 1 to the remaining results inthat order. The total number of points over all instances

is then used to rank the submissions. Since the attribut-ion of points is essentially a ranking transformation, rel-ative performance between submissions per instance islost. Furthermore, the method is biased towards the bestresults per instance.

– Ranking by mean best rank: this method differs fromthe competition ranking method by computing the ranksper instance based on the best result produced by eachsubmission, rather than their averaged result. Therefore,this method considers the ‘best’ results for any submis-sion, but may be biased by ‘lucky results’, and also losesinformation on relative performance between teams perinstance. A summary of the best results found for allinstances and teams can be found in Table 5.

– Ranking by mean rank over all runs: this methodattributes a rank per instance to each run of all teams(i.e. a rank between 1 and 90 as there were 9 fully fea-sible teams and 10 runs with different random seed perteam). Next, a mean rank is computed per team by com-puting the average rank over all instances and all runs ofthis team.

These 6 different scoring systems produce the final ranks4

shown in Table 4. It is clear that the order of the best foursubmissions (Teams 1, 8, 11, and 20) is stable to the consid-ered scoring mechanisms. However, there are some changesbetween positions 5 through 8, differentiating the teams rank-ing 5th according to the mean rank. It becomes apparent thatteam 17 produced better results than the other two teams atrank 5.

4.2 Properties of submitted algorithms

A variety of methods have been submitted to the MISTA2013 challenge.

Toffolo et al. (2013) (Team 1) use a decomposition-basedmatheuristic. The approach considers resolution of severalinteger programming (IP) models, in three different stages.A feasible set of execution modes for the jobs is obtained,in the first stage. The second stage decomposes the probleminto time windows. Each time window is solved with an IPmodel, considering the execution modes obtained from thefirst stage. The result of the second stage is a feasible solution,which is improved in the final stage by a hybrid local searchbased on forward-backward improvement (Lova et al. 2009;Valls et al. 2005) and an IP model to perform controlledchanges to the solution.

4 Details on how all these ranks were calculated can be reviewedin the detailed Google Docs Sheet, containing all results, athttps://docs.google.com/spreadsheet/ccc?key=0Ar3CEQ-QxKb6dHZqbG9xNC0tUlN5UV95aGRsZFYyZHcq&usp=sharing.

123

Page 6: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

Tabl

e2

Ave

rage

resu

ltspe

rin

stan

cefo

rsu

bmis

sion

sto

the

MIS

TAco

mpe

titio

n

Inst

ance

Bes

tfo

und

(Tea

m)

Team

1Te

am2

Team

8Te

am11

Team

13Te

am14

Team

15Te

am17

Team

18Te

am20

Team

21

B-1

3490

0127

(11)

3665

0131

.646

2601

36.0

3595

0130

.235

1801

28.0

3839

0132

.245

2501

38.4

3978

0131

.145

4501

34.2

3685

0127

.343

2001

28.0

4455

0144

.9

B-2

4340

0160

(1)

4448

0161

.559

6101

60.9

5260

0176

.745

4301

68.1

7752

0169

.256

8601

72.8

8082

0172

.960

4401

67.5

–52

6001

53.0

5342

0171

.0

B-3

5450

0210

(11)

6652

0208

.172

8602

1361

8802

16.5

5540

0211

.071

2002

20.5

7353

0226

.176

4202

22.8

7353

0221

.364

7402

09.5

6380

0205

7472

0228

.5

B-4

1274

0028

9(8

)15

7360

300.

5–

1316

5028

6.8

1305

4028

4.4

1822

6029

3.7

1670

4030

4.0

1771

0029

3.1

1695

6031

0.8

1609

7028

5.3

1469

0029

7.0

1777

7032

7.3

B-5

8200

0254

(11)

9309

0254

.712

3160

257.

388

9002

62.7

8326

0254

.311

3860

266.

911

0460

282

1111

0026

1.2

1165

0026

8.7

1038

6025

6.6

1075

0024

9.0

1280

6030

5.2

B-6

9120

0227

(11)

1150

8023

3.6

1136

9023

5.1

1103

7024

6.9

9527

0231

.712

9010

257.

814

5570

288.

713

6300

267.

913

2000

247.

011

5480

233.

810

8300

217.

012

8680

266.

6

B-7

7920

0228

(11)

9314

0244

.1–

8513

0236

.080

1102

32.1

1027

9024

2.5

1134

1026

2.2

9982

0237

.611

2880

268.

692

5802

32.3

9050

0231

.014

0970

289.

7

B-8

3176

0053

3(1

1)33

5130

533.

763

4320

579.

237

3480

573.

633

1440

547.

747

9160

566.

143

0380

588.

451

8640

593.

139

2940

583.

448

9190

549.

336

6200

528.

039

0210

610.

2

B-9

4192

0074

6(1

1)54

3180

771.

0–

4793

5080

7.2

4263

5075

5.4

8090

1084

9.1

9124

7116

7.6

7275

5081

7.3

6037

6085

4.2

6200

1078

3.2

5465

0074

675

0791

055.

6

B-1

032

4900

456

(11)

3404

2043

9.5

4080

5047

3.9

3682

3047

6.8

3337

8045

9.6

4599

7048

2.2

3823

4050

7.2

4832

6049

1.5

4366

9048

6.2

4210

2045

2.8

4034

3042

7.0

3621

3046

9.4

X-1

3920

0142

(1)

4029

0143

.970

9901

49.9

4171

0143

.740

4901

42.4

6181

0148

.549

8501

54.8

5417

0151

.150

2701

48.9

4392

0148

.147

8001

44.0

5095

0160

.9

X-2

3490

0163

(11)

4374

0169

.845

1801

64.9

3828

0168

.435

7001

64.1

4333

0169

.345

1501

75.1

4515

0167

.552

0001

79.0

4153

0164

.342

3001

59.0

6674

0203

.3

X-3

3240

0192

(11)

3394

0189

.541

5601

87.4

3924

0195

.533

0401

93.2

4391

0192

.648

3102

05.5

4552

0187

.946

0301

96.0

4113

0183

.139

1001

86.0

5191

0205

.9

X-4

9550

0213

(11)

1013

1020

8.0

1346

3021

1.2

1010

8021

2.7

9706

0212

.311

6900

219.

612

0890

220.

312

3080

218.

910

8620

210.

510

2820

207.

510

5400

198.

012

1490

229.

5

X-5

1768

0037

4(1

1)20

8560

378.

827

2290

390.

619

6940

389.

717

8450

373.

023

2370

397.

424

0170

430.

623

0450

380.

824

5070

401.

922

1130

378.

420

7650

367.

026

8910

482.

6

X-6

7190

0232

(11)

9356

0246

.810

4840

244.

989

3102

55.1

7384

0240

.913

7740

266.

410

7710

284.

311

1760

248.

812

3840

278.

395

3802

31.0

8725

0214

.017

8060

328.

1

X-7

8610

0237

(11)

9701

0236

.714

0710

242.

289

6902

36.6

8675

0235

.511

8030

243.

212

3960

253.

311

5720

241.

112

6470

268.

698

1302

31.3

9930

0229

.013

5930

286.

3

X-8

1233

0028

3(1

1)15

0420

291.

720

5300

295.

614

6040

305.

812

5720

289.

318

4310

313.

818

5130

356.

318

3070

302.

317

3170

312.

614

8130

286.

716

6050

270.

026

4200

376.

3

X-9

3268

0064

3(1

1)42

2520

660.

067

2350

739.

437

8050

691.

933

0320

647.

159

2750

739.

667

0700

995.

651

6180

699.

452

8240

754.

049

2920

681.

751

3000

635.

062

0020

908.

0

X-1

016

0000

381

(11)

1870

4038

5.5

–17

4720

399.

516

1440

382.

326

0000

414.

020

7090

441.

024

1140

400.

225

9690

429.

121

9410

395.

419

7400

376.

037

8300

597.

7

Mea

n13

6060

304.

516

0172

309.

5–

1541

3032

0.6

1389

7880

7.6

2127

1632

9.2

2118

1387

2.7

2058

5182

4.3

1928

5783

6.0

–17

1709

298.

021

9390

882.

4

Geo

m.

9892

0555

.111

4261

313.

6–

1110

7724

4.1

1010

4331

9.3

1443

0758

3.4

1408

0157

8.2

1420

3210

6.4

1390

8662

1.6

–12

1054

656.

915

5392

199.

6

mea

n

F1-s

core

126

–14

219

645

4345

45–

110

28

Res

ults

are

aver

aged

over

10ru

nsw

ithdi

ffer

ents

eeds

for

each

inst

ance

.Bol

dhi

ghlig

htin

gin

dica

tes

the

best

aver

age

resu

ltpe

rin

stan

ce.D

ashe

sin

dica

tein

feas

ible

resu

ltsge

nera

ted

for

atle

asto

neru

n

123

Page 7: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

Table 3 Ranking per instance based on the averaged result per submission of the final phase

Instance Team 1 Team 8 Team 11 Team 13 Team 14 Team 15 Team 17 Team 20 Team 21

B-1 3 2 1 4 8 5 9 6 7

B-2 1 4 2 8 6 9 7 3 5

B-3 4 2 1 5 7 9 6 3 8

B-4 4 2 1 9 5 7 6 3 8

B-5 3 2 1 7 5 6 8 4 9

B-6 4 3 1 6 9 8 7 2 5

B-7 4 2 1 6 8 5 7 3 9

B-8 2 4 1 8 7 9 6 3 5

B-9 3 2 1 8 9 6 5 4 7

B-10 2 4 1 8 5 9 7 6 3

X-1 1 3 2 9 5 8 6 4 7

X-2 5 2 1 4 7 6 8 3 9

X-3 2 4 1 5 8 6 7 3 9

X-4 3 2 1 6 7 9 5 4 8

X-5 4 2 1 6 7 5 8 3 9

X-6 4 3 1 8 5 6 7 2 9

X-7 3 2 1 6 7 5 8 4 9

X-8 3 2 1 7 8 6 5 4 9

X-9 3 2 1 7 9 5 6 4 8

X-10 3 2 1 8 5 6 7 4 9

Average rank 3.05 2.55 1.10 6.75 6.85 6.75 6.75 3.60 7.60

Final rank 3 2 1 5 8 5 5 4 9

Ties are resolved by the average rank. Bold highlighting indicates best rank. Note that team 2 and team 18 are not ranked due to infeasible results

Table 4 Ranking results of final submissions by different ranking methods

Ranking method. Team

1 8 11 13 14 15 17 20 21

Mean 3 2 1 8 7 6 5 4 9

Geom. Mean 3 2 1 8 6 7 5 4 9

Mean ranka 3 2 1 6 8 6 6 4 9

F1 score 3 2 1 6 8 6 6 4 9

Best rank 3 2 1 7 5.5 5.5 8 4 9

Mean over all 3 2 1 8 6 7 5 4 9

runs rank

Considered methods: ranking by mean over all instances, ranking by geometric mean over all instances, ranking by mean rank over all instances,ranking by F1-score, ranking by mean best rank, ranking by mean over all runs rank. Bold highlights indicate best rankeda Competition ranking method

Geiger (2013) (Team 8) proposes an iterated variableneighbourhood search with four different neighbourhoods:exchange, inversion, single mode change and double modechange. Random initial solutions are generated with an addi-tional mode repair procedure. A serial schedule generationscheme (SSGS) constructs schedules with a given activitylist and mode assignment.

Asta et al. (2013) (Team 11) apply a combination ofMonte-Carlo Tree Search (MCTS) and hyper-heuristics.MCTS first partitions the projects from which their order-ing is then determined. An initial solution is constructedby randomly scheduling the activities in each project, whileonly taking into account the precedence constraints. A multi-threaded hyper-heuristic with threshold acceptance is used

123

Page 8: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

B1 B2 B3 B4

B5 B6 B7 B8

B9 B10 X1 X2

X3 X4 X5 X6

X7 X8 X9 X10

3.5e+07

4.0e+07

4.5e+07

5e+07

6e+07

7e+07

8e+07

6e+07

7e+07

8e+07

1.4e+08

1.6e+08

1.8e+08

8.0e+07

1.0e+08

1.2e+08

1.4e+08

1.0e+08

1.2e+08

1.4e+08

1.6e+08

8.0e+07

1.0e+08

1.2e+08

1.4e+08

1.6e+08

3.5e+08

4.0e+08

4.5e+08

5.0e+08

5.5e+08

4e+08

6e+08

8e+08

1e+09

3.5e+08

4.0e+08

4.5e+08

5.0e+08

4.0e+07

4.5e+07

5.0e+07

5.5e+07

6.0e+07

4e+07

5e+07

6e+07

7e+07

3.5e+07

4.0e+07

4.5e+07

5.0e+07

5.5e+07

1.0e+08

1.1e+08

1.2e+08

1.3e+08

1.75e+08

2.00e+08

2.25e+08

2.50e+08

2.75e+08

1.0e+08

1.5e+08

1.0e+08

1.2e+08

1.4e+08

1.5e+08

2.0e+08

2.5e+08

3.0e+08

4e+08

5e+08

6e+08

7e+08

8e+08

1.5e+08

2.0e+08

2.5e+08

3.0e+08

3.5e+08

4.0e+08

1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21

1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21

1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21

1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21

1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21 1 8 11 13 14 15 17 20 21Team

Res

ult

Fig. 3 Summarizing boxplots of participants’ results per instance

123

Page 9: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

Tabl

e5

Bes

tres

ults

per

inst

ance

and

per

team

for

subm

issi

ons

toth

eM

ISTA

com

petit

ion

Inst

ance

Bes

tfo

und

(Tea

m)

Team

1Te

am2

Team

8Te

am11

Team

13Te

am14

Team

15Te

am17

Team

18Te

am20

Team

21

B-1

3490

0127

(11)

3630

0132

4380

0133

3530

0125

3490

0127

3810

0133

4200

0139

3710

0127

4250

0133

3610

0130

4320

0128

4150

0144

B-2

4340

0160

(1)

4340

0160

5540

0164

4900

0176

4430

0167

7560

0165

5280

0170

7900

0174

5840

0160

5370

0161

5260

0153

5160

0168

B-3

5450

0210

(11)

6600

0207

6940

0218

5980

0215

5450

0210

6760

0221

6980

0225

6930

0214

6840

0225

6210

0211

6380

0205

7270

0222

B-4

1274

0028

9(8

)15

4800

295

1986

0030

012

7400

289

1292

0028

717

6600

294

1582

0030

816

7100

287

1657

0030

815

6800

283

1469

0029

716

8000

315

B-5

8200

0254

(11)

9190

0254

1054

0025

586

6002

5482

0002

5410

7300

263

1059

0029

910

6100

255

1106

0027

010

0000

254

1075

0024

911

9700

305

B-6

9120

0227

(11)

1128

0023

210

9700

235

1044

0024

291

2002

2712

3900

257

1360

0030

912

8600

259

1287

0024

811

1900

230

1083

0021

712

2100

253

B-7

7920

0228

(11)

9080

0246

1348

0024

283

4002

3479

2002

2894

4002

3910

5100

254

9160

0228

1106

0027

090

3002

3390

5002

3112

5500

267

B-8

3176

0053

3(1

1)32

7600

529

6010

0056

635

8500

568

3176

0053

345

9100

544

4025

0054

949

5900

584

3755

0057

847

2800

533

3662

0052

835

7400

588

B-9

4192

0074

6(1

1)53

7300

769

7875

0085

146

7400

796

4192

0074

675

7700

837

7914

0117

669

9600

812

5979

0085

161

3000

779

5465

0074

670

4201

024

B-1

032

4900

456

(11)

3325

0044

738

5000

472

3518

0046

932

4900

456

4516

0047

236

9700

510

4550

0048

343

2400

487

4133

0045

240

3300

427

3420

0047

4

X-1

3920

0142

(1)

3920

0142

6370

0150

3940

0142

3980

0142

5880

0152

4520

0148

4860

0150

4680

0149

4320

0149

4780

0144

4960

0156

X-2

3490

0163

(11)

4180

0165

4020

0163

3680

0165

3490

0163

4070

0170

4150

0166

4310

0162

4990

0177

4010

0163

4230

0159

5960

0189

X-3

3240

0192

(11)

3260

0188

3940

0187

3720

0195

3240

0192

4140

0189

4180

0202

4180

0182

4440

0195

3880

0183

3910

0186

4920

0204

X-4

9550

0213

(11)

9860

0207

1226

0021

197

0002

1595

5002

1311

3000

213

1126

0021

111

3300

210

1064

0020

898

8002

0410

5400

198

1136

0023

5

X-5

1768

0037

4(1

1)20

4300

375

2528

0038

919

3800

386

1768

0037

421

9800

378

2208

0042

322

3600

376

2337

0040

621

7600

373

2076

0036

725

3900

464

X-6

7190

0232

(11)

8800

0240

9340

0240

8440

0253

7190

0232

1151

0025

310

1200

282

1008

0024

511

7000

269

9190

0226

8720

0214

1613

0031

7

X-7

8610

0237

(11)

9440

0234

1327

0024

287

9002

3186

1002

3711

5500

238

1106

0024

510

2900

235

1217

0027

195

3002

3099

3002

2912

4500

276

X-8

1233

0028

3(1

1)14

7800

289

1891

0029

913

8000

296

1233

0028

317

5600

308

1733

0035

715

7800

298

1687

0031

114

3500

282

1656

0027

023

3700

358

X-9

3268

0064

3(1

1)41

6900

662

6486

0074

136

4500

688

3268

0064

356

1400

721

6129

0097

047

0800

696

5185

0074

745

6200

682

5130

0063

556

9200

866

X-1

016

0000

381

(11)

1851

0038

526

1100

394

1669

0040

216

0000

381

2499

0041

219

8900

431

2248

0039

325

2100

418

2050

0039

619

7400

376

3430

0058

6

Bol

dhi

ghlig

htin

gin

dica

tes

the

best

resu

ltpe

rin

stan

ce.N

ote

that

the

tabl

ein

clud

esbe

stre

sults

for

team

s2

and

18,a

sth

eydi

dpr

oduc

ere

sults

for

all

inst

ance

s(b

utso

me

infe

asib

le).

The

yar

eho

wev

erno

tcon

side

red

for

any

rank

ing

met

hod

123

Page 10: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

Table 6 Properties of the nine algorithms in the competition final

Team Search strategy NN Population SGS FB Solver Parallel

1 ILS/LNS 1 No Serial Yes Gurobi 5.5 Yes

8 VNS/ILS 4 No Serial No – Yes

11 HH 13 Yes Serial No – Yes

13 FILS 2 No Serial No – –

14 EA + ILS 3 Yes Serial Yes – –

15 SA + TS 2–3 No ? No – –

17 ILS 2 No Serial Yes – Yes

20 LNS 1 No None No ILOG Cplex/CPOptimizer –

21 SD 4 No Serial No SCIP –

to control 13 neighbourhood moves, which change modeassignments, activity ordering, and project ordering. Fur-thermore, hill climbing heuristics are used within the hyper-heuristic to intensify the search, similar to the local searchpart of memetic algorithms.

Borba et al. (2013) (Team 13) propose a stochastic localsearch procedure with two neighbourhoods (single modechange, swap). Dynamic programming determines the ini-tial mode selection.

Bouly et al. (2013) (Team 14) make use of an evolutionaryalgorithm and local search. A triplet encoding including thesequence of jobs and the chosen modes combined with aSSGS and a repair procedure to produce feasible schedules.The local search applies three different neighbourhoods andis used as a post-processing procedure for the evolutionaryalgorithm.

Alonso-Pecina et al. (2013) (Team 15) propose a three-phase approach. First, feasible solutions are constructed foreach project separately, which are afterwards combined intoan initial feasible solution for the complete problem. Thesecond phase improves the solution with a simulated anneal-ing metaheuristic. It applies two neighbourhoods that changemode assignments and activity ordering. The solution is fur-ther improved in the third phase with a tabu search algorithmexploring the two previous neighbourhoods, and one addi-tional neighbourhood that changes two mode assignmentssimultaneously.

López-Ibáñez et al. (2013) (Team 17) used an automaticdesign method to develop an algorithm for the MRCMPSP.The design method uses ‘irace’ to find the best combinationof algorithm parameters out of a set. The proposed algorithmis an iterated local search with two neighbourhoods (singlemode change, swap). Several initial solutions are generatedusing different construction heuristics.

Artigues and Hebrard (2013) (Team 20) introduce ahybrid approach, which focuses mainly on mode selection.It includes a MIP relaxation model for producing an ini-tial mode assignment. The improvement method alternates

between mode selection, conducted with large neighbour-hood search, and fixed-mode optimization based on a stan-dard Constraint Programming model.

Schnell extends SCIP (Schnell 2013) (Team 21) with amulti-mode cumulative constraint, enabling generation ofoptimal solutions for 2-project instances in less than 35 sec.For the larger instances, a steepest descent local searchheuristic with four neighbourhoods is applied. An initialsolution is constructed by solving all projects separately forminimal makespan, and sequencing the projects for a mini-mal total project delay. Sorting all activities in this sequenceby increasing starting times results in the initial activity listto which a SSGS is applied. Two neighbourhoods relax upto two projects, enabling generation of a different solution.One randomly selects the projects, while the other selectsprojects based on the lower bound of the relaxed solution. Athird neighbourhood relaxes some of the activities that arescheduled at the end of the current solution. A fourth relaxesthe mode assignments in an effort to minimize the completerenewable resource energy. The resulting partially relaxedproblem is solved with SCIP.

Table 6 shows the presence of different components in thenine feasible submissions. The following components andproperties are shown:

– Search strategy: The reported search strategy: iter-ated local search (ILS), variable neighbourhood search(VNS), hyper-heuristic (HH), first improving local search(FILS), evolutionary algorithm (EA), simulated anneal-ing (SA), tabu search (TS), large neighbourhood search(LNS) and steepest descent (SD).

– NN: number of neighbourhoods.– Population: whether or not the approach is population

based.– SGS: if and which schedule generation scheme is used.– FB: whether or not the forward-backward or double jus-

tification procedure is used (Lova et al. 2009; Valls et al.2005).

123

Page 11: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

– Solver: if and which (general purpose) solver is used.– Parallel: parallel execution.

All teams submitted a heuristic procedure in which someincluded exact components. Some model elements are com-mon to most approaches, namely an activity list and a modeassignment representation combined with a SSGS. The singlemode change neighbourhood, where the mode assignment ofa single job is changed, is part of most teams’ approaches.It is noteworthy that every team has a different approach togenerate feasible initial solution(s), and especially to finda feasible mode assignment, e.g. random, monte-carlo treesearch, multi-dimensional knapsack,. . . The teams do not allexplicitly apply parallel execution. Some teams use a CP orMIP for solving subproblems to optimality or for conductinga large neighbourhood search.

5 Conclusion

This paper introduced the MRCMPSP, subject of the MISTA2013 challenge. The submitted approaches and the resultshave been thoroughly analysed and discussed. The problemshows to be very challenging, and a large variety of algo-rithms and results can be observed. The challenge serves asa new benchmark platform for the MRCMPSP and stimu-lates research for this and related problems. Many instancesand results are available for comparison and facilitate futureresearch on the problem.

Future research can take advantage of the collected knowl-edge, for example by (1) exploring synergy by combining thekey components of the feasible algorithms, (2) applying thecollected set of algorithms in a portfolio approach.

Acknowledgments We would like to thank the challenge sponsors:iMinds, CONUNDRA and OM Partners. We would also like to thankall participating teams. This research is partially supported by a Ph. D.Grant of the agency for Innovation by Science and Technology (IWT).

Appendix 1: File formats

Instance input file format

All problem inputs are integer valued, and comply with thefollowing file format. Each problem instance is defined byn + 1 files, one global file and n project files.

Global file

The global file contains the number of projects, the releasedates, the path to the project files, and the global resource

capacities. Values are space separated and should respect thefollowing order:

Number of projectsRelease date project 0Critical path duration project 0Path to project file of project 0Release date project 1Critical path duration project 1Path to project file of project 1...Release date project n-1Critical path duration project n

-1Path to project file of project n

-1Number of resource typesGlobal resource capacities (-1 is

not global)

Project files

Each project is defined in a separate file. The relative path tothis file is given in the global file (e.g. j20.mm/j2010_1.mm).A project file contains the number of activities (includingthe dummy activities), the precedence relations between theactivities, the execution modes, and the local resource capac-ities. The individual projects are represented in the PSPLIB5

MRCPSP file format.Important note: In order to preserve compatibility with

PSPLIB, the global resources always overwrite the localresources and their capacities. For example, consider thefollowing global resource capacities (16,−1,−1,−1) andlocal resource capacities (RR1 = 14, RR2 = 18, NR1 = 60,NR2 = 68), then there exists one global renewable resourcewith capacity 16, one local renewable resource with capacity18 and two non-renewable resources with capacities 60 and68. The local renewable resource with capacity 14 can beignored.

Solution output format

A solution for the MRCMPSP is defined as follows:For each activity j of project i ,

– the selected mode mi j ,– and the start time si j ,

must be given.An example is given in Table 7.

5 PSPLIB benchmark website: http://www.om-db.wi.tum.de/psplib/main.html.

123

Page 12: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

Table 7 Solution output format example

Project i Activity j Mode mi j Start time si j

0 0 2 0

0 1 1 5

. . . . . . . . . . . .

1 0 0 4

1 1 0 8

. . . . . . . . . . . .

Solution validator

The validator checks feasibility of a solution, and computesthe total objective cost. It is available for download at theMISTA challenge website (Wauters et al. 2013). The valida-tor requires Java. It can be run as follows:

java -jar MRCMPSP -validator.jarglobal_problem_fileschedule_file

The validator was used for evaluating the quality of solu-tions produced by the algorithms submitted to the MISTA2013 challenge. Note that the validator does not report valid-ity of the instances.

Example

An example MRCMPSP instance and a corresponding fea-sible solution can be found on the challenge website. Theinstance has 2 projects, 10 jobs per project and 1 globalrenewable resource with capacity 12. The global file cor-responding to this example is

2017j10.mm/j1010_1.mm622j10.mm/j1010_2.mm412 -1 -1 -1

References

Alonso-Pecina, F., Pecero, J. E., & Romero, D. (2013). A three-phasesbased algorithm for the multi-mode resource-constrained multi-project scheduling problem. In G. Kendall, G. Vanden Berghe,& B. McCollum (Eds.), Proceedings of the 6th MultidisciplinaryInternational Scheduling Conference (pp. 812–814). : MISTA.

Artigues, C., & Hebrard, E. (2013). MIP relaxation and large neighbor-hood search for a multi-mode resource-constrained multi-projectscheduling problem. In G. Kendall, G. Vanden Berghe, & B.McCollum (Eds.), Proceedings of the 6th Multidisciplinary Inter-national Scheduling Conference (pp. 815–819). : MISTA.

Asta, S., Karapetyan, D., Kheiri, A., Özcan, E., & Parkes, A. (2013).Combining monte-carlo and hyper-heuristic methods for the multi-mode resource-constrained multi-project scheduling problem. InG. Kendall, G. Vanden Berghe, & B. McCollum (Eds.), Proceed-ings of the 6th Multidisciplinary International Scheduling Confer-ence (pp. 836–839). : MISTA.

Blazewicz, J., Lenstra, J., & Rinnooy Kan, A. (1983). Schedul-ing subject to resource constraints: Classification and complex-ity. Discrete Applied Mathematics, 5(1), 11–24. doi:10.1016/0166-218X(83)90012-4.

Borba, L.M., Benavides, A.J., Zubaran, T., Carniel, G.C., & Ritt, M.(2013). A simple stochastic local search for multi-mode resource-constrained multi-project scheduling. In G. Kendall, G. VandenBerghe, & B. McCollum (Eds.), Proceedings of the 6th Multidis-ciplinary International Scheduling Conference (pp. 826–830). :MISTA.

Bouly, H., Dang, D.C., Moukrim, A., & Xu, H. (2013). Evolutionaryalgorithm and post-processing to minimize the total delay in multi-project scheduling. In G. Kendall, G. Vanden Berghe, & B. McCol-lum (Eds.), Proceedings of the 6th Multidisciplinary InternationalScheduling Conference (pp. 831–835). : MISTA.

Burke, E. K., Gendreau, M., Hyde, M., Kendall, G., McCollum, B.,Ochoa, G., et al. (2011). The cross-domain heuristic search chal-lenge - an international research competition. In C. A. CoelloCoello (Ed.), Learning and Intelligent Optimization, Lecture Notesin Computer Science (Vol. 6683, pp. 631–634). Berlin Heidelberg:Springer. doi:10.1007/978-3-642-25566-3_49.

Geiger, M.J. (2013). Iterated variable neighborhood search for theresource constrained multi-mode multi-project scheduling prob-lem. In G. Kendall, G. Vanden Berghe, & B. McCollum (Eds.),Proceedings of the 6th Multidisciplinary International SchedulingConference (pp. 807–811). : MISTA.

Haspeslagh, S., De Causmaecker, P., Schaerf, A., & Stølevik,M., (2012). The first international nurse rostering competition2010. Annals of Operations Research, pp 1–16, doi:10.1007/s10479-012-1062-0.

Kolisch, R., & Drexl, A. (1997). Local search for nonpreemptive multi-mode resource-constrained project scheduling. IIE Transactions,29, 987–999.

López-Ibáñez, M., Mascia, F., Marmion, M.E., & Stützle, T. (2013).Automatic design of a hybrid iterated local search for the multi-mode resource-constrained multi-project scheduling problem. InG. Kendall, G. Vanden Berghe, & B. McCollum (Eds.), Proceed-ings of the 6th Multidisciplinary International Scheduling Confer-ence (pp. 820–825). : MISTA.

Lova, A., Tormos, P., Cervantes, M., & Barber, F. (2009). An efficienthybrid genetic algorithm for scheduling projects with resourceconstraints and multiple execution modes. International Journal ofProduction Economics, 117(2), 302–316. doi:10.1016/j.ijpe.2008.11.002.

McCollum, B., Mcmullan, P., Burke, E. K., Parkes, A. J., & Qu, R.(2007). The second international timetabling competition: Exam-ination timetabling track.

Post, G., Di Gaspero, L., Kingston, J., McCollum, B., Schaerf, A.(2013). The third international timetabling competition. Annalsof Operations Research pp 1–7, doi:10.1007/s10479-013-1340-5,http://dx.doi.org/10.1007/s10479-013-1340-5

Schnell, A. (2013). A hybrid local search algorithm integrating an exactcp-sat approach to solve the multi-mode resource-constrainedmulti-project scheduling problem. In G. Kendall, G. VandenBerghe, & B. McCollum (Eds.), Proceedings of the 6th Multi-

123

Page 13: The Multi-Mode Resource-Constrained Multi-Project Scheduling Problem

J Sched

disciplinary International Scheduling Conference (pp. 802–806).: MISTA.

Solnon, C., Cung, V. D., Nguyen, A., & Artigues, C. (2008). The carsequencing problem: Overview of state-of-the-art methods andindustrial case-study of the roadef2005 challenge problem. Euro-pean Journal of Operational Research, 191(3), 912–927. doi:10.1016/j.ejor.2007.04.033.

Toffolo, T. A. M., Santos, H. G., Carvalho, M., & Soares, J. (2013).An integer programming approach for the multi-mode resource-constrained multi-project scheduling problem. In G. Kendall, G.Vanden Berghe, & B. McCollum (Eds.), Proceedings of the 6thMultidisciplinary International Scheduling Conference (pp. 840–847). : MISTA.

Valls, V., Ballestin, F., & Quintanilla, S. (2005). Justification and rcpsp:A technique that pays. European Journal of Operational Research,165(2), 375–386. doi:10.1016/j.ejor.2004.04.008.

Wauters, T., Verbeeck, K., Verstraete, P., & De Causmaecker, P. (2012).Real-world production scheduling for the food industry: An inte-grated approach. Engineering Applications of Artificial Intelli-gence, 25(2), 222–228. doi:10.1016/j.engappai.2011.05.002.

Wauters, T., Kinable, J., Smet, P., Vancroonenburg, W., Verstichel(2013). The MISTA 2013 challenge. http://allserv.kahosl.be/mista2013challenge/, [Online]

123