44
Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA Multi-objective Optimization Jugal K. Kalita University of Colorado, Colorado Springs, USA Multi-objective Optimization

Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Multi-objective Optimization

Jugal K. Kalita

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 2: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Single vs. Multi-objective Optimization

Single vs. Multi-objective Optimization

I Single Objective Optimization: When an optimizationproblem involves only one objective function, the task offinding the optimal solution is called single-objectiveoptimization.

I Example: Find a CAR for me with Minimum cost.I Multi-objective Optimization: When an optimization

problem involves more than one objective function, thetask of finding one or more optimal solutions is known asmulti-objective optimization.

I Example: Find a CAR for me with minimum cost andmaximum comfort.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 3: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Multi-objective Optimization: Introduction

Multi-objective Problems

I Problems with more than one objective function, typicallyconflicting objectives

I Cars Example: Maximize luxury vs. Minimize priceI Another example: Maximiize f1(x) = x2 and

f2(x) = (x − 2)2 when x is in the range [−103,103]

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 4: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Multi-objective Optimization: Introduction

Multi-objective ProblemsI A more complex example: Maximize the following two

objective functions when the variables are within the range[−π, π]:

f1(x) =[1 + (A1 − B1)2 + (A1 − B2)2

]f2(x) =

[(x1 + 3)2 + (x2 + 1)2

]A1 = 0.5sin(1)− 2cos(1) + sin(2)− 1.5cos(2)

A2 = 1.5sin(1)− cos(1) + 2sin(2)− 0.5cos(2)

B1 = 0.5sin(x1)− 2cos(x1) + sin(x2)− 1.5cos(x2)

B2 = 1.5sin(x1)− cos(x1) + 2sin(x2)− 0.5cos(x2)

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 5: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Multi-objective Optimization: Introduction

General Formulation of a Multi-objective Problem

I Minimiize F(X )

whereF(X ) = {fi : ∀i = 1,M}

X = {Xj : ∀j = 1,N}subject to

C(X ) ≤ 0 where C = {Ck : ∀k = 1,P}H(X ) = 0 where H = {Hk : ∀k = 1,Q}

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 6: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Multi-objective Optimization: Introduction

Multi-objective Optimization

I Multi-objective optimization (MOO) is the optimization ofconflicting objectives.

I In some problems, it is possible to find a way of combiningthe objectives into a single objective.

I But, in some other problems, it is not possible to do so.I Sometimes the differences are qualitative and the relative

importance of these objectives cannot be numericallyquantified.

I Frequently, there is no unique solutions, rather there is atrade-off among optimal solutions.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 7: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Multi-objective Optimization: Introduction

Conceptual Example

I Suppose you need to fly on a long trip: Should you choosethe cheapest ticket (more connections) or shortest flyingtime (more expensive)?

I It is impossible to put a value on time, so these twoobjectives cannot be linked.

I Also, the relative importance will vary.I There may be a business emergency you need to go fix

quickly.I Or, maybe you are on a very tight budget.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 8: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Pareto-Optimal Solutions

I A MOO problem with constraints will have many solutionsin the feasible region.

I Even though we may not be able to assign numericalrelative importance to the multiple objectives, we can stillclassify some possible solutions as better than others.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 9: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Example of Pareto-Optimal Solutions

I Suppose in our airplane-trip example from earlier, we findthe following tickets.Ticket Travel Time (hrs) Price ($)

A 10 1700B 9 2000C 8 1800D 7.5 2300E 6 2200

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 10: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Comparison of Solutions

I If we compare tickets A and B, we cannot say that either issuperior without knowing the relative importance of TravelTime vs. Price.

I However, comparing tickets B and C shows that C is betterthan B in both objectives, so we can say that C“dominates” B.

I So, as long as C is a feasible option, there is no reason wewould choose B.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 11: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Comparison of Solutions

I If we finish the comparisons, we also see that D isdominated by E.

I The rest of the options (A, C, and E) have a trade-offassociated with Time vs. Price, so none is clearly superiorto the others.

I We call {A,C,E} the non-dominated set of solutionsbecause none of the solutions are dominated.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 12: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Graph of Solutions

I Usually, solutions of this type form a typical shape, shownin the graph below.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 13: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Types of Solutions

I Solutions that lie along the line are non-dominatedsolutions while those that lie inside the line are dominatedbecause there is always another solution on the line thathas at least one objective that is better.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 14: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Pareto-optimal Solutions

I The line is called the Pareto front and solutions on it arecalled Pareto-optimal.

I All Pareto-optimal solutions are non-dominated.I Thus, it is important in MOO to find the solutions as close

as possible to the Pareto front and as far along it aspossible.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 15: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Finding the Pareto Front

I For the following feasible region with objectives f1 and f2where both f1 and f2 are minimized.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 16: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Graphical ExampleI One way to imagine finding points on the Pareto front is by

using a combination of numerical weights for the twoobjectives.

I Here, we have a weight of w1 on f1 and weight w2 on f2.The equation of a slanted line is w1f1 + w2f2 for variousvalues of w1 and w2 such that w1 + w2 = 1.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 17: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Finding the Pareto Front

I If this is done for a 90◦ span of lines, all the points on thePareto front will be found.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 18: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Realistic Procedures

I There are different methods used in practice, but one is touse a genetic algorithm to enumerate points along thePareto front over several iterations, then use some methodto rank the quality of the trade-offs based on the particularapplication being modeled.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 19: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Practicality of this Procedure

I Actually, this is not the procedure that is used in practice,but it is a good illustration of the concept.

I This procedure would require finding all possible points inthe feasible region and then using many combinations ofweights.

I For more than two objectives, the complexities and thenumber of combinations make this impractical.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 20: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto-optimal Solutions

Finding a Point on the Pareto Front

I It should be remembered that each point on the Paretofront is found by solving an optimization problem.

I If the problem is nonlinear or very complex, the simple stepof getting just one solution may not be trivial.

I This is the case whether we a genetic algorithm or someother method. We have to find points on the Pareto Front.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 21: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Mutli-objective GA References

Development of Multiobjective GAsI The 1st generation: Vector Evaluation approach Vector

Evaluated Genetic Algorithm (VEGA)I J. D. Schaffer: “Multiple objective optimization with vector

evaluated genetic algorithms”, Proc. of 1st Inter. Conf. onGAs and Their Applic., 1985.

I The 2nd generation: Pareto ranking + DiversityI Multiobjective Genetic Algorithm (MOGA)

Fonseca, C. M. and Fleming, P. J: “Genetic algorithms formultiobjective optimization: formulation, discussion andgeneralization”, Proc. of the 5th Inter. Conf. on GAs, 1993.

I Non-dominated Sorting Genetic Algorithm (NSGA)Srinivas, N. and Deb, K.: “Multiobjective functionoptimization using nondominated sorting geneticalgorithms”, Evolutionary Computation, 1995.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 22: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Mutli-objective GA References

Development of Multiobjective GAsI The 3rd generation: Weighted Sum + Elitist Preserve

I Random-weight Approach (RWA): Ishibuchi, H and T.Murata: “A multiobjective genetic local search algorithmand its application to flowshop scheduling”, IEEE Trans. onSys., Man & Cyber., 1998.

I Strength Pareto Evolutionary Algorithm (SPEA): E. Zitzlerand L. Thiele: “Multiobjective Evolutionary Algorithms: AComparative Case Study and the Strength ParetoApproach”, IEEE Trans. on Evolutionary Comput., 1999.

I Adaptive Weight Approach (AWA): Gen M,. and Cheng, R. :Genetic Algorithms and Engineering Optimization, JohnWiley & Sons, New York, 2000.

I Non-dominated Sorting Genetic Algorithm II (NSGAII): Deb,K., A. Pratap, S. Agarwal & T. Meyarivan: “A Fast and ElitistMultiobjective Genetic Algorithm: NSGA-II” IEEE Trans. onEvolutionary Comput., 2002

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 23: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

VEGA

Vector Evaluated Genetic Algorithms (Schaffer, 1985)

I VEGA is the first notable work to solve MOO problems inwhich it uses a vector fitness measure to create the nextgeneration.

I The selection step in each generation becomes a loop.Each time through the loop the appropriate fraction of thenext generation, or subpopulation, is selected on the basisof each objective.

I The entire population is shuffled thoroughly to applycrossover and mutation operators. This is performed toachieve the mating of individuals of differentsubpopulations.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 24: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

VEGA

VEGA 1985I Divide population into M equal blocks for M objectives at

every generation.I Reproduce each block with one objective function.I Complete population participates in crossover and

mutation.I Use proportionate selection operator.I To reduce the positional bias in the population, shuffle the

population before partition.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 25: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

VEGA

VEGA 1985

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 26: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Pareto Ranking

Pareto Ranking Approach

I Pareto ranking approach consists of assigning fitnessranks to chromosomes based on the level ofnon-domination.

I Best ranked chromosomes have better chance atreproduction.

I A Pareto ranking-based fitness assignment method wasfirst suggested by

I Goldberg, D.: Genetic Algorithms in Search, Optimizationand Machine Learning, Addison-Wesley, Reading, MA,1989.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 27: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

Goldberg’s Method

Pareto Ranking (Goldberg 1989)

I Step 1: Assign rank 1 to thenondominated chromosomes

I Step 2: Remove rank 1chromosomes from contention

I Step 3: Find the next nondominatedchromosomes, remove them fromcontention, assign rank 2 to them.

I Step 4: Continue until the entirepopulation is ranked.

Figure: Simple case with twoobjectives to be minimizedusing Goldberg’s Ranking

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 28: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

MOGA

Multi-objective Genetic Algorithm (Fonseca & Fleming1993)

I Step 1: Assign rank 1 to thenondominated chromosomes

I Step 2: Remove rank 1chromosomes from contention

I Step 3: Find the next nondominatedchromosomes, remove them fromcontention, assign rank equal to thenumber of a chromosome’sdominating individuals +1.

I Step 4: Continue until the entirepopulation is ranked.

Figure: Simple case with twoobjectives to be minimizedusing MOGA

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 29: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA

Non-dominated Sorting Genetic Algorithm (Deb 1995)

I Step 1: Identify nondominated individuals, and assign alarge dummy fitness value.

I Step 2: To maintain diversity in the population, share theseindividuals with their dummy fitness values.

I Step 3: After sharing, ignore these nondominatedindividuals temporarily.

I Step 4: Identify the second nondominated front in the restof the population and assign a dummy fitness valuesmaller than the minimum shared dummy fitness of theprevious front.

I Step 5: Continue this process until the entire population isclassified into several fronts.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 30: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA

Salient Points about NSGAI Assign fitness first to the non-dominated set and

successively to dominated sets.I A solution i of the first (or best) non-dominated set is

assigned a fitness value Fi = N where N is the populationsize.

I Assigning higher fitness to solutions belonging to a betternon-dominated set ensures selection pressure toward thePareto-optimal front.

I Maintain diversity of solutions in a specific front byreducing the assigned fitness based on the crowdedness(the number of neighboring solutions) of a solution. This isdone using a sharing function.

I Degrading the fitness of solutions in a crowded area in acertain front emphasizes solutions in less crowded regions.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 31: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA

NSGA...

Figure: Flow chart of NSGA

Figure: Simple case with twoobjectives to be minimizedusing NSGA

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 32: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA

NSGA Analysis

I It is relatively easy to implement.I It needs a parameter called the sharing factor to decide

how the fitnesses of crowded solutions in a specific frontshould be shared.

I The solutions it obtains to a problem seem to be verysensitive to the sharing factor.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 33: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Non-Dominated Sorting Genetic Algorithm NSGA-II

I Deb et al. (2000, 2002) proposed a new version of NSGAcalled NSGA-II

I NSGA-II is more efficient computationally speaking.I It uses elitism and doesn’t need a sharing factor or

parameter.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 34: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Innovations in NSGA-II

I There are three innovations.I A Fast non-dominated sorting algorithm for solutionsI A way to efficiently compute what’s called crowding

distance.I A simple crowded distance comparison

I We will look at all three of these. First, let’s look at themain algorithm.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 35: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Non-Dominated Sorting Genetic Algorithm NSGA-II

I Steps before main loop beginsI Initialize population P0I Sort P0 on the basis of nondominationI Fitness of an individual is equal to an individual’s

nondomination levelI Binary Tournament SelectionI Mutation and recombination create an offspring population

Q0

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 36: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Non-Dominated Sorting Genetic Algorithm NSGA-II

I Primary loopI Rt = Pt + Qt (t= generation)I Sort Rt on the basis of nondominationI Create Pt+1 by adding individuals from each level of Rt until

Pt+1 is of size NI Create Qt+1 by applying Binary Tournament Selection,

Mutation, and Recombination to Pt+1I Increment t

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 37: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

NSGA Flowchart

Figure: Flow chart of NSGA IIUniversity of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 38: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

NSGA Flow Diagram

Figure: Pt is the parent population and Qt is the offspring populationfor generation t . F1 are the best solutions from the combinedpopulation, parents and offspring. F2 are the next best solutions, etc.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 39: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Non-dominated SoringI For each solution, calculate two entities: 1) domination

count np, the number of solutions that dominate thesolution p, and 2) Sp, a set of solutions that the solution pdominates.

I All solutions in the first non-dominated front have theirdomination count as 0.

I For each solution p with np = 0, we visit each member q ofits set Sp and reduce its domination count by 1. In doingso, if for any member q, the domination count becomes 0,we put it in a separate list Q. Q is the secondnon-dominated front.

I Continue the above procedure with each member of Q andthe third front is identified.

I Continue till all fronts are identified.University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 40: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Non-dominated Sorting

Figure: Result of non-dominated sortingUniversity of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 41: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Non-dominated sorting

1: k=02: repeat3: k ←− k + 14: R.k ←− non-dominated solutions in P5: P ←− P − R.k6: until P = Φ

Here R1 · · ·Rk denote partitions of rank i = 1 · · · k

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 42: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Diversity Preservation

I It is desired that there is a good spread of solutions.I This is done by estimating the density of the solutions and

by defining a crowded-comparison operator.I To estimate the density of solutions surrounding a

particular solution in the population, we sort all solutions ineach objective dimension and calculate the averagedistance of two points on either side of this point alongeach of the objectives.

I See algorithm at the bottom of page 185 to see how eachsolution is given a crowding distance along each objectivedimension.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 43: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Crowding Distance Metric

Figure: Crowding distance calculation. For solution i find the averagedistance from the two solutions immediately before and immediatelyafter, along each objective dimension.

University of Colorado, Colorado Springs, USA

Multi-objective Optimization

Page 44: Multi-objective Optimizationjkalita/work/cs571/2012/Multi... · Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA VEGA Vector

Introduction Pareto-Optimal Solutions Evolution of Multi-Objective GA Approaches to Multi-objective GA

NSGA-II

Crowded-Comparsion Operator

I The crowded-comparison operator (≺n) is used to selectsolutions at various stages of the algorithm toward auniformly spread-out Pareto-optimal front.

I Assume that every individual i in the population has twoattributes:

1. Non-domination rank irank2. crowding distance idistance

I We now define a partial order ≺n asi ≺n if (Irank < jrank ) or ((irank = jrank ) and(idistance > jdistance))

University of Colorado, Colorado Springs, USA

Multi-objective Optimization