-1

私は現在、グループ割り当ての問題を解決するために遺伝的アルゴリズムに取り組んでいます (学生をできるだけバランスの取れたグループに割り当てる)..アルゴリズム全体を実装しましたが、高品質の結果が得られるかどうかはわかりません. 10世代くらいから同じ解(改善なし)のままなので、収束が早すぎると思います。

私は 2 トーナメント選択を使用し、クロスオーバーを注文しました。さまざまな人口サイズ、トーナメント サイズ、突然変異率を設定しようとしましたが、役に立ちませんでした! 問題はどこだ?1週間経ちましたが、同じ進行状況で立ち往生しています。

なにか提案を?

4

2 に答える 2

1

一般に、GA の収束が速すぎる場合は、次の点を確認する必要があります。

  • 突然変異/交差率は適切に設定されていますか? これが低すぎると、人口は急速に停滞します。
  • あなたのパフォーマンス指標は合理的ですか? 測定基準が適切に調整されていない場合、遺伝子プールをすぐに支配する 1 つのグループに非常に大きなアドバンテージを与えることになります。
  • 十分なランダムデータを使用していますか? 非常に小さなソリューション スペースを扱っている場合、GA を使用してもおそらく意味がありません。使用すると、非常に迅速に収束することになります。
  • あなたの実装は実際に正しいですか?見つけるのが非常に難しい微妙な論理エラーを導入するのは非常に簡単です。デバッガーを使用して世代をステップ実行し、重要なポイントが想定どおりに動作することを確認することをお勧めします。

とはいえ、10世代というのはまったく不合理ではありません。GA に問題があると主張する前に、パフォーマンスに実際に問題があることを確認することをお勧めします。

于 2013-07-15T18:20:07.857 に答える