Elite feature of genetic algorithm

9 次查看(过去 30 天)
hi all
i successfully make a Matlab program for Genetic algorithm (without using elite feature) and achieve goal which was desired. i have tried for various number of chromosomes like.5,6,10 and 20. but didn't notice any significant change. i logically believe, there must me some impact on output response by increasing the number of chromosome. and my second question is i want to know, at which stage elite strategy is used and how. i am following the below link: http://www.mathworks.com/help/gads/how-the-genetic-algorithm-works.html in which a line is written "Some of the individuals in the current population that have lower fitness are chosen as elite. These elite individuals are passed to the next population." i am confused at this stage , means if a individual have low fitness then how it is processed to a next level?.
kindly share information if any one have, thanks in advance :)

采纳的回答

Geoff Hayes
Geoff Hayes 2014-10-23
Mudasir - from your previous posts, I think that you have written your own version of the genetic algorithm and are not using that from the Global Optimization Toolbox. So depending upon how you have written the code to initialize the chromosomes, do the selection, do the crossover, do the mutation, then that all that will impact what happens when you increase the number of chromosomes (size of population). What do you observe about your initial population when you increase the size from 5 to 20? Do the genes in each chromosome vary significantly? How does the crossover affect the new chromosomes? When does convergence occur (i.e. at which generation)? I think that you will need to analyze the chromosomes to see how they change from one generation to the next. That analysis may explain why increasing the population size seems to have no affect on producing different/better results.
As for the elite strategy, the above link goes on to say that a fixed number of "elite children" are chosen for the next generation. These elite members have the best (i.e. lowest) fitness of the current generation and are "copied" in to the next generation as is. The remaining members of the next generation's population is made up of the children created through crossover and/or mutation. So this processing would occur prior to selection and crossover. See the example (from the link) for more details.
  6 个评论
Geoff Hayes
Geoff Hayes 2014-10-28
Use matrices (or cell arrays) to manage your data rather than individual variables. It simplifies code considerably!
Emily Kambalame
Emily Kambalame 2022-9-5
编辑:Emily Kambalame 2022-11-14
Dear @Mudasir Ahmed please help me with the elitism NSGA 2 code. How can a certain percent of solutions be preserved from the merged parent and child population?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Genetic Algorithm 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by