solverforge-solver 0.8.6

Solver engine for SolverForge
Documentation
// Construction heuristic phase configuration.

// Construction heuristic phase configuration.
#[derive(Debug, Clone)]
pub struct ConstructionHeuristicConfig {
    // The forager type to use.
    pub forager_type: ForagerType,
}

impl Default for ConstructionHeuristicConfig {
    fn default() -> Self {
        Self {
            forager_type: ForagerType::FirstFit,
        }
    }
}

// Type of forager to use in construction.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum ForagerType {
    // Accept the first feasible move.
    FirstFit,
    // Evaluate all moves and pick the best.
    BestFit,
    // Pick the first move that results in a feasible score.
    FirstFeasible,
    // Pick the move with the lowest strength value.
    WeakestFit,
    // Pick the move with the highest strength value.
    StrongestFit,
}