0

我正在尝试在 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 问题有什么问题?

4

0 回答 0