pub struct SolverStatistics<Sc: Score> {
pub total_duration: Duration,
pub total_step_count: u64,
pub total_moves_evaluated: u64,
pub total_moves_accepted: u64,
pub score_calculation_count: u64,
pub phase_statistics: Vec<PhaseStatistics<Sc>>,
pub score_history: Vec<ScoreImprovement<Sc>>,
}Expand description
Complete statistics for a solver run.
Fields§
§total_duration: DurationTotal time spent solving.
total_step_count: u64Total steps taken across all phases.
total_moves_evaluated: u64Total moves evaluated across all phases.
total_moves_accepted: u64Total moves accepted across all phases.
score_calculation_count: u64Number of score calculations performed.
phase_statistics: Vec<PhaseStatistics<Sc>>Statistics for each phase.
score_history: Vec<ScoreImprovement<Sc>>History of score improvements.
Implementations§
Source§impl<Sc: Score> SolverStatistics<Sc>
impl<Sc: Score> SolverStatistics<Sc>
Sourcepub fn acceptance_rate(&self) -> f64
pub fn acceptance_rate(&self) -> f64
Returns the overall acceptance rate.
Sourcepub fn phase_count(&self) -> usize
pub fn phase_count(&self) -> usize
Returns the number of phases.
Sourcepub fn best_score(&self) -> Option<&Sc>
pub fn best_score(&self) -> Option<&Sc>
Returns the best score achieved (last in history, or None).
Sourcepub fn improvement_count(&self) -> usize
pub fn improvement_count(&self) -> usize
Returns the number of score improvements recorded.
Trait Implementations§
Source§impl<Sc: Clone + Score> Clone for SolverStatistics<Sc>
impl<Sc: Clone + Score> Clone for SolverStatistics<Sc>
Source§fn clone(&self) -> SolverStatistics<Sc>
fn clone(&self) -> SolverStatistics<Sc>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl<Sc> Freeze for SolverStatistics<Sc>
impl<Sc> RefUnwindSafe for SolverStatistics<Sc>where
Sc: RefUnwindSafe,
impl<Sc> Send for SolverStatistics<Sc>
impl<Sc> Sync for SolverStatistics<Sc>
impl<Sc> Unpin for SolverStatistics<Sc>where
Sc: Unpin,
impl<Sc> UnwindSafe for SolverStatistics<Sc>where
Sc: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more