Ensemble simulasi: pengambilan sampel Monte Carlo

Simulasi Peristiwa Diskret dengan Python

Diogo Costa (PhD, MSc)

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

Respons sistem untuk skenario berbeda

  • Proses non-deterministik menyebabkan variasi respons sistem
  • Video sebelumnya: Mempelajari pemodelan proses non-deterministik
  • Mengkarakterisasi propagasi ketidakpastian dalam model
  • Mempelajari respons sistem untuk skenario berbeda

Ini dapat membantu

  • Merencanakan ekspansi bisnis
  • Melakukan uji ketahanan
  • Bersiap menghadapi situasi ekstrem
Simulasi Peristiwa Diskret dengan Python

Pengambilan sampel Monte Carlo

  • Pengambilan sampel acak berulang
  • Memodelkan sistem dengan perubahan kecil
  • Mengamati respons sistem terhadap perubahan

Ruang parameter saat jumlah sampel bertambah

Plot yang menampilkan hasil 100 sampel Monte Carlo. Pola hasil model belum terlihat.

Plot yang menampilkan hasil 1500 sampel Monte Carlo. Beberapa pola hasil model mulai terlihat tetapi masih terbatas.

Plot yang menampilkan hasil 5000 sampel Monte Carlo. Hasil model kini jelas membentuk pola kisi.

Simulasi Peristiwa Diskret dengan Python

Pengambilan sampel Monte Carlo: Investigasi proses

Contoh: Menjalankan Monte Carlo untuk memahami rentang keluaran dari pembangkit kejadian berbasis distribusi normal (gauss)

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")

Memvisualisasikan hasil Plot yang menampilkan pengambilan sampel Monte Carlo untuk durasi yang dihasilkan berdasarkan Distribusi Gaussian.

Simulasi Peristiwa Diskret dengan Python

Pengambilan sampel Monte Carlo: Model kejadian diskret

Tujuan utama

  • Mengeksplorasi ketidakpastian model
  • Yang timbul dari proses non-deterministik
  • Mengkarakterisasi ketidakpastian
  • Mendukung pengambilan keputusan

Diagram yang menampilkan sistem dengan empat keadaan, di mana proses mengubah keadaan. Karena durasi tiap proses bervariasi setiap kali diulang, jumlah kemungkinan keadaan sistem model meningkat sepanjang rangkaian proses.

Simulasi Peristiwa Diskret dengan Python

Pengambilan sampel Monte Carlo: Model kejadian diskret

  • Ketidakpastian durasi tiap proses merambat dalam sistem

  • Menghasilkan lintasan model yang berbeda

  • Disebut sebagai Response Envelope

Contoh:

n_trajectories = 50

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

Plot yang menampilkan response envelope dari aktivitas manufaktur yang mencakup serangkaian proses berurutan.

Simulasi Peristiwa Diskret dengan Python

Ayo berlatih!

Simulasi Peristiwa Diskret dengan Python

Preparing Video For Download...