我正在用c ++编写代码并调用CPLEX来解决它。它很快找到了一个非常好的解决方案,但需要很长时间才能改进它。所以我想将间隙设置为更大的值以终止代码,这就是我使用的:
cplex_model.setParam(EpGap, 0.01);
但编译器给出了一个错误,指出EpGap
是未声明的标识符。相对差距的默认名称是什么?
答案 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%!