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

Üretim Optimizasyonu: Ara & Durdur

Hadi, önceki bir egzersizde oluşturulan duvar saati fabrikası modelini kullanalım ve kritik darboğaz süreçlerini belirlemek için Monte Carlo örneklemesine dayalı bir "Ara & Durdur" optimizasyon yaklaşımı kuralım.

Üretim süreci aşağıdaki tabloda özetlenmiştir ve bilgiler, her süreç için bir sözlük olacak şekilde processes adlı sözlük listesinde saklanmıştır. Bu sözlükteki anahtarlar, tablonun sütun başlıklarına karşılık gelir.

Süreç adlarını ve bunların ortalama ile standart sapma olmak üzere süre istatistiklerini gösteren tablo.

Bu egzersizde grafikleri üretmek için kullanılacak plot_results() yöntemi önceden yüklendi ve aşağıda gösterilmiştir.

def plot_results():
    df_disc = pd.DataFrame({cNam[0]: process_line_space, cNam[1]: time_record})
    fig = sns.lineplot(data=df_disc, x=cNam[0], y=cNam[1], marker='o')
    plt.grid()
    fig.set(xlim=(0, len(processes)))
    fig.set(ylim=(0, 180))
    fig.set(xticks=process_line_space)
    plt.plot() 

Monte Carlo örnekleme döngüsü, şekilde gösterildiği gibi olası süreç yörüngeleri üretecek ve istenen koşul sağlandığında duracaktır. Farklı süreç senaryoları için Monte Carlo yörüngeleri.

Bu egzersiz

Python ile Ayrık Olay Benzetimi

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

Egzersiz talimatları

  • run_i sıfıra eşitken veya total_duration[run_i] 85 saatten büyükken simülasyon yörüngelerini çalıştıracak bir döngü kur (yani, durdurma koşulu: total_duration[run_i] 85 saate eşit veya 85 saatten küçük olduğunda).
  • run_monte_carlo() fonksiyonunda saklanan Monte Carlo motorunu çalıştır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

def run_monte_carlo():
    run_i = 0
    
    # While-loop with the stop condition
    ____

        run_i += 1
        env = simpy.Environment()
        env.process(manufractoring_process(env))
        env.run()
        plot_results()
    plt.show()

# Call the run_monte_carlo function
____
Kodu Düzenle ve Çalıştır