2

I have a very large problem (1m variables, 3m constraints) that I'm trying to solve using CPLEX in Python. Obviously, solving it optimally is out of the question, so I have implemented a time limit so I could get the best solution within that time.

c.timelimit.set(7200)

However, when the time was up, it hadn't even finished processing the root node:

        Nodes                                         Cuts/
 Node  Left     Objective  IInf  Best Integer    Best Bound    ItCnt     Gap

  0     0       10.0070  2177                     10.0070    65714         
  0     0       10.0070  1793                    Cuts: 29    80275         
  0     0       10.0070  2427                  Cuts: 6928   101277         
  0     0       10.0070  2061                  Cuts: 4737   122524    
Implied bound cuts applied:  485
Flow cuts applied:  68
Mixed integer rounding cuts applied:  12019
Zero-half cuts applied:  193

Root node processing (before b&c):
  Real time             = 7200.47 sec. (2762999.79 ticks)
Parallel b&c, 112 threads:
  Real time             =    0.00 sec. (0.00 ticks)
  Sync time (average)   =    0.00 sec.
  Wait time (average)   =    0.00 sec.
                          ------------
Total (root+branch&cut) = 7200.47 sec. (2762999.79 ticks)
Solution status =  108 :
MIP_time_limit_infeasible
Exception raised during solve     

Is there any way to limit the time spent on the root node so it at least starts the b&c method? Would that even be advantageous at all?

  • 2
    There are some suggestions for speeding up processing at the root node in the documentation [here](https://www.ibm.com/support/knowledgecenter/SSSA5P_12.7.1/ilog.odms.cplex.help/CPLEX/UsrMan/topics/discr_optim/mip/troubleshoot/55_time_node_zero.html). – rkersh Dec 03 '18 at 18:03
  • 1
    Are you using callbacks? Besides setting the `timelimit` parameter are you using any additional non-default parameter settings? Are you able to provide a [MIP start](https://www.ibm.com/support/knowledgecenter/SSSA5P_12.6.2/ilog.odms.cplex.help/CPLEX/UsrMan/topics/discr_optim/mip/para/49_mipStarts.html)? Also, If you update your question with the entire engine log output that may give us some additional insight (i.e., the preamble is currently missing). – rkersh Dec 03 '18 at 18:07
  • Thank you, rkersh, that first link really helped, I was able to find a solution after using it. – Matheus Fernandes Dec 05 '18 at 00:20

0 Answers0