babylon.models.scenario
Scenario configuration for multiverse simulation injection.
ScenarioConfig holds parameters that modify a simulation’s starting conditions to explore different counterfactual paths. This enables the “Multiverse Protocol” where we run 2^N permutations of High/Low values to prove mathematical divergence.
Sprint 1 (Multiverse Protocol): Initial implementation with three parameters:
superwage_multiplier: Multiplier for imperial superwage extraction efficiency
solidarity_index: Base strength for SOLIDARITY edges
repression_capacity: State violence capacity modifier
Paradox Refactor: Renamed rent_level -> superwage_multiplier for theory alignment. The term “superwage” (from MLM-TW theory) more accurately describes the mechanism where core workers receive wages above value produced, subsidized by imperial rent.
Usage:
from babylon.models.scenario import ScenarioConfig
scenario = ScenarioConfig(
name="HighSW_LowSol_HighRep",
superwage_multiplier=1.5,
solidarity_index=0.2,
repression_capacity=0.8,
)
Classes
|
Configuration for multiverse scenario injection. |
- class babylon.models.scenario.ScenarioConfig(**data)[source]
Bases:
BaseModelConfiguration for multiverse scenario injection.
ScenarioConfig defines modifiers that transform a base WorldState and SimulationConfig into a specific counterfactual scenario. This enables deterministic exploration of parameter space without random sampling.
The model is frozen (immutable) to ensure scenarios remain constant throughout simulation runs.
- Parameters:
- name
Human-readable scenario identifier, must be unique within a multiverse run. Format: “{SWLevel}_{SolidarityLevel}_{RepressionLevel}”
- superwage_multiplier
Multiplier for extraction_efficiency in SimulationConfig. Default 1.0 (no change). Range: [0, inf). - 0.3 = Low superwage (periphery retains more value) - 1.5 = High superwage (aggressive extraction) Theory: “Superwage” refers to core worker wages above value produced, subsidized by imperial rent extraction.
- solidarity_index
Base strength for SOLIDARITY edges in topology. Default 0.5. Constrained to [0, 1] via Coefficient type. - 0.2 = Low solidarity (atomized workers) - 0.8 = High solidarity (strong worker networks)
- repression_capacity
State violence capacity modifier. Updates repression_faced on entities and repression_level in config. Default 0.5. Constrained to [0, 1] via Coefficient type. - 0.2 = Low repression (weak state) - 0.8 = High repression (police state)
- model_config: ClassVar[ConfigDict] = {'frozen': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- name: str
- superwage_multiplier: float
- solidarity_index: Coefficient
- repression_capacity: Coefficient