1

現在、私は MATLAB を使用して、私が扱ってきた問題を解決しています。私の MATLAB コードでは、CPlex または GUROBI ソルバーを呼び出して、大規模な線形計画問題を解決しています。MATLAB コードの各呼び出しで、CPlex または GUROBI が 10^5 回以上呼び出されます。これにより、計算負荷が高くなり、より大きな問題を解決するには時間がかかりすぎます。ただし、別のプログラミング言語に切り替えたいのですが、

  • これらのいずれか (CPlex または GUROBI ) を呼び出すことができる、
  • これらのソルバー (CPlex または GUROBI ) の 1 つ (CPlex または GUROBI ) を何度も (たとえば 10^6 回) 呼び出すことができ、各呼び出しでパフォーマンスを大幅に低下させず、実行時間を大幅に増加させることもありません。
  • 動的配列を使用できます (つまり、コードを実行すると、いくつかのユーザー パラメーターが取得され、実行ごとに異なるサイズの行列が定義されます)。
  • 配列の配列ではなく、多次元配列を定義できます。

この時点で、私は3つのオプションを見つけました

  1. Fortran: まったく問題ないように見えますが、ソルバーを何度も効率的に呼び出すことができるかどうか、いくつか懸念があります。CplexでFortranしか使えないようです。私は Fortran+GUROBI をググったが、結果は心強いものではなかった。

  2. Visual Basic .NET : Visual Basic では Cplex と GUROBI の両方を呼び出すことができるようですが、パフォーマンスについてはわかりません。

  3. Python: CPlex および GUROBI と統合可能。

結論として、前進するためにあなたの提案をお願いします。私の好みは、GUROBI と CPlex の両方を使用できるプログラミング言語から始めることです。

4

1 に答える 1