Population Lifecycle
Initialization Strategies
Random Initialization Generates genomes with uniformly random values within valid bounds. Parent models are selected randomly from the eligible pool. Alpha coefficients are sampled from a Dirichlet distribution to ensure they sum to 1.0. Merge methods are selected uniformly from supported strategies. Seeded from Known Good Bootstraps the population from previously successful candidates. The Population component queries the ExperimentTracker for candidates with PASS or PROMOTED status. Their genomes are cloned with small perturbations to explore the local neighborhood. This accelerates convergence when prior knowledge exists. Latin Hypercube Sampling Divides each genome parameter range into N equal intervals, where N is the population size. Samples are placed such that each interval contains exactly one point per dimension. This guarantees better coverage of the search space than pure random sampling, especially in low-to-moderate dimensional spaces.Population Size
The default population size is 32. Size is configurable per experiment. Larger populations improve diversity and reduce premature convergence. Smaller populations reduce computational cost per generation.Diversity Preservation
Diversity is measured as the average pairwise Hamming distance between genome encodings. The Population component tracks diversity per generation. If diversity drops below the configured threshold, the engine applies one or more rescue strategies:- Inject random immigrants: add N new random candidates
- Expand search space: include additional parent models
- Increase mutation rate temporarily
- Restart from Latin hypercube sampling
Archival Elite Pool
The elite archive stores the top-performing candidates across all generations, regardless of whether they were selected for breeding. The archive is immutable and append-only. Elite Selection Criteria- Top K candidates by fitness per generation
- Any candidate that achieves a new best fitness
- Any candidate that discovers a new Pareto-optimal point
Replacement Strategy
After offspring generation, the new population replaces the old. Replacement options include:- Generational: entire population replaced by offspring
- Steady-state: worst candidates replaced one at a time
- Elitist: top E candidates preserved, remainder replaced
Integration with EvolutionEngine
The Population component exposes a single interface to the EvolutionEngine:The elite archive is distinct from the active population. Elite candidates are not automatically included in breeding unless they are re-selected by the Selection component. This prevents premature convergence on a single high-performing lineage.