このツールでできること
このジェネレーターは、指定した形状パラメータ a と尺度パラメータ b を持つガンマ分布に従う擬似乱数を生成します。ガンマ分布は正の値のみをとる連続分布で、信頼性工学、待ち行列理論、ベイズ統計(共役事前分布として)、降雨量や保険のモデリングなど、待ち時間や正の歪んだ量を扱うさまざまな分野で広く利用されています。国や地域に依存しない、普遍的な数学ツールです。
使い方
形状パラメータ a(0より大きい値)、尺度パラメータ b(0より大きい値)、生成したい乱数の個数(1〜1000)を入力します。表示する有効桁数も選んでください。計算ボタンを押すと、生成された乱数の一覧に加えて、標本平均と標本分散が表示されます。これらは理論上の平均・分散と並べて表示されるため、結果が妥当かどうかをすぐに確認できます。
計算式
確率密度関数は \(x > 0\) のとき
$$f(x; a, b) = \frac{1}{\Gamma(a)\cdot b} \cdot \left(\frac{x}{b}\right)^{a-1} \cdot e^{-x/b}$$で表されます。ここで \(\Gamma(a)\) はガンマ関数です。この尺度パラメータ表記では、平均は \(a\cdot b\)、分散は \(a\cdot b^2\) となります。注意点として、\(b\) は尺度(スケール)であり、レート(率)ではありません。もし別のライブラリでレート \(\lambda = 1/b\) を用いている場合は、\(b = 1/\lambda\) と設定してください。乱数生成には、\(a \ge 1\) の場合に Marsaglia-Tsang のスクイーズ法を用い、\(a < 1\) の場合は一様乱数のべき乗による補正を加えます。生成した単位尺度の乱数に \(b\) を掛けて尺度を反映させます。
計算例
\(a = 3\)、\(b = 1\)、個数 = 10 とすると、各値は Gamma(3,1) からのサンプルになります。理論上の平均は \(a\cdot b = 3\)、理論上の分散は \(a\cdot b^2 = 3\)(標準偏差 \(\approx 1.732\))です。生成される値の平均はおおよそ 3 付近、ばらつきは 1.7 程度になると考えられます。\(a = 2\)、\(b = 5\) に変えると平均は 10、分散は 50 となり、いずれの場合も値は必ず正になります。
よくある質問
なぜ実行するたびに数値が変わるのですか? 出力は乱数のため、固定したシードを使わない限り、実行ごとに値が変わります。ただし標本平均と標本分散は理論値に近い値を保つはずです。
\(a = 1\) のときはどうなりますか? Gamma(1, b) は平均 \(b\) の指数分布になります。\(a\) が整数のときはアーラン分布となります。
b はレートですか、それとも尺度ですか? 尺度(スケール)です。平均は \(a\cdot b\) に等しいため、\(b\) が大きいほど分布はより大きな値の方向へ広がります。