遺伝的アルゴリズム(GA)とは,生物学上の進化を模倣した自然淘汰プロセスに基づいて制約付きと制約なしの両方の最適化問題を解く手法です。このアルゴリズムでは,複数の解からなる母集団を繰り返し置き換えていきます。各ステップで,遺伝的アルゴリズムによって現在の母集団から解が無作為に選択され,次世代の子を生成するための親として使用されます。数世代続いた後,母集団は最適な解に”進化”します。
遺伝的アルゴリズムは,標準的な最適化アルゴリズムにあまり適していない問題(目的関数が不連続関数,微分不可能関数,確率関数,または高非線形関数である問題など)を解くために適用できます。
遺伝的アルゴリズムは,次の表に示す2つの主な点で,古典的な導関数ベースの最適化アルゴリズムとは異なります。
古典的なアルゴリズム | 遺伝的アルゴリズム |
---|---|
各イテレーションで単一の解を生成します。一連の解が最適な解に近づきます。 | 各イテレーションで複数の個体からなる母集団を生成します。母集団の中で最も適応度の高い個体が最適な解に近づきます。 |
確定的計算によって配列内の次の個体を選択します。 | 乱数生成器を使用した計算によって次の母集団を選択します。 |
遺伝的アルゴリズムの適用の詳細については,全局优化工具箱をご覧ください。