Spaces:
Sleeping
Sleeping
| # Architecture | |
| SYNAPSE-X models decision-making as a balance between risk, uncertainty, and reward over time. | |
| The structure keeps the system easy to inspect while preserving meaningful decision complexity. | |
| SYNAPSE-X is organized as a small benchmark stack with clear boundaries between environment logic, agents, serving, and evaluation. | |
| ## Component Map | |
| | Area | Responsibility | | |
| | --- | --- | | |
| | `env/` | core environment mechanics, predictive features, reward shaping, and deterministic grading | | |
| | `agents/` | reusable policies for comparison and benchmarking | | |
| | `api/` | FastAPI application that exposes the benchmark over HTTP | | |
| | `scripts/` | runnable entrypoints for verification, benchmarking, reporting, and inference | | |
| | `configs/` | lightweight configuration values and metadata | | |
| | `docs/` | submission-facing narrative and technical notes | | |
| ## Core Runtime Flow | |
| 1. A task preset is selected from [env/grader.py](../env/grader.py). | |
| 2. [env/environment.py](../env/environment.py) resets the episode and initializes seeded runtime state. | |
| 3. [env/echo.py](../env/echo.py) enriches each task with predictive signals: `future_risk` and `deadline_pressure`. | |
| 4. An agent selects `execute`, `delay`, or `reallocate` using current and predictive state. | |
| 5. [env/prism.py](../env/prism.py) resolves execution uncertainty, introducing controlled stochastic outcomes. | |
| 6. [env/reward.py](../env/reward.py) computes dense step rewards. | |
| 7. [env/grader.py](../env/grader.py) converts the resulting action trace into a deterministic final score. | |
| ## System Flow | |
| `STATE -> ECHO -> AGENT -> PRISM -> REWARD -> GRADER` | |
| ## CASCADE-X Crisis Dynamics | |
| Hard mode adds dependency propagation and a nonlinear crisis transition on top of the base scheduler. | |
| - `system_pressure` is normalized before it is fed into risk, deadline, and phase calculations | |
| - the normalized pressure signal is bounded to `(0, 1)`, which keeps downstream tooling and metrics stable | |
| - once normalized pressure crosses the phase threshold of `0.75`, the environment enters a nonlinear crisis regime | |
| - `reallocate` restores at most `0.2` resources per step, which intentionally limits recovery speed during crisis handling | |
| ## Environment Contract | |
| ### Observation | |
| Each observation contains: | |
| - `tasks`: sorted task list | |
| - `time`: current timestep | |
| - `resources`: current resource pool | |
| - `episode_done`: terminal flag | |
| Each task includes priority, risk, uncertainty, deadline, resource cost, completion state, and the predictive fields produced by `ECHO`. | |
| ### Actions | |
| The environment accepts a compact action interface: | |
| - `execute(task_id)` | |
| - `delay(task_id)` | |
| - `reallocate(task_id)` | |
| This keeps the API simple while still forcing meaningful strategy choices. | |
| The `reallocate` action has a hard resource-recovery cap of `0.2` per step. | |
| ## API Surface | |
| The local API in [api/app.py](../api/app.py) exposes the benchmark in a submission-friendly way: | |
| | Endpoint | Method | Purpose | | |
| | --- | --- | --- | | |
| | `/health` | `GET` | confirm server availability | | |
| | `/reset` | `GET`, `POST` | start a new episode | | |
| | `/step` | `POST` | apply one action | | |
| | `/state` | `GET` | inspect current state | | |
| | `/tasks` | `GET` | enumerate task presets | | |
| | `/grade` | `POST` | score an action trace | | |
| ## Design Guarantees | |
| - reproducibility: stochastic execution is seed-controlled | |
| - stability: rewards are clamped and observations are sorted | |
| - clarity: evaluation logic is separated from deployment and agent code | |
| - portability: the same benchmark can run locally, through the API, or via Docker | |
| ## Why This Structure Works | |
| - judges can inspect environment logic without reading serving code | |
| - baseline and comparison agents are easy to run side by side | |
| - benchmark verification is a single script instead of a manual checklist | |
| - the repository stays focused on the benchmark rather than optional product layers | |
| ## Summary | |
| SYNAPSE-X separates prediction (ECHO), uncertainty (PRISM), and evaluation (grader) to produce a reproducible, interpretable benchmark for strategic decision-making. | |