CPLEX 显示错误的 "Objective" 和 "BestBound"

CPLEX shows wrong "Objective" and "BestBound"

当我使用 CPLEX 求解 MIQP(具有二次项的混合整数规划)时,我发现进度报告只显示了不正确的 Objective 和 Best Bound。如下所示,Objective 和 Best Bound 小于 -60000 但 Best Integer 为 200+。最好的整数是可能的,但其他的没有意义。

我的objective是(Y1-XW)'(Y1-XW)+(Y2-X (I-W))'(Y2-X(I-W)),其中Y1、Y2为已知向量,X为矩阵,I为单位向量。 W 是具有 453 个变量的向量,其类型都是二进制的。我的目的是找到一个最好的 W 来最小化 objective.

很明显objective值必须>=0,但是当我把线性Obj和二次OBJ放在一起时,事情可能会出错。我还检查了我的输入和 .lp 文件,它们是正确的。我该如何解决?

左侧节点 Objective IInf 最佳整数最佳绑定 ItCnt 间隙

我不知道 CPLEX 对二进制变量做了什么,它可能在其他情况下有效但在我的情况下无效。我尝试了很多方法都失败了,所以我决定修改我的模型,让变量限制在{-1, 0},终于正常了。