我有一个优化问题,我写了一个python程序来解决它。我用纸浆与CPLEX求解:如何防止纸浆和蟒蛇不可行的错误?
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':
...