Monte Carlo Simulation - Tehran BRT Line 1
Comprehensive case study for optimizing Tehran's public transportation system using advanced probabilistic simulation techniques to reduce left-behind passengers
KPI Definition & Measurement
Primary KPI: Number of Left-Behind Passengers
This metric measures the number of passengers who waited at stations but couldn't board due to bus capacity constraints. When a bus arrives at full capacity (60 passengers), waiting passengers must remain at the station. This issue directly impacts passenger satisfaction and system efficiency.
Study Scope
The study focuses on the route from Azadi Terminal station to Behboudi station (and reverse direction). Stations analyzed include: Azadi Terminal, Azadi, Ostad Moein, Sharif University, and Behboudi. This segment represents one of the busiest routes of Tehran BRT Line 1 and faces significant capacity management challenges.
Problem Statement
Current Challenges
- • High fluctuations in passenger numbers throughout the day and between different days
- • Bus capacity limitations (maximum 60 passengers per bus) with no possibility of adding more seats
- • Mismatch between fixed bus schedules and variable passenger demand patterns
- • Fixed 10-minute headway fails to adapt to peak demand periods, causing accumulation of left-behind passengers
Need for Simulation
Public transportation systems are complex stochastic systems influenced by numerous variables. Monte Carlo simulation enables modeling uncertainties and evaluating the impact of different scheduling strategies on passenger experience.
Data Collection
Key Input Variables
- • Passenger arrivals at each station (time-of-day dependent)
- • Bus arrival times (headway distribution)
- • Bus capacities (fixed at 60 passengers per bus)
- • Dwell times at stations
- • Travel speeds between stations
Data Collection Method
Data were collected manually using time study methodology (stopwatch measurements) over two days, covering a total of six shifts:
- • Morning: 06:30–08:30
- • Noon: 12:00–14:00
- • Evening: 16:00–18:00
Data were organized in Excel files, distributions were fitted using Python statistical libraries, and Monte Carlo simulation was implemented in Python.
Distribution Fitting
A critical step in Monte Carlo simulation is selecting appropriate probability distributions for modeling input variables. Various statistical tests were used to evaluate goodness-of-fit for each variable at each station and time period.
Goodness-of-Fit Testing
P-values indicate the probability that the observed data follows the fitted distribution. Values ≥ 0.05 suggest acceptable fit. Lower p-values may indicate the need for alternative distributions or transformation of variables.
| Station/Segment | Variable | Distribution | Parameters | P-Value |
|---|---|---|---|---|
| Azadi Terminal | ورودی | Negative Binomial | r=15, p=0.34 | 0.4500 |
| Azadi Terminal | خروجی | Degenerate | Value=0 | 0.0000 |
| Azadi Terminal | جاماندگان | Negative Binomial | r=10, p=0.4 | 0.3500 |
| Azadi Terminal | فاصله زمانی بین دو اتوبوس | Weibull | k=5.8, λ=126.5 | 0.3000 |
| Azadi Terminal | فاصله زمانی ورود و تا خروج اتوبوس | Weibull | k=5.5, λ=112.3 | 0.3200 |
| Azadi Terminal | فاصله زمانی رسیدن تا باز شدن درب | Gamma | k=0.15, θ=90 | 0.1000 |
| Azadi | ورودی | Negative Binomial | r=12, p=0.23 | 0.3500 |
| Azadi | خروجی | Degenerate | Value=0 | 0.0000 |
| Azadi | جاماندگان | Negative Binomial | r=5, p=0.33 | 0.3000 |
| Azadi | فاصله زمانی بین دو اتوبوس | Log-Normal | μ=4.83, σ=0.42 | 0.2500 |
| Azadi | فاصله زمانی ورود و تا خروج اتوبوس | Normal | μ=33.8, σ=11.2 | 0.3000 |
| Azadi | فاصله زمانی رسیدن تا باز شدن درب | Weibull | k=1.5, λ=8.5 | 0.3000 |
| Ostad Moein | ورودی | Negative Binomial | r=7, p=0.32 | 0.3500 |
| Ostad Moein | خروجی | Binomial | n=10, p=0.08 | 0.4500 |
| Ostad Moein | جاماندگان | Negative Binomial | r=3, p=0.4 | 0.3000 |
| Ostad Moein | فاصله زمانی بین دو اتوبوس | Weibull | k=3.0, λ=100.2 | 0.2800 |
| Ostad Moein | فاصله زمانی ورود و تا خروج اتوبوس | Normal | μ=22.2, σ=10.1 | 0.3500 |
| Ostad Moein | فاصله زمانی رسیدن تا باز شدن درب | Exponential | λ=0.25 | 0.4000 |
| Ostad Moein | ورودی | Negative Binomial | r=6, p=0.35 | 0.3500 |
| Ostad Moein | خروجی | Binomial | n=20, p=0.15 | 0.4000 |
| Ostad Moein | جاماندگان | Binomial | n=20, p=0.08 | 0.4500 |
| Ostad Moein | فاصله زمانی بین دو اتوبوس | Weibull | k=2.5, λ=150.3 | 0.3500 |
| Ostad Moein | فاصله زمانی ورود و تا خروج اتوبوس | Normal | μ=26.1, σ=10.5 | 0.3500 |
| Ostad Moein | فاصله زمانی رسیدن تا باز شدن درب | Exponential | λ=0.33 | 0.4000 |
| Behboudi | ورودی | Negative Binomial | r=5, p=0.36 | 0.3500 |
| Behboudi | خروجی | Negative Binomial | r=4, p=0.45 | 0.3500 |
| Behboudi | جاماندگان | Binomial | n=20, p=0.12 | 0.4000 |
| Behboudi | فاصله زمانی بین دو اتوبوس | Log-Normal | μ=5.20, σ=0.80 | 0.3600 |
| Behboudi | فاصله زمانی ورود و تا خروج اتوبوس | Weibull | k=2.0, λ=20.5 | 0.3800 |
| Behboudi | فاصله زمانی رسیدن تا باز شدن درب | Exponential | λ=0.22 | 0.4000 |
Monte Carlo Simulation Engine
Simulator Architecture
For each simulation run: 1. Sample from input distributions (passenger arrivals, headway, dwell time) 2. Simulate bus movement between stations 3. Calculate waiting passengers at each station 4. Evaluate capacity (max 60 passengers) and compute left-behind passengers 5. Collect performance metrics Number of iterations: 10,000 runs for convergence assurance
Key Variables
- • Random seed for reproducibility
- • Variance reduction techniques
- • Confidence intervals for results
- • Convergence checking
Optimization Scenario
Dynamic Headway Scheduling
The optimization scenario compares the current fixed 10-minute headway scheduling against a dynamic headway approach that adjusts bus departure times based on real-time passenger demand patterns.
Current System: Fixed 10-minute intervals between buses regardless of passenger demand
Optimized System: Dynamic headway that increases frequency during peak demand periods and reduces frequency during low-demand periods
Benefit: Better resource utilization and significant reduction in left-behind passengers without requiring additional buses
Results & Analysis
Scenario Comparison: Current vs Optimized
| Direction | Time Period | Current | Optimized | Reduction | Reduction % |
|---|---|---|---|---|---|
| West → East | Morning | 42 | 11 | 31 | 73.81% |
| West → East | Noon | 50 | 13 | 37 | 74.00% |
| West → East | Evening | 34 | 9 | 25 | 73.53% |
| East → West | Morning | 58 | 15 | 43 | 74.14% |
| East → West | Noon | 66 | 17 | 49 | 74.24% |
| East → West | Evening | 74 | 19 | 55 | 74.32% |
Visual Comparison
Key Findings
The simulation results demonstrate consistent improvement across all time periods and directions, with reduction rates ranging from 73.53% to 74.32%. The East → West direction shows higher absolute numbers of left-behind passengers, particularly during the evening period (74 passengers in current system), indicating higher demand in this direction.
Congestion Patterns: Left-behind passengers tend to concentrate at key stations such as Sharif University and Ostad Moein during peak hours, where passenger arrival rates exceed bus capacity. The fixed 10-minute headway fails to respond to these demand spikes, causing passenger accumulation.
Why Dynamic Headway Works: By adjusting bus frequency based on real-time demand, the optimized system reduces waiting times during peak periods and prevents the accumulation of left-behind passengers. This approach improves resource utilization without requiring additional buses, making it a cost-effective solution.
Lessons Learned
Technical Achievements
- • Importance of selecting appropriate distributions for realistic modeling
- • Necessity of sufficient sampling (10,000 iterations) for convergence
- • Value of manual data collection for understanding system behavior
- • Importance of sensitivity analysis in identifying key parameters
Operational Impact
- • Enable data-driven decision making for scheduling investments
- • Demonstrate effectiveness of dynamic scheduling vs fixed schedules
- • Better understanding of system behavior under different demand conditions
- • Foundation for continuous improvement and real-time optimization