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
This commit is contained in:
Giorgio Gilestro 2026-09-13 17:00:40 +01:00
parent 84124de143
commit ab3dc10587
240 changed files with 477 additions and 476 deletions

View file

@ -0,0 +1,34 @@
# E10 — directed sex beats biological sex (the distinctly-AI superpower)
**Claim tested.** E9 showed that on rugged (epistatic) landscapes, blind recombination causes
outbreeding depression — offspring worse than parents. Biology is largely stuck with this: two
random-mating parents, no way to preview offspring. But an **AI is not** — it can choose mates,
evaluate many recombinant offspring, and keep only the fittest, over rounds, with no two-parent
limit. Does this **directed sex** rescue recombination where blind sex fails?
**Setup.** Parents are local optima of a Kauffman NK landscape (`L=12`), swept over ruggedness `K`.
Three strategies compared, all as deployed capability (fitness ∈ [0,1]): **best single parent**;
**random sex** (blind mating, free recombination, no offspring selection — biology's default);
**directed sex** (iterated recombine-then-select-offspring, `rate=0.2`, 5 rounds — the AI move).
24 replicate landscapes.
### Symbols
- **random sex** — blind: random parents, free recombination, take the offspring as they come.
- **directed sex** — choose complementary mates + generate many offspring + keep the fittest + repeat; unbounded parents.
- **global optimum** — the landscape's best genotype (the ceiling).
### The two panels
1. **Capability vs ruggedness.** As `K` grows, **random sex (blue) craters** (0.66 → 0.51 — deep
outbreeding depression), while **directed sex (red) tracks the best parent and the global optimum**,
staying near the ceiling at every ruggedness.
2. **Edge over the best parent.** Directed sex stays **≥ 0** (at or above the parents) across all `K`;
random sex falls to **0.2** (far below). Directed sex converts a catastrophe into a win.
### Takeaway
The move biology cannot make — **choose your mates, evaluate your offspring before you commit, and
recombine as many parents as you like** — is exactly what makes AI sexual reproduction robust. Blind
merging of entangled models is dangerous; *directed* merging (generate many candidate merges, keep
the best) is safe and can exceed every parent. This is the practical payoff of the sexual-transmission
model and the distinctly-AI superpower with no biological analog. **Falsifier (not triggered):** if
directed sex did no better than random sex, or never recovered the best-parent level on rugged
landscapes, the "AI beats biology" claim would fail.

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

View file

@ -0,0 +1,14 @@
{
"experiment": "E10",
"master_seed": 20260705,
"git_commit": "62c68d6c8c4090e62cf9ee17ac7b7d1eff7a6955",
"python": "3.14.5",
"libraries": {
"numpy": "2.5.0",
"scipy": "1.18.0",
"pandas": "3.0.3",
"pyarrow": "24.0.0"
},
"rows": 120,
"results_sha256": "b2d53d0a3949be0b67e3b8dffec56121d54e20c593e6302717a73a8a132f17cb"
}

View file

@ -0,0 +1,25 @@
experiment: E10
seed: 20260705
n_replicates: 24
source_config:
experiment: E10
kind: directed_sex
seed: 20260705
n_replicates: 24
society:
L: 12
n_parents: 6
pop: 200
keep: 8
rounds: 5
rate: 0.2
sweep:
- param: K
values:
- 2
- 4
- 6
- 8
- 10
output:
dir: results/figS11_directed_recombination