5.5 Cálculo directo de la función cuantil
En ocasiones el método de la transformación cuantil puede acelerarse computacionalmente porque, mediante cálculos directos, es posible encontrar el valor de la función cuantil en cualquier \(U\), evitando el bucle de búsqueda. Normalmente se realiza mediante truncamiento de una distribución continua.
Ejemplo 5.6 (distribución uniforme discreta)
La función de masa de probabilidad de una distribución uniforme discreta en \(\{1,2,\ldots,n\}\) viene dada por \[p_{j}=\frac{1}{n}\text{, para }j=1,2,\ldots n.\]
Pueden generarse valores de esta distribución de forma muy eficiente truncando la distribución uniforme:
Generar \(U\sim \mathcal{U}\left( 0,1\right)\).
Devolver \(X=\left\lfloor nU\right\rfloor + 1\).
Ejemplo 5.7 (distribución geométrica)
La función de masa de probabilidad de una distribución geométrica es: \[P\left( X=j\right) =P\left( I=j+1\right) =p\left( 1-p\right)^{j}\text{, }j=0,1,\ldots\]
Si se considera como variable aleatoria continua auxiliar una exponencial, con función de distribución \(G\left( x\right) = 1-e^{-\lambda x}\) si \(x\geq0\), se tiene que: \[\begin{aligned} G\left( i\right) - G\left( i-1\right) & = 1-e^{-\lambda i}-\left(1-e^{-\lambda\left( i-1\right) }\right) = e^{-\lambda\left( i-1\right)}-e^{-\lambda i}\\ & = e^{-\lambda\left( i-1\right) }\left( 1-e^{-\lambda}\right) = \left( 1-e^{-\lambda}\right) \left( e^{-\lambda}\right)^{i-1} \\ & = p\left(1-p\right)^{i-1}, \end{aligned}\] tomando \(p=1-e^{-\lambda}\). De donde se obtendría el algoritmo:
Hacer \(\lambda=-\ln\left( 1-p\right)\).
Generar \(U\sim \mathcal{U}\left( 0,1\right)\).
Hacer \(T=-\frac{\ln U}{\lambda}\).
Devolver \(X=\left\lfloor T\right\rfloor\).