Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Conic Programming Wrong Optimal

    Posted 03/28/14 05:55 AM

    Originally posted by: huseyin89


    Hello, 

    I have a non linear mixed integer model in v12.5 within Java. To solve it, we reformulate the nonlinearity and get a mixed integer second order conic model. When we solve the model, we get optimal solution however I know for that problem the given solution is not optimal. The value of the real optimal solution is miscalculated. Since program miscalculates the value of the real optimal solution, it cannot find the optimal solution in reality. Instead it gives a solution as optimal solution which is not optimal.

    I tried to change the parameter values as follows: 

       cplex.setParam(IloCplex.BooleanParam.NumericalEmphasis, true);
       cplex.setParam(IloCplex.DoubleParam.BarQCPEpComp, 1e-10); 

    Although it helps at some instances, still I have same problem with other instances.

    Can you please help me?

         

    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Conic Programming Wrong Optimal

    Posted 04/02/14 08:33 AM

    What do you mean by "miscalculated"? Does the objective function value returned by CPLEX not match the solution vector returned by CPLEX? Or does CPLEX just return a suboptimal solution?

    Are you sure that your reformulation results in an equivalent model and not by chance in a relaxation?

    Since you know the optimal solution: what happens when you fix all variables to their optimal values in the reformulated model? Does this result in a feasible model and is the objective function as expected?


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Conic Programming Wrong Optimal

    Posted 04/02/14 09:24 AM

    Originally posted by: huseyin89


    let me clarify in this way. My problem has 4 cost terms in the objectve function, 3 of them are linear cost terms and the last one is associated with the second order conic constraints. When I solve the problem with default parameters: I got the optimal value: 7227367.91 which is the sum of 6792000+31544,45+16398+387425,46. Meawhile I have a heuristic method which finds a solution with value: 7221482,38 which is sum of 6792000+24128,04+16398+388956,34. When I enforce my model to find the heuristic solution (I just add constraints) it finds a solution: 7226939.22 which is sum of 6792000+24164,4+16398+394376,82.
    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: Conic Programming Wrong Optimal

    Posted 08/06/14 01:02 AM

    Sorry for the late reply.

    The fact that enforcing numerical emphasis and tightening tolerances helps in many cases and the fact that you can force CPLEX to find a better solution points at numerical difficulties in your model. Can you double check numerics in your model?. For example, load the model into the interactive optimizer and do

    CPLEX> display prob stats

    Do you for example observe large coefficient ranges?

    You can also try whether tightening parameters CPX_PARAM_EPRHS or CPX_PARAM_EPOPT improves things further.


    #CPLEXOptimizers
    #DecisionOptimization