COIN-OR の CBC ソルバーを使用して、いくつかの数値最適化問題を解決しています。PuLP を介して Python で最適化問題を構築しています。
GUROBI や CPLEX などのソルバーがログ ファイルを作成することに気付きましたが、(オプティマイザーの進行状況を画面に出力するのではなく) CBC にログ ファイルを作成させる方法がわかりません。
ログファイルを設定するCBCのオプションを知っている人はいますか? すべての stdout をファイルにリダイレクトしてもうまくいきません。これは、多数の問題を並行して解決していて、それらのログ ファイルを分けておきたいからです。
ソルバーを呼び出す方法の例を次に示します。これはうまく機能し、進行状況を端末に出力します。
prob.solve(pulp.COIN_CMD(msg=1, options=['DivingVectorlength on','DivingSome on']))
これは、ソリューションをどのように構成する必要があると私が考えるかです (ただし、明らかにLogFileNameは有効な CBC オプションではありません)。
prob.solve(pulp.COIN_CMD(msg=1, options=['DivingVectorlength on', 'DivingSome on', 'LogFileName stats.log']))
これに関するヘルプは大歓迎です。私はこれを理解しようとして、インターネット、ドキュメント、および CBC のインタラクティブ セッションを何時間も調べてきました。