I'm using cplex to solve a nonconvex MIQP, with the optimality target set to the global solution (CPXPARAM_OptimalityTarget = 3).
I'm getting drastically different solutions (.2135 vs .4197), depending on whether I use cplex v12.10 or v20.1. In both cases, the solution is reported as being within tolerance, and they can't both be within tolerance of the global solution.
When you set the optimality target to find the global solution, and it reports that the solution is integer optimal or within tolerance, is it really the global solution? I'm having a hard time reconciling how the answers could be so different unless the solver is getting stuck in a local optimum. Is there some other reason this might occur?
The problem has 205 integer variables and 2 continuous variables. The quadratic matrix has simple structure -- the submatrix corresponding to the 205 integer variables is diagonal.