Skip to main content

Module solver

Module solver 

Source
Expand description

Constraint satisfaction and optimization solvers.

Provides Backtracking with MRV heuristics, Branch & Bound, Local Search, LNS, and Parallel Portfolio search.

Re-exports§

pub use backtracking::BacktrackingSolver;
pub use branch_and_bound::BranchAndBoundSolver;
pub use cancellation::SearchStatistics;
pub use lns::LnsSolver;
pub use local_search::LocalSearchSolver;
pub use parallel::ParallelSolver;
pub use shared_incumbent::SharedIncumbent;

Modules§

backtracking
Backtracking CSP solver with dom/wdeg variable ordering and AC-3 constraint propagation.
branch_and_bound
Branch and Bound optimization solver for Constraint Optimization Problems (COP).
cancellation
Search cancellation tokens and runtime execution statistics.
lns
Large Neighborhood Search (LNS) solver combining heuristic destroy and exact repair phases.
local_search
Local Search solver combining conflict-directed (min-conflicts) repair with Tabu Search memory and incremental scoring.
parallel
Parallel Multi-Threaded Portfolio Solver.
shared_incumbent
Thread-safe shared incumbent for portfolio search coordination.

Structs§

CancellationToken
Thread-safe cancellation handle allowing external interruption of running solvers.
Solution
A candidate solution: a complete variable assignment and its score.
SolveOutcome
Outcome of a solver run: what was established, the best solution found (if any), search effort spent, and — where the solver tracks one — an optimistic bound on the achievable score.
SolverOptions
Configuration options for solver execution limits and cancellation.

Enums§

AbortReason
Why a search run stopped without reaching a conclusive result.
SolveStatus
What a solver run established about the problem.