Skip to content

Conversation

nguidotti
Copy link

@nguidotti nguidotti commented Aug 15, 2025

This PR introduces the following changes:

  • Implements a simple diving procedure
  • Allows the branch-and-bound to switch between different search strategies: BEST_FIRST, DEPTH_FIRST and MULTITHREADED_BEST_FIRST_WITH_DIVING
  • Refactor the branch-and-bound code such that the solve function is now organized into separated methods
  • Moved some commonly used variables to be member variables in the branch-and-bound solver.

@nguidotti nguidotti self-assigned this Aug 15, 2025
@nguidotti nguidotti requested a review from a team as a code owner August 15, 2025 13:25
@nguidotti nguidotti added improvement Improves an existing functionality mip labels Aug 15, 2025
Copy link

copy-pr-bot bot commented Aug 15, 2025

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@nguidotti nguidotti added the non-breaking Introduces a non-breaking change label Aug 15, 2025
@anandhkb anandhkb added this to the 25.10 milestone Aug 18, 2025
Copy link
Contributor

@chris-maes chris-maes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is a bit bigger than I had envisioned.

I'm not sure we want to make the strategy (i.e. depth first vs best first) a user accessible parameter. But rather keep it an internal parameter.

Given the number of changes, I think we need to verify this PR before merging. Let's discuss the verification strategy.

@nguidotti
Copy link
Author

This PR is a bit bigger than I had envisioned.

I'm not sure we want to make the strategy (i.e. depth first vs best first) a user accessible parameter. But rather keep it an internal parameter.

Given the number of changes, I think we need to verify this PR before merging. Let's discuss the verification strategy.

Implement a test for verifying the different search strategies. But I can also add some unit testing. Is there any other verification strategy that you have in mind?

@nguidotti
Copy link
Author

/ok to test 56a061d

@nguidotti
Copy link
Author

/ok to test 7b713d8

@nguidotti
Copy link
Author

/ok to test db73ba4

@nguidotti
Copy link
Author

/ok to test f9fb5ad

@nguidotti
Copy link
Author

/ok to test 041e104

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improves an existing functionality mip non-breaking Introduces a non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants