Come estrarre da una distribuzione normale

La distribuzione normale è estremamente utile, eppure di solito i generatori casuali dei computer campionano soltanto da distribuzioni uniformi. In questo articolo vediamo come convertire un campione uniforme in un campione normalmente distribuito tramite la cosiddetta trasformazione di Box-Muller.

L’idea è di utilizzare lo stesso trucco che si usa per calcolare l’integrale gaussiano. Consideriamo X e Y indipendenti normalmente distribuite con media zero e varianza uno. La loro distribuzione di probabilità congiunta è

12πe12x212πe12y2dxdy=12πe12r2rdrdθ

Ciò vuol dire che r e θ sono anch’esse indipendenti e θ è distribuita uniformemente in [0,2π). Inoltre sappiamo anche la distribuzione di probabilità di r. Sicuramente possiamo estrarre θ uniformemente, se poi fossimo in grado di estrarre r avremmo ottenuto le due variabili normalmente distribuite x=rcosθ e y=rsinθ, che, paradossalmente, sono anche indipendenti. Rimane quindi solo da estrarre r. A tal scopo calcoliamo direttamente la sua funzione di ripartizione,

F(R)=R0e12r2rdr=1e12R2

Per il metodo dell’inversione, se U è uniformemente distribuita in (0,1) allora F1(U) è distribuita secondo la distribuzione di r. Ora notiamo che anche 1U è uniformemente distribuita e quindi ponendo F(R)=1U otteniamo R=2logU.

Pertanto possiamo riassumere il metodo che abbiamo trovato. Partiamo da due distribuzioni U1 e U2 uniformemente distribuite in (0,1). Allora le due variabili
X=2logU1cos(2πU2)Y=2logU1sin(2πU2)


sono indipendenti e normalmente distribuite con media zero e varianza uno.

Pubblicato in statistica | Lascia un commento