replace some individuals in the current population using genetic algorithm, matlab
1 回表示 (過去 30 日間)
古いコメントを表示
Hello,
I'd like to use genetic algorithm to solve optimization problems based on the available commands ga or gamultiobj in matlab. But I want to make some change:
|Evaluate the objective values of the current offspring (population), and sort out m individuals with the worst fitness values and some individuals with the best fitness values;
Create m new individuals based on the best individuals, replace the m worst individuals with the newly creased ones;
Start the next round of evolution...|
Is it possible to re-conduct the ga or gamultiopt command to achieve it? In the documentation I found that I could use user-defined function for the scaling, selection, mutation and crossover. But these do not offer a space for replacing the current population. Anybody know how to solve the problem? Or do I need to prepare my own genetic algorithm code instead of using ga or gamultiopt command?
I'm looking forward to any suggestions.
Thanks in advance!
0 件のコメント
回答 (2 件)
Alan Weiss
2013 年 12 月 5 日
Selection gets you the parents. Mutation and crossover get you the children. So custom selection, mutation, and crossover functions can provide what you need.
Alan Weiss
MATLAB mathematical toolbox documentation
0 件のコメント
Ahmed Rageh
2018 年 3 月 5 日
How could I know the current population number. For example, if I have 20 population, how can I know which one is currently in progress?
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Genetic Algorithm についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!