最近在使用Visual Studio 2015调用CPLEX进行一些基础问题的求解,初学小白,完全没经验,遇到N多问题,踩了好多坑,在此分享一下!希望可以给后其他研究者提供一neinei学习的经验!
1.关于CPLEX中默认变量的问题
CPLEX中默认变量为非负值,故在实际编码过程中如若不为变量指定下界为负无穷,且变量存在负值情况,则会出现计算数据错误的情况。
具体解决方法就是在初始化的过程中,为其指定一个值域范围的下界即可,或者可以直接指定一个大范围,如可以使用-LONG_MAX指定下界。代码实现如下:
for (int t = 0; t <= N; t++)
B[t] = IloNumVar(env, -LONG_MAX, LONG_MAX);
2.关于出现约束错误的问题。
Row 'c8' infeasible, all entries at implied bounds