如何静默cvxopt解算器[Python]?

时间:2014-10-17 01:42:19

标签: python module silent cvxopt

每当我在终端中运行Python cvsopt解算器时,它都会打印:

     pcost       dcost       gap    pres   dres
 0: -8.0742e+00 -7.3715e+00  3e+03  5e+01  4e-15
 1: -6.6241e-01 -7.2834e+00  7e+01  1e+00  3e-15
......
Optimal solution found.

我可以沉默这个消息吗?谢谢!

2 个答案:

答案 0 :(得分:9)

在调用求解器之前,只需添加以下行:

solvers.options['show_progress'] = False

答案 1 :(得分:4)

您可能需要传递特定于您正在使用的特定解算器的选项。例如,要为GLPK静默cvxopt LP解算器输出:添加选项

options={'glpk':{'msg_lev':'GLP_MSG_OFF'}}

E.g。 result = cvxopt.solvers.lp(c, G, h, A, b, solver='glpk', options={'glpk':{'msg_lev':'GLP_MSG_OFF'}})。你可能最好使用不那么激进的输出减少,参见所有允许的消息级别http://glpk-java.sourceforge.net/apidocs/org/gnu/glpk/GLPKConstants.html