How zamdam2026/er-triage-simulator works
ER Triage Simulator models a batch of patients, runs the same scenario under three scheduling policies, and compares waiting-time, turnaround, and fairness metrics. Users can start this workflow from either the Streamlit interface or terminal CLI. Patient records carry the scenario and simulation state; scheduler implementations apply the distinct triage-priority, round-robin, and lottery strategies. The README describes a hospital-administration and disaster-response positioning, but the available source shows simulation and comparison rather than integrations with hospital systems. The map follows the supplied source excerpts.
Main entry points: app.py Streamlit interface · cli.py Terminal interface · simulator.py Policy runner · stats.py Metric comparison
Components 13
User Interfaces
- Streamlit interface
app.py - Terminal interface
cli.py
Simulation
- Patient generation
simulator.py - Patient record
patient.py - Policy runner
simulator.py - Triage priority
schedulers.py - Doctor rounds
schedulers.py - Quick consults
schedulers.py
Outcome Analysis
- Metric comparison
stats.py - Wait and fairness metrics
stats.py - Equity selection
stats.py
Other components
- Web user
- Terminal user
Connections 17
- Web user → Streamlit interface: sets scenario
- Terminal user → Terminal interface: enters scenario
- Streamlit interface → Patient generation: generates patients
- Terminal interface → Patient generation: generates patients
- Patient generation → Patient record: creates records
- Streamlit interface → Policy runner: runs policies
- Terminal interface → Policy runner: runs policies
- Policy runner → Triage priority: dispatches
- Policy runner → Doctor rounds: dispatches
- Policy runner → Quick consults: dispatches
- Streamlit interface → Metric comparison: compares outcomes
- Terminal interface → Metric comparison: compares outcomes
- Metric comparison → Wait and fairness metrics: summarizes
- Streamlit interface → Equity selection: selects by equity
- Terminal interface → Equity selection: selects by equity
- Streamlit interface → Web user: shows results
- Terminal interface → Terminal user: prints results