Alexandria Engineering Journal (2014) 53, 591–606
Alexandria University
Alexandria Engineering Journal
www.elsevier.com/locate/aej
www.sciencedirect.com
ORIGINAL ARTICLE
Smart optimization for mega construction projects
using artificial intelligence
Remon Fayek Aziz
a
b
a,*
, Sherif Mohamed Hafez a, Yasser Ragab Abuel-Magd
b
Structural Engineering Department, Faculty of Engineering, Alexandria University, Egypt
Mathematics and Physics Engineering Department, Faculty of Engineering, Alexandria University, Egypt
Received 26 October 2013; revised 5 May 2014; accepted 14 May 2014
Available online 16 June 2014
KEYWORDS
Construction management;
Mega construction projects;
Multi-objective tradeoff;
Genetic algorithms
Abstract During practicing the planning process, scheduling and controlling mega construction
projects, there are varieties of procedures and methods that should be taken into consideration during project life cycle. Accordingly, it is important to consider the different modes that may be
selected for an activity in the scheduling, for controlling mega construction projects. Critical Path
Method ‘‘CPM’’ is useful for scheduling, controlling and improving mega construction projects;
hence this paper presents the development of a model which incorporates the basic concepts of Critical Path Method ‘‘CPM’’ with a multi-objective Genetic Algorithm ‘‘GA’’ simultaneously. The
main objective of this model is to suggest a practical support for compound horizontally and vertically mega construction planners who need to optimize resource utilization in order to minimize
project duration and its cost with maximizing its quality simultaneously. Proposed software is
named Smart Critical Path Method System, ‘‘SCPMS’’ which uses features of Critical Path
Method ‘‘CPM’’ and multi-objective Genetic Algorithms ‘‘GAs’’. The main inputs and outputs
of the proposed software are demonstrated and outlined; also the main subroutines and the inference wizards are detailed. The application of this research is focused on planning and scheduling
mega construction projects that hold a good promise to: (1) Increase resource use efficiency; (2)
Reduce construction total time; (3) Minimize construction total cost; and (4) Measure and improve
construction total quality. In addition, the verification and validation of the proposed software are
tested using a real case study.
ª 2014 Production and hosting by Elsevier B.V. on behalf of Faculty of Engineering, Alexandria
University.
1. Introduction
* Corresponding author. Tel.: +20 12 2381 3937.
E-mail address: remon.aziz@alexu.edu.eg (R.F. Aziz).
Peer review under responsibility of Faculty of Engineering, Alexandria
University.
Production and hosting by Elsevier
Techniques that are used for project scheduling will vary
depending on project’s duration, size, complexity, personnel,
and owner requirements. Ashley [1] divided the construction
projects into two main groups. The first one is the projects with
non-repetitive activities. The second group has multiple
numbers of stages. Projects with non-repetitive activities are
divided into two main groups. The first one is the bar chart
1110-0168 ª 2014 Production and hosting by Elsevier B.V. on behalf of Faculty of Engineering, Alexandria University.
http://dx.doi.org/10.1016/j.aej.2014.05.003
592
that is one of the oldest methods used in construction planning
and developed by Henry L. Gantt during the World War I; the
second one is network-based methods which are two widely
known network based techniques, namely, the Critical Path
Method ‘‘CPM’’ and the program evaluation and review technique ‘‘PERT’’. Both methods were developed simultaneously
and independently during the late 1950s. Selinger [2] divided
the construction projects with repetitive activities into two categories: linear and non-linear projects. Linear projects are
composed of number of typical stages with identical activities
of the same duration that are repeated consecutively from one
unit to the next. Several techniques were developed for projects
with discrete units, such as floors, houses, and offices. The
names used have included the following: (1) Line Of Balance,
‘‘LOB’’ according to O’Brien [3]; (2) construction planning
techniques according to Peer [4]; (3) Vertical Production
Method, ‘‘VPM’’ according to O’Brien [5]; (4) time space
scheduling method according to Stradal and Cacha [6]; and
(5) time-location matrix model according to Carr [7]. Several
techniques were proposed for projects with continuous units
as highways, pipelines, tunnels, bridges, etc. The progress is
measured in terms of horizontal length. The names used have
included the following: (1) Velocity Diagrams, ‘‘VD’’ according to Harris and McCaffer [8]; and (2) Linear Scheduling
Method, ‘‘LSM’’ according to Chrzanowski and Johnston
[9]. Line-Of-Balance ‘‘LOB’’ is one production scheduling
and control technique, which tries to surpass the CPM difficulties for the mega construction scheduling. It is developed into
manufacturing environment by the US Navy, originated at the
time of World War II, according to Burke [10]. Activities that
repeat from unit to unit create a very important need for a construction schedule that facilitates the uninterrupted flow of
resources from one unit to the next. It establishes activity-stating times and determines the overall project duration. Hence,
uninterrupted resource utilization becomes an extremely
important issue, according to Hafez [11]. Hafez [12] developed
a tool for time and resource scheduling for mega construction
projects; this has been done in three stages. This model called
modified repetitive project model ‘‘MRPM’’ depends on the
integration between the principles of ‘‘LOB’’ method and Critical Path Method. Hafez [13] surveyed the different issues,
which related to schedule repetitive construction process. It
can be used in the development of a computerized scheduling
system. The time-cost tradeoff ‘‘TCTO’’ problem has been
studied since the 1960s and is considered as a particularly
difficult combinatorial problem. All methods in time-cost
tradeoff branch can be classified into the following categories:
linear, integer, or dynamic programing, other methods approximate, heuristic or decomposition approaches, and lately algorithms to reduce the computational effort. Ahuja et al. [14]
mentioned the relationships between time and cost as shown
in the following steps: (1) Linear Relationship; (2) Multi-linear
Relationship; (3) Discrete Function; and (4) Curvilinear Continuous Relationship. Hafez et al. [15] proposed a mathematical model for time-cost tradeoff based on the integration
between the principles of LOB and CPM. The output of this
model is to determine the crashed duration for each activity
which is corresponding to minimum project total cost. 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
the best solution. It was modeled with a set of solutions
R.F. Aziz et al.
(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, i.e., 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. 1. Basic outline of genetic
algorithms as follows: (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 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. Goldberg
[16].
Crossover between parent chromosomes is a common natural process and traditionally is given a rate that ranges from
0.1 to 1.0. In crossover, the exchange of parents’ information
produces an offspring, as shown in Table 1. As opposed to
crossover, mutation is a rare process that resembles a sudden
change to an offspring. This can be done by randomly selecting
Figure 1
A typical implementation of genetic algorithm.
Optimization for mega construction projects
Table 1
593
Main crossover operators.
Single point crossover
Two point crossover
Uniform crossover
Parent A: 11001010
Parent B: 01110011
Offspring A: 11001011
Offspring B: 01110010
Parent A: 11001010
Parent B: 01110011
Offspring A: 11110010
Offspring B: 01001011
Parent A: 11001010
Parent B: 01110011
Offspring A: 11101011
Offspring B: 01010010
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. A small mutation rate less than 0.1 is usually
used, EL-Beltagi et al. [17].
2. Literature review
Babu and Suresh [18] proposed a new technique to study the
tradeoff between time, cost and quality by using three interrelated linear programing models. Their approach is based on
the linear relationship between project completion time, project cost and quality measure. Khang and Myint [19] applied
the time-cost-quality tradeoff for construction project of
cement factory. El-Rayes and Kandil [20] designed modified
GA model, which transforms the traditional two-dimensional
time-cost tradeoff analysis to an advanced three-dimensional
time-cost-quality tradeoff analysis, this model was developed
as a multi-objective genetic algorithm to provide the capability
of quantifying and considering quality in construction optimization. Tareghian and Taheri [21] developed solution procedures to study the balance between time, cost and quality in
the management of a project. They developed three interrelated integer programing models. A meta-heuristic solution
procedure is proposed which is called electromagnetic scatter
search to solve the discrete time, cost and quality tradeoff
problems. It demonstrated the validity of the proposed solution procedure, and its applicability was tested on a randomly
generated large and complex problem having 19,900 activities,
Taheri and Tareghian [22]. Afshar et al. [23] developed a new
meta-heuristic multi-colony ant algorithm was developed for
the optimization of three objectives time-cost-quality as an
optimization problems. Case study was analyzed to illustrate
the capabilities of the present method for generating optimal/near optimal solutions. Rahimi and Iranmanesh [24] proposed a new Multi Objective Particle Swarm Optimization for
a discrete project time, cost and quality tradeoff problems.
Iranmanesh et al. [25] developed multi-objective for finding
the Pareto optimal front of project time, cost and quality,
whose activities belong to a ‘‘start to finish’’ activity relationship network (CPM) and they can be done in different possible
modes which are non-continuous or discrete, and each mode
has a different cost, time and quality. Abd El Razek et al.
[26] presented the development of a multi-objective optimization model in order to search optimal resource utilization plans
that minimize construction time and cost while maximizing its
quality for construction projects with repetitive activities, then
Abd El Razek et al. [27] developed multi-objective optimization software for repetitive construction projects which is
named Automatic Multi-objective Typical Construction
Resource Optimization System, ‘‘AMTCROS’’. Abd El
Khalek et al. [28] developed the utilized steps to determine
the best combination of minimum project financing. The proposed model considered financing; schedule and maximum net
area which is called Project Financing and Schedule Integration using Genetic Algorithms, ‘‘PFSIGA’’ and presented the
development of an optimization software in order to search
the optimal solution for all activities in the project within contract duration that maximize cumulative net overdraft and
minimize daily financing, and was developed in two main
tasks. In the first task, software was formulated to incorporate
and enable the optimization of financing of any large-scale
project. In the second task, the software was 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.
3. Research objectives
As a response to the construction problems previously discussed, the research seeks to confirm the following objectives
that are used for the mega construction projects: (1) development of a model which incorporates the basic concepts of Critical Path Method ‘‘CPM’’ with a multi-objective Genetic
Algorithm ‘‘GA’’ simultaneously; (2) development of proposed
software which is named Smart Critical Path Method System,
‘‘SCPMS’’ using features of genetic algorithms; (3) developments of this research in planning, scheduling and controlling
the mega construction projects that hold a strong promise to:
(a) increase resource use efficiency; (b) reduce construction time;
(c) minimize construction total cost (direct cost plus indirect
cost); and (d) measure and improve the quality of future mega
construction projects.
4. Employed techniques
The model formulated proposed the following technique: (1)
Activity On Node ‘‘AON’’ is used to simulate the main project
as shown in Fig. 2; (2) Activity On Node ‘‘AON’’ is also used to
simulate the sub-projects as shown in Fig. 3; (3) the activity (k),
(where k = 1, 2, . . . , K) that in case of repetitive networks, LOB
is used to simulate the repetitive activity schedule into sub-projects; (4) each activity (k), has a time buffer (TBk,kk), at each
stage(s), (where s = 1, 2, . . . , S) between completion time of
first activity (k) with start time of each following activity (kk)
in the sub-project network as shown in Fig. 4; (5) any two
sequential activities at sub-project may have a stage buffer
(SBk,kk), of a specific number of stages at any unit time to meet
practical and/or techno running purposes, this stage’s buffers
have to be identified by the planner for these activities; (6) a discrete relationship between duration, cost, and quality of each
activity (k) in the network of sub-projects; (7) transformation
594
R.F. Aziz et al.
Subproject1
Subproject2
Subproject3
Star
Subproject4
End
Subproject(S)
Subproject1
Subproject2
B
B
A
D
A
C
C
Subproject4
Subproject3
B
B
A
C
E
A
E
C
D
Figure 2
D
F
Sample of mega construction project.
of traditional LOB to modified CPM must be done in proposed
model; and (8) genetic algorithm tool is used to achieve the
optimum results.
5. Decision variables
For each construction activity in the project, the present model
is designed to consider all relevant decision variables that may
have an impact on project time, cost or quality. All relevant
decision variables are represented in Fig. 5 from which one
can classify the decision variables as follows: (1) Construction
material and/or methods (m), which indicate the alternatives
of different availability types of materials and/or construction
methods that can be utilized for each activity, where the total
number of these alternatives is equal to M; (2) Crew formation
(f), which represents alternatives of feasible sizes and configurations for construction crews for each activity, where the total
number of these alternatives is equal to F; (3) Crew overtime
policy (p), which represents alternatives of available overtime
hours and nighttime shifts for each activity, where the total
number of these alternatives is equal to P; (4) Machinery efficiency (e), which represents alternatives of feasible site
machines and efficiency for selected machines in construction
site, where the total number of these alternatives is equal to
E; (5) Contractor class (c), which represents alternatives of
feasible site contractors and efficiency for selected contractor
in construction site, which are classified into main levels
(Excellent level – Very Good level – Good level – Intermediate
level – Low level – Poor level – Bad level – Very Bad level),
where the total number of these alternatives is equal to C;
Optimization for mega construction projects
595
Subk
FS
SS
Subkk
Subk
Subkk
FF
Subk
Subk
Subkk
SF
Subkk
Available lag values between two sequential sub-projects.
Figure 3
SS
FS
Dkn
Dkkn
Dkn
Dkkn
SF
Dkn
Figure 4
FF
Dkkn
Dkn
Dkkn
Available lag values between two sequential activities.
and (6) Owner class (o), which represents alternatives of capability of owner in project financing, where the total number of
these alternatives is equal to O.
In order to control the complexity of the optimization
model, the present model combines these five major decision
variables into single alternative named resource utilization
(n). Decision makers can create more alternatives, with named
resource utilization (n) for each activity (k) and change from
alternative to another considering permutations of alternatives
by selecting one random option of each previous five main
decision variables and grouped together in a single alternative,
first creation of resource utilization takes n = 1, and so on
with repeating the random selections considering permutations
of options of each previous five main decision variables till
reaching last creation of resource utilization takes n = N (see
Table 2).
Where (N) is the number of available resource utilization
options for each activity into the studied project as shown in
Fig. 5. The enumeration of all possible combinations of these
available resource utilization options at the activity level can
lead to a total of more project alternatives, which means large
scale of feasible construction resource utilization plans at the
project level (see Table 2).
6. Model implementation
The proposed model was implemented in three major stages:
(1) initialization that generates an initial set of (u) possible
solutions for this resource utilization problem; (2) evaluation
that calculates the time, cost, and quality of each generated
solution; and (3) generation that seeks to improve the fitness
of solutions over successive generations. See Fig. 6.
6.1. Initialization
The main objective of this stage is to initialize the optimization
procedure in the proposed model; it was implemented in the following steps: (1) Read project and GA parameters needed to initialize the search process. The project parameters include: (a)
project size; (b) activity precedence information; and (c) available resource utilization options for each activity and their
expected impact on the activity duration, cost and quality.
The required GA parameters for this initialization stage include:
(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. Number of
generations (G) and population size (U) are identified based
on selected string size in order to decrease the time and cost
and 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–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 mega projects. This initial set of possible solutions
is then evolved in the following two stages in order to generate
596
R.F. Aziz et al.
Figure 5
Utilization of resources alternative options.
a set of optimal resource utilization options for each activity in
mega project that establishes optimal tradeoffs between construction time, cost and quality.
6.2. Evaluation
repetitive activities LOB with non-repetitive activities CPM
for mega construction projects as shown in Eqs. (1)–(10);
Zn1 ¼ Min
Tnk ¼ S
The main purpose of this stage is to evaluate the time, cost, and
quality 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 the
following generations. This stage evaluates the three identified
fitness functions for each solution using the following steps: (1)
Calculate project duration (PDug) for solution (u) in generation
(g), which consists of total duration of all activities on the critical path. In this model, project duration is estimated using
newly developed algorithms for integrating the scheduling of
k¼K
X
n
Tk þ ðFSk;kk n Þm
ð1Þ
k¼1
Dnk
¼ Qtnk PRnk
ðFSk;kk n Þm TBnk;kk þ ð1 SÞ Dnk
ðFSk;kk n Þm TBnk;kk þ ð1 SÞ Dnkk
ðFSk;kk n Þm ðSBk;kk SÞ Dnk
ðFSk;kk n Þm ð1 þ SBk;kk SÞ Dnkk
TBnk;kk ¼ SSk;kk Dnk
TBnk;kk ¼ FFk;kk Dnkk
TBnk;kk ¼ SFk;kk ðDk n þ Dnkk Þ
ð2Þ
Dnk
ð3Þ
ð4Þ
ð5Þ
Dnk
ð6Þ
ð7Þ
ð8Þ
ð9Þ
ð10Þ
Optimization for mega construction projects
Table 2
597
Feasible alternatives of mega construction project.
Feasible solutions for subproject (1)
S1n
Feasible solutions for subproject (2)
S2n
. . .. . .. . .. . .. . .. . ..
S71
S61
S51
S41
S31
S21
S11
. . .. . .. . .. . .. . .. . ..
S72
S62
S52
S42
S32
S22
S12
Feasible solutions for subproject (3)
S3n
Feasible solutions for subproject (4)
S4n
. . .. . .. . .. . .. . .. . ..
S73
S63
S53
S43
S33
S23
S13
. . .. . .. . .. . .. . .. . ..
S74
S64
S54
S44
S34
S24
S14
Feasible solutions for subproject (S)
SnS
. . .. . .. . .. . .. . .. . ..
SS 7
SS6
SS 5
SS4
SS3
SS2
SS1
Feasible solutions for construction project
PN
S1n
S2n
S3n
S4n
. . .. . .. . .. . .. . .. . ..
. . .. . .. . .. . .. . .. . ..
. . .. . .. . .. . .. . .. . ..
. . .. . .. . .. . .. . .. . ..
. . .. . .. . .. . .. . .. . ..
P7
S71
S72
S73
S74
P6
S61
S62
S63
S64
P5
S51
S52
S53
S54
P4
S41
S42
S43
S44
P3
S31
S32
S33
S34
P2
S21
S22
S23
S24
P1
S11
S12
S13
S14
where Z1n = Total Project Duration in (days) using resource
utilization (n), Tnk = Total durations in (days) at all stages of
an activity (k) on the critical path at new CPM using resource
utilization (n), (FSnk,kk)m = Modified finish to start at a new
CPM between two sequential activities using resource utilization (n), S = Number of stages in the project, Dnk = Duration
in (days) at one stage of an activity (k) using resource utilization (n), Qtnk = Quantity of an activity (k) at one stage using
resource utilization (n), PRnk = Production rate of an activity
(k) at one stage using resource utilization (n), Dnkk = Duration
in (days) at one stage of a successor activity (kk) at LOB using
resource utilization (n), SBk,kk = Stage buffer between the
starts of two sequential activities (k) and (kk) at LOB,
TBnk,kk = Time buffer in (days) between two sequential activities finish (k) and start (kk) at LOB using resource utilization
(n), SSk,kk = Start to Start in (days) between two sequential
activities (k) and (kk) at LOB, FFk,kk = Finish to Finish in
(days) between two sequential activities (k) and (kk) at LOB,
SFk,kk = Start to Finish in (days) between two sequential
activities (k) and (kk) at LOB; (2) Estimate project cost (PuCg)
for solution (u) in generation (g), which consists of material,
crew and subcontractor costs as shown in Eq. (11).
(
)
k¼K
X
ðMk n þ Dnk Rn þ Bnk Þ þ ðIC Zn1 Þ
Zn2 ¼ Min S
k¼1
ð11Þ
Z2n
where
= Total Project {Direct} + {Indirect} Cost in
(EGP) using resource utilization (n), S = Number of stages
in the project, Mnk = Material cost in (EGP) at one stage of
an activity (k) using resource utilization (n), Dnk = Duration
in (days) at one stage of an activity (k) using resource utilization (n), Rn = Daily cost rate in (EGP/Day) of an activity (k)
using resource utilization (n), Bnk = Subcontractor lump sum
cost in (EGP) at one stage of an activity (k) using resource utilization (n) if found, IC = Daily indirect cost rate in (EGP/
Day) throughout project life; and (3) Measure project quality
(PuQg) for solution (u) in generation (g) as shown in Eq. (12).
(
!)
i¼I
k¼K
X
X
n
n
wtk;i Qk;i
wtk
Z3 ¼ Max
ð12Þ
k¼1
i¼1
where Z3n
= Total Project Quality in (%) using resource utilization (n), wtk = Weight of an activity (k) compared to other
activities in the project, wtk,i = Weight of quality indicator (i)
compared to other indicators in the activity (k), Qnk,i = Performance of quality indicator (i) in (%) at activity (k) using resource
utilization (n), Rwtk,i · Qnk,i = Activity quality performance per
stage in (%) at activity (k) using resource utilization (n).
6.3. Generation
The purpose of this stage 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 to that used in traditional GAs, Goldberg [16]. The
purpose of generating this child population is to introduce a
new set of solutions by rearranging and randomly changing
parts of the solutions of the 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
the 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.
At this stage the procedure is implemented in the following
steps: (1) Calculate optimal rank for each solution (u = 1–U)
in the parent population (Pg). First, this is done by ranking
solutions in the population according to their highest quality
598
R.F. Aziz et al.
Figure 6
‘‘SCPMS’’ model implementation.
and lowest cost and duration, 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 considered
optimization objectives simultaneously. Second, this step calculates the multi-objective fitness function of each solution
as shown in Eqs. (13)–(17), which represents equivalent normalized fitness of each corresponding project time-cost-quality
solution. The fitness values help the algorithm to spread the
obtained solutions over a wider optimal front and select best
range of optimal solutions;
Z ¼ w1 ðNor: PD Þ þ w2 ðNor:PC Þ þ w3 ðNor:PQ Þ
Nor: PD ¼ ðPD PD Min Þ ðPD Max PD Min Þ
ð13Þ
ð14Þ
Nor: PC ¼ ðPC PC Min Þ ðPC Max PC Min Þ
Nor:PQ ¼ ðPQ Min PQ Þ ðPQ Max PQ Min Þ
w1 þ w2 þ w3 ¼ 1:0
ð15Þ
ð16Þ
ð17Þ
where Z = Multi-Objective Optimization Fitness Function,
w1 = Weight of project duration focus, w2 = Weight of project
cost focus, w3 = Weight of project quality focus, Nor. PD =
Normalized project duration, Nor. PC = Normalized project
cost, Nor. PQ = Normalized project quality, PD = Project
duration in (Days), PC = Project cost in (EGP), PQ = Project
quality in (%), PD Min = Minimum project duration in (Days),
PD Max = Maximum project duration in (Days), PC Min =
Minimum project total cost in (EGP), PC Max = Maximum
project total cost in (EGP), PQ Min = Minimum project quality
in (%), PQ Max = Maximum project quality in (%).
This multi-objective optimization fitness function indicates
the normalized value of any studied point which has (PD in
Days, PC in EGP, PQ in%) in three dimensions domain with
dummy standard reference point that has (PD = 0 Days,
PC = 0 EGP, PQ = 100%) in the same three dimension
domain. When this normalized value decreases, that means
Optimization for mega construction projects
the studied point is optimal or near optimal solution (Minimum Project Duration with Minimum Project Cost with Maximum Project Quality in the same time); (2) create a child
population (Cg) using selection, crossover and mutation. The
optimal rank and distance values calculated in pervious step
are used in this step to generate the child population using
the GA operations of selection, mutation, and crossover.
The selection operation identifies the 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 selected individuals at a
randomly determined point and swaps the variables coded in
the 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 optima [16]. The generated child population is then analyzed using the earlier
described steps of stage 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 a
new combined population (Ng) of size 2U. This combined population acts, a good solution of the initial parent population
and good solutions are passed on to the following generation
to avoid losing them; (4) calculate optimal rank and fitness
function for each solution (s = 1–2U) of the newly created
combined population (Ng). This step performs the same operations as step 1 of this stage on the new combined population
(Ng); (5) sort the new combined population (Ng) using the sorting comparison rule. This sorting rule selects solutions with
less fitness and pushing up these solutions at the top list of
all solutions and saving them; and (6) keep top U solutions
from the combined population (Ng) to form the parent population (Pg+1) of the next generation. This parent population is
then returned to step 1 of this stage for generating a new child
population.
The second and third stages of the model repeats this iterative
execution till completes the specified number of generations.
7. Smart Critical Path Method System, ‘‘SCPMS’’
Smart Critical Path Method System ‘‘SCPMS’’ software is
designed by C++ 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 that represent the relative importance of time, cost,
and quality in the analyzed project; (2) visualizing and viewing
the generated optimal tradeoff between construction duration,
cost, and quality 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 SCPMS software, the system is implemented as shown in Fig. 6 and developed in four main modules, as shown in Fig. 7: (1) database
module to facilitate the storage and retrieval of construction
scheduling, resource utilization, and optimal tradeoff data;
(2) running module to provide a seamless integration of the
project database with processing module and smart optimization model and responsible for all calculations runs; (3) processing module to do all calculations; and (4) user interface
599
module to facilitate the input of project data and the visualization of the three-dimensional time-cost-quality tradeoff generated by the system.
7.1. Database module
The main purpose of this module is to develop a database that
is capable of storing the necessary input data (e.g., project data
details, project activities and available resource utilization
options) and the produced output data (e.g., generated optimal
tradeoff between construction duration, cost, and quality). It
was composed of nine main tables that were designed to store
the following information: (1) project data details table; (2) project holidays data table; (3) project exception data table; (4)
project activities table; (5) successors relationships between
activities table; (6) available resource utilization options for
each activity table; (7) quality importance weight for each activity table; (8) optimal activities schedules and optimal resource
utilization option for each activity table; and (9) optimal project time, cost and quality tradeoff. A schematic representation
of these database tables and the relationships between them was
shown using an entity dataflow diagram (see Fig. 8). The project data details table in this module is designed to store the
IDs and descriptions of mega construction projects, number
of sub-projects, project start date, and project weekends. It is
linked to project activities table, project holidays data table,
and project exception data table using a one to many relationships. The project holidays data table, which include project
ID, holiday ID, holiday start date, holiday end date and
repeated holidays. It is linked to the project data details table
using a many to one relationship. The project exceptions data
table, which include project ID, exception ID, exception start
date, and exception end date, that is linked to the project data
details table using a many to one relationship. The project
activities table in this module is designed to store the descriptions and IDs of all project activities, which is linked to the
activity importance weight table using a one to one relationship. The project activities table is also linked using a one to
many relationships to: (1) successors activity table that stores
the successors, lag time of each activity and stage buffers
between sequential Activities; and (2) resource utilization table
that stores the feasible resource utilization options for each
activity (see Fig. 8). The activities table is also linked using a
many to many relationships to the optimal activity schedules
table that is designed to store the identified optimal schedule
for each activity, including its: (1) optimal resource utilization
option; (2) optimal duration, cost and quality; and (3) optimal
first stage start time and last stage finish time. The optimal
activity schedules table is also linked to the optimal project
tradeoff table which stores the identified set of optimal tradeoff
between project duration, cost, and quality as shown in Fig. 8.
The main purpose of relationships linking the tables in the
database module is to ensure the integrity of data stored in
the database during the input and output stages. For case
study, the relationship linking the activities table to the
resource utilization table is specified to be a one to many relationships to ensure that each entered resource utilization option
is assigned to unique activity in the project. On the other hand
the data stored in each of the aforementioned project data
details, activities data, activity importance weight, the resource
utilization and activity successors tables, need to be populated
600
R.F. Aziz et al.
Figure 7
Main modules of ‘‘SCPMS’’ system.
by manual entry using the user interface input module in
‘‘SCPMS’’ software (see Fig. 7), while the two remaining tables
of optimal activity schedules and project tradeoff are populated
by the smart optimization model after performing its genetic
algorithm computations using the user interface output module
in ‘‘SCPMS’’ software, as shown in Fig. 7. The present database module is developed using the C++ programing code
which is called Derby database management system to facilitate
its integration with the remaining modules of ‘‘SCPMS’’ software using running and module processing module.
7.2. Running module
Running can be classified as a programing code especially
C++ coding system and its applications that were designed
to allow, communicate and exchange different data from available modules. It was developed in ‘‘SCPMS’’ software to
enable the integration of database module, user interface module, processing module and smart optimization model. To
accomplish this, the running module was designed by C++
programing code as follows: (1) the C++ programing code
driver; and (2) the Derby data base driver. First, the C++
programing code driver is utilized to perform two main steps:
(1) export scheduling data from the project, activity, successors, and resource utilization tables in the database module
to processing module; and (2) import the generated results
from smart optimization model to the optimal activity schedules and optimal project tradeoff tables in the database module. Second, the derby driver is used in ‘‘SCPMS’’ software
to perform two main steps: (1) export the existing project
scheduling data from the ‘‘SCPMS’’ software input interface
module to the activities and successors relationship table in
the database module; (2) import the selected optimal scheduled
data obtained by smart optimization model from the database
module to ‘‘SCPMS’’ software output interface module to
facilitate its visualization and storage. The main data were
transferred using the two drivers in running module in
‘‘SCPMS’’ software by user interface modules.
7.3. Processing module
Processing module can be classified as a programing code
especially C++ coding system and its applications, that are
designed to run all calculations into studied project by
integration of the running module and the smart optimization
model. To accomplish this, the processing module is designed
Optimization for mega construction projects
601
Figure 8
‘‘SCPMS’’ dataflow diagram.
Figure 9
Case study network.
to utilize the C++ programing code driver as follows: (1) calculate the scheduled data exported by running module from the
project, activity, successors, and resource utilization tables in
the database module to processing module; and (2) import the
scheduled data of project, activity, successors, and resource utilization tables to smart optimization model. The main data
transferred using the C++ programing code driver in process-
ing module are scheduled data in a database module in
‘‘SCPMS’’ software by user interface module.
7.4. User interface module
The user interface module was implemented by ‘‘SCPMS’’ software to facilitate the input construction planning data and the
602
Table 3
Available resource utilization options.
Total
duration
(days)
Total cost
($)
Activity
Quality indicator i = 1
weight/
Weight/activity (wk,i) Performance/
project (wtk)
option (Qnk,i%)
Quality indicator i = 2
Quality Indicator i = 3
Weight/activity (wk,i) Performance/
option (Qnk,i%)
Weight/activity (wk,i) Performance/
option (Qnk,i%)
1
14
15
16
21
24
15
18
20
23
25
15
22
33
12
16
20
22
24
28
30
14
18
24
9
15
18
14
15
16
21
24
15
18
20
23
25
15
22
33
12
16
20
2400
2150
1900
1500
1200
3000
2400
1800
1500
1000
4500
4000
3200
45,000
35,000
30,000
20,000
17,500
15,000
10,000
40,000
32,000
18,000
30,000
24,000
22,000
220
215
200
208
120
300
240
180
150
100
450
400
320
450
350
300
0.03
0.50
0.30
0.20
0.05
0.40
0.08
0.70
0.11
0.50
0.10
0.60
0.11
0.50
0.10
0.30
0.01
1.00
0.01
0.50
0.01
0.60
0.02
0.70
2
3
4
5
6
7
8
9
10
11
1
2
3
4
5
1
2
3
4
5
1
2
3
1
2
3
1
2
3
4
1
2
3
1
2
3
1
2
3
4
5
1
2
3
4
5
1
2
3
1
2
3
100
90
86
75
63
98
87
81
77
60
100
80
62
99
74
59
100
93
77
61
95
76
59
97
70
61
95
83
75
68
61
100
97
81
71
63
94
79
63
96
72
61
0.40
0.15
0.35
0.20
0.25
0.30
0.00
0.50
0.40
0.30
96
89
77
72
60
94
94
92
72
66
97
82
60
95
71
63
97
89
71
64
95
74
62
99
73
62
NA
99
92
88
75
64
97
83
69
95
75
66
0.00
98
89
84
73
65
99
95
85
70
59
98
81
63
94
76
64
99
89
72
61
100
79
68
93
71
67
NA
0.00
NA
0.00
NA
0.00
NA
0.20
0.15
0.15
0.20
0.25
0.40
Total
quality (%)
98.4
89.5
82.9
73.7
62.5
96.6
91.4
86.2
73.6
62.2
99.3
80.5
61.9
96.9
73.3
61.2
99.2
91.4
74.8
61.6
96.3
76.3
62.0
96.0
71.3
63.7
95.0
83.0
75.0
68.0
61.0
99.5
94.5
84.5
73.0
63.5
95.2
80.6
65.4
95.7
72.9
62.5
R.F. Aziz et al.
Code Resource
options
Available resource utilization options.
Total
duration
(days)
Total cost
($)
Quality indicator i = 1
Activity
weight/
Weight/activity (wk,i) Performance/
project (wtk)
option (Qnk,i%)
Quality indicator i = 2
Quality Indicator i = 3
Weight/activity (wk,i) Performance/
option (Qnk,i%)
Weight/activity (wk,i) Performance/
option (Qnk,i%)
12
22
24
28
30
14
18
24
9
15
18
16
20
22
24
28
30
14
18
24
9
15
18
2000
1750
1500
1000
4000
3200
1800
3000
2400
2200
3500
3000
2000
1750
1500
1000
4000
3200
1800
3000
2400
2200
0.03
0.50
0.35
0.15
0.07
0.40
0.06
0.80
0.07
0.03
0.70
0.30
0.06
0.70
0.05
0.30
13
14
15
16
17
18
1
2
3
4
1
2
3
1
2
3
1
1
2
3
4
5
1
2
3
1
2
3
99
89
70
62
99
73
60
100
79
63
100
97
89
81
72
67
98
73
62
98
75
63
0.40
0.10
0.30
0.30
0.20
0.45
98
85
71
61
96
71
62
95
82
67
98
96
85
79
73
60
97
75
65
99
77
66
0.20
0.10
0.00
0.40
0.10
0.25
95
87
79
63
97
76
63
98
81
66
NA
98
87
78
74
62
99
72
61
94
71
67
Total
quality (%)
98.1
87.3
71.7
61.8
97.4
72.8
61.4
99.3
79.5
63.7
99.4
97.1
87.0
79.2
73.1
62.9
97.9
73.3
62.5
97.5
74.9
65.4
Optimization for mega construction projects
Table 3
Code Resource
options
603
R.F. Aziz et al.
Run time (s)
08.485
16.703
25.331
19.265
38.444
57.695
81.529
91
66
99
74
98
90
95
PQ (%)
PC ($)
148,220
100,090
171,100
105,470
167,320
109,320
145,370
104
168
141
114
104
114
107
PD (days)
Run time (s)
09.210
18.112
NA
23.256
43.067
66.723
99.361
NA
NA
NA
NA
NA
NA
NA
PQ (%)
PC ($)
167,320
104,620
NA
106,670
167,320
104,620
144,470
PD (days)
104
124
NA
114
104
124
110
0.1
0.2
0.4
0.1
0.2
0.4
0.3
Mutation
probability
Crossover
probability
1000
1000
1000
2000
2000
2000
1000
1
2
3
4
5
6
7
Generation
size
Comparison of models.
Population
size
Output stage of proposed user interface module was designed
to facilitate viewing and visualization of the generated optimal
Table 4
7.4.2. Output stage
Solutions
Input stage was designed to facilitate input of data in ‘‘SCPMS’’
software. To accomplish this, a group of interactive GUI forms
were developed to guide the planner in entering data by four
main steps that were designed to: (1) allow adding, deleting
and editing mega construction projects by group of buttons;
(2) allow editing or inserting the data details of studied project,
which includes ID, name, location, etc.; (3) allow adding, deleting and editing project activities; (4) allow editing or inserting
the data details of the project activity, which includes ID,
description, quantity, etc.; (5) allow editing or inserting activity
resource details and utilization options; (6) allow adding, deleting and editing the relationships between project activities; (7)
allow editing or inserting the data details of two sequential activities relationship; (8) allow adding, deleting and editing of project holidays; (9) allow editing or inserting the project holidays
data details; (10) allow adding, deleting and editing of project
exceptions by using group of buttons; (11) allow editing or
inserting the data details of the project exceptions; and (12)
allow entering genetic algorithm parameters. Final step of input
stage at proposed user interface module was designed to facilitate the input of genetic algorithm parameters that are needed
to initiate smart optimization model. Main parameters of
genetic algorithm include: (1) population size; (2) generations
number; (3) crossover type (simple, double, multiple); (4) crossover probability (0.00: 1.00); (5) mutation probability (0.00:
1.00); and (6) random number used to create first population
of solutions. The smart optimization process is then invoked
by clicking the optimization button in the project details form.
After optimization process, the obtained results are then visualized and ranked at output stage of proposed module.
0.3
0.5
0.4
0.3
0.5
0.4
0.3
Proposed model
Feng C. model
7.4.1. Input stage
100
200
300
100
200
300
1000
Remarks
output of generated optimal schedules. The module was
designed to implement necessary interface functions in two main
stages: (1) an input stage that facilitates the input of project data
details, project activities, activities relations, activities importance weights, available resource utilization options, and genetic
algorithm parameters; and (2) an output stage that allows the
user to rank and visualize the optimal project scheduling solutions and optimal activity resource utilization options obtained
by smart optimization model. In each of previous two stages, the
module was designed to enable a graphical interface with construction planners by using developed Graphical User Interface
‘‘GUI’’ forms in ‘‘SCPMS’’ software. The GUI forms are used
to facilitate: (1) the initial project schedule creation; and (2)
the generated optimal schedule presentation, analysis, and control. On the other hand, developed GUI forms were implemented in ‘‘SCPMS’’ software by using C++ programing
code in order to facilitate the integration of other modules in
‘‘SCPMS’’ software. The interactions between the input and
output stages in proposed module and others remaining modules in ‘‘SCPMS’’ software were illustrated using a standard
dataflow diagram, as shown in Fig. 8. The following two sections describe the data flow between the construction planner
and the different components of ‘‘SCPMS’’ software during
the input and output stages, which are executed after the start
of program as declared in ‘‘SCPMS’’ software welcome form.
Min PD
Min PC
Max PQ
Min PD + Min PC
Min PD + Max PQ
Min PC + Max PQ
Min PD + Min PC + Max PQ
604
Optimization for mega construction projects
605
project time, cost, and quality tradeoff. To accomplish this,
output stage was executed in five main steps that were designed
to: (1) rank the generated optimal solutions by using a group
of weights which specify the relative importance of time, cost,
and quality to decision makers, and allow scrolling through
ranked optimal solutions; (2) display obtained project timecost-quality tradeoff and allow scrolling them through generated solutions; (3) scheduling the selected main project solution and sub-projects; (4) scheduling related activities by
plotting bar chart view; and (5) printing data details of optimized selected mega construction project solution.
8. Case study
A project case study is analyzed in order to illustrate the use of
the present smart optimization model and demonstrate its
capabilities. The case study consists of 18 construction activities as shown in Fig. 9; each one has a number of possible
resource utilization options that can be used to construct the
activity as shown in Table 3. The case study was originally
introduced by Feng et al. [29], to illustrate construction timecost tradeoff analysis, and therefore it did not include data
on construction quality. In order to highlight the capabilities
of proposed model, the data of the original case study are
expanded to illustrate the impact of each resource utilization
option on construction quality in addition to its time and cost
as shown in Table 3. The estimated activity performance in
time, cost, and quality indicators for each resource utilization
option can be obtained by performing a statistical analysis of
its historical performance in previous projects, assuming that
these performance levels can be used to predict their future
performance. This simple case study had an average of 3.4
resource utilization options to construct each of the 18 activities as shown in Fig. 9 and Table 3, which produces about 3
billion (i.e. 3.418) possible combinations for delivering the
entire project. Each of these possible combinations leads to a
unique impact on project performance toward time, cost,
and quality, and the main challenge here is to search this large
search space to find solutions that establish an optimal and
delicate balance between construction time, cost and quality.
The proposed optimization model was used to search this
large space of possible solutions using the developed smart
Figure 10
optimization model. The model was able to significantly reduce
this large space by precluding dominated solutions in the successive generations of the evolutionary algorithm, using the
Pareto optimality principles shown in Table 3. This led to the
selection of 305 Pareto optimal solutions for this application
case study. Each of these solutions identifies an optimal
resource utilization option for each of the 18 construction activities, and accordingly it provides a unique and optimal tradeoff
between project time, cost and quality. A sample of these solutions and their impact on project performance toward time,
cost, and quality is shown in Table 4. The entire set of identified
Pareto optimal solutions are represented graphically using a
fitted 3-dimensional surface as shown in Fig. 10.
The comparison showed that the efficiency of proposed
model was higher than Feng et al. [29]. Furthermore, the comparison illustrated the effectiveness of taking short run time
using the same processor, compared to the run time of the
Feng et al. [29] model that has a fluctuating efficiency. This
demonstrates that the present model is capable of robustly
solving the time-cost tradeoff problem, while providing the
added capability of considering and quantifying quality and
visualizing tradeoff between project time, cost and quality
for the analyzed case study (see Table 4).
9. Conclusion
This paper presents the development of smart optimization
model in order to support the balance between time, cost
and quality simultaneously for mega construction projects.
The model was designed to search for the optimal resource utilization plans that minimize construction time and cost while
maximizing its quality, and also to make development in three
main tasks. First task, the model is formulated to incorporate
all major decision variables and to enable the optimization of
the three major objectives in this resource utilization problem.
Second task, the model is formulated to enable quantifying
construction quality in the optimization process, and then
the model is implemented as an advanced multi-objective evolutionary algorithm in third task. Smart Critical Path Method
System, ‘‘SCPMS’’ was developed in four main tasks that led
to the development of: (1) database module to store the project
data details, project activities details, activities relations,
Smart optimization surface.
606
activities resource utilization options and genetic algorithm
parameters; (2) running module to provide calculations with
a seamless integration of database module with user interface
module, processing module and the smart optimization model;
(3) processing module was designed to perform all calculations
and was developed to enable the integration of the database
module with smart optimization model; and (4) user interface
module to facilitate the input of project data and genetic algorithm parameters, as well as the visualization and ranking of
the obtained optimal solutions. An application case study
was analyzed to illustrate the use of proposed model and demonstrate its capabilities in considering quality in the optimization process and in developing optimal tradeoff between
construction time, cost and quality. These new proposed models should prove usefulness to decision makers, especially those
who are involved in new types of contracts requiring high quality performance in mega construction projects.
References
[1] D.B. Ashley, Simulation of repetitive-unit construction, J.
Constr. Div. ASCE 106 (2) (1980) 185–194.
[2] S. Selinger, Construction planning for linear projects, J. Constr.
Eng. Manage. ASCE 106 (2) (1980) 195–205.
[3] J.J. O’Brien, Line of Balance, Scheduling Handbook, McGrawHill Book Co., Inc., New York, NY, 1969, pp. 246–255.
[4] S. Peer, Network analysis and construction planning, J. Constr.
Div. ASCE 100 (3) (1974) 203–210.
[5] J.J. O’Brien, VPM scheduling for high-rise buildings, J. Constr.
Div. ASCE 101 (4) (1975) 895–905.
[6] O. Stradal, J. Cacha, Time space scheduling method, J. Constr.
Div. ASCE 108 (3) (1982) 445–457.
[7] R.I. Carr, Cost, schedule, and time variance and integration, J.
Constr. Eng. Manage. ASCE 119 (2) (1993) 245–265.
[8] F.C. Harris, R. McCaffer, Modern Construction Management,
first ed., Crosby Lockwood Staples, London, U.K., 1977.
[9] E.N. Chrzanowski, D.W. Johnston, Application of linear
scheduling, J. Constr. Div. ASCE 112 (4) (1986) 476–491.
[10] R. Burke, Project Management: Planning and Control, second
ed., Wiley, West Sussex, UK, 1996.
[11] S.M. Hafez, Practical limitations of line of balance in scheduling
repetitive construction units, Alex. Eng. J. 43 (5) (2004) C653–
C661.
[12] S.M. Hafez, Resource Allocation and Smoothening for
Repetitive Projects, M.Sc. Thesis, Structural Eng. Dept., Alex.
Univ., Alex., Egypt, 1997a.
[13] S.M. Hafez, Developing classical schedule technology, Alex.
Eng. J. 44 (2) (2005) C267–C277.
[14] H.N. Ahuja, S.P. Dozii, S.M. AbouRizk, Project Management
Techniques in Planning and Controlling Construction Projects,
second ed., John Wiley and Sons, New York, USA, 1994.
[15] S.M. Hafez, I.E. Korish, M.H. Elwany, M.A. Barakat, Time
cost tradeoff in repetitive projects, Alex. Eng. J. 36 (1) (1997)
C39–C47.
R.F. Aziz et al.
[16] D.E. Goldberg, Genetic Algorithm in Search Optimization and
Machine Learning, Addison-Wesley Reading, University of
Alabama, USA, 1989.
[17] E. EL-Beltagi, T. Hegazy, D. Grierson, Comparison between
five evolutionary-based optimization algorithms, Adv. Eng.
Inform. 19 (2005) 43–53.
[18] G. Babu, N. Suresh, Project management with time, cost, and
quality considerations, Euro. J. Oper. Res. 88 (1996) 320–327.
[19] D.B. Khang, Y.M. Myint, Time, cost and quality tradeoff in
project management: a case study, Int. J. Project Manage. 17 (4)
(1999) 249–256.
[20] K. El-Rayes, A. Kandil, Time-cost-quality tradeoff analysis for
highway construction, J. Comput. Civ. Eng. ASCE 131 (4)
(2005) 477–486.
[21] H.R. Tareghian, S.H. Taheri, On the discrete time, cost, and
quality tradeoff problem, Appl. Math. Comput. 181 (2006)
1305–1312.
[22] S.H. Taheri, H.R. Tareghian, A solution procedure for the
discrete time, cost and quality trade off problem using
electromagnetic scatter search, Appl. Math. Comput. 182
(2007) 305–312.
[23] a. Afshar, A. Kavek, O. Shoghli, Multi-objective optimization
of time-cost-quality using multi-colony ant algorithm, Asian J.
Civil Eng. (Build. Hous.) 8 (2) (2007) 113–124.
[24] M. Rahimi, H. Iranmanesh, Multi objective particle swarm
optimization for time, cost and quality tradeoff problem, World
Appl. Sci. J. 4 (2) (2008) 270–276.
[25] H. Iranmanesh, M. Skandari, M. Allahverdilloo, Finding pareto
optimal front for the multi-mode time, cost quality tradeoff in
project scheduling, Proc. World Acad. Sci. Eng. Technol. 30
(2008) 1307–6884.
[26] R. Abdel-Razek, A. Diab, S. Hafez, R. Aziz, Simplified genetic
algorithm for solving typical-repetitive construction projects
with multi-mode of resources, in: International Conference on
Innovation, Management and Technology, ‘‘ICIMT 2010’’,
January 29th–31th, 2010, Pro. 61, No. 20, Cape Town, South
Africa, 2010, pp. 140–148.
[27] R. Abdel-Razek, A. Diab, S. Hafez, R. Aziz, Time-cost-quality
tradeoff software by using simplified genetic algorithm for
typical-repetitive construction projects, in: International
Conference on Innovation, Management and Technology,
‘‘ICIMT 2010’’, January 29th–31th, 2010, Cape Town, South
Africa, Pro. 61, No. 21, 2010, pp. 149–158.
[28] H. Abdel-Khalek, S. Hafez, A. El-Lakany, Y. Abuel-Magd,
Financing – scheduling optimization for construction projects
by using genetic algorithms, in: International Conference on
Innovation, Engineering Management and Technology,
‘‘ICIEMT 2011’’, November 14th–16th, 2011, Paris, France,
Pro. 59, No. 36, 2011, pp. 289–297.
[29] C. Feng, L. Liu, S.A. Burns, Using genetic algorithms to solve
construction time-cost tradeoff problems, J. Comput. Civ. Eng.
ASCE 11 (3) (1997) 184–189.