Ellipsis
Two-person hackathon team
Detect a blockage.Measure the impact.Test a response.
Built for the operators at NYC DOT's traffic management center. A blocked lane on one of 10 live DOT cameras opens an incident with the camera evidence. SUMO then runs the current signal timing against a bounded retiming, and the operator sees both before deciding. Simulation is decision support; a person still decides.
SUMO / Python / FastAPI / React / MapLibre / Docker / DigitalOcean
What I built
- Built the SUMO model of Midtown: 88 signalized intersections, used to score each bounded retiming plan against the current timing.
- Built the operator dashboard in React and MapLibre: incidents by severity, the camera evidence, and a base-versus-simulation comparison before Accept or Reject.
- Ran it live on NYC DOT camera feeds, deployed on DigitalOcean with Docker Compose. The public site falls back to a recorded replay if the server is down.
- Detection and tracking were my teammate's. On 15 hand-tagged blockages the team measured 88% precision and 93% recall.
- 88
- signalized intersections in SUMO
- 10
- live NYC DOT cameras
- 63s
- median time to alert (team)
- 2 days
- two-person build


