最適化の問題があり、それを解決するための Python プログラムを作成しています。CPLEX ソルバーで Pulp を使用しました。
import pulp
prob = LpProblem("myProblem", LpMinimize)
x = pulp.LpVariable.dicts("p", range( K ), 0, 1, pulp.LpContinuous)
prob += pulp.lpSum( x[k] for k in range( K ) )
...
# Rest of the constraints
status = prob.solve( pulp.CPLEX( msg = 0 ) )
エラーが発生します:
File "C:\Anaconda\lib\site-packages\pulp\solvers.py", line 468, in readsol
raise PulpSolverError, "Unknown status returned by CPLEX: "+statusString
pulp.solvers.PulpSolverError: Unknown status returned by CPLEX: infeasible
私の質問は次のとおりです。問題が実行不可能かどうかをテストするにはどうすればよいですか? 問題が実行不可能な場合は0を返すなど、このイベントを防ぎたい.
私は試した :
if prob.status == 'infeasible':
...
そして私は試しました
if pulp.LpStatusInfeasible == 'infeasible':
...