A lifecycle for adaptive populations
The evolutionary Four Fs translate a biological mnemonic into software operations. The value of the framework is procedural: it forces the system to acquire evidence, create bounded variants, evaluate them under pressure, and remove what does not repay its cost.
Feed
Feed supplies information and resources needed to improve. Inputs include failure cases, validated labels, execution traces, unit tests, calibration data, hardware telemetry, user corrections, and approved retrieval corpora. Feeding is governed data acquisition, not indiscriminate collection.
Key controls: provenance, consent, retention, deduplication, contamination checks, and a documented reason each new dataset exists.
Fork
Fork creates descendants. The mutation operator must be declared before execution and constrained by a budget. Examples include training an adapter, distilling a specialist, changing a router threshold, quantizing a model, or branching a code path in a sandbox.
Key controls: signed parents, deterministic configuration, isolation, maximum candidate count, and no privilege inheritance by default.
Fight
Fight means comparative evaluation. Candidates face frozen test suites, adversarial cases, perturbations, cost budgets, and champion baselines. The metaphor should not become free-form competition between agents. Selection pressure is an engineered test environment.
Key controls: evaluator independence, hidden holdout sets, multiple seeds, uncertainty intervals, and a requirement to beat no-op.
Flee
Flee removes or avoids unproductive states. It includes rollback, unloading, quarantine, pruning, route suppression, and retirement. Without an explicit removal mechanism, evolutionary systems accumulate artifacts, complexity, and attack surface.
Key controls: retention policy, dependency analysis, archive criteria, rollback verification, and secure deletion where required.
No-op is the center of the cycle
The candidate is not compared only with its siblings. It is compared with the current system. If no candidate produces sufficient net viability, no-op wins. This prevents the cycle from confusing activity with progress.
PROCEDURE evolutionary_cycle(ecology, evidence_window, policy)
feed <- CURATE_EVIDENCE(evidence_window, policy.data_rules)
candidates <- FORK_BOUNDED(ecology, feed, policy.mutation_budget)
results <- FIGHT_INDEPENDENTLY(candidates, ecology.champion, policy.suites)
best <- SELECT_BY_VIABILITY(results)
IF best.exists AND best.viability > policy.change_threshold
RELEASE_REVERSIBLY(best)
FLEE_FROM_SUPERSEDED_OR_UNSAFE_ARTIFACTS(ecology, policy.retention)
ELSE
RECORD_NO_OP_DECISION(results)
END IF
END PROCEDURESource reports used for this guide
These reports are preserved verbatim in the site archive. The guide above is an editorial synthesis and may narrow, qualify, or reorganize claims from the source material.