Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Bound Infeasibility in B&C Implementation

    Posted 02/16/17 08:56 AM

    Originally posted by: BiceK


    Hi all,

    I am experiencing a problem with my branch and cut implementation on Java. I am creating a problem and solving it using LazyConstraint Callback. In relatively small problem sizes I have no problem and everything works as expected. But, increasing number of variables to a certain level is causing an error with cplex.solve function and gives me this message: "Bound infeasibility column 'yRP111'." Bounds of these variable array are: LB=0, UB=Integer.MaxValue.

    In addition, when I solve the corresponding LP file that I export from Java using Cplex terminal, I do not encounter any infeasibility. 

    At this point, I am confused about where to look for the problem., thus, any help would be appreciated.  

    Thanks in advance,

    Kadir


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Bound Infeasibility in B&C Implementation

    Posted 02/16/17 09:43 AM

    This could be numerics, especially if the model solves without trouble in the interactive.

    However, to make sure you are solving the same model you should export as SAV file, not as LP file.

    Could you please retry with a SAV file. Could you please also run "disp prob stats" in the interactive and post the output here?


    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Bound Infeasibility in B&C Implementation

    Posted 02/17/17 07:25 AM

    Originally posted by: BiceK


    Firstly, thank you for your help and I am sorry that I mislead you. Before saving as .sav file I realized that in my previous experiment I used the wrong .lp file with fewer variables therefore problem is solved with no problem. After trying with the proper .lp file I got the same infeasibility problem but when I check .lp file I do not see any irrelevant bound restrictions for the corresponding variable. Output of .sav file solution can be found below. Thank you

     

    CPLEX> read sub.sav
    Problem 'sub.sav' read.
    Read time = 0.02 sec. (0.40 ticks)
    CPLEX> opt
    Parallel mode: deterministic, using up to 8 threads for concurrent optimization.

    Tried aggregator 1 time.
    Bound infeasibility column 'yRP111'.
    Presolve time = 0.02 sec. (4.79 ticks)
    Presolve - Infeasible.
    Solution time =    0.03 sec.
    Deterministic time = 4.79 ticks  (154.51 ticks/sec)
    CPLEX> disp prob stats
    Problem name         : sub.sav
    Objective sense      : Minimize
    Variables            :   10740  [Box: 10740]
    Objective nonzeros   :   10740
    Linear constraints   :     822  [Less: 492,  Equal: 330]
      Nonzeros           :   47730
      RHS nonzeros       :     126

    Variables            : Min LB: 0.0000000        Max UB: 2.147484e+009
    Objective nonzeros   : Min   : 0.03200000       Max   : 499999.8
    Linear constraints   :
      Nonzeros           : Min   : 0.3000000        Max   : 12.00000
      RHS nonzeros       : Min   : 638.4000         Max   : 3597.000


    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: Bound Infeasibility in B&C Implementation

    Posted 02/20/17 08:00 AM

    Originally posted by: BiceK


    After my experiments, I found out that cplex is giving corresponding bound infeasibility message when problem has variables more than 10 000. Are there any way to remove this restriction  ? ( I have obtained CPLEX via Academic Initiative )

    Thank you,

    Kadir


    #CPLEXOptimizers
    #DecisionOptimization


  • 5.  Re: Bound Infeasibility in B&C Implementation

    Posted 02/21/17 07:18 AM

    Originally posted by: BiceK


    As a solution to the 10 000 variable limit problem, I have disabled the presolve for my subproblem and now program is running without any errors. But, now I wonder how could it be possible ? And will it cause any problems in the future because of disabled presolve function in each node of the branch and cut algorithm ? I am sorry for my frequent questions. 

     

    Thank you,

    Kadir


    #CPLEXOptimizers
    #DecisionOptimization


  • 6.  Re: Bound Infeasibility in B&C Implementation

    Posted 02/21/17 09:20 AM

    I think you are mislead. The message "bound infeasibility" is not related to any problem size limits.

    It means that presolve has found this column to be infeasible after some presolve reductions. This also explains why things seem to work if you display presolve. The numbers in your model do not look too bad, although the objective coefficients span a wide range. Can you try if things work better if you enable CPX_PARAM_NUMERICALEMPHASIS? Are you willing to share your SAV file?


    #CPLEXOptimizers
    #DecisionOptimization


  • 7.  Re: Bound Infeasibility in B&C Implementation

    Posted 02/22/17 11:01 AM

    Originally posted by: BiceK


    I have been already experimenting with Numerical Emphasis parameter enabled so, it doesn't seem to be the solution. You can see my SAV file in attachments. 

    Besides, does turning off presolve or primal reductions in preprocessing have any negative effect on solutions or performance ?  

    Thank you 

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 8.  Re: Bound Infeasibility in B&C Implementation

    Posted 02/27/17 09:25 AM

    I looked at your SAV file. The issue here is clearly numerical. Could you please drop a message to daniel(dot)junglas(at)de(dot)ibm(dot)com, then we can figure out the best way to resolve this.

    In general, turning off presolve will degrade performance. On small models like yours this may not matter or may even not be measurable, though.


    #CPLEXOptimizers
    #DecisionOptimization


  • 9.  Re: Bound Infeasibility in B&C Implementation

    Posted 01/22/18 03:19 AM

    This problem should be fixed in CPLEX version 12.8.


    #CPLEXOptimizers
    #DecisionOptimization