In a finite-resource, agent-based evolution model, ten seeds started under identical conditions and the same reference_pop split into three phases — satiated, ambiguous, and crisis-maintenance. The split is not decided from the start; it becomes clear in recovery3, one specific recovery window. And although risk_response was first suspected of amplifying crisis, removing that term increased the number of crisis outcomes instead of reducing them. This report organizes the observations within this model, separating the established from the unsettled.
reference_pop=75 sits in the band where, as resource thinning increases, the population moves from satiation toward collapse — a regime where it can experience crisis. Running ten seeds at this single point, they split into satiated 1 ambiguous 4 crisis 5.
Tracing the origin generation by generation, seeds nearly overlap for the first 120 generations; the gap becomes clear in recovery3 (178–239), where it closely corresponds to the eventual final phase. By class, crisis seeds repeatedly show weak low-class recovery and reproduction while mid/high are relatively maintained.
But this is association, not a proven mechanism. Directly testing the original suspicion, an ablation that removes the risk_response term from expressed_assertiveness increased the number of crisis outcomes.
The current reading is that, within this model, risk_response looks less like a crisis-generating device and more like something that helped maintain the capacity of low/mid classes to persist and recover — an observational summary, not a settled cause.
In this model's predecessor (the gen-9 series), cooperative success let energy accumulate and pinned the crisis variable to 0 outside famine. That was judged to be a known case of eco-evolutionary feedback, and likely an artifact of how the crisis definition and energy accumulation were built.
The gen10 series rebuilds that setting. Resources are made finite via per_capita = BASE_RESOURCE * reference_pop / len(pop), and lowering
reference_pop reduces per-capita resource availability until the population can experience hunger and crisis.
To see how traits act in a world where crisis is present, each agent carries three independent heritable traits:
cooperation, assertiveness, and risk_response.
risk_response was added as a term that raises the expression of assertiveness the stronger crisis is.
# crisis-time display
expressed_assertiveness = assertiveness + risk_response * crisis
The naive prior at introduction was that a trait expressed more strongly under crisis could act as an amplifier that worsens crisis. Whether that prior holds is the question the later ablation puts to the test.
In the resource-thinning calibration, there is a sharp phase transition: satiation above reference_pop≈100, a band around 30–75 where the population survives while experiencing crisis, and a collapse side at 15 and below. reference_pop=75 sits at the top edge of that crisis-maintenance band, where the mean pop (≈230) is a misleading midpoint representing neither group.
| phase | seeds | n |
|---|---|---|
| satiated | 3 | 1 |
| ambiguous | 4 · 5 · 7 · 8 | 4 |
| crisis_maintenance | 0 · 1 · 2 · 6 · 9 | 5 |
Under identical conditions and the same reference_pop, the final phase splits by seed (initial RNG). The split was consistently reproduced across reruns.
Which difference in the initial distribution decides the split is not identified. At gen120, crisis-bound and satiated-bound seeds overlap within a pop difference of a few tens; the phase cannot be predicted from initial values.
Logging gen0–259 every generation and summarizing by famine/recovery window lets us trace when the divergence forms. The energy_p10 gap appears weakly in famine2–3, becomes clear in recovery3 (178–239), closely corresponds to the eventual final phase, and surfaces as a mortality gap in the following famine4.
| phase | recovery3 gain | gen239 p10 (ex.) |
|---|---|---|
| satiated | 2.61 | 5.80 |
| ambiguous | 2.35–3.12 | middle |
| crisis | 0.73–1.97 | low as 2.41 |
The split is not visible in the first 120 generations. The recovery3 gain shows a difference corresponding to the final phase, and the famine4 population drop (up to 52.9%) tracks the p10 that was already low at that point.
Why the recovery3 gain differs is unresolved — whether it is trait composition, turnover via death, or accumulated stochastic noise has not been separated.
A class (low / mid / high) refers to a tier of expressed_assertiveness. Following recovery3 by class, crisis seeds repeatedly show heavier low-class death, weaker reproduction, and worse contact loss, while mid/high are relatively maintained. At the generation level, in crisis seeds low deaths tend to occur before the appearance of mid/high reproducing parents in 4 of 5 seeds.
One caveat matters here. parent_births is a log of the class of the reproducing parent, not the post-mutation class transition of offspring.
The parent → child replacement needs a separate audit and is not confirmed within this report.
Low deaths in crisis seeds often appear before mid/high reproducing parents (4 of 5). A weak time-order pattern, compatible with a bottleneck-like component.
This is not called a bottleneck. At most a bottleneck-like persistence failure (low recovery not persisting across the next famine). Parent → child class transition and any displacement remain unconfirmed.
In the time-order audit, seed9 alone falls outside the "low death first" pattern among crisis seeds. It looks like an exception, but the persistence audit through famine4 shows another face. Every crisis seed loses low count in famine4 and recovers energy_p10 in recovery4, yet none returns to its recovery3-end low count by gen319.
| metric | value |
|---|---|
| famine4 low_n delta (mean) | −51.6 |
| recovery4 low_n delta (vs recovery3, mean) | −67.0 |
seed9 is the same as the others in losing low recovery; what is distinctive is its entry condition — it entered famine4 with a much larger low count and a high p10. So even where the time order is an exception, the persistence problem is common to the crisis seeds.
seed9 is the exception to the time-order pattern. Meanwhile, non-persistence of low recovery is common to all crisis seeds, seed9 included.
The exception seed and the mixed non-crisis cases keep a circulation/feedback reading alive alongside a single bottleneck-like mechanism. The evidence does not currently support choosing between the two interpretations.
To test the original suspicion directly, the gen10j code is inherited unchanged and only the risk_response term of expressed_assertiveness() is removed.
baseline: assertiveness + risk_response * crisis ablated : assertiveness
The original expectation was simple: remove the amplifier and crisis should decrease. The result was the opposite.
| run | satiated | ambiguous | crisis |
|---|---|---|---|
| baseline | 1 | 4 | 5 |
| ablated | 0 | 1 | 9 |
Recovery4 low count in baseline non-crisis seeds also dropped sharply under ablation (e.g. seed4 141→2, seed7 207→13). By class × window (gen10q), the effect lands mainly on the preservation of low/mid recovery capacity: in low, higher mortality, worse contact loss, and reduced reproductive opportunity during recovery; mid also shows stronger deaths and count loss in recovery4. Rather than directly helping high, it looks like the capacity for low/mid not to drop out was being supported.
Removing the risk_response term does not erase crisis behavior — it shifts more seeds into the crisis phase (crisis 5→9). In baseline non-crisis seeds, low/mid become more prone to breaking down: low shows higher mortality, worse contact loss, and reduced reproductive opportunity; mid shows stronger recovery4 deaths and count loss.
That the effect lands mainly on low/mid recovery capacity is observed, but this is not a full causal determination. Whether the main pathway is reduced low mortality, improved contact loss, or preserved reproductive opportunity is not narrowed to one channel. risk_response is not declared a hero either.
A provisional summary, holding within this model.
At reference_pop=75, identical seeds split into three phases, and the split is not decided from the start but becomes clear in recovery3. In the class flow, crisis seeds repeatedly show weak low recovery while mid/high are maintained, and that low recovery does not persist past famine4.
As for risk_response, the ablation did not support the original "amplifying crisis" suspicion. Because removing the term increased the number of crisis outcomes, within this model risk_response looks less like a crisis-generating device and more like something that helped maintain the capacity of low/mid classes to persist and recover.
Scope and caveats, stated explicitly.
Read everything as holding within this model. It is not generalized to society, biology, or real-world human groups. There are 10 seeds, the focus is the single point reference_pop=75, and the crisis_maintenance sample is limited.
The class-composition / phase correspondence is association, not mechanism. parent_births is the parent class, not offspring transition. Not called a bottleneck — kept at bottleneck-like persistence failure. Neither low nor high is named the culprit of crisis. risk_response is declared neither villain nor hero.
This report is reconstructed with reference to working logs from several AIs (Claude / Codex / ChatGPT). Those logs should not be treated as primary evidence.
Not new theorizing — candidates that narrow the observations one step at a time.
| # | narrow question |
|---|---|
| 1 | Look at the trait-distribution trajectory within recovery3 itself, to separate what drives differences in recovery3 gains (trait composition / turnover / noise). |
| 2 | Log the parent → child class transition and check how parent_births maps onto the next generation's class composition. |
| 3 | Continuing gen10q, decompose the effect seen in low/mid further: which is the main pathway — reduced low mortality, improved contact loss, or preserved reproductive opportunity. |
| 4 | Check whether the same mechanism appears at reference_pop=80/85, increasing the crisis_maintenance sample. |