Mímisbrunnr知恵の泉

← シミュレーション 一覧

🎓 レベル:標準 | 重要度:A(必須)

📎 前提:逆関数法 | 合成法・変数変換法 | 関連:離散事象シミュレーションとは

要点(BLUF)

1. 3つの代表的分布

分布用途平均分散裏の生成技法
正規 N(μ,σ2)\mathcal{N}(\mu,\sigma^2)測定誤差・合計量(CLT)μ\muσ2\sigma^2変数変換(Box–Muller/Ziggurat)
指数 Exp(λ)\text{Exp}(\lambda)待ち時間・寿命・到着間隔1/λ1/\lambda1/λ21/\lambda^2逆関数法 lnU/λ-\ln U/\lambda
ポアソン Poisson(μ)\text{Poisson}(\mu)一定時間の到着数・稀少事象μ\muμ\mu指数間隔の積み上げ/逆関数法

これらは「どんな現象に使うか」とセットで覚えると、モデル化で入力分布を選ぶときに迷いません。

2. 生成と検証

import numpy as np

# 乱数シードを固定
rng = np.random.default_rng(6)

normal = rng.normal(10, 2, 400_000)        # 正規 N(10, 2^2)
expo   = rng.exponential(1/0.5, 400_000)   # 指数(レート0.5 -> 平均2)
poisson = rng.poisson(4.0, 400_000)        # ポアソン(平均4)

print(f"正規 N(10,2):  平均={normal.mean():.3f}  標準偏差={normal.std():.3f}")
print(f"指数(平均2):   平均={expo.mean():.3f} (理論2.0)  分散={expo.var():.3f} (理論4.0)")
print(f"ポアソン(4):   平均={poisson.mean():.3f}  分散={poisson.var():.3f} (両方 理論4.0)")

出力:

正規 N(10,2):  平均=10.002  標準偏差=2.003
指数(平均2):   平均=2.000 (理論2.0)  分散=3.979 (理論4.0)
ポアソン(4):   平均=3.998  分散=4.004 (両方 理論4.0)

出力の意味:正規は平均 10.002・標準偏差 2.003、指数は平均 2.000・分散 3.979、ポアソンは平均 3.998・分散 4.004。すべて理論値と一致。とくにポアソンは平均と分散がともに μ=4\mu = 4 に等しい(等分散性)のが特徴で、これは過分散データ(分散 > 平均)をポアソンで無理にモデル化してはいけない、という実務的注意につながります。

3. ポアソンと指数の表裏一体

指数分布とポアソン分布は同じ現象の2つの見方です。「事象がレート λ\lambda でランダムに起きる」ポアソン過程において、

import numpy as np

# 乱数シードを固定
rng = np.random.default_rng(11)

lam = 3.0                # レート 3件/時間
T = 100_000             # 観測時間
# 指数間隔を積み上げてポアソン過程を作る
inter = rng.exponential(1/lam, int(lam*T*1.2))
arrival = np.cumsum(inter)
arrival = arrival[arrival < T]
# 各単位時間の到着数を数える
counts = np.histogram(arrival, bins=np.arange(0, T+1))[0]

print(f"単位時間あたり到着数の平均 = {counts.mean():.3f}  (理論 {lam})")
print(f"単位時間あたり到着数の分散 = {counts.var():.3f}  (理論 {lam})")

出力:

単位時間あたり到着数の平均 = 2.994  (理論 3.0)
単位時間あたり到着数の分散 = 2.995  (理論 3.0)

出力の意味:指数分布の到着間隔を積み上げただけで、単位時間の到着数が平均 2.994・分散 2.995 のポアソン分布(理論 λ=3\lambda=3)になりました。この表裏関係は、離散事象シミュレーションで到着過程をモデル化する土台です。

4. 他分布への広がり

数式の直観的意味

指数とポアソンが表裏なのは、「待ち時間がメモリレス(無記憶)」だから。指数分布は「あとどれくらい待つか」が過去の経過時間によらない唯一の連続分布で、この性質ゆえに到着が**完全にランダム(ポアソン過程)**になります。ポアソンの平均=分散も同じ根から来ていて、μ\mu が大きくなると相対的なばらつき μ/μ=1/μ\sqrt{\mu}/\mu = 1/\sqrt{\mu} が小さくなる——大量到着ほど安定して見える、という直観につながります。

⚠️ よくある誤解・落とし穴

対応シミュレーション参照

本文の3分布の生成・検証(default_rng(6))とポアソン過程=指数間隔の対応(default_rng(11))。

関連ノート