1. 序章

このチュートリアルでは、最初に遺伝的アルゴリズムのいくつかの基本的なプロパティを定義します。 次に、それらがどのように構築されているかを確認します。 次に、それらがどのように機能するかについて説明します。 最後に、遺伝的アルゴリズムの実際のアプリケーションをいくつか確認します。

遺伝的アルゴリズムは主に最適化問題に適用できます。 これは、最適な解が見つかるまで検索空間で解を検索するように設計されているためです。 特に、遺伝的アルゴリズムは、最適な解が生成されるまで、生成された解を繰り返し改善することができます。 

次に、遺伝的アルゴリズムの正式な定義を見てみましょう。

2. 定義

遺伝的アルゴリズムは、進化の自然過程に触発されたヒューリスティックアルゴリズムです。 この進化論は、19世紀半ばにチャールズダーウィンによって最初に提案されました。 進化論は、自然淘汰による世代を超えた種の生物学的特性の変化を表します。

したがって、遺伝的アルゴリズムは自然淘汰に基づいています。 子孫を繁殖および生成するために、集団の中で最も適者生存者のみが選択される場合。

3. それらはどのように機能しますか?

遺伝的アルゴリズムは進化の自然過程に従い、次のように説明されます。

 

次に、基本的な遺伝的アルゴリズムの手順を見てみましょう。

3.1. アルゴリズム

最初のステップは、母集団を初期化することです。 問題解決の場合、目前の問題に対する一連の解決策が初期母集団です。 次に適応度関数を使用して母集団の最適性を評価します。 適応度関数は、ソリューションの品質を評価する目的関数です。

最終的な目標は、この関数の最大値または最小値を見つけることです。 たとえば、母集団の解にスコアを割り当てる適応度関数を考えてみましょう。 次に、ここでの目標は、関数のグローバル最大値に到達することです。

母集団からの解決策が満足のいくものである場合、私たちは通常、アルゴリズムを停止し、これらを最高の個人として冠します。 ここで、ソリューションが満足のいくものでない場合は、選択プロセスを実行し、最適な個人を選択して、新しいソリューションを再現および生成します。 これは繰り返し行われます。

次に、選択の後、最も適した個体がクロスオーバーによって繁殖し、子孫を生成します。 ここでの子孫という言葉は、新世代のソリューションを指します。 クロスオーバー中に、値が交換されて新しい個人が生成されます。

それで 生産された特定の子孫は突然変異を起こします。 これは、子孫の価値観や特徴をランダムに変化させて多様性を導入するプロセスです。 具体的には、ミューテーション操作を繰り返し適用することで、アルゴリズムが検索中に極小値から抜け出すことができます。

クロスオーバーと突然変異は、遺伝的アルゴリズムで子孫を生成するために使用される2つの主要な方法であることに注意することが重要です。 最後に、解決策または子孫が満足のいくものであり、生成するより良い子孫がない場合、アルゴリズムは終了し、最適な解決策として最良の個体を提示します。

4. アプリケーション

遺伝的アルゴリズムは、コンピュータサイエンスの最も基本的なアルゴリズムの1つです。 その結果、彼らはさまざまな業界やさまざまなタスクのために、現実の世界で多くのアプリケーションを見つけました。 ただし、この記事ではいくつかについてのみ説明します。

4.1. ロボット工学

ロボット工学には、自律型ロボットの設計、構築、操作が含まれます。 ロボット工学では、遺伝的アルゴリズムを使用して、ロボットが下さなければならない決定への洞察を提供します。 たとえば、環境が与えられた場合、ロボットが最小限のリソースを使用して特定の位置に到達する必要があるとします。 遺伝的アルゴリズムは、ロボットが目的の位置に到達するために使用できる最適なルートを生成するために使用されます。

4.2. 経済

経済学は、商品やサービスの生産、流通、および全体的な消費における資源の使用の科学です。 経済学では、遺伝的アルゴリズムを使用して、一定期間にわたる需要と供給のモデルを作成します。 さらに、遺伝子モデルは、ゲーム理論と資産価格設定モデルを導出するためにも使用されます。

4.3. 自動設計

自動設計は、自動車などの自動車の設計と製造を構成します。 特に、自動車製造会社は、自動車の動作方法に関する仕様を持っている場合があります。 一例として、最小燃料消費量は、車両の設計において望ましい仕様です。 その結果、遺伝的アルゴリズムを使用して、自動車の設計を導き出し、低燃費などの制約を満たします。

4.4. タスクのスケジューリング

大学の時刻表をスケジュールするタスクがあるとします。 スケジューリングタスクの目標は、特定の制約を満たす最適なソリューションを見つけることです。 この側面では、遺伝的アルゴリズムを使用して、大学のコース、学生数、講義室を考慮した最適なスケジュールを導き出します。

4.5. 配車ルート

ほとんどのロジスティクス企業では、1つの主要なタスクは車両のルーティングです。 ここでは、車両のフリートを使用して、さまざまなクライアントに商品をルーティングおよび輸送する方法を理解する必要があります。 その結果、遺伝的アルゴリズムを使用して、これらの商品を適切なクライアントに適切なタイミングで輸送するための費用効果の高いルートを導き出します。

4.6. マーケティング

マーケティングでは、多くの顧客や顧客を獲得できるように商品やサービスを宣伝することが主な目的です。 ここでは遺伝的アルゴリズムを使用して、最も多くの顧客を引き付ける製品仕様と属性の最良の組み合わせを導き出します。

4.7. 薬

医学およびバイオインフォマティクスでは、遺伝的アルゴリズムを使用して、超音波およびマンモグラムで良性および悪性腫瘍を識別しています。

5. 結論

この記事では、最初に進化を定義し、次に遺伝的アルゴリズムを定義しました。 基本的なコンポーネントとそれらがどのように機能するかについて説明しました。 最後に、これらのアルゴリズムの実際のアプリケーションをいくつか確認しました。