Python 找到每个可行的解决方案后,如何停止DoCplex.CP解算器?
亲爱的 目前,我正在使用opldocplex来解决一个使用CP的问题。基本模型是在OPL中构建的,然后我通过DoCplex将其调用到python中。我有以下问题: 1-在OPL模型中,有一些决策表达式(dexpr)没有导入python。我如何才能做到这一点,或者在哪里可以找到导入的dexpr(如果有的话)。 2-如何在找到每个可行的解决方案后停止解算器进行一些后处理,然后再次运行解算器。可能吗 提前谢谢 穆罕默德Python 找到每个可行的解决方案后,如何停止DoCplex.CP解算器?,python,cp,opl,docplex,Python,Cp,Opl,Docplex,亲爱的 目前,我正在使用opldocplex来解决一个使用CP的问题。基本模型是在OPL中构建的,然后我通过DoCplex将其调用到python中。我有以下问题: 1-在OPL模型中,有一些决策表达式(dexpr)没有导入python。我如何才能做到这一点,或者在哪里可以找到导入的dexpr(如果有的话)。 2-如何在找到每个可行的解决方案后停止解算器进行一些后处理,然后再次运行解算器。可能吗 提前谢谢 穆罕默德 如果希望在python代码中看到元组集,可以将dexpr转换为元组集 您可以在O
using CP;
int nbKids=300;
float costBus40=500;
float costBus30=400;
dvar int+ nbBus40;
dvar int+ nbBus30;
minimize
costBus40*nbBus40 +nbBus30*costBus30;
subject to
{
40*nbBus40+nbBus30*30>=nbKids;
}
execute
{
writeln("nbBus40 = ",nbBus40," and nbBus30 = ",nbBus30," and the cost is ",costBus40*nbBus40 +nbBus30*costBus30);
}
main
{
cp.param.SearchType=24;
cp.param.workers=1;
thisOplModel.generate();
cp.startNewSearch();
while
(cp.next()) { thisOplModel.postProcess(); }
}