BaşlayınÜcretsiz Başlayın

Ulaşım modeli: model girdilerini tanımlama

Hadi hepsini bir araya getirelim ve model bileşenlerinin tamamını kuralım.

Chicago şehrindeki trafik akışını iyileştirmek için trafik ışıklarını optimize etmen isteniyor. Bu tür durumlarda ayrık olay simülasyonu (discrete-event model) oldukça faydalıdır.

İlk adım olarak kavşaklar arasındaki ortalama yol uzunluğunu ölçüyorsun. Ortalama 100 metre ve yaklaşık 20 metre standart sapma buldun; bu da bir sürücünün her 80-120 metrede bir trafik ışığıyla karşılaşmasının beklendiği anlamına geliyor.

Chicago’daki hız limiti 30 mph’dir (yaklaşık 50 km/s). Şehir yetkilileri, ışığın ortalama olarak en fazla 90 saniye kırmızı kaldığını belirtti. Modelinin giriş ve çıkışlarını tanımlayarak başla.

Bu egzersiz

Python ile Ayrık Olay Benzetimi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • inputs["Dist_between_intersections_m"] dizisinin ortalamasını ve standart sapmasını ayarla.
  • RandomGener["Distance"] değerlerini üretmek için Gaussian dağılımını uygula.
  • RandomGener["WaitTime"] için tamsayılar üretmek üzere rastgele bir yöntem uygula.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# 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()
Kodu Düzenle ve Çalıştır