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

Araba Montaj Hattı: belirlenim dışı olaylar ekleme

Bu egzersiz, SimPy kullanmadan belirlenim dışı (non-deterministic) süreçlere odaklanır. Bir sonraki egzersizde SimPy’ye odaklanacağız.

Senden, bir önceki ayrık olay simülasyonu (discrete-event) araba üretim hattı modelindeki süreç sürelerindeki değişkenliği hesaba katman istendi. Önceden belirlenen süreç grupları şunlardı: (1) "Kaynak ve boya" ve (2) "Parçaların montajı ve test". Bu süreç gruplarının her birinin birçok alt süreç ve görev içerdiğini unutma; ancak şu an için amacın modelinin ilk sürümünü üst düzeyde kodlamak.

Daha önce, kaynak ve boyanın ortalama 15 saatte tamamlandığını, parçaların montajı ve testin ise ortalama 24 saatte bittiğini belirlemiştin.

Şimdi, bu süreçlerin sürelerindeki değişkenliği incelemek için ek araştırma ve izleme yaptın. Sonuç olarak, kaynak ve boyanın süresinin beş saat (artı/eksi) değişebileceğini, parçaların montajı süresinin ise altı saat (artı/eksi) değişebileceğini gördün.

Bu olayların sürelerindeki değişimleri hesaba katacak şekilde ayrık olay modelini güncelle. random paketi senin için yüklendi.

Bu egzersiz

Python ile Ayrık Olay Benzetimi

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

Egzersiz talimatları

  • random paketindeki rastgele tamsayı üreten bir yöntemi kullanarak, yeni değişkenlik bilgisini dikkate alıp "Kaynak ve boya" sürecinin süresini kaydet.
  • random paketindeki rastgele tamsayı üreten bir yöntemi kullanarak, yeni değişkenlik bilgisini dikkate alıp "Parçaların montajı ve test" sürecinin süresini kaydet.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

def car_production_line(SIMULATION_TIME):
    car_number, time  = 0, 0
    while time < SIMULATION_TIME:
        car_number += 1

        # Clock the time requirement for: Welding and Painting
        time += ____
        if time >= SIMULATION_TIME: break
        print(f"Time = {time:7.4f} | Car {car_number:02d} | Welding and Painting")

        # Clock the time requirement for: Assembly of parts and Testing 
        time += ____
        if time >= SIMULATION_TIME: break
        print(f"Time = {time:7.4f} | Car {car_number:02d} | Assembly of parts and Testing")
        print(f"Time = {time:7.4f} | Car {car_number:02d} | Car ready for shipping!")

car_production_line(SIMULATION_TIME)
Kodu Düzenle ve Çalıştır