(image)

Rachunek prawdopodobieństwa 1, 2

19.5 Liczby pseudo-losowe z rozkładu normalnego

W wielu sytuacjach używamy liczb pseudo-losowych z rozkładu normalnego jedno i wielowymiarowego. Jak wiemy już, przykład 12.4, w przypadku rozkładu ciągłego, a takim rozkładem jest \(N(m,\s )\) można je otrzymywać generując liczby pseudo-losowe \(u_1,u_2,u_3,...\) z rozkładu \(U(0,1)\) i biorąc \(\Phi _{m,\s }^{-1}(u_1), \Phi _{m,\s }^{-1}(u_2), \Phi _{m,\s }^{-1}(u_3),...\). Można też brać liczny \(z_i = \Phi ^{-1}(u_i)\) z rozkładu \(N(0,1)\) oraz \(x_i = m + \s z_i\), \(i = 1,2,3, ...\). Obydwa sposoby wymagają jednak wyznaczania wartości \(\Phi ^{-1}\), co jest numerycznie dość uciążliwym zadaniem. Istnieją jednak szybsze metody. Opiszemy jedną z nich.

Metoda Boxa-Mullera

Losujemy niezależnie od siebie dwie liczby \(u_1\), \(u_2\) z rozkładu \(U(0,1)\) i obliczamy

\[z_1 = \sqrt { -2\ln u_1}\cos (2\pi u_2), \ \ z_2 = \sqrt { -2\ln u_1}\sin (2\pi u_2).\]

Liczby \(z_1, z_2\) reprezentują dwie niezależne zmienne losowe o rozkładach \(N(0,1)\).

Niech \(Z = h(g(U))\), przy czym \(P_U = U([0,1]^2)\) (więc \(f_U = I_{[0,1]^2}\)) oraz określamy \(g(u_1,u_2) = (\sqrt {- 2 \ln u_1}, 2\pi u_2)\), \(h(r,\theta ) = (r\cos \theta , r \sin \theta )\).

Mamy kolejno:

\[f_{g(U)}(w) = |Jac_w g^{-1}|f_U(g^{-1}(w)) = \frac {1}{2\pi }e^{-\frac 12 w_1^2 }w_1, \ \ w_1 > 0, \ 0 <w_2 < 2\pi .\]

\[f_Z(z) = f_{h(g(U))}(z) = |Jac_z h^{-1}|f_{g(U)}(h^{-1}(z)) = \frac {1}{\sqrt {z_1^2+z_2^2}} \frac {1}{2\pi }e^{-\frac 12 (z_1^2+z_2^2) }\sqrt {z_1^2+z_2^2}.\]

\[ f_Z(z) = \frac {1}{2\pi }e^{-\frac 12 (z_1^2+z_2^2) }. \]

\(X\) ma więc rozkład \(N_2(0,I_2)\), gdzie \(I_2\) jest macierzą identycznościową. Więc \(Z_1\) oraz \(Z_2\) są niezależne i mają rozkłady normalne \(N(0,1)\).   \(\Box \)

Mając do dyspozycji ciąg o długości \(d\) liczb pseudo-losowych \(z_1,...,z_d\) z rozkładu \(N(0,1)\) wiemy, że stanowi on wektor pseudo-losowy \(z\) z rozkładu \(N_d(0,I_d)\). Wtedy też \(x = \mu +\Sigma ^{\frac 12}z\) jest wektorem pseudo-losowym z rozkładu \(N_d(\mu ,\Sigma )\).