Hi,

I have a minimization integer problem. Xpress solver solves it for optimal solution. However, sometimes, the solution is less than the LP relaxed solution. When checking the MIP solution graph, it shows than in the middle of the problem, the best bound suddenly drops lower than the LP relaxed bound and a solution is found in that point. I have been struggling with the issue for a couple of weeks but couldn't find the reason. I would really appreciate any idea or comments on it.

Thanks,

Mona

Hi Mona,

First, you should check the Xpress Optimizer output itself, just in case it is the IVE plotting itself that is wrong. To enable the Optimizer output log, you should add the following statement to your model:

setparam("XPRS_VERBOSE", true)

In some rare cases it is possible that the Optimizer will find an integer solution that is slightly "better" than the initial LP relaxation solution. This is because the underlying dual simplex solver is not solving the LP relaxation exactly, but only to within certain feasibility and optimality tolerances. It is therefore entirely possible for the dual simplex solver to find two solutions that differ in objective value, but with both of them satisfying all tolerances. This is particularly possible if the problem is badly scaled.

To prevent the above problem, you should avoid any excessively large or small coefficients, bounds or objective costs in your model. A general rule is that coefficients should be within 1e-6 and 1e+6 and the ratio between largest and smallest coefficient in any row or column should never exceed 1e+6.

Regards,

Michael