我正在尝试在 CVXPY 中使用 ECOS 解决以下 LP。但它告诉我'''求解器'ECOS'失败。尝试其他求解器,或使用 verbose=True 求解以获取更多信息。''' 当我尝试“verbose=True”时,它显示:
''' 检测到不可靠的搜索方向,恢复最佳迭代 (0) 并停止。
数值问题(达到 feastol=1.7e+00,reltol=-nan(ind),abstol=3.9e+02)。运行时间:0.663398 秒。''' 这是我的代码:'''
cons = np.array([[ 1, 0, 0, 0, 0, 0, 0],\
[ -1, -0, -0, -0, -0, -0, -0],\
[-160, 1, 0, 0, 0, 0, 0],\
[ 40, -1, 0, 0, 0, 0, 0],\
[-160, 0, 1, 0, 0, 0, 0],\
[ 40, 0, -1, 0, 0, 0, 0],\
[-160, 0, 0, 1, 0, 0, 0],\
[ 40, 0, 0, -1, 0, 0, 0],\
[-160, 0, 0, 0, 1, 0, 0],\
[ 40, 0, 0, 0, -1, 0, 0],\
[-160, 0, 0, 0, 0, 1, 0],\
[ 40, 0, 0, 0, 0, -1, 0],\
[-160, 0, 0, 0, 0, 0, 1],\
[ 40, 0, 0, 0, 0, 0, -1],\
[ -40, 1, 0, 0, 0, 0, 0],\
[ -55, -1, 0, 0, 0, 0, 0],\
[ -40, -1, 1, 0, 0, 0, 0],\
[ -55, 1, -1, 0, 0, 0, 0],\
[ -40, 0, -1, 1, 0, 0, 0],\
[ -55, 0, 1, -1, 0, 0, 0],\
[ -40, 0, 0, -1, 1, 0, 0],\
[ -55, 0, 0, 1, -1, 0, 0],\
[ -40, 0, 0, 0, -1, 1, 0],\
[ -55, 0, 0, 0, 1, -1, 0],\
[ -40, 0, 0, 0, 0, -1, 1],\
[ -55, 0, 0, 0, 0, 1, -1]])
const = np.array([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])
x = cvx.Variable(7)
temp = [0,3,12,14,16,19]
buji = list(set(list(range(26)))-set(temp))
constraints = [cons[temp]@x==const[temp], cons[buji]@x<=const[buji]]
obj = cvx.Minimize(1)
prob = cvx.Problem(obj, constraints)
prob.solve(verbose=True)
print(prob.status)
'''
这个 LP 问题有什么问题?