クロスオーバーとミューテーションの操作についてアドバイスが必要なGPを書いています。GPは、ハード行の制約とソフト列の制約がある行列の最適なソリューションを見つけようとしています。
母集団内の特定のソリューションの場合、行には固定セットのオブジェクトタイプIDのランダムな組み合わせが含まれます。GPは、行がレイアウトされた後、各列のIDを集計する場合、各タイプの数がそのIDの推奨範囲内に収まらなければならないという解決策を見つけようとしています。列の制約にどれだけ近いかでソリューションを評価できる適応度関数を作成しました。100%すべての列が仕様の範囲内にあります。
少しアドバイスが必要なのはクロスオーバーです。親は、フィットネススコアが高いソリューションから選択されます。ワンポイントクロスオーバーがあり、父親の上からいくつかの行をスライスし、母親から無料の下の行をスライスして子孫を生成します。ほとんどの場合、ソリューションが実行不可能になるため、列ごとにスライスすることはできません。
このアプローチはクロスオーバーに適していると思われますか?私は、これを最終的に実現可能にするのに十分な優れた遺伝的「物質」が世代から世代へと受け継がれないのではないかと心配しています。突然変異については、1行か2行を再ランダム化し、ソリューションの新しいフィットネススコアを確認することを計画しています。
アドバイスをありがとうございます。