Genetic operators
How candidates are generated and recombined: mutation families, crossover families, and the adaptive selection between them.
What generates candidates, what recombines them, and what they have to preserve
Two families of operators move every population forward. Mutation takes a single candidate and produces a structurally adjacent one. Crossover takes two candidates and produces an offspring that combines material from both. In symbolic regression both kinds of operator have to walk the same line: enough structural change to find new hypotheses, not so much that the offspring is indistinguishable from a fresh random tree.
The Ufinq operator surface is built from the same primitives as classical tree-based GP, with three differences. Every operator belongs to a named family with declared semantics, so the population's mix can be reasoned about. Replacement-style crossovers take a pluggable subtree-selection strategy, so bloat control is an orthogonal modifier, not a baked-in constant. And every operator's success is tracked per branch by an adaptive bandit, so over time a branch draws from the operators that are actually working.
Four threads of work
Mutation families
- Families by what they edit. Constant, terminal, structural, function, logical, component, sequence and model mutations. Each family has its own legal local edits.
- Random-node mutation. A node is drawn from those the mutation supports and replaced through the same structural API every other operator uses, which preserves type compatibility and arity.
- Sub-search as a mutation. One mutation does not edit a node at all: it opens an inner search on the component that carries the error and splices the result back. See Compositional search.
- Open questions. Mutations that respect tuned constants instead of re-randomizing them; the relation between the size of a local edit and offspring quality.
Crossover taxonomy
- Seven canonical families. Addition, Removal, Replacement, Combination, Blending, Splice, Semantic. Every crossover declares its family.
- In the lineup. Tree-aligned one-point crossover and an approximate geometric-semantic crossover run by default alongside the classical operators.
- Subtree selection as a seam. Replacement crossovers take a pluggable subtree-selection strategy. Uniform-random is what runs; size-fair (Langdon 2000), depth-fair and homologous-aligned (Poli & Langdon 1998) strategies are implemented and awaiting evaluation.
- Headless-chicken baseline. Mating with a freshly composed random tree runs as one arm of the bandit, so every other operator's payoff is measured against a known reference in the same run.
- Open questions. Brood selection (implemented, not yet in the lineup); which subtree-selection strategy earns the default.
Adaptive operator selection
- Per-branch bandits. Each branch maintains its own bandit state over the operators available to it. Branch isolation is absolute, so a branch learns from its own outcomes only; there is no cross-branch aggregation of operator weights.
- Flat by default, hierarchical available. A branch runs a UCB1 bandit over its operators, warmed up from prior weights. A two-level bandit over family and operator exists and is under evaluation.
- Reward against parent best. An offspring counts as a success when it beats the better of its parents, not the population mean. The signal stays informative even when the population is converging.
- One data stream. The per-operator outcome stream that drives selection is also recorded for offline ablation analysis.
- Open questions. A bandit over operator hyperparameters; reward design under multi-objective selection.
Bloat control as an orthogonal modifier
- In the selection strategy. Bloat control lives in the subtree-selection strategy, not in each operator. One size-fair strategy applies to every replacement-family crossover.
- A small policy class. Each strategy is a small class, not a fork of every operator that would have to be kept in sync.
- Open questions. Strategy choice as a per-branch bandit arm of its own; how strategies interact with the normalized populations that symbolic refinement produces.
Three consequences of this design
Related material
Adjacent areas: Symbolic refinement describes the normalization that makes structural comparisons between offspring meaningful; Search describes the two diversity checks that decide whether an offspring survives into the gene pool; Compositional search describes the sub-search mutation. The system view of how operators fit into a single branch is described under Technology § 1.
Continue reading
Other research areas are listed under Research. Published work lives on Papers; short-form notes on Notes.
