society: the dynamic Lamarckian society — the vertical claim (E11 / C3)
The culmination. A finite population of agents (genotypes, L loci) evolves
on a rugged NK landscape that IS reality (knowledge/dynamic_society.py),
composing the four operators the whole study built toward: grounding,
directed recombination (sex), quality-diversity selection, and mutation.
Grounding is made load-bearing via the consensus-conformity (self-
consumption) mechanism (GG decision): selection acts on
g*true_fitness + (1-g)*conformity, where conformity = agreement with the
population's own consensus, so at g=0 the society optimises fitting-the-
crowd rather than reality.
4-arm ablation (12 reps), each breaking distinctly, only the full society
climbing (global_opt ~ 0.79):
- full 0.78 climbs to the optimum, diversity maintained longest
- no_sex 0.77 can't recombine to escape local optima
- no_diversity 0.74 greedy: collapses diversity fastest, worse local optimum
- no_grounding 0.48 self-consumption collapse to an unfit consensus
(trains on the crowd -> confident-but-wrong mean;
conformity-true gap ~ 0.5)
This integrates E1-E6 + the learning kernel + E7-E10 into one system and
shows the Lamarckian society needs ALL of grounding + directed sex +
diversity: on a rugged landscape you need diversity to explore basins, sex
to recombine them, and grounding to select on reality -- remove any one and
you fail differently. Closes the C3 vertical claim analytically; the LLM
rung remains the eventual empirical instantiation.
New: knowledge/dynamic_society.py, configs/layer1/E11.yaml, figures/
plot_E11.py, README, tests/test_dynamic_society.py (+5). kind:
dynamic_society dispatch; make layer1 wired. 122 tests green.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
48181a1c84
commit
0f7b775ae5
13 changed files with 460 additions and 5 deletions
40
configs/layer1/E11.yaml
Normal file
40
configs/layer1/E11.yaml
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
experiment: E11
|
||||
kind: dynamic_society
|
||||
seed: 20260705
|
||||
n_replicates: 12
|
||||
|
||||
# (The dynamic Lamarckian society — the vertical claim, C3): a finite population of agents (genotypes)
|
||||
# evolves on a rugged NK fitness landscape that IS reality. The full society composes the four
|
||||
# operators the whole study built toward — grounding, directed recombination (sex), quality-diversity
|
||||
# selection, and mutation — and a 4-arm ablation shows each is load-bearing. Grounding is made load-
|
||||
# bearing via the consensus-conformity (self-consumption) mechanism: selection acts on
|
||||
# g*true_fitness + (1-g)*conformity, so at g=0 the society optimises agreement with its own majority
|
||||
# rather than reality and drifts to a fit-looking but actually-poor consensus. Expect: FULL climbs to
|
||||
# near the global optimum while maintaining diversity longest; NO_GROUNDING collapses to the unfit
|
||||
# consensus; NO_SEX plateaus (can't recombine to escape local optima); NO_DIVERSITY (greedy) collapses
|
||||
# diversity fast and stalls at a worse local optimum. Falsifier: an ablation matches the full society,
|
||||
# or the full society fails to exceed every ablation.
|
||||
|
||||
society:
|
||||
L: 12
|
||||
K: 8 # landscape ruggedness (epistasis) — rugged enough that diversity + sex matter
|
||||
N: 60 # population size
|
||||
g: 0.85 # grounding fraction (overwritten to 0 in the no_grounding arm)
|
||||
mu: 0.03 # per-locus mutation rate
|
||||
novelty: 0.5 # quality-diversity weight (0 in the no_diversity/greedy arm)
|
||||
n_off: 120 # directed-recombination offspring pool per generation
|
||||
recomb_rate: 0.2 # crossover rate
|
||||
sex: true # directed recombination on (false in the no_sex arm)
|
||||
select: qd # quality-diversity survival (greedy in the no_diversity arm)
|
||||
|
||||
generations: 80
|
||||
|
||||
sweep:
|
||||
- param: arm
|
||||
values:
|
||||
- {name: full, set: {}}
|
||||
- {name: no_grounding, set: {society.g: 0.0}}
|
||||
- {name: no_sex, set: {society.sex: false}}
|
||||
- {name: no_diversity, set: {society.select: greedy, society.novelty: 0.0}}
|
||||
|
||||
output: {dir: results/E11}
|
||||
Loading…
Add table
Add a link
Reference in a new issue