私は中規模の線形プログラム (70k x 10k のスパース制約行列) に取り組んでおり、多数のシナリオを実行する必要があり、現在の解決時間で ~2,000 CPU 時間が必要です。変更は比較的小さいため (目的関数、別名 c 行列の最大 10% の変更)、ウォーム スタートを使用すると、ソリューション時間が大幅に短縮される可能性があります。パイソン。
linprog
これまで、Matlab と Python のCVXOPT ソルバーで作業してきましたがlp
、CVXOPT 内の GLPK シンプレックス ソルバーを使用すると最高のパフォーマンスが得られました。ただし、GLPKを使用したウォーム スタートは可能ですが、GLPK の CXVOPT ラッパーはウォーム スタートを実装していません。CVXOPT はネイティブソルバーでウォーム スタートをサポートしていますが、これは GLPK でのコールド スタートよりも大幅に遅くなります。PuLPのウォーム スタート オプションや、Python モジュールのウォーム スタートに関するその他のリファレンスを見つけることができませんでした。conelp
GLPK でウォーム スタートを行うために CVXOPT を適応/パッチ適用した経験のある人はいますか、または他の Python 最適化パッケージでウォーム スタートを行う方法を示すことができますか?