PuLP を使用しようとしていますが、4000 個の制約 (67 個の変数) を追加するのに50 秒かかります。問題の解決にはほんの一瞬しかかかりません。
PuLP を使用して、多数の問題セットで複数のソルバーを簡単にテストしたいと考えています。
PuLP にこれほど時間がかかるのでしょうか。PyGLPK を直接使用すると、セットアップと解決の両方を含めてほんの数秒しかかからないので、そうならないことを願っています。PuLP でのこのステップの効率を改善するにはどうすればよいですか?
アップデート
私の制約行列は非常にまばらで、非ゼロの係数のみを含めることで、この特定の問題のセットアップ時間を 4 ~ 5 秒に短縮できました。独自の .lp または .mps 形式のファイルを作成し、cbc または glpsol サブプロセスで問題を解決し、PuLP よりもはるかに効率的にソリューションを解析できます。これは、PuLP の場合に入力ファイルを数ミリ秒で書き込むことができるためです。数秒かかります。これがなぜなのかはまだわかりません。