首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docplex!中断执行

Docplex!中断执行
EN

Stack Overflow用户
提问于 2021-06-09 17:39:53
回答 1查看 58关注 0票数 0

我用cplex python (docplex)执行了一个程序,它已经达到了48%的差距,有41个解决方案。已经2天了,我问我是否可以中断它并得到一个结果,而不是重新启动具有限制间隙的执行。

EN

回答 1

Stack Overflow用户

发布于 2021-06-09 22:54:56

如果你在Windows上运行,你可以尝试CTRL C

如果这不起作用,

你可以做的就是每次用一个新的解决方案再次运行你的模型,然后保存当前的解决方案,然后每次中止你都有最新的解决方案

使用zoo story的示例

代码语言:javascript
复制
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

这就给了我们

代码语言:javascript
复制
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
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67901503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档