Spaces:
Sleeping
Sleeping
| """Hardcoded 6-step walkthrough on outbreak_easy (in-process env). | |
| Run: ``uv run python mm.py`` | |
| Prints the action, env-accepted flag, reward, per-region telemetry, and | |
| resource inventory after each step. See ``mm.md`` for the design intent | |
| behind each step. | |
| """ | |
| from __future__ import annotations | |
| from CrisisWorldCortex.models import ( | |
| CrisisworldcortexAction, | |
| DeployResource, | |
| Escalate, | |
| NoOp, | |
| OuterActionPayload, | |
| RestrictMovement, | |
| ) | |
| from CrisisWorldCortex.server.CrisisWorldCortex_environment import ( | |
| CrisisworldcortexEnvironment, | |
| ) | |
| def _summarize(obs) -> str: | |
| regions = " | ".join( | |
| f"{r.region}: cases={r.reported_cases_d_ago:>3} " | |
| f"hosp={r.hospital_load:.2f} comp={r.compliance_proxy:.2f}" | |
| for r in obs.regions | |
| ) | |
| res = obs.resources | |
| restr = ( | |
| ", ".join(f"{r.region}={r.severity}({r.ticks_remaining})" for r in obs.active_restrictions) | |
| or "(none)" | |
| ) | |
| return ( | |
| f" regions: {regions}\n" | |
| f" resources: kits={res.test_kits} beds={res.hospital_beds_free} " | |
| f"mu={res.mobile_units} vax={res.vaccine_doses}\n" | |
| f" restricts: {restr}\n" | |
| f" tick={obs.tick}/{obs.tick + obs.ticks_remaining} done={obs.done}" | |
| ) | |
| def main() -> None: | |
| env = CrisisworldcortexEnvironment() | |
| obs = env.reset(task_name="outbreak_easy", seed=0) | |
| print("=== Initial state (outbreak_easy, seed=0) ===") | |
| print(_summarize(obs)) | |
| print() | |
| steps: list[tuple[str, OuterActionPayload]] = [ | |
| ("NoOp baseline", NoOp()), | |
| ( | |
| "Deploy 200 test_kits to R1", | |
| DeployResource(region="R1", resource_type="test_kits", quantity=200), | |
| ), | |
| ("Moderate restriction on R1", RestrictMovement(region="R1", severity="moderate")), | |
| ( | |
| "Deploy 500 vaccine_doses to R1", | |
| DeployResource(region="R1", resource_type="vaccine_doses", quantity=500), | |
| ), | |
| ("Escalate to national", Escalate(to_authority="national")), | |
| ( | |
| "Strict restriction on R1 (now legal)", | |
| RestrictMovement(region="R1", severity="strict"), | |
| ), | |
| ] | |
| for i, (label, payload) in enumerate(steps, start=1): | |
| obs = env.step(CrisisworldcortexAction(action=payload)) | |
| last_log = obs.recent_action_log[-1] | |
| reward = obs.reward if obs.reward is not None else 0.0 | |
| print(f"=== Step {i}: {label} ===") | |
| print(f" action: {payload.kind} accepted={last_log.accepted}") | |
| print(f" reward: {reward:.3f}") | |
| print(_summarize(obs)) | |
| print() | |
| if __name__ == "__main__": | |
| main() | |