How satyatejachukka/adaptive-traffic-signal works
SeepageRL is a traffic-signal control research application: an interactive simulator and a headless experiment engine use seepage-aware state, constrained multi-profile vector Q-learning, and counterfactual explanations to select and audit signal actions. The benchmark runner evaluates controllers across scenarios and seeds; publication plots summarize benchmark results and seepage physics. Edges follow excerpts or README statements; unsampled simulation wiring is not inferred beyond those documented capabilities.
Main entry points: simulation.py Interactive Simulator · headless_runner.py Headless Environment · rl_state.py Seepage State · run_experiments.py Ablation Runner
Components 13
Traffic Physics
- Seepage State
rl_state.py - Control Config
config.py
Control and Audit
- Vector Q Learner
rl_agent.py - Vector Rewards
reward.py - Counterfactual Audit
counterfactual_explainer.py
Simulation Runtimes
- Interactive Simulator
simulation.py - Traffic and Telemetry UI
simulation.py - Headless Environment
headless_runner.py - Vector Agent Trainer
headless_runner.py
Research Outputs
- Ablation Runner
run_experiments.py - Benchmark Results
experiments/benchmark_results.csv - Research Figures
plot_paper_figures.py
Other components
- Operator
Connections 18
- Operator → Interactive Simulator: runs
readme.md - Interactive Simulator → Traffic and Telemetry UI: renders
readme.md - Interactive Simulator → Vector Q Learner: selects actions
simulation.py - Interactive Simulator → Seepage State: encodes state
simulation.py - Interactive Simulator → Counterfactual Audit: shows explanations
readme.md - Interactive Simulator → Control Config: uses settings
simulation.py - Headless Environment → Control Config: uses settings
headless_runner.py - Headless Environment → Seepage State: builds state
headless_runner.py - Headless Environment → Vector Q Learner: uses learner
headless_runner.py - Vector Agent Trainer → Headless Environment: trains in
readme.md - Ablation Runner → Headless Environment: runs scenarios
run_experiments.py - Ablation Runner → Vector Q Learner: evaluates policies
run_experiments.py - Ablation Runner → Seepage State: uses parameters
run_experiments.py - Ablation Runner → Benchmark Results: writes results
readme.md - Research Figures → Seepage State: plots physics
plot_paper_figures.py - Research Figures → Benchmark Results: reads results
plot_paper_figures.py - Vector Rewards → Vector Q Learner: delegates reward
reward.py - Vector Rewards → Seepage State: uses parameters
reward.py