Model transportasi: mendefinisikan masukan model
Mari kita satukan semuanya dan bangun seluruh komponen model.
Anda diminta untuk mengoptimalkan lampu lalu lintas di kota Chicago untuk meningkatkan kelancaran arus kendaraan. Model peristiwa diskret sangat bermanfaat dalam situasi seperti ini.
Langkah pertama adalah mengukur panjang rata-rata jalan antarperempatan, yang Anda simpulkan sekitar 100 meter dengan simpangan baku sekitar 20 meter. Artinya, pengemudi diperkirakan akan menjumpai lampu lalu lintas setiap 80–120 meter.
Batas kecepatan di Chicago adalah 30 mph (sekitar 50 km/jam). Pejabat kota memberi tahu Anda bahwa, rata-rata, lampu tetap merah hingga 90 detik. Mulailah dengan mendefinisikan masukan dan keluaran model Anda.
Latihan ini merupakan bagian dari kursus
Simulasi Peristiwa Diskret dengan Python
Instruksi latihan
- Tetapkan nilai rataan dan simpangan baku untuk array
inputs["Dist_between_intersections_m"]. - Terapkan sebaran Gaussian untuk menghasilkan nilai
RandomGener["Distance"]. - Terapkan metode acak untuk menghasilkan bilangan bulat bagi
RandomGener["WaitTime"].
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# 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()