从python调用CPLEX时如何创建日志文件

时间:2018-07-31 08:18:33

标签: python-3.x cplex

https://www.ibm.com/support/knowledgecenter/SSSA5P_12.6.2/ilog.odms.cplex.help/CPLEX/GettingStarted/topics/tutorials/InteractiveOptimizer/solnOptions.html 网站上 我知道CPLEX解决问题时,它将创建一个名为“ cplex.log”的日志文件,但是当我使用CPLEX解决python中的问题时,并未创建此文件。我很困惑,如果这个问题与语言差异有关。我的意思是,当使用CPLEX解决MATLAB,Java或C ++中的问题时,将创建日志文件,但不会在python中创建日志文件。 我期待您的帮助。非常感谢。

1 个答案:

答案 0 :(得分:0)

offeredLetters.Reverse();文件特定于CPLEX Interactive。使用其他API(例如Python,Java等)时,不会自动创建 。但是,您可以自己执行以下操作(例如,使用Python API)创建它:

cplex.log

cpx = cplex.Cplex() cplexlog = "cplex.log" cpx.set_results_stream(cplexlog) cpx.set_warning_stream(cplexlog) cpx.set_error_stream(cplexlog) cpx.set_log_stream(cplexlog) 方法的参数可以是路径(如上)或类似文件的对象,因此您可以做任何您想做的事(例如,实现类似文件的对象以在标准输出,但也将其写入日志文件等)。有关更多详细信息,请参见set_results_stream的文档。

注意:交互显示的某些输出在其他API中不可用。但是,您应该能够轻松地重新创建它,因为所有信息都可以通过编程API获得。