Simülasyon toplulukları: Monte Carlo örneklemesi

Python ile Ayrık Olay Benzetimi

Diogo Costa (PhD, MSc)

Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific

Farklı senaryolara sistem yanıtı

  • Deterministik olmayan süreçler sistem yanıtında değişkenlik yaratır
  • Önceki videoda: Deterministik olmayan süreçleri modellemeyi öğrendiniz
  • Modelde belirsizlik yayılımını karakterize edin
  • Sistemin farklı senaryolara yanıtını inceleyin

Bu şunlara yardımcı olur

  • İş genişletme planlama
  • Stres testleri yapma
  • Aşırı durumlara hazırlık
Python ile Ayrık Olay Benzetimi

Monte Carlo örneklemesi

  • Tekrarlı rastgele örnekleme
  • Küçük değişimlerle sistemi modelleyin
  • Değişime verilen yanıtı inceleyin

Örnek sayısı artarken parametre uzayı

100 Monte Carlo örneğinin sonuçlarını gösteren grafik. Model sonuçlarının desenleri görülmüyor.

1500 Monte Carlo örneğinin sonuçlarını gösteren grafik. Bazı desenler görünür ama sınırlı.

5000 Monte Carlo örneğinin sonuçlarını gösteren grafik. Sonuçlar artık net desenler ve ızgara yapısı gösteriyor.

Python ile Ayrık Olay Benzetimi

Monte Carlo örneklemesi: Süreç incelemesi

Örnek: Normal (Gauss) dağılıma dayalı bir olay üretecinin çıktı aralığını anlamak için Monte Carlo çalıştırması

import random as rd
import numpy as np
import matplotlib.pyplot as plt

# Generating samples: Gaussian distribution
duration_sample = [rd.gauss(25, 5) 
for i in range(5000)]

# Plotting
plt.scatter(duration_sample, np.r_[0:5000], 
marker='.', c=duration_sample, cmap='CMRmap')
plt.xlabel("Duration [min]")
plt.ylabel("Monte Carlo Runs")

Sonuçların görselleştirilmesi Gauss dağılımına göre üretilen süreler için Monte Carlo örneklemesini gösteren grafik.

Python ile Ayrık Olay Benzetimi

Monte Carlo örneklemesi: Ayrık olay modelleri

Temel amaç

  • Model belirsizliğini keşfetmek
  • Deterministik olmayan süreçlerden kaynaklanır
  • Belirsizliği karakterize etmek
  • Karar vermeyi desteklemek

Dört durumlu bir sistemi gösteren diyagram; süreçler durumları değiştirir. Her yinelemede her sürenin süresindeki değişkenlik nedeniyle, süreç dizisi boyunca olası sistem durumlarının sayısı artar.

Python ile Ayrık Olay Benzetimi

Monte Carlo örneklemesi: Ayrık olay modelleri

  • Her süreç süresindeki belirsizlik sistemde yayılır

  • Farklı model yörüngeleri oluşur

  • Buna Yanıt Zarfı denir

Örnek:

n_trajectories = 50

process_1 = {"Name": "Raw_material", 
             "OperationTime": 20, 
             "MaxDelayTimePercent": 10}
process_2 = {"Name": "Unloading", 
            "OperationTime": 15, 
            "MaxDelayTimePercent": 5}

Bir dizi ardışık süreci içeren bir üretim faaliyetinin yanıt zarfını gösteren grafik.

Python ile Ayrık Olay Benzetimi

Hadi pratik yapalım!

Python ile Ayrık Olay Benzetimi

Preparing Video For Download...