Optimization Toolbox
線形、二次、整数および非線形の最適化問題の解決
Optimization Toolbox™ は、制約を満たしながら目標を最小化または最大化するパラメーターを見つけるための機能を提供します。このツールボックスには、線形計画法 (LP)、混合整数線形計画法 (MILP)、二次計画法 (QP)、 非線形計画法 (NLP)、制約付き線形最小二乗法、非線形最小二乗法、および非線形方程式などのソルバーが含まれています。関数と配列を使用して、あるいは基礎的な数学が反映された変数式を指定することにより、最適化問題を定義できます。
このツールボックスのソルバーを使用して、連続および離散問題の最適解の検出、トレードオフ解析の実行、アルゴリズムやアプリケーションへの最適化手法の組み込みを行うことができます。また、パラメーターの推定、コンポーネントの選択、およびパラメーターの調整を含む、設計最適化タスクを実行できます。ポートフォリオ最適化、リソース割り当て、運用計画とスケジューリングなどの用途で最適なソリューションを見つけることができます。
詳細を見る:
モデリング
最適化変数、目的、および制約を定義して問題の記述を数学の形式に変換し、最適化の手法による解決を可能にします。
問題ベースでの最適化
目的と制約を MATLAB で、数式を反映する式で記述します。最適化変数、数学的演算子、行列演算、および変数の関数を用いてこれらを構築します。自動的に選択されたソルバーが適用されます。
ソルバーベースの最適化
目的と制約を MATLAB で、非線形の場合は関数を、線形の場合は係数行列を使用して記述します。行列演算、数学的演算子、および関数を用いてこれらを構築します。最適なソルバーを適用します。
ソルバーの選択
最適化問題における目的と制約のタイプに従って、非線形、2 次多項式、線形、最小二乗、または多目的ソルバーを使用して解決します。問題ベースのアプローチにおいて、ソルバーが自動的に選択されます。
オプションの設定
最適化オプションを設定して最適化プロセスを調整します。たとえば、ソルバーによって選択された最適化アルゴリズムを選択、または一連の終了条件を選択します。オプションを設定して最適化ソルバーの進捗を監視してプロットします。
結果のレビューと改善
最適化の測定値と反復表示をレビューして解決方法を評価します。終了メッセージのリンクを使用して詳細を確認します。勾配を入力する、または勾配推定のため並列演算を使用することで、非線形問題における性能を改善します
ソルバー
準ニュートン、信頼領域、または Nelder-Mead シンプレックス アルゴリズムを適用して制約のない問題を解決します。内点法、逐次二次計画法 (SQP)、または信頼領域 Reflective 法を適用して制約のある問題を解決します。
用途
パラメーターの見積もりと調整、最適化設計の探索、最適軌跡の算出、頑強なポートフォリオの構築、および変数間に非線形の関係があるその他の用途に非線形最適化を使用します。
用途
リソース割り当て、生産計画、混合、および投資計画などの問題に線形計画法を使用します。設計の最適化、ポートフォリオの最適化、および水力ダムの制御などの問題に二次計画法を使用します。
ソルバー
前処理、可能な点を生成するヒューリスティック、面の切断を含む、分岐限定法アルゴリズムを使用して混合整数線形問題を解決します。
用途
変数値が整数でなければならない場合に加え、オン/オフの決定または論理制約がある場合は整数変数でモデル化します。ルート決定、スケジュール、計画、割り当て、および予算編成などがよくある用途です。
ソルバー
目標達成またはミニマックスとして問題を定式化します。各目的に対して目標値 (オプションで重み付け済み) がある場合は、目標達成を使用します。一連の目的関数の最悪値を最小化するにはミニマックスを使用します。
用途
2 つ以上の矛盾する目的の間でトレードオフが必要な場合は、多目的最適化を使用します。構造設計での重量と強度、およびポートフォリオ最適化でのリスクとリターンが一例になります。
ソルバー
レーベンバーグ・マルカート法、信頼領域、または内点法アルゴリズムを適用します。
線形最小二乗の用途
パラメーターが範囲制約と線形制約を持つ場合など、データ取得のために線形モデルを近似させる、または線形数式のシステムを解決するために線形最小二乗ソルバーを使用します。
非線形最小二乗の用途
パラメーターが範囲制約を持つ場合など、データ取得のために非線形モデルを近似させる、または非線形数式のシステムを解決するため、非線形最小二乗ソルバーを使用します。
MATLAB Compiler のサポート
MATLAB Compiler™とMATLAB Compiler SDK™を使用して MATLAB 最適化モデルを、スタンドアローンの実行可能ファイル、Web アプリ、C/C++ 共有ライブラリ、Microsoft®.NET アセンブリ、 Java®クラス、および Python®パッケージとして展開します。
コード生成
fmincon
による非線形制約最適化問題の解法を C/C++ で生成
(要 MATLAB Coder)
最適化モデル
最適化変数や有理式による非線形最小二乗問題や非線形方程式系の現
最適化の解決
非線形最小二乗問題や非線形方程式系に対し、ソルバーを自動選択
これらの機能および対応する関数の詳細については、リリースノートを参照してください。