0

ネストされた For ループをいくつか実行しており、その中でいくつかの If-Else 条件を実行しています。assertコードのどこにも使用していません。しばらく実行すると、プログラムはアサーション エラーをスローします。

Assertion failed: ptr < end

Error detected in file ..\src\bflib\sgf.c at line 146

これは、GNU Linear Programming Kit別のライブラリからインポートされた一部ですCOBRApy。私がインポートしました。

Try-Catch セットアップを試しましたが、うまくいきませんでした。また、フラグを付けてコードを実行しようとしました-Oが、それもうまくいきませんでした。私の推測では、ライブラリによってスローされた例外をキャッチできないということです。どうやってやるの?他の提案はありますか?

4

1 に答える 1

1

I remember having the same problem as well when using GLPK in combination with COBRApy on a computer running Linux. GLPK would work fine most of the time, but when performing large numbers of optimizations I would always get this error eventually. The problem seems to be in GLPK, not in COBRApy, but unfortunately I was never able to resolve it.

My only recommendation is to use one of the many other solvers that are supported by COBRApy. If you are in some way connected to academia, Gurobi, Mosek and CPLEX all offer free licenses. Specifically, I have found both Gurobi and Mosek to work perfectly with COBRApy and the process of installing and obtaining licenses is really easy.

他のソルバーを使用する方法を見つけた場合、GLPK を使用する理由はありません (おそらく利便性以外に)。

于 2015-10-16T12:16:55.717 に答える