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

Giysi Üretimi: Çoklu süreçler ve modülerlik

Moda başkenti olarak bilinen İtalya'nın Milano kentindeki bir giysi üretim fabrikasını optimize etmeye yardımcı olacak ayrık olay modeli oluşturman isteniyor.

Çok heyecanlısın ve faydalı, ölçeklenebilir bir model kurmak istiyorsun; çünkü giysi endüstrisinin karmaşık olduğunu, pek çok süreç ve kaynağı içerdiğini ve bunları hâlâ öğrenmekte olduğunu biliyorsun.

Araştırmanı yaptın ve aşağıdaki tabloda görülen süreç listesini çıkardın. Dikkatli davranıp her süreç için ayrı bir fonksiyon oluşturarak modelini modüler yaptın ve kontrollü bir şekilde büyüyebilmesini sağladın.

Şimdi yöneticinden geri bildirim aldın ve modelde "Leke temizleme ve çamaşır" adlı yeni bir süreci, adımlar 8 ve 9 arasına yerleştirerek (kırmızıyla vurgulanan satıra bak) eklemen istendi. random ve simpy paketleri içe aktarılmıştır.

Süreç adları, ilgili fonksiyonlar ve sürecin modele dahil edilip edilmediğine dair bilgiyi içeren tablo.

Bu egzersiz, kursun bir parçasıdır

Python ile Ayrık Olay Benzetimi

Kursa Göz Atın

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Create a function for the new process
def ____(gen_type=None, gauss_mean=None, gauss_std=None, unif_start=None, unif_end=None):
  if gen_type == "gauss":
    duration = random.gauss(gauss_mean, gauss_std)
  elif gen_type == "uniform":
    duration = random.uniform(unif_start, unif_end)
  return duration

def all_processes(env, prod_line):

  with prod_line.request() as request:
    yield request

    t1 = fabric_relaxing(gen_type="gauss", gauss_mean=2*60, gauss_std=15)
    t2 = spread_form_layout(gen_type="gauss", gauss_mean=6, gauss_std=1)
    t3 = laying_paper_pattern(gen_type="uniform", unif_start=3, unif_end=0.5)
    t4 = marking(gen_type="gauss", gauss_mean=6, gauss_std=1)
    t5 = cutting(gen_type="gauss", gauss_mean=5, gauss_std=0.5)
    t6 = embroidery_screen_and_printing(gen_type="uniform", unif_start=10, unif_end=2)
    t7 = sewing(gen_type="gauss", gauss_mean=15, gauss_std=3)
    t8 = checking(gen_type="gauss", gauss_mean=2, gauss_std=0.5)

    # Add the new process
    tnew = ____

    # Account for the new process duration in the entire process duration
    total_duration = sum([t1, t2, t3, t4, t5, t6, t7, t8, ____, t9, t10])

    yield env.timeout(total_duration)
Kodu Düzenle ve Çalıştır