Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
Expand all | Collapse all

Why presolve change solution quality and let solution time longer?

  • 1.  Why presolve change solution quality and let solution time longer?

    Posted 03/08/11 05:31 PM

    Originally posted by: SystemAdmin


    Hi, I used cplex 12.2 to check the solution quality of my problem (use kappa=2). But I found that when I use presolve, the solution quality is worse and cplex use much longer time to solve. Would you please help me understand why this happend? Thank you.

    The outputs are as follows:

    (use presolve, use primal root algorithm, 0.02 EpGap)
    Solution pool: 14 solutions saved.
     
    MIP - Integer optimal, tolerance (0.02/1e-006):  Objective = 2.8913957202e+005
    Current MIP best bound = 2.8335838624e+005 (gap = 5781.19, 2.00%)
    Solution time = 11946.16 sec.  Iterations = 3488773  Nodes = 8356 (5448)
     
    CPLEX> disp sol qual
    Incumbent solution:
    MILP objective                                2.8913957202e+005
    MILP solution norm |x| (Total, Max)           7.14520e+004 3.66000e+003
    MILP solution error (Ax=b) (Total, Max)       3.18969e-012 4.54747e-013
    MILP x bound error (Total, Max)               0.00000e+000 0.00000e+000
    MILP x integrality error (Total, Max)         0.00000e+000 0.00000e+000
    MILP slack bound error (Total, Max)           1.13798e-013 5.68434e-014
     
    Branch-and-cut subproblem optimization:
    Max condition number:             8.0544e+011
    Percentage of stable bases:       73.2%
    Percentage of suspicious bases:   26.6%
    Percentage of unstable bases:     0.2%
    Percentage of ill-posed bases:    0.0%
    Attention level:                  0.003209
    CPLEX encountered numerical difficulties while solving this model.
    

    (disable presolve, use primal root algorithm, 0.02 EpGap)
    Solution pool: 7 solutions saved.
     
    MIP - Integer optimal, tolerance (0.02/1e-006):  Objective = 2.8851823225e+005
    Current MIP best bound = 2.8275884321e+005 (gap = 5759.39, 2.00%)
    Solution time = 4476.52 sec.  Iterations = 844791  Nodes = 6006 (3749)
     
    CPLEX> disp sol qual
    Incumbent solution:
    MILP objective                                2.8851823225e+005
    MILP solution norm |x| (Total, Max)           7.08410e+004 3.66000e+003
    MILP solution error (Ax=b) (Total, Max)       6.49209e-012 4.54747e-013
    MILP x bound error (Total, Max)               7.01301e-009 9.99989e-010
    MILP x integrality error (Total, Max)         1.07705e-011 1.32983e-012
    MILP slack bound error (Total, Max)           2.09955e-008 2.99997e-009
     
    Branch-and-cut subproblem optimization:
    Max condition number:             4.0732e+010
    Percentage of stable bases:       92.1%
    Percentage of suspicious bases:   7.9%
    Percentage of unstable bases:     0.1%
    Percentage of ill-posed bases:    0.0%
    Attention level:                  0.000996
    CPLEX encountered numerical difficulties while solving this model.
    

    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Why presolve change solution quality and let solution time longer?

    Posted 03/10/11 06:03 PM

    Originally posted by: SystemAdmin


    I can not think of a systematic reason that turning off Presolve should deliver either faster solve times or better numerical behavior. In fact on average it should be worse. However, MIP being a combinatorially hard problem domain, there will always be individual models that behave contrary to expectation.

    I see by reviewing your recent posts that you have been working on improving the formulation of your model in order to overcome some of the obstacles you have been hitting, so by now there are probably no easy answers.
    #CPLEXOptimizers
    #DecisionOptimization