Popis generátoru náhodných čísel z normálního rozdělení Mějme f1(x) hustotu normálního rozdělení N(mi, sigma) resp. N(0,1) na celých reálných číslech. Uvažujme restrikci f(x) na množinu (0, nekonečno). Tedy máme „polovinu normálního rozdělení“. Je to funkce prostá, obor hodnot je (0; 1/sqrt(2*pi)), tedy na intervalu (0; 1/sqrt(2*pi)) je definována funkce inversní k f(x). Pojmenujme ji g(x). g(x): x = [1/sqrt(2*pi)] *exp{-y2/2} ln[ sqrt(2*pi) * x ] = -y2/2 ln[ sqrt(2*pi) * x] -2 = y2 y = sqrt { ln [ sqrt (2*pi) * x] –2 } , pro x z intervalu (0; 1/sqrt(2*pi)). Pro generování náhodných čísel z N(0,1) vygenerujeme 2 hodnoty X1 ~ R(0,1) a X2 ~ R(0; 1/sqrt(2*pi)) A dosadíme do vzorce X = sign(X1 – 1/2) * sqrt { ln [ sqrt (2*pi) * x] –2 }, přičemž v X jsou generovány požadované hodnoty z N(0,1), kde první činitel evidentně ovlivňuje znaménko (a nulovost), druhý ovlivňuje absolutní hodnotu. Sepsáno 17. prosince 2002 Tomáš Pavlíček keebl@centrum.cz