[英]Docplex ! Interrupt the execution
我在 cplex python (docplex) 中執行了一個程序,它與 41 個解決方案的差距為 48%。 已經 2 天了,我問我是否可以中斷它並獲得結果,而無需重新開始執行限制間隙。
如果您在 Windows 上運行,您可以嘗試 CTRL C
如果這不起作用,
您可以做的是每次使用 1 個新解決方案再次運行您的 model,然后保存當前解決方案,然后每次中止您都有最新的解決方案
動物園故事的例子:
from docplex.mp.model import Model
from docplex.mp.progress import *
mdl = Model(name='buses')
nbbus40 = mdl.integer_var(name='nbBus40')
nbbus30 = mdl.integer_var(name='nbBus30')
mdl.add_constraint(nbbus40*40 + nbbus30*30 >= 300, 'kids')
mdl.minimize(nbbus40*500 + nbbus30*400)
mdl.parameters.mip.limits.solutions=1
while mdl.solve(log_output=False):
for v in mdl.iter_integer_vars():
print(v," = ",v.solution_value)
print("status : ",mdl.solve_details.status)
if ("optimal solution" in str(mdl.solve_details.status)):
break
這給了
nbBus40 = 8.0
nbBus30 = 0
status : solution limit exceeded
nbBus40 = 7.0
nbBus30 = 1.0
status : solution limit exceeded
nbBus40 = 6.0
nbBus30 = 2.0
status : integer optimal solution
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.