Inter-District Mode Choice Modelling of Resident Students of BUET
I studied how BUET resident students choose between bus, AC bus, train, personal car, and rental for inter-district trips from Dhaka. I designed an RP questionnaire, collected and cleaned data from 241 students, and estimated discrete choice models in R with Apollo. I built thirteen models, ranging from simple to complex specifications, and then selected the final model using log likelihood, AIC, BIC, adjusted R-squared, and t-tests. Full description can be found here.
DhakaSim: Making Crash Detection Realistic for Laneless, Mixed Traffic
DhakaSim is a microsimulation of dense, laneless urban corridors with mixed users (cars, rickshaws, bikes, pedestrians). The original build over-reported “accidents” in queues and during merges because close passes and mid-merge overlaps were counted as crashes. I redesigned the safety logic to (i) distinguish low-severity contacts from true crashes using 2D body overlap and closing-speed thresholds, (ii) evaluate lane changes with multi-step (swept) safety checks that abort unsafe merges, and (iii) handle pedestrian/object interactions deterministically via geometry + speed. Parameters were exposed for calibration, and structured logs now separate contacts, minor crashes, and major crashes. Across paired scenarios, reported accidents dropped substantially (e.g., mean 36.0 → 14.9 per run; ~59% overall reduction) while preserving detection of higher-severity events—supporting credible, severity-aware KPIs and fair evaluation of low-cost treatments. Full description can be found here.
Adaptive Traffic Signal Control with SUMO and Python
I designed and implemented a simulation-based study to assess the impact of adaptive traffic signal control on urban mobility. Using SUMO (Simulation of Urban Mobility) and Python’s TraCI API, I built a small grid network in NetEdit with multiple intersections and realistic vehicle flows. The project compared fixed-time signals against a queue-responsive adaptive controller written in Python. The adaptive controller dynamically adjusted green times based on real-time queue lengths, while ensuring minimum and maximum green durations for safety and stability. Full description can be found here.