How taotlema/valmistada works
Valmistada is a PyQt6 transit-ridership simulation research application. Users choose a generation model and configure inputs, then run a simulated MUNI year; the app loads and processes GTFS, builds a network, simulates ridership, aggregates daily counts into trial results, and presents or exports outputs. The README also describes four generation models and modifier data. Connections reflect excerpts, SOURCE INDEX references, and README statements; unsampled subsystem details and the benchmarking implementation are not inferred.
Main entry points: simulation_engine.py Simulation engine · app.py App controller · aggregator.py Ridership aggregation · start_screen.py Start screen
Components 28
Desktop interface
- App controller
SD_Game/app_controller/app.py - Event bus
SD_Game/app_controller/event_bus.py - Screen navigation
SD_Game/app_controller/screen_manager.py - Start screen
SD_Game/ui/screens/start_screen.py - Input screen
SD_Game/ui/screens/input_screen.py - Simulation screen
SD_Game/ui/screens/game_world_screen.py - Output screen
SD_Game/ui/screens/output_screen.py - Dictionary screen
SD_Game/ui/screens/dictionary_screen.py
Data preparation
- GTFS loader
SD_Game/data/loaders/gtfs_loader.py - GTFS models
SD_Game/data/models/gtfs_models.py - Input validation
SD_Game/data/processors/data_validator.py - GTFS processor
SD_Game/data/processors/gtfs_processor.py - Modifier loading
SD_Game/data/loaders/modifier_loader.py - Trial loading
SD_Game/data/loaders/output_loader.py - Result export
SD_Game/data/storage/export_manager.py - Ridership aggregation
SD_Game/data/processors/aggregator.py - Trial records
SD_Game/data/models/output_models.py
Simulation runtime
- Simulation engine
SD_Game/game_world/core/simulation_engine.py - Scheduling
SD_Game/game_world/systems/scheduling_system.py - Demand modifiers
SD_Game/game_world/systems/modifier_system.py - Ridership models
SD_Game/game_world/systems/ridership_system.py - Deterministic model
SD_Game/game_world/systems/ridership_system_deterministic.py - High-fidelity model
SD_Game/game_world/systems/ridership_system_hifi.py - Rule-based v2
SD_Game/game_world/systems/ridership_system_rb2.py
Transit world
- Network builder
SD_Game/game_world/map/graph_builder.py - Map rendering
SD_Game/game_world/map/renderer_adapter.py - Transit entities
SD_Game/game_world/entities/route.py
Other components
- Research user
Connections 34
- Research user → Start screen: chooses workflow
- App controller → Screen navigation: registers screens
SD_Game/app_controller/app.py - App controller → GTFS loader: loads feed
SD_Game/app_controller/app.py - App controller → Input validation: validates feed
SD_Game/app_controller/app.py - App controller → GTFS processor: indexes feed
SD_Game/app_controller/app.py - GTFS loader → GTFS models: creates models
SD_Game/data/loaders/gtfs_loader.py - GTFS processor → GTFS models: indexes records
SD_Game/data/processors/gtfs_processor.py - Start screen → Screen navigation: navigates
SD_Game/ui/screens/start_screen.py - Input screen → Screen navigation: navigates
SD_Game/ui/screens/input_screen.py - Start screen → Event bus: subscribes events
SD_Game/ui/screens/start_screen.py - Simulation screen → Simulation engine: starts simulation
SD_Game/ui/screens/game_world_screen.py - Simulation screen → Event bus: subscribes events
SD_Game/ui/screens/game_world_screen.py - Simulation engine → Event bus: publishes events
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Network builder: builds network
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Map rendering: sets renderer
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Transit entities: creates world entities
SD_Game/game_world/core/simulation_engine.py - Network builder → GTFS processor: reads route data
SD_Game/game_world/map/graph_builder.py - Network builder → Transit entities: builds routes
SD_Game/game_world/map/graph_builder.py - Map rendering → Transit entities: renders network
SD_Game/game_world/map/renderer_adapter.py - Simulation engine → Scheduling: dispatches scheduling
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Demand modifiers: applies modifiers
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Ridership models: selects model
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Deterministic model: selects model
SD_Game/game_world/core/simulation_engine.py - Simulation engine → High-fidelity model: selects model
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Rule-based v2: selects model
SD_Game/game_world/core/simulation_engine.py - Simulation engine → Ridership aggregation: flushes daily counts
SD_Game/game_world/core/simulation_engine.py - Ridership models → Ridership aggregation: records boardings
SD_Game/game_world/systems/ridership_system.py - Deterministic model → Ridership aggregation: records boardings
SD_Game/game_world/systems/ridership_system_deterministic.py - Rule-based v2 → Ridership aggregation: records boardings
SD_Game/game_world/systems/ridership_system_rb2.py - Ridership aggregation → Trial records: creates trial results
SD_Game/data/processors/aggregator.py - App controller → Result export: exports completed trial
SD_Game/app_controller/app.py - App controller → Output screen: refreshes results
SD_Game/app_controller/app.py - Output screen → Trial loading: loads saved trials
- App controller → Modifier loading: loads modifiers
SD_Game/app_controller/app.py