Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Wrong solution of MIQP problem [MATLAB]

    Posted 06/30/16 09:04 AM

    Originally posted by: J.M.


    Attached is a MATLAB script which is a minimal runnable excerpt from a bigger project.

    It contains two MIQP problems which are identical except for one modification: In Problem 2 the upper bound on one variable is reduced, compared to Problem 1.

    This would imply that the optimal value of Problem 2 is greater or equal than the optimal value of Problem 1, since the domain of Problem 2 is smaller.

    However, if I run the problem through cplexmiqp, I get the solutions: Problem 1: 6.6061e+03 and Problem 2: -1.9836e+04

    Clearly, the solution to Problem 1 is wrong. I have also put the solution x vector from Problem 2 into the constraints of Problem 1 which shows it is a valid solution.

     

    How can this be? It seems like adding the redundant constraint in Problem 2 helped CPLEX find the optimum. Does cplexmiqp not find global solutions?

     

    This was tested under Windows 7 x64, MATLAB R2015a x64, with both CPLEX 12.6.1 and 12.6.3


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Wrong solution of MIQP problem [MATLAB]

    Posted 07/07/16 08:09 PM

    On x86-64_Linux with 12.6.3, for problem 2, I'm getting exitflag = 5, which corresponds to CPX_STAT_OPTIMAL_INFEAS.  This can mean that the solution looks optimal in the scaled model but looks infeasible after unscaling.  Is that what you're getting too?  That would explain the discrepancy.  Have you tried using the numerical emphasis parameter?

     


    #CPLEXOptimizers
    #DecisionOptimization