Solving Multi-Mode Time-Cost-Quality Trade-off Problem in Uncertainty Condition Using a Novel Genetic Algorithm

: In this paper a Fuzzy Discrete Time-Cost-Quality Trade-off Problem (FDTCQTP), is presented. All of three main factors of a project are considered in uncertainty condition using fuzzy theory. Time, cost and quality are considered as fuzzy trapezoidal numbers and a novel Genetic Algorithm; Super Genetic Algorithm (SGA) is introduced to solve the problem. Project network paths are calculated via a new algorithm which it can be very useful for complex project networks and in order to comparing the fuzzy numbers, a new Fuzzy Number Ranking (FNR) method is introduced. The proposed algorithm is compared with classic GA by ANOVA, and the results demonstrate its efficiency. An applied example is used to more details


Introduction
According to American national standard institute, project management is: "The application of knowledge, skills, tools and techniques to project activities to meet project requirements" [1]. In project management, it is sometimes required to complete the project before the normal due time .Naturally, in such cases; the duration of performing some of the activities must be decreased. Decreasing the time leads to increasing resources consuming, and costs.
Since resources, execution methods and technology types in real world projects are represented by discrete values, for real world applications Discrete Time-Cost Trade-off Problem (DTCTP) is applied [2] The DTCTP is known as an NP-hard problem [3], and no exact solution method can be found to have the required efficiency for solving DTCTP. However, there are some approaches based on heuristic algorithms for solving DTCTP [4,5]. Quality is another important factor in executing the project which requires considerable attention. Clearly, reduction in time or changing execution methods lead to changes in quality of project execution. So a DTCTP can be generalized to a Discrete Time-Cost-Quality trade-off problem (DTCQTP).
A project consists of different parts of an activity. These activities have different execution modes in which each mode has its own time-cost-quality execution.
Babu and Suresh were the first who suggested that the quality of a completed project may be affected by project crashing [6]. El-Rayes and Kandil [7], presented a model that is designed to transform the traditional two-dimensional time-cost trade off analysis to an advanced three-dimensional time-cost-quality trade-off analysis. Iranmanesh and Skandari [9], found Pareto-optimal front of time, cost and quality of a project, whose activities could be done in different discrete modes and each mode has a different cost, time and quality. They proposed Fast PGA algorithm that was meta-heuristic and was developed based on a version of GA.
In addition to quality, uncertainty is also another important factor that should be paid attention to in executing the project. In the real world there is nothing exact and everything is uncertain. In order to considering the uncertainty in calculations, fuzzy theory is used as a popular method. Pour Modarres et al [2], used fuzzy theory to manage the uncertainty of quality, and considered the two other factors as crisp. They also used a novel genetic algorithm to solve the problem. Zhang and Xing [8], presented a fuzzy-multi objective particle swarm optimization to solve the problem, which time, cost and quality described by fuzzy numbers. SantoshMungle and LyesBenyoucef proposed a fuzzy clustering-based genetic algorithm (FCGA) approach, and provided a case study of highway construction to demonstrate the applicability of the proposed approach.
In this study, time-cost and quality of project network activities determined by some experts through fuzzy theory and linguistic variables. These quantities are presented as fuzzy trapezoidal numbers. The aim of a Fuzzy Discrete Time-Cost-Quality Trade-off Problem (FDTCQTP) is to select a set of activities for crashing and an appropriate execution method for each activity such that the cost and time of the project is minimized while the project quality is maximized. In this paper, a novel Genetic Algorithm; Super Genetic Algorithm (SGA) is introduced to solve the problem. A new algorithm is proposed to calculating the project network paths which is very useful for complex project networks, and a new method is introduced to ranking fuzzy numbers. This paper is organized as follows: In section 2, the problem definition and formulation is provided. Section 3, discusses about solution procedure. In section 4, an experimental example is provided. Finally, section 5, concludes the paper.

Problem Definition and Formulation
The overall completion time, cost and quality of a construction project are determined by the duration, cost and quality for each activity involved in the project [8]. Activities are demonstrated by arcs in the project network. In order to performing the activities, several modes are available. For example, to performing the activity i, there are several methods and different technologies (modes) which each mode has its own duration, cost and quality. Also, in some cases, resources are not sufficient or technical knowledge is inadequate. In this way, subcontracting should be implemented. Considering that subcontractors perform the activities with different times, costs and qualities, a mathematical modeling is required to achieve the optimum solution. The aim of this study is minimizing the time and cost and maximizing the quality of the project.
Notations of the problem are as follows: . .
Equation (1) maximizes the total project quality and Equations. (2), (3), minimize the total project cost and time respectively. Equation (4), guarantees that one and only one execution mode is assigned to each activity. In Equation (5) summation of activities' important weight factor should be equal to 1.

Solution Procedure
To solve the problem it is necessary to calculate the time, cost and quality of the project.
To calculating the duration of performing the project, critical path method (CPM) is used. To calculating the CPM, it is first necessary that the project network paths be identified.

Calculating the Project Network Paths
In this paper, to calculate different paths of a project network, a new algorithm is presented. if node i starts arc j The procedure of paths detecting is explained in Figure 1. Input of the algorithm is the matrix A, and an arbitrary number m that indicates the number of detected paths. After detecting the paths, fuzzy time of the existing activities in these paths are added up and the biggest fuzzy number is identified using FNR algorithm.

Fuzzy Number Ranking Method
FNR method is described using the following algorithm. The fuzzy number of A ɶ is set in [0, 1] by A µ (x) ɶ membership function ( Figure 2). The trapezoidal fuzzy number of A ɶ is shown as A a a a β = ɶ which its membership function is defined by: = are two fuzzy numbers, whose summation and multiplying is computed by: To comparing the fuzzy numbers A ɶ and B ɶ , 2 A x , 2B x are calculated for different values of Y, and at each iteration, a pre-defined superiority is attributed to the bigger number. The superiority becomes more when y getting close to 1.
2 A x , 2B x are calculated as follows: For the fuzzy number A ɶ : for the fuzzy number B ɶ : Finally the number with the higher superiority is the bigger one. (Figure 3). In case of equality these steps will repeat for 1A x , 1B x . The FNR algorithm is shown in Figure 4.

Introducing a Novel GA; Super GA
As it mentioned in part 1, FDTCQTP is known as NP-hard problem. So it is required to use a heuristic or metaheuiristic algorithm to solve it. In this paper SGA is presented which it has higher performance with respect the classic GA. It is explored using ANOVA in section (5).
In classic GA, selection probability of chromosomes represents by; Which f(i) denotes the fitness value of chromosome(i) in current generation. It can be say that this fitness value is not enough strong to be cause of a good chromosome to be selected. Also direct selection methods can be used, but some other defects still exist. In direct selection methods, there is no chance for a bad chromosome which has a great potential to become a very good chromosome using partial disturbance. So, the new fitness value, f new is introduce as follow:  Using this technique, a chromosome, with the small superiority, has a good chance to be selected. This change improved classic GA so as it can be say it is better to use SGA instead of classic GA, always.

Proposed Algorithm Implementation
In order to solve the problem using the presented algorithm, it is necessary first to define the chromosome.
Each chromosome has n genes which n is the number of project network activities. Each gene contains a random number between 1 and maximum execution modes for each activity (M ij ). For example, the following chromosome shows that activity 1 will execute with mode ith, activity 2 with mode j th and…activity n with mode k th . (Figure 5).

Calculating Fitness Function
To calculate fitness function for each chromosome three parameters of time, cost and quality should be calculated.
For each chromosome, time, cost and the quality of project should be calculated.
Where, w c , w t and w q are the planner-specified weight. They indicate the relative importance of project cost, duration and quality respectively. And w t + w c + w q =1.0. max C , miñ C , max T , miñ T , max Q and miñ Q are the maximal and minimal values of cost, duration and quality in the current population respectively. γ is a very small positive number in order to prevent dividing by zero in the fitness function.
In this paper, two -point crossover and uniform crossover of Hasançebi and Erbatur [10] with pre -specified weights are used. Also two-point mutation is used. Two random chromosomes are selected to show the operators.

Experimental Evaluation
This section evaluates the performance of SGA and the classical GA. The Weighted Relative Deviation (WRD) is used as a common performance measure to compare these algorithms that are computed by: and time and quality for a given algorithm, respectively. max Q , miñ Q , max C , miñ C , max T and miñ T are calculated among final answers of each time the program is run. The proposed algorithm, SGA and classic GA are implemented with same parameters for fifty times. Their results are analyzed via the analysis of variance (ANOVA) method. Main hypotheses, containing normality, homogeneity of variance and independence of residuals, are checked and found no bias for questioning the validity of the experiment. The means plot and least significant different (LSD) interval for the SGA and classic GA are shown in Figure 8. It demonstrates that the SGA gives very better outputs than classic GA statistically.

Conclusion
This study investigated multi-mode time-cost-quality trade-off problem in uncertainty condition. Due to the big solving space of the algorithm, a new metaheuristics algorithm, Super Genetic Algorithm (SGA), was presented. The efficiency of this algorithm with respect to classic GA was performed by ANOVA. In order to calculate critical path of project network a new method was presented. Time, cost and quality were estimated in terms of trapezoidal fuzzy numbers by experts and regarding the need for comparison of fuzzy numbers, a new method was suggested for such a comparison. The algorithm was coded in VBA and an example was provided to illustrate the capability of algorithm. Considering the SGA's efficiency, it is recommended to use it instead of classic GA for NP-Hard problems. For future researches solving a problem considering the budget, resources and time constraints and achieving a necessary quality of project in uncertainty condition is suggested.