我正在使用 cvxpy,自从更新到 1.0.6 以来,我在调用 GLPK 时得到了不需要的输出。
import cvxpy as cvx
x = cvx.Variable(2)
p = cvx.Problem(cvx.Minimize(x[0]), [x[0] + x[1] == 1, x[0] - x[1] >= 1])
p.solve(solver = cvx.GLPK)
Run Code Online (Sandbox Code Playgroud)
在 IPython3 中,这会创建输出
GLPK Simplex Optimizer, v4.61
2 rows, 2 columns, 4 non-zeros
0: obj = 0.000000000e+00 inf = 2.000e+00 (2)
1: obj = 1.000000000e+00 inf = 0.000e+00 (0)
* 2: obj = 1.000000000e+00 inf = 0.000e+00 (0)
OPTIMAL LP SOLUTION FOUND
Out[5]: 1.0
Run Code Online (Sandbox Code Playgroud)
在 0.4.11 中,我只得到了1.0打印,我想恢复这种行为。对于其他求解器,有该verbose选项,但对于 GLPK,这不会改变任何内容。两者产生相同的输出。
p.solve(solver = cvx.GLPK, verbose = False)
p.solve(solver = cvx.GLPK, verbose = True)
Run Code Online (Sandbox Code Playgroud)
任何想法,如何停止输出?
PS:我想用单纯形法。如果另一个求解器提供了这个,那将是一种解决方法。
| 归档时间: |
|
| 查看次数: |
477 次 |
| 最近记录: |