Selection
4.4 Отбор и репродукция¶
Elite selection:
\[
\mathcal{E} = \underset{G \in \mathcal{P}}{\text{top-}} \lceil \rho P \rceil \text{ по } f(G), \quad \text{tie-break: меньше } |E_\text{enabled}|
\]
где \(\rho =\) elite_percent = 0.2, \(P =\) population_size.
Формирование следующего поколения:
- Каждый \(G_i \in \mathcal{E}\) → потомки всеми мутациями.
- Каждый кандидат проверяется на уникальность
structure_hash. - Fallback: случайные сети при нехватке уникальных топологий.
- Archive mixing: половина из исторического архива (по fitness родителя), половина — новые потомки.
Fitness присваивается снаружи CnnNeat (в eval.py) и передаётся через set_fitness_scores().