Mô hình giao thông: xác định đầu vào mô hình
Hãy ghép lại tất cả và xây dựng đầy đủ các thành phần của mô hình.
Bạn được giao nhiệm vụ tối ưu hóa hệ thống đèn giao thông của thành phố Chicago để cải thiện lưu lượng giao thông. Mô hình mô phỏng sự kiện rời rạc rất hữu ích trong các tình huống như vậy.
Bước đầu tiên là đo chiều dài trung bình của các đoạn đường giữa các ngã tư. Bạn kết luận trung bình là 100 mét, với độ lệch chuẩn khoảng 20 mét, nghĩa là tài xế trung bình sẽ gặp một đèn giao thông sau mỗi 80–120 mét.
Giới hạn tốc độ ở Chicago là 30 mph (xấp xỉ 50 km/h). Chính quyền thành phố cho biết, trung bình đèn đỏ kéo dài tối đa 90 giây. Hãy bắt đầu bằng cách xác định đầu vào và đầu ra của mô hình.
Bài tập này là một phần của khóa học
Mô phỏng Sự kiện Rời rạc bằng Python
Hướng dẫn bài tập
- Đặt giá trị trung bình (mean) và độ lệch chuẩn (standard deviation) cho mảng
inputs["Dist_between_intersections_m"]. - Áp dụng phân phối Gaussian để tạo các giá trị
RandomGener["Distance"]. - Áp dụng một phương thức ngẫu nhiên để tạo số nguyên cho
RandomGener["WaitTime"].
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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()