Global Optimization Toolbox

最適化問題の解決

ソルバーを選択し最適化問題を定義して、アルゴリズムの動作、許容誤差、停止条件、可視化、カスタマイズのオプションを設定します。

最適化手法のモデル化と選択

問題記述を数学形式に変換して、最適化手法で解くことができるようにします。問題ベースの手法を選択し、最適化変数の式を使用して、目的や制約を記述します。次に、自動選択されたソルバーを適用します。または、ソルバーベースの手法を選択し、関数と係数行列を使用して、目的と制約を定義します。

ソルバーと問題の指定

問題ベースまたはソルバーベースのアプローチを用いたライブエディターの [最適化] タスクを使用することで、問題の種類に適したソルバーを選択しやすくなります。

一般的なオプションの設定

選択したソルバーに対する停止条件を設定します。また、最適性および制約の許容誤差を設定します。並列処理による高速化が実装されています。

並列処理による高速化

並列処理による高速化。

中間結果の評価

プロット関数を使用して、最適化の進行状況をリアルタイムで監視します。独自に作成した関数も、用意されている関数も使用できます。また、出力関数を使用すると、独自の停止条件の作成、ファイルへの結果の書き込み、ソルバーを実行するアプリの作成が可能です。

パターン探索用カスタム プロット関数

パターン探索用カスタム プロット関数。

大域的探索とマルチスタート

勾配に基づいたソルバーを適用して、大域的最小値の探索で複数の開始点から局所的最小値を見つけます。その他の局所的または大域的最小値は返されます。また、制約なしおよび制約付きの平滑問題の解を求めます。

ソルバーの比較

大域的探索を使用して複数の開始点を生成し、これに非線形ソルバーを開始する前に選択すると、高品質な解を得やすくなります。マルチスタートを使用すると、局所的ソルバーおよびさまざまな開始点作成方法を選択できます。

大域的探索とマルチスタートの結果

大域的探索とマルチスタートの結果。

マルチスタートのオプションの選択

非線形ソルバーを指定します。開始点の生成方法を選択するか、またはユーザー定義セットを使用します。並列処理による高速化が実装されています。

サロゲートの最適化

長時間を要する目的関数の大域的最小値を探索します。このソルバーで目的関数への近似が構築され、評価および最小化が高速で実行されますす。

オプションの選択

初期サロゲートを構成するため、開始点のセットおよびオプションの目標値を指定します。サロゲートで使用する点の数および最小標本距離を設定します。並列処理による高速化が実装されています。

標本点、適応点、最高点をプロットする組み込み機能

標本点、適応点、最高点をプロットする組み込み機能。

パターン探索

現在の点から開始し、一連のベクトルを追加して新しい試行点を取得します。試行点の目的関数を評価し、その情報を使用して現在の点を更新します。現在の点が最適になるまで繰り返します。

問題の指定

制約なし問題、または範囲、線形、非線形の制約問題に適用します。この目的関数および制約関数は、微分可能関数または連続関数である必要はありません。

ホワイト山地のワシントン山の頂上を決定

ホワイト山地のワシントン山の頂上を決定。

オプションの選択

アルゴリズム オプションの中から選択して、最も効率的な解を取得します。最適化を監視するプロット関数を選択します。並列計算で高速化します。

関数の値および評価をプロットする組み込み機能

関数の値および評価をプロットする組み込み機能。

遺伝的アルゴリズム

生物の再生における遺伝子配列をモデル化した法則を用い、複数の個体からなる母集団を繰り返し置き換えていくという、生物学上の進化の原理を模倣した手法で、大域的最小値を探索します。

オプションの選択

作成、適応度スケーリング、選択、交差、突然変異のオプションを選択します。また、母集団のサイズ、エリート個体数、交差率を指定します。並列処理による高速化が実装されています。

複数の局地的最小値を持つ関数

複数の局地的最小値を持つ関数。

カスタマイズ

作成、選択、突然変異に使用するオリジナルの関数を作成できます。カスタム データ型を使用すると問題を容易に表現できます。2 つ目の最適化アルゴリズムを適用すると、解を調整できます。

巡回セールスマン問題

巡回セールスマン問題。

粒子群

昆虫の群れの行動をヒントとしたアルゴリズムを使用して大域的最小値を探索します。各粒子が、それまでの時点にそれぞれの粒子および群れが発見した最良の位置に基づいて速度と方向を決定して移動します。

問題の指定

制約なし問題または範囲制約問題に適用します。この目的関数は、微分可能関数または連続関数である必要はありません。

各粒子が 5 回移動した経路を表示

各粒子が 5 回移動した経路を表示。

オプションの選択

慣性による調整の重み、および粒子と群れによる調整の重みを設定し、速度計算を調整します。また、近傍のサイズを設定します。並列処理による高速化が実装されています。

粒子群を使用した最適化

組み込み済みのプロット関数。

カスタマイズ

初期の群れを作成するオリジナルの関数を作成できます。2 つ目の最適化アルゴリズムを適用すると、解を調整できます。

粒子群のオプション

確率関数に基づく粒子群。

シミュレーテッド アニーリング

焼きなまし (アニーリング) の物理過程を模倣する確率的探索アルゴリズムを使用して、大域的最小値を探索します。 焼きなまし処理では、材料を加熱した後に徐々に冷却して欠陥を軽減し、系のエネルギーを最小化します。

問題の指定

制約なし問題または範囲制約問題に適用します。この目的関数は、微分可能関数または連続関数である必要はありません。

多数の局地的最小値を持つ関数

多数の局地的最小値を持つ関数。

オプションの選択

適応シミュレーテッド アニーリング、ボルツマン アニーリング、または高速アニーリングのいずれかのアルゴリズムを選択します。

シミュレーテッド アニーリングのオプション

シミュレーテッド アニーリングの可視化。

カスタマイズ

アニーリング処理、受け入れ基準、および温度スケジュールを定義する関数を作成します。カスタム データ型を使用すると問題を容易に表現できます。2 つ目の最適化アルゴリズムを適用すると、解を調整できます。

マルチプロセッサのスケジュール

マルチプロセッサのスケジュール。

多目的最適化

一連の非支配解であるパレート フロントを識別して、複数の目的を持つ問題および範囲、線形、非線形の制約問題の解を求めます。パターン探索または遺伝的アルゴリズムのいずれかのソルバーを使用します。

ソルバーの比較

多目的パターン探索アルゴリズムを使用してパレート フロントを生成すると、多目的遺伝的アルゴリズムを使用する場合よりも評価する関数の数を少なく抑えることができます。遺伝的アルゴリズムでは、生成される点の範囲が広くなります。

パターン探索オプションの選択

一連の開始点を指定します。また、パレート セットのサイズ、最小ポーリング比、および体積変化に対する許容誤差を指定します。2 次元および 3 次元のパレート フロントを自動的にプロットします。並列処理による高速化が実装されています。

目的が 3 つの場合のパレート面

目的が 3 つの場合のパレート面。

遺伝的アルゴリズムのオプションの設定

比を個別に指定し、最も優秀なパレート フロントを維持します。また、2 次元のパレート フロントを自動的にプロットします。並列処理による高速化が実装されています。

目的が 2 つの場合のパレート フロント

目的が 2 つの場合のパレート フロント。