next up previous
Next: About this document ... Up: Generátory náhodných čísel Previous: Přenosné

Generování náhodných čísel s daným rozdělením

Transformace rozdělení

Funkci $y = f(x)$ transformujeme $x = f^{-1} (y)$, odtud $dx =
{\rm d}f^{-1}/{\rm d}y\ dy$. Máme rozdělení $1\, {\rm d}x$ pro $x \in \langle 0, 1)$, kde

\begin{displaymath}
1\ {\rm d}x = \left\vert \frac{{\rm d}\, f^{-1}}{{\rm d}\, y} \right\vert
\vert{\rm d}\, y\vert\ \ .
\end{displaymath}

Chceme-li generovat $u(y) dy$, pak

\begin{displaymath}
u(y) = \left\vert \frac{{\rm d}\, f^{-1}}{{\rm d}\, y} \right\vert\ \ .
\end{displaymath}

Máme-li na příklad $u(y) = e^{-y}$, kde $y \in \langle 0, +
\infty \rangle$, je

\begin{displaymath}
\left\vert \frac{{\rm d}\, f^{-1}}{{\rm d}\, y} \right\vert = e^{-y}\ \ .
\end{displaymath}

Potom $x = e^{-y}$, a tedy $y = - \ln x$. Potom tedy z $y \in \langle 0,
\infty)$ máme $x \in (0,1 \rangle$.

Metoda odmítnutí

Chceme-li rozdělení s hustotou pravděpodobnosti $f(x)$, kde $a \le x < b$ a $M \ge \max f(x)$. Generujeme dvojice rovnoměrně $(x,y) \in \langle a, b \rangle
\times \langle 0, M \rangle$. Hodnotu $x$ přijmeme, právě když platí $y \leq f(x)$. Pravděpodobnost přijetí je úměrná $f(x)$.



Jiri Limpouch
2000-05-02