use crate::aco::probe::Probe;
use crate::aco::{FMatrix, Solution};
pub struct StdoutProbe {
iteration: usize,
}
impl StdoutProbe {
pub fn new() -> Self {
Self { iteration: 0 }
}
}
impl Probe<FMatrix> for StdoutProbe {
fn on_current_best(&mut self, best: &Solution) {
println!("Iteration best fitness: {}", best.fitness);
}
fn on_iteration_start(&mut self) {
self.iteration += 1;
println!("--- ITERATION {} ---", self.iteration);
}
fn on_iteration_end(&mut self) {
println!("################################");
}
fn on_end(&mut self) {
println!("END")
}
}