An ant colony system based decision support system for construction time-cost optimization

Abstract Time and cost are the two most important factors to be considered in every construction project. In order to maximize the profit, both the client and contractor would strive to minimize the project duration and cost concurrently. In the past, most of the research studies related to construction time and cost assumed time to be constant, leaving the analyses based purely on a single objective of cost. Acknowledging this limitation, an evolutionary-based optimization algorithm known as an ant colony system is applied in this study to solve the multi-objective time-cost optimization problems. In this paper, a model is developed using Visual Basic for Application™ which is integrated with Microsoft Project™. Through a test study, the performance of the proposed model is compared against other analytical methods previously used for time-cost modeling. The results show that the model based on the ant colony system techniques can generate better solutions without utilizing excessive computational resour...


Introduction
In the construction field, time saving can be transformed into some kinds of opportunities viz. early occupancy, saving in overhead cost or bonus (Li, Love 1997;Ng et al. 2000). Despite that, to reduce the time would necessitate the mobilization of extra resources (Kapliński, Janusz 2006) and this could lead to an escalation in direct cost (Zheng et al. 2004). The relationship between construction time and cost has aroused the interest of researchers to identify the most effective approach to minimize the time or cost, and examples of these include the harmony search (Geem 2010), particle swarm optimization (Zhang, Li 2010;Zhang, Xing 2010), genetic algorithm (Ke et al. 2009) and memetic algorithm (Li, Wang 2009) based time-cost trade-off models. Yet, by minimizing the project time does not necessarily lead to the most satisfactory results (Zavadskas et al. 2010). Instead, clients and contractors should strive for optimizing both the time and cost are optimized concurrently if they were to maximize their profit under today's competitive environment. This has led to the development of time-cost optimization (TCO) concepts .
The tradeoff relationship of construction time and cost infers that these two parameters are conflicting in nature (Zhang et al. 2007), and hence the desired purpose of TCO is to arrive at an optimal compromise between these two opposing objectives so as to bring the overall duration and total cost of a project to a minimum. Over the last decade, various TCO models for the construction domain have been developed, and these include a genetic algorithms (GAs) model (Feng et al. 1997) which aimed at improving the hybrid linear/integer model put forwarded by Liu et al. (1995) earlier; a TCO model utilizing an adaptive weight approach (Gen, Cheng 2000); and a multi-objective time-cost optimization model based on the amalgamation of both the GAs concepts and a modified adaptive weight approach (MAWA) (Zheng et al. 2004).
While the above GA-based multi-objective TCO models serve to establish an optimal overall time and total cost concurrently, the problem of premature convergence exists when it comes to searching for the globally non-dominated solutions . Besides, the time taken to processing a set of globally non-dominated solutions for a large scale project could be very long. These would affect the effectiveness and efficiency of the decisions being made. Hence, a novel approach for TCO modeling which can overcome the limitations of the GAs would be beneficial. In this paper, an ant colony system (ACS) approach is proposed for solving the TCO problems (Afshar et al. 2009).
ACS is a kind of ant colony optimization (ACO) algorithms which were originally proposed by Colorni et al. (1991) as a meta-heuristic scheme to locate nearoptimal solutions. As reported by Dorigo and Stützle (2004), an ant system (Dorigo et al. 1992) being the most primitive ACO algorithms was applied in solving the travel salesmen problem. Then, several extensions of the ant system including the ACS, elitist ant system, maxmin ant system, and so on were inspired to improve its performance (Zhang et al. 2007). A comparison of various ACO algorithms have been conducted by Dorigo and Stützle (2004), which concludes that the performance of ACS is superior to the other ACO algorithms in terms of it convergence speed and processing time. By avoiding premature stagnation and improving the search speed, both the quality of solutions and the time required could be improved by using ACS.
In this paper, an automated ACS-based TCO model is introduced and its performance is compared with other modeling techniques. The paper first highlights the development environments being used for building the model. The components of the ACS-based TCO model along with their functions and operation are then introduced. Finally, the model is validated through a case study and the results of comparison are summarized.

Modelling environment
Before the ACS-based TCO model was developed, it is necessary to determine which programming language is the most suitable for building up the optimization model and user interface. The prime consideration was readiness of the programming language to interact with a dedicated scheduling tool and database package in a simple and direct manner. This is especially important if the model is to appeal to the planners and project managers who are not too familiarized with programming. In this research, Microsoft Project™ was chosen as the scheduling tool due to its widespread usage in the construction field. As for the package for data storage, Microsoft Excel™ was used because data can be exported to or imported from Microsoft Project™ for analysis easily.
Various development platforms such as FORTRAN™, Visual Basic™, Java™, Visual C™, and Visual Basic for Application™ (VBA) were compared. While all these programming languages are equally powerful and applicable, VBA offers the best integration and interaction with Microsoft Project™ and the database. Therefore, data in Microsoft Excel™ can be used by VBA for analysis while the results generated by VBA can be plugged to Microsoft Project™ so as to identify the critical path and compute the overall project duration without the needs for complicated coding. Consequently, VBA was selected as the language for developing the optimization model and the user interface.

The prototype model
The codes in VBA were compiled as a macro program and integrated with Microsoft Project™, and a new tab known as "T/C Analysis" has been added to the menu bar in Microsoft Project™. User can simply invoke the newly developed functions, i.e. "Data Input", "Optimization", and "Data Output" through the pull down menu in Microsoft Project™. To start the analysis, user is required to enter the project data and those data as required for ACS modeling through the "Data Input" module. Acknowledging that it is possible that the time or cost may be fixed, user may choose amongst different optimization strategies to suit the actual need. Should the "Time-Cost Optimization" option be chosen, a multi-objective time-cost optimization will be conducted. Alternatively, the "Total Cost Minimization" or "Time Minimization" would result in the minimization of either the total cost (i.e. the sum of direct cost and indirect cost) or the shortest overall duration respectively. Finally, the results are made available to the user through "Data Output" for checking and confirmation.

Data input module
The input variables for the ACO-based TCO model include the following: 1. The logical sequence of the activities in the project, or in other words the network of the project. 2. An estimation of the values for the time and cost of each activity including the best-guess, minimum, and maximum time and cost. For the units for the time and cost, "days" and "$" are used.
Other units can also be considered, but attention should be paid to the unit of indirect cost being based on the time and direct cost. For example, if "day" and "$" are the units for the time and direct cost, the indirect cost should be determined by "$/day". 3. An estimation of the indirect cost which should be a fix value per day. To illustrate how data is inputted into the proposed model, a simple discrete TCO problem as derived from Liu et al. (1995) is adopted. The project data consisting of seven activities (Table 1) is entered into Microsoft Project™ by the user. Along with the project data is up to five alternative time-cost options for each activity, and this information is inputted into Microsoft Excel™ for subsequent analysis. Apart from that, user is required to enter other data into model through the user interface ( Fig. 1), and this information includes the indirect cost for the project, the number of iterations and the reward factor for the ACS algorithm. In this case example, the indirect cost is set as $1,500/day while the number of iterations and reward factor are given as 40 and 20 respectively.

Optimization module
The ACS-based consists of four main phases, which could be described briefly as following.

Phase 1 -parameters initializing
During this phase, the parameters for ACS including the number of ants and the pheromone (τ 0 ), evaporation rate, and other parameters shall be initialized.

Phase 2 -solution construction
The probability for ant k to select option j is established according to the selection rule as shown in Eq. 1: where: p ij (k,t) is the probability that option (i,j) is chosen by ant k for activity i at iteration t; τ ij (t) is the pheromone value of the option (i,j) being left by the ants in iteration t, indicating the attractiveness of the option (i,j) for ant k; η ij represents a heuristic function which evaluates the utility of choosing option (i,j); and α and β are the weights of τ ij and η ij , which were determined in Phase 1.

Phase 3 -pheromone updating
After one solution is generated, local updating is conducted on the options being visited as follows: where τ 0 is the initial pheromone value for each option and ρ is the evaporation rate.
When an entire iteration is finished, global updating would be performed to the iteration-best options (i.e. the options visited by the best ant with the least fitness value in the current iteration) following the following global updating rules: where: z is the evaporation rate in the global-updating process; R is a constant representing the pheromone reward factor; and f best-iter is the fitness value of the best ant in this iteration.

Phase 4 -algorithm stopping
Certain number of iterations would be adopted as the stopping criteria for the proposed model which can be determined by the user.
Readers are referred to Ng and Zhang (2008) for further details of the four phases mentioned above in particular the pheromone updating process.
Furthermore, as demonstrated by Ng and Zhang (2008), MAWA is an effective way to solve the multiobjective problems, such approach would be applied in the current model. Hence, the fitness function for the k th solution (in an ACS model, the fitness for the k th ant in the current iteration) can be represented as follows: where z t (k) and z c (k) are the time and cost value of ant k respectively; and γ is a positive random number between 0 and 1.

Output module
After the evaluation, the following information will be provided to the user through the data output module: 1. The optimum solution(s) of the optimization, which is/are indeed the most optimum value(s) for the total time and cost of a project. For the time-cost optimization, they would prefer to have a series of globally non-dominated solutions. However, when it comes to time and cost optimization, the shortest time and the minimal total construction cost respectively are the most important findings they would like to know. 2. The time and cost options being used for all the activities to generate each of the globally nondominated solution would be extremely useful, as planners can make use of the solutions to derive programs in the Microsoft Project™ platform. A summary of all the parameters being entered will be shown to the users for checking when the "Parameter Summary" option in menu is selected. Should the user satisfy with the input data, they can view the results of optimization which include the Pareto solutions for the optimization as well as the evolution process of the time and cost according to the iteration when they select the "Result Box" option. Taking the results shown in Fig. 1 as an example, there are three globally non-dominated solutions as listed in the left-hand side of the text box (Fig. 1a). Besides, the iter-best solutions (i.e. the best solution in each iteration) are also listed (Fig. 1b)   Should the user wish to schedule the project according to any one of the globally non-dominated solutions as identified, he/she can simply select the number of the solutions in the right box and click the "Schedule It" button. For instance, when Pareto solution number 2 is selected (see Fig. 2), the duration and cost for the activities of this project will be changed accordingly (with total cost and duration being $225,500 and 63 days respectively) as shown in Table 2. The options as highlighted by the rectangle box are the optimum options for solution number 2.

Data storage in Excel
More details about the results such as the exact options selected can be seen in Microsoft Excel™ format once the user click the "Details in Excel" button in the results form (Fig. 3). Figs 3a and 3b show the value of the Pareto solutions and the iter-best solutions in Microsoft Excel™ respectively. Fig. 3a shows at which iteration the Pareto front solutions are found and the option for all the seven activities. In the case project, the first optimum solution (i.e. 61 days and $234,000) is obtained at the 6 th iteration and the last one is found in the 17 th iteration. After the 17 th iteration, ACS can no longer derive a better solution.   In the first iteration, the iter-best duration in the critical path is 79 days, and the total cost is $253,300 with an indirect cost of $1,500/day. Then, the time and cost are both reduced to 69 days and $232,000 in the 5 th iteration representing a very quick improvement. In the 6 th iteration, the shortest duration of 61 days with a total cost of $234,000 -a Pareto front solution is derived.

Model validation
In this section, a test project consisting of 18 activities is applied to test the performance of the developed ACSbased model. Since this construction project (Elbeltagi et al. 2005) was adopted in several other comparable research studies (e.g. Feng et al. 1997;, direct comparisons can be conducted between the current model and the previous ones. The data of the test project including the project activities, their predecessors, estimation values for cost and duration being is highlighted in Table 3. Again, associated with each activity is up to five different possible combinations of time and cost. To evaluate the performance of the ACS-based model, the tests were not restricted to the TCO analysis but also to time and cost optimization analyses respectively.

Time-Cost optimization
In solving this 18-activity project, the maximum number of iterations and reward factors are set as 200 and 20 respectively. The results confirm that these parameters are proper for this project. Based on the selected criteria, the best solution in each iteration (i.e. the iter-best solution) is first listed, and the best (i.e. Pareto front) solution is then selected from the iter-best solutions of all the iterations (Fig. 4). The evolution trend of the ACS algorithm is shown in Fig. 4 with the speed of evolution being very high at the beginning (i.e. time and cost reduce quickly) but the speed gradually decreases until the algorithm converges at the Pareto front solutions. During the first iteration when the options were randomly selected by the model, the time and cost are 121 days and $317,605 respectively. However, after 200 iterations, the time and cost have significantly reduced to 104 days and $276,320 respectively indicating that this is one of the Pareto front solutions for this test project.
From Fig. 4, it is easy to notice that the convergence of the ACS algorithm is extremely quick, and the evolution is very greedy which is extremely desirable for the best solutions. It follows that it may not be very effective in satisfying the need for diversity of solutions. To obtain more solutions, an ACS-SGPU algorithm was developed whereby a two-step global updating strategy is adopted. The first step is to derive the best solutions, while the subsequent step is to generate the second-best solutions. Since the ants may be attracted to those solutions other than the "best" ones, the diversity of solutions can be guaranteed. Hence, after the global pheromone updating with respect to the best ant, a similar update is conducted with respect to the second best ant according to the following equations: where ƒ best-iter is the fitness value of the best ant in this iteration; and τ ij (t) represents the pheromone value of the options (i,j) belonging to the second-best tour but not belonging to the best tour, so that the same option being updated two times could be avoided. With the parameters remain unchanged, the behavior of the ACS-SGPU algorithm can be identified from Fig. 5. From this figure, one can witness that the solution points are more dispersed even with same number of iterations involved. More specifically, the Pareto front solutions obtained by ACS and ACS-SGPU after 200 iterations are listed in Table 4. The results confirm that even though the solutions obtained by ACS-SGPU after 200 iterations are not significantly better than that generated by ACS, the diversity can be guaranteed. In some situation, this would offer managers with more options to choose from when planning the project.  Figs 6 and 7 show the convergence of time and cost for ACS and ACS-SGPU algorithms respectively. From these figures, one could notice that the time and cost are reduced to a range which actually including the time and cost values of the Pareto front solution as found in Fig. 6. In the situation of ACS, the time ranges from 100 to 110 days just after around 20 iterations and the cost ranges from $27,500 to $28,500 after 55 iterations. However, as in the case of the ACS-SGPU, the time and cost fluctuate in a slightly broader range mainly because of its diversity.  6 and 7 can be combined into a 3-D diagram to illustrate the evolutionary trend of the ACS algorithm (Fig. 8) and ACS-SGPU algorithm (Fig. 9). The dots shown in these two figures represent the solutions and they converge to an area quickly with slight fluctuations. The projections of the data points (solutions) can be seen on the relevant 3-D plane. Therefore, these two diagrams can show the relationship between the time and cost; as well as the time-iteration and cost-iteration on the y-z, x-y and x-z projection planes respectively.

Time optimization
When performing TCO analysis using the ACS techniques, the weight values control the balance of the two objectives -i.e. time and cost. These values can be modified so that the model only optimizes the total cost or total duration. When the manager is concerning the cost only, the weight value could be set as (w t = 0, w c = 1). On the other hand, when the duration is the prime objective the weight value could be changed to (w t = 1, w c = 0).
The performance of ACS in time optimization is shown in Fig. 10. The results show that the "best-so-far" total time of the project as derived by ACS reduces sharply with the iteration, and from the 10 th iteration to the end of algorithm, there is no change in terms of the time. The original total time (in the 1 st iteration) of the project is 124 days, while the optimum duration is 100 days (after 10 th iteration) with 24 days which is equivalent to around 20% reduction. This indicates that this model can minimize the project time very quickly.

Cost optimization
When the cost is the prime concern (i.e. w t =0, w c =1), the model results could vary. To compare the results of Elbeltagi et al. (2005), the indirect cost is set as $500 per day while keeping other parameters unaltered, and the convergence of the cost is shown in Fig. 11. This figure only shows the relationship between the "best-so-far" solutions (the lowest cost found from the very beginning of the algorithm) with the iteration instead of the iter-best solutions. From Fig. 11, an optimal cost of $161,270 at the duration of 110 days can be reached after 28 iterations, and the result of any subsequent iteration remains unchanged beyond that point.

Fig. 11. Convergence of cost optimization
The efficiency of the ACS-based model can also be confirmed by the iter-best solutions for cost optimization as depicted in Fig. 12. From this figure, it is evident that the cost points are almost reducing along with the iteration with the exception of two or three points which have a slight upward deviation. This means the algorithm can almost reach the best solution in every cycle of iteration after the 28 th iteration. The ACS is an evolutionary-based algorithm and has the nature to explore new solutions, if the ants always travel in the same way, there will be no evolution of the solution. According to the ACS algorithm, the ants can remember the best solution established in previous iteration. That is to say, the options belonging to this solution will have a greater probability of being selected, but this does not mean that these options can definitely be chosen. In such cases, other options could be selected by the ants and the solution of that iteration may or may not be as good as the previous one, and this can explain the deviation of two or three points in Fig. 12.

Comparisons
A comparison amongst the ACS algorithm, ACS-SGPU algorithm and GA-based TCO model  using the same project is shown in Table 5. From Table 5, it is apparent that both the populations and number of iterations of the ACS-based model are less than those of the GA-based model. As for the time and cost results for the case project, the ACS-based model can obtain a more optimal cost value under the same duration. For example, when the duration is fixed at 100 days, the GAbased model can only come up with a solution which costs $287,720 while the solution derived by the ACS algorithm would cost $283,320 -a saving of $4,400 which is equivalent to 1.53% of the total cost. In the situation of ACS-SGPU, the total cost is $285,400, which is in between the GA and ACS models. However, the iterations of ACS-SGPU and ACS are less than that of GA. Even though the quality of solutions generated by ACS-SGPU is not as good as ACS, it is superior to the GA model and can generate more Pareto front solutions (i.e. five solutions from ACS-SGPU as opposed to four in the case of ACS and GA).
To provide a much clearer comparison, the Pareto front solutions of the three models are illustrated in Fig. 13. The comparisons among these three algorithms indicate that ACS has the best ability to search for globally non-dominated solutions; ACS-SGPU has an excellent power in searching for more solutions. The behavior of GA-based model, however, is not as good as other algorithms under investigation.
The discussions above focus on the TCO analysis. Besides, comparison between the ACS-based model and Elbeltagi's ACO-based time-cost tradeoff (TCT) model was also conducted. Since the TCT analysis involves an  (Table 6). These results illustrate that the ACS-based model can reduce the computation time especially when the network gets more sophisticated as compared with the previous ACO model, and this is an important advantage of the ACS algorithm.

Conclusions
Although many research studies have been conducted using the ant colony optimization algorithms, there has been little attention to the application of such algorithms the ant colony system (ACS) for time-cost optimization (TCO) problems. In this study, a TCO model based on the ACS techniques is developed to optimize the time and cost simultaneously for construction projects. To deal with this multi-objective problem, a modified adaptive weight approach (MAWA) is applied to combine the time and cost into a single objective function through the relevant weight values on the time and cost objectives. In the ACS algorithm for TCO, the weight values can be calculated after the maximal and minimal time and cost of the current iteration. On the other hand, the model can be used to optimize the time or total cost when the relevant weight value is adjusted. The ACO-based TCO model has been developed using VBA on the platform of Microsoft Project™, and three modules have been built in the proposed model which includes the data input, optimization, and data output. The data input interface allows the user to select the exact algorithm (ACS or ACS-SGPU) and the optimization type (TCO, time optimization or cost optimization). In the optimization module, the ACS algorithm has been coded in accordance with the four development phases. Finally, the results are generated through the data output module. The solutions can be plugged to Microsoft Project™ so as to facilitate interaction with the user. The model, therefore, provides a user-friendly and efficient platform to support time-cost optimization decisions.
The model has been compared with other systems developed using by other approaches, and the results of the validation show that the ACS technique can generate a group of near-global solutions within a shorter processing time indicating that ACS is superior for multiobjective TCO modeling. The results of the validation confirm that MAWA can efficiently work with ACS. Therefore, apart from broadening our understanding on the application domain of ACO algorithms, the model also provides a new direction for modeling construction time-cost analysis. Using the ACS-SGPU, planners or project managers are offered a series of possible solutions for TCO analysis so that the chance of identifying a suitable solution is increased.