Trait Subproblem

Source
pub trait Subproblem {
    type Score: Ord;

    // Required methods
    fn branch_or_evaluate(&self) -> SubproblemResolution<Self, Self::Score>;
    fn bound(&self) -> Self::Score;
}
Expand description

Represents a problem (subproblem) to be solved with branch-and-bound

Required Associated Types§

Required Methods§

Source

fn branch_or_evaluate(&self) -> SubproblemResolution<Self, Self::Score>

Evaluates a problem space.

If the space is to be broken further into subproblems, returns a sequence of subproblems (may be empty, which discards the current subspace).

If the space consists of just one feasible solution to be solved directly, returns the score, which is the value of the objective function at the solution.

Source

fn bound(&self) -> Self::Score

Value of the boundary function at the problem space.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§