ConstructionForager

Trait ConstructionForager 

Source
pub trait ConstructionForager<S, M>: Send + Debug
where S: PlanningSolution, M: Move<S>,
{ // Required method fn pick_move( &self, placement: &Placement<S, M>, score_director: &mut dyn ScoreDirector<S>, ) -> Option<M>; }
Expand description

Trait for selecting a move during construction.

Foragers evaluate candidate moves and pick one based on their strategy.

§Type Parameters

  • S - The planning solution type
  • M - The move type

Required Methods§

Source

fn pick_move( &self, placement: &Placement<S, M>, score_director: &mut dyn ScoreDirector<S>, ) -> Option<M>

Picks a move from the placement’s candidates.

Returns None if no suitable move is found.

Implementors§

Source§

impl<S, M> ConstructionForager<S, M> for BestFitForager<S, M>
where S: PlanningSolution, M: Move<S>,

Source§

impl<S, M> ConstructionForager<S, M> for FirstFeasibleForager<S, M>
where S: PlanningSolution, M: Move<S>,

Source§

impl<S, M> ConstructionForager<S, M> for FirstFitForager<S, M>
where S: PlanningSolution, M: Move<S>,

Source§

impl<S, M> ConstructionForager<S, M> for StrongestFitForager<S, M>
where S: PlanningSolution, M: Move<S>,

Source§

impl<S, M> ConstructionForager<S, M> for WeakestFitForager<S, M>
where S: PlanningSolution, M: Move<S>,