scheduling resource-constrained projects with ant colony optimization artificial agents

11
Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents Symeon Christodoulou, M.ASCE 1 Abstract: The paper presents a methodology to schedule resource-constrained construction projects by use of algorithms based on ant colony optimization ACO; an artificial agent inspired by the collective behavior of natural ant colonies as they optimize their path from an origin ant nest to a destination food source by use of previously acquired knowledge. Further, to an application of the ACO artificial agent to a resource-unconstrained network topology, the method is applied to a resource-constrained network and utilized in examining the effects of resource availability constraints to critical path calculations and project completion time. DOI: 10.1061/ASCE0887-3801201024:145 CE Database subject headings: Computer aided scheduling; Resource allocation; Artificial intelligence; Algorithms; Construction management. Author keywords: Computerized scheduling; Resource management; Artificial intelligence; Ant colony; Optimization. Introduction Successful project management is subject to both an ability to accurately map a project’s logic and requirements, as well as a manager’s ability to manage the stated requirements and available project resources. A project map is fundamentally a unidirec- tional, fully connected graph of the activities defining the project which is also resource and cost-loaded and can be solved for the most critical activities in the project. Within this framework of mapping a project’s logic network i.e., the flow of activities and identifying the activities that are the most critical to accomplish- ing specified milestones, the science of construction scheduling has gained in importance and has become the focal point of con- struction management practitioners. Despite its importance, though, the topic has made relatively small steps of progress in recent years as the construction industry by nature is slow to invest in, or to adopt, new methodologies and practitioners opted to rely on traditional and proven methods. Currently, the most widely used method for analyzing con- struction networks and solving for longest critical paths in them is the critical path method CPM; a deterministic approach that relies on forward and backward pass calculations to solve for the critical path in a network critical being the sequence of activities from project start to project end that results in the longest path in the network, thus defining the project’s duration. The CPM ap- proach is that of an exhaustive enumeration of all feasible paths in a network, with all relevant time and resource constraint consid- eration typically performed by linear programming and optimiza- tion algorithms. Despite their perceived computational simplicity and their popularity among planners, though, currently available CPM- based tools exhibit certain limitations. Most noteworthy of these limitations are: 1 the inability to calculate longest or shortest paths from a given node activity to any other node in the project network; 2 the inability to account for resource-driven activity relationships “AND”/“OR” combinations of resources; and 3 the computational inefficiency of the critical path method. Fur- thermore, traditional CPM-based tools lack the capability to ad- dress resource-driven or resource-constrained schedules, for they tend to simplify the problem from a “fixed-limits resource scheduling problem” to a “resource leveling problem.” The former refers to a situation where there is a definite limitation on the amount of resources available. The latter refers to the need to reduce fluctuations in the pattern of resource usage. The work presented builds on previous work on critical path calculations by use of ant colony optimization ACOChristodoulou 2005a,b and presents a methodology to extend the ACO solution algo- rithms to account for resource-constrained construction se- quences. Resource-Constrained Scheduling Resource availability constraints are a typical real-life construc- tion scheduling problem; a problem that limits a constructor’s ability to execute and deliver a project as originally planned. It is, thus, imperative that the development of project schedules in- cludes not only activity precedence relations and duration assign- ments, but also resource assignments for each activity in the network. Resource-loaded project schedules and to that extent cost-loaded schedules can furnish construction planners with the means for an effective incorporation and analysis of the possible effects of limited resource availability to a successful and timely project completion. Projects the activities of which are assigned a resource or a set of resources with limited capacity or of limited availability fall under a category of scheduling problems termed resource- constrained scheduling problems RCSPs. These projects are constrained in their capacity to meet the constructor’s predefined 1 Assistant Professor, Dept. of Civil and Environmental Engineering, Univ. of Cyprus, Nicosia 1678, Cyprus. E-mail: [email protected] Note. This manuscript was submitted on January 21, 2008; approved on June 3, 2009; published online on December 15, 2009. Discussion period open until June 1, 2010; separate discussions must be submitted for individual papers. This paper is part of the Journal of Computing in Civil Engineering, Vol. 24, No. 1, January 1, 2010. ©ASCE, ISSN 0887-3801/2010/1-45–55/$25.00. JOURNAL OF COMPUTING IN CIVIL ENGINEERING © ASCE / JANUARY/FEBRUARY 2010 / 45 J. Comput. Civ. Eng. 2010.24:45-55. Downloaded from ascelibrary.org by University of Cincinnati on 11/13/14. Copyright ASCE. For personal use only; all rights reserved.

Upload: symeon

Post on 16-Mar-2017

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

Scheduling Resource-Constrained Projects with Ant ColonyOptimization Artificial Agents

Symeon Christodoulou, M.ASCE1

Abstract: The paper presents a methodology to schedule resource-constrained construction projects by use of algorithms based on antcolony optimization �ACO�; an artificial agent inspired by the collective behavior of natural ant colonies as they optimize their path froman origin �ant nest� to a destination �food source� by use of previously acquired knowledge. Further, to an application of the ACO artificialagent to a resource-unconstrained network topology, the method is applied to a resource-constrained network and utilized in examining theeffects of resource availability constraints to critical path calculations and project completion time.

DOI: 10.1061/�ASCE�0887-3801�2010�24:1�45�

CE Database subject headings: Computer aided scheduling; Resource allocation; Artificial intelligence; Algorithms; Constructionmanagement.

Author keywords: Computerized scheduling; Resource management; Artificial intelligence; Ant colony; Optimization.

Introduction

Successful project management is subject to both an ability toaccurately map a project’s logic and requirements, as well as amanager’s ability to manage the stated requirements and availableproject resources. A project map is fundamentally a unidirec-tional, fully connected graph of the activities defining the projectwhich is also resource and cost-loaded and can be solved for themost critical activities in the project. Within this framework ofmapping a project’s logic network �i.e., the flow of activities� andidentifying the activities that are the most critical to accomplish-ing specified milestones, the science of construction schedulinghas gained in importance and has become the focal point of con-struction management practitioners. Despite its importance,though, the topic has made relatively small steps of progress inrecent years as the construction industry by nature is slow toinvest in, or to adopt, new methodologies and practitioners optedto rely on traditional and proven methods.

Currently, the most widely used method for analyzing con-struction networks and solving for longest �critical� paths in themis the critical path method �CPM�; a deterministic approach thatrelies on forward and backward pass calculations to solve for thecritical path in a network �critical being the sequence of activitiesfrom project start to project end that results in the longest path inthe network, thus defining the project’s duration�. The CPM ap-proach is that of an exhaustive enumeration of all feasible paths ina network, with all relevant time and resource constraint consid-eration typically performed by linear programming and optimiza-tion algorithms.

Despite their perceived computational simplicity and their

1Assistant Professor, Dept. of Civil and Environmental Engineering,Univ. of Cyprus, Nicosia 1678, Cyprus. E-mail: [email protected]

Note. This manuscript was submitted on January 21, 2008; approvedon June 3, 2009; published online on December 15, 2009. Discussionperiod open until June 1, 2010; separate discussions must be submittedfor individual papers. This paper is part of the Journal of Computing inCivil Engineering, Vol. 24, No. 1, January 1, 2010. ©ASCE, ISSN

0887-3801/2010/1-45–55/$25.00.

JOURNAL OF COMPUTING

J. Comput. Civ. Eng. 2

popularity among planners, though, currently available CPM-based tools exhibit certain limitations. Most noteworthy of theselimitations are: �1� the inability to calculate longest �or shortest�paths from a given node �activity� to any other node in the projectnetwork; �2� the inability to account for resource-driven activityrelationships �“AND”/“OR” combinations of resources�; and �3�the computational inefficiency of the critical path method. Fur-thermore, traditional CPM-based tools lack the capability to ad-dress resource-driven �or resource-constrained� schedules, forthey tend to simplify the problem from a “fixed-limits resourcescheduling problem” to a “resource leveling problem.” Theformer refers to a situation where there is a definite limitation onthe amount of resources available. The latter refers to the need toreduce fluctuations in the pattern of resource usage. The workpresented builds on previous work on critical path calculations byuse of ant colony optimization �ACO� �Christodoulou 2005a,b�and presents a methodology to extend the ACO solution algo-rithms to account for resource-constrained construction se-quences.

Resource-Constrained Scheduling

Resource availability constraints are a typical real-life construc-tion scheduling problem; a problem that limits a constructor’sability to execute and deliver a project as originally planned. It is,thus, imperative that the development of project schedules in-cludes not only activity precedence relations and duration assign-ments, but also resource assignments for each activity in thenetwork. Resource-loaded project schedules �and to that extentcost-loaded schedules� can furnish construction planners with themeans for an effective incorporation and analysis of the possibleeffects of limited resource availability to a successful and timelyproject completion.

Projects the activities of which are assigned a resource �or aset of resources� with limited capacity or of limited availabilityfall under a category of scheduling problems termed resource-constrained scheduling problems �RCSPs�. These projects are

constrained in their capacity to meet the constructor’s predefined

IN CIVIL ENGINEERING © ASCE / JANUARY/FEBRUARY 2010 / 45

010.24:45-55.

Page 2: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

objectives, usually to complete all necessary tasks in the mini-mum total finish time. Since the parameters defining RCSP couldvary in nature and quantity, the required solution optimization is aNP-hard problem the complexity of which increases substantiallywith the project’s network size.

Unlike resource-constrained scheduling problems encounteredin typical day-to-day operations though �such as employee shifts,manufacturing, bus routing, etc.� resource-constrained construc-tion schedules are also governed by network precedence relation-ships. This adds to the complexity of the problem since insearching for the minimum project duration under resource con-straints, activity precedence constraints should also be taken intoaccount. In general, construction tasks require different amountsof resources of which only a certain amount is available at eachtime step �Lenstra and Kan 1978�. A solution to RCSP can besought through a number of possible methodologies. A very com-mon approach is to utilize implicit enumeration and backtracking�the methods used by most commercially available exact solvers�such as branch and bound methods, as proposed in Brucker andKnust �2003�, Demeulemeester and Herroelen �1992, 1997�, Min-gozzi et al. �1998�, Crawford �1996�, and Garey et al. �1976�.Other methods utilize intelligent branching and evaluation tech-niques such as mathematical programming �Winston and Venka-taramanan 2002�, dynamic programming �Carruthers andBattersby 1966�, zero-one programming �Patterson 1984�, or ar-tificial agent techniques such as genetic algorithms �Hegazy1999� and ACO �Merkle et al. 2002, Christodoulou 2005a,b, Chenand Lo 2006, Christodoulou 2007�. The work by Chen and Lo�2006� presents and evaluates a modified ACO approach to RCSPin which the latest stating time of each activity is modified in thedynamic rule for each iteration. Christodoulou �2005, 2007� pre-sents modifications to the basic ACO algorithm, case studies, andsensitivity analysis. Merkle et al. �2002� investigate several otherfeatures, such as the use of a combination of two pheromoneevaluation methods by the ants to find new solutions, a change ofthe influence of the heuristic on the decisions of the ants, and theoption that an elitist ant forgets the best-found solution.

Brucker has also developed a variety of heuristic approachesfor RCSP which can also solve realistic problems in reasonabletime �Brucker et al. 1998�. More recently, Aslani �2007� put for-ward a resource allocation methodology for the prioritization ofwork and optimization of resource allocation by using the per-ceived earned value �in terms of resource utilization� for complet-ing an activity. Within that context, an activity’s utility index�defined as the ratio of the number of required resources to ac-complish the specific activity to the total number of resourcesrequired by all competing activities at the time of resource allo-cation� is used in conjunction with dynamic programming tomaximize the utility for each activity and subsequently optimizethe allocation of resources and minimize the project’s duration.

There are, in general, two categories of scheduling paradigmsthat can be used in addressing resource-constrained problems:serial scheduling and parallel scheduling. In the former paradigm,a priority list of activities is determined at time 0, with the orderof activities in the priority list independent of the resource con-straints. Given the priority list, activities are scheduled at theearliest possible time at which the precedence constraints are sat-isfied and the resources are available �Colak et al. 2006; Liu et al.2005; Senouci and Eldin 2004; Sakellaropoulos and Chassiakos2004�. In the latter scheduling paradigm, the order of activities isnot determined at time 0 and scheduling decisions are made whenactivities are planned to begin and resources are available.

In terms of parallel resource-constrained scheduling, the fun-

46 / JOURNAL OF COMPUTING IN CIVIL ENGINEERING © ASCE / JANUA

J. Comput. Civ. Eng. 2

damental issue is which activity among competing activities, willreceive the required resources first. In order to answer this ques-tion the construction planner has to dynamically evaluate his op-tions at every junction in the construction process and decide onwhich activity would maximize the constructor’s “return on in-vestment,” which usually means the activities that would mini-mize the overall project duration.

Typical commercial software, such as Primavera Project Plan-ner �P3� or Microsoft Project �MSP�, address resource-constrained scheduling by means of resource leveling. Duringresource leveling, P3 for example “only schedules an activity tooccur when its resource demands can be met. To accomplish this,P3 may delay or advance activities to resolve resource availabil-ity conflicts. Typically, leveling is done on the forward passthrough the project (and) P3 determines the earliest dates it canschedule an activity when sufficient resources will be available toperform the task.” �Primavera Project planner2001�. The methodP3 uses to forward-level a project involves several steps. At first,the entire network is broken into a logical sequence of activitiesto find the first activity �or activities� without unsatisfied prede-cessor relationships. Normal resource limits are initially assumedand any resources that activities in progress are using are de-ducted from the available resource pool. P3 then checks that therewill be sufficient resources available to satisfy the activity’s de-mands for its entire duration. If so, P3 schedules the activity andmoves to the next one in line. If there are no available resources,P3 tries to utilize the activity’s TF to reschedule the activity. If theactivity has positive float then its start is delayed by one workperiod and the resource availability is re-examined. If the avail-able resources are not sufficient then the activity keeps beingdelayed until the positive TF is exhausted. If the activity cannotbe scheduled by the time its TF is exhausted, then P3 retries toschedule it but this time assuming a higher resource availability,depending on whether or not resource smoothing is in effect. If P3cannot schedule the activity within its TF, even assuming themaximum resource availability, it delays the activity beyond itsTF �until the necessary resources are made available to the activ-ity�. This means that the activity will delay the project’s comple-tion.

Similarly, when MSP levels overallocated resources, “it goesthrough a series of decisions about each of the tasks in the sched-ule to determine whether they can be delayed or split in order toalleviate the resource overallocations. The following factors areexamined to determine which tasks should be delayed or split”�Microsoft Project 2000�: available slack, task duration, task’sconstraints, task ID, task priority, task interdependencies, andscheduling dates. As seen, the prioritization is primarily based onthe activity’s TF and duration values.

ACO

Overview

ACO is a population-based, artificial multiagent, general-searchtechnique, proposed by Dorigo et. al. �1996�, Dorigo and Stutzle�2002�, and Dorigo and Blum �2005� for the solution of difficultcombinatorial problems. The method’s theoretical roots are basedon the behavior of real ant colonies and the collective trail layingand trail following of its members in searching for optimal solu-tions in traversing multiple paths, a behavior characterized by“the combination of a priori information about the structure of a

promising solution with a posteriori information about the struc-

RY/FEBRUARY 2010

010.24:45-55.

Page 3: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

ture of a previously obtained good solution” �Maniezzo et al.2004�. In essence, ACO is inspired by the foraging behavior ofnatural ant colonies which optimize their path from an origin �antnest� to a destination �food source� by taking advantage of knowl-edge acquired by ants that previously traversed the possible paths,and the pheromone trail that these ants left behind as they tra-versed the paths to optimal solution. The common framework forACO applications was proposed posteriori to be the ACO meta-heuristic, with artificial ants seen as stochastic solution proce-dures and acting as agents. The generic problem topology andsolution procedure were also described posteriori �Dorigo andStutzle 2002�.

The underlying methodology is modeled after the behaviorexhibited by real-life ant colonies as they search for shortest pathsin node-to-node path traversing situations. The behavior exhibitedby the ants as they travel a given topology is characterized by areinforcement mechanism that helps steer succeeding ants to themost frequently previously traversed path. As an ant randomlyselects �Figs. 1�a and b�� and traverses a possible path from astarting point �ant nest� to a destination �food source� and back�Fig. 1�c��, it deposits on the selected route a chemical substancecalled “pheromone,” forming “pheromone trails” which can thenbe followed by other ants in the colony �Fig. 1�d��. When succes-sive ants choose their way through the possible path routes theysmell the deposited pheromone and tend to follow the pathsmarked by stronger pheromone concentrations �Fig. 1�e��. Theprocess is dynamically self-adjustable and correctable, even at thepresence of unforeseen obstacles �Fig. 1�f��. Therefore, while anisolated ant moves essentially at random, an ant encountering apreviously traversed path and pheromone-laid trail can detectsuch, decide with high probability to follow it, and subsequentlyreinforce the trail with its own pheromone.

The collective behavior is therefore characterized by a positive�reinforcing� feedback loop where the probability with whicheach ant chooses the path to follow increases with the number ofants having chosen the same path in the preceding steps. Thepheromone trail is reinforced with each successive pass until theant population and path traversing converge to the shortest path

Fig. 1. Schematic of ACO’s foregoing behavior

between source and destination, and the final result is the rela-

JOURNAL OF COMPUTING

J. Comput. Civ. Eng. 2

tively quick convergence of the path traversing to the shortestpath. In essence, the method uses knowledge acquired by oneartificial agent during its search to construct the next feasible �oroptimal� solution for a given path-traversing problem.

ACO Artificial Agent

The common framework for ACO applications was proposedafter the original work by Dorigo et al. �1996� to be the ACOmetaheuristic, with artificial ants seen as stochastic solution pro-cedures and acting as agents, while the generic problem topologywas outlined by Dorigo and Stutzle �2002�. Construction of thesolution set is dependent upon the pheromone trails, whichchange at run time the heuristic information about the problem athand and the ants’ private memory.

The ACO topology consists: �1� of a finite set of componentsC; �2� a set of problem states x defined in terms of sequences�relationships� over the elements of C; �3� a set of all possiblesequences, denoted by X; and �4� a finite set of constraints in thesystem � which defines the feasible states and the set of feasiblesolutions, S� which are a subset of the feasible states. Further-more, a cost function f�s , t� can be associated with each candidatesolution s and in some cases a separate cost function is definedand associated to states other than solutions.

The generic behavior of the artificial ants can be summarizedby the following �Fig. 2�:• Ants build solutions by moving on the graph of nodes/

components and connections. Even though both feasible and

Fig. 2. Flowchart of the ACO process

infeasible solutions can be built, artificial ants, in general, try

IN CIVIL ENGINEERING © ASCE / JANUARY/FEBRUARY 2010 / 47

010.24:45-55.

Page 4: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

to build feasible solutions. The problem constraints are imple-mented during the network-traversing iterations.

• The nodes/components and connections can have a pheromonetrail associated with them which allows for the implementationof a long-term memory policy about the ant search process.Similarly, the components and connections can have a heuris-tic value �HV� which allows incorporation of problem-specificinformation.

• The path that each artificial ant follows can be stored in theant’s memory.

• Each artificial ant can be assigned a start state and one or moretermination conditions. The construction procedure of an antstops when at least one of the termination conditions is satis-fied.

• When an ant attempts to move to any node in the feasiblesolutions subset �that is the subset of immediate successors tothe node the ant is at� this move is not possible, then the antmay be allowed to move to any other node that it is not part ofthe immediate-successors subset.

• The move to a successor node is determined by a stochasticdecision rule and it is subject to a function of the local phero-mone, the connection’s heuristic, the ant’s memory, and theproblem constraints.

• Each addition of a node/component to the current solution setupdates the pheromone trail associated with it.

• Once a solution is built, the ant retraces the same path back-ward and updates the pheromone trails of the used componentsor connections.

Applicability of ACO to Construction Scheduling

Construction scheduling exhibits many similarities to the ACOartificial agent, since the underlying network topologies and path-searching approach to longest �or shortest� path calculations arecomparable. If one substitutes the search for shortest path �ACO�to the search for longest path �CPM� and treats ACO ants, states,connections, and cost function to CPM’s resources, activities, re-lationships, and durations, respectively, then the ACO agent canbe employed in solving for the longest path in directed graphs�such as construction activity networks�. The switch from shortestto longest path calculations in ACO can be achieved by simplytreating the node-to-node arcs as negative activity durations �in-stead of positive numbers�. The ACO-based shortest path algo-rithm thus acts on negative numbers and the result is actually thelongest path for the corresponding positive numbers�min�−di�=−max�di��. Furthermore, by considering differentnodal states and ant types then the search for longest path can beaccompanied with calculations of longest path from a node to anynode, as well as with resource optimization.

Resource-Unconstrained Construction Scheduling

For a given network topology defined by a directed graphG�N ,A�, with N being the set of vertices �activity start and endnodes� and A being the set of arcs �activities�, the proposed ACO-based procedure for finding the critical path�s� between a set ofchosen nodes N1 and N2 can be summarized by the followingsteps:1. Initialize all arcs with small amounts of pheromone �0. This

value can be an inverse line distance between the nodes N1

and N2, or the inverse line distance of the subject arc.2. An artificial ant is launched from node N1 �the start node�

and pseudorandomly “walks” from this node to a successor

48 / JOURNAL OF COMPUTING IN CIVIL ENGINEERING © ASCE / JANUA

J. Comput. Civ. Eng. 2

node via the connecting arcs until it reaches either the end-node �N1� or a dead end. The term “pseudorandomly” definesthe seemingly random process of selecting successor nodes,based on previously acquired knowledge by other artificialagents that traversed the network. When at a given node, theartificial ant’s selection of an arc to follow is probabilistic,based on a stochastic assignment of each ith arc’s likelihoodof selection, as defined by

pi =�i�i

�i

�j�� j� j

�j��1�

In the above equation, �i is the pheromone concentration onthe ith arc, �i is a HV related to the desirability of the ith arc,�i is a parameter determining the relative influence of theheuristic information, and j is the number of all possible arcchoices for the ant at arc i. Typically, for an ant colony ofpopulation C, the values of �i are taken as constant acrossthe ant population. The value of �i can be defined either asthe inverse of the length �li� of the arc, or the inverse of thelength of the arc plus the line distance between N1 and N2. Itshould be noted that previously visited arcs are excludedfrom the selection �to enable complete “tree spanning” and toavoid “memorization”�. The selection is further assisted bythe consideration of a randomly generated number 0�q�1which is compared to a predefined value q0 specific to thenetwork topology. If q�q0 then the arc with the highestvalue pi is selected. Otherwise, a random selection of an arcis used based on the distribution defined by the equation forpi.

3. Upon crossing each ith arc during the aforementionedsolution-constructing phase a local pheromone update rule isapplied to update the level of pheromone concentration at thegiven arc. The updated pheromone level ��i�� is defined by

�i� = �1 − ���i + ��0 �2�

where �=arc’s level of pheromone evaporation �0���1�.As already noted, the goal of the local updating rule is toenable exploration of more path/route variations by makingalready traversed arcs less likely to be chosen again duringthe randomization of the arc selection process. The parameter�, in conjunction with parameter � �constituting the evapo-ration parameters� help randomize the ACO process and ineffect safeguard against memorization and premature conver-gence.

4. Steps �2� and �3� are repeated for all ants in the ant colonyand the most successful ant �i.e., the one whose path definesthe solution� is used to globally update the network’s phero-mone trails. The global update rule is defined by

�i = �1 − ���i + ��L �3�

where �=another network topology parameter �0���1�whose value determines the network’s global level of evapo-ration of pheromone concentrations. The factor �L is a valueinversely proportional to the path length of the best solutionin case of an arc visited by the best ant or zero for all other

ants.

RY/FEBRUARY 2010

010.24:45-55.

Page 5: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

�L

= �1/Lbest if arc is visited during the best path tour

0 otherwise

�4�

The global update rule can be applied by either the “global-best” or the “iteration-best” ant. In the first case, the ant toperform the update is the one that obtained the best solution�found the longest path in the network� during the entireoptimization process. In the second case the update is per-formed by the ant reaching the best solution during eachiteration of the algorithm.

5. Steps �2�–�4� are repeated for either a fixed number of itera-tions or until a predefined condition is met, and upon termi-nation of the algorithm the pheromone trail in the graphG�N ,A� is used to determine the solution �the arcs with high-est pheromone concentration form the shortest path of thenetwork�.

It is important to note that the solution sought �Step 4 in theACO algorithm� is the longest path in the network. If the solutionsought is the shortest overall path �or the shortest path betweengiven nodes� then the calculations performed are on the negativevalues of the activity durations, with the rest of the algorithmcalculations kept unchanged. The ACO pseudocode is given in

Table 1. Resource-Unconstrained ACO Pseudocode

01: Get(nNodes,nActivities, q0,� ,�)

02: Loop, for i=1 to nNodes

03: Get(NodeType[i])

04: End Loop

05: Loop, for i=1 to nActivities

06:Get(ActID[i], StartNode[i], EndNode[i], Succ[i],

Dur[i])

07:�0�i�←1 /Dur�i�, ��i�←1.0, ��i�←Dur�i�

+1 /Dur�i�08: End Loop

09: Loop, for k=1 to nAnts

10:curActivity←nextActivity,

LongestPath←Dur�nextActivity�11: While NodeType[EndNode[curActivity]] �212: Sum←0, P max←0, �L�i�←0

13: Loop, for j=1 to nSucc[curActivity]

14: Sum←Sum+��j����j�∧��j�15: End Loop

16: Loop, for i=1 to nSucc[curActivity]

17: P�i�←��i����i� /Sum

18:If P�i� P max then P max= P�i�, �L�i�

←1 /LongestPath

19:If rnd� �� =q0 then

nextActivity←ActID�i�20: End Loop

21: LongestPath←LongestPath+Dur�nextActivity�22: Loop, for i=1 to nSucc[curActivity]

23: ��i�← �1−�����i�+���0�i�24: End Loop

25: End While

26: ��i�← �1−�����i�+���L�i�27: End Loop

Table 1.

JOURNAL OF COMPUTING

J. Comput. Civ. Eng. 2

Resource-Constrained Construction Scheduling

Problem Definition

The ACO-based methodology outlined in the previous sectionwas shown �Christodoulou 2005a,b� to arrive at feasible solutionsto the critical-path problem in the case of resource-unconstrainedconstruction schedules. In such cases of assumed infinite re-sources, the ACO metaheuristic was able to identify the criticalpath�s� in a construction network performing stochastic branchingand longest-path calculations.

What happens, though, if one needs to account for constraintson resource availability and/or resource-based activity relation-ships? In this scenario, tasks are performed and schedule ad-vancement is made upon additive or conditional combinations ofresources. Even though CPM schedules can nowadays be“resource-loaded” and activity-assigned resources can be ac-counted for during the network calculation phase, such schedulesdo not enable accounting for real-life situations where activitysequencing is based on resource �rather than activity� relation-ships. In other words, how can a planner account for the situationwhere an activity can start only when a resource from a predeces-sor activity is freed and then combined with a resource fromanother predecessor activity to enable the start of the successoractivity without completion of the two predecessor activities? Ad-ditionally, how can planners evaluate the impact to project dura-tion of the unavailability of required resources?

Case Study

Resource-Unconstrained Scheduling

At first, let us consider the case of a small construction projectdefined by the network shown in Fig. 3 that is not resource-constrained. The ACO topology �depicted in Fig. 4 as an Activity-On-Arrow model� consists of 10 nodes and 17 activities �nodeconnections� and can be easily solved by use of the traditionalCPM.

The critical path calculations on the case study topology and

Fig. 3. Case-study network

the resulting Early Start, Early Finish, Late Start, Late Finish,

IN CIVIL ENGINEERING © ASCE / JANUARY/FEBRUARY 2010 / 49

010.24:45-55.

Page 6: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

and Total Float �TF� values obtained by applying traditional CPMprocedures are tabulated in Table 2. As shown, the CPM calcula-tions result in identifying activities “1–3,” “3–8,” and “8–9” ascritical �TF=0� and produce a total project duration of 40+54+32=126 time-units.

In ACO terminology, the network consists of three “ant nests”�i.e., nodes with no predecessors�, six are regular nodes, and one“food source” �i.e., a node with no successors�. It should be notedthat the network is based on unidirectional nodal connections�flowing from start to end�, emulating real-life construction net-works. ACO topology parameters of q0=0.3, �=1.0, �=0.5, �=0.5, and C=200 are also assumed. The values used are based onsensitivity analysis results from similar-size case studies reportedby Christodoulou �2005a� and in which the performance of ACOtopology parameters �q0 ,� ,� ,� ,C� was examined against othernetwork characteristics �the number of nodes and arcs in the net-work topology, and the number of ant nests �i.e., the number ofpossible start nodes in the network�. The value of q0�=0.3� is keptlow to allow for higher randomization in the arc-selection process�for a random number q, if q�q0 then the arc with the highestvalue pi is selected�.

Fig. 4. ACO topology of case-study network

Table 2. Solution of the Resource-Unconstrained Case-Study Network T

Startnode

Endnode

Arclength

Successornodes

Earlystart

0 2 20 7,8,9 0

0 5 33 7 0

0 8 70 9 0

1 3 40 8, 9 0

1 5 37 7 0

1 6 56 9 0

2 7 67 9 20

2 8 59 9 20

2 9 78 — 20

3 8 54 9 40

3 9 54 — 40

4 5 29 7 0

4 6 43 9 0

5 7 37 9 37

6 9 29 — 56

7 9 11 — 87

8 9 32 — 94

50 / JOURNAL OF COMPUTING IN CIVIL ENGINEERING © ASCE / JANUA

J. Comput. Civ. Eng. 2

The ACO algorithm through its iterative process arrives at thesame solution as CPM, with different solution states reached atthe end of each “ant run” but with convergence to the correctsolution �in fewer than 10 iterations actually�. Since the method is“intelligently” iterative �each successive iteration is selectivelydependant on previously acquired knowledge about the topology�the critical path may change several times before converging andstabilizing to the correct solution. As already noted in the sectionon the formulation of the algorithm, the ACO parameters andpath-choice mechanism safeguard against “solution memoriza-tion” and allow for the arrival at a global solution through com-plete tree spanning. Parameter q0, in particular, sets the level ofrandomness in the arc-selection process �as per Step 2 in the ACOalgorithm, the smaller the value q0 is, the less likely it is to choosefor traversal the arc with the highest value pi�.

At each iteration the algorithm generates the associated phero-mone concentration levels �acquired knowledge on the criticalityof each connection and node� and the resulting longest path �thusthe critical activities�. The solution obtained by the ACO algo-rithm is tabulated in Table 3 as Pheromone Level values. Thealgorithm considers these values during the solution phase anddecides which activities on a continuous path are critical �column“On Shortest Path?” in Table 3�.

As shown in Table 3, the ACO-based process identifies activi-ties “0–2,” “1–3,” “1–6,” “2–8,” “3–8,” “6–9,” and “8–9” asimportant �high pheromone concentration�. It then sifts throughthese activities to identify the longest continuous path fromproject start to project end and flags activities “1–3,” “3–8,” and“8–9” as critical, with a calculated critical path duration of 126time-units �in agreement with the traditional CPM-based calcula-tions�.

The case-study network, even though small in size, can show-case some of the computational efficiencies it possesses over tra-ditional CPM algorithms. In this case of 10 nodes and 17 arcs, theCPM calculations would require 10 if statements �max/min com-parisons� and 17 additions/subtractions for each of the forward orbackward pass in the network and an exhaustive enumeration ofall possible paths in the network. By contrast, the ACO algorithmwould require initially a number of additions and data compari-

y by Use of the CPM

Earlyfinish

Latestart

Latefinish

Totalfloat

On longestpath ?

20 15 35 15 —

33 45 78 45 —

70 24 94 24 —

40 0 40 0 Yes

37 41 78 41 —

56 41 97 41 —

87 48 115 28 —

79 35 94 15 —

98 48 126 28 —

94 40 94 0 Yes

94 72 126 32 —

29 49 78 49 —

43 54 97 54 —

74 78 115 41 —

85 97 126 41 —

98 115 126 28 —

126 94 126 0 Yes

opolog

RY/FEBRUARY 2010

010.24:45-55.

Page 7: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

sons that is equal to the number of arcs on the longest path in thenetwork �three in this case� for an ant to travel from an ant nest toa food source, plus the same number to return to base. From thaton, the “intelligent traversing” nature of the algorithm takes over,reducing the steps it takes for each successive ant to choose theright path to follow. In the worst case scenario, all possible pathswill be traversed �resulting in the CPM algorithm�, and in the bestcase scenario, only the sought path will be traversed. Thus, thenumber of paths traversed in the ACO algorithm is bound by thenumber of paths traversed in the CPM algorithm. One should alsonote that the nature of the ACO algorithm gives rise to possibleimplementation in parallel computing, since the artificial agentsused can be deployed independently of each other in the networkto be solved �unlike CPM algorithms� and the solution assembledin parallel by combining the results reported upon by these agentsin the form of the pheromone intensity level.

Resource-Constrained Scheduling

The introduction of resource availability constraints makes con-struction scheduling more complicated. The lack of the resourcesneeded to start and/or complete an activity makes certain paths“unfeasible solutions” and in effect puts a hold on the particularactivities and the overall project schedule. In traditional CPM,resource constraints are addressed by means of a method termed“resource leveling” during which activities with smaller TF val-ues �thus more critical than others� take precedence over otheractivities when competing for resources.

It is assumed that each activity in the project schedule underconsideration �Fig. 3� requires the daily use of one unit of a spe-cific single-type resource and that a resource-flow histogram canbe generated from the CPM analysis. If one further asserts a hy-pothetical resource availability limit �the value of 7 is assumed inthis case� then during certain periods the resource needs exceedthe available resources �Fig. 5�.

In accounting for the imposed constraint for concurrent use ofa maximum of seven resources the CPM resource-leveled calcu-

Table 3. Solution of the Resource-Unconstrained Case-Study Network T

Start node End node Arc length Original

0 2 20 0.05000

0 5 33 0.03030

0 8 70 0.01429

1 3 40 0.02500

1 5 37 0.02703

1 6 56 0.01786

2 7 67 0.01493

2 8 78 0.01695

2 9 59 0.01282

3 8 54 0.01852

3 9 54 0.01852

4 5 29 0.03448

4 6 43 0.02326

5 7 37 0.02703

6 9 29 0.03448

7 9 11 0.09091

8 9 32 0.03125

lations result in a revised network topology and project duration

JOURNAL OF COMPUTING

J. Comput. Civ. Eng. 2

of 142 time-units, with an associated critical path consisting ofactivities “4–6” and “6–9” �TF=0� pushed in time after activity“0–8” due to the unavailability of resources �Fig. 6�.

The ACO implementation of the resource-constrained problemis an extension of the algorithm outlined Fig. 2. In this case thealgorithm processes batches of seven ants at a time �the imposednumber of resource constraints for this case study�, calculatingtheir travel times and their inter-relationships. In order to priori-tize the resource assignments and work on activities with higherutility value than others, a mechanism is put in place so as to rankactivities based on their value to the project. Activities withhigher utility value get resources first, and if enough resourcesremain available then they are assigned to the next activity in thepriority list. The utility value of each activity could be based on anumber of possible attributes:• The TF of the activity: Activities with smaller TF are assigned

higher utility values since they are more likely to become criti-cal and thus delay the project. A possible issue with this optionis the fact that the original value of TF �on which the utilityvalue is to be based� is static and does not reflect the dynamic

y by Use of the ACO Method

Pheromone level

On shortestpath ?

fter 50erations

After 100iterations

After 200iterations

410−4 7.8210−2 1.3510−2 —

810−16 7.8910−31 0 —

610−15 1.1610−30 0 —

410−3 8.0810−3 7.9310−3 Yes

810−16 7.8910−31 0 —

910−15 6.0110−4 2.7910−3 —

710−16 4.5010−31 0 —

110−3 5.5910−3 4.5910−3 —

710−16 4.2310−31 0 —

410−3 8.0210−3 7.9310−3 Yes

310−14 1.5410−29 0 —

810−16 7.8910−31 0 —

810−16 7.8910−31 0 Yes

810−16 7.810−31 0 —

810−3 1.1610−3 5.3910−3 —

210−16 5.7010−31 0 —

610−2 1.5610−2 1.4210−2 Yes

Fig. 5. Unconstrained resource-flow for case-study network

opolog

Ait

9.0

8.8

1.2

7.9

8.8

5.5

5.0

5.6

4.7

7.9

1.7

8.8

8.8

8.8

1.0

6.4

1.5

IN CIVIL ENGINEERING © ASCE / JANUARY/FEBRUARY 2010 / 51

010.24:45-55.

Page 8: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

nature of this parameter �changes with every change in theproject’s progress�. Hence, unless the network is evaluated atthe end of each run �i.e., for every artificial ant� a utility valuebased on the original value of TF does not reflect the varyingcriticality of each activity.

• The criticality index of the activity: This is a number thatrepresents the percentage of Monte Carlo simulations that eachactivity becomes critical during a CPM network calculation.This option, even though at the outset is still a static utility-value assignment, seems to be more accurate than the TF op-tion.

• A heuristic value �HV� that indicates the relative importance ofeach activity to a planner. For instance, concrete work couldget a higher utility value than landscaping. The issue with thisoption is that the value assignment is subjective and less au-tomated than the previous two options.

• A cost value �CV� based on the percentage of the activity’scost over the project’s total cost. The issue with this method isthat it assigns higher utility values to the more expensive ac-tivities, which is not necessarily the case.

• A combination of any of the above utility assignment methods,or any other possible measure of the utility value.The chosen utility value for resource-constrained scheduling is

introduced either at the local pheromone update rule �Eq. �2�� andthe associated likelihood of selecting a particular network branch,or at the global pheromone update rule �Eq. �3��. It could also beimplemented through the values of �i and �i for each activity i inEq. �1�.

For the purpose of this case study, the implementation of thealgorithm was based on individually assigned values of �i equalto the activity duration and �i equal to 1 /TFi for each activity i inEq. �1�. The assignment of 1 /TFi to the parameter �i �Table 1,line “07”� means that activities with higher values of TF �i.e., lesscritical activities� are assigned a lower utility value and thus alower probability of a resource assignment and pheromone con-centration level through Eq. �1�. The revised ACO algorithm�Table 4� also makes use of a heuristic rule similar to the heuris-tics used by commercial software �e.g., P3 and MSP� when per-forming resource leveling. If an activity cannot be assigned to anartificial ant due to resource-availability issues then the activity isdelayed one time-unit and re-evaluated at a later point in time. Inthis case the path on which the activity belongs to is extended byone time-unit and the pheromone concentration level on this pathis reduced accordingly based on the pheromone evaporation rule�Eq. �2��.

Fig. 6. Constrained resource-flow for case-study network

The results of the ACO implementation to the resource-

52 / JOURNAL OF COMPUTING IN CIVIL ENGINEERING © ASCE / JANUA

J. Comput. Civ. Eng. 2

constrained problem are tabulated in Table 5. The results indicatea critical path different than the one obtained by the traditionalCPM method for a duration of 147 time-units �instead of 142�.The ACO-based critical path is obtained based on the total phero-mone level along possible paths �Table 5� and in conjunction withthe computed delays in start time and revised TFs resulting fromthe imposed resource constraints. For example, as Table 5 shows,important are the activities with low TF �“0–5,” “0–1,” “2–8,”’3–8,” and “8–9”� and with comparatively high pheromone val-ues �“0–2,” “0–8,” “1–3,” “3–8,” “5–7,” and “7–9”�. The possiblepaths and the corresponding total pheromone levels along thembecome:• Path 1: Activities “1–3,” “3–8,” and “8–9” for a total phero-

mone level of 0.5640 and a duration of 147 days, with allactivities on it exhibiting zero TF.

• Path 2: Activities “0–2,” “2–8,” and “8–9” for a total phero-mone level of 0.0983 and a duration of 147 days, with onlyactivity “8–9” exhibiting 0 TF.

• Path 3: Activities “0–8” and “8–9” for a total pheromone levelof 0.5384 and a duration of 147 days, with only activity “8–9”exhibiting zero TF.Thus, based on the above, the ACO algorithm ranks path “1-

3-8-9” as the most critical path �based on the highest total phero-mone level concentration� for a resulting 147-day project

Table 4. Resource-Constrained ACO Pseudocode

01: Get(nNodes,nActivities, q0,� ,�)

02: Loop, for i=1 to nNodes

03: Get(NodeType[i])

04: End Loop

05: Loop, for i=1 to nActivities

06:Get(ActID[i], StartNode[i], EndNode[i], Succ[i],

Dur[i])

07:�0�i�←1 /Dur�i�, ��i�←1.0, ��i�←Dur�i�

+1 /Dur�i�08: End Loop

09: Loop, for k=1 to nAnts

10:curActivity←nextActivity,

LongestPath←Dur�nextActivity�11: While NodeType[EndNode[curActivity]] �212: Sum←0, P max←0, �L�i�←0

13: Loop, for j=1 to nSucc[curActivity]

14: Sum←Sum+��j����j�∧��j�15: End Loop

16: Loop, for i=1 to nSucc[curActivity]

17: P�i�←��i����i� /Sum

18a:If P�i� P max then P max= P�i�,

�L�i�1 /LongestPath

18b:Else ESDelay�i�=ESDelay�i�+1, Dur�i�

=Dur�i�+1 endif

19:If rnd� �� =q0 then

nextActivity←ActID�i�20: End Loop

21: LongestPath←LongestPath+Dur�nextActivity�22: Loop, for i=1 to nSucc[curActivity]

23: ��i�← �1−�����i�+���0�i�24: End Loop

25: End While

26: ��i�← �1−�����i�+���L�i�27: End Loop

duration. The variation in duration compared to the CPM-based

RY/FEBRUARY 2010

010.24:45-55.

Page 9: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

duration can be attributed to the oversimplistic assumption for thevalue of �i. It should also be noted that the inclusion of moreiterations in Table 3 than in Table 5 is solely for the purpose ofbetter illustration of the results and not because of a difference inthe rate of convergence. Both the unconstrained and constrainedalgorithms converged to the eventual solution in less than 50 it-erations, but the pheromone levels for the unconstrained casewere not as distinguishable as in the constrained case so addi-tional iterations were included.

Comparison of ACO with Traditional CPM and ArtificialIntelligence Algorithms

A comparison of the presented ACO-based RCSP algorithm withtraditional CPM algorithms and with AI techniques, such as ge-netic algorithm �GAs� and particle swarm optimization �PSO� al-gorithms can be made in conjunction with the work reported byKim and de la Garza �2005� on CPM, Hegazy �1999�, Senouciand Eldin �2004� on GAs, and Zhang et al. �2006� on PSO.

As already noted, traditional CPM algorithms are iterativemethods that have been proven to perform well, albeit with com-putational inefficiencies. The brute iterative enumeration of allpaths in the project network and the inability of CPM algorithmsto perform arbitrary node-to-node calculations are among themost limiting features of the algorithms. Furthermore, the sequen-tial nature of their calculations burdens them with higher compu-tational time load compared to other techniques and for projectswith high number of activities and/or resources. By contrast, ACOis intelligently iterative, provides arbitrary node-to-node path cal-culations and it is parallel in nature, thus suitable to parallel-computing implementations and lower computational time loadsfor projects with high number of activities. Additionally the prob-lem of “the absence of activity start time flexibility” observed inCPM �as noted by Kim and de la Garza 2005� is not present in theACO algorithm. Activities can be designated ant nests and posi-tioned in time at the planner’s discretion without hindering imple-

Table 5. Solution of the Resource-Constrained Case-Study Network by

Startnode

Endnode

Originalduration TF

Resourcesrequired �i �i

0 2 20 28 1 20 0.036

0 5 33 2 1 33 0.500

0 8 70 24 1 70 0.042

1 3 40 0 1 40 1.000

1 5 37 52 1 37 0.019

1 6 56 41 1 56 0.024

2 7 67 28 1 67 0.036

2 8 78 2 1 59 0.500

2 9 59 15 1 78 0.067

3 8 54 0 1 54 1.000

3 9 54 32 1 54 0.031

4 5 29 60 1 29 0.017

4 6 43 54 1 43 0.019

5 7 37 52 1 37 0.019

6 9 29 41 1 29 0.024

7 9 11 28 1 11 0.036

8 9 32 0 1 32 1.000

mentation of the ACO algorithm. This feature can also be

JOURNAL OF COMPUTING

J. Comput. Civ. Eng. 2

compared favorably with algorithms based on graph theory, suchas Dijkstra’s algorithm �Dijkstra 1959�. The difference with Dijk-stra’s algorithm, which solves the single-source shortest pathproblem for a graph with nonnegative edge path costs, is the factthat Dijkstra’s algorithm only handles shortest path calculationsfrom a single vertex and every other vertex. In the event of mul-tiple sources �such as in the case of multiple parallel startingactivities� the ACO algorithm has an advantage over Dijkstra’salgorithm.

In the work by Hegazy �1999� several improvements wereproposed to resource allocation and leveling heuristics, and GAswere used to search for near-optimum solutions, simultaneouslyconsidering both the resource allocation and the leveling aspectsof RCSP. As Hegazy �1999� noted, “Despite the simple nature ofresource-leveling heuristics and their wide implementation oncommercial project management software, they can only producegood feasible solutions and by no means guarantee an optimumsolution.” Similar to ACO, the GA implementation is a searchprocedure of random nature, which arrives at solutions by search-ing only a fraction of the total search space and which can bemodified to incorporate additional objectives during optimization.In the work by Senouci and Eldin �2004�, for example, a GA ispresented which incorporates precedence relationships, multiplecrew strategies, total project cost minimization, and time-costtrade-off. Also of importance is the fact that both ACO and GAapproaches possess features that make the methods suitable tolarge scale RCSP and parallel-computing implementations.

Finally, the case of PSO shows many similarities with theunderlying philosophy of the ACO approach, in the way the meth-ods utilize both local and global knowledge during the solution-search process. In the work by Zhang et al. �2006� the PSOalgorithm was shown to converge a little faster than GA, and PSOhad a more stable tendency than GA while searching for optima.Furthermore, PSO was “more robust than general analytical andheuristic methods, because it does not lead to combinatorial ex-

the ACO Method

Pheromone level Revised dates

riginalAfter 50iterations

Delay inearly-start

time

Onlongestpath ?

Earlystart

Earlyfinish

.0500 0.0500 17 Yes 17 37

.0303 0.0303 17 — 17 50

.0143 0.5071 0 — 0 70

.0250 0.2688 8 — 8 48

.0270 0.0270 0 — 0 37

.0179 0.0179 18 — 18 74

.0149 0.0457 0 — 37 104

.0170 0.0170 29 Yes 37 115

.0128 0.0282 11 — 37 96

.0185 0.2639 2 — 50 104

.0185 0.0185 30 — 78 132

.0345 0.0345 0 — 0 29

.0233 0.0233 71 — 71 114

.0270 0.2701 0 — 50 87

.0345 0.0345 0 — 114 143

.0909 0.0980 0 — 104 115

.0313 0.0313 21 Yes 115 147

Use of

O

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

plosion or problem-dependent effectiveness” �Zhang et al. 2006�.

IN CIVIL ENGINEERING © ASCE / JANUARY/FEBRUARY 2010 / 53

010.24:45-55.

Page 10: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

However, when compared to ACO both GA and PSO have anadditional level of complexity because of the need to transformthe original RCSP into the data structure used by the methods �astructure that greatly deviates from the traditional CPM-like para-digm�. By contrast, ACO has a structure and representation that isvery similar to traditional CPM networks and it is therefore easierto understand and implement on top of existing software tools.

Conclusions and Future Work

The ACO metaheuristic provides users with an alternative way ofconstructing longest-path solutions in directed network topologiesand of solving for both the resource-unconstrained and resource-constrained problem. In the case study presented herein the solu-tions obtained by the proposed algorithm show a 100% accuracyin the case of the resource-unconstrained problem and a 97%accuracy in the case of the resource-constrained problem. Con-vergence to the obtained solutions was achieved in a very smallnumber of iterations and the deviation observed in the resource-constrained case was within acceptable margins. The less-than-optimal solution provided by the used ACO algorithm could beimproved by slightly modifying the suggested activity shifts so asto better utilize the revised TFs in the different activity paths. Forexample, shifting activity “0–2” by 11 days �instead of 17 dayssuggested by ACO� and activities “0–5” and “4–6” by 40 and 68days instead of 17 and 71 days, respectively, would result in aproject duration of 141 days. This result compares favorably withthe P3 solution. A modified ACO algorithm that uses backtrackingto fine-tune the obtained solutions and to avoid local minima iscurrently under development.

Despite the seemingly iterative approach of the ACO method,the algorithm utilizes intelligent selection procedures in perform-ing the path-routing calculations and in identifying the longestpath�s� in a prescribed network topology. Further to its intelligentbranching nature, the ACO algorithm may also be viewed as animprovement over traditional CPM algorithms because of its ca-pability for multiple node-to-node shortest and longest path cal-culations and for its suitability for parallel computing.

Ongoing work on ACO addresses the inclusion of resource-based scheduling techniques to account for AND/OR resource-combination requirements at the network nodes, and ways togenerate resource-leveled schedules in agreement with traditionalmethods. Furthermore, the computational performance and gener-alized accuracy of the algorithm and its applicability to typicalconstruction projects is being evaluated on the basis of more com-plex projects �1000 activities� and with several resource types.Future work also includes investigation of whether the deviationobserved in the ACO solution can mathematically be bound with-out the need for more ACO iterations and on the suitability ofother factors as heuristic ACO parameters.

References

Aslani, P. �2007�. “Dynamic resource-constrained scheduling.” Ph.D. the-sis, Polytechnic Univ., Brooklyn, N.Y.

Brucker, P., and Knust, S. �2003�. “Lower bounds for resource-constrained project scheduling problems.” Eur. J. Oper. Res., 149�2�,302–313.

Brucker, P., Knust, S., Schoo, A., and Thiele, O. �1998�. “A branch andbound algorithm for the resource-constrained project scheduling prob-

lem.” Eur. J. Oper. Res., 107�2�, 272–288.

54 / JOURNAL OF COMPUTING IN CIVIL ENGINEERING © ASCE / JANUA

J. Comput. Civ. Eng. 2

Carruthers, J. A., and Battersby, A. �1966�. “Advances in critical pathmethods.” Oper. Res., 17�4�, 359–380.

Chen, R. M., and Lo, S. T. �2006�. “Using an enhanced ant colony systemto solve resource-constrained project scheduling problem.” ComputerScience and Network Security, 6�11�, 75–84.

Christodoulou, S. �2005a�. “Ant colony optimization in constructionscheduling.” Proc., ASCE Int. Conf. on Computing in Civil Engineer-ing, ASCE, Cancun, Mexico.

Christodoulou, S. �2005b�. “Scheduling construction activities using antcolony optimization.” Proc., 8th Int. Conf. on the Application of Ar-tificial Intelligence to Civil, Structural and Environmental Engineer-ing, Civil-Comp Press, Rome, Italy.

Christodoulou, S. �2007�. “Resource-constrained scheduling using antcolony optimization.” Proc., 9th Int. Conf. on the Application of Ar-tificial Intelligence to Civil, Structural and Environmental Engineer-ing (AICC07), Civil-Comp Press, St. Julians, Malta.

Colak, S., Agarwal, A., and Erenguc, S. �2006�. “Resource constrainedproject scheduling: A hybrid neural approach.” Perspectives in Mod-ern Project Scheduling, J. Józefowska and J. Weglarz, eds., Springer,USA, 297–318.

Crawford, J. �1996�. “An approach to resource constrained project sched-uling.” Proc., 1996 AI and Manufacturing Research Planning Work-shop, G. F. Luger, ed., AAAI Press, Albuquerque, N.M.

Demeulemeester, E., and Herroelen, W. �1992�. “A branch-and-boundprocedure for the multiple resource-constrained project schedulingproblem.” Manage. Sci., 38�12�, 1803–1818.

Demeulemeester, E. L., and Herroelen, W. S. �1997�. “New benchmarkresults for the resource-constrained project scheduling problem.”Manage. Sci., 43�11�, 1485–1492.

Dijkstra, E. W. �1959�. “A note on two problems in connection withgraphs.” Numer. Math., 1, 269–271.

Dorigo, M., and Blum, C. �2005�. “Ant colony optimization theory: asurvey.” Theor. Comput. Sci., 344, 243–278.

Dorigo, M., Maniezzo, V., and Colorni, A. �1996�. “Ant system: Optimi-zation by a colony of cooperating agents.” IEEE Trans. Syst., Man,Cybern., Part B: Cybern, 26, 29–41.

Dorigo, M., and Stutzle, T. �2002�. “The ant colony optimization meta-heuristic: Algorithms, applications and advances.” Handbook of Me-taheuristics, F. Glover and G. A. Kochenberger, eds., Vol. 57,Springer, New York, 251–285.

Garey, M. R., Graham, R. L., Johnson, D. S., and Yao, A. C. C. �1976�.“Resource constrained scheduling as generalized bin packing.” J.Comb. Theory, Ser. A, 21, 257–298.

Hegazy, T. �1999�. “Optimization of resource allocation and levelingusing genetic algorithms.” J. Constr. Eng. Manage., 125�3�, 167–175.

Kim, K., and de la Garza, J. M. �2005�. “Evaluation of the resource-constrained critical path method algorithms.” J. Constr. Eng. Man-age., 131�5�, 522–532.

Lenstra, J. K., and Kan, A. �1978�. “Complexity of scheduling underprecedence constraints.” Oper. Res., 26�1�, 22–35.

Liu, Y., Zhao, S., Du, X., and Li, S. �2005�. “Optimization of resourceallocation in construction using genetic algorithms.” Proc., 2005 Int.Conf. on Machine Learning and Cybernetics, Vol. 6, 3428–3432.

Maniezzo, V., Gambardella, L., and Luigi, F. D. �2004�. Ant colony opti-mization: New optimization techniques in engineering, G.C. On-wubolu and B. V. Babu, eds., Springer-Verlag, Berlin, 101–117.

Merkle, D., Middendorf, M., and Schmeck, H. �2002�. “Ant colony op-timization for resource-constrained project scheduling.” IEEE Trans.Evol. Comput., 6�4�, 333–346.

Microsoft project electronic manual v2000 edition. �2000�. MicrosoftCorporation, Redmond, Wash.

Mingozzi, A., Maniezzo, V., Ricciardelli, S., and Bianco, L. �1998�. “Anexact algorithm for the resource-constrained project scheduling prob-lem based on a new mathematical formulation.” Manage. Sci., 44�5�,714–729.

Patterson, J. H. �1984�. “A comparison of exact approaches for solvingthe multiple constrained resource, project scheduling problem.” Man-

age. Sci., 30�7�, 854–867.

RY/FEBRUARY 2010

010.24:45-55.

Page 11: Scheduling Resource-Constrained Projects with Ant Colony Optimization Artificial Agents

Dow

nloa

ded

from

asc

elib

rary

.org

by

Uni

vers

ity o

f C

inci

nnat

i on

11/1

3/14

. Cop

yrig

ht A

SCE

. For

per

sona

l use

onl

y; a

ll ri

ghts

res

erve

d.

Primavera project planner electronic manual; v3.1 edition. �2001�. Pri-mavera Systems Inc., Bala Cynwyd, Pa.

Sakellaropoulos, S., and Chassiakos, A. P. �2004�. “Project time-costanalysis under generalized precedence relations.” Adv. Eng. Software,35�10�, 715–724.

Senouci, A. B., and Eldin, N. N. �2004�. “Use of genetic algorithms inresource scheduling of construction projects.” J. Constr. Eng. Man-

JOURNAL OF COMPUTING

J. Comput. Civ. Eng. 2

age., 130�6�, 869–877.Winston, W. L., and Venkataramanan, M. �2002�. Introduction to math-

ematical programming, 4th Ed., Thomson-Brooks/Cole, PacificGrove, Calif.

Zhang, H., Li, H., and Tam, C. �2006�. “Permutation-based particleswarm optimization for resource-constrained project scheduling.” J.Comput. Civ. Eng., 20�2�, 141–149.

IN CIVIL ENGINEERING © ASCE / JANUARY/FEBRUARY 2010 / 55

010.24:45-55.