Está en la página 1de 16

5.

- Generacin de variables aleatorias

La generacin de cualquier variable aleatoria se va a basar en la generacin previa de una


distribucin uniforme (0,1), visto en el tema anterior. En este captulo vamos a estudiar ciertas
transformaciones o algoritmos que nos van a transformar dichos nmeros generados en valores de
otras distribuciones.

5.1.- Introduccin
Buscamos mtodos que nos permitan obtener valores de variables aleatorias que sigan
determinadas distribuciones de probabilidad a partir de los nmeros aleatorios generados, que siguen
la distribucin Uniforme en el intervalo (0,1).
Hay cuatro mtodos generales de generacin de variables aleatorias y una serie de mtodos
particulares de las distintas distribuciones.
La facilidad de aplicacin de dichos mtodos, as como el coste computacional asociado a los
mismos, vara mucho segn la familia de variables aleatorias a las que se apliquen.
Normalmente existen varios algoritmos que se pueden utilizar para generar valores de una
determinada distribucin, y diferentes factores que se pueden considerar para determinar qu
algoritmo utilizar en un caso particular. Desafortunadamente dichos factores suelen entrar en conflicto
unos con otros y a veces se ha de llegar a una solucin de compromiso.
Algunos de estos factores son los siguientes:
Exactitud: se han de obtener valores de una variable con una precisin dada. A veces
se tiene suficiente con obtener una aproximacin y otras no.

Generacin de variables aleatorias

Eficiencia: el algoritmo que implementa el mtodo de generacin tiene asociado un


tiempo de ejecucin y un gasto de memoria. Elegiremos un mtodo que sea eficiente
en cuando al tiempo y a la cantidad de memoria requeridos.
Complejidad: Buscamos mtodos que tengan complejidad mnima, siempre y cuando
se garantice cierta exactitud.
Robusted: el mtodo tiene que ser eficiente para cualquier valor que tomen los
parmetros de la distribucin que siga la variable aleatoria.
Facilidad de implementacin.

5.2.- Mtodos generales


Los mtodos generales para la generacin de variables aleatorias son: Mtodo de Inversin, de
Aceptacin-Rechazo, de Composicin y de Convolucin. A continuacin pasamos a estudiarlos.

5.2.1.- Mtodo de Inversin


La funcin de distribucin (tambin llamada funcin de distribucin acumulativa), F(x), de
una variable aleatoria X es definida para cada nmero real x como sigue:

F(x)=P(Xx) para -<x<


donde P(Xx) es la probabilidad asociada con el suceso {Xx}. As F(x) es la probabilidad,
cuando se ha realizado el experimento, de que la variable X tome un valor menor o igual que x.
Una funcin de distribucin F(x) tiene las siguientes propiedades:

0 F(x) 1 x.

F(x) es no decreciente (es decir, si x1 <x2 , entonces F(x1 )<F(x 2 )).

lim F ( x) = 1 y
x

lim F ( x ) = 0

(ya que X slo toma valores finitos).

Una variable aleatoria X se dice que es discreta si puede tomar unos valores determinados, no
pudiendo tomar ningn valor comprendido entre dos consecutivos. As la variable slo puede tomar un
conjunto finito de valores x1 , x2, ..., xn . La probabilidad de que la variable aleatoria X tome el valor xi
es dado por:

p(x i)=P(X=x i) para i=1, 2,...


y se tiene que

p( x ) = 1
i

i =1

donde la sumatoria significa la suma de todas las probabilidades p(x 1 ), p(x2 ),... Todas las
probabilidades acerca de X se pueden calcular desde p(x), a la cual se le llama funcin de probabilidad
para la variable discreta X. Si I=[a,b], donde a y b son nmeros reales tales que ab, entonces

78

Generacin de variables aleatorias

P( X I ) =

p( x )

a xi b

La funcin de distribucin F(x) para la variable discreta X es dada por

F ( x) =

p (x )
xi x

< x<

El mtodo de inversin va a aprovechar las propiedades de la funcin de distribucin para


obtener un valor de la variable aleatoria a partir de un nmero aleatorio uniformemente distribuido en
el intervalo (0,1).
Vamos a ver en qu consiste dicho mtodo tanto para el caso en el que la variable aleatoria sea
continua como para cuando es discreta.

5.2.1.1.- Caso continuo


En este caso la funcin de distribucin es continua. Vamos a utilizar un nmero aleatorio u,
uniformemente distribuido en (0,1) y vamos a suponer que es el valor que toma la funcin de
distribucin en un punto x. Tal punto va a ser el valor de la variable que queremos generar. Al ser la
funcin de distribucin continua, vamos a encontrar un valor de x para cualquier u.

F(x)
u

El algoritmo queda como sigue:


Generar u~U(0,1)
Salida xF -1(u)

5.2.1.2.- Caso discreto


En este caso la funcin de distribucin es discontinua y tiene una forma escalonada. Su
frmula es F ( x) =

xi x

Al ser discreta no hay frmula de su inversa y puede ocurrir que dado un u no se encuentre
imagen x de la funcin, sino que este valor est entre dos valores posibles.

79

Generacin de variables aleatorias

F(x)

x
Lo que se va a hacer en este caso es que dado un u se va obtener como salida un xj tal que
j 1

p
i =1

u < p i . El algoritmo queda como sigue:


i =1

Generar u U(0,1)
SI u<p1
ENTONCES salida x1
SI NO
SI u<p1+p2
ENTONCES salida x2
.
Este mtodo es un mtodo sencillo de aplicar, siempre y cuando la funcin de distribucin no
tenga una frmula complicada y utiliza slo un nmero aleatorio para calcular un valor de la variable
aleatoria.

5.2.2.- Mtodo de Aceptacin Rechazo


Este mtodo es ms probabilstico que el anterior.
Los mtodos de inversin, composicin y convolucin son mtodos de generacin directos, en
el sentido en que tratan directamente con la funcin de distribucin. El mtodo de aceptacin-rechazo
es menos directo en su aproximacin.
Nosotros vamos a aplicar este mtodo en el caso de que la variable aleatoria sea continua, el
caso discreto es anlogo y est tratado en Prob. 8.9????
En este caso tenemos la funcin de densidad f(x) de la variable y necesitamos una funcin t(x)
que la acote, es decir t(x)f(x) x. Hay que notar que t(x) no es, en general, una funcin de densidad
+

c = t ( x)dx

f ( x)dx = 1

pero la funcin r(x)=t(x)/c, si es claramente una funcin de densidad. (Suponemos que t es tal
que c<). Debemos de poder generar (esperamos que de forma fcil y rpida) un valor de la variable
aleatoria que sigue la funcin r(x). El algoritmo general queda como sigue:

80

Generacin de variables aleatorias

Generar x que siga la distribucin r(x)


Generar u~U(0,1), independiente de x

f ( x)
, entonces devolver x si no volver a repetir el algoritmo
t (x )

Si u

El algoritmo contina repitindose hasta que se genera un valor que es aceptado.


Para hacer que se rechacen el menor nmero de puntos posibles la funcin t(x) debe ser la
mnima funcin que acote a f(x).

5.2.3.- Mtodo de composicin


Este mtodo va a poder ser aplicado cuando la funcin de densidad es fcil de descomponer en
n

un conjunto de trozos, f ( x ) = t i ( x) siendo n el nmero de trozos en los que se ha dividido la


i =1

funcin.

un

Cada uno de los fragmentos se puede expresara como producto de un funcin de distribucin y
peso t i ( x ) = f i ( x )wi y la funcin de distribucin global la podemos obtener
n

como f ( x ) = w1 f 1 ( x ) con
i =1

=1.

i =1

El mtodo consiste en generar dos nmeros aleatorios, uno sirve para seleccionar un trozo y el
otro se utiliza para generar un valor de una variable que sigue la distribucin de dicho trozo. El valor
de la variable obtenida es el valor buscado.
El algoritmo general queda como sigue:
Generar u 1,u2~U(0,1)
Si u1=w1 entonces generar x~f1(x)
Si no
Si u 1=w1+w2 entonces generar x~f2(x)

5.2.4.- Mtodo de convolucin


Muchas variables aleatorias incluyendo la normal, binomial, poisson, gamma, erlang, etc, se
pueden expresar de forma exacta o aproximada mediante la suma lineal de otras variables aleatorias.
El mtodo de convolucin se puede usar siempre y cuando la variable aleatoria x se pueda expresar
como una combinacin lineal de k variables aleatorias:
x=b1 x1 + b2 x2 ++b kxk

81

Generacin de variables aleatorias

En este mtodo se necesita generar k nmeros aleatorios (u 1 ,u2 ,...,uk) para generar (x1,x2 ,...xk)
variables aleatorias usando alguno de los mtodos anteriores y as poder obtener un valor de la
variable que se desea obtener por convolucin.
Ejemplos de aplicacin de este mtodo los veremos cuando veamos mtodos particulares de
cada una de las distribuciones ms utilizadas.

5.3.- Mtodos concretos para distribuciones continuas


5.3.1.- Distribucin Uniforme
La distribucin uniforme en el intervalo (a,b) (U(a,b)) tiene como funcin de densidad y de
distribucin las siguientes:
1

si a x b
f ( x) = b a
0 en otro caso
0 si x < a
x a
F ( x) =
si a x b
b a
1 x>b

La media de la distribucin es ( x) =

a +b
(b a) 2
y la varianza 2 ( x) =
2
12

Como los nmeros aleatorios que generamos siguen la distribucin uniforme en el intervalo
(0,1), para generar valores de una distribucin uniforme en cualquier intervalo (a,b) slo tenemos que
hacer un cambio de intervalo:
Generar u (sigue U(0,1))
xa+(b-1)u
salida x
La distribucin uniforme es usada como modelo en primera aproximacin, para cantidades
aleatorias que vara entre a y b.

5.3.2.- Distribucin Normal o de Gauss


La funcin de densidad normal (o gaussiana) fue propuesta por C.F. Gauss (1977-1855) como
modelo para la distribucin de frecuencia relativa de errores, como los errores de medicin. Esta curva
con forma de campana es un modelo adecuado para las distribuciones de frecuencia relativa de datos
recabados de muchas reas cientficas diferentes y modela las distribuciones de probabilidad de
muchas estadsticas que utilizaremos para hacer inferencias.

82

Generacin de variables aleatorias

La variable aleatoria normal posee una funcin de densidad caracterizada por dos parmetros,
su media y su varianza ( y 2 respectivamente). La media mide la ubicacin de la distribucin y la
desviacin estndar mide su dispersin.
La distribucin Normal tiene como funcin de densidad la siguiente:
f ( x) =

1
2 2

1 x

< x < +

No es posible obtener una expresin de forma cerrada para la integral de la funcin de


densidad normal. Sin embargo, podemos calcular reas bajo la normal utilizando procedimientos de
aproximacin y el siguiente teorema:
Teorema: Si y es una variable aleatoria normal con media y varianza 2 , entonces
z=

y
es una variable aleatoria normal con media 0 y varianza 1.

Quizs la ms importante distribucin continua no uniforme es la distribucin normal con


media 0 y desviacin tpica 1. Dicha distribucin es llamada, a menudo, distribucin normal unidad o
estndar.
La inversa de su funcin de distribucin no es fcil de calcular, pero hay otros mtodos para
obtener valores de ella.
Mtodo Polar
Se usa para generar valores de la distribucin N(0,1), hay dos aproximaciones diferentes de
dicho mtodo:
1) Propuesta de Marsaglia y Brax:
Se inscribe un crculo de radio 1 en un cuadrado de lado 2, se generan nmeros aleatorios
aceptando como salidas aquellos que caen dentro del crculo y rechazando los que caen dentro del
cuadrado pero fuera del crculo.
El algoritmo es el siguiente:
Genera u 1, u2 (dos nmero aleatorios en (0,1))
V12u1-1
V22u2-1
S V1+V2
SI S1
ENTONCES
x1 V1 2( LnS) / S
x 2 V2 2( LnS) / S

2) Propuesta de Box y Muller:

83

Generacin de variables aleatorias

En este caso el algoritmo es el siguiente:


Genera u 1 , u2 (dos nmero aleatorios en (0,1))
x1 sen 2u1 2 Ln (u 2 )
x 2 cos 2u 1 2 Ln (u 2 )

Convolucin:
Vamos a ver una serie de propiedades de la distribucin normal y un teorema que nos van a
servir para generar valores mediante este mtodo.
Propiedad: Si tenemos una variable X que sigue una N(,), entonces aX+b sigue una
N (a + b, a )

Teorema del Lmite Central : si X es una variable aleatoria con media y varianza 2 , entonces la
media X , para una muestra de tamao n (si n es lo suficientemente grande), sigue una distribucin
Normal de meida y varianza 2 /n.
n

X=

x
i =1

sigue N ( , / n )

Apoyndonos en este teorema por convolucin de variables uniformes (U(0,1)), podemos


obtener valores de una N(0,1), mediante el siguiente algoritmo:
x0
PARA i=1 HASTA 12
Genera u i ( nmero aleatorio en (0,1))
xsuma+u1 (para conseguir una varianza 1)
FIN_PARA
xx-6 (para conseguir una media 0)
Salida x

5.3.3.- Distribucin Exponencial


La distribucin exponencial de parmetro >0, tiene como funcin de densidad y de
distribucin:

1 x /
, x0
e
f (x ) =
0, en otro caso
1 e x / , x 0
F ( x) =
0, en otro caso
La media de la distribucin es , y su varianza 1/2.
84

Generacin de variables aleatorias

La distribucin exponencial se usa para modelar intervalos de tiempo entre sucesos. Ejemplos
de procesos que han sido modelados mediante distribuciones exponenciales: la duracin de
conversaciones telefnicas, el tiempo entre fallos en ciertos elementos, tiempo entre interrupciones en
la CPU de un ordenador.
Es muy usada para simular el tiempo entre llegadas cuando las llegadas son completamente
aleatorias y para modelar tiempo de servicio, en los sistemas de colas. En estos casos es la
proporcin de llegadas o de servicios por unidad de tiempo.
Para obtener valores de esta distribucin se puede utilizar el mtodo de inversin.

5.3.4.- Distribucin Gamma


La distribucin gamma tiene dos parmetros, su funcin de densidad es la siguiente:

x 1e x /

x>0
f ( x ) = ( )
0 en otro caso
donde ( ) =

x 1e x dx

Su media E(x)= y su varianza Var(x)=2.


Es una candidata popular para modelar procesos, dada su capacidad para asumir una amplia
variedad de formas. Ejemplos de procesos que estn distribuidos segn una gamma son el tiempo que
se tarda en ejecutar una tarea, el tiempo de CPU que un trabajo necesita para ejecutarse, la desviacin
de una trayectoria desde su blanco, ventas mensuales de un determinado item, etc.
Un caso especial de la distribucin gamma es cuando es un entero, en este caso la
distribucin se conoce como Erlang. La distribucin erlang es frecuentemente usada para modelar el
proceso de servicio en un sistema de colas. Una propiedad importante de la distribucin erlang es que
puede expresarse como la suma de distribuciones exponenciales independientes.
Hay tres propiedades de la distribucin gamma que a menudo son utilizadas para generar
variables ale atorias:
1) La distribucin exponencial es una distribucin gamma con =1.
2) Si X1 es una gamma (1 ,) y X2 es una gamma ( 2 ,) entonces Y=X1+X2 es una gamma
( 1 + 2 ,).
3) Si X es una gamma ( ,1) entonces X es una gamma ( ,), para cualquier >0.
Las dos primeras propiedades nos dicen que podemos generar valores de distribuciones
gamma de valores grandes de mediante convolucin de valores de distribuciones gamma. La tercera
propiedad nos dice que slo es necesario desarrollar mtodos de generacin de varia bles aleatorias
gamma con =1. Una gamma(1,1) es una exponencial de media 1.
85

Generacin de variables aleatorias

Para generar valores de gamma con 0<<1 y >1 han sido propuestos varios algoritmos. Por
ejemplo Aherns y Deiter proponen un algoritmo basado en el mtodo de aceptacin-rechazo para
valores de <1; Tadikamalla presenta tambin una serie de mtodos para volores >1 y otros
algoritmos estn propuestos por Fishman o por Cheng y Feast.

5.3.5.- Distribucin Beta


La distribucin beta tiene dos parmetros de forma, su funcin de densidad es la siguiente:

x 1 1 (1 x) 2 1

0 < x <1
f ( x ) = ( 1 , 2 )

0 en otro caso
donde ( 1 , 2 ) =
Su media E ( x ) =

x
1

1 1

(1 x) 2 1 dx

1
1 2
y su varianza Var( x) =
1 + 2
( + )( + + 1)
1
2 1
2

Esta distribucin se usa a menudo para representar variables aleatorias que estn restringidas
al intervalo (0,1).
Se utiliza para generar entradas cuando no tenemos datos (por ejemplo el tiempo que tarda en
estropearse un aparato, el tiempo que tarda en suceder algo,...). Cuando en proyectos PERT se ha de
aproximar el tiempo que se le da a las distintas actividades, se usa esta distribucin. En general suele
usarse como modelo en primera aproximacin en ausencia de datos experimentales.
La funcin de densidad de esta variable puede adoptar una gran variedad de formas
dependiendo de los parmetros de la distribucin. Una de los ms comunes y simples mtodos de
generacin de valores de la distribucin beta es usar las relaciones que existen entre sta y la
distribucin gamma:
Si X1 es una gamma( 1 ,1) y X2 es una gamma( 2 ,1), entonces y = X 1 /( X 1 + X 2 )

es una

beta( 1 , 2 ).
Este algoritmo es fcil de implementar pero debido a que los mtodos de generacin de
gammas pueden ser ineficientes, se han desarrollado mtodos de generacin basados en el mtodo de
aceptacin-rechazo (Ahrens and Deiter).
Se puede observar que una distribucin U(0,1) y una beta(1,1) son la misma distribucin.
Una variable X que sigue una beta(1 , 2 ) en [0,1] puede reescalarse y desplazarse para
obtener una variable beta(1 , 2 ) en [a,b] con los mismos parmetros de forma mediante la
transformacin a+(b-a)X.
Si X sigue una beta( 1 , 2 ) en [0,1], entonces (1-X) sigue una beta( 2, 1 ) en [0,1].

86

Generacin de variables aleatorias

Aplicando el mtodo de inversin podemos obtener valores para la beta( 1 , 1):


1

x 1 1 (1 x) 0
f (x ) =
( 1 ,1)
f (x ) =

( 1 ,1) = x

1 1

x
1
(1 x) dx = = ,
0
0

entonces

x 1 1 (1 x) 0
= 1 x 1 1 . Su funcin de distribucin es
1
1
x

F ( x) = f (t ) dt = 1t
1

u = F ( x ) = x , entonces x = u

1 1

1
1

dt = 1 t
0

1 1

t 1
dt = 1 = x 1 .
1 0

Si

suponemos

que

5.3.6.- Distribucin m-erlang


Esta distribucin mide el tiempo que transcurre entre un suceso y el m-simo siguiente (es una
generalizacin de la exponencial). Tiene dos parmetros (m,) donde es la media de una
distribucin exponencial y m es el nmero de sucesos que se cuentan.
Se pueden generar valores de sta distribucin mediante la convolucin de exponenciales, ya
que una m-erlang de media se puede obtener como la suma de m exponenciales de media /m. El
algoritmo de generacin queda:
Generar u 1,u2,...,u m ~U(0,1)
m

X =
i =1

ln ui =
ln( u i )
m
m
i =1

Segn lo anterior, al estar los u i s en el intervalo (0,1), cuantos ms elementos haya para hacer
el producto ms pequeos son los valores que se van a obtener y el logaritmo va a conseguir valores
grandes negativos que se van a convertir en positivos al multiplicar por -/m. Por tanto cuanto mayor
es el nmero m de elementos vamos a obtener un valor ms alto como variable de salida y a la inversa.
Esto tiene sentido ya que cuanto mayor es el nmero m mayor debe dar el tiempo entre un suceso y ese
m-simo que es lo que mide la variable.

5.4.- Mtodos concretos para distribuciones Discretas


5.4.1.- Distribucin de Bernouilli
Una Bernouilli de parmetro p es la variable aleatoria que resulta cuando tenemos un
experimento con dos posibles resultados (xito y fracaso), siendo p la probabilidad de xito. Dicho
parmetro ha de estar en el intervalo (0,1).

87

Generacin de variables aleatorias

1 p si x = 0

Su distribucin de probabilidad es p ( x ) = p si x = 1
0 en otro caso

y su distribucin de

0 si x < 0

probabilidad acumulada F ( x) = 1 p si 0 x 1
1 si x 1

La media de la distribucin es E(x)=p y su varianza Var(x)=p(1-p).


El algoritmo para generar valores de una Bernouilli es el siguiente:
Generar u~U(0,1)
Si u<=p entonces salida xito si no salida fracaso

5.4.2.- Distribucin Uniforme Discreta


La variable aleatoria discreta es el resultado de un experimento con varios posibles resultados,
todos ellos igualmente probable. Suele emplearse como modelo en primera aproximacin para una
cantidad entera que vara entre los enteros a y b (con a<b) y sobre la cual no se tiene ms informacin.

Su distribucin de probabilidad es p ( x ) = b a + 1

x {a, a + 1,..., b}
en otro caso

0 si x < a
x a + 1
Su distribucin de probabilidad acumulada es F ( x) =
si a x b
b a +1
1 si x > b
Los parmetros a y b son enteros siendo a el parmetro de posicin. Su media es

a +b
(b a + 1) 2 1
E (x ) =
y su varianza Var ( x ) =
.
12
2
Para generar valores de una variable que siga esta distribucin podemos utilizar el siguiente
algoritmo:
Generar u~U(0,1)
Dar como salida X a + ( b a + 1)u , donde x es el operador que trunca

5.4.3.- Distribucin Geomtrica


La distribucin geomtrica mide el nmero de fracasos antes del siguiente xito. sta
distribucin tiene un parmetro p que indica la probabilidad de xito. El nmero de piezas revisadas
antes de obtener una defectuosa, el nmero de lanzamientos de una moneda antes de que salga cara,
etc..., son ejemplos de variables que siguen una distribucin geomtrica.
88

Generacin de variables aleatorias

si x {0,1,...}
y su distribucin de
0
en
otro
caso

p (1 p ) x

Su distribucin de probabilidad es p ( x ) =

1 (1 p ) x1 si x 0
probabilidad acumulada F ( x) =

0 en otro caso

La media de la distribucin es

E (x ) =

1 p
1 p
y su varianza Var ( x ) = 2
p
p

Se pueden obtener valores de una distribucin geomtrica mediante convolucin de bernouilli:


F0
E0
MIENTRAS E=0 HACER
Genera u~U(0,1)
SI u<=p
ENTONCES EE+1
SI NO FF+1
FIN_MIENTRAS
DEVOLVER F

5.4.4.- Distribucin Binomial


La distribucin binomial mide el nmero de xitos en n pruebas independientes. Ejemplos de
variables que siguen esta distribucin son el nmero de miembros de un conjunto que cumplen cierta
caracterstica tal como el nmero de piezas defectuosas en una caja de 200, el nmero de veces que se
obtiene cara si se lanza 10 veces una moneda, etc...
Esta distribucin tiene dos parmetros: n que es el nmero de experimentos y p que indica la
probabilidad de xito.

n x
p (1 p ) n x si x {0,1,2,..., n}
Su distribucin de probabilidad es p ( x ) = x
y su
0 en otro caso

0 si x < 0
x n
distribucin de probabilidad acumulada F ( x) = p i (1 p ) n i si 0 x n
i= 0 i
1 si x > n
La media de la distribucin es E ( x ) = np y su varianza Var ( x ) = np(1 p )
Se pueden obtener valores de una distribucin binomial(n,p) mediante los siguientes mtodos:
1) Si n es pequeo:
Mediante el mtodo de inversin de variables discretas

89

Generacin de variables aleatorias

n
p j ( x = j ) = p j (1 p ) n j de forma que
j
Generar u~U(0,1)
Si u<p0 Entonces salida X=0
Si u<p0+p1 Entonces salida X=1
Si u<p0+p2+p3 Entonces salida X=2
...
Mediante convolucin de bernouilli

E0
PARA i=1 HASTA n
Genera u~U(0,1)
SI u<=p
ENTONCES EE+1
FIN_PARA
DEVOLVER E
2) Si n es grande, se pueden hacer aproximaciones de la binomial mediante otras
distibuciones:
Cuando p es pequeo se puede aproximar mediante una Poisson. Si p0 y n de forma tal
que la media =np permanece constante, entonces se puede aproximar una B(n,p) por una P().
Cuando p no es pequeo se puede aproximar mediante una Normal. Si X representa el nmero
de xitos en n experimentos independientes, donde p es la probabilidad de xito, entonces la
proporcin de xitos X/n sigue una distribucin aproximadamente normal con media =p y desviacin
tpica =

p (1 p )
, si n es lo suficientemente grande. Esto equivale a considerar que una B(n,p)
n

puede aproximarse mediante una N ( np, p (1 p) n ) . La aproximacin es aceptable si np>5 .


El algoritmo es el siguiente:
Generar z~N(0,1)

v np + z np(1 p ) (v~ N ( np, p (1 p) n ) )


SI v>np

, n
2

1
Si NO x max x ,0
2

ENTONCES x min x +

DEVOLVER x

90

Generacin de variables aleatorias

Estas transformaciones se han de hacer ya que la Normal est definida en -<x<+ y la


Binomial ha de estar en 0<x<n.

5.4.5.- Distribucin de Poisson


La distribucin de poisson P() surge cuando estamos interesados en medir el nmero de
sucesos aleatorios que suceden en un intervalo fijo. Por ejemplo el nmero de llamadas recibidas en
una centralita telefnica en un periodo de 30 segundos, el nmero de defectos en una fibra de vidrio
de 1 Km de longitud, el nmero de meteoritos encontrados en una hectrea de tierra desierta, etc...
Son problemas en los que la variable aleatoria se distribuye a lo largo del tiempo o del espacio.
En todos los casos, las condiciones para que se trate de una distribucin de Poisson son:

Los eventos de inters deben ocurrir independientemente unos de otros.

La probabilidad de que suceda un evento en un intervalo depende de la longitud del


intervalo y no de su posicin.

e x

si x {0,1,...} y su distribucin de
Su distribucin de probabilidad es p ( x ) = x!
0 en otro caso

0 si x < 0

i
probabilidad acumulada F ( x) = x
e
si x 0
i=0 i!
La media de la distribucin es E(x)= y su varianza Var(x)=.
Propiedades de la distribucin:
Si X1 ~P(1 ) y X2 ~P(2 ) entonces X1 +X2 ~P(1 +2 ).
El parmetro de la distribucin de Poisson, que es su media, es el inverso de la media de una
distribucin exponencial.
Formas de generar valores de una P():
1) Cuando n es pequeo:
Se puede utilizar el mtodo de inversin para variables discretas, sabiendo que

pi =

i
e
i!

i = 0,1,...

Apoyndonos en que una P() es la inversa de una exp() con =1/, se


pueden generar valores de la Poisson mediante el siguiente algoritmo:
P1: t0; X0; finFALSO
MIENTRAS NO fin HACER
91

Generacin de variables aleatorias

Generar u~U(0,1)
Y-ln(u) (con =1/)
tt+Y
SI t>T
ENTONCES finVERDAD
SI NO XX+1
FIN_MIENTRAS
DEVOLVER X
X es la variable que sigue una P(), en cada momento se va generando mediante una
exponencial Y el tiempo en el que ocurre el siguiente suceso. T es la cantidad de tiempo en la
que se quieren contar los sucesos ocurridos.
2) Cuando n es grande se puede aproximar una P() mediante una Normal de media y
varianza , N ( , ) ., se debe de aplicar un factor de correccin ya que se pasa de
un valor continuo de la distribucin Normal a aproximar un valor discreto de la
distribucin de Poisson.

5.4.6.- Distribucin Discreta Emprica


Cuando la distribucin de probabilidad de una variable aleatoria discreta viene dada por un
conjunto de probabilidades, el mtodo ms comn para generar valores de la misma es el mtodo de la
Tablas de Bsqueda. Para conseguir ms eficiencia se han de ordenar los valores de F(x) en orden
decreciente. El algoritmo de generacin es el siguiente:
Generar u~U(0,1)
finFALSO
i1;
MIENTRAS NO fin HACER
SI u<=F(xi)
ENTONCES finVERDAD
SI NO ii+1
FIN_MIENTRAS
DEVOLVER xi

92

También podría gustarte