如何使cplex不输出到终端

时间:2012-07-25 01:00:03

标签: c++ mathematical-optimization linear-programming cplex ilog

我正在使用IBM cplex优化器来解决优化问题,我不希望优化器执行所有终端打印。是否有成员在IloCplex或IloModel类中关闭此功能?这些是关于剪切和迭代的打印。打印到终端是昂贵的,我的问题最终将是数百万变量的数量级,我不想浪费时间与这些多余的输出。感谢。

1 个答案:

答案 0 :(得分:15)

使用cplex / Concert,您可以使用

完全关闭cplex的日志记录到控制台
cpx.setOut(env.getNullStream())

其中cpx是IloCplex对象。您还可以使用setOut函数将日志重定向到文件。

有几个cplex参数可以控制记录的内容,例如MIPInterval将设置在行之间搜索的MIP节点数。例如,将MIPDisplay设置为0将关闭剪切的显示,除非找到新的解决方案,MIPDisplay of 5将显示有关每个lp子问题的详细信息。

与记录相关的参数包括MIPInterval MIPDisplay SimDisplay BarDisplay NetDisplay

使用setParam函数设置参数。

cpx.setParam(IloCplex::MIPInterval, 1000)