The experimental test results show that the proposed algorithm ... Keywords: ant colony, resource-constrained project, net present value ..... The cla...

0 downloads 0 Views 155KB Size

Journal of the Chinese Institute of Industrial Engineers, Vol. 23, No. 6, pp. 478-483 (2006)

AN ANT COLONY ALGORITHM FOR IMPROVING THE NET PRESENT VALUES OF RESOURCE CONSTRAINED PROJECTS Yong-Yi Shou* School of Management, Zhejiang University Hangzhou 310058, P. R. China

ABSTRACT An ant colony algorithm is proposed to improve the net present values of resource-constrained projects since the net present value is a critical criterion for a project with a long time span and considerable cash flows. The algorithm adaptively adjusts the allocation of scarce resources according to the pheromone generated by artificial ants in the previous iterations so as to maximize the project’s net present value. The crossover operation, inverse mutation and elitist strategy are applied to accelerate the searching for better project schedules, and the backward scheduling technique is adopted to improve the net present value further. The experimental test results show that the proposed algorithm significantly improves the net present values of resource-constrained projects. Keywords: ant colony, resource-constrained project, net present value

1. INTRODUCTION The classic resource-constrained project scheduling problem (RCPSP) is a problem which allocates scarce resources over activities to optimize the project duration. To some extent, many other scheduling problems, such as job shop scheduling or flow shop scheduling problems, can be viewed as special cases of the RCPSP. Currently, most researches on resource constrained projects focus on the analysis of minimizing project durations. A considerable amount of exact methods and heuristics have been proposed in the literature. Comprehensive reviews could be found in [3] and [4]. However, for many large scale engineering projects, especially those with long time spans, the management of cash flows is a real challenge, since the variance of net present values (NPVs) could be huge with different resource allocation mechanisms. Therefore, the scheduling problem of resource-constrained projects with discounted cash flows (RCPSP-DCF) has attracted increasing attentions recently. The RCPSP-DCF has an irregular objective function, since the net present value of a project may not be maximized even if the project’s duration is minimized [5]. Due to the computational complexity of the RCPSP-DCF, few exact methods have been suggested in the literature [5], and a variety of heuristics are proposed, e.g. [1,2,11,13,14]. The ant colony algorithm has been reported as *

Corresponding author: [email protected]

a successful method for combinatorial optimization. In this paper, an ant colony algorithm is suggested to improve the net present value of the RCPSP-DCF.

2. PROBLEM DESCRIPTION A classic resource-constrained project scheduling problem can be represented by an oriented and acyclic activity-on-node (AON) network: (1) A finite set of J activities or jobs, and each activity is indexed so that the preceding activity must have a smaller index and the J-th activity must be the only end activity; the processing time of the j-th activity is pj, its start time STj, its completion time CTj, CTj = STj + pj, and its associated net cash flow NCFj at the completion of the activity. (2) A finite set of precedence constraints: S = {Sj: j = 1,…,J} where Sj is the set of activities immediately succeeding activity j. (3) A finite set of renewable resources with limited capacities, denoted by R. The capacity of resource r is Kr, and kjr units of resource r are required by activity j for each period that activity j is in process. For an RCPSP-DCF, an optimal project schedule is one that conforms the above-mentioned constraints and maximizes the net present value of the project at the meantime. Let It be the set of in-process activities at time t for a given schedule and δ be the discount rate, the problem can be formulated as:

Shou: An Ant Colony Algorithm for Improving the Net Present Values of Resource Constrained Projects max NPV =

s.t.

∑ j NCF j ⋅ e

CT j ≤ STh ,

∑ k jr ≤ K r ,

−δCT j

(1)

∀h ∈ S j

(2)

∀r , t

(3)

j∈I t

3. ANT COLONY ALGORITHM 3.1 Basic algorithm A schedule generation scheme (SGS) is a basic procedure for many project scheduling heuristics. An SGS determines how a schedule is constructed gradually, building a feasible full schedule for all activities by augmenting a partial schedule covering only a subset of activities in a stage-wise manner. Two schemes are usually distinguished. In the serial SGS, a schedule is built by selecting the eligible activities in order and scheduling them one at a stage as soon as possible without violating the constraints. In the parallel SGS, a schedule proceeds by considering the time periods in chronological order and in each period all eligible activities are attempted to start at that time if resource availability allows. The serial SGS is more convenient for ant colony algorithms and hence is adopted in this paper. The serial SGS divides the set of activities into three disjoint subsets: scheduled, eligible, and ineligible. An activity that is already in the partial schedule is considered as scheduled. Otherwise, an activity is regarded as eligible if all its predecessors are scheduled, and ineligible otherwise. The subsets of eligible and ineligible activities form the subset of unscheduled activities. The scheme proceeds in N = J stages, indexed by i. On the i-th stage, the subset of scheduled activities is denoted as Si and the subset of eligible activities as decision set Di. On each stage, if more than one activity is eligible, only one activity j from Di is selected and scheduled to begin at its earliest feasible start time. Then activity j is moved from Di to Si which may render some ineligible activities eligible if now all their predecessors are scheduled. The scheme terminates on stage N when all activities are scheduled. The idea of ant colony optimization is utilized in the process of a serial schedule generation scheme. In each generation of project schedules, several ants are employed to search for a feasible schedule according to some simple heuristics and a dynamic pheromone matrix. For a certain ant, it selects an activity from the eligible set in each stage of the schedule generation scheme. The factors that influence the ant’s choice include (1) problem dependent heuristic information ηij, acted as the visibility of next candidate activity for ants, and (2)

479

pheromone information τij, as the pheromone intensity. Here, the heuristic information ηij is independent to the searching history of the ant colony, while the pheromone information τij is history dependent. The latest finish time (LFT) heuristic is used in the paper since it is reported to be a high quality heuristic for evolutionary algorithms. The heuristic information of activity j is calculated by:

η ij = max LFTh − LFT j + ε h∈Di

(4)

where ε is added to assure that the activity with lowest priority still has a small possibility to be selected by the ants. On the i-th stage of a serial SGS, the possibility of selecting activity j from the eligible set is proportional to the value of τ ijα ⋅η ijβ , where α is a parameter which determines the influence of the pheromone information, and β is the heuristic desirability of selecting activity j on the i-th stage of scheduling. Hence, the possibility of selecting activity j is: pij =

τ ijα ⋅ η ijβ

(5)

∑τ ihα ⋅η ihβ

h∈Di

An alternative way is suggested to determine the possibility of selecting activities, the so-called summation evaluation method [8]: i

pij =

(∑ τ kj )α ⋅ η ijβ k =1 i

∑ (∑τ kh )

h∈Di k =1

(6) α

β

⋅ η ih

It is argued that this summation evaluation method helps to avoid scheduling some important activities over late; otherwise the project would have worse performance. A trial experimental test confirmed this argument. Hence, the summation evaluation method is adopted in this paper. After one generation of schedules are constructed by the ant colony, the pheromone matrix is updated using a classic formula:

480

Journal of the Chinese Institute of Industrial Engineers, Vol. 23, No. 6, pp. 478-483 (2006)

τ ijg = (1 − ρ )τ ijg −1 + ρ

1 NPV *

1

2

3

4

5

6

7

8

9

1

2

4

5

3

7

6

8

9

1

2

3

4

5

7

6

8

9

1

2

4

3

5

6

7

8

9

(7)

where NPV* is the maximal NPV of the best schedule found so far, so Δτ ijg = 1 / NPV * is the pheromone augmented by the ants in the g-th generation, and ρ is the evaporation rate for the pheromone. In case the pheromone is over small that some activities in the eligible set might be completely neglected, a lower limit ε is set to assure every activity in the eligible set has a possibility to be selected by the ants. The schedule generation scheme terminates if at least one of the following criteria is satisfied: (1) a certain number of generations, or (2) the average quality of the solutions found by the ants fails to improve in several successive generations.

3.2 Crossover operation The 2-opt strategy is widely adopted in ant colony algorithms for traveling salesman problem (TSP) to improve the searching, but it is cumbersome for the RCPSP since it is time-consuming and a schedule after adopting 2-opt strategy normally becomes infeasible. Hence, other local optimization strategy is necessary. The crossover operation adapted from the genetic algorithm appears appropriate for this purpose. In a certain generation of scheduling, a set of schedules are constructed by the ant colony. Two different schedules are selected from this set randomly. For a given schedule, it can be represented by an order list of activities. Hence, the two selected schedules could be represented by two order lists. A single point crossover operator could be used to generate two children from these two parent lists. First, two base points are determined according to the parent lists. Due to the precedence relations of the project network, the sequence of the first several activities is normally fixed. If a crossover point is selected in this heading sequence, the child list is more likely to be identical to its parent. So does the case of the ending sequence of completing activities. Therefore, a lower base point and an upper base point shall be determined to assure that the sequences before and after the base points are not identical. Then, a single crossover point within the range from the lower base point to the upper base point is selected randomly. For the first child, it keeps the partial list in the first parent list before the crossover point, and constructs its remaining partial list according to the order in the second parent list. The same procedure is applied to generate the second child list, keeping the partial list before the lower base point in the second parent list. Finally, the child list with a larger net present value is selected to

Figure 1. An illustration of crossover of two parent lists. If the crossover starts from the fourth position, two new child lists are generated and both are feasible update the pheromone matrix. The crossover operation is illustrated in Figure 1. Since the order in each parent list is precedence feasible, the order in the new generated child list is also feasible and the corresponding schedule is feasible as well. This is an appealing feature, especially compared with the 2-opt strategy which normally generates infeasible schedules.

3.3 Unlearning strategy The best solution found so far could have great influence on succeeding ants’ choice since they would have left more pheromone. This might lead to over early convergence to a local optimization. It is suggested that for a small possibility pu>0 the best solution in the current generation replaces the best solution so far to avoid over early convergence [9]. However, it is observed that all the solutions in later generations could be identical local optimal solutions and hence the above-mentioned strategy fails to avoid the bad situation since the ant colony algorithm is an effective positive feedback learning algorithm. The inverse mutation could be applied on the best solution so far to overcome this deficiency. For a small possibility pu>0, the best solution for the current generation is used for inverse mutation to generate a new, possibly inferior schedule. The author calls this as an unlearning strategy. For a given schedule, its corresponding activity order list is used for the inverse mutation. Two random points are selected. The sequence of the activity list between these two points is inversed. The new activity list is normally infeasible, so a conversion procedure is required. A simple serial SGS is adopted for this purpose. On each stage of the SGS, the activity is selected from the eligible set according to the order in the new list after the inverse mutation. This new schedule is then used to replace the best schedule so far and to update the pheromone matrix.

Shou: An Ant Colony Algorithm for Improving the Net Present Values of Resource Constrained Projects

Heuristic ACA CRBRS LSSPT ΣDCFLF MINLFT CCFW MINSLK WRUP

Min 96.38 76.35 69.18 67.21 73.33 73.67 66.20 69.18

Table 1. Descriptive statistics of heuristic results Max Mean S.D. 100.00 99.79 0.63 100.00 94.31 5.13 100.00 91.54 5.07 100.00 90.94 5.79 100.00 90.06 5.83 100.00 89.59 5.76 100.00 89.48 6.66 100.00 88.89 6.81

3.4 Elitist strategy To speed up the convergence, an elitist strategy is adopted in the ant colony algorithm. In the scheduling process, if the best schedule of one generation is strictly superior to the global best schedule so far, the pheromone augmented by the newest elitist ant is doubled. Similarly, if a schedule generated by a crossover operation or inverse mutation is strictly superior to the global best schedule so far, the elitist strategy is also applied to accelerate the searching.

3.5 Backward scheduling The serial generation scheme promises to generate left-justified schedules which tend to have short durations but it does not promise to generate schedules with maximized net present values. It is proved that a backward scheduling technique helps to improve the NPV of a left-justified schedule [7]. Hence, a backward scheduling procedure, as described in [7], is applied to the best schedule in each generation to improve the NPV further.

4. EXPERIMENTAL TESTING AND ANALYSIS The classic Patterson test problems [10] are adopted for algorithmic testing and analysis. The set includes 110 project scheduling problems, each problem with 7 to 50 activities and 1 to 3 renewable resources. Since the original Patterson test problems do not concern with cash flows, the problems are modified to suit the experiment. Each resource demanded by projects has a unit cost per time period, and the cash outflow occurs at the completion time of the activity. A certain amount of cash inflow occurs at the completion of the project. Several projects in the Patterson set with negative or over small net present values are discarded. A total of 103 test problems are

# of best 88 14 2 3 3 2 1 1

481

# of worst 0 3 11 16 22 22 21 20

employed for testing and analysis. A variety of methods are utilized to solve the above-mentioned test problems. For example, the late start and short processing time (LSSPT) heuristic [1], the cumulative cash flow weights (CCFW) heuristic [2], the minimum slack (MINSLK) and minimum latest finish time (MINLFT) decision rules [6], the discounted cash flow of future activities at late-finish times (ΣDCFLF) heuristic [11], the composite regret-based random sampling (CRBRS) method [12], and the weighted resource utilization ration and precedence (WRUP) decision rule [13]. For the ant colony algorithm (ACA) suggested in this paper, the algorithm terminates after 1000 generations, and 5 ants are employed in each generation. For each ant, the parameters in Equation (5) are set as α=1 and β=1 so that the influence of heuristic and pheromone information is balanced. The evaporation rate is ρ=2%. The unlearning rate for inverse mutation is pu=1%. The experimental results are summarized in Table 1. Since the optimal solutions to these RCPSP-DCFs are unknown, the best solutions found by the above-mentioned heuristics are used as the basis of comparison. For each project instance, the percentage of the net present value given by a tested heuristic to the best value is used for comparison. The descriptive statistics of all methods are listed in Table 1. Obviously, the proposed ant colony algorithm generates significantly better solutions with an average deviation of 0.21% to the best solutions while the second best CRBRS method has an average deviation of 5.69%. The ant colony algorithm gives 88 best solutions out of total 103 project instances. The descriptive statistics also shows that the proposed algorithm is stable in schedule qualities. A nonparametric Wilcoxon signed ranks test is employed to do further comparison, and the results confirm that the proposed ant colony algorithm performs significantly better than other tested heuristics. Table 2 shows the comparison of the ant colony algorithm with the second best CRBRS heuristic in this test. For some cases, both the ACA and CRBRS methods fail to generate the best

482

Journal of the Chinese Institute of Industrial Engineers, Vol. 23, No. 6, pp. 478-483 (2006)

Table 2. Signed ranks test of ACA and CRBRS heuristics Mean Sum of # rank ranks Positive ranks 89 55.49 4939.00 (ACA>CRBRS) Negative ranks 13 24.15 314.00 (ACA

5. CONCLUSIONS & FUTURE WORKS An ant colony algorithm is suggested in this paper to improve the net present values of resource-constrained projects. The crossover operation, unlearning strategy of inverse mutation, and elitist strategy are integrated into the algorithm to enhance its capability of searching for better solutions. The experimental results indicate that the proposed ant colony algorithm helps to improve the net present values of projects. In future works, the author aims to improve the proposed ant colony algorithm further. Techniques from other evolutionary algorithms such as the genetic algorithm could be utilized to enhance its capability for global optimization and faster convergence. Moreover, other schedule generation schemes shall be explored. The

parallel scheme is not convenient for the ant colony algorithm, yet it could be more suitable for irregular objective functions such as the NPV. A novel ant colony algorithm based on a parallel scheme is possible to improve the NPV of a resource-constrained project further and would be an important direction for future works.

ACKNOWLEDGEMENTS This paper is supported by the National Natural Science Foundation of China (Project 70401017), and is also sponsored by the Scientific Research Foundation for the Returned Overseas Chinese Scholars, State Education Ministry of China. The author is also grateful to the reviewers for their valuable comments.

REFERENCES 1.

Abbasi, G. Y. and Y. A. Arabiat, “A heuristic to maximize the net present value for resource-constrained project scheduling problems,” Project Management Journal, 32, 17-24 (2001).

2.

Baroum, S. M. and J. H. Patterson, “The development of cash flow weight procedures for maximizing the net present value of a project,” Journal of Operations Management, 14, 209-227 (1996).

3.

Brucker, P., A. Drexl, R. Mohring, et al., “Resource-constrained project scheduling: Notation, classification, models, and methods,” European Journal of Operational Research, 112, 3-41 (1999).

4.

Herroelen, W., B. de Reyck and E. Demeulemeester, “Resource-constrained project scheduling: A survey on recent developments,” Computers & Operations Research, 25, 279-302 (1998).

5.

Herroelen, W., P. van Dommelen, and E. Demeulemeester, “Project network models with discounted cash flows: A guided tour through recent developments,” European Journal of Operational Research, 100, 97-121 (1997).

6.

Kurtulus, I. and E. W. Davis, “Multi-project scheduling: Categorization of heuristic rules performance,” Management Science, 28, 161-172 (1982).

7.

Li, K. Y. and R. J. Willis, “An iterative scheduling technique for resource-constrained project scheduling,” European Journal of Operational Research, 56, 370-379 (1992).

8.

Merkle, D. and M. Middendorf, “An ant algorithm with a new pheromone evaluation rule for total tardiness problems,” Lecture Notes in Computer Science, 1803, 287-296 (2000).

9.

Merkle, D., M. Middendorf and H. Schmeck, “Ant colony optimization for resource-constrained project scheduling,” Proceedings of the Genetic and Evolutionary Computation Conference, Las Vegas, 893–900 (2000).

Shou: An Ant Colony Algorithm for Improving the Net Present Values of Resource Constrained Projects 10. Patterson, J. H., “A comparison of exact approaches for solving the multiple constrained resource, project scheduling problem,” Management Science, 30, 854-867 (1984). 11. Pinder, J.P. and A. S. Marucheck, “Using discounted cash flow heuristics to improve project net present value,” Journal of Operations Management, 14, 229-240 (1996). 12. Shou, Y. Y., “A random sampling technique for improving the net present value of resource-constrained projects,” Proceedings of 2005 Chinese Control & Decision Conference, Harbin, 1663-1666 (2005). 13. Ulusoy, G. and L. Ozdamar, “A heuristic scheduling algorithm for improving the duration and net present value of a project,” International Journal of Operations and Production Management, 15, 89-98 (1995).

of stochastic scheduling rules for maximizing project net present value,” European Journal of Operational Research, 85, 327-339 (1995).

ABOUT THE AUTHOR Yong-Yi Shou is an associate professor in the Department of Management Science and Engineering, School of Management, Zhejiang University, China. He received his Ph.D. degree in the Division of Systems and Engineering Management, School of Mechanical & Production Engineering, Nanyang Technological University, Singapore. His current research interests include project management, production and operations management, and innovation management.

14. Yang, K. K., L. C. Tay and C. C. Sum, “A comparison

用蟻群演算法改進資源受限專案的淨現值 壽湧毅* 浙江大學管理學院管理科學與工程學系

摘要 對於多數工期較長、現金流較大的工程專案而言，淨現值（net present value, NPV）是 非常重要的專案管理指標。同時，一般的專案所能調動的資源相當受限，如何合理調 配資源，優化工程進度，從而改善專案淨現值，就成為重要的課題。本文提出一種基 於人工蟻群（artificial ant colony）的演算法，以改進資源受限專案的淨現值。該演算 法根據人工蟻群逐步產生的費洛蒙（pheromone）動態調整與優化專案的資源分配， 從而逐步提高項目的淨現值。其他演化式演算法中的相應技術，如交叉遺傳、反向變 異、精英策略，亦加以採用以加速演算法的搜索進程。該演算法亦採用反向調度技術 進一步調整進度計畫，以提高專案淨現值。計算實驗的結果顯示，本文所提出的蟻群 演算法可以較顯著地改進資源受限專案的淨現值。 關鍵詞：人工蟻群，資源受限專案，淨現值 （*聯絡人：[email protected]）

483

Our partners will collect data and use cookies for ad personalization and measurement. Learn how we and our ad partner Google, collect and use data. Agree & close