perf(hybridz): accelerate objective-bound solving - #114
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #114 +/- ##
==========================================
+ Coverage 74.97% 75.82% +0.85%
==========================================
Files 91 91
Lines 22230 22482 +252
==========================================
+ Hits 16666 17048 +382
+ Misses 5564 5434 -130
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 4 files with indirect coverage changes Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
|
Need to fix the CI coverage. |
e8b0385 to
7f8f847
Compare
| solver.changeColsIntegrality(model.n_bin, binary, types) | ||
|
|
||
|
|
||
| class _HighsLPRelaxation: |
There was a problem hiding this comment.
why we need this new 'private' class?
There was a problem hiding this comment.
This is the key of solver speedup. It keeps one HiGHS LP model live when checking multiple output objectives. The constraints stay the same, so rebuilding the model for every output row is wasteful. We only update the objective and reuse the model, then run MIP only for rows the LP cannot decide. It is private because only HZSolver uses it internally.
There was a problem hiding this comment.
What is multiple output?
And I assume it only belongs to HZSolver, and the rest of the other solvers are not accessible to it.
The final PR: Accelerates HybridZ solving.