MachineSex/configs/inheritance/sexual_vs_asexual_lineage.yaml
Giorgio Gilestro ab3dc10587 Restructure: descriptive tier and experiment names, paper/manuscript
- paper/pnas -> paper/manuscript (venue-neutral)
- configs/layer1 -> configs/inheritance, src/knowledge -> src/inheritance
  (imported as `inheritance`), make layer1 -> make inheritance; layer2 alias dropped
- inheritance and trained-network bundles named after the manuscript figure
  they feed (fig2_grounding_sweep, figS3_rebaselining, ...), or descriptively
  where they feed none; configs keep their `experiment:` value so parquet
  hashes are unchanged, only output.dir moves
- figure scripts, SI figure sources, notebooks, REPRODUCING.md, README and the
  SI Methods/tables updated; make clean no longer deletes tracked manifests;
  reproduce.sh hashes the s{seed}/ layouts too

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y64o8FKP7rCuXzC48pxpMm
2026-09-13 17:00:40 +01:00

29 lines
1.3 KiB
YAML

experiment: E7
kind: genotype_lineage
seed: 20260705
n_replicates: 20
# (The advantage of sex — the dynamic mechanism behind E8): a single population adapts from all-wrong
# toward a multi-locus optimum under selection + drift + mutation. Beneficial alleles arise in
# different sub-lineages; recombination reassorts them into one genotype, while an asexual lineage
# suffers clonal interference (the alleles compete and cannot combine). Expect the SEXUAL lineage
# (recomb_rate=1) to climb toward the optimum faster than the ASEXUAL one (recomb_rate=0) — the
# classical advantage of sex, and the reason a lone model lineage cannot do what a recombining
# society can. Honest scope: a SPEED advantage, not a dramatic permanent gap (the single-population
# ratchet is subtle); E8 carries the headline. Falsifier: sexual adapts no faster than asexual.
genotype:
L: 12
n: 150 # population/resample size (drift strength)
mu: 0.02 # per-locus mutation (flip) rate
base: 1.3 # multiplicative selection: fitness weight = base^(#correct loci)
recomb_rate: 0.0 # overwritten per arm by the sweep
init: wrong # start all-wrong (load L); adapt upward
generations: 120
sweep:
- param: genotype.recomb_rate
values: [0.0, 1.0] # asexual vs sexual
output: {dir: results/sexual_vs_asexual_lineage}