多目的問題を解決する必要がありますが、CPLEXとMatlabのどちらを使用すべきかわかりません。両方のツールの長所と短所を説明できますか。どうもありがとうございます!
4 に答える
これは、CPLEX と MATLAB のどちらかを決定するのではなく、複数の目的がある場合に最適なモデリング アプローチを選択するという問題です。
多基準 意思決定は、それ自体がサブフィールド全体です。http://en.wikipedia.org/wiki/Multi-objective_optimizationをご覧ください。
アプローチを決定し、問題を定式化すると (複数の目的を重み付けされた目的にまとめるか、一連の線形プログラムとして)、いずれかのツールがその仕事をしてくれます。
読者は MATLAB に精通しているため、まず MATLAB を使用して一連の線形計画法 (ゴール プログラミング法) を解くことから始めることができます。Mathworks によるこのページには、ステップバイステップの詳細が記載されたいくつかの例があります。
cplex はパレート型の多目的関数を解くことができますか? 私が知っているのは、辞書編集オブジェクトを定義することで単純な目標プログラミングを解決できるか、重み付き合計を使用して感度情報で重みを徐々に変更し、重みに大きく依存し、非常に主観的に見えるパレート フロントを「列挙」することです。
ここでは、cplex が双目的関数をどのように解決するかを参照できますが、これは良くないようです。
ランキングを含む真のパレート方法については、一部の GA バリアントが NSGA-II のように実行できることしか知りません。