CoDIT'13
Non-dominated Sorting Genetic Algorithm-II to solve Bi-objective Multi-Mode Resource-Constrained Project Scheduling Problem Najeh Damak
Bassem Jarboui
Taicir Loukil
Faculty of Economic Sciences and Management Airport Road Km 4, Sfax, Tunisia Email:
[email protected]
Faculty of Economic Sciences and Management Email: bassem
[email protected]
Faculty of Economic Sciences and Management Email:
[email protected]
Abstract—In general, the multi-mode resourceconstrained project scheduling problem (MRCPSP) is considered as mono-objective problem which aims at finishing the project as soon as possible under resource constraints. Nevertheless, the MRCPSP is multi-objective by nature and the omission of this aspect in its resolution may biases the reality; so we think extend the study of this problem to the biobjective case. In our knowledge, we are the first to deal with the minimization of both makespan and non-renewable resource cost. The resolution of this Bi-objective MRCPSP (BMRCPSP) gives more alternatives to the decision maker. In this work, we adapt the Non-dominated Sorting Genetic Algorithm-II technique (NSGA-II) to the BMRCPSP. Results obtained based on expensive experimentations, prove that the NSGA-II algorithm succeeds in solving a bi-objective combinatorial problem.
I. I NTRODUCTION The Multi-mode Resource-Constrained Project Scheduling Problem (MRCPSP) consists in scheduling a definite number of tasks which can be executed with different modes. Each mode represents a combination of time and resources. Add to this, the sequence of these tasks must satisfy some precedence constraints and some renewable and non-renewable resource constraints in order to reach one or several objectives already defined by the decision maker. In fact, in practice, we must simultaneously satisfy several optimization criteria. These criteria are most of the time antagonist such as makespan minimization, resource cost minimization, net present value maximization, robustness maximization, etc. Thus, accounting for only one objective may limit the choice of the manager since for example, for the projects of state control the achievement represents a primordial factor as it is already mentioned in
978-1-4673-5549-0/13/$31.00 ©2013 IEEE
the specification and a minimum cost enables the manager to win the invitation to tender. For these reasons, we focus in this work on the Bi-objective Multi-mode Resource-Constrained Project Scheduling Problem (BMRCPSP) which aims at minimizing both makespan and non-renewable resource cost. Many solution procedures, which can be exact or heuristic, have been proposed to deal with the monoobjective MRCPSP, but to the best of our knowledge and according to the literature, the multi-objective MRCPSP has not been yet treated. Indeed, from 1993, several exact methods compete to well solve the MRCPSP such as the exact algorithm proposed by Sprecher et al. [1] in 1997, but Hartmann & Drexl [3] proved that the Branch & Bound procedure of Sprecher & Drexl [4] is the best algorithm that solves exactly the MRCPSP until 1998. Drexl & Grnewald [2], Slowinski et al. [5] as well as Kolisch & Drexl [6] developed different heuristics for the same problem. From 1999 on, the metaheuristics began to treat the problem with the genetic algorithm of Ozdamar [7] , the simulated annealing of Bouleimen & Lecocq [8] , the hybrid genetic algorithm of Lova et al. [9] and the particle swarm optimization of Zhang et al. [10] and more recently, Jarboui et al. [11] conceived a combinatorial particle swarm optimization algorithm to solve this stimulating problem. In 2009, Damak et al. [12] adapted the differential evolution (DE) algorithm to solve the mono-objective MRCPSP that minimizes the makespan. As the NSGA-II algorithm [15], [16] is considered, besides the Strength Pareto Evolutionary Algorithm2 (SPEA2) [20], the most prominent multi-objective evolutionary algorithm and it is currently used in most multi-objective evolutionary algorithm comparisons
842
CoDIT'13 [13], we take advantage of its high competence in the multi-objective optimization field and its efficiency and strength in dealing with the majority of the multi-objective problems. The BMRCPSP is described in section 2. Section 3 gives the outline of the the NSGA-II algorithm. In section 4, we present the resolution of the BMRCPSP with NSGA-II. The obtained results are detailed and analyzed in section 5. Finally, section 6 concludes this work. II. T HE B I -O BJECTIVE M ULTI - MODE R ESOURCE -C ONSTRAINED P ROJECT S CHEDULING P ROBLEM : BMRCPSP The classical resource-constrained project scheduling problem is clearly a multi-objective problem since the decision maker usually aims to achieve his project as soon as possible, with the minimum costs. For projects using expensive and perishable inputs, the time represents a vital factor but high expenditure also constitutes a burden. For this reason, researchers usually, fix a deadline for the project and try to minimize the amount of required resources or vice versa. Despite the high quality solutions provided by the well known approaches ( [1], [7], [8], [11]), they do not enable the manager to choose the most suitable combination of time and resource for him. Habitually, non-renewable resources are considered as constraints in the optimization problem but in order to provide more alternatives to the decision maker to make the best choice, we take the challenge to give him different concrete values of the non-renewable resource cost for each completion time. Then, instead of limiting the availability of this kind of resources by an upper threshold, we integrated it in the decision function which may allow better decisions in terms of makespan and resource cost minimization. To have a clear understanding of our problem formulation, we describe the MRCPSP as follows. A project consists in J activities. A directed acyclic graph G defines the precedence relations between these activities. Each activity must start after the achievement of all its predecessors. Thus, an activity has always a higher level, in the graph G than all its predecessors. Each activity j has to be executed in one of Mj modes. Once the activity started, it cannot be interrupted and the current mode of execution cannot be changed. So each activity must be completed in mode m = 1 . . . Mj without pre-emption. The processing time of activity j executed in mode m is djm . We assume that there are R renewable and non-renewable resources. The availability of renewable resource k, k = 1 . . . K is Rk units and the availability of non-renewable resource l, l = 1 . . . N is Nl units. To be processed, an activity j executed in mode m requires rjmk units of renewable resource k, and consumes njml units of non-renewable resource l. We assume that all activities and resources
978-1-4673-5549-0/13/$31.00 ©2013 IEEE
are available at the beginning of the process. The objective of the BMRCPSP is to find an assignment of modes to activities as well as precedence and renewable resource-feasible starting times for all activities, such that the makespan and the total nonrenewable resource cost of the project are minimized. III. T HE N ON - DOMINATED S ORTING G ENETIC A LGORITHM -II (NSGA-II) TO SOLVE THE BI - OBJECTIVE MRCPSP Deb et al. [15], [16], proposed an improved version of the Non-dominated Sorting Genetic Algorithm-I (NSGA-I) which is the NSGA-II. It is worth to note that a vector dominates another if they are equal in all objectives and the first is strictely better in at least one objective. The NSGA-II procedure starts by building a population of individuals. Next, it ranks and sorts each individual according to a dominance rule. Then, it applies the evolutionary operators namely the crossover and the mutation in order to found a new population of offsprings. Once two equal sized-populations are created, we combine parents and descendants in order to share the half of the new combined population into Pareto
Fig. 1.
NSGA-II for bi-objective problem.
fronts. In order to ensure the diversity of the front, the NSGA-II adds a crowding distance to each individual. This guarantees the diversity of the population and improves the exploration of the fitness landscape. Fig. 1 describes, in an explicit way, the NSGA-II scheme to solve a bi-objective problem.
843
CoDIT'13 Since, until now, no research has dealt with the resolution of a resource-constrained project scheduling problem with makespan and resource cost minimization as objectives, we suggest developing an appropriate NSGA-II algorithm to evaluate its performance in solving a combinatorial problem and more precisely the BMRCPSP. A. Solution representation and initial population The experiments revealed that the NSGA-II algorithm works better with task vectors than position vectors (Fig. 2). In fact, each element in the vector denotes the rank of the task in the related position (i.e. task 3 must be in the second position and task 2 in the fourth one). The initial population is then generated at random while satisfying the precedence constraints. Position Sequences of tasks/C10
1 2 3 4 5 1 3 5 2 4
6 6
Mode of tasks/ C10
1
1
Fig. 2.
2
2
1
2
Solution representation for NSGA-II
B. Simple point crossover The classical crossover operation consists in choosing, at random, two parent individuals: a “Father” F and a “Mother” M . Then, we randomly select an index j ∗ where we cut both vectors. This procedure will be adopted to assign the different modes to the tasks as illustrated in Fig. 3. Thus, the first partial vector of the child is derived from the “Father” (from j = 1 to j = j ∗ ) whereas the second part is inherited from the “Mother” (from j = j ∗ + 1 to j = J). However, this procedure doesn’t fit the problem of
Fig. 3.
“Mother” vector. In order to illustrate the production of the child from the parent individuals, we use the same example of assigning two modes to six tasks to be scheduled. Fig. 3 illustrates the way of producing a mode assignment vector and a task scheduling one from two parent vectors. The crossover exploits then more solutions to be evaluated which seems to be very fruitful for the algorithm’s convergence. C. Mutation The procedure of mutation consists in perturbing an individual in order to create another which is similar to the original. Using the same illustrative example, Fig. 4 shows, once again, the difference between the mutation of assignment vectors and sequence vectors. Indeed, we just change the value of an element in the mode assignment vector regardless to any condition (1 becomes 2 and vice versa). This is not applicable to the second vector because inversing two tasks may lead to a non feasible sequence. Consequently, we apply the swap procedure in order to ensure the feasibility of the perturbed individual. We shall note that in the swap procedure, a move requires two tasks jk and jp from the sequence. Only feasible moves are considered. More precisely, activity jk can be swapped with activity jp if it exists between the latest predecessor and the earliest successor of activity jk . This condition ensures that the new list is precedence feasible. Obviously, considering only lists which are compatible with precedence constraints reduces the computational burden, the activities are simply scheduled according to the ordering that is specified by the corresponding list. In this way, mutation helps the algorithm exploring more solutions so that the most promising regions of the search space can be located.
Simple point crossover. Fig. 4.
scheduling since the condition of feasibility must hold in the new created individual. Remember that an activity is precedence feasible if all its predecessors appear before it. In other words, if the precedence list of an activity j placed in position i is called Pji , then Pji ⊆ {j1, . . . , ji − 1} for j = 1, . . . , J and i = 1, . . . , J. This condition induces the production of the new descendant from the first part of the “Father” (from j = 1 to j = j ∗ ) but the rest of the child vector is filled with the remaining tasks in the same order as in the
978-1-4673-5549-0/13/$31.00 ©2013 IEEE
Mutation of both sequence of tasks and their modes.
IV. I MPLEMENTATION
AND EXPERIMENTAL RESULTS
The experiments have been performed on a Dell personal computer with 2.66 GHz and 256 Mo RAM. The NSGA-II is compiled in with the Microsoft Visual C++ 6.0 compiler and tested under Windows XP professional. We ran program on standard test instances developed by Kolisch et al. [17], by means of the project generator ProGen. These problems as well as their best
844
CoDIT'13 found solutions are available in the project scheduling problem library PSPLIB [18]. In our study, we used the MRCPSP instances sets; they contain instances with 10, 12, 14, 16, 18 and 20 non dummy activities, named respectively J10, J12, J14, J16, J18, and J20. Each set is composed of 640 instances but there are only 536 feasible instances for J10, 547 for J12, 551 for J14, 550 for J16, 552 for J18, and 554 for J20. We do not worry about the optimal solutions found by exact methods, which are provided by the same paper of Kolisch & Sprecher [18], because our algorithm is developed for a bi-objective case so, we will obtain compromise solutions.
Fig. 6.
Pareto front for an instance with 12 tasks
Fig. 7.
Pareto front for an instance with 14 tasks
Fig. 8.
Pareto front for an instance with 16 tasks
Fig. 9.
Pareto front for an instance with 18tasks
A. Parameter setting Since we have applied the NSGA-II algorithm twice, firstly for mode assignment and secondly for task scheduling, we have then fixed different mutation and crossover probabilities. We fixed the crossover probability Pcs at 100% and s the mutation probability Pm at 1% for the task of scheduling. Whereas the crossover probability Pcm is m at 100% fixed at 100% and the mutation probability Pm for the task of assigning modes to their activities. Unlike continuous problems, the high used rates of mutation and crossover can be justified by the small number of generated solutions from the beginning. Indeed, the precedence constraints as well as renewable resource constraints reduce the feasible space. So, to make the population rich, we apply mutation and crossover to each individual. B. Experimental results of NSGA-II In order to focus on the results obtained, figures Fig. 5, 6, 7, 8, 9 and 10 represent the Pareto fronts obtained respectively for size 10, 12, 14, 16, 18 and 20 tasks. The front contains all non-dominated solutions in terms of makespan and non-renewable resource cost minimization.
V. C ONCLUSION Fig. 5.
Pareto front for an instance with 10 tasks
978-1-4673-5549-0/13/$31.00 ©2013 IEEE
We emphasized in this work the resolution of a biobjective MRCPSP which aims at minimizing both makespan and non-renewable resource cost. Since the
845
CoDIT'13 problem in question is combinatorial, bi-objective and NP-Hard, we suggested designing an NSGA-II algorithm, which proved its efficiency in the multi-objective domain and served to valid newly conceived multiobjective evolutionary algorithms. Our actual results will serve as references to future researchers dealing with the same bi-objective problem in order to evaluate their algorithms. Unfortunately, our problem has not been treated until now, so there are no precedent results that serve to evaluate how well our algorithm works.
Fig. 10.
Pareto front for an instance with 20 tasks
R EFERENCES
[12] N. Damak , B. Jarboui , P. Siarry , T. Loukil Differential evolution for solving multi-mode resource-constrained project scheduling problems, Computers and Operations Research 2009;36:2653-2659. [13] C. A.Coello Coello ,G. B. Lamont , D. A. Van Veldhuizen, Evolutionary Algorithms for Solving Multi-Objective Problems, Springer Science +Business Media, LLC, Second Edition 2007. [14] R. Storn , K. Price, Differential evolution-a simple and efficient adaptive scheme for global optimization over continuous spaces, Technical Report TR-95-012, ICSI; March 1995. [15] K. Deb, S. Agrawal, A. Pratab, T. Meyarivan, A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization: NSGA-II. In M. Schoenauer, K. Deb, G. Rudolph, X. Yao, E. Lutton, J. J. Merelo, and H.-P. Schwefel, editors, Proceedings of the Parallel Problem Solving from Nature VI Conference, 2000;pp. 849-858, Paris, France, 2000. Springer. Lecture Notes in Computer Science No. 1917. [16] K. Deb , A. Pratap, S. Agarwal, T. Meyarivan, A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II, IEEE Transactions on Evolutionary Computation 2002;6(2): 182-197. [17] R. Kolisch , A. Sprecher ,A. Drexl Characterization and generation of a general class of resource constrained project scheduling problems, Management Science 1995;(41):1693-1703. [18] Kolisch R, Sprecher A. PSPLIB - a project scheduling problem library, European Journal of Operational Research 1996;96:205-216. [19] Storn R, Price K. System design by constraint adaptation and differential evolution. IEEE Transactions on Evolutionary Computation 1999;3(1):22-34. [20] E. Zitzler , M. Laumanns and L. Thiele (2001).SPEA2: Improving the Strength Pareto Evolutionary Algorithm, In K. Giannakoglou, D. Tsahalis, J. Periaux, P. Papailou, and T. Fogarty, editors, EUROGEN 2001. Evolutionary Methods for Design, Optimization and Control with Applications to Industrial Problems, pp. 95-100, Athens, Greece.
[1] A. Sprecher, S. Hartmann,A. Drexl, An exact algorithm for project scheduling with multiple modes, OR Spektrum 1997;19:195-203. [2] A. Drexl, J. Grnewald, Nonpreemptive multi-mode resourceconstrained project scheduling, IIE Transactions 1993;25:7481. [3] S. Hartmann,A. Drexl, Project scheduling with multiple modes: a comparison of exact algorithms, Networks 1998; 32:283-97. [4] A. Sprecher, A. Drexl, Multi-mode resource-constrained project scheduling by a simple, general and powerful sequencing algorithm, European Journal of Operational Research 1998; 107(2):431-50. [5] R. Slowinski, B. Soniewicki, J. Weglarz, DSS for multiobjective project scheduling subject to multiple-category resource constraints, European Journal of Operational Research 1994;79:220-229. [6] R. Kolisch ,A. Drexl, Local search for non-preemptive multimode resource-constrained project scheduling, IIE Transactions 1997;29:987-999. [7] L. zdamar A genetic algorithm approach to a general category project scheduling problem, IEEE Transactions on Systems, Man, and Cybernetics, Part C: Applications and Reviews 1999;29:44-59. [8] K. Bouleimen , H. Lecocq, A new efficient simulated annealing algorithm for the resource constrained project scheduling problem and its multiple mode version, European Journal of Operational Research 2003;149:268-281. [9] A. Lova ,P. Tormos , M. Cervantes,F. Barber An efficient hybrid genetic algorithm for scheduling projects with resource constraints and multiple execution modes, International Journal of Production Economics 2009;117(2):302-16. [10] H. Zhang ,C. M. Tam ,H. Li Multimode Project Scheduling Based on Particle Swarm Optimization, Computer-Aided Civil and Infrastructure Engineering 2006;21:93-103. [11] B. Jarboui,N. Damak , P. Siarry, A. Rebai A combinatorial particle swarm optimization for solving multi-mode resourceconstrained project scheduling problems, Applied Mathematics and Computation 2008;195:299-308.
978-1-4673-5549-0/13/$31.00 ©2013 IEEE
846