Improved Crossover and Mutation Operators for Genetic- Algorithm Project Scheduling

Similar documents
Evolutionary Algorithms

Minimizing Makespan for Machine Scheduling and Worker Assignment Problem in Identical Parallel Machine Models Using GA

CapSel GA Genetic Algorithms.

Storage Allocation and Yard Trucks Scheduling in Container Terminals Using a Genetic Algorithm Approach

Genetic Algorithm: An Optimization Technique Concept

Introduction to Artificial Intelligence. Prof. Inkyu Moon Dept. of Robotics Engineering, DGIST

A HYBRID ALGORITHM TO MINIMIZE THE NUMBER OF TARDY JOBS IN SINGLE MACHINE SCHEDULING

DEVELOPMENT OF MULTI-OBJECTIVE SIMULATION-BASED GENETIC ALGORITHM FOR SUPPLY CHAIN CYCLIC PLANNING AND OPTIMISATION

Generational and steady state genetic algorithms for generator maintenance scheduling problems

Evolutionary Computation for Minimizing Makespan on Identical Machines with Mold Constraints

What is Evolutionary Computation? Genetic Algorithms. Components of Evolutionary Computing. The Argument. When changes occur...

Journal of Global Research in Computer Science PREMATURE CONVERGENCE AND GENETIC ALGORITHM UNDER OPERATING SYSTEM PROCESS SCHEDULING PROBLEM

initial set of random solutions called population satisfying boundary and/or system

Comparison of a Job-Shop Scheduler using Genetic Algorithms with a SLACK based Scheduler

Using Multi-chromosomes to Solve. Hans J. Pierrot and Robert Hinterding. Victoria University of Technology

2. Genetic Algorithms - An Overview

The Metaphor. Individuals living in that environment Individual s degree of adaptation to its surrounding environment

Machine Learning: Algorithms and Applications

A Genetic Algorithm on Inventory Routing Problem

A Comparison between Genetic Algorithms and Evolutionary Programming based on Cutting Stock Problem

A Study of Crossover Operators for Genetic Algorithms to Solve VRP and its Variants and New Sinusoidal Motion Crossover Operator

Global Logistics Road Planning: A Genetic Algorithm Approach

Evolutionary Computation. Lecture 1 January, 2007 Ivan Garibay

Hybrid search method for integrated scheduling problem of container-handling systems

Genetic Algorithms for Optimizations

10. Lecture Stochastic Optimization

Evolutionary Computation

Timetabling with Genetic Algorithms

EFFECT OF CROSS OVER OPERATOR IN GENETIC ALGORITHMS ON ANTICIPATORY SCHEDULING

Designing a New Particle Swarm Optimization for Make-with-Buy Inventory Model

An Effective Genetic Algorithm for Large-Scale Traveling Salesman Problems

Optimizing Dynamic Flexible Job Shop Scheduling Problem Based on Genetic Algorithm

Multi-objective Evolutionary Optimization of Cloud Service Provider Selection Problems

Evolutionary Computation. Lecture 3. Evolutionary Computation. X 2 example: crossover. x 2 example: selection

Machine Learning. Genetic Algorithms

Machine Learning. Genetic Algorithms

PARALLEL LINE AND MACHINE JOB SCHEDULING USING GENETIC ALGORITHM

Multi-Plant Multi-Product Aggregate Production Planning Using Genetic Algorithm

Keywords Genetic Algorithm (GA), Evolutionary, Representation, Binary, Floating Point, Operator

Procedia - Social and Behavioral Sciences 189 ( 2015 ) XVIII Annual International Conference of the Society of Operations Management (SOM-14)

Logistics. Final exam date. Project Presentation. Plan for this week. Evolutionary Algorithms. Crossover and Mutation

Modeling and Optimisation of Precedence-Constrained Production Sequencing and Scheduling for Multiple Production Lines Using Genetic Algorithms

Pusan National University, Busandaehak-ro, Geumjeong-gu, Busan, , Korea

Integration of Process Planning and Job Shop Scheduling Using Genetic Algorithm

EVOLUTIONARY ALGORITHMS AT CHOICE: FROM GA TO GP EVOLŪCIJAS ALGORITMI PĒC IZVĒLES: NO GA UZ GP

Optimisation and Operations Research

Artificial Evolution. FIT3094 AI, A-Life and Virtual Environments Alan Dorin

College of information technology Department of software

Novel Encoding Scheme in Genetic Algorithms for Better Fitness

Genetic Algorithms and Sensitivity Analysis in Production Planning Optimization

Genetic Algorithm: A Search of Complex Spaces

Intro. ANN & Fuzzy Systems. Lecture 36 GENETIC ALGORITHM (1)

Evolutionary Developmental System for Structural Design

CSE /CSE6602E - Soft Computing Winter Lecture 9. Genetic Algorithms & Evolution Strategies. Guest lecturer: Xiangdong An

Resource-based Optimization Model for Dynamic Project Planning and Cost Management

Part 1: Motivation, Basic Concepts, Algorithms

Intelligent Techniques Lesson 4 (Examples about Genetic Algorithm)

APPLICATION OF COMPUTER FOR ANALYZING WORLD CO2 EMISSION

Evolutionary Developmental System for Structural Design 1

Genetic Algorithm for Supply Planning Optimization under Uncertain Demand

COMPARATIVE STUDY OF SELECTION METHODS IN GENETIC ALGORITHM

The two-stage recombination operator and its application to the multiobjective 0/1 knapsack problem: a comparative study

Enhanced Order Crossover for Permutation Problems

Optimal Design of Laminated Composite Plates by Using Advanced Genetic Algorithm

Energy management using genetic algorithms

Introduction To Genetic Algorithms

CHAPTER 4 LINEAR ANTENNA ARRAY SYNTHESIS USING GENETIC ALGORITHM

[Sharma* et al., 5(6): June, 2016] ISSN: IC Value: 3.00 Impact Factor: 4.116

Comparative Study of Different Selection Techniques in Genetic Algorithm

GENETIC ALGORITHM BASED APPROACH FOR THE SELECTION OF PROJECTS IN PUBLIC R&D INSTITUTIONS

Genetic'Algorithms'::' ::'Algoritmi'Genetici'1

Processor Scheduling Algorithms in Environment of Genetics

Genetic Algorithm. Presented by Shi Yong Feb. 1, 2007 Music McGill University

Rehandling Strategies for Container Retrieval

Single machine scheduling with two agents for total completion time objectives

Keywords Genetic, pseudorandom numbers, cryptosystems, optimal solution.

TIMETABLING EXPERIMENTS USING GENETIC ALGORITHMS. Liviu Lalescu, Costin Badica

Evolutionary Algorithms

Genetic Algorithms in Matrix Representation and Its Application in Synthetic Data

A Simulation-based Multi-level Redundancy Allocation for a Multi-level System

Introduction To Genetic Algorithms

Expert Systems with Applications

GENETIC ALGORITHMS. Narra Priyanka. K.Naga Sowjanya. Vasavi College of Engineering. Ibrahimbahg,Hyderabad.

What is an Evolutionary Algorithm? Presented by: Faramarz Safi (Ph.D.) Faculty of Computer Engineering Islamic Azad University, Najafabad Branch

Improving Differential Evolution Algorithm with Activation Strategy

Introduction Evolutionary Algorithm Implementation

ESQUIVEL S.C., LEIVA H. A., GALLARD, R.H.

A Genetic Algorithm Applying Single Point Crossover and Uniform Mutation to Minimize Uncertainty in Production Cost

Simulation approaches for optimization in business and service systems

Repetitive construction processes scheduling using mixed-integer linear programming

An Evolutionary Solution to a Multi-objective Scheduling Problem

Genetic Algorithm for Variable Selection. Genetic Algorithms Step by Step. Genetic Algorithm (Holland) Flowchart of GA

An Improved Genetic Algorithm for Generation Expansion Planning

CHAPTER 5 SUPPLIER SELECTION BY LEXICOGRAPHIC METHOD USING INTEGER LINEAR PROGRAMMING

Genetic algorithms. History

From Genetics to Genetic Algorithms

A HYBRID GENETIC ALGORITHM FOR JOB SHOP SCHEUDULING

A GENETIC ALGORITHM APPROACH FOR OPTIMIZING CHEMICAL TOWERS CONSTRUCTION PROJECT SCHEDULING WITH DYNAMIC RESOURCES CONSTRAINTS

OPTIMIZATION OF A THREE-PHASE INDUCTION MACHINE USING GENETIC ALGORITHM

A Gene Based Adaptive Mutation Strategy for Genetic Algorithms

Transcription:

Improved Crossover and Mutation Operators for Genetic- Algorithm Project Scheduling M. A. Abido and A. Elazouni Abstract In Genetic Algorithms (GAs) technique, offspring chromosomes are created by merging two parent chromosomes using a crossover operator or modifying an existing chromosome using a mutation operator. However, in scheduling problems in which the genes represent activities' start times, the crossover and mutation operators may cause violation of the precedence relationships in the offspring chromosomes. This paper proposes improved crossover and mutation algorithms to directly devise feasible offspring chromosomes. The proposed algorithms employed the traditional Free Float (FF) and a newly-introduced Backward Free Float (BFF). The obtained results exhibited robustness of the proposed algorithms to reduce the computational costs, and high effectiveness to search for optimal solutions. Moreover, validation was performed by comparing the results against the exact solutions obtained by the Integer Programming (IP) technique. I. INTRODUCTION In GAs, potential solutions to a problem are represented as a population of chromosomes whereas each chromosome represents a possible solution. Each chromosome in turn is composed of a string of values each is being referred to as a gene. The chromosomes evolve through successive generations. To exploit and explore potential solutions, offspring chromosomes are created by merging two parent chromosomes using a crossover operator or modifying an existing chromosome using a mutation operator. There are many methods of crossover and mutation operators. One method of crossover operators is the one-cut-point method which randomly selects one cut-point at parent chromosomes and exchanges the genes at one side of the cut points of the two parent chromosomes to generate two offspring chromosomes. One method of mutation operators is the uniform mutation method which alters one or more genes in the chromosome within a specified range, according to a predefined mutation rate. During each generation, the chromosomes are evaluated on their performances with respect to the fitness functions (objective functions). Chromosomes of high fitness have higher survival Manuscript received November 14, 2008. This research was part of a research project No. SB070012 supported by King Fahd University of Petroleum & Minerals. M. A. Abido is with King Fahd University of Petroleum & Minerals, Dhahran, 31261 Saudi Arabia (corresponding author phone: +966-03-860-4379; fax: +966-03-860-3535; e-mail: mabido@kfupm.edu.sa). A. M. Elazouni is with King Fahd University of Petroleum & Minerals, Dhahran, 31261 Saudi Arabia (e-mail: Elazouni@kfupm..edu.sa). probabilities. After several generations, chromosomes in the new generation may be closely identical, or certain termination conditions are met. The final chromosomes hopefully represent the optimal or near-optimal solutions to a problem. The method of gene coding in a chromosome hinges upon the problem at hand [1]. The typical time/cost trade-off problem can be formulated as a numerical optimization problem in the GAs. In this particular problem, the values of the genes in a chromosome represent possible durations of the project activities. The one-cut-point crossover and uniform mutation operators can be used efficiently for the time/cost trade-off problems. Resource allocation problems represent a typical ordering problem as the main concern is to determine the activities' priority to fulfill the constrained resources. Accordingly, the genes represent activities' identifications and a chromosome represents a possible order of activities. A chromosome structure can be such that an activity in a higher order from left to right has a higher priority of getting resources than the previous activities. However, there is a possibility that character duplication and/or omission occurs after implementing the crossover and mutation operators. Likewise, the unlimited resource leveling problem can be translated into a normal numerical optimization problem using GAs technique. Resource leveling problems represent a typical scheduling problem with the objective of minimizing the fluctuation in resource usage. The genes represent activities' start times and a chromosome represents a possible project schedule. In contrast with ordering problems, scheduling problems features specific precedence relationships among genes. Accordingly, the implementation of the one-cut-point crossover and uniform mutation operators for the leveling problem may cause violation of the precedence relationships of the offspring chromosomes. This problem entails checking the output chromosomes of the crossover and mutation operators and repairing of the infeasible chromosomes. This check/repair process causes considerable computational efficiency to the GAs technique. This paper addresses the problem of generating infeasible project schedules in scheduling problems using the basic GAs technique. Definitely, the paper proposes improved algorithms to directly devise feasible crossover and uniform mutation operators. In addition, this paper demonstrates how the proposed algorithms reduce the computational costs and increase the efficiency in searching for optimal solutions. 978-1-4244-2959-2/09/$25.00 c 2009 IEEE 1865

II. LITERATURE REVIEW Many researchers focused on the problem of reproducing infeasible offspring chromosomes. Reference [2] used GAs to schedule laboratory activities with precedence, time, and resource constraints. Reference [2] solved the problem by using a schedule builder (incorporating domain-specific heuristics) to repair the infeasible chromosomes. This added a considerable amount of work outside the main GA algorithm and the efficiency of the GA search was reduced. Reference [3] proposed the concept of sorting random keys to avoid infeasible schedules. The keys could be used to represent relative priorities between choices remaining after domain constraints were satisfied. The advantage of using random numbers is that even after recombination, the numbers can be sorted to produce a feasible schedule each time. Reference [4] used the delay in starting time of each activity to represent the genes in the chromosome. References [5] and [6] proposed improved GAs system to facilitate time-cost optimization and compared its results with the results obtained by a basic GAs system. The main constraints on the chromosome is that the sum of gene values of a string is the total crashing time required to catch up with the overrun time, this sum is a fixed value. In the basic GAs system, a group of feasible solutions, which are encoded in strings, are given to the GAs system. The fitness values of solutions are evaluated by the objective function and its constraints. If a given solution satisfies the constraints, then it is a feasible solution otherwise it is labeled as an infeasible solution and given a weight of zero. The reproduction procedure considers only the solutions with nonzero values of weights for further processing. However, it was noticed that most new strings generated from crossover and mutation in the basic GAs became infeasible solutions. The improved GAs introduced an additional operation after the basic crossover to ensure that the offspring chromosomes are still feasible. This operation calculates the difference between the expected total crashing time and the total crashing time in the offspring chromosome and then distributes the difference evenly over the non-zero boxes. A similar operation is followed for the mutation process. The results indicated that the improved GAs system outperformed the basic system. Reference [7] proposed a multi-criteria computational optimal scheduling model which integrates the time/cost trade-off model, resource-limited model, and resource leveling model, using the GAs technique. To overcome the computational inefficiency due to the repair, a new crossover UX3 operator was developed to modify the union crossover UX2 which was developed earlier [8] to make it suitable to the construction scheduling problems. UX2 performs the chromosome crossover by creating two exclusive substrings from parent strings and then randomly writing the elements directly to the offspring strings. UX2 can avoid the problem of character duplication after the chromosome crossover; however, activity precedence relationships may not be maintained. Ux3 takes account of activity precedence relationships when writing characters from substrings into the offspring chromosomes. Reference [9] developed a GAs model for construction resource scheduling. They addressed the issue of the treatment of infeasible schedules introduced by the GA operations. They argued that three issues are involved in choosing a suitable chromosome representation: the choice of decision variables being coded, the mapping from activity to gene position on chromosome, and the form of coding to be used for gene values. For the first issue, this study adopted the concept of [3] where the gene values are real numbers which code for two decisions: the scheduling priority of an activity, and the percentage of current float to be utilized before the start of the activity. For the second issue they argued that there is a simple mapping where the first activity would occupy the first gene position and so on and a topological mapping which sorts activities using precedence relationships as the criteria with activities of the same topological rank are mapped to a contiguous segment of the chromosome. They observed that the topological mapping representation always outperforms the linear mapping. Regarding the third issue, there are two widely used forms of coding for gene values are the binary and floating-point representations. They argued that the use of random keys and a floating-point representation enabled solutions to be found for several difficult representation and coding issues. They commented that their use is not without its cost, since they impose an overhead during the search of schema by the GA. Reference [10] in a resource-constrained project scheduling problem with multiple execution modes for each activity, introduced a crossover which considers the activity list concept, precedence feasibility, and the mode assignment. The mutation operator is applied to each newly generated child individual. It first modifies the related activity list with a given mutation probability if the result is an activity list which fulfills the precedence assumption. Next, the mutation operator modifies the mode assignment if some position is to be modified. Reference [11] proposed two-dimensional crossover and mutation operators for scheduling problems along with a repairing mechanism to adjust infeasible chromosomes into feasible ones. Reference [12] evaluated several genetic operators including; compounded partially mapped crossover, position-based crossover, swap mutation, and local search-based mutation to develop a hybrid genetic algorithm with fuzzy logic controller which solves the resource-constrained project scheduling problem. Reference [13] developed a genetic algorithm for resource investment project scheduling problem. The chromosome is constructed from two parts; the first part is an activity sequence, and the second part is a list of available resource capacities. When crossover is used, it is done both on activity list and capacity list sections of the chromosomes. They developed one crossover operator and used two crossover operators of [14]. The three operators create precedence feasible activity lists. Reference [15] used 1866 2009 IEEE Congress on Evolutionary Computation (CEC 2009)

chromosomes with encodes activities' forward and backward floating times at the obtained schedule of the chromosome. According to this chromosome structure they developed crossover and mutation operators and two local improvement operators including empty periods removal and activities shifting. III. PROPOSED CROSSOVER AND MUTATION The algorithms for generating the initial population, and crossover and mutation operators are explained and demonstrated using the 13-activity CPM network shown in Figure 1. Fig. 2. Seven-day extension scheme of the 13-activity network. Fig. 1. CPM network of a 13-activity project A. Initial Population The seven-day extension scheme shown in Figure 2 of the 13-activity CPM network is used to illustrate the generation of the chromosomes of the initial population. The extension scheme, as explained in detail in [16], is obtained by extending the total floats of activities by seven-day extension increment. The extended total floats, referred to as adjusted total floats, are indicated with dotted lines in front of activities in Figure 2. Activities A till M of the generated chromosome in Figure 2 are denoted by the same letters but with prime. The illustrated steps of the algorithm are as follows: --First, Identify activities with no predecessors, i.e., Activities A, B, C, and D. --Second, Pick up the first activity in the list of the activities identified in First step; Activity A. --Third, Select a random start time of the activity in Second step such that the activity ends before the end of the adjusted total float, say day 3 for activity A. --Fourth, Repeat the Second and Third steps for all the activities identified in First step, say start Activity B at day 5; Activity C at day 4; and activity D at day 7. --Fifth, Identify all activities that depend exclusively on either all or some of the activities identified in First step; i.e., activities E, F, G, and H. --Sixth, Pick up the first activity in the list of the activities identified in Fifth step; Activity E. --Seventh, Select a random start for the activity in Sixth step allowing all preceding activities to finish, say day 6 is the selected start time of activity E. --Eighth, Repeat Sixth and Seventh steps to select randomly start times for all activities identified in Fifth step, say day 9 for activity F, day 6 for activity G, and day 10 for activity H. --Ninth, Repeat Fifth till Eighth steps for the activities last scheduled until all the project activities are scheduled; activities I, and J are scheduled first with activity I starts at day 9 and activity J starts at day 13; Next, activities K, L, and M are scheduled with activity K starts at day 13, activity L starts at day 12, and activity M starts at day 17. B. Proposed Crossover The algorithm of crossover operator comprises two paths; forward path and backward path. The latter utilizes the conventional Free Float (FF) while the former utilizes a new type of floats referred to herein as Backward Free Float (BFF). BFF is the number of days the start time of an 2009 IEEE Congress on Evolutionary Computation (CEC 2009) 1867

activity can be advanced without violating the finish-to-start relationships between this activity and the preceding activities. The BFF arises with the device of extension scheme when a certain activity is shifted forward leaving a gap between the start time and the finish times of the preceding activities. The algorithm is explained in the steps below using the 13-activity project and demonstrated in figure 3: Fig. 3. Proposed crossover operator. --First, Select randomly two parent chromosomes from the population. It is to be noted that parent-one chromosome is the generated chromosome shown in figure 2. --Second, Calculate the BFF of the activities. The BFF values of the starting activities (A, B, C, and D) are considered null so as not to allow these activities to move backwards. --Third, Calculate the Free Float (FF) of the activities. The FF values of the terminating activities (K, L, and M) are considered null so as not to allow these activities to move forwards. --Fourth, Select randomly the cut-point activity; it is located after the first seven genes. --Fifth, Form the chromosomes for two children by randomly selecting to implement forward path or backward path as follows: 1) Forward Path: --Step1, The first and second-child chromosomes are formed by copying the start times of the activities to the left sides of the cut points of parents one and two respectively into the left-hand parts of the child chromosomes. --Step2, The start times of the activities of the righthand parts of the first and second-child chromosomes are determined by forwardly applying the BFF values of their counterparts in parents two and one respectively to the finish times of the preceding activities in the left-hand parts of child chromosomes. --Step3, Forward path may result in durations of the offspring chromosomes that exceed the duration of the extension scheme. This happened in child one as activity M ends at day 22. These chromosomes are considered infeasible. 2) Backward Path: --Step1, The first and second-child chromosomes are formed by copying the start times of the activities to the right sides of the cut points of parents one and two respectively into the right-hand parts of the child chromosomes. --Step2, The finish times of the activities of the lefthand parts of the first and second-child chromosomes are determined by backwardly applying the FF values of their counterparts in parents two and one respectively to the start times of the following activities in the right-hand parts of the child chromosomes. The start times are determined based on the finish times. --Step3, Backward path may result in negative start time of a certain activities in the beginning on the network. In this case, the start times of all the activities of the network are increased to make this activity starts at day zero. C. Proposed Mutation: The steps of the algorithm of mutation operator is outlined below and illustrated in Figure 4: Fig. 4. Proposed mutation operator. --First, Select randomly one activity; say activity E. --Second, Determine the FF and BFF of the selected activity; for activity E, the FF is 4 days, and the BFF is one day. --Third, Shift randomly the activity forward or backward within the values of the FF or BFF respectively; the start of activity E is shifted by two days. IV. RESULTS For the purpose of evaluating the performance of the proposed crossover and mutation operators, the GAs system was utilized to construct finance-based schedules. Financebased scheduling [16] insures that; the indebtedness of the contractor never top the specified credit limit; the financing cost is minimized and consequently the profit at the end of the project is maximized. The GAs system was coded using FORTRAN and run on a desktop of 1.8 GHz processor and 512 MB ram. To evaluate the effectiveness of the proposed crossover and mutation operators, two GAs systems based on both the 1868 2009 IEEE Congress on Evolutionary Computation (CEC 2009)

conventional and proposed operators were tested on three CPM networks of repetitive activities constituting 30, 60, and 120 activities. The 30-activity network is shown in Figure 5. The values used for the financial parameters are presented in Table 1. To provide common grounds for comparison, 100 identical schedules as an initial population for both the conventional and the proposed GAs systems are generated. Then, the crossover and uniform mutation methods were employed to generate 100 offspring schedules for each generation. The performance of the conventional and proposed GAs systems is evaluated after the completion of 1000, and 100 generations for the 30, and 120-activity networks respectively. Tables 2, and 3 present the results of performance criteria for the conventional and proposed GA systems for the 30, and 120-activity networks at credit limits of 63000 and 300000 respectively. The results were obtained at mutation probability percentages that cover the range from 1% till 20% and crossover probability percentages that cover the range from 60% till 100%. The criteria used to evaluate the performance of the two GA systems include the processing time, profit, project duration, and percentage of infeasible solutions. Fig. 5. CPM network of 30-activities. TABLE II DATA OF THE 30-ACTIVITY NETWORK. Infeasible schedules often arise upon using typical crossover and mutation in chromosome reproduction. Infeasible schedules are those undergoing dependency violations and thus must be discarded. The conventional GAs system omits the infeasible schedules and continues the reproduction process till 100 feasible schedules are devised for each generation. The higher the encountered number of infeasible schedules the longer the processing time the GAs system takes to complete the generations. Contrarily, the proposed GAs system employs a feasibility-preserving mechanism that ensures the fulfillment of dependency among activities. However, a chromosome was considered infeasible in the proposed GAs system when the duration exceeds the duration of the extension scheme. Though these chromosomes yet to be valid schedules, and given the fact that the GAs system will eventually eliminate the unnecessarily-extended schedules, the proposed GAs system considers these chromosomes infeasible and consequently discards them. Tables 2, and 3 indicate that the percentage of infeasible solutions in the proposed GAs system was negligible compared to that of the conventional GAs system. TABLE III DATA OF THE 120-ACTIVITY NETWORK. TABLE I VALUES OF THE FINANCIAL PARAMETERS. Figure 6 shows that the processing time values of the 2009 IEEE Congress on Evolutionary Computation (CEC 2009) 1869

proposed GAs system is appreciably less than the values of the conventional GAs system at a mutation percentage of 10% for 30-activity networks. The processing time of the conventional GAs system increases exponentially at higher mutation percentages. In addition, Figure 6 indicates that at mutation percentages of 15%, the processing time of the conventional GAs system varies appreciably as the crossover percentage varies from 60% to 100%. This variation is very significant at a mutation percentage of 20%. The same trends of the exponential increase in processing time, and the appreciable variation at mutation percentage of 5% were observed in Figure 7 for 120-activity networks. The results indicate that the saving in processing time achieved by the proposed GAs system is approximately 97% at 100% crossover percentage and mutation percentages of 20% and 5% for the 30 and 120-activity networks respectively. However, no results were obtained by the conventional GAs system for the 120-activity networks after prolonged runtimes. The observed exponential increase in the processing time values and the appreciable variation indicate that the conventional mutation and, with lesser impact, the conventional crossover produces too many infeasible solutions at every generation which leads to a prolonged processing time to synthesize the population. Thus, the conventional mutation above 10% for the 30-activity networks and 1% for 120-activity networks cause too much disturbance for the GAs system. On the other hand, the processing time of the proposed GAs system is almost fixed with no variation regardless of the percentages of mutation and crossover for the 30, and 120-activity networks. This happened because the percentages of infeasible solutions were very negligible. This indicates clearly that the proposed crossover and mutation operators continually introduce new solutions which substantially improve the efficiency of the GAs system. These results prove that the proposed crossover and mutation operators are very effective and provide robust tools for the GAs system. For the 30 and 120-activity networks, Tables 2, and 3 indicate that, the profit values of the proposed GAs system are always higher than or at least the same as those of the conventional GAs system at all the percentages of the mutation and crossover. Figure 8 shows the profit values of two distinct groups of curves for the conventional and proposed GAs system of 120-activity networks. As mentioned above, the values of the conventional GAs system are not present for mutation percentages above 5%. Figure 8 shows that the best results of the proposed GAs system were obtained at mutation percentages that range from 1% to 5% and as the percentages increases, the profit decreases. Fig. 6. Processing time of the 30-activity networks. Fig. 7. Processing time of the 120-activity networks. Figure 8 shows that at a mutation percentage of 1%, the profit values of the proposed GAs system were slightly higher whereas at a mutation percentage of 5%, the profit values of the proposed GAs system were considerably higher for the 120-activity network. This difference in profit values between the conventional and proposed GAs system was observed though the project duration values were the same. This difference can be attributed to a better quality of the feasible schedules generated in the case of the proposed GAs system. Though it took the conventional GAs system a prolonged processing time to generate the same number of feasible offspring chromosomes at a given generation, the quality of the generated chromosomes were not as good as the quality of those generated by the proposed GAs system. The inferior quality led to the lower profit values observed of the conventional GAs system. In other words, the feasible offspring chromosomes generated by the crossover and mutation offered less potentiality to improve the profit in the case of the conventional GAs system. 1870 2009 IEEE Congress on Evolutionary Computation (CEC 2009)

Fig. 8. Profit values of the 120-activity networks. Figure 9 shows the convergence rate to the profit maximum value with increasing the number of generations of 60-activity network at a crossover probability of 60%, a mutation probability of 1% and %5, and a credit Limit of 115000. Figure 9 shows clearly that the proposed GAs system outperforms the conventional GAs system. When the maximum profit was reached after about 120 generations in the proposed GAs system, the profit value was far below in the conventional GAs system. the submission of the weekly pay requests. Due to the limited capability of the IP to model most of the income and expenditure cash flows, the remaining parameters were assigned zero values to ensure identical modeling of cash inflows and outflows in GAs system and IP. The IP models were formulated according to [17]. The model formulates an objective function that minimizes the project duration under the financial, sequence, and activities' shifting constraints. Therefore, the fitness criterion of the GAs system was changed for the validation purpose to minimize the project duration as well. A program was developed using C# to formulate the constraints of the model and allows user to save in text files. The formulated objective function and constraints are entered to the optimization software of [18] to solve the model. The GAs system was employed to determine the credit limits that cause extensions of 1 to 4 days in the project duration. Accordingly, four IP models each of 10-day extension increment were formulated at the determined credit limits and solved using Lingo. The problem of 30- activity network constituted 94 constraints with 395 decision variables. The decision variables represent the amounts of shifts in days. Table 4 presents the results which indicate that the GAs system output the same total duration of the IP in the four cases. The indebtedness of the contractor as of the end of weeks and the profit as of the end of the project are presented in Table 5. TABLE IV START TIMES AND TOTAL DURATION OF THE 30-ACTIVITY NETWORK. Fig. 9. Convergence rate of 60-activity network at crossover = 0.6, mutation = 0.01 and 0.05, and credit limit=115000. V. VALIDATION The GAs systems are always questionable regarding the proximity of the results to the optimum solutions. Thus, the proposed GAs system was compared to the results obtained by using the IP technique based on 30-activity network. Results of using the proposed GAs system were obtained at a weekly borrowing interest rate of 0.5%, and a markup percentage of 5%. The payments are issued one week after 2009 IEEE Congress on Evolutionary Computation (CEC 2009) 1871

TABLE V START TIMES AND TOTAL DURATION OF VI. CONCLUSION In scheduling problems, the issue of the treatment of infeasible schedules arises in the GAs systems when the conventional crossover and mutation operators are employed to generate offspring chromosomes. The one-cut-point crossover and uniform mutation operators may cause violation of the precedence relationships in the offspring chromosomes which represent activities' start times. This problem entails repairing or discarding the infeasible chromosomes each time these operators are performed. The process of detecting and repairing infeasible solutions causes considerable inefficiency to the basic GAs systems. This paper proposed improved crossover and mutation algorithms to directly devise feasible offspring chromosomes. The proposed algorithms employed the traditional Free Float (FF) and another newly introduced Backward Free Float (BFF). The obtained results indicated robustness of the proposed algorithms to reduce the computational costs and high effectiveness to search for optimal solutions. Moreover, validated was performed by comparing the results against the exact solutions obtained by the IP technique. [5] H. Li, and P. Love, "Using improved genetic algorithms to facilitate time-cost optimization," Journal of Construction Enginering and Management, vol. 123(3), pp. 233-237, 1997. [6] H. Li, J.-N. Cao, and P.E. Love, "Using machine tearning and GA to solve time-cost trade-off problems," Journal of Construction Enginering and Management, Vol 125(5), pp. 347-353. (1999). [7] S.-S. Leu, and C.-H. Yang, "GA-based multicriteria model for construction scheduling," Journal of Construction Enginering and Management, Vol 125(6), pp. 420-427, 1999. [8] P. W. Poon, and J. N. Carter, "Genetic algorithms crossover operators for ordering applications," Comp. Ops. Res., vol. 22(1), pp. 135-147, 1995. [9] W.-T. Chan, D. K. Chua, and G. Kannan, "Construction resource scheduling with genetic algorithms," Journal of Construction Enginering and Management, vol. 122(2), pp. 125-132, 1996. [10] S. Hartmann, "Project Scheduling with Multiple Modes: A Genetic Algorithm" Annals of Operations Research, Vol. 112, pp. 111-135, 2001. [11] M-W. Tsai, T-P. Hong, and T-K. Liu, "Two-dimensional Encoding Schema and Genetic Operators," Proceedings of the 9th joint conference on Information Sciences, JCIS 2006, article No. CIEF-177. [12] K. W. Kim, M. Gen, and G. Yamazaki, "Hybrid genetic algorithm with fuzzy logic for resource-constrained project scheduling," Applied Soft Computing, 2/3F, pp. 174-188. (2003). [13] S. Shadrokh, and F. Kianfar, "A genetic algorithm for resource investment project scheduling problem, tardiness permitted with penalty," European Journal of Operational research, 181, pp. 86-101, 2007. [14] S. Hartmann, "Acompetitive genetic algorithm for resourceconstrained project scheduling," Naval Research Logistics, vol. 45, pp. 733-750, 1998. [15] A. A. Najafi, and S. T. Niaki, "A genetic algorithm for resource investment problem with discounted cash flows," Applied Mathematics and Computation, 183, pp. 1057-1070, 2006. [16] A. Elazouni, and F. Metwally, Finance-Based Scheduling: Tool to Maximize Project Profit Using Improved Genetic Algorithms, Journal of Construction Engineering and Management, vol. 131(4), pp. 400 412, 2005. [17] A. Elazouni, and A. Gab-Allah, Finance-based scheduling of construction projects using integer programming, Journal of Construction Engineering and Management, vol. 130(1), pp. 15 24, 2004. [18] Lingo, User's Guide. Lindo Systems Inc., Chicago, Illinois, USA, 2006. ACKNOWLEDGMENT This research is a part of a research project No. SB070012 supported by King Fahd University of Petroleum & Minerals which is gratefully acknowledged by the Authors. REFERENCES [1] M. A. Abido, Multiobjective Evolutionary Algorithms for Electric Power Dispatch Problems, IEEE trans for evolutionary computations, vol.10 (3), pp. 315-329, 2006. [2] G. Syswerda, "Schedule optimization using genetic algorithms," Handbook of genetic algorithms, L. Davis, ed., Van Nostrand Reinhold, New York, N.Y., 1991. [3] J. C. Bean, "Genetics and random keys for sequencing and optimization." Tech. Rep. 92-43, Univ. of Michigan, An Arbor, Michigan, 1992. [4] K. Satyanarayana, S. Rajeev, S. Kalidindi, and V. Kalyanaraman, "Optimum resource allocation in construction projects using genetic algorithms," in Proc. 3rd International Conference on the Application of AI to Civil and Structural Engineering, Edinburgh, 1993. 1872 2009 IEEE Congress on Evolutionary Computation (CEC 2009)