Python ile Monte Carlo Simülasyonları
Izzy Weber
Curriculum Manager, DataCamp
Girdi değişkenlerini tanımla ve onlar için olasılık dağılımları seç
Bu dağılımlardan örnekleyerek girdiler üret
Simüle edilen girdilerle belirleyici bir hesap yap
Sonuçları özetle
−1 ile 1 aralığında olan $x$ ve $y$ için rastgele $(x, y)$ noktaları üret.

$$Area_{circle} = \pi $$
$$Area_{square} = 2 \times 2 = 4 $$
$$\frac{Area_{circle}}{Area_{square}} = \frac{\pi}{4} $$
$$\frac{n_{red}}{n_{all}} = \frac{\pi}{4} $$
$$ \pi = 4 \times \frac{n_{red}}{n_{all}}$$
Girdi değişkenlerini tanımla ve onlar için olasılık dağılımları seç
circle_points = 0
square_points = 0
Bu dağılımlardan örnekleyerek girdiler üret
−1 ile 1 arasında düzgün dağılmış rastgele $x$ ve $y$ koordinatları örnekle:
for i in range(n):
x = random.uniform(-1, 1)
y = random.uniform(-1, 1)
Simüle edilen girdilerle belirleyici hesap yap
Her noktanın daire içinde olup olmadığını kontrol et: verilen $x$ ve $y$ için belirleyicidir
dist_from_origin = x**2 + y**2
Evetse, noktayı circle_points'a ekle; her zaman square_points'a ekle
if dist_from_origin <= 1:
circle_points += 1
square_points += 1
İlgi duyulan soruları yanıtlamak için sonuçları özetle
Çok sayıda simülasyon turundan sonra pi değerini hesapla!
pi = 4 * circle_points/ square_points
n = 4000000 circle_points = 0 square_points = 0for i in range(n): x = random.uniform(-1, 1) y = random.uniform(-1, 1) dist_from_origin = x**2 + y**2 if dist_from_origin <= 1: circle_points += 1 square_point += 1pi = 4 * circle_points / square_points print(pi)
3.142518
Python ile Monte Carlo Simülasyonları