0

I have written my Mixed-Ineteger model (MIP) in GAMS and trying to solve it with CPLEX. I encountered this error:

CPLEX Error 3019: Failure to solve MIP subproblem

I have 4 cores and 16 GB RAM on my PC. The optimality gap is set to 1%.

After a lot of searching, I found some suggestions (no solution), and I tried them all, yet no luck. Every time it takes about 30min-60min until the optimization terminates with an error. These are the combinations I tried:

  1. I increased the iteration limits to 1 million. Error 3019.
  2. Some relaxation "feasoptmode 3". Error 3019.
  3. Give priority to feasibility over optimality by using "mipemphasis 1". Error 3019.
  4. Change the algorithm for solving the subproblems by using "subalg 3". Error 3019.

Then adding relaxations:

  1. "feasopt 1", "feastoptmode 3", "mipemphasis 1". Out-of-memory

Adding heuristics as well:

  1. "feasopt 1", "feastoptmode 3", "mipemphasis 1", "fpheur 2" and "userheurfreq 20". Out-of-memory
  2. "feasopt 1", "feastoptmode 3", "mipemphasis 1", "fpheur 2" and "userheurfreq 30", "subalg 4". Out-of-memory

[Update] Also,

  1. "mipemphasis 1" and "subalg 4". Error 3019.

  2. "mipemphasis 4", "subalg 5" and "preind 0". Error 3019.

  3. "fpheur -1", "heurfreq -1", "rinsheur -1", "preind 0", "mipemphasis 1", "mipsearch 1". Error 3019. (all heuristics are off)

So far, I had 2.5 million variables. I changed the model (study period) and reduced the number of variables by half in two different ways, again, same error.

I'm running out of ideas now.

Here are some of the links I have used (since I don't have enough credits in the website, I can't post more than two links. I put the most important ones):

I. Link1 (IBM): CPLEX strategies for finding good feasible solutions quickly when solving MIPs

II. Link2 (IBM): CPLEX Performance Tuning for Mixed Integer Programs

PM0087
  • 123
  • 1
  • 9
  • How big is your problem? – TimChippingtonDerrick May 29 '16 at 05:26
  • When GAMS builds the model in the beginning, it becomes 2.5 million variables (columns) with the size about 2GB. I had solved another MIP problem (a little simpler mathematically) with 15 million variables, never encountered this error. – PM0087 May 29 '16 at 11:57
  • Can you export the model to .sav format before solving (I know very little about GAMS)? It may be easier to diagnose the issue working directly with CPLEX via the interactive rather than through GAMS. – rkersh May 30 '16 at 22:01
  • @rkersh: Would that be the model that GAMS builds before fetching into CPLEX for solving? I also read somewhere due to rounding settings, it's possible that these software may actually input a rather different model to CPLEX than the original model. I think big Ms affect this setting as well (just a guess). – PM0087 May 31 '16 at 09:04
  • @PeyM87, I was referring to the CPLEX model (as I mentioned, I'm not sure if that is possible). As an aside, it looks like the [documentation](http://www.ibm.com/support/knowledgecenter/en/SSSA5P_12.6.3/ilog.odms.cplex.help/refcallablelibrary/macros/CPXERR_SUBPROB_SOLVE.html?view=embed) for Error 3019 mentions that this can be due to numeric trouble (i.e., that it hinted at what needed to be fixed). I only mention this in case you hadn't seen it or so someone else can [discover](https://ibm.biz/Bd4QZr) where to look for these types of things in the future. – rkersh May 31 '16 at 16:06
  • @rkersh Thanks. I had seen them, though, I didn't know how to check for the exact numerical trouble in this rather large problem. – PM0087 May 31 '16 at 19:22

1 Answers1

1

Finally found the solution:

"Big M"

The big Ms I'm using in my model (for linearization and some other constraint) were responsible. The big M was too large; I removed four of the nines and viola. It took 3 days to figure this out.

I also increased the iteration limit to 2 million and the optimality gap to 2%. (iteration limit wasn't necessary, but the optimality gap certainly helped). It returned a solution after 5 hours.

PM0087
  • 123
  • 1
  • 9