私は2000ビットで構成される個人の遺伝的アルゴリズムを持っており、4つの変数を最適化しようとしています。母集団のサイズ、世代数、突然変異の確率などのパラメーターを設定するための(比較的簡単なことが望ましい)経験則はありますか?
簡単に言えば、いいえ、これらの番号を選択する簡単な方法はありません。すべてはあなたのドメインと必要な結果に依存します。
人口サイズは、実験で比較的迅速に決定できます。100、1000、10K、100K、および100万を試してください。どちらがあなたにより良い結果を与えるか-それで行きなさい。
世代数は決定するのが最も難しいものです。通常、処理の開始時に最良の結果のスカイロケットの改善が行われ、その後、速度が低下してほぼ停止します。通常、それは停止して最良の結果を得るか、突然変異率などのいくつかのパラメーターを変更する時間です。したがって、結果が十分に良い場合を決定するのはあなた次第です。通常、費やした時間と改善率のバランスです。
私の実験中および科学文献によって確認されたように、処理の開始時に、突然変異率を最小にすることをお勧めします(0.01%など)。そして、改善率が低下したら、より多くのミューテーションを導入して、より幅広いソリューションを探索します。ある時点で、私は突然変異率を50%のようなばかげたものに増やしました。これはシステムの安定状態を乱すのに役立ちましたが、システムはかなり速く安定状態に戻り、最終結果は「核爆弾」の前の結果よりもはるかに良くありませんでした。私は、(私のドメイン内の)最高の突然変異は5%を超えてはならず、改善率がほぼゼロの場合にのみであるという結論に達しました。
うまくいけば、これはあなたに少し役立つかもしれませんが、あなたが尋ねることは些細なことではなく、人々は各トピックについて別々に論文を書きます。また、トピックに関するいくつかの記事を読むことをお勧めします-これは非常に役立ちます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加