非一様乱数とは?

辞典・百科事典の検索サービス - Weblio辞書

初めての方へ

参加元一覧


用語解説|全文検索
Weblio 辞書 > 同じ種類の言葉 > 人文 > 高等数学 > 乱数 > 非一様乱数の意味・解説 

OR事典

日本オペレーションズ・リサーチ学会日本オペレーションズ・リサーチ学会

非一様乱数

読み方ひいちようらんすう
【英】:non-uniform random numbers

概要

一様分布以外の分布をする乱数総称. 一様乱数適当な変換施し作るのがふつうである. 変換法として, 逆関数法, 棄却法, 合成法, 別名法, 一様乱数の比を利用する方法, 等の種々の分布適用可能な方法と, 個々分布特有の方法多数提案されている.

詳説

一様分布以外の確率分布に従う乱数非一様乱数という. これらの乱数は, 一様乱数適当な変換施し作るのがふつうである. 変換方法には, 種々の分布に対して適用可能な一般的なものと, 個々分布特徴利用するものとがある. これらの方法網羅的に扱っているのが [3]である. ここでは, 一般的な変換法を二つ紹介した後, 実用上大事な非一様乱数生成法を述べる. 以下では, (整数型の)一様乱数正規化して得られる区間[0,1)上の(実数型の)一様乱数U, U_1, U_2\,等で表し, これらは互いに独立であるものと仮定する. また, 発生させたい乱数X\,とし, その分布関数F(x)\,, それが連続分布ならば, その密度関数f(x)\,で表す.

[逆関数法]

F(x)\,逆関数F^{-1}(x)\,を使ってX=F^{-1}(U)\,とするものである. 例えば, 指数分布, ワイブル分布, ロジスティック分布(スケール・パラメータはいずれも1とする)なら, それぞれX=-\log U\,, X=(-\log U)^\alpha\,, X=\log(U/(1-U))\,とすればよい. 逆関数解析的に求まらない場合には, 近似式等を用いることになる.

[二者択一法]

ウォーカー(A. J. Walker) [4] によって提案されたもので, 別名法(alias method)ともいう.

取りうる値の個数(n)\,有限個の離散分布に従う乱数を, n\,無関係なO(1)の速度生成できる, 簡単で効率的方法である. ただし, 初期設定にO(n)\,時間とO(n)\,メモリを必要とする. 例えポアソン分布のように, 取りうる値の個数が無限の場合には, 分布の裾を適当に打ち切って適用すればよい.

[正規分布]

逆関数法を適用する場合には, 逆関数F^{-1}(x)\,解析的には求まらないので, 例え次の山内二郎近似式を使う.


\begin{array}{rll} F^{-1}(x)& = &\left\{ \begin{array}{ll} -w, & \ \ \ \ \ 0 < x < 0.5 \\ +w, & \ \ \ \ \ 0.5 \leq x < 1.0 \end{array}\right.\\ w & = & \{ z(2.0611786-\frac{5.7262204}{z+11.640595})\}^{1/2}\\ z & = & -\log\{4x(1-x)\} \end{array} \,


ボックス・ミュラー(Box-Muller)法は, 変換公式


X_1=\sqrt{-2\log U_1}\cos(2\pi U_2), \,

X_2=\sqrt{-2\log U_1}\sin(2\pi U_2) \,


を使って, 2個の一様乱数U_1,U_2\,から互いに独立標準正規乱数X_1,X_2\,作るのである.

平均ベクトル\boldsymbol{\mu}\,, 分散共分散行列V\,n\,次元正規乱数ベクトル{\mathbf{ Y}}\,生成するためには, 互いに独立n\,個の標準正規乱数からなるベクトル{\mathbf{ X}}\,変換


\mathbf{Y} = \boldsymbol{\mu} + A \mathbf{X} \,


を施せばよい. ただし, ベクトルはすべて列ベクトルとし, A\,V=AA^\top\,(A^\top\,A\,転置行列)を満たす下三角行列であり, コレスキー(Cholesky)分解によって求める.

[アーラン分布]

フェイズk\,(正整数)のアーラン分布密度関数


f(x)=\lambda \mathrm{e}^{-\lambda x}(\lambda x)^{k-1}/(k-1)! \ \ \ \ \ \ \ (x\geq 0) \,


である. これは, パラメータ(平均値逆数)が\lambda\,指数分布に従うk\,個の確率変数の和の分布であるから,


X=-\log(U_1\cdots U_k)/\lambda \,


とすればよい.

[ポアソン分布]

平均値\lambda\,ポアソン乱数は, 平均1/\lambda\,指数乱数との関係を利用して作ることができる. すなわち, U_1U_2\cdots U_n > {\mbox{e}}^{-\lambda}\,成り立つ最大整数n\,X\,とすればよい. 1個のポアソン乱数発生するのに必要な一様乱数個数平均値\lambda+1\,であるから, \lambda\,が大変に大きときには, この方法は効率が悪いので, 二者択一法を使うほうがよい.



参考文献

[1] 伏見正則, 『乱数』(UP応用数学選書12), 東京大学出版会, 1989.

[2] D. E. Knuth, The Art of Computer Programming, Vol.2: Seminumerical Algorithms, 2nd ed., Addison-Wesley, 1981. 渋谷政昭訳, 『準数値算法/乱数』, サイエンス社, 1981.

[3] L. Devroye, Non-Uniform Random Variate Generation, Springer-Verlag, 1986.

[4] A. J. Walker, "An Efficient Method for Generating Discrete Random Variables with General Distributions," ACM Transactions on Mathematical Software, 3 (1977), 253-256.






非一様乱数と同じ種類の言葉




非一様乱数のページへのリンク
非一様乱数のお隣キーワード
モバイル
モバイル版のWeblioは、下記のURLからアクセスしてください。
http://m.weblio.jp/
» モバイルで「非一様乱数」を見る
_ _   


非一様乱数のページの著作権
Weblio 辞書情報提供元は参加元一覧にて確認できます。

  
日本オペレーションズ・リサーチ学会日本オペレーションズ・リサーチ学会
Copyright (C) 2012 (社)日本オペレーションズ・リサーチ学会 All rights reserved.

©2012 Weblio RSS