2016-07-20 7 views

答えて

0

私はPuLPのエキスパートではありませんが、これは可能です(ただし、どの程度信頼できるかはわかりません)。 CPLEX DLL共有ライブラリを使用してCPLEXパラメータを設定する方法については、ここでhintがあります。 CPLEX_DLLクラスがsetLpAlgorithmメソッドを持っているようパルプ(バージョン1.6.1)の最新バージョンで、それを作るために見えます、しかし

>>>> solver = CPLEX_DLL() 
>>>> CplexDll.CPXsetintparam(solver.env, CPX_PARAM_MIPDISPLAY, 4) 
Good point I would prefer 
>>> solver.CPXsetintparam(CPX_PARAM_MIPDISPLAY, 4) 
As this only requires Knowledge of CPLEX parameters and not Pulp internals 

:私は、これは時代遅れであると考えていますが、ここではそのスレッドから対応するスニペットですこれはより便利です。

>>> from pulp import * 
>>> cplex_dll_path 
'<path_on_your_machine>/libcplex1263.so' 
>>> solver = CPLEX() 
>>> solver.setLpAlgorithm(4) 

<path_on_your_machine>/libcplex1263.soは(パルプモジュールがインストールされているディレクトリに)pulp.cfg.(linux|osx|win)ファイルで設定する必要があります。ここではちょうどあなたの要点を与えるために、一例です。 solver.setLpAlgorithm(4)のマジックナンバー「4」は、CPX_ALG_BARRIERhere参照)に対応します。

CPLEXをより細かく制御したい場合は、CPLEX Python APIを直接使用する方がよいかもしれません(但し、これはPuLPよりも低レベルのAPIです)。あるいは、より高いレベルのdocplexパッケージをチェックしてください。パッケージもクラウド上で解決できます。

関連する問題