確率統計確率統計
コーシー分布サンプリング; Cauchy Distribution Sampling

概要
コーシー分布とは以下の式で表現される確率分布。分光学ではスペクトル線の形状を記述するために用いられる。なお、この分布は期待値も分散ももたない。
分布の裾が重く、コーシー分布に従う母集団から得られた標本には非常に大きな値が含まれている場合があるため、得られた平均値には意味をなさない。

$$f(x)=\frac{1}{\pi} \frac{\gamma}{(x-\mu)^2+\gamma^2} $$
コーシー分布

コーシー分布に従う確率変数の生成には逆関数法を用いる。累積確率分布の逆関数\(F^{-1}(p)\)を導出し、\(p\)に開区間(0,1)の連続一様分布に従う確率変数を与える。
$$F^{-1}(p)=\mu + \gamma \tan(\pi(p-1/2)) $$

ソースコード

namespace ExRandom.Continuous {
    public class CauchyRandom : Random{
        readonly MT19937 mt;
        readonly double gamma, mu;

        public CauchyRandom(MT19937 mt, double gamma = 1, double mu = 0) {
            if(mt == null) {
                throw new ArgumentNullException();
            }

            this.mt = mt;
            this.gamma = gamma;
            this.mu = mu;
        }

        public override double Next() {
            double u = mt.NextDouble_OpenInterval01() - 0.5;

            return mu + gamma * Math.Tan(Math.PI * u);
        }
    }
}

関連項目
メルセンヌ・ツイスタ
各種確率分布サンプリング基本クラス

ライブラリライブラリ
確率統計確率統計
線形代数線形代数
幾何学幾何学
最適化最適化
微分方程式微分方程式
画像処理画像処理
補間補間
機械学習機械学習
クラスタリングクラスタリング
パズルゲーム・パズル
未分類未分類