1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
//! Specifies solution selection logic. use crate::construction::heuristics::InsertionContext; use crate::refinement::RefinementContext; /// Provides the way to select solution for next iteration. pub trait Selection { /// Selects solution from given `refinement_ctx`. fn select(&self, refinement_ctx: &mut RefinementContext) -> InsertionContext; } mod select_best; pub use self::select_best::SelectBest; mod select_random; pub use self::select_random::SelectRandom;