Skip to content

v2.5.0

Choose a tag to compare

@rcrida rcrida released this 16 May 15:17
· 157 commits to main since this release

What's new

Optimization API

  • — finds the assignment with minimum objective value using branch-and-bound pruning
  • — returns a lazy stream of improving assignments; the last element is the global optimum
  • — wraps BacktrackingSearch with incumbent-based pruning; sits at the bottom of the solver chain so all preprocessing (node/arc consistency, decomposition) runs first
  • Objective functions are called on partial assignments during search — use assignment.getValue(v).orElse(neutralValue) to provide a valid lower bound

Internal

  • SolverDecorator base class extracts the common inner/preprocess pattern shared by all decorator solvers, replacing ad-hoc @Value + Solver field boilerplate with a @SuperBuilder hierarchy
  • GPG signing moved to the deploy phase so mvn verify no longer prompts for a passphrase