an efficient hybrid algorithm for resource-constrained project scheduling

9
An efficient hybrid algorithm for resource-constrained project scheduling Wang Chen a , Yan-jun Shi a, * , Hong-fei Teng a , Xiao-ping Lan b , Li-chen Hu b a School of Mechanical Engineering, Dalian University of Technology, Dalian 116024, PR China b China North Vehicle Research Institute, Beijing 100072, PR China article info Article history: Received 16 December 2008 Received in revised form 4 November 2009 Accepted 26 November 2009 Keywords: Project management Scheduling Ant colony optimization Scatter search Project scheduling abstract We propose an efficient hybrid algorithm, known as ACOSS, for solving resource-con- strained project scheduling problems (RCPSP) in real-time. The ACOSS algorithm combines a local search strategy, ant colony optimization (ACO), and a scatter search (SS) in an iter- ative process. In this process, ACO first searches the solution space and generates activity lists to provide the initial population for the SS algorithm. Then, the SS algorithm builds a reference set from the pheromone trails of the ACO, and improves these to obtain better solutions. Thereafter, the ACO uses the improved solutions to update the pheromone set. Finally in this iteration, the ACO searches the solution set using the new pheromone trails after the SS has terminated. In ACOSS, ACO and the SS share the solution space for efficient exchange of the solution set. The ACOSS algorithm is compared with state-of-the-art algo- rithms using a set of standard problems available in the literature. The experimental results validate the efficiency of the proposed algorithm. Ó 2009 Elsevier Inc. All rights reserved. 1. Introduction The classical resource-constrained project scheduling problem (RCPSP) continues to be an active area of research. In recent years, this study attracted increasing interest from researchers and practitioners searching for better solution methods [45,5] . This problem involves finding a feasible schedule minimizing the makespan, that is, the total duration, of a project consisting of a set of activities with known deterministic durations. In addition, this problem is subject to pre- cedence constraints between activities and accumulative constraints related to resource availability and resource consump- tion by the activities. Previous studies have proposed several exact approaches. The most competitive exact algorithms seem to be those of Brucker et al. [4] and Mingozzi et al. [33] , amongst others. However, with respect to the NP-hardness characteristic of the RCPSP [3], these studies can only solve small scale problem instances with up to 60 activities in a satisfactory manner. Therefore, heuristic solution procedures remain the only feasible way of handling practical larger resource-constrained project scheduling problems [45]. Many researchers have proposed various heuristics and meta-heuristics to solve the underlying RCPSP in real-time. Several previous studies [25,27,26,21] provided detailed descriptions of different heuristic methodologies employed to solve the RCPSP. These methodologies may be classified into several categories: (1) priority- rule-based X-pass methods [23,7], (2) classical meta-heuristics [9,19,20,22,31,32,34,38,39,47,45,1,51,52], (3) local-search- oriented approaches [15,48], and (4) population-based approaches [46]. In population-based approaches, ant colony optimization (ACO) has been successfully applied to several NP-hard combi- natorial optimization problems [12,14], and in particular, can be used to solve large scale problems [29,43,16]. Therefore, we believe that ACO is a promising method for solving the RCPSP. However, to the best of our knowledge, there are very few studies on the application of ACO to the RCPSP. Merkle et al. [32] presented the first application of ant systems for the RCPSP. 0020-0255/$ - see front matter Ó 2009 Elsevier Inc. All rights reserved. doi:10.1016/j.ins.2009.11.044 * Corresponding author. Tel.: +86 0411 84709130; fax: +86 0411 84708412. E-mail address: [email protected] (Y.-j. Shi). Information Sciences 180 (2010) 1031–1039 Contents lists available at ScienceDirect Information Sciences journal homepage: www.elsevier.com/locate/ins

Upload: wang-chen

Post on 26-Jun-2016

215 views

Category:

Documents


4 download

TRANSCRIPT

Information Sciences 180 (2010) 1031–1039

Contents lists available at ScienceDirect

Information Sciences

journal homepage: www.elsevier .com/locate / ins

An efficient hybrid algorithm for resource-constrained project scheduling

Wang Chen a, Yan-jun Shi a,*, Hong-fei Teng a, Xiao-ping Lan b, Li-chen Hu b

a School of Mechanical Engineering, Dalian University of Technology, Dalian 116024, PR Chinab China North Vehicle Research Institute, Beijing 100072, PR China

a r t i c l e i n f o a b s t r a c t

Article history:Received 16 December 2008Received in revised form 4 November 2009Accepted 26 November 2009

Keywords:Project managementSchedulingAnt colony optimizationScatter searchProject scheduling

0020-0255/$ - see front matter � 2009 Elsevier Incdoi:10.1016/j.ins.2009.11.044

* Corresponding author. Tel.: +86 0411 84709130E-mail address: [email protected] (Y.-j. Shi).

We propose an efficient hybrid algorithm, known as ACOSS, for solving resource-con-strained project scheduling problems (RCPSP) in real-time. The ACOSS algorithm combinesa local search strategy, ant colony optimization (ACO), and a scatter search (SS) in an iter-ative process. In this process, ACO first searches the solution space and generates activitylists to provide the initial population for the SS algorithm. Then, the SS algorithm builds areference set from the pheromone trails of the ACO, and improves these to obtain bettersolutions. Thereafter, the ACO uses the improved solutions to update the pheromone set.Finally in this iteration, the ACO searches the solution set using the new pheromone trailsafter the SS has terminated. In ACOSS, ACO and the SS share the solution space for efficientexchange of the solution set. The ACOSS algorithm is compared with state-of-the-art algo-rithms using a set of standard problems available in the literature. The experimentalresults validate the efficiency of the proposed algorithm.

� 2009 Elsevier Inc. All rights reserved.

1. Introduction

The classical resource-constrained project scheduling problem (RCPSP) continues to be an active area of research. Inrecent years, this study attracted increasing interest from researchers and practitioners searching for better solutionmethods [45,5] . This problem involves finding a feasible schedule minimizing the makespan, that is, the total duration,of a project consisting of a set of activities with known deterministic durations. In addition, this problem is subject to pre-cedence constraints between activities and accumulative constraints related to resource availability and resource consump-tion by the activities.

Previous studies have proposed several exact approaches. The most competitive exact algorithms seem to be those ofBrucker et al. [4] and Mingozzi et al. [33] , amongst others. However, with respect to the NP-hardness characteristic ofthe RCPSP [3], these studies can only solve small scale problem instances with up to 60 activities in a satisfactory manner.Therefore, heuristic solution procedures remain the only feasible way of handling practical larger resource-constrainedproject scheduling problems [45]. Many researchers have proposed various heuristics and meta-heuristics to solve theunderlying RCPSP in real-time. Several previous studies [25,27,26,21] provided detailed descriptions of different heuristicmethodologies employed to solve the RCPSP. These methodologies may be classified into several categories: (1) priority-rule-based X-pass methods [23,7], (2) classical meta-heuristics [9,19,20,22,31,32,34,38,39,47,45,1,51,52], (3) local-search-oriented approaches [15,48], and (4) population-based approaches [46].

In population-based approaches, ant colony optimization (ACO) has been successfully applied to several NP-hard combi-natorial optimization problems [12,14], and in particular, can be used to solve large scale problems [29,43,16]. Therefore, webelieve that ACO is a promising method for solving the RCPSP. However, to the best of our knowledge, there are very fewstudies on the application of ACO to the RCPSP. Merkle et al. [32] presented the first application of ant systems for the RCPSP.

. All rights reserved.

; fax: +86 0411 84708412.

1032 W. Chen et al. / Information Sciences 180 (2010) 1031–1039

Tseng and Chen [44] presented a hybrid meta-heuristic named ANGEL for the RCPSP. To exploit the potential of ACO meta-heuristics for solving the RCPSP, we propose a hybridized algorithm known as ACOSS, that combines ant colony optimization,a scatter search and a local search method.

The scatter search (SS), first introduced by Glover [17], is an evolutionary method that has been successfully applied tocombinatorial and non-linear optimization problems. In contrast to other evolutionary methods such as genetic algorithms,the SS is founded on the premise that systematic designs and methods for creating new solutions afford significant benefitsbeyond those derived from recourse to randomization. The SS strategies for search diversification and intensification haveproved to be effective in a variety of optimization problems [8]. However, there are few applications of the SS to the RCPSP.Debels et al. [10] presented a hybrid scatter search/electromagnetism meta-heuristic for the RCPSP. Yamashita et al. [50]implemented several variants of the SS for the resource availability cost problem (RACP) and the experimental resultsshowed that the SS is capable of providing high-quality solutions for the RACP in a reasonable computational time. Subse-quently, Yamashita et al. [49] developed a SS for the resource availability cost problem with scenarios (RACPS). Ranjbar et al.[38] used a SS algorithm to tackle the discrete time/resource trade-off project scheduling problem, the computational resultsof which verified the efficiency of the algorithm. Additionally, Mobini et al. [34] proposed an enhanced scatter search (ESS) tosolve the RCPSP. In this study, we also make use of a SS hybridized with ACO for large scale RCPSPs.

The remainder of this paper is organized as follows. Section 2 provides a description of the RCPSP. ACOSS is presented inSection 3. Computational results are reported in Section 4, while Section 5 presents our conclusions.

2. The resource-constrained project scheduling problem

This study focuses on the classical resource-constrained project scheduling problem (RCPSP), which can be described asfollows [45]. A project consists of a set of activities V ¼ 0;1; . . . ;n;nþ 1 and K renewable resource types. We denote the dura-tion of an activity j in V as dj. The availability of each resource type k 2 K in each time period is Rk and each activity j requiresrjk units of resource k during each period of its duration. The dummy activities 0 and n + 1 represent the beginning and theend of the project, where d0 ¼ dnþ1 ¼ 0 and r0k ¼ rnþ1k ¼ 0 . Parameters dj; rjk, and Rk are assumed to be non-negative integervalues. The activities are interrelated by two types of constraints: (1) precedence constraints prevent activity j from beingstarted before all its predecessor activities Pj have been completed, and (2) the sum of the resource requirements for resourcek in any time period cannot exceed Rk. The optimized objective of the RCPSP is to find precedence and resource feasible com-pletion times for all activities such that the makespan of the project is minimized [26]. Fig. 1 shows an example of a projectcomprising n ¼ 6 activities that need to be scheduled subject to K ¼ 1 renewable resource type with a capacity of 6 units.Fig. 2 shows a feasible schedule with an optimal makespan of 15 periods.

Let the completion time of activity j be denoted as Fj, then the completion times of schedule S are denoted as F1; F2; . . . ; Fn.The conceptual model of the RCPSP can be described as follows [6]:

min Fnþ1 ð1Þs:t: Fh 6 Fj � dj; j ¼ 1; . . . ; nþ 1; h 2 Pj ð2ÞX

j2AðtÞrj;k 6 Rk; k 2 K; t P 0 ð3Þ

Fj P 0; J ¼ 1; . . . ;nþ 1 ð4Þ

Fig. 1. Project example.

Fig. 2. Feasible schedule.

Fig. 3. Flowchart of ACOSS.

W. Chen et al. / Information Sciences 180 (2010) 1031–1039 1033

The objective function given by Eq. (1) minimizes the makespan of the schedule. Eq. (2) enforces the precedence con-straints between activities, while Eq. (3) enforces the resource limitation constraint, where AðtÞ ¼ j 2 V jFj � dj 6 t < Fj, i.e.,the set of activities being processed (active) at time t. Finally, Eq. (4) describes the constraint of the decision variables.

3. Proposed ACOSS algorithm for the RCPSP

3.1. Main flowchart for the ACOSS algorithm

In this paper, we propose a hybrid algorithm known as the ACOSS algorithm which combines ant colony optimization(ACO), a scatter search (SS), and a local search method in an iterative process for RCPSPs. Research on ACO has shown thatimproved performance can be obtained by stronger exploitation of the best solutions found during the search [13,41]. Yet,using a greedier search potentially aggravates the problem of premature stagnation of the search. Therefore, the key toobtaining best performance of ACO algorithms is to combine an improved exploitation of the best solutions with an effectivemechanism for avoiding early search stagnation. Following this idea, Stützle and Hoos [41] proposed a Max-Min Ant System(MMAS). Additionally, Dorigo and Gambardella [13] and Stützle and Hoos [41] also suggested that combining ACO withproblem-dependent local search algorithms was a promising approach to many special applications.

Combining exploitation of the best solutions with a problem-dependent local search algorithm, we present our hybridalgorithm, ACOSS, for the RCPSP. Similar to previous studies, we also employ the ACO meta-heuristic to provide a unifyingframework, but our algorithm differs in that we make use of a SS algorithm to improve solutions and performance, and em-ploy a local search strategy to improve the quality of the schedules. Fig. 3 illustrates the main flowchart of ACOSS. First, allants in the ACO search the solution space and generate activity lists to provide the initial population for the SS. Then,although the SS improves all the ants’ solutions, only the best solution (thus far) is used to update the pheromone trails. Fi-nally, ACO searches the solution space again using the new pheromone trails. In other words, the SS uses the previous pop-ulation constructed by ACO, which subsequently updates the pheromone trails using the best solution from the SS, andsearches again. In addition, a local search strategy is employed to improve the quality of solutions generated by ACO, andalso as the improvement method in the SS. In this scheme, ACO and SS alternatively and cooperatively search the solutionspace until the termination criterion is satisfied. In each generation, ACO only executes once to generate the initial popula-tion for the SS, which then executes one or more times to improve the solutions. The representation and decoding procedure,ant system, priority rules, SS and local search strategy for ACOSS are described in the following sections.

3.2. Representation and decoding procedure for the ACOSS algorithm

Both the representation and decoding procedure play an important role in the performance of the algorithm. Variousrepresentations can be used in meta-heuristic approaches [26], such as activity list, random key, priority-rule, shift vector,

1034 W. Chen et al. / Information Sciences 180 (2010) 1031–1039

and schedule scheme representations, amongst others. Several studies [19,26] have shown that the activity list representa-tion produces better results than the other representations for the RCPSP. Therefore, in this study we have also made use ofthis representation. In other words, a solution is represented by a precedence feasible activity list J ¼ hj1; j2; . . . ; Jni [26],where each activity jg must have a higher index g than each of its predecessors in Pjg .

In the activity list representation, schedule generation schemes (SGS) are the core decoding procedures for the RCPSP[26]. Two different SGSs are available in the literature: (1) the serial SGS that performs activity-incrementation, and (2)the parallel SGS that performs time-incrementation. The difference between the serial and parallel schemes is that the serialSGS constructs active schedules, whereas the parallel one constructs non-delay schedules [40]. The set of non-delay sched-ules is a subset of the set of active schedules. Here the set of active schedules always contains an optimal schedule, but thisrelation does not hold for the set of non-delay schedules. Moreover, the parallel SGS may miss an optimal schedule. However,the parallel SGS produces schedules of better average quality that utilize resources as early as possible, resulting in morecompact schedules. This difference leads to different behaviors of the SGSs in the computational experiments [21,25].

Considering the advantages and disadvantages of both schemes, we use a random real number, rSGS ð0 6 rSGS 6 1Þ to se-lect the SGS with which to construct the schedule, as defined by

SGS ¼serial-SGS; if rSGS 6 0:5parallel-SGS; if rSGS > 0:5

�ð5Þ

That is, for a given individual, we generate a random rSGS to decide the schedule of the SGS, where the fitness of the indi-vidual is defined as the makespan of the schedule.

For the activity list, the serial SGS can be used directly as the decoding procedure to obtain the schedule, whereas theparallel SGS cannot be applied without additional modifications [26]. To use the parallel SGS, we have made various mod-ifications. For instance, in each step, we simply choose the activity from the eligible set n that has the lowest index in theactivity list. The eligible set n consists of activities that can be started in the current step without violating any constraintsand is modified step-by-step during construction.

3.3. Ant system for the ACOSS algorithm

In the proposed ACOSS algorithm, employing an efficient ACO for iteration is also an important task. In this study, weemploy the Max-Min Ant System (MMAS), and define two important components of the MMAS based on the characteristicsof the RCPSP: (1) the solution construction method, and (2) the update method for the pheromone trails (detailed below).

3.3.1. Solution construction methodIn this construction method, a single ant corresponds to one solution. In each generation, each ant constructs an activity

list, i.e., J ¼ j0; j1; . . . ; jnþ1. Activities are assigned to J one-by-one from j0 to jnþ1, where each assignment represents an ant’sdecision. At each assignment, one ant must select an activity from the eligible set n using both heuristic information gij aswell as pheromone information sij.

The probability distribution over the eligible set n is determined by [13]

pij ¼½sij�a½gij�

b

Ph2n½sih�a½gih�

b ð6Þ

However, the values sij are replaced by [32]

s0ij ¼ c � xi � sij þ ð1� cÞ � yi �Xi

k¼1

ci�kskj ð7Þ

where xi ¼P

h2nPi

k¼1ci�kskh and yi ¼P

h2nsih, and both xi and yi are used to adjust the relative influence of the direct andsummation evaluation. Parameter c ðc 2 ½0;1�Þ is a weighted factor. Parameter c ðc > 0Þ decides the relative influence ofthe pheromone values corresponding to earlier decisions. These decisions represent preceding places in the permutation.If c ¼ 1, every skj ðk 6 iÞ is given the same influence, such that Eq. (7) becomes an unweighted summation. If c < 1, the rel-ative influence of earlier decisions is less and vice versa. Parameters a and b in Eq. (6) are used to determine the relativeinfluence of the pheromone values sij and heuristic values gij on the decision of an ant. The different heuristics that havebeen used to compute the heuristic values gij in this study are described in Section 3.4.

3.3.2. Update method for the pheromone trailsIn each generation, only one ant updates the pheromone trails by [41]

sij ¼ ð1� qÞsij þ Dsbestij ð8Þ

where q is the decay factor and Dsbestij ¼ 1=T�, with T� denoting the makespan of either the iteration-best or the global-best

solution.

Table 1Priority rules used in ACOSS.

Priority rule [32] Formula

LFT: Latest finish time gij ¼min maxk2nLFk � LFj þ 1MTS: Most total successors gij ¼max S�j

��� ����mink2n S�k�� ��þ 1

GRPWA: Greatest rank positional weight all gij ¼max pj þP

i2S�jpj �mink2n pk þ

Pi2S�j

pi

� �þ 1

WRUP: Weighted resource utilization and precedence gij ¼max xjSjj þ ð1�xÞP

l2Qrjl

Rl�mink2n xjSkj þ ð1�xÞ

Pl2Q

rklRl

� �þ 1

W. Chen et al. / Information Sciences 180 (2010) 1031–1039 1035

To prevent stagnation in the search, all pheromone trails in the ant system must respect the pheromone trail limitssmin 6 sij 6 smax, which are calculated as [41]

smax ¼1

q � Tg-bestð9Þ

smin ¼smax 1� ffiffiffiffiffiffiffiffiffi

pbestnp� �

ðn=2� 1ÞffiffiffiffiffiffiffiffiffiPbest

np ð10Þ

where Tg-best is the makespan of the global-best solution and n is the number of activities. After each generation, smin and smax

are updated using the global-best solution.

3.4. Priority rule to assign activities in the ACOSS algorithm

We employ various priority rules to select an activity from the decision set. The rules used in ACOSS are summarized inTable 1. In the event of a tie, the activity with the smallest activity label is chosen.

3.5. Scatter search in the ACOSS algorithm

We employ a scatter search in the proposed ACOSS algorithm to generate improved solutions. In most of the SS imple-mentations to date, a scatter search template [18] has been employed as the main reference. Also employing this template,we describe the SS method in ACOSS as follows:

Step 1. Take the solutions provided by ACO to construct the initial solution set for the SS.Step 2. Use the reference set update method to build the ‘‘high-quality” reference set RefSet_1 and ‘‘diverse” reference set

RefSet_2.Step 3. Use the subset generation method to generate subsets.Step 4. Use the solution combination method to generate new solutions.Step 5. Apply the improvement method to each generated solution to obtain trial solutions.Step 6. Use the trial solutions to update RefSet_1 and RefSet_2.Step 7. Repeat Steps 3–6 until the termination condition is satisfied.

The methods and termination condition in these steps are detailed below.

3.5.1. Subset generation methodPrevious studies have proposed several subset generation methods [18] (see Step 3). In ACOSS, we employ the subset gen-

eration method proposed by Nebro et al. [35]. This method produces pairwise combinations of individuals within RefSet_1 orwithin RefSet_2.

3.5.2. Solution combination methodTo build new trial solutions, we employ uniform crossover [19] as the solution combination method (see Step 4). Assume

that two individuals in a subset, a mother M and father F, are selected for combination. We generate a sequence of randomnumbers pi 2 0;1; i ¼ 1;2; . . . ; J, and successively fill the positions for the daughter D and son S. The daughter D is obtainedas follows. If pi ¼ 1, take the activity with the lowest index from the currently unselected activities in the mother’s job se-quence, i.e., jD

i ¼ jMk where k is the lowest index such that jM

k R jD1 ; . . . ; jD

i�1. Otherwise, if pi ¼ 0, the activity is derived in thesame way from the father’s job sequence, i.e., jD

i ¼ jFk , where k is the lowest index such that jF

k R jD1 ; . . . ; jD

i�1.Similarly, the son S is computed using a procedure that takes the ith job from the father if pi ¼ 1, and from the mother

otherwise.

3.5.3. Reference set update methodThe reference set update method is used to build (see Step 2) and update (see Step 6) RefSet_1 and RefSet_2. In this

process, the updating procedure makes use of a 2-tier design [30], where the first tier RefSet_1 consists of b1 high-qualitysolutions and the second tier RefSet_2 consists of b2 diverse solutions. Hence, we use not only new high-quality trial

1036 W. Chen et al. / Information Sciences 180 (2010) 1031–1039

solutions, but also highly diverse solutions to update the reference set. Consequently, the aim in updating RefSet_1 is to in-crease quality, whereas that in RefSet_2 is to increase diversity.

The construction of RefSet_1 starts by selecting the solution with the lowest objective function value (makespan) in solu-tion set P. This solution is added to RefSet_1 and deleted from P. Then the next best solution in P is chosen and added to Ref-Set_1. This process is repeated until b1 individuals are selected for RefSet_1. The construction of RefSet_2 follows the samestrategy as RefSet_1, except that the solution in P with the best distance value is chosen.

In the main loop of the SS, according to the scatter search template [18], a new solution can become a member of thereference set if either of the following conditions is satisfied:

� The new solution x has a better objective function value f ðxÞ than the worst objective value of an individual in RefSet_1.� The new solution x has a better distance value dminðxÞ to the reference set than the worst distance value of an indi-

vidual in RefSet_2.

The distance dðxi; xkÞ between two solutions is calculated as

dðxi; xkÞ ¼XJ

j¼1

StartTimeij � StartTimek

j

��� ��� ð11Þ

where StartTimej is the start time of activity j in the schedule generated by the SGS.

3.6. Local search strategy

To improve the quality of the solutions generated by ACOSS, we also employ a local search method. There are several localsearch methods that are usually used to solve the RCPSP [25]: variable neighborhood search (VNS), double justification, etc.Double justification [45] can easily be incorporated in various algorithms for solving the RCPSP to improve the quality of thegenerated schedules without additional computation time. This local method shifts all activities within a schedule to theright and subsequently to the left to obtain a better schedule. An application of the justification method has been demon-strated by Valls et al. [45].

One of the double justification methods, the Homogeneous Interval Algorithm (HIA) proposed by Valls et al. [46] is em-ployed in this study to improve the quality of schedules generated by ACO, and also as the improvement method in SS. HIA isthe result of iteratively applying Forward_HIA and Backward_HIA [46] until there is no further improvement. Moreover, thesearch is alternatively driven to two different regions: (1) the region where the utilization of resources tends to be high at thebeginning of the schedule, and (2) the region where the resources tend to be better utilized at the end of the schedule. Con-sidering that HIA can provide an effective interplay between intensification and diversification, we employ HIA as the localsearch method in this study.

4. Experimental studies

We applied ACOSS to the standard instance sets J30 (480 instances each with 30 activities), J60 (480 instances each with60 activities), and J120 (600 instances each with 120 activities) generated by the problem generator ProGen devised by Kol-isch and Sprecher [28]. These sets are available in the well known PSPLIB (http://129.187.106.231/psplib/) along with theoptimum, or best known values that have been obtained by various authors over the years. Only in J30 are the optimal make-spans for all instances known. In J60 and J120 the optimal makespans for some instances are not known and only upperbounds (current best solutions) and lower bounds are provided. The lower bounds are determined by the length of a criticalpath in the resource relaxation of the problem using a critical path method. For a fair machine-independent comparison, welimited the number of generated and evaluated schedules in ACOSS to 1000, 5000, and 50,000, respectively. This restrictionallowed us to compare our results with those reported in the evaluation study of Kolisch and Hartmann [25] for severalRCPSP heuristics proposed in the literature. ACOSS was implemented in JAVA 1.6 and all the experiments were performedon a PC with 1.86 GHz CPU and 1 GB RAM running the Windows XP operating system.

In the preliminary experiments, we employed a trial-and-error strategy to obtain suitable control parameter values foreach of the three algorithms for each problem. First, we set some of the control parameters, e.g., a; b (see Eq. (6)), using val-ues available in the literature. Then, we performed some preliminary experiments with a small subset of J60 instances to findthe best values for the other parameters, e.g., m (number of ants), q (decay factor), etc. Using the trial-and-error strategy, weobtained values for the control parameters one-by-one. Finally, we settled on the following control parameters:a ¼ 1; b ¼ 2:5; m ¼ n; q ¼ 0:02. The pheromone trail limits were chosen as Eqs. (9) and (10) with pbest ¼ 0:05.

4.1. Comparison of experimental results

Tables 2–4 give the performances of ACOSS and several RCPSP heuristics from the literature with 1000, 5000, and 50,000evaluated schedules. This study compared ACOSS with priority-rule-based sampling methods [42], genetic algorithms[11,19,20,24,47,45], scatter search [10], ant colony algorithms [44], tabu search [36], etc.

Table 2Average deviation (%) from optimal makespan – ProGen set J ¼ 30.

Algorithm References Schedules

1000 5000 50,000

GA, TS-path relinking Kochetov and Stolyar [24] 0.10 0.04 0.00GAPS Mendes et al. [31] 0.06 0.02 0.01ACOSS This study 0.14 0.06 0.01ANGEL Tseng and Chen [44] 0.22 0.09 –Scatter search-FBI Debels et al. [10] 0.27 0.11 0.01GA-DBH Debels and Vanhoucke [11] 0.15 0.04 0.02GA-hybrid, FBI Valls et al. [47] 0.27 0.06 0.02GA-FBI Valls et al. [45] 0.34 0.20 0.02Sampling-LFT, FBI Tormos and Lova [42] 0.25 0.13 0.05TS-activity list Nonobe and Ibaraki [36] 0.46 0.16 0.05

Table 3Average deviation (%) from critical path lower bound – ProGen set J ¼ 60.

Algorithm References Schedules

1000 5000 50,000

GAPS Mendes et al. [31] 11.72 11.04 10.67ACOSS This study 11.75 10.98 10.67GA-DBH Debels and Vanhoucke [11] 11.45 10.95 10.68Scatter search-FBI Debels et al. [10] 11.73 11.10 10.71GA-hybrid, FBI Valls et al. [47] 11.56 11.10 10.73GA, TS-path relinking Kochetov and Stolyar [24] 11.71 11.17 10.74ANGEL Tseng and Chen [44] 11.94 11.27 –GA-FBI Valls et al. [45] 12.21 11.27 10.74GA-self-adapting Hartmann [20] 12.21 11.70 11.21GA-activity list Hartmann [19] 12.68 11.89 11.23

Table 4Average deviation (%) from critical path lower bound – ProGen set J ¼ 120.

Algorithm References Schedules

1000 5000 50,000

ACOSS This study 35.19 32.48 30.56GA-DBH Debels and Vanhoucke [11] 34.19 32.34 30.82GA-hybrid, FBI Valls et al. [47] 34.07 32.54 31.24GAPS Mendes et al. [31] 35.87 33.03 31.44Scatter search-FBI Debels et al. [10] 35.22 33.10 31.57GA-FBI Valls et al. [45] 35.39 33.24 31.58GA, TS-path relinking Kochetov and Stolyar [24] 34.74 33.36 32.06GA-self-adapting Hartmann [20] 37.19 35.39 33.21Sampling-LFT, FBI Tormos and Lova [42] 35.01 34.41 33.71ANGEL Tseng and Chen [44] 36.39 34.49 –

W. Chen et al. / Information Sciences 180 (2010) 1031–1039 1037

Table 2 gives the average percentage deviation from the optimal makespan for . ACOSS ranks 3rd for 1000 schedules and4th and 2nd for 5000 and 50,000 schedules, respectively. The lower bound results for instances with 60 activities can befound in Table 3. ACOSS ranks 6th and 2nd for 1000 and 5000 schedules, respectively, and 1st for 50,000 schedules. Table4 gives the results for J120, where ACOSS ranks 5th for 1000 schedules, and 2nd and 1st for 5000 and 50,000 schedules,respectively.

To highlight the actual performance, Table 5 lists the results of the heuristics together with the average and maximumcomputation times as well as the clock-cycle of the computer used. The performances of the reported methods were ob-tained from surveys [25] and the original papers. The performance of ACOSS as shown in the table was limited to 5000 eval-uated schedules. From Table 5, we can see that ACOSS requires a shorter average computation time for J30, J60, and J120.

These results show that ACOSS is capable of providing near-optimal solutions for the instance set J30, and can producebetter solutions for the large scale problems J60 and J120. The reason for the improved performance is that ACOSS combinesthe advantages of MMAS and SS. MMAS can exploit the neighborhood of the best solutions found during the search to obtainfast convergence, while the SS can explicitly maintain a ‘‘diverse” reference set to avoid early search stagnation in ACOSSwithout excessive computational time.

Table 5Average and maximum computation times for J30, J60, and J120.

Algorithm References Result CPU-time (s) Computer

Average Max.

(a) J ¼ 30Decompos. & local opt. [37] 0.00 10.26 123.0 2.3 GHzLocal search-critical [48] 0.06 1.61 6.2 400 MHzACOSS This study 0.06 0.13 3.29 1.86 GHzANGEL [44] 0.09 0.11 – 1 GHzPopulation-based [46] 0.10 1.16 5.5 400 MHz

(b) J ¼ 60Decompos. & local opt. [37] 10.81 38.8 223.0 2.3 GHzPopulation-based [46] 10.89 3.7 22.6 400 MHzACOSS This study 10.98 0.72 13.8 1.86 GHzANGEL [44] 11.27 0.76 – 1 GHzLocal search-critical [48] 11.45 2.8 14.6 400 MHzTabu search [2] 12.05 3.2 – 450 MHz

(c) J ¼ 120Population-based [46] 31.58 59.4 264.0 400 MHzDecompos. & local opt. [37] 32.41 207.9 501.0 2.3 GHzACOSS This study 32.48 3.8 39.8 1.86 GHzANGEL [44] 34.49 4.79 – 1 GHzLocal search-critical [48] 34.53 17.0 43.9 400 MHzTabu search [2] 36.16 67.0 – 450 MHz

1038 W. Chen et al. / Information Sciences 180 (2010) 1031–1039

With an increase in the number of activities, a large scale RCPSP suffers from a combination explosion. We therefore, needto construct more efficient heuristics to meet these challenges. Based on the above experimental results, ACOSS is seen as aviable solution method.

5. Conclusions

In this study, we proposed a hybrid algorithm combining ant colony optimization (ACO), a scatter search, and a localsearch strategy to solve resource-constrained project scheduling. The computational results of ACOSS were compared withstate-of-the-art heuristics on the standard instance sets, and from the PSPLIB. The experimental results indicated that, with alimited number of generated schedules, ACOSS is capable of providing near-optimal solutions for a small scale RCPSP andoutperformed other heuristic algorithms for large scale problems. This study also showed that the hybridized algorithmis a promising method for solving the RCPSP. Further studies will focus on enhancing the applicability and efficiency ofthe proposed ACOSS algorithm to various complex real-world scheduling problems.

Acknowledgements

This work was supported by National Natural Science Foundation ofPR China (Grant No. 50975039) and National DefenseBasic Scientific Research Project of PR China (Grant No. B0920060901).

References

[1] E. Alba, J.F. Chicano, Software project management with GAs, Information Sciences 177 (2007) 2380–2401.[2] C. Artigues, P. Michelon, S. Reusser, Insertion techniques for static and dynamic resource-constrained project scheduling, European Journal of

Operational Research 149 (2003) 249–267.[3] J. Blazewicz, J.K. Lenstra, A.H.G. Rinooy Kan, Scheduling subject to resource constraints: classification and complexity, Discrete Applied Mathematics 5

(1983) 11–24.[4] P. Brucker, S. Knust, A. Schoo, O. Thiele, A branch and bound algorithm for the resource-constrained project scheduling problem, European Journal of

Operational Research 107 (1998) 272–288.[5] C.-T. Chen, S.-F. Huang, Applying fuzzy method for measuring criticality in project network, Information Sciences 177 (2007) 2448–2458.[6] N. Christofides, R. Alvarez-Valdes, J.M. Tamarit, Project scheduling with resource constraints: a branch and bound approach, European Journal of

Operational Research 29 (1987) 262–273.[7] J.S. Coelho, L.V. Tavares, Comparative analysis of meta-heuristics for the resource constrained project scheduling problem, Department of Civil

Engineering, Instituto Superior Tecnico, Portugal, 2003.[8] C.G. da Silva, Time series forecasting with a non-linear model and the scatter search meta-heuristic, Information Sciences 178 (2008) 3288–3299.[9] N. Damak, B. Jarboui, P. Siarry, T. Loukil, Differential evolution for solving multi-mode resource-constrained project scheduling problems, Computers &

Operations Research 36 (2009) 2653–2659.[10] D. Debels, B. De Reyck, R. Leus, M. Vanhoucke, A hybrid scatter search/electromagnetism meta-heuristic for project scheduling, European Journal of

Operational Research 169 (2006) 638–653.[11] D. Debels, M. Vanhoucke, A decomposition-based genetic algorithm for the resource-constrained project-scheduling problem, Operations Research 55

(2007) 457–469.

W. Chen et al. / Information Sciences 180 (2010) 1031–1039 1039

[12] M. Dorigo, G.D. Caro, The ant colony optimization meta-heuristic, in: D. Corne, M. Dorigo, F. Glover (Eds.), New Ideas in Optimization, McGraw-Hill,London, 1999, pp. 11–32.

[13] M. Dorigo, L.M. Gambardella, Ant colony system: a cooperative learning approach to the traveling salesman problem, IEEE Transactions onEvolutionary Computation 1 (1997) 53–66.

[14] I. Ellabib, P. Calamai, O. Basir, Exchange strategies for multiple ant colony system, Information Sciences 177 (2007) 1248–1264.[15] K. Fleszar, K.S. Hindi, Solving the resource-constrained project scheduling problem by a variable neighbourhood search, European Journal of

Operational Research 155 (2004) 402–413.[16] A. Ghosh, A. Halder, M. Kothari, S. Ghosh, Aggregation pheromone density based data clustering, Information Sciences 178 (2008) 2816–2831.[17] F. Glover, Heuristics for integer programming using surrogate constraints, Decision Sciences 8 (1977) 156–166.[18] F. Glover, A template for scatter search and path relinking, Artificial Evolution 1363 (1998) 3–51.[19] S. Hartmann, A competitive genetic algorithm for resource-constrained project scheduling, Naval Research Logistics 45 (1998) 733–750.[20] S. Hartmann, A self-adapting genetic algorithm for project scheduling under resource constraints, Naval Research Logistics 49 (2002) 433–448.[21] S. Hartmann, R. Kolisch, Experimental evaluation of state-of-the-art heuristics for the resource-constrained project scheduling problem, European

Journal of Operational Research 127 (2000) 394–407.[22] B. Jarboui, N. Damak, P. Siarry, A. Rebai, A combinatorial particle swarm optimization for solving multi-mode resource-constrained project scheduling

problems, Applied Mathematics and Computation 195 (2008) 299–308.[23] R. Klein, Bidirectional planning: improving priority rule-based heuristics for scheduling resource-constrained projects, European Journal of Operational

Research 127 (2000) 619–638.[24] Y. Kochetov, A. Stolyar, Evolutionary local search with variable neighborhood for the resource constrained project scheduling problem, in: Proceedings

of the Third International Workshop of Computer Science and Information Technologies, Russia, 2003.[25] R. Kolisch, S. Hartmann, Experimental investigation of heuristics for resource-constrained project scheduling: an update, European Journal of

Operational Research 174 (2006) 23–37.[26] R. Kolisch, S. Hartmann, Heuristic algorithms for solving the resource-constrained project scheduling problem: classification and computational

analysis, in: J. Weglarz (Ed.), Project Scheduling: Recent Models, algorithms and Applications, Kluwer Academic Publishers, Berlin, 1999, pp. 147–178.[27] R. Kolisch, R. Padman, An integrated survey of deterministic project scheduling, Omega 29 (2001) 249–272.[28] R. Kolisch, A. Sprecher, PSPLIB – a project scheduling problem library: OR Software – ORSEP Operations Research Software Exchange Program,

European Journal of Operational Research 96 (1997) 205–216.[29] Z.J. Lee, C.Y. Lee, A hybrid search algorithm with heuristics for resource allocation problem, Information Sciences 173 (2005) 155–167.[30] R. Marti, M. Laguna, F. Glover, Principles of scatter search, European Journal of Operational Research 169 (2006) 359–372.[31] J.J.M. Mendes, J.F. Goncalves, M.G.C. Resende, A random key based genetic algorithm for the resource constrained project scheduling problem,

Computers & Operations Research 36 (2009) 92–109.[32] D. Merkle, M. Middendorf, H. Schmeck, Ant colony optimization for resource-constrained project scheduling, IEEE Transactions on Evolutionary

Computation 6 (2002) 333–346.[33] A. Mingozzi, V. Maniezzo, S. Ricciardelli, L. Bianco, An exact algorithm for project scheduling with resource constraints based on a new mathematical

formulation, Management Science 44 (1998) 714–729.[34] M.D.M. Mobini, M. Rabbani, M.S. Amalnik, J. Razmi, A.R. Rahimi-Vahed, Using an enhanced scatter search algorithm for a resource-constrained project

scheduling problem, Soft Computing 13 (2009) 597–610.[35] A.J. Nebro, F. Luna, E. Alba, B. Dorronsoro, J.J. Durillo, A. Beham, AbYSS: adapting scatter search to multiobjective optimization, IEEE Transactions on

Evolutionary Computation 12 (2008) 439–457.[36] K. Nonobe, T. Ibaraki, Formulation and tabu search algorithm for the resource constrained project scheduling problem, in: P. Hansen (Ed.), Essays and

Surveys in Metaheuristics, Kluwer Academic Publishers, 2001, pp. 557–588.[37] M. Palpant, C. Artigues, P. Michelon, LSSPER: solving the resource-constrained project scheduling problem with large neighbourhood search, Annals of

Operations Research 131 (2004) 237–257.[38] M. Ranjbar, B. De Reyck, F. Kianfar, A hybrid scatter search for the discrete time/resource trade-off problem in project scheduling, European Journal of

Operational Research 193 (2009) 35–48.[39] M. Ranjbar, F. Kianfar, S. Shadrokh, Solving the resource availability cost problem in project scheduling by path relinking and genetic algorithm,

Applied Mathematics and Computation 196 (2008) 879–888.[40] A. Sprecher, R. Kolisch, A. Drexl, Semi-active, active, and non-delay schedules for the resource-constrained project scheduling problem, European

Journal of Operational Research 80 (1995) 94–102.[41] T. Stützle, H.H. Hoos, Max-min ant system, Future Generation Computer Systems 16 (2000) 889–914.[42] P. Tormos, A. Lova, Integrating heuristics for resource constrained project scheduling: one step forward, Technical Report, Department of Statistics and

Operations Research, Universidad Politecnica de Valencia, 2003.[43] C.-F. Tsai, C.-W. Tsai, C.-C. Tseng, A new hybrid heuristic approach for solving large traveling salesman problem, Information Sciences 166 (2003) 67–

81.[44] L.-Y. Tseng, S.-C. Chen, A hybrid metaheuristic for the resource-constrained project scheduling problem, European Journal of Operational Research 175

(2006) 707–721.[45] V. Valls, F. Ballestín, S. Quintanilla, Justification and RCPSP: a technique that pays, European Journal of Operational Research 165 (2005) 375–386.[46] V. Valls, F. Ballestín, S. Quintanilla, A population-based approach to the resource-constrained project scheduling problem, Annals of Operations

Research 131 (2004) 305–324.[47] V. Valls, F. Ballestin, M.S. Quintanilla, A hybrid genetic algorithm for the RCPSP, Department of Statistics and Operations Research, University of

Valencia, 2003.[48] V. Valls, S. Quintanilla, F. Ballestín, Resource-constrained project scheduling: a critical activity reordering heuristic, European Journal of Operational

Research 149 (2003) 282–301.[49] D.S. Yamashita, V.A. Armentano, M. Laguna, Robust optimization models for project scheduling with resource availability cost, Journal of Scheduling 10

(2007) 67–76.[50] D.S. Yamashita, V.A. Armentano, M. Laguna, Scatter search for project scheduling with resource availability cost, European Journal of Operational

Research 169 (2006) 623–637.[51] Y. Yuan, X. Li, Q. Wang, X. Zhu, Deadline division-based heuristic for cost optimization in workflow scheduling, Information Sciences 179 (2009) 2562–

2575.[52] X. Zuo, H. Mo, J. Wu, A robust scheduling method based on a multi-objective immune algorithm, Information Sciences 179 (2009) 3359–3369.