gaのデフォルトの突然変異確率について
11 views (last 30 days)
Show older comments
MATLABのgaの突然変異確率のデフォルト値はいくらになっているのでしょうか.
ご存じの方,よろしくお願い申し上げます.
2 Comments
Accepted Answer
Kazuya
on 14 Nov 2019
念のため「突然変異確率」の意味するところを確認させてください。
次世代の作られ方は Elite, Crossover, Mutation の3通りがあると理解しています。
それぞれの割合のデフォルト設定を気にされていますか?
その場合 CrossoverFraction の既定値が 0.8 なので、Elite を除くと 20% が Mutation 。
上のURLの最後の方にも例として以下の記載があります。参考まで。
For example, if the Population size is 20, the Elite count is 2, and the Crossover fraction is 0.8, the numbers of each type of children in the next generation are as follows:
- There are two elite children.
- There are 18 individuals other than elite children, so the algorithm rounds 0.8*18 = 14.4 to 14 to get the number of crossover children.
- The remaining four individuals, other than elite children, are mutation children.
1 Comment
Kazuya
on 18 Nov 2019
Edited: Kazuya
on 18 Nov 2019
Mutationの割合は既定値が20%(エリートを除く)とのことでしたが,これは'mutationuniform'の既定値である1%とは異なる意味の割合なのでしょうか?
***************
こちらで回答します。はい、'mutationuniform' の既定値 1% とは異なりますね。
Mutation によって次世代が作られる個体の割合の既定値が20%(エリートを除く)、そして Mutation の方法として 'mutationuniform' を選択した場合に、各個体の entry (遺伝子要素?)のうち乱数で置き換えられる要素の割合が 'mutationuniform' の既定値 1%です。
edit mutationuniform
で関数の中を見る(+ブレークポイント設定するなどして実行中の変数の値を見るなどすると)と分かりやすいかもしれません。
More Answers (1)
See Also
Categories
Find more on グラフィックス出力のターゲットの指定 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!