# Teoria degli errori e fondamenti di statistica/9.8.1

../9.8 ../10 IncludiIntestazione 31 agosto 2022 100% Da definire
Teoria degli errori e fondamenti di statistica Maurizio Loreti 2006 CC BY-SA 3.0 GFDL Indice:Teoria_degli_errori_e_fondamenti_di_statistica.djvu //it.wikisource.org/w/index.php?title=Teoria_degli_errori_e_fondamenti_di_statistica/9.8.1&oldid=- 20220831180951 //it.wikisource.org/w/index.php?title=Teoria_degli_errori_e_fondamenti_di_statistica/9.8.1&oldid=- 20220831180951
9.8.1 Applicazione: numeri casuali normali
Siano gli $u_{i}$ (con $i=1,\ldots ,N$) dei numeri provenienti da una popolazione u distribuita uniformemente nell’intervallo $[0,1]$; abbiamo visto nel paragrafo (8.1) che $\textstyle E(u)={\frac {1}{2}}$ e $\textstyle {\text{Var}}(u)={\frac {1}{12}}$. La loro media aritmetica ${\bar {u}}$, in conseguenza del teorema del limite centrale, tende asintoticamente (al crescere di N) alla distribuzione normale con media $\textstyle {\frac {1}{2}}$ e varianza $\textstyle {\frac {1}{12\cdot N}}$; quindi la loro somma $N{\bar {u}}$ è asintoticamente normale con media $\textstyle {\frac {N}{2}}$ e varianza $\textstyle {\frac {N}{12}}$; e, infine, la variabile casuale
è asintoticamente normale con media 0 e varianza 1.
Di questa proprietà si può far uso per ottenere da un computer dei numeri pseudo-casuali con distribuzione (approssimativamente) normale, a partire da altri numeri pseudo-casuali con distribuzione uniforme; in pratica l’approssimazione è già buona quando $N\gtrsim 10$, e scegliendo $N=12$ possiamo, ad esempio, porre semplicemente
$x=\sum _{i=1}^{12}u_{i}-6$.
È da notare, comunque, che non è buona pratica servirsi di questo metodo: anche se la parte centrale della distribuzione normale è approssimata abbastanza bene, le code mancano totalmente (essendo impossibile che risulti $|x|>{\sqrt {3N}}$); l’effetto di questa mancanza, quando (come nelle analisi fisiche basate su metodi di Montecarlo) vengano richiesti numeri pseudo casuali per generare eventi simulati in quantità dell’ordine di milioni almeno, è tale da invalidare completamente i risultati.
Soprattutto, poi, generare numeri pseudo-casuali normali usando il teorema del limite centrale non è solo sbagliato, ma inutile: esistono altri metodi (come ad esempio quello di Box-Muller che discuteremo ora) che sono in grado di generare numeri pseudo-casuali con una vera distribuzione normale usando, per il calcolo, un tempo non molto superiore a quello richiesto dalla (9.10).
Siano x ed y due variabili casuali statisticamente indipendenti, ed aventi distribuzione uniforme nell’intervallo $[0,1]$; consideriamo le altre due variabili casuali u e v definite attraverso le
Queste funzioni si possono invertire, e risulta
| $x=e^{-{\frac {1}{2}}\left(u^{2}+v^{2}\right)}$ | e | $y={\frac {1}{2\pi }}\,\arctan \left({\frac {v}{u}}\right)$ |
con derivate parziali prime date da
${\begin{cases}\displaystyle {\frac {\partial x}{\partial u}}=-\,u\cdot e^{-{\frac {1}{2}}\left(u^{2}+v^{2}\right)}\\\displaystyle {\frac {\partial x}{\partial v}}=-\,v\cdot e^{-{\frac {1}{2}}\left(u^{2}+v^{2}\right)}\end{cases}}$
e da
${\begin{cases}\displaystyle {\frac {\partial y}{\partial u}}={\frac {1}{2\pi }}{\frac {1}{1+{\frac {v^{2}}{u^{2}}}}}\left(-\,{\frac {v}{u^{2}}}\right)\\\displaystyle {\frac {\partial y}{\partial v}}={\frac {1}{2\pi }}{\frac {1}{1+{\frac {v^{2}}{u^{2}}}}}\;{\frac {1}{u}}\end{cases}}$
Il determinante Jacobiano delle $(x,y)$ rispetto alle $(u,v)$ vale
| ${\frac {\partial (x,y)}{\partial (u,v)}}$ | $={\frac {\partial x}{\partial u}}\,{\frac {\partial y}{\partial v}}-{\frac {\partial x}{\partial v}}\,{\frac {\partial y}{\partial u}}$ |
| | $=-{\frac {1}{2\pi }}\,e^{-{\frac {1}{2}}\left(u^{2}+v^{2}\right)}$ |
per cui, essendo la densità di probabilità congiunta delle due variabili casuali x ed y data dalla
$f(x,y)=1$
e applicando la (7.9), la densità di probabilità congiunta della u e della v è data da
$f(u,v)={\frac {1}{\sqrt {2\pi }}}e^{-{\frac {1}{2}}u^{2}}\cdot {\frac {1}{\sqrt {2\pi }}}e^{-{\frac {1}{2}}v^{2}}$
e quindi, in conseguenza della (7.8), la u e la v sono due variabili casuali statisticamente indipendenti tra loro ed entrambe aventi funzione di frequenza data dalla distribuzione normale standardizzata; questo è appunto il metodo cosiddetto “di Box-Muller” per la generazione di numeri pseudo-casuali con distribuzione normale, a partire da numeri pseudo-casuali con distribuzione uniforme.
Una variante che consente di sveltire questo metodo (lento, perché l’esecuzione delle funzioni logaritmo, seno e coseno consuma molto tempo [p. 159 di cpu) consiste nel generare dapprima due numeri pseudo-casuali $x'$ e $y'$ distribuiti uniformemente tra i limiti $-1$ e $+1$; e nell’accettarli se $S=R^{2}={x'}^{2}+{y'}^{2}\leq 1$, in modo che il punto P le cui coordinate essi rappresentano nel piano $\{x',y'\}$ sia uniformemente distribuito entro il cerchio avente centro nell’origine O e raggio unitario — o nel rigettarli in caso contrario, ripetendo il passo precedente.
Questa prima condizione in realtà rallenta il procedimento, perché la coppia di numeri a caso viene accettata con probabilità $\textstyle {\frac {\pi }{4}}\approx 78.5\%$; ma se, a questo punto, si usa al posto della x nella (9.11) il valore di S (che, come non è difficile dimostrare, è anch’esso distribuito uniformemente nell’intervallo $[0,1]$); e se si prende poi in luogo dell’angolo $2\pi y$ l’angolo polare $\theta$ tra ${\overline {OP}}$ e l’asse delle $x'$, il calcolo risulta in definitiva molto più rapido: perché il seno ed il coseno di $\theta$ si possono valutare come $y'/R$ ed $x'/R$ rispettivamente, eseguendo il calcolo di una radice quadrata e due divisioni soltanto.