Professional Documents
Culture Documents
Some introductory figures from : Deb Kalyanmoy, Multi-Objective Optimization using Evolutionary Algorithms, Wiley 2001
Optimization
Optimization refers to finding one or more feasible solutions which correspond to extreme values of one or more objectives Finding out design variable : x Minimize f(x) - Single objective Subjected to gj(x) 0, j=1,,nj hk(x) = 0, k=1,,nk xi(L) xi xi(U)
Non-dominated solutions :
If two solutions are compared, then the solutions are said to be non-dominated with respect to each other IF neither solution dominates the other
Pareto optimal front : The function space representation of all the nondominated solutions
Options : Min Min Min Max Max Min Max Max Which one is which ?
Solution Methods
Methods that try to avoid generating the Pareto front
Generate utopia point Define optimum based on some measure of distance from utopia point
Genetic Algorithms
Genetic algorithms imitate natural optimization process, natural selection in evolution Coding: replace design variables with a continuous string of digits or genes
Binary Integer Real
Population: Create population of design points Selection: Select parents based on fitness Crossover: Create child designs Mutation: Mutate child designs
Problem Formulation
Inequalities defined 0
NSGA-II
Non-dominated Sorting Genetic Algorithm (NSGA)-II performs better than other constrained multi-objective optimizers* (PAEA, SPEA)
Better and faster convergence to true optimal front Better spread on Pareto optimal front
Design A B 3
Design 3 is dominated by both design A and B (and thus undesirable), but design A and B are non-dominated with respect to one another (and thus Pareto optimal).
* Deb, K, et al, A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II, IEEE Transactions on Evolutionary Computations, Vol. 6, No. 2, pp. 182-197, 2002
Flow Chart *
Implementation
Initialize population
Fixed number of population size (N_pop) Fixed number of variables (N_var) Discrete variables
Variable upper (UB) and lower bounds (LB) Number of increments (N_increments)
Ranking
Ranks designs based on nondomination
The Pareto front is all rank 1 designs If the rank 1 designs are removed, the next Pareto front will be all rank 2 designs, etc. Sorting method is different than what NSGA-II* details
Rank 1
Rank 2
* Deb, K, et al, A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II, IEEE Transactions on Evolutionary Computations, Vol. 6, No. 2, pp. 182-197, 2002
Mutation :
Exploration parameter Probability of mutation is typically small (e.g. 0.2) Randomly select gene to mutate Randomly modify gene
Elitism
Keeps best individuals
Combine the child and parent population Select best individuals from the combined population
Nitching
Guides the selection process toward a uniformly spread-out Pareto front Uses a parameter based upon crowding distance (c = a + b), where designs which provide the greatest spread along the Pareto front are favored Between two solutions with differing nondomination ranks, we prefer the solution with the lower (better) rank If both solutions belong to the same front, then we prefer the solution that is located in a lesser crowded region
* Figure from presentation of Tushar Goel
Example
Laminate Design
Problem Formulation
Objectives : Design a symmetric laminate
Maximize D11, maximize D22
Design Variables :
8 to 16 layers Layup orientations, 0 i 90 (15 step)
Constraints :
D12 0.5*D11 D12 0.5*D22
Optimization Settings
N_pop = 10; % size of the population N_gen = 30; % # of generations cross = 1.0; % crossover probability mut = 0.2; % mutation probability LB = [1 1 1 1 0 0 0 0]; UB = [7 7 7 7 7 7 7 7]; N_increments = [7 7 7 7 8 8 8 8];
Use higher values
Layup Orientations
For last 4 layers If variable is 0,the ply does not exist
for i = 1:4 ply_angles(i) = (X(i)-1)*15; end count = 5; for i=5:8 if X(i) > 0 ply_angles(count) = (X(i)-1)*15; count = count+1; end end
Design A B C D
1 15 15 15 15
2 15 15 15 15
Layup orientation () 3 4 5 6 90 90 45 15 90 45 75 30 90 45 0 75 90 15 0 45
7 0 0 30 0
8 90 45 15 90
1 is outermost layer