Lecture.. 7 Constrained problems & optimization Brief introduction differential evolution Brief eample of hybridization of EAs Multiobjective problems & optimization Pareto optimization This slides mainly give eample of how to use GA/DE hybrid for optimizing constrained problems. Constrained problems The constrained optimization problem can be epress as follows: n Maimize f ( ), = (,..., n ) R with bo coefficients that limit the search space:, i {,..., n} i i i = min ma and with the inequality coefficients: g j ( ), j = {,..., m} and the equality constrains: h k ( ) =, k = {,..., q} that can be transformed into an inequality constrains by defining: g j ( ) = hk ( ) δ where the inaccuracy constant δ=..
Eamples of constrained search spaces g Infeasible areas g Function optimas Eamples of constrained dimensional functions: up left is g, up right is g, and right down is g (other benchmark problems used in this study have more than dimensions) 7 g The Problem Properties Test problems g N param N ineq N equal Reaching the feasible area (GA eample) Best Median Worst 3 9 3 7 3 9 33 9 3 7 7 33 7 7 9 7 3 3 7 The amount of parameters, Nparam, the amount of inequality Nineq and the equality constrain 3 799 Nequal of each test problem fcn. Also, the number of generations (best, average, and worst) 3 that DEGA needed to reach the feasible 3 area with 3each function. 37
How to solve constrained problems Use evolutionary algorithm, e.g. genetic algorithm or differential evolution etc. Or hybrid Handle constrains e.g. with penalty terms (add penalty value to the fitness value, if constrains violated) Handle constrains as objectives until feasible area is reached 9 Differential evolution (DE) Select four parents Calculate the difference vector between two parents, and add it to the third parent vector with weight F Crossover between the new vector and fourth parent with gene selection probability CR Compare the new child with fourth parent, the more fit will reach the net generation Picture from http://www.icsi.berkeley.edu/~storn/code.html 9 3
DE operation eample Parent :....3.77 Parent :...77.3.3 Difference:..3.3.. *F (=.)..3...3 Parent 3:..33.3.77. Donor vector:.3..7.7.* (*overflow if values [, ]) (=P3+F*diff) Parent :.3.77.3..9 New child:.3.77.7.7.9 (CR=. meaning 3/ of the gene values taken from donor vector and / from the parent ) http://en.wikipedia.org/wiki/differential_evolution 9 Eample of the Hybridization of EAs (DE+GA) 3 7 Current population GA DE ' ' ' ' ' ' ' ' 3 7 Net generation GA DE The likelihood of doing GA type reproduction is e.g. 3% The likelihood of doing DE type reproduction is e.g. 7% Population size e.g. DE parameters can be e.g. F=[.,.7] CR=[.,.9] Mutation probability with GA changes, e.g. decreases if the best result improves, and increases if the result is not improving 9
The replacement scene of DEGA Feasible solutions or high fitness values Sorted DEGA population, N individuals Infeasible solutions or low fitness values The current population N e / best are replaced if child more fit 3N e / worst individuals are replaced according the rules The net generation population The DEGA hybrid does simultaneous maimization and minimization of the same function by replacing some of the best and the worst individuals of the population with replacement special rules 93 The flow chart of the possible DEGA hybrid Start and generate the initial population randomly Evaluate the population Sort the population, first the feasible solutions according to the fitness value f(), then the infeasible solutions according the amount of constrain violations Σg() Stop condition reached? Yes Print the best solution and stop No Evaluate the new individuals, if the child fulfills one of conditions (right) it will replace the parent it is compared with. Select randomly two parents and do GA type crossover and mutation GA Select the crossover method randomly Select randomly four parents and do DE type crossovermutation operation Loop: do as many as the population sizeelitism DE The fitness function returns three values: f ( ) m g ( ) j j= Ma { g ( )} j The rules when the child replaces the parents: If the parent belongs to the group of ½ of the best population individuals and f()child f()parent and Σg()childΣg()parent and ma{g()}childma{g()}parent Else, if the parent belongs to the group of ¾ of the worst population individuals, then in every generation randomly select and apply one of the following rules Σg()child Σg()parent ma{g()}child ma{g()}parent f()child Σg()child > f()parent Σg()parent f()child ma{g()}child > f()parent ma{g()}parent 9
The Eample DE/GA Results 3 g Optimal..3 Best..37 Median.. Mean..799 Worst..79 St.Dev..3.9 9..97 9.. 9. 9.9 9.. 9.. 7.3.3.37.37.3.3 9 3 79.33.39 79.37.799. 79.9.799. 7..799.99 7.9.799.7.97. 9 Results The plot of the search space and the final generation individuals solutions (*) with the problems g and g. Note g have two optimums, which both have been found 9
The best results with different methods fcn Best result DEGA RY MC LJW RY g..... g.37.3.3.3.3 g3 g g.97.97.99.9.97 g 9. 9. 9. 9. 9. g7.3.37.37.3.3 g g9.3 g 79.37 7.3 7.93 79.99 79. g g g3..397.39.39.39 The best results with our method (DEGA), and with methods represented by Runarsson and Yao (RY, and RY), Li et al. (LJW) and MezuraMontes and Coello (MC) with different test functions The best result for each category is marked as green, the worst result by red, and those where all methods reach optimum are marked as blue. The results between the best and the worst are marked as black 97 The mean results with different methods fcn 3 7 9 3 DEGA..799 9.9 9..37 7..99 RY..79. 7.9.37. 79.9.7 MC..73 7.9 9..7.3 73.7.3 LJW..77 33.9 9..9. 7.7.3 RY..77.97 9..3 79..77 The average results with our method, and with other methods. Same abbreviations and colors as in the previous slide. 9 7
The worst results with different methods fcn g g g3 g g g g7 g g9 g g g g3 Worst result DEGA..79. 9..3 7.9.7 RY..79.7 3...73 3..9 MC..73 3. 9..3.79 73.3.9 LJW..7.9 9.7..9 77.9.7 RY..739.97 9..3 79.7.33 The worst results with our method, and with other methods. Same abbreviations and colors as in the previous slide. 99 Conclusions of DEGA hybrid This eample studied if minma differential evolution/genetic algorithm (DEGA) is worth of considering in special problems where we need to find both the function minima and maima For the hybrid we can define a conditional parent replacement scenes for the tournament selection that changes according the fitness order of the parent The system can work e.g. so that in the beginning, the both ends of the DEGA population are used for speed up the search of feasible area when feasible area is reached the other end of DEGA population will start to maimize the feasible solutions, and the other end is dedicated for minimizing either the sum or maimum constraint violations or their sum with the target function value
Notes The finding of good GA and DE parameters and their ratio is very difficult, and even the final compromise does not work with all test problems. The results show that the DEGA method works relatively well with the constrained test problems. It reaches the feasible region fast and consistently Problem: The results were relatively good when compared with the other methods, but the method still needs some fine tuning, since with some of the benchmark problems, the average and worst results were not as good Solution? Need to do further analyze of what characteristics of these problems causes the obstacles for our method, and improve the method accordingly Notes It is important to give different algorithms equal change, if their results are compared (see Eiben and Smith slides `Working with EA s ) Usually: time algorithm = time algorithm or tested_trials algorithm = tested_trials algorithm sometimes generations algorithm = generations algorithm 9
Warnings and suggestions The benchmark set is important for testing different algorithms. When you compare your results with others use the same benchmark problems as other people The test problem choice has a big influence on the results. This was clearly demonstrated by Morovic and Wang. They showed that by selecting an appropriate fiveimage subset from a image test set, any one of the si Gamut Mapping Algorithms tested could appear like the best one They studied research papers on GMAs and found out that these papers have represented results by using only to 7 test images So, NEVER use the limited test set (subset of the whole benchmark set) 3 Pareto optimization In Paretooptimization all points that are dominated by some other point are not Paretooptimal Only the points that are not dominated by any other point are Paretooptimal and they form Paretofront In the net slide we have two objectives, and both are minimized. Therefore we can draw lines and all the points inside the lines are dominated by the point where the lines begin http://en.wikipedia.org/wiki/pareto_efficiency
Pareto front Pareto front