Ant Colony Optimization for Resource-Constrained Projet Scheduling

10
Particle swarm optimization for resource-constrained project scheduling Hong Zhang a, * , Heng Li b,1 , C.M. Tam a,2 a Department of Building and Construction, City University of Hong Kong, Tat Avenue, Kowloon, Hong Kong b Department of Building and Real Estate, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong Received 17 November 2004; received in revised form 20 May 2005; accepted 14 June 2005 Abstract This paper introduces the particle swarm optimization (PSO)-based approach to resolve the resource-constrained project sched- uling problem (RCPSB) with the objective of minimizing project duration. Activities priorities for scheduling are represented by particles and a parallel scheme is utilized to transform the particle-represented priorities to a feasible schedule according to the pre- cedence and resource constraints so as to be evaluated. Then the framework of the PSO scheme for the RCPSB is developed. Com- putational analyses are provided so as to investigate the performance of the PSO-based approach for the RCPSB. The study aims at developing an alternative and efficient optimization methodology for solving the RCPSB and opening the application of PSO to the optimization issues for construction project management. Ó 2005 Elsevier Ltd and IPMA. All rights reserved. Keywords: Particle swarm optimization; Resource-constrained project scheduling; Priority-based scheduling; Managing projects; Construction in- dustry 1. Introduction Traditional project scheduling approaches such as the critical path method (CPM) and program evaluation and review technique (PERT) focus on logical depen- dencies by assuming unlimited resource availability. However, the assumption of unlimited variety of resources may not be justified in many construction circumstances since only a fixed amount of resources are available or the cost of acquiring additional resources is very high. Therefore, many analytical or heuristic approaches have been proposed to solve such a resource-constrained construction scheduling problem (RCPSB). Analytical methods for the RCPSB often adopt math- ematical models such as integer programming [1] and dy- namic programming [2], as well as branch-and-bound [3] or enumeration approaches to search for optima by con- sidering the RCPSB as NP-complete [4]. But the analyt- ical approaches may be computationally infeasible or face ‘‘combinatorial explosion’’ problem if the project under study is larger or more complicated [5,4,6]. Heuristic methods for the RCPSB [7,8] are aimed at searching for optima in efficient ways. Most existing heuristic methods use priority rules such as shortest activity duration (SAD), minimum late finish time (MILFT), or minimum total float (MITF) to determine which activity is to be scheduled earlier than others. However, there is little basis for choosing one among different heuristic rules and no priority rule dominates all other or performs consistently better than others 0263-7863/$30.00 Ó 2005 Elsevier Ltd and IPMA. All rights reserved. doi:10.1016/j.ijproman.2005.06.006 * Corresponding author. Tel.: +852 3442 6505; fax: +852 2788 7612. E-mail addresses: [email protected] (H. Zhang), bshengli@ polyu.edu.hk (H. Li), [email protected] (C.M. Tam). 1 Tel.: +852 2766 5879; fax: +852 2764 5131. 2 Tel.: +852 2788 7620; fax: +852 2788 7612. www.elsevier.com/locate/ijproman International Journal of Project Management 24 (2006) 83–92 INTERNATIONAL JOURNAL OF PROJECT MANAGEMENT

Transcript of Ant Colony Optimization for Resource-Constrained Projet Scheduling

INTERNATIONAL JOURNAL OF

www.elsevier.com/locate/ijproman

International Journal of Project Management 24 (2006) 83–92

PROJECTMANAGEMENT

Particle swarm optimization for resource-constrainedproject scheduling

Hong Zhang a,*, Heng Li b,1, C.M. Tam a,2

a Department of Building and Construction, City University of Hong Kong, Tat Avenue, Kowloon, Hong Kongb Department of Building and Real Estate, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong

Received 17 November 2004; received in revised form 20 May 2005; accepted 14 June 2005

Abstract

This paper introduces the particle swarm optimization (PSO)-based approach to resolve the resource-constrained project sched-uling problem (RCPSB) with the objective of minimizing project duration. Activities priorities for scheduling are represented byparticles and a parallel scheme is utilized to transform the particle-represented priorities to a feasible schedule according to the pre-cedence and resource constraints so as to be evaluated. Then the framework of the PSO scheme for the RCPSB is developed. Com-putational analyses are provided so as to investigate the performance of the PSO-based approach for the RCPSB. The study aims atdeveloping an alternative and efficient optimization methodology for solving the RCPSB and opening the application of PSO to theoptimization issues for construction project management.� 2005 Elsevier Ltd and IPMA. All rights reserved.

Keywords: Particle swarm optimization; Resource-constrained project scheduling; Priority-based scheduling; Managing projects; Construction in-dustry

1. Introduction

Traditional project scheduling approaches such as thecritical path method (CPM) and program evaluationand review technique (PERT) focus on logical depen-dencies by assuming unlimited resource availability.However, the assumption of unlimited variety ofresources may not be justified in many constructioncircumstances since only a fixed amount of resourcesare available or the cost of acquiring additionalresources is very high. Therefore, many analytical orheuristic approaches have been proposed to solve such

0263-7863/$30.00 � 2005 Elsevier Ltd and IPMA. All rights reserved.

doi:10.1016/j.ijproman.2005.06.006

* Corresponding author. Tel.: +852 3442 6505; fax: +852 2788 7612.E-mail addresses: [email protected] (H. Zhang), bshengli@

polyu.edu.hk (H. Li), [email protected] (C.M. Tam).1 Tel.: +852 2766 5879; fax: +852 2764 5131.2 Tel.: +852 2788 7620; fax: +852 2788 7612.

a resource-constrained construction scheduling problem(RCPSB).

Analytical methods for the RCPSB often adopt math-ematical models such as integer programming [1] and dy-namic programming [2], as well as branch-and-bound [3]or enumeration approaches to search for optima by con-sidering the RCPSB as NP-complete [4]. But the analyt-ical approaches may be computationally infeasible orface ‘‘combinatorial explosion’’ problem if the projectunder study is larger or more complicated [5,4,6].

Heuristic methods for the RCPSB [7,8] are aimed atsearching for optima in efficient ways. Most existingheuristic methods use priority rules such as shortestactivity duration (SAD), minimum late finish time(MILFT), or minimum total float (MITF) to determinewhich activity is to be scheduled earlier than others.However, there is little basis for choosing one amongdifferent heuristic rules and no priority rule dominatesall other or performs consistently better than others

84 H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92

[9]. Therefore, the heuristic methods based on heuristicrules are problem dependent (i.e., variable effectivenesson different cases) and may be trapped within local op-tima [10,5,6].

Genetic algorithm (GA), an evolutionary computa-tion technique, has been widely employed to solve theRCPSB [5,6]. The GA approach searches for the optimafrom a lot of generations of the chromosome-repre-sented schedules that are reproduced through cross-overand mutation, without referring to any heuristic rules.The internal updating mechanism of chromosomes en-ables GA to search for global optima by escaping fromlocal optima. Therefore, the GA approach can over-come the drawbacks of the analytical and heuristic ap-proaches. Nevertheless, some deficiencies in GAperformance including premature convergence or slowconvergence process (i.e., requiring a large number ofgenerations) have been also identified [11].

Particle swarm optimization (PSO) is an evolutionaryoptimization technique that simulates the social behav-ior of bird flocking to desired places. Like GA, PSOstarts by initializing a population of random solutionsand searches for optima by updating generations. ButPSO does not use any evolution operators. In PSO, par-ticles fly through the problem space by following its ownexperience and the best experience attained by theswarm as a whole. In contrast to analytical or generalheuristic methods, PSO is computationally efficientand has great capability of escaping local optima [13].In addition, PSO has advantages over GA due to itseasy implementation, relatively faster search process oreffective performance [13,14]. PSO has been applied toother industrial areas like electrical engineering forpower flow optimization [23,24]. To our knowledge,however, there have not been any applications of PSOto the RCPSB.

In this paper, a PSO-based approach is proposed forthe RCPSB with project-duration minimization as theobjective. Activities� priorities for scheduling, insteadof permutation of sequences, are considered as a candi-date solution to the RCPSB and represented by a PSOparticle. Through a parallel scheme, each particle canbe transformed to a feasible schedule according to re-source constraints and precedence constraints, facilitat-ing evaluation of potential solutions (i.e., schedulescorresponding to particles) during PSO search.

2. Description and formulation of the RCPSB

A project scheduling problem can be characterized bythe objective function, features of resources, and the pre-emption condition [4]. Minimization of project durationis often used as an objective of a general project sched-uling problem, while other objectives such as minimiza-tion of total project cost, maximization of net present

value of cash flows, and leveling of resource usage arealso considered. Resources involved in a project can besingle or multiple varieties, and can be renewable (i.e.,recovered after serving an activity, e.g., crew) or nonre-newable (limited in amount over project process and theconsumed part cannot be recovered, e.g., money). Pre-emption means that some activities (e.g., frame-install-ing in construction) can be interrupted during theirexecution, while non-preemption means that some activ-ities such as concreting operation are not allowed to beinterrupted once they are scheduled to start.

The RCPSB under study is based on the followingassumptions: (1) the activities composing a constructionproject have certain and known durations; (2) all prede-cessors must be finished before an activity can start (i.e.,precedence constraints); (3) resources can be multiplevarieties, available in limited amounts and renewablefrom period to period (multiple resource constraints);(4) activities are non-preemptive, that is, cannot beinterrupted when in progress; (5) managerial objectiveis to minimize the project duration.

In addition, a project is considered to be representedby activity-on-node network topology, where two dum-my activities with zero duration may be included forindicating the single start and end nodes of the project.In consideration of the above assumptions and the activ-ity-on-node representation, the formulation of theRCPSB used to be proposed by Talbot [1] and Patterson[10], which is as follows:

min max fiji ¼ 1; 2; . . . ;Nf g ð1Þsubject to :

fj � fi P di 8j 2 P i;

i ¼ 1; 2; . . . ;N ; ð2ÞX

Atrik 6 Rk; k ¼ 1; 2; . . . ;K;

t ¼ si; s2; . . . ; sN ; ð3Þ

where N is the number of the activities involved in a pro-ject and fi is the finish time of activity i (i = 1, . . ., N); di isthe duration of activity i, Pi is the set of activities thathave been already scheduled (i.e., predecessors) beforeactivity i can be scheduled to start;Rk is available amountof resource k (k = 1, . . ., K) and K is the number of theresource types; rik is the amount of resource k requiredby activity i, and At is the set of ongoing activities at tand si (=fi�di) is the start time of activity i. Eq. (1) repre-sents the objective, while Eqs. (2) and (3), respectively, rep-resent precedence constraints and resource constraints.

3. Principle of particle swarm optimization

PSO simulates a social behavior such as bird flockingto a promising position or region for food or otherobjectives in an area or space [15,16]. Like evolutionary

H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92 85

algorithm, PSO conducts search using a population,which is called swarm, of individuals, which are calledparticles. Each particle represents a candidate positionor solution to the problem at hand, resembling the chro-mosome used by GA to represent a potential solution.In contrast to GAs cross-over or mutation for evolvingnext generations of chromosomes, during searching foroptima each PSO particle adjusts its trajectory towardsits own previous best position, and towards the best pre-vious position attained by any member of its neighbor-hood (i.e., the whole swarm). Thus, global sharing ofexperience or information takes place and particles prof-it from the discoveries of themselves (i.e., local best) andprevious experience of all other companions (i.e., globalbest) during search process.

PSO is initialized with a population of M randomparticles and then searches for best position (solutionor optimum) by updating generations until getting a rel-atively steady position or exceeding the limit of iterationnumber (i.e., T). In every iteration or generation, the lo-cal bests and global bests are determined through evalu-ating the performances, i.e., fitness values or objectives,of the current population of particles. Each particle istreated as a point in a N-dimensional space. Two factorscharacterize a particle status on the search space: its po-sition and velocity [12]. The N-dimensional position forthe ith particle in the tth generation (i.e., iteration) canbe denoted as Xi(t) = {xi1(t), xi2(t), . . ., xiN(t)}. Simi-larly, the velocity (i.e., distance change), also a N-dimen-sional vector, for the ith particle in the tth generationcan be described as Vi(t) = {vi1(t), vi2(t), . . ., viN(t)}.The following equations [12] can represent the updatingmechanism of a population of particles� status from theones of the last generation during search process:

V iðtÞ ¼ wðtÞV iðt � 1Þ þ c1r1ðX Li � X iðt � 1ÞÞ

þ c2r2ðXG � X iðt � 1ÞÞ; ð4ÞX iðtÞ ¼ V iðtÞ þ X iðt � 1Þ; ð5Þ

where i = 1, 2, . . ., M and t = 1, 2, . . ., T; X Li ¼ fxLi1;

xLi2; . . . ; xLiNg represents the local best (position or solu-

tion) of the ith particle associated with the best fitnessencountered after t � 1 iterations, while XG ¼ fxG1 ;xG2 ; . . . ; x

GN g represents the global best among all the

population of particles achieved so far. c1 and c2 arepositive constants (namely learning factors) and r1 andr2 are random number between 0 and 1; w(t) is theinertia weight used to control the impact of the previousvelocities on the current velocity, influencing the trade-off between the global and local exploration abilitiesduring search.

Eq. (4) is used to calculate the particle�s new velocityaccording to its previous velocity and the distances of itscurrent position from its own best experience or positionand the group�s best experience or position. Then the par-ticle flies toward a new position according to Eq. (5) [17].

It can be noticed that PSO shares many commonpoints with GA, such as random generation of initialpopulation, search for optima by updating generationsor iterations, and evaluation of a fitness or objectivefor possible solutions. However, they have differentexperience sharing mechanisms during search; all chro-mosomes of GA share unclassified search experiencewith each other, while each PSO particle shares onlyits own search experience (local best) and its compan-ions� search experience (global best).

4. PSO particle representation for the RCPSB

In order to apply PSO, it is necessary to find a suit-able mapping between the RCPSB at hand and thePSO particle. Priority-based scheduling [4] combinedwith a parallel transformation scheme is used to bridgethe PSO particle with the RCPSB.

4.1. Particle-represented priorities of activities

In general, the heuristic methods are based on prior-ity rules (e.g., SAD rule, MILFT rule, and MITF rule)to make scheduling decisions with the objective of min-imizing project duration. The conflicts in schedulingmultiple activities competing for limited resources canbe resolved according to priorities; among schedulableactivities whose predecessors are all completed andwhich require no more resources than available amountsat the time, the activities with higher priorities should beassigned the resources and scheduled prior to the oneswith lower priorities. The priority of an activity is gener-ally determined based on one or multiple factors such asthe activity�s critical index, duration, amounts of re-quired resources, and number of the directly successiveactivities, etc. Different computing models for the prior-ities by taking into account these factors will character-ize the corresponding priority rules and may lead todifferent performances. Because there is no systematicmeasure to select a heuristic rule or to decide which isbetter than others [9], a multiple-pass heuristic methodthat considers different priority rules for each pass isproposed so as to select the best one among multiplesolutions [7,18,19]. Moreover, a local search way foran improved solution by adjusting start times of someactivities based on the current multiple-solutions fromthe multiple-pass heuristic is recommended [20].

The above multiple-pass heuristic or local searchmethods actually reflect the concept of determining abetter set of priorities that lead to a better schedule byadjusting the original priorities or their results. Such aconcept is the basis on which priorities of activities arerepresented through PSO particles, so that the optimalschedule can be searched from a population of parti-cle-represented priorities that are updated according to

86 H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92

PSO mechanism. Instead of obtaining initial prioritiesfrom different heuristic rules, the initial priorities repre-sented by PSO particles are randomly generated.

As a point in a N-dimensional space, the N elementsof a PSO particle can stand for the N activities in a pro-ject under study. Hence, the N parameters of a particle�sposition, i.e., Xi(t) = {xi1(t), xi2(t), . . ., xiN(t)}, can repre-sent the priorities of the N activities, while the place-ments of the parameters in the N-dimensional particlereflectively correspond to indexes of the activities, asFig. 1 shows.

The above priority-based particle representationresembles the GAs random keys chromosome represen-tation that encodes a solution for the RCPSB with ran-dom numbers [5]. Like the random keys chromosomerepresentation, the priority-based particle representationis able to avoid infeasible sequences (i.e., ones violatingprecedence constraints) from current particle positions,which may be resulted from sequence-permutation rep-resentation that is often used for GA in solving theRCPSB.

4.2. Parallel transformation from particle to schedule

The sequence-permutation representation directlystands for a schedule because the number of an elementin the permutation (e.g., a gene in a chromosome) repre-sents an activity�s index and the placement of the ele-ment corresponds to the order or sequence of theactivity. On the other hand, the particle-represented pri-orities must be transformed to feasible schedule basedon precedence constraints and available resources fromperiod to period, so that the updated particles can beevaluated with the objective of minimizing project dura-tion. With known priorities of activities, there are twoschemes, i.e., serial scheme and parallel scheme [21], toperform scheduling in consideration of precedence con-straints and resource constraints in a stage-wise fashion,

Placement: 1 2 … 5 … N(Activity Index)Particle Position: xi1(t)xi2(t) … xi5(t) … xiN (t)

Mapping

N -Dimension PSO Particle

Activity Priorities for a RCPSB

Activity Index: 1 , 5, …, N, 2

Priority Value: p1, p5, …, pN, p 2

Parallel

Particle E

Fig. 1. Mapping to PSO particle an

including determining sequences and start times of activ-ities. Other than the serial scheme to transform GAsrandom keys chromosome representation to a schedule[5], the parallel scheme is adopted to generate a schedulefrom the priorities represented with the PSO particle(Fig. 1).

The parallel transformation scheme consists of a ser-ies of stages in each of which multiple activities that aresatisfied with both the precedence and resource con-straints should be scheduled. The scheduling time foreach stage is equal to the earliest completion time ofthe activities scheduled in the previous stages. In consid-eration of the known priorities of the activities, eachstage is made up of the following four steps:

(1) determine the new scheduling time that will beequal to the earliest finish time of the activities thathave been scheduled but not completed;

(2) collect a set of feasible activities that are satisfiedwith the precedence feasibilities and schedulableif allocated the currently available resources atthe newly determined scheduling time;

(3) select an activity from the set of feasible activitiesone after another in descending order of their pri-orities and assign a required amount of the avail-able resources to it;

(4) schedule to start the activities assigned with theresources at the newly determined scheduling time,and then continue again from (1) if any activitieshave not been scheduled so far.

The priorities can be numbers between 0 and 1. Dueto random initialization and use of the random numbers(real numbers from 0 to 1) in the computing equations(4) and (5) for updating particles, there is very littleprobability that two or more activities have the com-pletely same priorities (real numbers), requiring no mea-sure to handle tie-priority cases. Any set of priorities

Sequence: 2 1 … 5 … N(Activity Index)Start Time: s1 s1 … s5 … sN

Scheme

valuation Feasible Schedule

d transformation to schedule.

5

0 1 2 3 4 5 6 7 8 9 10 11 12 13

t

1

2

3

4

R1

2 4

1

6

3

2

3

4

4

3

2

3

4

2

2

1

4

Start

1

2

3

4 6

5

Stopri1

di

i

K = 1

R1 = 4

a

b

Fig. 2. An illustrative example of RCPSB.

H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92 87

definitely corresponds to a feasible schedule, eventhough some different sets of priorities may lead to thesame schedule as others because minor changing of thepriorities can not change their order from high to low.

Fig. 2(a) is an activity-on-node network of a projectexample with six activities and two dummy activities,where circle nodes with index numbers in them representactivities, the numbers above and below the circles,respectively, indicate activity duration and requiredamounts of various types of resources. Through the par-allel scheme, a six-dimensional particle-represented pri-orities, i.e., {0.58, 0.65, 0.33, 0.77, 0.09, 0.39}, can betransformed to the schedule (Fig. 2(b)) which includesallocation profile of the resources.

5. PSO framework for the RCPSB

Based on the particle representation of activitypriorities and the parallel scheme to transform theparticle-represented priorities to a feasible schedule,the framework of the PSO methodology for theRCPSB is developed.

5.1. Parameters configuration for PSO

Because the PSO particle represents a series of prior-ities that range from 0 to 1, all parameters of theN-dimensional particle positions, either initialized or

updated during search, must be limited to [0, 1] or[Xmin, Xmax], avoiding infeasible particle positions thatcan lead to slow PSO search. Each parameter of the ini-tialized or updated position that is beyond [Xmin, Xmax]can be adjusted in the following form:

if xijðtÞ > Xmax then xijðtÞ ¼ Xmax

else if xijðtÞ < Xmin then xijðtÞ ¼ Xmin.

At the same time, the particle velocity (i.e., distancechange) based on the current position should also belimited so as to prevent the updated position from oscil-lating too heavy; oscillating of the particle velocity maycause particles to fly outside feasible search space (i.e.,[Xmin, Xmax]) when using Eq. (5) and accordingly slowdown PSO search. Based on the search space for the par-ticle position, the maximum velocity (i.e., Vmax) equalsXmax at most. Therefore, the velocity of an updatedparticle should be limited to [�Vmax, Vmax] (i.e.,[�1, 1]). During PSO search process, each parameterof the N-dimension particle velocity that is beyond[�Vmax, Vmax] should be adjusted as follows:

if vijðtÞ > V max then vijðtÞ ¼ V max

else if vijðtÞ < �V max then vijðtÞ ¼ �V max.

The inertia weightw(t) can be constant or varying withiteration. Varying inertia weight (i.e., from larger to smal-ler) is recommended to enhance global exploration forearly iterations and to facilitate local exploration for late

88 H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92

iterations. Through experiments in our study, the con-stant inertia weight w(t) = 1 is found best suitable, inaccordance with the conclusion that an inertia weight of1 is a good choice when the maximum velocity (i.e.,Vmax = 1) is small (e.g., smaller than 2) [17]. For the num-ber of particles in the population or swarm, i.e., M orcalled P-size, more particles may increase success insearching for optima due to sampling state space morethoroughly. However, more particles require moreevaluation runs, leading more optimization cost [22].Therefore, a medium number (e.g., the one equal to thenumber of activities except for dummy activities) of parti-cles are generally selected for the PSO-based approach.The difference caused by different learning factors c1 andc2 is not obvious [22], hence, they are set to 2 as usual [12].

5.2. Procedure of the PSO-based approach

For a N-activities project that is represented by activ-ity-on-node network topology, the procedure to imple-ment the PSO for the RCPSB is expounded as follows,in which M particles in the swarm are considered.

Initialization Set iteration t=0Randomize particles’ positionsRandomize particles’ velocitiesSearch local and global best

Velocity UpdatingCompute vij(t) according toequation (4)Adjust vij(t) based on velocitylimit, [-1,1]

Proceeding to Next Iteration1+= tt

Particle TransformationUse parallel scheme totransform each particle to aschedule Obtain project duration of eachschedule

Position UpdatingCompute xij(t) according toequation (4)Adjust xij(t) based on position limit [0,1]

Fig. 3. Procedure to impleme

Step 1 (Initialization). Set iteration counter as 0 andinitialize M particles by randomly generating theirpositions, i.e., Xi(0) = {xi1(0), xi2(0), . . ., xiN(0)}, i =1, . . .,M, within the search space [0, 1]. Meanwhile,the velocities of the initialized particles, i.e., Vi(0) ={vi1(0), vi2(0), . . ., viN(0)}, i = 1, . . .,M, are also gener-ated randomly and are limited to [�1, 1]. Then for eachparticle, the initialized positions is set as their local bestpositions, i.e., X L

i ¼ fxLi1; xLi2; . . . ; xLiNg, i = 1, . . ., M.Finally, all particles should be evaluated according tothe project duration corresponding to their schedulesgenerated using the parallel scheme, determining theglobal best XG ¼ fxG1 ; xG2 ; . . . ; xGNg as Step 6 does.

Step 2 (Proceeding to next iteration). After evaluat-ing all initialized or updated particles in the populationand finding out the local best and the global best, theiteration counter should be updated, i.e., t = t + 1, soas to proceed to next iteration of the PSO search.

Step 3 (Velocity updating). Based on the previousvelocities and the distances of the current positions fromthe local best X L

i ¼ fxLi1; xLi2; . . . ; xLiNg and the global bestXG ¼ fxG1 ; xG2 ; . . . ; xGN g, all particles� new velocities, i.e.,

YES

Particle EvaluationEvaluate particles anddetermine the current local bestSearch among all particles anddetermine the current globalbest

Meet anytermination

signals?

Stop

NO

nt PSO for the RCPSB.

Table 1Comparison with other heuristic or GA results

Scheduling approach Project duration

MITF 74SAD 71MILFT 67GA 64PSO 64

H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92 89

Vi(t) = {vi1(t), vi2(t), . . ., viN(t)}, are calculated using Eq.(4) and are subject to the velocity limit [�1, 1].

Step 4 (Position updating). Based on the updatedvelocities, the new positions, i.e., Xi(t) = {xi1(t),-xi2(t), . . ., xiN(t)}, that each particle will fly towardshould be calculated according to Eq. (5) and are sub-ject to the position limit [0, 1].

Step 5 (Particle transformation). Each updated parti-cle is transformed to the schedule using parallel schemebased on the priorities, i.e., the current positionXi(t) = {xi1(t), xi2(t), . . ., xiN(t)}. The project durationthat equals the largest finish time of an activity can bedetermined according to Eq. (1).

Step 6 (Particle evaluation). For each particle, theproject duration of the schedule transformed from theupdated position Xi (t) = {xi1(t), xi2(t), . . ., xiN(t)} istested if smaller than that of its previous local best (po-sition), i.e., X L

i ¼ fxLi1; xLi2; . . . ; xLiNg, so as to update thelocal best. Among all particles, search for the global bestparticle position corresponding to a schedule with theshortest project duration; if this shortest project dura-tion is smaller than that of the previous global best, itshould replace the previous one XG ¼ fxG1 ; xG2 ; . . . ; xGN g.

Step 7 (Stopping criteria). The PSO will be termi-nated if the current iteration meets any one of termina-tion signals. The termination signals considered hereinclude: (1) maximum number of iterations since lastupdating of the global best, and (2) maximum totalnumber of iterations.

The above procedure is also described in a flowchartthrough Fig. 3. According to the procedure, the pro-posed PSO for the RCPSB has been implemented usingVISUAL C++ programming language. In order not tolengthen the paper, the details for the developed systemare not provided here.

5

Start

5, 3, 2

4, 5, 3

2, 5, 2

1, 4, 4

4, 2, 4

5, 5, 4

5, 3, 2

2, 3, 2

1, 4, 4

2, 3, 4

3, 3,2

4, 1, 4

5, 5, 4

2, 2, 2

5, 1, 4

5

3

4

2

1

6

6

1

3

3

3

3

6

4

1

2

3

4

5

6

7

8

9

10

11 15

14

13

12

Fig. 4. An exampl

6. Computational analyses

In order to investigate the PSO-based method for theRCPSB, a typical project example shown in Fig. 4 isanalyzed. The project considers three types of renewableresources (e.g., crew and equipment) and consists of 25activities and two dummy activities. Each activity hascertain duration which is indicated above the corre-sponding circle node. Two activities (i.e., 20 and 25)require two types of the resources, while others requirethree types; the amount of each type of the resource is,respectively, indicated below the circle node. The prece-dence constraints among activities are described witharrow lines.

6.1. Result- comparison with other methods

The result (i.e., minimal project duration) of the PSO-based approach is compared with the results of otherheuristic or GA methods for the same project example.As stated in the section of parameter selection for thePSO-based approach, the inertia weight w(t) is selectedto be 1; two learning factors c1 and c2 are set to 2; andthe number of particles (i.e., M) in the population (i.e.,P-size) is set to 25, the number of activities except for

3, 5, 3

2, 3, 3

5, 4, 4

4, 2, 6

0, 1, 4

6, 1, 2

2, 2, 1

2, 3, 1

2, 2, 2

1, 0, 3

3

3

4

1

4

4

1

6

3

19

18

16

23

22

20

24

Stop

3

21 17

ri1, ri2 , r i3

di

i

25

e of RCPSB.

90 H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92

two dummy activities. The termination signals for PSO,i.e., the maximum number of iterations with steady glo-bal best and the maximum total number of iterationsare, respectively, given 40 and 400.

13

10

11

6

3

5

4

0 2 4 6 8 10 12 14 16 18 20 22 24 26

1

2

3

4

R1

2 7 1

8

28 30 32 3

5

6

136 4

0 2 4 6 8 10 12 14 16 18 20 22 24 26

1

2

3

4

R2

2 7

1

5

8

28 30 32 3

5

6

3

11 10

13

10

11

6

3

5

4

0 2 4 6 8 10 12 14 16 18 20 22 24 26

1

2

3

4

R3

2

7 1 8

28 30 32 3

5

6

Fig. 5. Schedule with allocation profi

Heuristic methods, respectively, based on three heu-ristic rules are implemented for comparison. The parallelscheme is used to perform scheduling according to thepriorities of activities. The three heuristic rules include:

25

24

21

17

9

22

19

12

18

15

t

4 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64

14

16

23

12

17 24

15 t

4 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64

19

18

22

9

14

16

21

23

20

25

21

24

20

16

17

23

12

22

19

18

15

9

t

4 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64

14

a

b

c

les for three types of resources.

H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92 91

(1) minimum total float (MITF) (give priority to onewith minimum total float that is computed withoutconsidering resource constraints); (2) shortest activityduration (SAD) (i.e., give priority to one with shortestduration); (3) minimum late finish time (MILFT) (i.e.,give priority to one with the minimal late finish time).

Besides, a GA method based on chromosome-repre-sentation for priorities has been implemented forcomparison under a similar environment, in which theparallel scheme is also used to transform chromosomesto schedules. The chromosome-represented prioritieshave almost the same form as the particle-representedpriorities, but are evolved through genetic operators(e.g., cross-over and mutation) other than the particleupdating mechanism during search. For GA experi-ment, population size is taken as the same as the numberof particles for PSO approach, i.e., 25, and cross-overrate as well as mutation rate are, respectively, set to0.6 and 0.04 (1/number of activities).

Table 1 shows the results, i.e., minimal project dura-tions corresponding to the optimal schedules obtainedusing the above approaches. It is clear that the PSO-based approach for the RCPSB can perform schedulingbetter than the heuristic methods, respectively, based onthe presented three heuristic rules; the results from theheuristic methods may be just local best ones. On theother hand, the PSO-based approach is able to obtainthe optimal schedule with the shortest project durationthe same as one from the GA method.

Fig. 5 shows the corresponding optimal scheduleobtained using the PSO-based approach. In addition tosequences and start times or finish times of the 25 activitiesin which dummy activities are not included, the allocationprofiles of the three types of resources (i.e.,R1,R2, andR3)are reflectively described in the schedule.

60

65

70

75

80

85

90

0 5 10 15 20

Iteration N

Proj

ect D

urat

ion

Fig. 6. Performance compariso

6.2. Performance-comparison between PSO and GA

The performance (i.e., the number of iterationsrequired to find out optima) of the PSO method iscompared with the GA approach on the same RCPSB.The parameters used above, e.g., the inertia weightand two learning factors for the PSO-based approachas well as cross-over rate and mutation rate for theGA approach, are also used here. Besides, the numberof PSO particles (i.e., P-size) is given the same as thepopulation size for GA, (i.e., 25), facilitating perform-ing comparison more reasonably. Because randomgeneration of some numbers is concerned in bothPSO (e.g., for r1 and r2) and GA (e.g., for mutationprobability) approaches discussed here, average num-bers from carrying out 100 runs of experiments,respectively, for PSO and GA approaches are usedfor comparing.

For this RCPSB, Fig. 6 shows the average projectduration (i.e., fitness) corresponding to the number ofiterations (or generations) that have passed through,respectively, for the PSO and GA approaches. It canbe observed that (1) the initial results and the final re-sults from both approaches are almost the same; (2)PSO requires somewhat fewer numbers of iterations orgenerations than GA to find out optimum, i.e., minimalproject duration; (3) PSO undergoes less oscillation thanGA in searching for optima.

In summary, the computational analyses for theRCPSB demonstrate that: (1) the proposed PSO-basedapproach is able to obtain the same result as the GA ap-proach while achieves better than general heuristic rules;(2) the PSO-based approach is more efficient than theGA approach because the former uses somewhat fewernumbers of iterations to find out optima.

25 30 35 40 45 50

umber

PSO

GA

n between PSO and GA.

92 H. Zhang et al. / International Journal of Project Management 24 (2006) 83–92

7. Conclusions

A PSO-based method including its correspondingframework is proposed for solving the RCPSB in termsof minimizing project duration. Particle-representationof activities priorities based on which a feasible schedulecan be definitely produced is adopted for the PSO-basedapproach, without using sequence-permutation repre-sentation that may leads to infeasible schedules. In orderto evaluate each potential solution, i.e., particle-repre-sented priorities of activities, a parallel scheme is utilizedto transform the particle to a feasible schedule accordingto the precedence and resource constraints. The compu-tational analyses show that the PSO-based approach forthe RCPSB has the capability to search for global opti-ma (i.e., optimal schedules with minimal project dura-tion), and is more efficient than the GA approach dueto its features such as one-way experience sharing mech-anism during PSO search. The PSO-based approachprovides an efficient and easy-to-implement alternativeto analyze and achieve the RCPSB.

Further work should address such issues includingselection of much reasonable PSO parameters (e.g., iner-tia weight w(t), learning factors c1 and c2 and populationsize M) for better PSO performances as well as applica-tion of PSO for solving the complicated RCPSB consid-ering resource leveling or multiple objectives. Inaddition, the proposed PSO method will be developedinto a user-friendly system so that the practitionerscan utilize it in solving the RCPSB.

References

[1] Talbot FB. Resource-constrained project scheduling with time-resource tradeoffs: the nonpreemptive case. Manage Sci1982;28(10):1197–210.

[2] Gavish B, Pirkul H. Algorithms for multi-resource generalizedassignment problem. Manage Sci 1991;37(6):695–713.

[3] Stinson JP. A branch and bound algorithm for a general classresource-constrained scheduling problem. PhD thesis, Universityof North Carolina at Chapel Hill, Chapel Hill, NC; 1976.

[4] Lee JK, Kim YD. Search heuristics for resource constrainedproject scheduling. J Operat Res Soc 1996;47(5):678–89.

[5] Chan WT, Chua DKH. Construction resource scheduling withgenetic algorithms. J Constr Eng Manage ASCE 1996;122(2):125–32.

[6] Leu SS, Yang CH. A genetic-algorithm-based resource-con-strained construction scheduling system. Constr Manage Econ1999;17:767–76.

[7] Boctor FF. Some efficient multi-heuristic procedures forresource-constrained project scheduling. Eur J Operat Res1990;49:3–13.

[8] Padilla EM, Carr RI. Resource strategies for dynamic projectmanagement. J Constr Eng Manage ASCE 1991;111(2):279–93.

[9] Davis EW, Patterson JH. A comparison of heuristic and optimumsolutions in resource-constrained project scheduling. Manage Sci1975;21:944–55.

[10] Patterson J. A comparison of exact procedures for solving themultiple constrained resource project scheduling problem. Man-age Sci 1984;30:854–67.

[11] Fogel DB. Evolutionary computation toward a new philosophy ofmachine intelligence. New York: IEEE Press; 1995.

[12] Kennedy J, Eberhart RC. Particle swarm optimization. In:Proceedings IEEE conference on neural networks, vol. IV,Piscataway, NJ, 1995; p. 1942–48.

[13] Eberhart RC, Shi Y. Comparison between genetic algorithms andparticle swarm optimization. In: Evolutionary programming VII:proceedings of the seventh annual conference on evolutionaryprogramming, San Diego, CA; 1998, p. 611–6.

[14] Robinson J, Sinton S, Rahmat-Samii Y. Particle swarm,genetic algorithm, and their hybrids: optimization of aprofiled corrugated horn antenna. In: IEEE Antennas andPropagation Society International symposium and URSInational radio science meeting, San Antonio, TX; 2002,p. 168–75.

[15] Eberhart RC, Shi Y. Tracking and optimizing dynamic systemswith particle swarms. In: Proceedings of the IEEE congress onevolutionary computation (CEC 2001), Seoul, Korea; 2001, p. 94–7.

[16] Clerc M, Kennedy J. The particle swarm-explosion, stability, andconvergence in a multidimensional complex space. IEEE TransEvol Comput 2002;6(1):58–73.

[17] Shi Y, Eberhart RC. Parameter selection in particle swarmoptimization. In: Evolutionary programming VII: proceedings ofthe seventh annual conference on evolutionary programming,New York; 1998, p. 591–600.

[18] Bell CE, Han J. A new heuristic solution method in resource-constrained project scheduling. Naval Res Log 1991;38:315–31.

[19] Khattab MM, Choobineh F. A new approach for projectscheduling with a limited resource. Int J Prod Res 1991;30:185–98.

[20] Sampson SE, Weiss EN. Local search techniques for thegeneralized resource constrained project scheduling problem.Naval Res Log 1993;40:365–75.

[21] Kolisch R. Serial and parallel resource-constrained projectscheduling methods revisited: theory and computation. Eur JOperat Res 1996;90:320–33.

[22] Trelea IC. The particle swarm optimization algorithm: conver-gence analysis and parameter selection. Inform Process Lett2003;85(6):317–25.

[23] Abido MA. Optimal power flow using particle swarm optimiza-tion. Electr Power Energy Syst 2002;24:563–71.

[24] Yoshida H, Kawata K, Fukuyama Y, Takayama S, Nakanishi Y.A particle swarm optimization for reactive power and voltagecontrol considering voltage security assessment. IEEE TransPower Syst 2000;15(4):1232–9.