Scholarly article on topic 'Optimizing strategy software for repetitive construction projects within multi-mode resources'

Optimizing strategy software for repetitive construction projects within multi-mode resources Academic research paper on "Civil engineering"

CC BY-NC-ND
0
0
Share paper
Academic journal
Alexandria Engineering Journal
OECD Field of science
Keywords
{"Construction repetitive projects" / "Multi-mode resources" / "Multi-objective optimization and software"}

Abstract of research paper on Civil engineering, author of scientific article — Remon Fayek Aziz

Abstract Estimating tender data for specific project is the most essential part in construction areas as of contractor’s view such as: proposed project duration with corresponding gross value and cash flows. This paper focuses on how to calculate tender data using Optimizing Strategy Software (OSS) for repetitive construction projects with identical activity’s duration in case of single number of crew such as: project duration, project/bid price, project maximum working capital, and project net present value of the studied project. A simplified multi-objective optimization software (OSS) will be presented that creates best tender data to contractor compared with more feasible options generated from multi-mode resources in a given project. OSS is intended to give more scenarios which provide practical support for typical construction contractors who need to optimize resource utilization in order to minimize project duration, project/bid price, and project maximum working capital while maximizing its net present value simultaneously. OSS is designed by java programing code system to provide a number of new and unique capabilities, including: (1) Ranking the obtained optimal plans according to a set of planner specified weights representing the relative importance of duration, price, maximum working capital and net present value in the analyzed project; (2) Visualizing and viewing the generated optimal trade-off; and (3) Providing seamless integration with available project management calculations. In order to provide the aforementioned capabilities of OSS, the system is implemented and developed in four main modules: (1) A user interface module; (2) A database module; (3) A running module; (4) A connecting module. At the end of the paper, an illustrative example will be presented to demonstrate and verify the applications of the proposed software (OSS) to an optimization expressway of repetitive construction project.

Academic research paper on topic "Optimizing strategy software for repetitive construction projects within multi-mode resources"

Alexandria Engineering Journal (2013) 52, 373-385

Alexandria University Alexandria Engineering Journal

www.elsevier.com/locate/aej www.sciencedirect.com

ORIGINAL ARTICLE

Optimizing strategy software for repetitive construction projects within multi-mode resources

Remon Fayek Aziz *

Structural Engineering Department, Faculty of Engineering, Alexandria University, Egypt

Received 9 January 2013; revised 9 March 2013; accepted 6 April 2013 Available online 3 May 2013

KEYWORDS

Construction repetitive projects

Multi-mode resources Multi-objective optimization and software

Abstract Estimating tender data for specific project is the most essential part in construction areas as of contractor's view such as: proposed project duration with corresponding gross value and cash flows. This paper focuses on how to calculate tender data using Optimizing Strategy Software (OSS) for repetitive construction projects with identical activity's duration in case of single number of crew such as: project duration, project/bid price, project maximum working capital, and project net present value of the studied project. A simplified multi-objective optimization software (OSS) will be presented that creates best tender data to contractor compared with more feasible options generated from multi-mode resources in a given project. OSS is intended to give more scenarios which provide practical support for typical construction contractors who need to optimize resource utilization in order to minimize project duration, project/bid price, and project maximum working capital while maximizing its net present value simultaneously. OSS is designed by java programing code system to provide a number of new and unique capabilities, including: (1) Ranking the obtained optimal plans according to a set of planner specified weights representing the relative importance of duration, price, maximum working capital and net present value in the analyzed project; (2) Visualizing and viewing the generated optimal trade-off; and (3) Providing seamless integration with available project management calculations. In order to provide the aforementioned capabilities of OSS, the system is implemented and developed in four main modules: (1) A user interface module; (2) A

Abbreviations: ACO, Ant Colony Optimization; AI, Artificial Intelligence; ANN, Artificial Neural Networks; COPS, Construction Operation and Project Scheduling; CP, Crossover Probability; CPM, Critical Path Method; DP, Dynamic Programing; GAs, Genetic Algorithms; GWP, Global Warming Potential; HM, Heuristic Methods; KBES, Knowledge Based Expert Systems; LOB, Line Of Balance; LP, Linear Programing; MAs, Memetic Algorithms; MM, Mathematical Methods; MP, Mutation Probability; OSS, Optimizing Strategy Software; PD, Project Duration; PDM, Precedence Diagram Method; PERT, Program Evaluation and Review Technique; PM, Project Maximum working capital; PN, Project Net present value; PP, Project/bid Price; PSO, Particle Swarm Optimization; RCMPSP, Resource Constrained Multi-Project Scheduling Problem; SFL, Shuffled Frog Leaping algorithms; TCEI, Time, Cost, and Environment Impact; VPM, Vertical Production Method. * Tel.: +20 12 2381 3937. E-mail address: Remon_fayek@hotmail.com

Peer review under responsibility of Faculty of Engineering, Alexandria University.

1110-0168 © 2013 Production and hosting by Elsevier B.V. on behalf of Faculty of Engineering, Alexandria University. http://dx.doi.Org/10.1016/j.aej.2013.04.002

database module; (3) A running module; (4) A connecting module. At the end of the paper, an illustrative example will be presented to demonstrate and verify the applications of the proposed software (OSS) to an optimization expressway of repetitive construction project.

© 2013 Production and hosting by Elsevier B.V. on behalf of Faculty of Engineering, Alexandria

University.

1. Introduction

One of the most challenging tasks of a construction project planner is the simultaneous need to optimize resource utilization in order to minimize project duration, project/bid price, and project maximum working capital while maximizing its net present value. Project planners face complicated multivar-iate, multi-objective optimization problems that require conducting trade-off analysis. Also, construction management decisions about multi-objective optimization for conducting activities are made during the early planning phase of projects, yet many possible scenarios should be considered during the feasibility study phase. Evolutionary algorithms such as Genetic Algorithms (GAs) and Particle Swarm Optimization (PSO) have been applied as advanced, computational optimization methods to overcome the aforementioned limitations of conventional methods and solve simultaneous optimization problems in construction project planning. In this paper, the developed GA software is presented to solve multi-objective optimization problems in construction project planning. The objective of this study is to develop optimization software (OSS) that is superior to existing optimization algorithms to minimize project duration, project/bid price, and project maximum working capital while maximizing its net present value. To achieve this objective, this paper is structured as follows: First, the research background on existing optimization algorithms to solve multi-objective optimization problems in construction project planning is described. Second, the next sections present the OSS development of multi-objective optimization problems in construction project planning, followed by a description of its modules. Third, the proposed software is applied on an illustrative example to facilitate the use of the proposed software and demonstrate its capabilities. Fourth, the performance of the proposed software is compared with manual optimization solutions in this section. Finally, conclusion is summarized at the end of the paper.

2. Research background

The technique used for project scheduling will vary depending upon project's size, complexity, duration, personnel, and owner requirements as shown in Fig. 1. It divided the construction projects into two main groups. The first one is projects with non-repetitive activities. The second group has multiple numbers of stages. Projects with non-repetitive activities divided into two main groups. The first one is the bar chart being one of the oldest methods used in construction planning and developed by Henry Gantt during the World War I; the second one is network-based methods which are two widely known network-based techniques, namely Critical Path Method (CPM) and Program Evaluation and Review Technique (PERT). Both methods were developed simultaneously and independently during the late 1950s. It divided the construction projects with repetitive activities into two categories: linear and non-linear projects; linear projects, the projects are composed of a number of typical stages with identical activities of the same duration repeated consecutively from one unit to the next. Several techniques were developed for projects with discrete units, such as floors, houses and offices, and were developed for repetitive projects, such as Line Of Balance (LOB) and Vertical Production Method (VPM).

Optimizations of construction project planning are special kinds of general optimization problems recognized. Optimization problems have been studied since 1960s and are considered as a particularly difficult combinatorial problem. These problems in construction project planning are special kinds of general optimization problems recognized as Non-deterministic Polynomial-time hard (NP-hard) in computational complexity theory. NP-hard problems are among the most difficult optimization problems. Typically, there are three methods as shown in Fig. 2 to solve these complex optimization problems: (1) Heuristic approaches: these approaches are experience based techniques that rely on the rules of thumb

Figure 1 Taxonomy of the existing planning techniques for construction projects.

Figure 2 Taxonomy of the existing optimization algorithms.

of decision makers; (2) Mathematical programing methods: these methods are mathematical techniques that are applied to solve optimization problems where one seeks to minimize or maximize a real function by systematically choosing the values of real or integer variables within allowable sets; and (3) Evolutionary algorithms: these algorithms are stochastic search methods that mimic the natural biological evolution and social behavior of species [1]. Kandil and El-Rayes [2] applied a multi-objective genetic algorithm to optimize resource allocation in a large-scale construction project. Also, Zahraie and Tavakolan [3] use the non-dominated sorting genetic algorithm in a harbor construction project. Ng and Zhang [4] stated that despite GAs benefit, the time taken by GAs to generate a near-optimum solution can be excessive. Mendes et al. [5] combined a genetic algorithm and a schedule generator procedure that generates parameterized active schedules. They also introduced a measure to compute a modified makespan which uses fitness function in their GA. Chromosomes represent the priorities of the activities and delay times. For each chromosome, two phases are applied: decoding of priorities, delay times, and schedule generation. The first phase is responsible for transforming the chromosomes supplied by the genetic algorithm into the priorities of the activities and delay times. The second phase makes use of priorities and the delay times defined in the first phase and constructs parameterized active schedules. El-Rayes and Kandil [6] visualized the three-dimensional trade-offs among project time, cost, and quality by evaluating the effect of various resource utilization plans on the project performance. They considered construction methods, crew formation, and crew overtime policies as decision variables. A more recent example is the study by Marzouk et al. [7] who have used genetic GAs to perform multi-objective optimization with three objectives: project duration, project cost, and total pollution. The study focused on minimizing total pollution and observing its relationship with time and cost. Evolutionary algorithms, such as genetic algorithms, ant colony optimization, and particle swarm optimization are selection-based. The mathematical relationships

between variables are not required [8]. These characteristic of evolutionary algorithms make them desirable to time, cost, and environmental impact analyses, because the relationships between them are not known, but each of them can be analyzed and calculated independently [9]. Results of analyses by using evolutionary algorithms are typically represented as Pareto front, i.e., a set of optimal solutions. Decision-making methods can be applied to assist users in choosing a right solution; for example, Mouzon and Yildirim [10] applied an analytical hierarchy process to determine the best alternative among a set of solutions on the Pareto front. Sensitivity analysis is a deterministic modeling technique, which is used for identification and comparison purposes. Lee et al. [11] generated a simulation system named Construction Operation and Project Scheduling (COPS), which utilized sensitivity analysis with different resource combinations, to search for the optimal resource combination. Long and Ohsato [12] developed a new method for scheduling repetitive construction projects with several objectives such as project duration, project cost, or both. The method deals with constraints of precedence relationships between activities and constraints of resource work continuity. The method considers different attributes of activities (such as activities which allow or do not allow interruptions), and different relationships between direct costs and durations for activities (such as linear, non-linear, continuous, or discrete relationship) to provide a satisfactory schedule. In order to minimize the mentioned objectives, the proposed method finds a set of suitable durations for activities by genetic algorithm and then determines the suitable start times of these activities by a scheduling algorithm. Senouci and Al-Derham [13] presented a genetic algorithm-based multi-objective optimization model for the scheduling of linear construction projects. The model allowed construction planners to generate and evaluate optimal/near-optimal construction scheduling plans that minimize both project time and cost. The computations in the present model are organized into three major modules; A scheduling module that developed practical schedules for linear construction projects; A cost module that computed

the project's costs; A multi-objective module that searched for and identified optimal or near optimal trade-offs between project time and cost. An application example is analyzed to illustrate the use of the model and to demonstrate its capabilities in optimizing the scheduling of linear construction projects. Chen and Weng [14] proposed two-phase genetic algorithm "OA" model to solve the resource-constrained project scheduling problem. Both time-cost trade-off and resource scheduling are considered in the proposed model. In addition to ordinary resource constraints, the two-phase OA model also allowed for interruption and overlap of activities. The model had a total of four subsystems: the input subsystem, the time-cost trade-off subsystem, the resource scheduling subsystem, and the output subsystem. EL-Beltagi [15] introduced OAs as a promising management tool that can help practitioners to optimize decision and enhance automation in construction. Basic OAs processing is described and three example applications for site layout planning, resource leveling, and time-cost trade-off are presented to demonstrate its capabilities. Resende [16] presented a genetic algorithm for the Resource Constrained Multi-Project Scheduling Problem (RCMPSP). The chromosome representation of the problem is based on random keys. The schedules are constructed by using a heuristic that builds parameterized active schedules based on priorities, delay times, and release dates defined by the genetic algorithm. The approach is tested on a set of randomly generated problems. The computational results validate the effectiveness of the proposed algorithm. Cheng et al. [17] proposed a hybrid mechanism that integrates heuristic algorithms and genetic algorithms named as "heuristic genetic algorithms'', to efficiently locate the best resource combination for the construction simulation optimization. The sensitivity analysis is conducted to find the optimal resource combination, in which all possible resource combinations are exhaustively enumerated to find the suitable resource combination that produces the optimal system performance. Afshar and Fathi [18] presented a OA based model for determination of the best combination of time, cost, and resources in a multiple resource constraint problem integrated with weighted sum method for handling multi-objective optimization problem. The proposed model considered both resource allocation and leveling simultaneously. Since the problem is assumed to be resource constraint, resource allocations modify the schedules based on multiple resource restrictions. Besides the basic concept of resource leveling, minimization of Mx (X-moment of resource histogram) is used to minimize resource fluctuation. In addition to Mx, the paper used My (Y-moment of resource histogram) in resource leveling process because their simultaneous application improved it to take into consideration the resource utilization period. El-Rayes and Jun [19] developed two new metrics for resource leveling and a robust optimization model to maximize the efficiency of resource utilization in construction projects. The model is designed to search for optimal and practical schedules that minimize undesirable resource fluctuation while simultaneously minimizing the resource peak demand. The model is developed in three main modules: (1) Initialization module to calculate an initial project schedule and total float per each activity; (2) OA module to search for and identify a set of optimal schedules that maximize resource utilization efficiency; and (3) Resource leveling module to evaluate the impact of shifting non-critical activities within their float times on the efficiency of resource utilization. Also,

Maravas and Pantouvakis [20] used a fuzzy repetitive scheduling method for projects with repeating activities. Ozcan et al. [21] proposed a framework based on the concept of control accounts to determine optimal construction operations when project Time, Cost, and Environment Impact (TCEI) are considered as project objectives during project planning. The framework also supports decision-making by using sensitivity analysis. Life cycle assessment is applied to the evaluation of environmental impact in terms of Global Warming Potential (GWP). The non-dominated sorting genetic algorithm is selected to determine optimal construction operations. Abdel-Khalek et al. [22] presented the development of an optimization model by using Genetic Algorithms in order to search the optimal solution for all activities in the project inside contract duration that maximizes cumulative net overdraft and minimizes daily financing, and is developed in two main tasks. In the first task, the model is formulated to incorporate and enable the optimization of financing any large-scale project. In the second task, the model is formulated to enable available starting times for all activities in the project and select the suitable start time of each activity within the total float to get maximum cumulative net overdraft process. An application example and small case study were analyzed to illustrate the use of the model and demonstrate its optimization process and developing minimum financing construction with scheduling. These new capabilities should prove its usefulness for decision makers in large-scale construction projects, especially those who are involved in new types of contracts that minimize the daily project financing. Aziz [23] presented the development of a multi-objective optimization formulation in order to search the optimal project tender offer in the typical repetitive construction project within multi-mode resource options for all activities, which minimize project duration, project/ bid price, and project maximum working capital while maximizing its net present value simultaneously. It was developed in two main tasks: First task, the formulation was designed to incorporate and enable the optimization of any repetitive project. Second task, the formulation was designed to enable available starting times for all activities in the project and select the suitable start time of each activity within its total float to get best optimization schedule, which it will be developed by Optimizing Strategy Software (OSS) at this research.

Initial Population

Selection *

Mating

Crossover * ~

Mutation

Figure 3 Typical genetic algorithm.

Table 1 Main crossover operators.

Single point crossover Two point crossover Uniform crossover

Parent A Parent B Offspring A Offspring B 11001010 01110011 11001011 01110010 Parent A Parent B Offspring A Offspring B 11001010 01110011 11110010 01001011 Parent A Parent B Offspring A Offspring B 11001010 01110011 11101011 01010010

3. Genetic Algorithms (GAs)

Genetic Algorithms (GAs) are inspired by Darwin's theory about evolution. The GA is a global search procedure that searches from one population of solutions to another, focusing on the area of best solution. It modeled with a set of solutions (represented by chromosomes) called initial population, computation is performed through the creation of an initial population of individuals and modifying the characteristics of a population of solutions (individuals) over a large number of generations followed by the evaluation, a satisfactory solution is found. This process is designed to produce successive populations that mean the solutions from one population are taken and used to form a new population. This is motivated by a hope that the new population will be better than the old one and so on through generations. A typical implementation of genetic algorithm is shown in Fig. 3.

Goldberg [24] stated the Basic Outline of Genetic Algorithms as did in the following: (1) [Start] Generate random population of n chromosomes (suitable solutions for the problem); (2) [Fitness] Evaluate the fitness f(x) of each chromosome x in the population; (3) [New population] Create a new population by repeating following steps until the new population is complete; (4) [Selection] Select two parent chromosomes from a population according to their fitness (the better fitness, the bigger chance to be selected). The idea is to choose the better parents. Examples of well-known selection approaches are the following: (a) Roulette wheel selection; (b) Rank selection; (c) Tournament selection; and (d) Elitism; (5) [Crossover] allows promising solutions to share their success by swapping the arrangement of parents chromosomes genes to a new offspring (children) with a crossover probability. If no crossover was performed, offspring is an exact copy of parents; (6) [Mutation] allows random changes in the local search space of a given solution, mutate new offspring at each locus (position in chromosome) with a mutation probability; (7) [Accepting] Place new offspring in a new population; (8) [Replace] Use new generated population for further run of algorithm; (9) [Test] If the end condition is satisfied, stop, and return the best solution in current population; and (10) [loop] Go to step No. 2. Crossover is the main explorative operator in GAs. Crossover occurs with a user specified probability called the Crossover Probability (CP), which is problem dependent with typical values in the range between 0.1 and 1.0. Table 1 shows that the main crossover operators are the following: (1) Single point crossover: In this approach, a position is randomly selected at which the parents are divided into two parts. The parts of the two parents are then swapped to generate two new offspring; (2) Two point crossover: In this approach, two positions are randomly selected. The middle pails of the two parents are then swapped to generate two new offspring; (3) Uniform crossover: In this approach, alleles are copied from either the first parent or the second parent with some

probability, usually set to 0.5; and (4) Arithmetic crossover: In this approach, which is used for floating point representations, offspring is calculated as the arithmetic mean of the parents.

As opposed to crossover, mutation is a rare process that resembles a sudden change to an offspring. This can be done by randomly selecting one chromosome from the population and then arbitrarily changing some of its information. The benefit of mutation is that it randomly introduces new genetic material to the evolutionary process, perhaps thereby avoiding stagnation around local minima. In a binary coded GA, mutation is done by inverting the value of each gene in the chromosome according to a user specified probability, which is called the Mutation Probability (MP). This probability is problem dependent, but a small mutation rate less than 0.1 is usually used [1].

4. Employed techniques of proposed model

According to Aziz [23], the following techniques are employed in formulating the present model: (1) Precedence Diagram Method (PDM) is used to represent each stage of the project; (2) For each activity (k), (where k = 1, 2,...,K) in the typical-repetitive network, Line Of Balance (LOB) is used to represent the activity schedule at all stages in project time plan; (3) Transformation from the traditional LOB to modified CPM must be done in the calculations; (4) Each activity (k) (where k = 1,2,..., K) has a time buffer (TBk kk), at each stage (s), (where s = 1,2,..., S) between the completion time of the activity (k) and the start time of each following activity (kk) in the network; (5) Any two sequential activities may have a stage buffer (SBk,kk), of a specific number of stages at any time to meet practical and/or technological purposes, and this stage buffer has to be identified by the planner for these activities; (6) For each activity (k) in the network, a discrete relationship is taken between time, cost, and price at any resource mode option. This relation is applicable for the same activity at each stage (s); (7) Cash flow method by using LOB technique is considered in the study to give construction repetitive project full analysis; and (8) The developed multi-objective formulation is taken into consideration to achieve the optimization results between project duration, bid price, project maximum working capital, and project net present value.

5. Considered assumptions of proposed model

According to Aziz [23], the following discussion assumed that: (1) No idle time is allowed for employed crews; thus, once a crew starts working on an activity at the first stage, it will continue working with the same production rate until finishing the work at the last stage; (2) A constant average duration is set

for the same activity at all stages to maintain a constant production rate. If an activity duration needs to be changed to meet a particular feasible project duration, then an equal change must be made to the activity duration at all stages; (3) Single number of crew is used in employed technique; (4) The learning phenomenon, whereby the actual duration of an activity is reduced as repetition increases, is neglected; (5) The work on each activity is conducted by one unit at a time; (6) Project employer pays 90% of the value of works finished during a payment interval as interim payment to his contractor. However, the contractor will pay his subcontractors and suppliers without any discount and lags, but he will be paid by project employer with a lag of intervals. In civil works construction, 1 week is usually taken as the payment interval; (7) Materials' prices are kept to be fixed during the contract fulfillments; (8) Mobilization advance of a contract is neglected; (9)

Value of retention is equal to 10 percent of the contract price, and it will be paid back at the completion of the project immediately; (10) The project under study is not disturbed by incidents during constructing; (11) Multi-mode resources are used for any activity related to studied project while the number of mode options is varied from one activity to another; (12) Interim payments of the project under study are estimated already and hence known for use in analysis; and (13) Overheads of the project under study are constant and unchangeable with time and project progress.

6. Model implementation

The proposed model is implemented in three major phases: (1) Initialization phase that generates an initial set of (u) possible solutions; (2) Fitness evaluation phase that calculates the

Figure 4 OSS main modules.

project (duration, price, maximum working capital, and net present value) of each generated solution; and (3) Population generation phase that seeks to improve the fitness of solutions over successive generations, (see Fig. 4).

6.1. Phase 1: Initialization

The main objective of this phase is to initialize the optimization procedure in the present model. This phase is implemented in the following two major steps: (1) Read project and GA parameters needed to initialize the search process. The project parameters include the following: (a) project size;

(b) activity precedence information; and (c) available resource utilization options for each activity. The required GA parameters for this initialization phase include the following: (a) string size; (b) number of generations; (c) population size; (d) mutation rate; and (e) crossover rate. The string size is determined by the model, considering the total number of construction activities (K) included in the analyzed project. The number of generations (G) and population size (U) are identified based on the selected string size in order to improve the quality of the solution. Similarly, the mutation rate and crossover rate are determined considering the population size and the method of selection employed by the algorithm, respectively; and (2) Generate random solutions (u = 1 to U) for parent population P1 of the first generation (g = 1). These solutions represent an initial set of resource utilization options that can be used to construct each and every activity in the project. This initial set of possible solutions is then evolved in the following two phases in order to generate a set of optimal resource utilization options for each activity in the project that establishes an optimal trade-off among project duration, price, maximum working capital, and net present value.

6.2. Phase 2: Fitness functions evaluation

The main purpose of this phase is to evaluate the project duration, price, maximum working capital, and net present value of each possible solution (u) in generation (g) in order to determine the fitness of the solution. This fitness determines the likelihood of survival and reproduction of each solution in following generations. As such, this phase evaluates the four identified fitness functions for each solution according to Aziz [23] using the following four steps: (1) Calculate project duration; (2) Calculate bid price; (3) Calculate project maximum working capital; and (4) Calculate project net present value.

6.3. Phase 3: Population generation

The purpose of this phase is to create three types of population in each of the considered generations: (a) parent; (b) child; and

(c) combined. For each generation (g), a parent population (Pg) is used to generate a child population (Cg) in a similar manner that used in traditional GAs, [24]. The purpose of generating this child population is to introduce a new set of solutions by rearranging and randomly changing parts of solutions of parent population. This child population can then be combined with the parent population to create an expanded set of possible solutions that forms the combined population (Ng) for generation (g). This combined population (Ng) is used to facilitate the comparison between initial solutions in the parent population and those generated in the child population. The

best solutions in this combined population, regardless of their origin, are retained and passed to the following generation as a parent population. The computational procedure in this phase is implemented in the following steps: (1) Calculate optimal rank for each solution (u = 1 to U) in the parent population (Pg). First, this is done by ranking the solutions in the population according to their highest net present value and lowest duration, price, and maximum working capital; this is called Pareto optimal domination of solutions, where a solution is identified as dominant if it is better than all other solutions in all of the considered optimization objectives simultaneously. Second, this step calculates the multi-objective fitness function of each solution as shown in Eq. (1), which represents equivalent normalized fitness of each corresponding project duration, bid price, project maximum working capital, and project net present value solution. The fitness values help the algorithm spread the obtained solutions over a wider optimal front and select best range of optimal solutions;

PP" - PP + W2 *-PP-PP^ + W3

PD" - PD

zn — W1 * .PD—PDmn

PM" - PMm

- + W4 *

where Z" = Multi-objective fitness formula for project subsolution (duration; price; maximum working capital and net present value) at any project main-solution using resource mode ("); W1, W2, W3, and W4 are the weights of all terms for fitness formula, summation of all weights must equal to one; PDmin is the minimum project duration of all solutions; PDmax is the maximum project duration of all solutions; PPmin is the minimum project price ''bid price'' of all solutions; PPmax is the maximum project price ''bid price'' of all solutions; PMmin is the minimum of project maximum working capital of all solutions; PMmax is the maximum of project maximum working capital of all solutions; PNmin is the minimum of project net present value of all solutions; and PNmax is the maximum of project net present value of all solutions, and all mathematical formulations were presented by Aziz [23]. (2) Create a child population (Cg) using selection, crossover, and mutation. The optimal rank is used in this step to generate the child population using the GA operations of selection, mutation, and crossover. The selection operation identifies individuals that will go through the reproduction process and gives a better chance to individuals with higher ranks. The crossover operation, on the other hand, crosses each pair of the selected individuals at a randomly determined point and swaps the variables coded in strings at this point, resulting in two new individuals. The mutation operation randomly changes the value of one of the variables in the string to induce innovation and to prevent premature convergence to local optimal [24]. The generated child population is then analyzed

FF = 2

Figure 5 Network of illustrative example (cited in Aziz [23]).

max A 1 'min

using the earlier described steps of phase 2 in order to obtain the values of project cost, duration, and quality for each solution; (3) Combine child population (Cg) and parent population (Pg) to form new combined population (Ng) of size 2U. This combined population acts as a vehicle for the elitism, where good solutions of initial parent population are passed onto the following generation to avoid loss of good solutions; (4) Calculate optimal rank and fitness function for each solution (s =1 to 2U) of the newly created combined population (Ng). This step performs the same operations as step 1 of this phase on the new combined population (Ng); (5) Sort the new combined population (Ng) using ''sorting comparison rule''. This sorting rule selects solutions with less fitness and pushes up these solutions at the top list of all solutions and saves them; and (6) Keep top U solutions from the combined population (Ng) to form the parent population (Pg+i) of the next generation. This parent population is then returned to step 1 of this phase for generating a new child population. This iterative execution of the second and third phases of the model continues until the specified number of generations is completed.

7. Optimization Strategy Software (OSS)

Optimization Strategy Software (OSS) is designed by java programing code system using eclipse software to provide a number of new and unique capabilities, including: (1) Ranking the obtained optimal plans according to a set of planner specified weights that represent the relative importance of duration, price, maximum working capital and net present value in the analyzed project; (2) Visualizing and viewing the generated optimal trade-off among construction project duration, bid price, project maximum working capital and project net present value according to planner ranking relative weights to facilitate the selection of an optimal plan that considers the specific project needs; and (3) Providing seamless integration with available project management calculations to benefit from their practical project scheduling and control features. In order to provide the aforementioned capabilities of OSS, the system is implemented and developed in four main modules, as shown in Fig. 4: (1) A user interface module to facilitate inserting the input of project data and visualizing the output data of four-dimensional trade-offs among the generated solutions by the system. The present user interface module is designed to implement the necessary interface functions in two main phases: (a) An input phase that facilitates the input of project data details, project activities, activities relations, available resource utilization options, and genetic algorithm parameters; and (b) An output phase that allows the user to rank and visualize the optimal project scheduling solutions and optimal activity resource utilization options obtained by the multi-objective optimization model. (2) A database module to facilitate storing data and retrieval of construction scheduling, resource utilization, and optimal trade-off data. The main purpose of this module is to develop a relational database capable of storing necessary input data (e.g., project data details, project activities and available resource utilization options) and produced output data (e.g., generated optimal trade-off among project solutions). This module is composed of main groups that are designed to store the following construction planning details: (a) Project data; (b) Holidays data; (c) Exceptions data; (d)

tí 3 ca -a

8 Id Pi B

rt oj ft

S ^ 0 w

£ £ 3 O

ce to O

^ £ .W

oooooooo oooooooo

oooooooo oooooooo

oooooooo

o o o ^f cn m m

oooooooo

-HOooo'oinmTf

o o o o o o o o

m m cn CN CN

oooooooo oooooooo

oooooooo

OOOOCNOOO

H* ÍH ^ ^

< « < «

tt ü Q

Activities data; (e) Relationships between activities data; (f) Available resource utilization options for each activity data; (g) Optimal activities schedules and optimal resource utilization option for each activity data; and (h) Optimal project duration; price; maximum working capital and net present value trade-off. The present database module is developed using Derby database management system by Java programing code to facilitate its integration with the remaining modules of OSS using connecting module; (3) A running module can be defined as a class of programing code system especially java coding and its applications (e.g., eclipse software) that is designed to allow different calculation runs of project solutions such as: (a) Project duration; (b) Bid price; (c) Project maximum working capital; and (d) Project net present value, integrated with all previous calculations the multi-objective optimization fitness formula; (4) A connecting module can be defined as a class of programing code system especially java coding and its applications that is designed to communicate and exchange data from available modules with a seamless integration. The present connecting module is developed in OSS to enable: (a) The Java programing code driver; and (b) The Derby data base driver. First, the java programing code driver is utilized to perform two main functions: (i) Export data from the project, activity, successors, and resource utilization in the database module to running module; and (ii) Import the generated results from running module to the optimal activity schedules and optimal project trade-off data in the database module. Second, the derby driver is used in OSS to perform two main functions: (i) Export the existing project data from the OSS input interface module to the activities and successors relationship data in the database module; (ii) Import the selected optimal scheduled data obtained by multi-objective optimization model from the database module to OSS output interface module to facilitate its visualization and storage using eclipse software. The main transferred data by using the two drivers in the present connecting module are the inserted data in OSS using a newly developed user interface module.

fr Activities Ito&J'

1 A 1200.0 ] SDH

2 B 600.0 3 C 1500.0 New

4 D 2000.0 Deere

€xtr

Figure 7 Project activities form.

f* Activity Data I i i b|BJI

Figure 8 Project activities details form.

8. Verification of optimization strategy software

This section presents the results of practical multi-objective optimization formulations used for selecting optimal repetitive project solutions by using a small example, which is solved manually by Aziz [23] and analyzed by OSS at this study for making a comparison between manual result and OSS result

Figure 6 Project details form.

Figure 12 Project holidays details form.

Figure 9 Project activities resource utilization options form.

Figure 13 Project exceptions details form.

Figure 10 Project activities relationships details form.

Figure 11 Project activities relationships form.

to test the proposed model and software, also to illustrate the use of present OSS and demonstrate its capabilities. The main objective of these results, related to the present system, is to provide small fixed solutions for typical-repetitive construction projects as contractor needs to optimize resource utilization modes for giving the best tendering offer in order to simultaneously minimize project duration, project/bid price and project maximum working capital while maximizing its net present value. Input data for one stage of illustrative example are shown in Fig. 5 and Table 2, and the project example consists of four activities with different relationships among between them. These activities have various number of resource mode options, each mode has its own production rate

Figure 14 Genetic algorithm parameters form.

Figure 15 Ranked project solutions form.

(units/day), material cost (EGP), cost rate of labors and equipment (EGP/day), and subcontractor lump sum cost (EGP), while the activities data for each mode option takes into consideration one stage from studied example as shown in Table 2. Number of repetitive stages of analyzed example is equal to ten typical stages.

By using OSS input wizards as shown in Figs. 6-14, also the user can select the needed scenario from process wizard as shown in Fig. 15, while Fig. 16 shows the output wizard that finalizes the number of possible solutions (project duration

Figure 16 Optimal ranked solutions by "OSS'' output.

Figure 17 Cumulative net cash flow and net present value of optimal solution.

with corresponding price, maximum working capital and net present value) according to activities resource modes combination of analyzed example taking into consideration all stages of studied project. The final output wizard as shown in Fig. 17

gives the final profiles of net cash flow and net present value of optimal solution of studied project. Therefore, Table 3 gives the first result of optimal ranked solutions for each scenario from a total of 15 scenarios.

Table 3 First solution of all scenarios.

ID Project duration (Days)

Project

Start time of activity

Max. working capital

Net present value investment = 10% loan = 14%

Remarks

01 48 189,000.0 0 2 18 8 34,860.0 19,956.3 W1 = 1.0

02 64 151,000.0 0 4 32 14 21,200.0 14,059.6 W2 = 1.0

03 63 163,000.0 0 3 32 13 19,890.0 16,044.1 W3 = 1.0

04 48 189,000.0 0 2 18 8 34,860.0 19,956.3 W4 = 1.0

05 49 177,000.0 0 3 18 9 32,100.0 18,989.5 W1 & W2 = 1/2

06 49 177,000.0 0 3 18 9 32,100.0 18,989.5 W1 & W3 = 1/2

07 48 189,000.0 0 2 18 8 34,860.0 19,956.3 W1 & W4 = 1/2

08 64 151,000.0 0 4 32 14 21,200.0 14,059.6 W2 & W3 = 1/2

09 49 177,000.0 0 3 18 9 32,100.0 18,989.5 W2 & W4 = 1/2

10 59 185,000.0 0 2 29 19 22,250.0 18,998.9 W3 & W4 = 1/2

11 64 151,000.0 0 4 32 14 21,200.0 14,059.6 W1 & W2 & W3 = 1/3

12 49 177,000.0 0 3 18 9 32,100.0 18,989.5 W1 & W2 & W4 = 1/3

13 48 189,000.0 0 2 18 8 34,860.0 19,956.3 W1 & W3 & W4 = 1/3

14 63 163,000.0 0 3 32 13 19,890.0 16,044.1 W2 & W3 & W4 = 1/3

15 49 177,000.0 0 3 18 9 32,100.0 18,989.5 W1 & W2 & W3 & W4 = 1/4

9. Conclusion

This paper presented the development of Optimizing Software Strategy (OSS), which processed a multi-objective optimization formulation in order to search the optimal project tender offer in the typical repetitive construction project within multi-mode resource options for all activities that minimize project duration, project/bid price, and project maximum working capital while maximizing its net present value simultaneously. It was developed in four main modules: (1) A user interface module to facilitate inserting the input of project data and visualizing the output of the four-dimensional trade-offs among the generated solutions by the system; (2) A database module to facilitate storing data and retrieval of construction scheduling, resource utilization, and optimal trade-off data; (3) A running module can be defined as a class of programing code system and is designed to allow different calculation runs of project solutions; and (4) A connecting module can be defined as a class of programing code system, especially java coding and its applications, that is designed to communicate and exchange data from available modules with a seamless integration. OSS was designed for two main tasks: First task, to incorporate and enable the optimization of any repetitive construction project. Second task, to enable available starting times for all activities in the studied project and select the suitable start time of each activity within its total float to get best optimization scenario among large-scale solutions. An applied example was analyzed to illustrate the use of formulations and demonstrate its optimization process and developing tender offer at construction field.

References

[1] E. Elbeltagi, T. Hegazy, D. Grierson, Comparison among five evolutionary-based optimization algorithms, Adv. Eng. Inform. 19 (1) (2005) 43-53.

[2] A. Kandil, K. El-Rayes, Parallel genetic algorithms for optimizing resource utilization in large-scale construction projects, J. Constr. Eng. Manage. 132 (5) (2006) 491-498.

[3] B. Zahraie, M. Tavakolan, Stochastic time-cost-resource utilization optimization using non-dominated sorting genetic algorithm and discrete fuzzy sets, J. Constr. Eng. Manage. 135 (11) (2009) 1162-1173.

[4] T. Ng, Y. Zhang, Optimizing construction time and cost using ant colony optimization approach, J. Constr. Eng. Manage. 134 (9) (2008) 721-728.

[5] J. Mendes, J. Oonc, M. Resende, A random key based genetic algorithm for the resource constrained project scheduling problem, Comput Oper Res (36) (2009) 92-109.

[6] K. El-Rayes, A. Kandil, Time-cost-quality trade-off analysis for highway construction, J. Constr. Eng. Manage. 131 (4) (2005) 447-486.

[7] M. Marzouk, A. Madany, M. El-Said, Handling construction pollutions using multi-objective optimization, Constr. Manage. Econom. 26 (10) (2008) 1113-1125.

[8] A. Jiang, Y. Zhu, A multi-stage approach for time-cost tradeoff analysis using mathematical programming, Int. J. Constr. Manage. 10 (3) (2010) 13-27.

[9] O. Ozcan, Y. Zhu, Life-cycle assessment of a zero-net energy house, in: Proc., Int. Conf. of Constr. Real Estate Manage. (ICCREM), The Chinese Construction Industry, Beijing, 2009.

[10] O. Mouzon, M. Yildirim, A framework to minimize total energy consumption and total tardiness on a single machine, Int. J. Sustain. Eng. 1 (2) (2008) 105-116.

[11] D. Lee, C. Yi, T. Lim, D. Arditi, Integrated simulation system for construction operation and project scheduling, J. Comput. Civ. Eng. 24 (6) (2010) 557-569.

[12] L. Long, A. Ohsato, A genetic algorithm-based method for scheduling repetitive construction projects, Autom. Constr. (18) (2009) 499-511.

[13] A. Senouci, H. Al-Derham, Genetic algorithm-based multi-objective model for scheduling of linear construction projects, Adv. Eng. Softw. (39) (2008) 1023-1028, <http:// www.elsevier.com/locate/advengsoft>.

[14] P. Chen, H. Weng, A two-phase OA model for resource-constrained project scheduling, Autom. Constr. (18) (2009) 485498.

[15] E. EL-Beltagi, Applicability of genetic algorithms in construction engineering and management, in: International Conference on Structure & Oeotechnical Engineering and Construction Technology, Mansora, Egypt, 2004.

[16] M. Resende, A genetic algorithm for the resource constrained multi-project scheduling problem, in: Internet and Network Systems Research Center AT&T Labs Research, Technical Report TD-668LM4, mgcr@research.att.com, 2004.

[17] T. Cheng, C. Feng, Y. Chen, A hybrid mechanism for optimizing construction simulation models, Autom. Constr. (14) (2005) 85-98.

[18] A. Afshar, H. Fathi, Multiple resource constraint time-cost-resource optimization using genetic algorithm, in: First International Conference on Construction in Developing Countries (ICCIDC-I). Advancing and Integrating Construction Education, Research & Practice, August 4-5, Karachi, Pakistan, 2008.

[19] K. El-Rayes, D. Jun, Optimizing resource levelling in construction projects, J. Constr. Eng. Manage. 135 (11) (2009) 1172-1180.

[20] A. Maravas, J. Pantouvakis, A fuzzy repetitive scheduling method for projects with repeating activities, J. Constr. Eng. Manage. 137 (7) (2011) 561-564.

[21] G. Ozcan, Y. Zhu, V. Ceron, Time, cost, and environmental impact analysis on construction operation optimization using genetic algorithms, J. Manage. Eng. 28 (3) (2012) 265-272.

[22] H. Abdel-Khalek, S. Hafez, A. Lakany, Y. Abuel-Magd, Financing - scheduling optimization for construction projects by using genetic algorithms, in: International Conference on Innovation, Engineering Management and Technology. World Academy of Science, Engineering and Technology WASET, Paris, France, vol. 59, 2011, pp. 289-297.

[23] R. Aziz, Optimizing strategy for repetitive construction projects within multi-mode resources, Alexandria Engineering Journal, Faculty of Engineering, Alexandria University, vol. 52, 2013, pp. 51-66. <http://www.elsevier.com/locate/aej>.

[24] D. Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learning, Addison-Wesley Reading, University of Alabama, USA, 1989.