babylon.engine.systems.survival

Survival systems for the Babylon simulation - The Calculus of Living.

Sprint 3.4.2: Fixed Bug 1 - Organization is now dynamic based on SOLIDARITY edges. P(S|R) = (base_organization + solidarity_bonus) / repression

The solidarity_bonus is the sum of incoming SOLIDARITY edge weights (solidarity_strength). This makes organization a function of class solidarity infrastructure, not just a static value.

Classes

SurvivalSystem()

Phase 3: Survival Calculus (P(S|A) vs P(S|R)).

class babylon.engine.systems.survival.SurvivalSystem[source]

Bases: object

Phase 3: Survival Calculus (P(S|A) vs P(S|R)).

Bug Fix (Sprint 3.4.2): Organization is now DYNAMIC. organization = base_organization + solidarity_bonus

Where solidarity_bonus = sum of incoming SOLIDARITY edge weights. This ensures that High Solidarity scenarios produce higher P(S|R).

name = 'Survival Calculus'
step(graph, services, _context)[source]

Update P(S|A) and P(S|R) for all entities.

Organization is calculated as:

effective_org = base_org + solidarity_bonus

Where solidarity_bonus = sum(solidarity_strength for incoming SOLIDARITY edges)