Транспортна модель: визначення вхідних даних моделі
Зберімо все докупи та побудуймо всі компоненти моделі.
Вас попросили оптимізувати роботу світлофорів у Чикаґо, щоб покращити рух транспорту. У таких ситуаціях корисною є модель дискретних подій.
Перший крок — оцінити середню довжину відрізків доріг між перехрестями. Ви дійшли висновку, що це в середньому 100 метрів із стандартним відхиленням близько 20 метрів. Тобто водій, імовірно, зустрічатиме світлофор кожні 80–120 метрів.
Обмеження швидкості в Чикаґо становить 30 mph (приблизно 50 км/год). Представники міста повідомили, що в середньому червоне світло триває до 90 секунд. Почніть із визначення вхідних та вихідних даних вашої моделі.
Ця вправа є частиною курсу
Дискретно-подієве моделювання в Python
Інструкції до вправи
- Задайте середнє значення та стандартне відхилення для масиву
inputs["Dist_between_intersections_m"]. - Застосуйте нормальний (гаусівський) розподіл, щоб згенерувати значення
RandomGener["Distance"]. - Застосуйте випадковий метод для генерування цілих чисел для
RandomGener["WaitTime"].
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define the model inputs
inputs = {"Dist_between_intersections_m": [____, ____],
"Speed_limit_ms": 50 * 1000 / (60 * 60),
"Max_waitTime_traffic_lights_sec": 90}
random_generated = {"Distance": [], "WaitTime": []}
for i in range(5000):
# Use the random package to generate pseudo-random values
random_generated["Distance"].append(random.____(inputs['Dist_between_intersections_m'][0],inputs['Dist_between_intersections_m'][1]))
random_generated["WaitTime"].append(random.____(0, inputs['Max_waitTime_traffic_lights_sec']))
# Plot the randomly generated distance "events"
plt.hist(random_generated["Distance"], bins=100)
plt.xlabel('# Events')
plt.ylabel('# Distance travelled (m)')
plt.show()