Bug? Huge variance in CBC solver #4059
Unanswered
Tr1ple-F
asked this question in
Linear Solver questions
Replies: 2 comments
-
tips: using bullet issue is nicely rendered |
Beta Was this translation helpful? Give feedback.
0 replies
-
Without even looking at your data: this phenomenon is not uncommon and it is typically not considered a bug!
You can try to dampen the effects by relaxing the MIPgap (don't run until proven to be within 0.01% or such but only 0.5%). It's much easier to get a 99.5% solution robustly compared to a 99.99% solution. Two additional remarks:
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
What version of OR-Tools and what language are you using?
Version: main
Language: Java
Which solver are you using (e.g. CP-SAT, Routing Solver, GLOP, BOP, Gurobi)
CBC
What operating system (Linux, Windows, ...) and version?
Windows 10 Home
What did you do?
I am modelling an portfolio selection problem with exclusionary boolean variables (see more details below) and have discovered a HUGE variance in solving time. Not sure if this is a bug or my own stupidity. I also opened a bug report on the CBC page here. Note: this issue is not present in the SCIP solver (more details below).
What did you expect to see
No specific expectations regarding time but some bounds on variance.
What did you see instead?
Solving time of 3s or 600s+.
Anything else we should know about your project / environment
I am using Google OR-Tools as interface in Java for the following problem:
I have a number of loans and want to split them into two similar size portfolios with certain restrictions on the terms for portfolio composition.
When I use SCIP as a solver it takes anywhere between 25s and 75s. However, when I replace SCIP with CBC it either takes 3-4s or 300s+, sometimes as much as 600s+. I am not familiar with the details of the CBC implementation but this just seems like a bug to me. I could understand if it takes 300s+ for everything but that some (random!) problems miraculously take just 3s while others are at over 5 minutes is too strange to believe. Maybe someone smarter could take a look.
Appendix
Code For Test Case:
Time measurements:
Code to run test:
System Specs
SDK: Java 17.0.9
DEV: Dell XPS 15 9560, Win 10 Home
MEM: 16 GB RAM
CPU: Intel i7-7700 HQ @ 2.8 GHz, 4 cores
GPU: Nvidia GeForce GTX 1050
Beta Was this translation helpful? Give feedback.
All reactions