用cplex解决时如何设置差距

时间:2012-03-05 14:27:54

标签: c++ mathematical-optimization linear-programming cplex integer-programming

我正在用c ++编写代码并调用CPLEX来解决它。它很快找到了一个非常好的解决方案,但需要很长时间才能改进它。所以我想将间隙设置为更大的值以终止代码,这就是我使用的:

    cplex_model.setParam(EpGap, 0.01);

但编译器给出了一个错误,指出EpGap是未声明的标识符。相对差距的默认名称是什么?

2 个答案:

答案 0 :(得分:5)

EpGap是IloCplex类中枚举的一部分

cplex_model.setParam(IloCplex::EpGap, 0.01);

答案 1 :(得分:-1)

cplex_model.setParam(IloCplex::EpGap, 0.01);是正确的

如果EpGap是1(1%),它会进入下一个可行的解决方案,它会产生1%或更低的二元性差距,所以一旦它低于1%,它应该停止并给你解决方案。所以在你的情况下,它可能来自二元性差距> 1%至0.43%!