問題タブ [docplex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
107 参照

python - docplex の例を実行しようとしたときの BrokenProcessPool エラー

Python プロセス プールと並行していくつかの cplex モデルを実行しようとしています。Windows 10-spyder 3.6.9でdocplexを使用したプロセスプールの例としてこれを実行しようとしました。実行すると、次のエラーが発生します。

別のマシンを使用して max_worker を 1 に設定してみましたが、役に立ちませんでした。

編集: より明確にするために使用しているコードを配置します。これは私の process_pool.py です:

これは、内部に cplex モデルがあり、process_pool を使用する zoomontecarlo2.py です。

エンジンが「for future in concurrent.futures.as_completed(future_to_i)」ループ内に入ると、メモリ情報は次のようになります。

svmem(合計=17091981312、使用可能=9288286208、パーセント=45.7、使用=7803695104、空き=9288286208)

「res = future.result()」に到達すると、上記のエラーでクラッシュします。

0 投票する
1 に答える
193 参照

python-3.x - cplex 制約によってモデルのスローが遅くなるのはなぜですか?

解決しようとしている MILP モデルがあります。この質問について前に説明した 新しい制約があります。私の新しい制約は次のとおりです。

場合: y[(i,j,k)]==1

次に : y[(j,i,k+1)] ,y[(j,i,k+2)],y[(j,i,k+3)] ,y[(j,i,k+ 4)],y[(j,i,k+5)],y[(j,i,k+6)],y[(j,i,k+7)],y[(j,i, k+8)==0 .

この制約を次のようにモードに設定します。

しかし、この新しい制約条件でモデルを実行すると、モデルの解決が非常に遅くなります。制約に何か問題がありますか?それとも、モデルをより速く解決できるように制約を変更する方法はありますか?

編集: このように条件を設定すると、実行時間は速くなりますが、モデルはソリューションの if then 制約を尊重しません。私のコード: