Decision Optimization

Decision Optimization

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

 View Only
Expand all | Collapse all

bug in Cplex lp solver regarding dual residual?

  • 1.  bug in Cplex lp solver regarding dual residual?

    Posted Mon September 21, 2015 01:14 PM

    Originally posted by: Uonly


    Hi Community,

    I have a lp problem, which is not very numerical unstable. However, from the solution quality report,

    it shows the maximum dual residual is larger than the feasibility and optimality tolerance. Can that happen?

    In some sense, maximum dual residual is related to the feasibility and optimality tolerance.

    Is there any mechanism we can explicitly control the maximum dual residual ? Otherwise, the dual solution

    quality is not good and we can not control that explicitly.

     

    Thanks

    Joe


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: bug in Cplex lp solver regarding dual residual?

    Posted Mon September 21, 2015 03:24 PM

    Originally posted by: Uonly


    @RWunderling 84d4c086-2ee4-46e8-b2d0-4dae84ec091d@RolandWunderling 2e7b8b5a-e573-461b-b6e8-de9ef87077f3

     

    Just another observation: After using barrier to solve this LP problem,

    when perform the dual crossover / primal crossover, is there any insight of how to choose crossover method?

    For my experience on this LP, using primal crossover, the dual residual is within 1.0e-6 tolerance.

    But if we use dual crossover, the dual residual is larger than 1.0e-6.

    We suspect there is some issue in calculating the final dual variable in the cplex.

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: bug in Cplex lp solver regarding dual residual?

    Posted Tue September 22, 2015 02:56 AM

    Originally posted by: RolandWunderling


    In addition to looking at the final primal and dual bound violations, please also look at the residuals an in particular the condition number of the final basis (aka kappa).  Large values indicate that solution vectors cannot be computed with high accuracy.
    Further, please check the range of coefficients in your model.  In particular, do you have large numbers in the objective?  If so, computing reduced cost dj = cj - c_B^T B^{-1} Aj will yield low accuracy for dj.

    You may also want to try different scaling or turning off scaling.

    In general, CPLEX may and will stop with a solution that does not satisfy all tolerances if the numerical accuracy it can retain does not allow it to proceed.  This accuracy depends on the bases involved and depends on the solution path the algorithm takes, which explains why different solution strategies my end up with different tolerances.
     


    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: bug in Cplex lp solver regarding dual residual?

    Posted Tue September 22, 2015 07:37 AM

    Originally posted by: Uonly


    Thanks Roland.

     

    The instance is too large for uploading here.

    With the default setting , the condition number of basis is only 3.2e+005, which indicate no numerical issue at all.

    The concern is the dual residual which is less than the tolerance 1.0e-6.  I was expecting it to be the same order as Ax-b, which is

    1.0e-10.

    Another might be different ways to deal with this issue, try higher Markowitz tolerance,  different scaling level,

    But I think it could take longer time to solve as an expense.  Which do you recommend ? We need to have an automated code that is routinely adjust the numerical treatment  if dual residual is greater  than the default tolerance , 1.0e-6.

     

    Thanks for your expertise.

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 5.  Re: bug in Cplex lp solver regarding dual residual?

    Posted Tue September 22, 2015 03:11 AM

    Originally posted by: T_O


    Can you share this model such that we can have a look at it?


    #CPLEXOptimizers
    #DecisionOptimization