gaのデフォルトの突然変異確率について

10 views (last 30 days)
Kazushi
Kazushi on 14 Nov 2019
Edited: Kazuya on 18 Nov 2019
MATLABのgaの突然変異確率のデフォルト値はいくらになっているのでしょうか.
ご存じの方,よろしくお願い申し上げます.
  2 Comments
Kazuya
Kazuya on 14 Nov 2019
Edited: Kazuya on 14 Nov 2019
'Uniform’ を選んだ場合は 0.01 (1%) がデフォルト値みたいです。
Kazushi
Kazushi on 14 Nov 2019
ご回答ありがとうございます.
Gaussian Mutationのデフォルト値を確認できないのですが,ご存じでしょうか?

Sign in to comment.

Accepted Answer

Kazuya
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
Kazuya on 18 Nov 2019
Edited: Kazuya on 18 Nov 2019
********** Kazushi さんのコメント:2019 年 11 月 15 日 12:38
Mutationの割合は既定値が20%(エリートを除く)とのことでしたが,これは'mutationuniform'の既定値である1%とは異なる意味の割合なのでしょうか?
***************
こちらで回答します。はい、'mutationuniform' の既定値 1% とは異なりますね。
Mutation によって次世代が作られる個体の割合の既定値が20%(エリートを除く)、そして Mutation の方法として 'mutationuniform' を選択した場合に、各個体の entry (遺伝子要素?)のうち乱数で置き換えられる要素の割合が 'mutationuniform' の既定値 1%です。
edit mutationuniform
で関数の中を見る(+ブレークポイント設定するなどして実行中の変数の値を見るなどすると)と分かりやすいかもしれません。

Sign in to comment.

More Answers (1)

Kazushi
Kazushi on 15 Nov 2019
ご回答ありがとうございます.
Mutationの割合は既定値が20%(エリートを除く)とのことでしたが,これは'mutationuniform'の既定値である1%とは異なる意味の割合なのでしょうか?

Community Treasure Hunt

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

Start Hunting!