Loading article…
最適化は、数学関数によって記述される入力値と出力値の間の変換を前提として、許容されるセット内から入力値を体系的に選択し、関数の出力を計算し、そのプロセス中に見つかった最適な出力値を記録することによって、利用可能な選択肢のセットから最適なソリューションを生成および選択することを扱います。多くの現実の問題は、この方法でモデル化できます。たとえば、入力はモーターの設計パラメータ、出力は電力消費量です。別の最適化では、入力はビジネス上の選択、出力は得られた利益です。
最適化問題(この場合は最小化問題) は、次のように表すことができます。
連続最適化では、Aはユークリッド空間R nのサブセットであり、多くの場合、 Aのメンバーが満たす必要のある制約、等式、または不等式の集合によって指定されます。組み合わせ最適化では、 A はバイナリ文字列、順列、または整数の集合などの離散空間の サブセットです。
最適化ソフトウェアを使用するには、関数f が適切なプログラミング言語で定義され、コンパイル時または実行時に最適化ソフトウェアに接続されている必要があります。最適化ソフトウェアはAに入力値を提供し、 f を実現するソフトウェア モジュールは計算された値f ( x ) を提供し、場合によっては導関数などの関数に関する追加情報も提供します。
このようにして、明確な関心の分離が実現されます。つまり、異なる最適化ソフトウェア モジュールを同じ関数fで簡単にテストしたり、特定の最適化ソフトウェアを異なる関数fに使用したりできます。
次の表は、ライセンスとビジネス モデルの種類別に整理された注目すべき最適化ソフトウェアのリストを示しています。
無料のオープンソースソフトウェア
アプリケーション
ソフトウェアライブラリ
独自ソフトウェア
- AIMMS – GUI 構築機能を含む最適化モデリング システム。
- ALGLIB – C++ および C# インターフェイスを備えたデュアル ライセンス (GPL/商用) の制約付き二次および非線形最適化ライブラリ。
- Altair HyperStudy – 実験計画法と多分野にわたる設計最適化。
- AMPL – 大規模な線形、混合整数、非線形最適化のためのモデリング言語。
- ANTIGONE –決定論的グローバル最適化MINLP ソルバー。
- APMonitor – MATLAB、Python、Julia へのインターフェースを備えた、大規模、非線形、混合整数、微分、代数方程式のモデリング言語および最適化スイート。
- Artelys Knitro – 連続および混合整数計画法のための大規模な非線形最適化。
- ASTOS – 打ち上げ、再突入、および一般的な航空宇宙問題のための航空宇宙軌道最適化ソフトウェア。
- BARON – 代数非線形問題および混合整数非線形問題の最適化。
- COMSOL Multiphysics – クロスプラットフォームの有限要素解析、ソルバー、およびマルチフィジックス シミュレーション ソフトウェア。
- CPLEX – 連続変数または整数変数を使用した線形および二次計画法 (MIP) のソルバー。
- FEATool Multiphysics – MATLAB 用の FEA GUI ツールボックス。
- FICO Xpress – 連続変数または整数変数を使用した線形および二次計画法 (MIP) のソルバー。
- FortMP – 線形計画法と二次計画法。
- FortSP – 確率的プログラミング。
- GAMS – 一般代数モデリング システム。
- Gurobi Optimizer – 連続変数または整数変数を使用した線形および二次計画法 (MIP) のソルバー。
- HEEDS MDO – ハイブリッド適応型最適化アルゴリズムである SHERPA を使用した多分野にわたる設計最適化。
- IMSL 数値ライブラリ– 標準プログラミング言語 C、Java、C# .NET、Fortran、Python で実装された線形、二次、非線形、スパース QP および LP 最適化アルゴリズム。
- IOSO (自己組織化に基づく間接最適化) – 多目的、多次元の非線形最適化テクノロジー。
- Kimeme – 多目的最適化と多分野設計最適化のためのオープン プラットフォーム。
- LINDO – (線形、対話型、および離散最適化) 線形計画法、整数計画法、非線形計画法、確率的計画法、およびグローバル最適化のためのソフトウェア パッケージ。Excel アドインの「What's Best!」は、LINDO を使用して線形、整数、および非線形の最適化を実行します。
- LIONsolver –データマイニング、分析、モデリング、学習、インテリジェント最適化、およびリアクティブビジネスインテリジェンスアプローチのための統合ソフトウェア。
- modeFRONTIER – 多目的かつ多分野にわたる最適化のための統合プラットフォームであり、サードパーティのエンジニアリング ツールとのシームレスな連携を提供し、設計シミュレーション プロセスの自動化を可能にし、分析による意思決定を容易にします。
- Maple – 線形、二次、非線形、連続および整数の最適化。制約付きおよび制約なし。アドオン ツールボックスによるグローバル最適化。
- MATLAB – Optimization Toolboxを使用した線形、整数、二次、非線形の問題、複数の最大値、複数の最小値、および非滑らかな最適化問題、モデル パラメーターの推定と最適化。
- MIDACO は、進化的コンピューティングに基づく単一および複数目的の最適化のための軽量ソフトウェア ツールです。C/C++ および Fortran で記述されており、Excel、VBA、Java、Python、Matlab、Octave、R、C#、Julia へのゲートウェイを備えています。
- Mathematica – 大規模な多変量制約付きおよび制約なし、線形、二次および非線形、連続、および整数の最適化。
- ModelCenter – 統合、自動化、設計最適化のためのグラフィカル環境。
- MOSEK – 線形、二次、円錐、凸の非線形、連続、整数最適化。
- NAG – 線形、二次、非線形、線形または非線形関数の二乗和、線形、スパース線形、非線形、制限付きまたは制約なし、ローカルおよびグローバル最適化、連続問題または整数問題。
- NMath – 線形、二次、非線形計画法。
- Octeract エンジン–決定論的グローバル最適化MINLP ソルバー。追加機能の計画があります。
- OptimJ – Java ベースのモデリング言語。プレミアム エディションには、Mosek および CPLEX ソルバーのサポートが含まれています。
- Optimus プラットフォーム– Noesis Solutions が開発したプロセス統合および設計最適化プラットフォーム。
- optiSLang – CAE ベースの感度解析、最適化、堅牢性評価のためのソフトウェア ソリューション。
- OptiY – 不確実性、信頼性、堅牢性、感度分析、データマイニング、メタモデリングのための最新の最適化戦略と最先端の確率アルゴリズムを提供する設計環境。
- OptiStruct – 概念設計の統合と構造の最適化のための受賞歴のある CAE テクノロジー。
- OptQuest – 離散イベント シミュレーション ソフトウェアと組み合わせたシミュレーション ベースの最適化のためのメタヒューリスティック ベースの最適化プラグイン。
- PottersWheel – 常微分方程式におけるパラメータ推定 (MATLAB ツールボックス、学術的使用は無料)。
- pSeven – DATADVANCEが開発した、エンジニアリング シミュレーションと分析、多分野にわたる最適化、データ マイニングの自動化のためのソフトウェア プラットフォーム。
- SAS – 高度な分析 (統計、予測、機械学習、最適化など)、ビジネス インテリジェンス、顧客インテリジェンス、データ管理、リスク管理などのために SAS Institute が開発したソフトウェア スイート。
- SmartDO – コンピュータ支援エンジニアリング (CAE) に特化した、多分野にわたるグローバル設計最適化。直接グローバル検索アプローチを使用します。
- SNOPT – 大規模な最適化問題。
- The Unscrambler – 製品配合およびプロセス最適化ソフトウェア。
- TOMLAB – MATLABのグローバル最適化、整数計画法、すべての種類の最小二乗法、線形、二次、および制約なし計画法をサポートします。TOMLAB は、 CPLEX、SNOPT、KNITRO、MIDACOなどのソルバーをサポートします。
- VisSim –動的システムのシミュレーションと最適化のためのビジュアルブロック ダイアグラム言語。
- WORHP – 連続非線形最適化のための大規模スパース ソルバー。
フリーウェア/学術利用は無料
- エイムズ
- アンプル
- APMonitor – PythonとMATLAB の統合により、学術的および商業的な使用が無料です。
- アストス
- CPLEX
- Couenne – Eclipse Public License に基づいてライセンスされた、MINLP の決定論的グローバル最適化のためのオープンソース ソルバー。
- FICOエクスプレス
- ガラハッド図書館
- 月光
- Gurobi Optimizer - 学術ユーザー向けに無料
- ライオンソルバー
- MIDACO –進化計算に基づく数値最適化のためのソフトウェア パッケージ。
- MINTO –分岐限定アルゴリズムを使用する整数計画法ソルバー。個人使用向けのフリーウェア。
- MOSEK – 大規模最適化ソフトウェア。線形、二次、円錐、凸の非線形、連続、整数の最適化を解決します。
- OptimJ – Java ベースのモデリング言語。無料版には、lp_solve、GLPK、LPまたはMPSファイル形式のサポートが含まれています。
- PottersWheel – 常微分方程式におけるパラメータ推定(学術的使用のための無料 MATLAB ツールボックス)。
- Pyomo – 最適化モデルを作成するための Python ソフトウェア パッケージのコレクション。
- 数値最適化のための UFO Fortran パッケージ
- ワープ
参照
参考文献
- ^ Hall, Julian (2020年9月21日). HiGHS: 線形最適化のための高性能オープンソースソフトウェア(PDF) . エディンバラ、イギリス: エディンバラ大学. 2022年2月27日閲覧。 プレゼンテーション。
- ^ 「プロジェクト」。COIN -OR: オペレーションズ・リサーチのための計算インフラストラクチャ。2014年10月8日。 2021年3月10日閲覧。
- ^ Vanaret, Charlie; Leyffer, Sven (2024 年 9 月 5 日)。Uno、非線形制約付き非凸最適化を統合する次世代ソルバー。アルゴンヌ国立研究所およびベルリン ツーゼ研究所。 プレゼンテーション。
