Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NSGA-2 multi-objective genetic algorithm. Anyone could give me a "simple explanation"?

I'm working on a genetic algorithm.

There are two objective and each one has its own fitness values (fv1,fv2).

I know how generational(SGE) and steady-state(SS) genetic algorithms works.

I'm trying to understand how NSGA-2 and SPEA-2 (I'm using the implementation of the java library JCLEC) work, particularly:

  • what is the "external population" and how should it be sized
  • what's the difference with SS and SGE one-objective algorithm (a part from the fact each individual has just one fitness value)

In case anyone is working with JCLEC library these are the parameters I setup:

  • external population: 1000
  • k-value: 10
  • other attributes are the same of SS and SGE (population-size:100 , crossover: MPX crossover etc..)
like image 624
dragonmnl Avatar asked Jun 07 '12 20:06

dragonmnl


People also ask

How does NSGA II algorithm work?

NSGA-II is one evolutionary algorithm that has the following three features: It uses an elitist principle , i.e. the elites of a population are given the opportunity to be carried to the next generation. Is uses an explicit diversity preserving mechanism (Crowding distance ) It emphasizes the non-dominated solutions.

What are genetic algorithms explain with example?

A genetic algorithm is a search heuristic that is inspired by Charles Darwin's theory of natural evolution. This algorithm reflects the process of natural selection where the fittest individuals are selected for reproduction in order to produce offspring of the next generation.

What is multi population genetic algorithm?

This results in a different algorithm: the multi-population genetic algorithm (MPGA) [4, 5]. The MPGA divides the population of a standard GA into N sub-populations (the sub-population number is denoted by N) that each include the same number of individuals (the sub-population size is denoted by S).

What is simple genetic algorithm?

Simple Genetic Algorithm (SGA) is one of the three types of strategies followed in Genetic algorithm. SGA starts with the creation of an initial population of size N. Then, we evaluate the goodness/fitness of each of the solutions/individuals.


1 Answers

Here's an explanation for NSGA-II

  1. First, it randomly initializes the population.
  2. Chromosomes are sorted and put into fronts based on Pareto Non dominated sets. Within a Pareto front, the chromosomes are ranked based on euclidean between solutions or I-dist (term used in NSGA-II) . Generally, solutions which are far away (not crowded) from other solutions are given a higher preference while selection. This is done in order to make a diverse solution n set and avoid a crowded solution set.
  3. The best N (population) chromosomes are picked from the current population and put into a mating pool
  4. In the mating pool, tournament selection, cross over and mating is done.
  5. The mating pool and current population is combined. The resulting set is sorted, and the best N chromosomes make it into the new population.
  6. Go to step 2, unless maximum number of generations have been reached.
  7. The solution set is the highest ranked Pareto non dominated set from the latest population.
like image 162
rohanag Avatar answered Nov 15 '22 09:11

rohanag