use crate::permutation_prob_f::PermutationProbF;
#[derive(Debug, Clone, Copy)]
pub struct Config {
pub pop_size: usize,
pub top_ratio_to_recombine: f64,
pub mutation_prob: f64,
pub mutation_strength: f64,
pub perturb_prob: f64,
pub permutation_prob_f: PermutationProbF,
}
impl Config {
pub fn new(pop_size: usize) -> Self {
Self {
pop_size,
top_ratio_to_recombine: 0.25,
mutation_prob: 0.3,
mutation_strength: 0.5,
perturb_prob: 0.5,
permutation_prob_f: PermutationProbF::Uniform(1.0),
}
}
}