遺伝的アルゴリズムにおいて、継承とは、モデル化されたオブジェクトが交配し、突然変異し(生物学的 突然変異に類似)、問題解決遺伝子を次の世代に伝播して、特定の問題に対する進化した解決策を生み出す能力である。各世代で継承されるオブジェクトの選択は、対処する問題に応じて変化する適応度関数によって決定される。[1]
これらのオブジェクトの特性は、生物学的生殖に似た手段で染色体を通じて受け継がれます。これらの染色体は、通常、一連の遺伝子によって表され、遺伝子は通常、2進数を使用して表されます。世代間の特性の伝播は、生物の世代間の特性の継承に似ています。このプロセスは、強化学習の一形態として見ることもできます。なぜなら、オブジェクトの進化は、成功したオブジェクトからの特性の受け渡しによって駆動され、その特性は成功に対する報酬と見なすことができ、それによって有益な特性が促進されるからです。[1]
プロセス
新しい世代が作られる準備が整うと、繁殖に成功し選ばれたすべての個体がランダムにペアにされます。その後、これらの個体の特徴は、交叉と突然変異の組み合わせによって受け継がれます。[1]このプロセスは、以下の基本的な手順に従います。
- 交配に成功したオブジェクトをペアにします。
- 各ペアの交差点をランダムに決定します。
- 各ペアの交差ポイントの後に遺伝子を切り替えます。
- 子オブジェクトで遺伝子が変異しているかどうかをランダムに判断します。
これらの手順を実行すると、使用される親オブジェクトのペアごとに 2 つの子オブジェクトが生成されます。次に、新しい世代のオブジェクトの成功を決定した後、最も成功した新しいオブジェクトを使用してこのプロセスを繰り返すことができます。通常、これは、目的の世代に到達するか、適合関数からの最小の目的結果を満たすオブジェクトが見つかるまで繰り返されます。
交差と突然変異は継承でよく使われる遺伝演算子ですが、再グループ化やコロニー化-絶滅などの他の演算子もあります。[要出典]
例
次の 2 つのビット文字列が、2 つの親オブジェクトによって渡される特性を表していると仮定します。
- オブジェクト 1: 1100011010110001
- オブジェクト 2: 1001100110011001
ここで、クロスオーバー ポイントが 5 番目のビットの後にランダムに配置されているとします。
- オブジェクト 1: 11000 | 11010110001
- オブジェクト 2: 10011 | 00110011001
クロスオーバー中、2 つのオブジェクトはクロスオーバー ポイント以降のすべてのビットを交換し、次の結果になります。
- オブジェクト 1: 11000 | 00110011001
- オブジェクト 2: 10011 | 11010110001
最後に、0 個以上のビットがランダムに反転することで、オブジェクトで突然変異がシミュレートされます。オブジェクト 1 の 10 番目のビットが突然変異し、オブジェクト 2 の 2 番目と 7 番目のビットが突然変異すると仮定すると、この継承によって生成される最終的な子は次のようになります。
- オブジェクト 1: 1100000111011001
- オブジェクト 2: 1101110010110001
参照
参考文献
- ^ abc Russell, Stuart J.; Norvig, Peter (1995). 「人工知能:現代的アプローチ」 エングルウッドハイツ、ニュージャージー州: Prentice-Hall.
外部リンク
- BoxCar 2D 遺伝的アルゴリズムを使用して 2 次元の車を構築するインタラクティブな例。
