graduate school of information, production and systems, waseda university 14. resource-constrained...

108
Graduate School of Information, Production and Systems, Waseda University 14. Resource-constrained Project Scheduling

Upload: charity-mitchell

Post on 29-Dec-2015

220 views

Category:

Documents


1 download

TRANSCRIPT

  • 14. Resource-constrained Project Scheduling

  • 14. Resource-constrained Project SchedulingResource-constrained Project Scheduling Problem (rc-PSP) 1.1 Resource-constrained Project Scheduling Problem (rc-PSP) 1.2 Serial Method 1.3 Hybrid Genetic Algorithm (hGA) 1.4 Fuzzy Logic Controller (FLC) 1.5 Overall Procedure 1.6 Other Heuristic Algorithms 1.7 Numerical Example 1.8 Conclusion2. Resource-constrained Multiple Project Scheduling Problem (rc-mPSP) 2.1 Resource-constrained Multiple Project SchedulingProblem (rc-mPSP) 2.2 Mathematical Model of rc-mPSP

  • 14. Resource-constrained Project Scheduling 2.3 Hybrid Genetic Algorithm (hGA) 2.3.1 Priority-based Encoding 2.3.2 Revised Serial Method 2.3.3 Swap Mutation (SM) 2.3.4 Local Search-based Mutation (LSM) 2.3.5 Correct Setting of Genetic Parameters 2.4 Numerical Experiments 2.5 Conclusion

    3. Resource constrained Project Scheduling Problem with Multiple Modes (rc-PSP/mM) 3.1 Resource constrained project scheduling problem with multiple modes (rc-PSP/mM) 3.2 Mathematical model for rc-PSP/mM 3.3 Adaptive genetic algorithm 3.4 Experimental result 3.5 Conclusion

  • 14. Resource-constrained Project Scheduling1. Resource-constrained Project Scheduling Problem (rc-PSP) 1.1 Resource-constrained Project Scheduling Problem (rc-PSP) 1.2 Serial Method 1.3 Hybrid Genetic Algorithm (hGA) 1.4 Fuzzy Logic Controller (FLC) 1.5 Overall Procedure 1.6 Other Heuristic Algorithms 1.7 Numerical Example 1.8 Conclusion2. Resource-constrained Multiple Project Scheduling Problem (rc-mPSP)3. Resource constrained ProjectScheduling Problem with Multiple Modes (rc-PSP/mM)

  • M. Gen & R. Cheng : Resources-constrained Project Scheduling Problem using Genetic Algorithms, Intelligent Auto & Soft Computing 1997 Brucker et al. (EJOR. 1998) Resource-constrained Project Scheduling: Notation, Classification, Model, and Methods.Ozdamar et al. (IEEE-SMC. 1999) : A Genetic Algorithm Approach to a General Category Project Scheduling Problem. Background in rc-PSP based on Genetic Algorithms1. Resource-constrained Project Scheduling Franck et al. (OR Spectrum, 2001) : Truncated Branch and Bound, Schedule- Construction, and Schedule-improvement Procedures for Resources- constrain ed Project Scheduling. Gen, Cheng & Oren (Adv. Eng. Soft. 2001) : Network Design Techniques using Adapted Genetic Algorithms. Merkle et al. (IEEE Tran. on Evol. Com. 2002): Ant Colony Optimization for Resource-constrained Project Scheduling.

  • In the rc-PSPWe propose how to solve the rc-PSP using hybrid genetic algorithm with fuzzy logic controller. Makespan of the project is to be minimized Resource and precedence constraints are obeyed Alternative schedules with minimized makespan find

    1. Resource-constrained Project Scheduling

  • Operational Process in Steel Plant Moon, C. and Lee, Y.H.: Advanced Planning and Scheduling with Precedence Constraints and Machine Selection using a Genetic algorithm, Inter. J. of Industrial Engineering, vol. 10, no. 1, pp. 21-30, 2003. 1. Resource-constrained Project Scheduling

  • min s. t. (2)

    (3)

    tj : the integer valued finish times of activity j (j=1,2,...,J) pj : the processing time of activity j. Af : the set of activities being in progress in period f : suc(i): the activities where were already scheduled and thus belong to the partial schedule. lrj : units of resource during every period of its processing time pJ. br: maximum-limited resource r only available with the constant period availability.Constraint (2) ensures that none of the precedence constraints is violated.Constraint (3) ensures that the amount of resource r used by all activities does not exceed its limited quantity in any period.1.1 Resource-constrained Project Scheduling Mathematical Model tM : the integer valued finish times of schedule (1)

  • suc(j ): set of successive activities after activity j. pj : processing time of activity j. lrj: units of resource during every period of its processing time pj . Patterson J. A comparison of exact procedures for solving the multiple constrained resource projects scheduling problem, Management Science vol.30, pp. 854-867 ,19841.1 Resource-constrained Project Scheduling Example of rc-PSPactivity data setstpj l1j l2j l3j suc(i) aij : number of activity j in resource i.

  • 1.1 Resource-constrained Project Scheduling Sample of ScheduleProcessing timeManpower, Material. Costactivity 5 2, 4, 2 2l12t2maximum-limitp2S = {(a12, a11, a13, a17, a18, a19, a14, a16, a15, a1,10, a1,11)}activity datamakespan:23

  • 1.1 Resource-constrained Project Scheduling Resource 1: sample of schedulemaximum-limitactivity datamakespan:23 Schedule:S = {(a12, a11, a13 , a17, a18 , a19, a14 , a16, a15 , a1,10, a1,11)}S = {(a12, l12: t12S-t12F), (a11, l11: t11S-t11F), (a13, l13: t13S-t13F), (a17, l17: t17S-t17F), (a18, l18: t18S-t18F), (a19, l19: t19S-t19F), (a14, l14: t14S-t14F), (a16, l16: t16S-t16F), (a15, l15: t15S-t15F), (a1,10, l1,10: t1,10S-t1,10F), (a1,11, l1,11: t1,11S-t1,11F)} = {(a12, 2: 0-5), (a11, 3: 0-3), (a13, 3: 3-9), (a17, 3: 5-9), (a18, 2: 9-14), (a19, 3: 9-13), (a14, 4: 13-15), (a16, 1: 15-18), (a15, 2: 15-18), (a1,10, 4: 18-20), (a1,11, 5: 20-23)} tijF: finish times of activity j in resource i.tijS: start times of activity j in resource i.

  • 1.1 Resource-constrained Project Scheduling Resource 2: sample of scheduleactivity dataSchedule:S = {(a22, a21, a23 , a27, a28 , a29, a24 , a16, a25 , a2,10, a2,11)}S = {(a22, l22: t22S-t22F), (a21, l21: t21S-t21F), (a23, l23: t23S-t13F), (a27, l27: t27S-t27F), (a28, l28: t28S-t28F), (a29, l29: t29S-t29F), (a24, l24: t24S-t24F), (a26, l26: t26S-t26F), (a25, l25: t25S-t25F), (a2,10, l2,10: t2,10S-t2,10F), (a2,11, l2,11: t2,11S-t2,11F)} = {(a22, 4: 0-5), (a21, 2: 0-3), (a23, 1: 3-9), (a27, 1: 5-9), (a28, 2: 9-14), (a29, 2: 9-13), (a24, 3: 13-15), (a26, 1: 15-18), (a25, 0: 15-18), (a2,10, 1: 18-20), (a2,11, 4: 20-23)}maximum-limitmakespan:23

  • 1.1 Resource-constrained Project Scheduling Resource 3: sample of scheduleactivity datamaximum-limitmakespan:23 Schedule:S = {(a32, a31, a33 , a37, a38 , a39, a34 , a36, a35 , a3,10, a3,11)}S = {(a32, l32: t32S-t32F), (a31, l31: t31S-t31F), (a33, l33: t33S-t33F), (a37, l37: t37S-t37F), (a38, l38: t38S-t38F), (a39, l39: t39S-t39F), (a34, l34: t34S-t34F), (a36, l36: t36S-t36F), (a35, l35: t35S-t35F), (a3,10, l3,10: t3,10S-t3,10F), (a3,11, l3,11: t3,11S-t3,11F)} = {(a32, 2: 0-5), (a31, 1: 0-3), (a33, 2: 3-9), (a37, 1: 5-9), (a38, 2: 9-14), (a39, 3: 9-13), (a34, 1: 13-15), (a36, 1: 15-18), (a35, 3: 15-18), (a3,10, 0: 18-20), (a3,11, 2: 20-23)}

  • 1.1 Resource-constrained Project Scheduling Sample of Scheduleactivity dataSchedule:S = {(a12, a11, a13 , a17, a18 , a19, a14 , a16, a15 , a1,10, a1,11),(a22, a21, a23 , a27, a28 , a29, a24 , a16, a25 , a2,10, a2,11), (a32, a31, a33 , a37, a38 , a39, a34 , a36, a35 , a3,10, a3,11)}S = {(a12, l12: t12S-t12F), (a11, l11: t11S-t11F), (a13, l13: t13S-t13F), (a17, l17: t17S-t17F), (a18, l18: t18S-t18F), (a19, l19: t19S-t19F), (a14, l14: t14S-t14F), (a16, l16: t16S-t16F), (a15, l15: t15S-t15F), (a1,10, l1,10: t1,10S-t1,10F), (a1,11, l1,11: t1,11S-t1,11F), (a22, l22: t22S-t22F), (a21, l21: t21S-t21F), (a23, l23: t23S-t13F), (a27, l27: t27S-t27F), (a28, l28: t28S-t28F), (a29, l29: t29S-t29F), (a24, l24: t24S-t24F), (a26, l26: t26S-t26F), (a25, l25: t25S-t25F), (a2,10, l2,10: t2,10S-t2,10F), (a2,11, l2,11: t2,11S-t2,11F), (a32, l32: t32S-t32F), (a31, l31: t31S-t31F), (a33, l33: t33S-t33F), (a37, l37: t37S-t37F), (a38, l38: t38S-t38F), (a39, l39: t39S-t39F), (a34, l34: t34S-t34F), (a36, l36: t36S-t36F), (a35, l35: t35S-t35F), (a3,10, l3,10: t3,10S-t3,10F), (a3,11, l3,11: t3,11S-t3,11F)} = {(a12, 2: 0-5), (a11, 3: 0-3), (a13, 3: 3-9), (a17, 3: 5-9), (a18, 2: 9-14), (a19, 3: 9-13), (a14, 4: 13-15), (a16, 1: 15-18), (a15, 2: 15-18), (a1,10, 4: 18-20), (a1,11, 5: 20-23), (a22, 4: 0-5), (a21, 2: 0-3), (a23, 1: 3-9), (a27, 1: 5-9), (a28, 2: 9-14), (a29, 2: 9-13), (a24, 3: 13-15), (a26, 1: 15-18), (a25, 0: 15-18), (a2,10, 1: 18-20), (a2,11, 4: 20-23), (a32, 2: 0-5), (a31, 1: 0-3), (a33, 2: 3-9), (a37, 1: 5-9), (a38, 2: 9-14), (a39, 3: 9-13), (a34, 1: 13-15), (a36, 1: 15-18), (a35, 3: 15-18), (a3,10, 0: 18-20), (a3,11, 2: 20-23)}S = {2, 1, 3, 7, 8, 9, 4, 6, 5, 10, 11}

  • 1.1 Resource-constrained Project Scheduling Sample of ScheduleSchedule:S = {(a12, a11, a13 , a17, a18 , a19, a14 , a16, a15 , a1,10, a1,11), (a22, a21, a23 , a27, a28 , a29, a24 , a16, a25 , a2,10, a2,11), (a32, a31, a33 , a37, a38 , a39, a34 , a36, a35 , a3,10, a3,11)}S = {(a12, 2: 0-5), (a11, 3: 0-3), (a13, 3: 3-9), (a17, 3: 5-9), (a18, 2: 9-14), (a19, 3: 9-13), (a14, 4: 13-15), (a16, 1: 15-18), (a15, 2: 15-18), (a1,10, 4: 18-20), (a1,11, 5: 20-23),(a22, 4: 0-5), (a21, 2: 0-3), (a23, 1: 3-9), (a27, 1: 5-9), (a28, 2: 9-14), (a29, 2: 9-13), (a24, 3: 13-15), (a26, 1: 15-18), (a25, 0: 15-18), (a2,10, 1: 18-20), (a2,11, 4: 20-23), (a32, 2: 0-5), (a31, 1: 0-3), (a33, 2: 3-9), (a37, 1: 5-9), (a38, 2: 9-14), (a39, 3: 9-13), (a34, 1: 13-15), (a36, 1: 15-18), (a35, 3: 15-18), (a3,10, 0: 18-20), (a3,11, 2: 20-23)}S = {2, 1, 3, 7, 8, 9, 4, 6, 5, 10, 11}

  • 1.1 Resource-constrained Project Schedulingt2=5 , t1=3 , t3=9 , t7=9 , t8=14 , t4=15 , t6=18 , t5=18, t10=20 ,t11=23 Sample of ScheduleS = {(a12, a11, a13, a17, a18, a19, a14, a16, a15, a1,10, a1,11)}S = {2, 1, 3, 7, 8, 9, 4, 6, 5, 10, 11}

  • t3-t16 : 9-36t4-t12 : 15-32t7-t24 : 9-54t9-t34 : 13-4t5-t43 : 18-153t6-t43 : 18-153t8-t75 : 14-95t10-t92 : 20-132t10-t52 : 20-182t11-t103 : 23-203l12+l11 6 : 2+36l12+l13 6 :2+36 l13+l17 6 :3+36 l18+l196 : 2+36l18+l146 : 2+46 l16+l15 6 : 1+26 1.1 Resource-constrained Project Scheduling Sample of scheduleS = {(a12, a11, a13 , a17, a18, a19, a14, a16, a15, a1,10, a1,11)}S = {(a12, a11, a13 , a17, a18, a19, a14, a16, a15, a1,10, a1,11)}

  • 1.1 Resource-constrained Project Scheduling EncodingExample of rc-PSPstChromosome:activity ID jv(j): activity priority

    1234567891011 1011793854621

  • activity ID j:activity priority v(j):1.1 Resource-constrained Project Schedulingpriority-based decoding DecodingTrace tableDurationResource demand

    jv(j)j*Ss{1,2} v(1)=10, v(2)=112{2}2{1,7} v(1)=10, v(7)=51{2,1}1{3,4,7}v(3)=7, v(4)=9, v(7)=54{2,1,4}

  • {2,1,4,6,3,9,7,8,5,10,11}11v(2)=1{11}10{2,1,4,6,3,9,7,8,5,10}10v(10)=2{10}5{2,1,4,6,3,9,7,8,5}5v(5)=3, v(10)=2 {5,10}8{2,1,4,6,3,9,7,8}8v(5)=3, v(8)=4, v(10)=2 {5,8,10}7{2,1,4,6,3,9,7}7v(5)=3, v(7)=5, v(10)=2{5,7,10}9{2,1,4,6,3,9}9v(5)=3, v(7)=5 , v(9)=6{5,7,9}3{2,1,4,6,3}3v(3)=7, v(5)=3, v(7)=5{3,5,7}6{2,1,4,6}6v(3)=7, v(5)=3, v(6)=8 , v(7)=5{3,5,6,7}4{2,1,4}4v(3)=7, v(4)=9, v(7)=5{3,4,7}1{2,1}1v(1)=10, v(7)=5{1,7}2{2}2v(1)=10, v(2)=11{1,2}0v(j)Schedule1.1 Resource-constrained Project Schedulingactivity ID j: Trace tableTrace tableactivity priority v(j):

    1234567891011 1011793854621

  • makespan : 25 limited resource of the example: (b1,b2,b3) = (6, 6, 6) the schedule using the priority-based decoding:

    Solution using the priority-based decoding: chromosome: Result by the priority-based decoding:1.1 Resource-constrained Project SchedulingS = {2, 1, 4, 6, 3, 9, 7, 8, 5, 10, 11}S = {2, 1, 4, 6, 3, 9, 7, 8, 5, 10, 11}

  • In Kolish (1996) and Kolish and Hartmann (1999) a serial and a parallel schedule generation scheme for project scheduling with minimum time lags have been discussed.They showed that the parallel method does not generally perform better than the serial method. So we proposed the revised serial method of priority-based decoding. Kolisch, R. and S. Hartmann : Heuristic Algorithms for the Resource-constrained Project Scheduling Problem: Classification and Computational analysis, pp.147- 178, in Weglarz, J. Ed.: Project Scheduling: Recent Models, Algorithms and Applications, Kluwer, Boston,1999. Kolisch, R : Serial and Parallel Resource-constrained Project Scheduling Methods Revisited: Theory and Computation, European J. of Operational Research, Vol. 90, pp.320-333,1996.1.2 Revised Serial Method

  • The schedule set are the activities where were already scheduled and thus belong to the partial schedule. The decision set contains the unscheduled activities with every predecessor being in the scheduled set.: the left over capacity of the renewable resource r in period f, and the decision set . Af : the set of activities being in progress in period f : lrj : units of resource during every period of its processing time . Kj : the set of predecessor activities of activity j .br : maximum-limited resource r only available with the constant period availability.1.2 Revised Serial Method

  • Initialization

    Kolisch, R Serial and Parallel Resource-constrained Project Scheduling Methods Revisited: Theory and Computation, European Journal of Operational Research, Vol 90, pp.320-333,1996.

    : the earliest finish time of activity j within the current partial schedule. : the latest finish time of activity j as determined by backward recursion from the upper bound of the projects makespan.: a priority value of activity j , .where1.2 Revised Serial Methodendoutput endminmaxargmaxdowhilebeginoutputinputprocedureS;jj;jSS};Rr,f,,df,ll,tftf{t;p}Kit{t;jSS};Sj|)j(v{j;LSS)jSS;t,jSVjL*jrrjjjjji**jjj****j****j schedule 11 t(;,00 schedule :priority activity activity after activities successive ofset the:Method Serial Revised :LFEFEF++-=++tpt

  • makespan : 23 limited resource of the example: = (6, 6, 6) the near-optimal schedule: near-optimal solution: Result by the revised serial method: chromosome:1.2 Revised Serial MethodS = {2, 1, 3, 7, 8, 9, 4, 6, 5, 10, 11}S = {2, 1, 3, 7, 8, 9, 4, 6, 5, 10, 11}

  • The position-based crossover operator proposed by Syswerda A number of recombination operators have been investigated for permutation representation. Essentially, it takes some genes from one parent at random and fills vacuum position with genes from the other parent by a left-to-right scan. Syswerda, G: Scheduling Optimization using Genetic Algorithms, pp.332-349 in Davis, L. Ed.: Handbook of Genetic Algorithms, Van Nostrand Reinhold, New York,1991. 1.3.1 Position-based Crossover (PBC)1.3 Hybrid Genetic Algorithms

  • 1.3.2 PMX (Partially Mapped Crossover)PMX was proposed by Goldberg and Lingle. Goldberg, D. & R. Lingle, Alleles: loci and the traveling salesman problem, Proc. of the 1st Inter. Conf. on GA, pp.154-159, 1985.PMX can be viewed as an extension of two-cut point crossover for binary string to permutation representation. It uses a special repairing procedure to resolve the illegitimacy caused by the simple two-cut point crossover. 1.3 Hybrid Genetic Algorithms

  • 1.3 Hybrid Genetic Algorithmsprocedure : PMX crossoverinput : v1, v2, l output : , beginR ;// step 1: select two positions at randoms random[1:l-1] ; t random[s+1:l] ;// step 2: exchange two substrings v1[1:s-1] // v2[s: t] // v1[t +1:l] ; v2[1:s-1] // v1[s: t] // v2[t +1:l] ;// step 3: determine the mapping relationship R relation(v1[s:t] , v2[s:t]) ;// step 4: legalize offspringlegalize( , , R ); output offspring ,end;v1 : parent chromosome 1 v2 : parent chromosome 2l : length of chromosome : offspring chromosome 1 : offspring chromosome 2 R : relationships s : start position of substring t : end position of substringrelation(v1,v2) : searching relationship between v1 and v2legalize(v1,v2,R) change genes value of v1, v2 based on relationship Rparent 2parent 1116599111053484218673proto-child 1proto-child 25986487311 5 4 8 76 3offspring 1offspring 2534891110761165942183step 1 : select two positions at randomstep 2: exchange two substringsstep 3 : determine the mapping relationshipstep 4 : legalize offspringstGen, M. and R. Cheng : Genetic Algorithm and Engineering Optimization, John Wily and Sons, New York, 2000.Gen, M. and R. Cheng : Genetic Algorithm and Engineering Optimization, John Wily and Sons, New York, 2000.211072110711511659741083215348112176109 1.3.2 PMX (Partially Mapped Crossover)

  • procedure: Local Search-based Mutationinput: parents Poutput: offspring Cbegin i 1 ; let P be current incumbent chromosome; select a pivot gene randomly; while (i specifiedNumber) do pick up the gene; evaluate the neighbors toward both sides until left and right limit; let the neighbor be current incumbent if it is better then generate Ci; i i + 1; end output the incumbent in Cend 1.3.4 Local Search-based Mutation 1.3.3 Swap Mutation (Activities) 1.3 Hybrid Genetic Algorithms

  • Fuzzy Logic Controller (FLC) Method: Wang, Wang, and Hus concept The main idea of the FLC concept two FLCs: crossover and mutation based on fuzzy controller. Control Strategy adaptively adjust the crossover probability and mutation probability during the optimization process based on a FLC. The heuristic updating principles for the crossover probability and mutation probability are to consider the changes in the average fitness of the population.1.4 Fuzzy Logic ControllerWang, P.Y., G.S, Wang. & Z.G, Hu.:Speeding up the search process of genetic algorithm by fuzzy logic. European Congress on Intelligent Techniques and Soft Computing, pp.665-671,1997.

  • The change in average fitness at the generation t 1 : The change in average fitness at the generation t : where : a given real number in the proximity of zero. : a given maximum value of fuzzy membership function. : a given minimum value of fuzzy membership function.1.4 Fuzzy Logic Controller

  • Fuzzy decision table for crossover and mutationNR: negative larger, NL: negative large, NM: negative medium, NS: negative small, ZE: zero, PS: positive small, PM: positive medium,PL: positive large, PR: positive larger.Wang, P. T., G. S. Wang and Z. G. Hu : Speeding Up the Search Process of Genetic Algorithm by Fuzzy Logic, Proceedings of the 5th European Congress on Intelligent Techniques and Soft Computing, pp.665-671,1997.1.4 Fuzzy Logic Controller

    NR

    NL

    NM

    NS

    ZE

    PS

    PM

    PL

    PR

    NR

    NL

    NM

    NS

    ZE

    PS

    PM

    PL

    PR

    NR

    NL

    NL

    NM

    NM

    NS

    NS

    ZE

    ZE

    NL

    NL

    NM

    NM

    NS

    NS

    ZE

    ZE

    PS

    NL

    NM

    NM

    NS

    NS

    ZE

    ZE

    PS

    PS

    NM

    NM

    NS

    NS

    ZE

    ZE

    PS

    PS

    PM

    NM

    NS

    NS

    ZE

    ZE

    PS

    PS

    PM

    PM

    NS

    NS

    ZE

    ZE

    PS

    PS

    PM

    PM

    PL

    NS

    ZE

    ZE

    PS

    PS

    PM

    PM

    PL

    PL

    ZE

    ZE

    PS

    PS

    PM

    PM

    PL

    PL

    PR

    ZE

    PS

    PS

    PM

    PM

    PL

    PL

    PR

    PR

  • The corresponding values for defuzzificationwhere the contents of are the corresponding values of i and j for defuzzification. Wang, P. T., G. S. Wang and Z. G. Hu : Speeding Up the Search Process of Genetic Algorithm by Fuzzy Logic, Proceedings of the 5th European Congress on Intelligent Techniques and Soft Computing, pp.665-671,1997.1.4 Fuzzy Logic Controller

    Z(i,j)

    i

    -4

    -3

    -2

    -1

    0

    1

    2

    3

    4

    j

    -4

    -3

    -2

    -1

    0

    1

    2

    3

    4

    -4

    -3

    -3

    -2

    -2

    -1

    -1

    0

    0

    -3

    -3

    -2

    -2

    -1

    -1

    0

    0

    1

    -3

    -2

    -2

    -1

    -1

    0

    0

    1

    1

    -2

    -2

    -1

    -1

    0

    0

    1

    1

    2

    -2

    -1

    -1

    0

    0

    1

    1

    2

    2

    -1

    -1

    0

    0

    1

    1

    2

    2

    3

    -1

    0

    0

    1

    1

    2

    2

    3

    3

    0

    0

    1

    1

    2

    2

    3

    3

    4

    0

    1

    1

    2

    2

    3

    3

    4

    4

  • The membership functions for fuzzy inputs variables NR: negative larger, NL: negative large, NM: negative medium, NS: negative small, ZE: zero, PS: positive small, PM: positive medium, PL: positive large, PR: positive larger.00.40.60.81.00.20.60.41.00.80.2-----PSPMPLPRNSNRNLNM1Wang, P. T., G. S. Wang and Z. G. Hu : Speeding Up the Search Process of Genetic Algorithm by Fuzzy Logic, Proceedings of the 5th European Congress on Intelligent Techniques and Soft Computing, pp.665-671,1997.1.4 Fuzzy Logic Controller

  • makespan: 22 limited resource of the example: = (6, 6, 6) the best schedule using the flc-hGA: the best solution using the flc-hGA: Result by flc-hGA:1.4 Fuzzy Logic Controller chromosome:S = {2, 1, 3, 7, 8, 4, 6, 9, 5, 10, 11}S = {2, 1, 3, 7, 8, 4, 6, 9, 5, 10, 11}

  • Coordinated strategy of fuzzy logic control and GA 1.4 Fuzzy Logic Controller

  • 1.5 Overall Procedureprocedure: Flc-hGA for Resource-constrained Project Scheduling Probleminput: processing time, maximum-limited resource, GA parametersoutput: best schedulebegint 0;initialize P(t) by priority-based encoding;fitness eval(P);while (not termination condition) docrossover P(t) to yield C(t) by PMX or position-based crossover ;mutation P(t) to yield C(t) by swap mutation or local search-based mutations;fitness eval(C); select P(t+1) from P(t) and C(t) by elitist selection; adaptive regulation of GA parameters using FLCt t + 1;endoutput best schedule;end

  • procedure of other heuristic algorithmsstep 1: put the decision set of the unscheduled activitiesstep 2: select the activity by priority equation.step 3: put the selected activity by priority equation in the schedule set 1.6 Other Heuristic Algorithms

  • 1.6 Other Heuristic Algorithms

  • 1.6 Other Heuristic AlgorithmsjES LSEF LF ES = Earliest Start LS = Latest Start EF = Earliest Finish LF = Latest Finish Sample networksuc(i)

  • Davis, E. and F. Paterson : A Comparison of Heuristic and Optimum Solutions in Resource- constrained Project Scheduling, Management Science, vol.21, pp.944-945,1975.s1.7 Numerical Examplesuc(i)

  • Experimental condition for GA: population size: popSize = 20 maximum generations: maxGen = 1000 crossover probability: pC = 0.3 mutation probability: pM = 0.3 Comparison with Other Heuristic ResultsDavis, E. and Paterson, F : A Comparison of Heuristic and Optimum Solutions in Resource- constrained Project Scheduling, Management Science, vol.21, pp.944-945,1975.1.7 Numerical Example

  • Alternative Schedule 1 Alternative Schedule 2 Alternative Schedule 3 Alternative Schedule 4 Alternative Schedule 5Alternative Schedule 6 11 Alternative Optimal Schedules1.7 Numerical Example

  • Alternative Schedule 7 Alternative Schedule8 Alternative Schedule 9 Alternative Schedule 10 Alternative Schedule111.7 Numerical Example11 Alternative Optimal Schedules (contd)

  • Optimal first alternative schedules (Program)1.7 Numerical Example

  • flc-hGA has results better than hGA as the job size is increased. Jobs which contain local search-based mutation out of the hGA and flc-hGA have the best result.Best Fitness (percentage of solvable instances)activity size1.7 Numerical Example

  • The mean of the same best makespan after 10 times running. Numbers of alternative schedules of hGA and flc-hGA are increased as the job size is increased. flc-hGA has results better than hGA as the job size is increased and jobs which contain local search-based mutation out of the hGA and flc-hGA have the best result. No. of Alternative Schedulesactivity size1.7 Numerical Example

  • the results applied by flc-hGA are faster than those applied by GA in all case of job size. hGA and flc-hGA (Local search-based mutation + Position-based crossover) have the best results out of others.

    CPU Time (sec)activity size1.7 Numerical Example

  • In initial process, hGA and flc-hGA have almost same convergence process. But flc-hGA has makespan better than hGA after generation number is 12 and Products alternative schedules of the same project duration after generation number is 21.The evolutionary behaviors of average fitness of flc-hGA and hGA (Local search-based mutation + Position-based crossover)1.7 Numerical Example

  • We proposed how to solve the Resource-constrained Project Scheduling Problem using hybrid genetic algorithm with fuzzy logic controller based on revised serial method. We proposed to Revised Serial Method : to find a near-optimal solution (makespan) and hGA : to find the best solution (makespan) and several alternative schedules with best solution (makespan). FLC : to reduce CPU time.The proposed method (flc-hGA based on revised serial method) can find the best solution and a lot of alternative schedules with best solution during minimizing CPU time.An important area of future research is the development of efficient heuristic methods with similar performance for corresponding project scheduling problems with non-regular objective functions.1.7 Conclusion

  • 1. Resource-constrained ProjectScheduling Problem (rc-PSP) 2. Resource-constrained Multiple Project Scheduling Problem (rc-mPSP) 2.1 Resource-constrained Multiple Project Scheduling Problem (rc-mPSP) 2.2 Mathematical Model of rc-mPSP 2.3 Hybrid Genetic Algorithm (hGA) 2.3.1 Priority-based Encoding 2.3.2 Revised Serial Method 2.3.3 Swap Mutation (SM) 2.3.4 Local Search-based Mutation (LSM) 2.3.5 Correct Setting of Genetic Parameters 2.4 Numerical Experiments 2.5 Conclusion3. Resource constrained ProjectScheduling Problem with Multiple Modes (rc-PSP/mM)14. Resource-constrained Project Scheduling

  • Ozdamar et al. (IEEE-SMC, 1999) : A Genetic Algorithm Approach to a General Category Project Scheduling Problem. Fricke and Shenhar (IEEE-TEM., 2000) : Managing Multiple Engineering Projects in a Manufacturing Support Environment.Franck et al. (OR Spectrum, 2001) : Truncated Branch and Bound, Schedule-Construction, and Schedule-improvement Procedures for Resources-constrained Project Scheduling.Gen, Cheng & Oren (Adv. Eng. Soft., 2001) : Network Design Techniques using Adapted Genetic Algorithms. Kim, Gen and Yamazaki (Applied Soft Computing, 2003) : Hybrid Genetic Algorithm with Fuzzy Logic for Resource-constrained Project Scheduling.Isakow and Golany (International Journal of Production Management, 2003) Human Resource Allocation in a Multi-project R&D Environment.

    Background in rc-PSP based on Genetic Algorithms 2.1 Resource-constrained Multiple Project Scheduling

  • Project Process in Gear PlantGear2.1 Resource-constrained Multiple Project Scheduling

  • Processing timeManpower, Material. Costactivity(outsourcing)2.1 Resource-constrained Multiple Project Scheduling(plant1)(plant2)(plant3)(plant4) Example of rc-mPSP

  • : the set of successive projects after project i .2.1 Resource-constrained Multiple Project Schedulingdummy: The total penalty cost of the project i .: the due date of the project i (the promised delivery time of project). Table 1 Project-related data for example rc-mPSP problemNo. of activities in projectS

  • i: project index, i=0,,I+1 (or Pi, i=0,I+1). (i=0 or I+1 are dummy projects). j: activity index in each project, j=0,,J+1 (or Aj, j=0,,J+1). (we assume that J is the maximum number of activities in each project, J=Ji i and j=0 or J+1 are dummy activities).r: nonrenewable resource index, r=1,,R.

    pij: processing time of activity j in project i.lijr: scheduling activity j in project i consumes resource units per period from resource r.br: maximum-limited resource r only available with the constant period availability.Af: the set of activities being in progress in period f. Af={j|tijS f < tijS+pij, j=0,,J+1, i=0,,I+1}tiD: the due date of the project i (the promised delivery time of project).ciTP: the total penalty cost of the project i.tijF: finish times of activity j in project i.tiJF: finish times of last activity J in project i.

    tijS: start time of activity j in project i.tF: total project time.pT: total tardiness penalty.

    2.2 Mathematical Model of rc-mPSPindicesvariablesparameters Notation

  • (5)(1)(2)(3)(4)s. t. 2.2 Mathematical Model of rc-mPSPMathematical Model(6)

  • 2.3.1 Priority-based Encoding2.3 Hybrid Genetic Algorithm (hGA)procedure: priority-based encodinginput: number of nodes moutput: chromosome vkbegin for j=1 to m vk(j) j; for i=1 to repeat j random[1, m]; l random[1, m]; until lj swap (vk(j), vk(l)); output chromosome vk.end

  • : the earliest finish time of activity within the current partial schedule. : the latest finish time of activity as determined by backward recursion from the upper bound of the projects makespan. : a priority value of activity , . where : the set of predecessor activities of activity j . : the set of successive activities of activity j .2.3 Hybrid Genetic Algorithm (hGA)2.3.2 Revised Serial Method of Priority-based Decodingprocedure: Revised Serial Method of Priority-based Decodinginput: the set of successive activities suc(i) after activity j activity priority Vjoutput: Schedule Sbegin j 0 , t 0; S , S ; while (| j |t ) do S S + suc(i) ; j* argmax { v( j )| j S } ; S S j* ; tj*EF max{ ti | i Kj* } + pj* ; tj* min{ f | tEF f tj*LF, lrj* lr , = f - dj* + 1,., f , r R } ; S S j* ; j j + 1 ; end output Schedule S endsuc(j)

  • (b1,b2,b3) = (6, 6, 6). S = {(2,1,4,3), (2,1,3,4,5), (1,3,2,4) ,(2,5,1,4,3) , (3,2,1,4)} = 13 + 13 + 11 + 11 + 8 = 56 = (2 + 2 + 0 + 0 + 0) * 10 = 40 ManpowerMaterialCosttimetimetime2.3 Hybrid Genetic Algorithm (hGA)

  • procedure: swap mutationinput: parents Poutput: offspring Cbegin i 0 ;while (i popSize pM ) dopick up two projects in parent Pi;exchange their positions to yield Ci;i i + 1;end output offspring Cend2.3 Hybrid Genetic Algorithm (hGA)2.3.3 Swap Mutation (SM)

  • 2.3 Hybrid Genetic Algorithm (hGA)2.3.4 Local Search-based Mutation (LSM)

  • procedure : Local Search-based Mutationinput: parents Poutput: offspring Cbegin i 1 ;let P be current incumbent with the optimal in popSize;select a pivot gene randomly;while (i specifiedNumber) dopick up the gene;evaluate the neighbors toward both sides until left and right limit;let the neighbor be current incumbent to yield C if it is better;i i + 1;endoutput offspring Cend2.3 Hybrid Genetic Algorithm (hGA)

  • (b1,b2,b3) = (6, 6, 6). S = {(1,3,2,4) ,(1,2,3,4,5), (1,3,2,4) ,(1,2,3,4,5) ,(1,2, 3,4)}= 11 + 13 + 11 + 11 + 9 = 55 =(0 + 2 + 0 + 0 + 0) * 10 = 20 timetimetime Result using SM and LSM2.3 Hybrid Genetic Algorithm (hGA)ManpowerMaterialCost

  • wheremaximum fitness values in the offSizeaverage fitness values of the offSizebest fitness value among the individuals to which the mutation with a probability is appliedall the individuals except andThis scheme is to improve the mutation operator from the original work performed by Srinivas and Patnaik (1994) M. Srinvas and L. M. Patnaik, Adaptive Probabilities of Crossover and Mutation in Genetic Algorithms, IEEE Transaction on Systems, Man and Cybernetics, Vol.24, No.4, pp.656-667, 1994.2.3 Hybrid Genetic Algorithm (hGA)2.3.5 Adaptive Hybrid Genetic Algorithm (a-hGA)

  • (b1,b2,b3 ) = (6, 6, 6). = {(1,3,2,4), (1,2,3,5,4), (2,1,3,5,4) ,(1,2,3,4) ,(2,1,3,4)} = 11 + 13 + 8 + 11 + 9 = 52 =(0 + 2 + 0 + 0 + 0) * 10 = 20

    timetimetime The Result of hGA with FLC2.3 Hybrid Genetic Algorithm (hGA)ManpowerMaterialCost

  • The Result of hGA with FLC2.3 Hybrid Genetic Algorithm (hGA))))))))))))))))))

  • Overall Procedure for the Proposed Algorithmstep 1. Initialization:Generate an initial set Sn of n chromosome through the revised serial method.step 2. Initial Evaluation: Evaluate all individuals and calculate their fitness.step 3. Selection: Choose the best individual. step 4. Hybrid Genetic Operators:Swap mutationLocal search-based mutationstep 5. Evaluation:The fitness evaluation of offspring is implemented by an objective function suggested in this paper. The process selects a schedule with the best total project time, total tardiness penalty and then alternative schedules with the best total project time are stored in current generation. 2.3 Hybrid Genetic Algorithm (hGA)

  • 2.3 Hybrid Genetic Algorithm (hGA)step 6. Termination Check: If at least one of the individuals has achieved the predefined maximum fitness, stop and return the best individual. Otherwise generate a new selection set.The input variables of the FLC for GA parameters are the changes in average fitness at generation t and t-1 as follows. Determine control actions to and using fuzzy decision table.step 7. Regulate the mutation probability during the genetic search process

    1 Regulation of hGA Parameters using FLC: The number of the alternative schedules with the optimal solution may be increased during optimization process of hGA.

  • step 8. Go back to step 3.2.3 Hybrid Genetic Algorithm (hGA)

  • Table 14.1 Project data for example rc-mPSP problem : the set of successive projects after project i .2.4 Numerical Experiments Test Problem 1: the set of successive projects after project i .: the due date of the project i (the promised delivery time of project).: the total penalty cost of the project i.S

  • Table 14.2 Successor, processing time and resources data of activity for example of rc-mPSP problem. 2.4 Numerical Experiments Test Problem 1 1 2 3 4 5 6 7 8 910 1 2 3 4 5 6 7 8 910 1 2 3 4 5 6 7 8 910 1 2 3 4 5 6 7 8 910suc(i)suc(i)

    suc(i)

    suc(i)

  • Table 14.3 Successor, processing time and resources data of activity for example of rc-mPSP problem. 2.4 Numerical Experiments Test Problem 1 1 2 3 4 5 6 7 8 910 1 2 3 4 5 6 7 8 910 1 2 3 4 5 6 7 8 910 1 2 3 4 5 6 7 8 910suc(i)

    suc(i)suc(i)suc(i)

  • The schedule of the rc-mPSP example obeyed limited resources (b1,b2,b3 ) = (6, 7, 6)It is the best schedule of one profile: S= {P2 (1,2,4,5,3,6,7,8,10,9), P1 (2,1,4,5,3,7,8,6,9,10}, P3 (1,5,3,2,4,7,6,8,10,9 ),P4 (2,1,4,5,8,3,7,10,6,9) , P5 (1,2,3,4,5,6,7,8,9,10),P6 (3,2,1,5,4,7,6,9,10,8), P7 (1,3,2,4,5,7,6,8,9,10),P8 (2,3,1,5,4,7,8,10,6,9)}We could find the best Total Project Time and Total Tardiness Penalty as follows: tF = P2 + P1 + P3 + P4 + P5 + P6 + P7 + P8 = 24 + 18 + 34 + 28 + 39 + 27 + 31 + 28 = 229, Alternative Schedule with the best Total Project Time SA = 119,Total Tardiness Penalty pT = (0 + 0 + 4 + 3 + 4 + 0 + 0 + 0) 10 = 110 Experimental condition for GA: population size: popSize = 150 maximum generations: maxGen = 200 Swap mutation and Local search mutation probability: pM = 0.52.4 Numerical Experiments Test Problem 1

  • 2.4 Numerical Experiments Test Problem 1Gantt Chart for example of rc-mPSP problem

  • 2.4 Numerical ExperimentsGantt Chart for example of rc-mPSP problem Test Problem 1

  • Gantt Chart for example of rc-mPSP problem2.4 Numerical Experiments Test Problem 1

  • Experimental condition for GA: population size: popSize = 150 maximum generations: maxGen = 200 Swap mutation and Local search mutation probability: pM = 0.5Table 14.4 Computational results of rc-mPSP problem2.4 Numerical Experiments Test Problem 1

  • 215220225230235240245250255135791113151719212325272931333537394143454749Number of Generationsflc-hGAflc-hGAa-hGAhGAhGAFig. 14.1 Behaviors of average fitness of Total Project TimeTotal Project Time231.75233.45234.212.4 Numerical Experiments Test Problem 1

  • 50100150200250300350400135791113151719212325272931333537394143454749Number of Generationsflc-hGAflc-hGAa-hGAhGAhGAFig. 14.2 Behaviors of average fitness of Total Tardiness Penalty Total Tardiness Penalty370130.75150.45160.212.4 Numerical Experiments Test Problem 1

  • Fig. 14.3 Behavior of mutation probability of rc-mPSP test problem00.10.20.30.40.50.60.70.80.91135791113151719212325272931333537394143454749hGAhGAa-hGAflc-hGAflc-hGAMutation ratesNumber of Generations2.4 Numerical Experiments Test Problem 1

  • Table 14.5 Result on the problems of various sizes using flc-hGA2.4 Numerical ExperimentsmaxGen popSize Test Problem 2

  • 2.5 Conclusions Proposed how to solve the Resource-constrained Multiple Project Scheduling Problem (rc-mPSP) using Hybrid Genetic Algorithm with Fuzzy Logic Controller (flc-hGA) based on the Revised Serial Method.

    Developed the Revised Serial Method by Priority-based Decoding to find a near-optimal solution, the hGA to find the best Total Project Time tF, Total Tardiness Penalty pT and Alternative Schedule with best SA , and lastly proposed Fuzzy Logic Controller to reduce the CPU time.

    So the proposed method (flc-hGA) could find the best tF, pT, and SA Compared the heuristic algorithms that hGA, a-hGA, and flc-hGA to find the best algorithm and treated the rc-mPSP problems of various size using best flc-hGA algorithm in numerical experiments

  • 1. Resource-constrained ProjectScheduling Problem (rc-PSP) 2. Resource-constrained Multiple Project Scheduling Problem (rc-mPSP)3. Resource constrained ProjectScheduling Problem with Multiple Modes (rc-PSP/mM) 3.1 Resource constrained project scheduling problem with multiple modes (mrc-PSP/mM) 3.2 Mathematical model for mrc-PSP/mM 3.3 Adaptive genetic algorithm 3.4 Experimental result 3.5 Conclusion

    14. Resource-constrained Project Scheduling

  • 3.1 Resource Constrained Project Scheduling Problem with Multiple Modes Simple rc-PSP/mM problem

    Activity iMode jDuration pijNonrenewableResource 1 rij1NonrenewableResource 2 rij2RenewableResource 1 rij3Predecessorprei11(Dummy node)21231215183435433241312351113254523342141251445243215123151282543234322,361231312155623433232,471(Dummy site)2,5,6

  • Brucker et al. (EJOR. 1998): Resource-constrained Project Scheduling: Notation, Classification, Model, and Methods.Ozdamar et al. (IEEE-SMC. 1999): A Genetic Algorithm Approach to a Category Project Scheduling Problem.Franck et al. (OR Spectrum, 2001): Truncated Branch and Bound, Schedule- Construction, and Schedule-improvement Procedures for Resources-constrained Project Scheduling.Gen, Cheng & Oren (Adv. Eng. Soft. 2001): Network Design Techniques using Adapted Genetic Algorithms. Bouleimen, K. and H. Lecocq (EJOR. 2003): A new efficient simulated annealing algorithm for the resource-constrained project scheduling problem and its multiple mode version, Heilmann, R. (EJOR. 2003): A branch-and-bound procedure for the multi-mode resource-constrained project scheduling problem with minimum and maximum time lags. 3.1 Resource Constrained Project Scheduling Problem with Multiple Modes Background in rc-PSP based on Genetic Algorithms

  • Main idea of this paperEncoding priority-based encoding for activity multistage-based encoding for activity mode Adaptive genetic algorithmorder-based crossover for activity priorityneighborhood search mutation for activity modeiterative hill-climbing methodauto-turning of GA parameters

    We present how to solve the rc-PSP/mM problems using adaptive genetic algorithmthe makespan of the project is to be minimized the multiple resources and precedence constraints are obeyed the alternative schedules with minimized makespan

    Kim & Gen : Adaptive Genetic Algorithms for Multi-resource Constrained Project Scheduling Problem with Multiple Modes, Proc. of Inter. Workshop on FIC, Kitakyushu, Japan,2004.

    Main Idea for rc-PSP/mM 3.1 Resource Constrained Project Scheduling Problem with Multiple Modes

  • indices i : activity index, i=1,2,, I j : mode index, j=1,2,,mi (mi is the number of possible modes for activity i) k : renewable resource type index, k=1,2,,k. n : nonrenewable resource type index, n=1,2,,N. t : period index, t=tiEF,, tiEF.

    variables tijF : finish processing time of activity i of selected mode j. tiEF : early finish time of activity i. tiLF : lately finish time of activity i.

    decision variables xijt : binary variable which takes the value 1, if and only if we choose mode j to execute activity I and schedule it to be finished in period t.

    parameters prei: set of immediate predecessors of activity i. rijk : amount of nonrenewable resource k required to execute activity i when mod j is used. lkM : maximum-limited renewable resource k only available with the constant period availability. lnM : maximum-limited renewable resource k only available with the constant period availability. pij : processing time of activity i of selected mode j. 3.2 Mathematical model for rc-PSP/mM Notation

  • In rc-PSP/mM problem, the objective of the model is to minimize the makespan . The problem can be formulated as follows:s. t.,,(1)(2)(3)(4),,,, 3.2 Mathematical model for rc-PSP/mM

  • 0 5 10 15 20 25123tlimited resource545 4 3 2 1 3.2 Mathematical model for rc-PSP/mM

  • Priority-based encoding for activityFig. 16.4 Network representation of simple mr-cPSP/mM 3.3 Adaptive Genetic Algorithm for rc-PSP/mMprocedure: priority-based encodinginput: number of nodes moutput: chromosome vkbegin for j=1 to mvk(j) j; for i=1 to repeat jrandom[1, m]; lrandom[1, m];until lj swap (vk(j), vk(l)); output chromosome vk.end

    activity ID j1234567activity priority v(j) 2673415activity mode m(j) 1121331

  • {1,3,2}23{1,3}31{1}10v(j)v(2)=6, v(3)=7, v(4)=3v(1)=2v(2)=6, v(4)=3{2,4}{2,3,4}{1}Fig.14.5 Network representation of simple mr-cPSP/mM 3.3 Adaptive Genetic Algorithm for rc-PSP/mM

    activity ID j :1234567activity priority v(j): 2673415

  • 3.3 Adaptive Genetic Algorithm for rc-PSP/mMTrace tableTrace

    activity ID j :1234567activity priority v(j) : 2673415

  • Multistage-based encoding for activity modeState permutation1113121Fig. 14.6 Multistage-based encoding for activity mode1State 1State 2State 3[0]Stage 1Stage 2Stage 3Stage 4Stage 5Stage 6Stage 7[11][12][20][20][30][30]123123123121231 3.3 Adaptive Genetic Algorithm for rc-PSP/mMScheduling :1 2 3 4 5 6 7

  • 13254671State 1State 2State 3[0]Stage 1Stage 2Stage 3Stage 4Stage 5Stage 6Stage 7[11][12][20][20][30][30]123123123121231 Makespan tM = 30 limited resource of the example = (12, 8, 8) the schedule using priority and multistage-based encoding 3.3 Adaptive Genetic Algorithm for rc-PSP/mM

  • parent 1offspring 1parent 2procedure: Order-based Crossover (OBX) for Activity Priorityinput: parents Poutput: offspring Cstep 1: Select a set of positions from one parent of Activity Priority at random in activity priority.step 2: Produce a proto-child by copying the cities on these positions into the corresponding positions of the proto-child.step 3: Delete the cities which are already selected from the second parent. The resulting sequence of cities contains the cities the proto-child needs.step 4: Place the cities into the unfixed positions of the proto-child from left to right according to the order of the sequence to produce one offspring C. Order-based crossover for activity priority 3.3 Adaptive Genetic Algorithm for rc-PSP/mM514376225364712653471selected positionsactivity ID j

    1234567

  • procedure: Neighborhood Search Mutation (NSM) for activity mode Local search-based mutation for activity mode1331211113111112311111131211parent individualtwo pivot genesneighbor individuals12312111131311activity ID j12313111331311procedure: Neighborhood Search Mutation input: parents Poutput: offspring Cbegin i 1 ; let P be current incumbent chromosome; select two pivot gene randomly; while (i specifiedNumber) do pick up the gene; evaluate the neighbors until bound of activity mode; let the neighbor be current incumbent if it is better; i i + 1; endoutput offspring Cend 3.3 Adaptive Genetic Algorithm for rc-PSP/mM

    1 2 3 4567

  • Result using OBX and LSM for simple mcPSP/mM Result using OBX and LSM for simple mrc-PSP/mM activity mode m(j)1331111activity priority v(j) 2536451 activity ID j7654321 Makespan tM = 27 limited resource of the example = (12, 8, 8) the schedule using priority and multistage-based encoding 3.3 Adaptive Genetic Algorithm for rc-PSP/mM

  • procedure: Iterative Hill-Climbing Method in GA Loopinput: string Vcoutput: improved string Vcbegin t 0; repeat localFALSE; select a best string vc in current GA loop; repeat randomly generate a new string as many as popSize in the neighborhood of vc; select a string with the best value of objective function tM among the set of new strings; if f(vc) < f(vn) then vc vn else local TRUE until local t t+1; until t=popSize output improved string Vcend Iterative Hill-Climbing method 3.3 Adaptive Genetic Algorithm for rc-PSP/mM

  • Adjust GA Parametersprocedure: regulation of the rates of crossover and mutation operatorsinput: crossover probability pC, mutation probability pMoutput: improved crossover probability pC, mutation probability pMbegin if then ; if then ; if then ; endendMori M. and Tseng C.C. (1997) European Journal of Operational Research, Vol.100, pp.134-141. 3.3 Adaptive Genetic Algorithm for rc-PSP/mM

  • Best result for simple rc-PSP/mM problem Makespan tM = 24 limited resource of the example = (12, 8, 8) the schedule using priority and multistage-based encoding 3.3 Adaptive Genetic Algorithm for rc-PSP/mM

  • 3.3 Adaptive Genetic Algorithm for rc-PSP/mMprocedure: FLC-hGA for rcPSP/mMinput: resource data of project scheduling, GA parametersoutput: best schedulingbegint 0;initialize P(t) by activity priority and multistage-based encoding;fitness eval(P);while (not termination condition) docrossover P(t) to yield C(t) by order-based crossover for activities; mutation P(t) to yield C(t) by neighborhood search mutation for modes of activities;Iterative hill-climbing to yield C(t) fitness eval(C); select P(t+1) from P(t) and C(t) by elitist selection; adaptive regulation of GA parameters using FLCt t + 1;endoutput best scheduling;end

  • 324657112811109131415Fig. 16.7 Network representation of example m-rcPSP/mM Experimental condition for aGA: population size: popSize = 20 maximum generations: maxGen = 500 crossover probability: pC = 0.3 mutation probability: pM = 0.025 3.4 Experimental Result

  • Table 14.6 Information for the example mrc-PSP/mM 3.4 Experimental Resultprei

  • 3.4 Experimental Result

  • Makespan tM = 27Limited resource of the example = (15, 15, 13,14) The schedule using aGA 3.4 Experimental Result

    activity ID j ;123456789101112131415activity priority v(j): 415131011126985321714activity mode m(j): 112111111211111

  • renewable resource nonrenewable resource 3.4 Experimental Resultresource1resource2resource3resource4

  • We have formulated a mathematical model to find a best solution for Resource constrained project scheduling problem with the multiple modes (rc-PSP/mM)We have proposed the adaptive genetic algorithm (aGA) for solving the rc-PSP/mM.Encoding priority-based encoding for activity multistage-based encoding for activity mode Adaptive genetic algorithm order-based crossover for activity priority local search-based mutation for activity mode iterative hill-climbing method auto-turning of GA parameters

    The analysis result has shown that the proposed aGA is found the alternative schedules with optimal makespan for rc-PSP/mM problem. 3.5 Conclusion

    FlcFlcFlc