Você está na página 1de 16

Toda la naturaleza es como un arte desconocido a nosotros,

Todo chance es una direccin que no alcanzamos a ver.



Alexander Pope, 1688 1744, Un Ensayo sobre el Hombre


-------------- Captulo 7----------------------


Interludio: Modelando la aleatoriedad

Este captulo desarrolla mtodos para hacer simulaciones por ordenador de modelos aleatorios.
Las simulaciones nos ayudan a intuir acerca de la aleatoriedad que opera dentro de los
procesos y nos ayuda a desarrollar la manera de apreciar cmo los procesos aleatorios difieren
de los determinsticos. El enfoque algortmico que uno debe tomar para elaborar un programa
nos conduce a un entendimiento diferente del modelo que es complementario al enfoque
terico. Adems, las simulaciones por computadora son algunas veces el nico mtodo para
obtener respuesta en ecuaciones que son difciles de solucionar.

Se usa un lenguaje algortmico general; el cual, es de hecho, un subconjunto de Pascal,
aunque en el cdigo se orientar al uso de Scilab. Scilab es un lenguaje muy similar a otros en
este contexto. Por lo que no le ser difcil dominarlos los trminos si Ud. Ya conoce algn otro
lenguaje de programacin.

7.1 GENERADORES DE NMEROS ALEATORIOS (O PSEUDO-ALEATORIOS).

En el corazn de simulaciones de modelos aleatorios est un mtodo para producir nmeros
aleatorios es un procemiento o funcin que estar produciendo nmero tras nmero de una
manera que estarn uniformemente distribuidos en el intervalo [0,1] sin ningn patrn
aparente. El mtodo explicado en esta seccin es el mtodo usado por la mayora de lenguajes
de programacin que tienen incorporado un programa generador de nmeros aleatorios.

En realidad, el generador de nmeros aleatorios es una frmula especfica que produce
los nmeros en una manera completamente deterministica. Esto es una contradiccin para la
idea misma de aleatoriedad. Por lo que consecuentemente, los nmeros producidos por el
generador se llaman a menudo pseudo-aleatorios porque, aunque tienen un patrn muy
definido, parecen no tener patrn perceptible detectable si uno no conoce la frmula exacta
usada. El hecho que la misma secuencia de nmeros pseudo-aleatorios sea generada cada vez
que el generador es usado es incluso til en ayudar a depurar programas y comprender el
resultado de la simulacin. Aleatoriedad quiere decir sin patrn; Pseudo -
aleatoriedad quiere decir sin patrn aparente.
Comenzando con enteros positivos MULT (de MULTiplicador), ADDR (de sumador), y
NORMA (para normalizador). SEED debe ser un nmero pseudo-aleatorio satisfaciendo
0 SEED < NORMA

Cada vez que un nmero aleatorio nuevo se necesita, se produce del valor previo de SEED por
la frmula


Es decir, el primer valor de SEED se multiplica por MULT, y luego se le suma ADDR, y
finalmente el residuo obtenido de la divisin por NORMA es el nuevo valor de SEED.

El ejemplo 1
Use estos valores

MULT = 6 ADDR = 5 NORMA = 11

Qu valores de SEED se producir si el valor inicial de SEED es 0? , Si el valor inicial es 4?

Solucin: Cada vez que el valor nuevo de SEED es

SEED = (6 *SEED + 5) modulo 11

Con SEED inicialmente 0 esta es la secuencia generada:

0 5 2 6 8 9 4 7 3 1 0 5 2 6 8 . . .

Con SEED inicialmente 4 esta es la secuencia generada:

4 7 3 1 0 5 2 6 8 9 4 7 3 1 0 5 2 . . .

Del ejemplo 1, dos hechos son aparentes: Primero, puesto que el siguiente nmero en
la secuencia es generado slo del valor del nmero previo, si en cualquier momento se
genera un nmero que ya haba sido generado, entonces a partir de ese punto en adelante se
comienza a repetir la lista. En segundo lugar, la longitud del ciclo el nmero de
nmeros distintos antes de que la repeticin ocurra puede ser a lo sumo de longitud
igual que el valor de NORMA. Esto est as dado que la funcin modulo produce el residuo
de la divisin entera por NORMA, lo cual necesariamente es un nmero entre 0 y NORMA-1; As
que hay NORMA valores posibles de residuo NORMA valores posibles del nmero aleatorio
SEED, es decir; Y tan pronto como uno es repetido, la repeticin de la lista entera ocurre. Un
buen generador aleatorio de nmero usara valores de MULT; ADDR, y NORMA a fin de que la
longitud del ciclo sea la ms grande posible.

SEED= (MULT*SEED + ADDR) MODULO NORMA
El ejemplo 2

Considere el generador

SEED = (6 *SEED + 3) modulo 7

Entonces con valores iniciales diferentes de SEED, estas son las secuencias generadas:
0 3 0 3 0 3 0 3 0 3
1 2 1 2 1 2 1 2 1 2
4 6 4 6 4 6 4 6 4 6
5 5 5 5 5 5 5 5 5 5

Aunque el valor de NORMA = 7 sugiere que la longitud del ciclo es el mximo valor de 7, las
longitudes del ciclo reales son pequeas; Si SEED es inicialmente 5, en ese entonces el
generador aleatorio de nmero es realmente intil.

La teora de qu aprecia del resultado de parmetros en buenos generadores aleatorios
de nmero est complicado y ms un tema de lgebra abstracta que de probabilidad. Nuestro
inters aqu est de moda usar un generador aleatorio de nmero y el siguiente teorema es
dicho sin prueba.*

Teorema

El generador aleatorio de nmero producir la mxima longitud ciclista NORMA de pseudos
- nmeros aleatorios con cualquier valor inicial de SEED debajo de ya sea de estas
condiciones:

NORMA es una potencia de 10.
ADDR acaba en (el dgito de unidades) 1, 3, 7, o 9.
MULT-1 es un mltiplo de 20.

NORMA es una potencia de 2.
ADDR es extrao.
MULT-1 es un mltiplo de 4.

El ejemplo 3

Con NORMA = 10, ADDR = 27, y = 21 MULT, la longitud de ciclo mximo de NORMA
= 10 se obtiene. Para comprobar esto, usamos:

Para producir cada valor sucesivo de SEED. Con SEED inicialmente 0 esta es la secuencia
obtenida:
0 7 4 1 8 5 2 9 6 3 0. . .
SEED = (21*SEED + 27) modulo 10
Cul tiene una longitud de ciclo de 10?.
Con NORMA = 16, ADDR 7, y MULT 21 la mxima longitud del ciclo de NORMA = 16 es
obtenida. Aqu

Produce esta secuencia con SEED inicialmente 0:
0 7 10 9 4 11 14 13 8 15 2 1 12 3 6 5 0. . .
El cual, en efecto, tiene una longitud de ciclo de 16.
El descubrimiento salda al dividir por los potencias de 10 puede hacerse
rpidamente por seres humanos. Por ejemplo, 237 modulo 100 = 37; 3451 modulo 10 = 1;
9087 modulo 100 = 87. Pero las computadoras (usando aritmtica binaria) pueden encontrar
restos ms rpidamente al dividir por potencias de 2.
Adems de longitudes de ciclos largos, un generador aleatorio de nmero debe
satisfacer esta condicin: el resultado de cualquier clculo aritmtico en el
clculo de SEED desde el valor anterior de SEED no debe exceder el entero
mximo que se puede almacenar en la computadora; de lo contrario, resultara una
condicin de desbordamiento. Para computadoras que almacenan enteros en 32 bits, por
ejemplo, este mximo entero es 2147483647 = 232 - 1. El mximo valor usado en computar el
siguiente valor de SEED es
MULT * + (el mximo valor de SEED) + ADDR
Pero el valor mximo de SEED es NORMA-1. Por consiguiente, MULT, ADDR, y Norma
debe elegirse de forma que:

No excede el tamao del entero mximo.
El ejemplo 4
Usando el teorema, lo siguiente sera producir generadores de nmeros aleatorios con un
mximo de duracin del ciclo NORMA:
NORMA
ADDR MULT MULT*(NORMA-1)+ADDR= mximo entero generado
100
41 641 63500
10000
4857 2601 26012256
1024
57 981 1003620
32768
8485 22073 723274476

En resumen, desde grandes longitudes de ciclo son deseables, MULT, ADDR, y NORMA
deberan estar escogidos satisfaciendo las condiciones del teorema de tal manera que (NORMA-
1) *MULT +ADDR est prximo al mximo tamao de entero. Entonces cualquier valor inicial
SEED = (21*SEED + 7) modulo 16
MULT*(NORMA-1) +ADDR
de SEED le producir a NORMA muchos pseudos nmeros aleatorios sin repeticin. Tenga en
cuenta que no hay punto en el uso de un valor inicial de SEED > NORMA-1 ya que
cada valor sucesivo de SEED ser menor que NORMA. Por qu?
Hasta ahora, el generador de nmeros aleatorios produce SEED enteros CON 0
SEED < NORMA. Para obtener un nmero adentro el intervalo de la unidad, simplemente divide
SEED por NORMA.
Con un valor inicial de SEED y MULT constantes, ADDR, NORMA, nmeros pseudo aleatorios
en el intervalo de la unidad [ 0,1) es obtenido por estas dos instrucciones

SEED= (MULT*SEED +ADDR)modulo NORMA;
RND= SEED/NORMA

El ejemplo 5
Escriba un programa para generar 100 nmeros aleatorios en [0, 1].
Solucin







Los nmeros pseudo-aleatorios producidos de esta manera tienen buena probabilidad de
pasar varias pruebas de aleatoriedad. Por ejemplo, la media de los nmeros es
aproximadamente 1/2; Aproximadamente de un dcima parte de ellos se subdividir (o cae) en
cada uno de los intervalos [ 0, uno), [ 1, 2), , [ 9, 1 ). Con cualquier secuencia finita, sin
embargo, no puede haber prueba completa de aleatoriedad. Adems, puesto que los nmeros
pseudos - aleatorios son obtenidos por una frmula determinista, si el modelo aleatorio que es
simul incorpora un patrn que coincide con el patrn de la frmula aleatoria del generador
de nmeros, en ese entonces el generador puede resultar malo para ese modelo. Antes de
utilizar un generador de nmeros aleatorios especial (la eleccin de NORMA, ADDR, y MULT),
uno debera realizar algunas comprobaciones simples. Teniendo un listado de varios centenares
de ellas y visualmente inspecciona la lista; hace que parecen ser aleatorias? Haga que el
promedio impreso. Est cerca de ? Y as sucesivamente. (Vase problemas del 7.6 al 7.10).
norma=10000;
addr=4857;
mult=8601;
seed=0;

for i=1:1:100
seed=modulo(mult*seed+addr,norma);
rnd=seed/norma;
printf('%3d %20.8e \n',i,rnd);
end

Tenga en cuenta tambin que un generador de nmeros aleatorios es slo capaz de
producir NORMA muchos valores diferentes de RND. Si se requieren ms de una simulacin,
los valores de NORMA, ADDR, y MULT debe ser el cambio.
El ejemplo 6
Simulando Pruebas del Bernoulli
Introduzca una probabilidad p de xito en cada ensayo de Bernoulli y un MAXI entero,
y la salida MAXI muchas simulaciones de ensayos de Bernoulli (MAXI diversos letras "S" o "F").
Solucin
Despus de generar cada valor de RND como en el ejemplo 5, una decisin tiene que ser
hecho si el valor de RND corresponder a una S o a una F. pero la probabilidad de que RND es
menor que p es exactamente p, ya que el intervalo [0, p) ocupa una fraccin p de la unidad de
intervalo entero [0, 1]. As RND simula un xito si RND <p, de lo contrario, RND simula un
fracaso.














Problemas
7.1. Con los siguientes valores de NORMA, ADDR, MULT, y el valor inicial de SEED, escriba la
secuencia de valores sucesivos de SEED generada de SEED= (MULT*SEED+ADDR) modulo
NORMA. Comience con SEED = 0.
clc;

norma=10000;
addr=4857;
mult=8601;
seed=0;

p=input('digite la probabilidad: ');

MAX=input('digite la cantidad de prubas de Bernoulli a realizar: ');

for i=1:1:MAX

seed=modulo(mult*seed+addr,norma);
rnd=seed/norma;

if rnd<p then
printf('%3d %20.8e S\n',i,rnd);
else
printf('%3d %20.8e F\n',i,rnd);
end

end







Para cul de ellas es la duracin del ciclo igual a Norma? Cul de ellos satisfacen las
condiciones del teorema?
7.2. Si NORMA = 1035, ADDR 6355; MULT 2309, cul es el mximo valor de MULT *SEED
+ADDR que se obtiene con un valor inicial de SEED menor que el de NORMA?
7.3. Demostrar que M mdulo NORMA= M, mdulo NORMA si y slo si M-M, es un mltiplo
de NORMA. Muestran que, en consecuencia, si MULT - MULT, es un mltiplo de NORMA,
entonces
(MULT*SEED + ADDR) modulo NORMA = (MULT
1
*SEED + ADDR) modulo NORMA
Por lo tanto MULT, ADDR, NORMA producen el mismo generador de nmeros aleatorio como
MULT
1
, ADDR, NORMA.
7.4. Demostrar que MULT, ADDR, NORMA producen el mismo generador de nmeros
aleatorios como MULT, ADDR
1
, NORMA si ADDR - ADDR
1
es un mltiplo de NORMA.

Note Nota: este problema 7,3 implica que no es momento de tomar MULT
mayor que NORM. Esto es as ya que si MULT> NORM, entonces el mismo generador
de nmeros aleatorios se obtiene restando NORMA de MULT suficientes veces que
ADDR se pueden tomar para ser menor queNORMA sin la eliminacin de cualquier de
los generadores
7.5. Qu pasar si MULT = 1? Al generar 10 los valores sucesivos de SEED si el valor inicial de
SEED es 0 y SEED = (1 + SEED +17) modulo 400. Qu est mal con este generador?
En los problemas de los programas siguientes se utilizan los mismos valores de NORM, ADDR,
y el MULT.
7.6 Averige cul es el mximo entero est en su ordenador. A continuacin, seleccione
NORM, ADDR, y MULT que satisface el teorema, pero a fin de que (NORM-1) *MULT +ADDR
no exceda dicho lmite mximo.
7.7. Con su eleccin de NORMA; ADDR, y MULT, escriban un programa que usa el nmero
inicial de ciclos del lazo realizado. Este nmero debera ser NORMA (si usted ha escogido su

MULT ADDR NORMA
(A)
4 3 7
(B)
5 3 16
(C)
2 3 16
(D)
5 7 10
(E)
1 9 10
(F)
7 4 9
generador aleatorio de nmero de conformidad con el teorema). Tambin imprimir el
promedio de todos los valores RND.
7.8. Escriba un programa que ser ENTRADA MAXI igual a la cantidad de nmeros aleatorios
RND = SEED / NORMA a generar. Imprimir todos los estos nmeros (asegrese de MAXI no sea
demasiado grande) Y compruebe que parecen estar distribuidos al azar en [0, 1], sin ningn
patrn obvio.
7.9. Con el mismo generador aleatorio de nmero, escribir un programa para MAXI entrada.
Calcular los distintos valores MAXI de RND comenzando con el valor inicial de igual de la SEED
para 0. Imprima el nmero de valores de RND en cada uno de los intervalos [0, 1 ), [ 1, 2 ),
; [ 9, 1 ]. Estos cada uno deberan estar prximos al MAXI/10. Ejecute el programa con varias
entradas de MAXI.
7.10. Con el mismo generador aleatorio de nmero, escriba un programa para recoger los
distintos valores MAXI de RND (indicando con un valor inicial de SEED igual a 0) y calcular el
nmero de veces que los valores actuales de RND es mayor que el valor anterior o RND. Este
nmero debe ser aproximadamente MAXI / 2.

7.2. SIMULANDO PROBABILIDADES Y EXPECTATIVAS

Recordemos que la interpretacin de la frecuencia de la probabilidad afirma que si un
experimento aleatorio se realiza un MAX gran nmero de veces y el evento A ocurre
un momento, entonces P (A) n / MAX.



Recuerde tambin que si la X es una variable aleatoria, la E (X) es
aproximadamente la media de los valores de X en un gran nmero de repeticiones del
experimento aleatorio.


Qu tan grande debe ser MAXI para que las aproximaciones sean correctas?
La respuesta requiere el teorema del lmite central y la ley de los grandes nmeros
(captulo 10). Pero considere esto: si MAXI = 1000 y SUMA es un nmero entero,
SUMA / MAXI slo puede tener un mximo de tres dgitos distintos de cero a la
derecha del punto decimal. Para una mayor precisin a estos muchos lugares, MAXI
tiene que ser tomado considerablemente mayor que 1000
.El ejemplo 7
Para simular P (A), la entrada de un gran valor MAXI, simular los tiempos
experimento aleatorio MAXI, aadir 1 a SUMA cada vez que los resultados
de la simulacin en el evento A, la salida SUMA / MAXI.
Para simular E (X), la entrada de un gran valor MAXI, simular los tiempos
experimento aleatorio MAX, agregue el valor de X en cada una de SUMA, y la
salida SUM / MAX.
Tres bolas son lanzadas al azar en 5 latas. Cul es la probabilidad que todos ellos
aterrizan en latas diferentes?
La solucin que hay 53 formas para distribuir todo el adentro para las latas,
53 de los cuales tienen bolas en latas diferentes. Por lo tanto la probabilidad exacta es

Para simular las probabilidades, introduzca en la computadora un entero MAX,
en ese entonces muchos tiempo simule que tres nmeros de los contenedores CAN[1],
CAN[2], Y can[3] son distintos aadir 1 al SUM.















7.3. SIMULACION DE DISTRIBUCION DISCRETA CON UN NUMERO FINITO
DE RESULTADOS.

El ejemplo 6 simul pruebas Bernoulli en las cuales hubo dos resultados posibles, el
xito o el fracasoGeneralizando, supongamos que un experimento aleatorio
clc;
norma = 10000;
addr = 4857;
mult = 2601 ;
suma= 0;
seed=0;
maxi=input('digite el numero de ensayos a realizar: ');
for i=1:maxi
for j=1:3
seed=modulo(mult*seed + addr,norma);
rnd=seed/norma;
can(j)=floor(5*rnd+1);
end
if ((can(1) <> can(2)) & (can(1) <> can(3)) & (can(2) <> can(3))) then
suma=suma+1;
end
end
p=suma/maxi;
printf('suma: %d ',suma);
printf('maxi: %d ',maxi);
printf('resultado: %f ',p);

puede tener N + 1 posibles resultados, resultados que se produce con
probabilidad p
i
. As


Si RND se distribuye uniformemente en el intervalo de la unidad [O, 1), a continuacin
de la fraccin P0 Si RND se distribuye uniformemente en el intervalo de la unidad [O,
1), entonces la fraccin de los valores de p0 RND estar en el intervalo [O, p0), p1
fraccin de los valores RND estar en el intervalo [p
0
, p
0
+1) As, para simular un
resultado i, siga este procedimiento: Generar RND, y determinar qu intervalo contiene
RND. Ms especficamente, si RND<p
0
, set i = 0, si no, pero RND <p
0
+ p
1
, puedo
configurar i = 1, si no, pero RND <p
0
+ p
1
+ p
2
, se puede establecer i = 2, ..., es
decir, la resultados de las simulaciones en los resultados i si i es el menor entero para
que RND <p
0
+ ... + p
i
, tenga en cuenta que tal existe desde p
0
i + ... + p
N
= 1 y RND
Pertenece [0, 1). Ahora en adelante denotaremos estas probabilidades usando la
notacin de matriz. En la parte de las declaraciones de variables de los programas, P
ser conjunto [0, ..., 100] de lo real. (N se supone que es 100). As, en particular, P
[i] denota p
i
. (Ver fig. 7.1.).








El ejemplo 8
Un experimento aleatorio puede tener O, 1 ..., N resultados. Escriba un programa que
puede introducir MAX (el nmero de simulaciones a realizar), N y N + 1 la probabilidad
P [0],. . ., P [N]. Imprimir todas las simulaciones MAX de los muchos experimentos.

Solucin: Ambos P y SUM Son arreglos. Un bucle while se utiliza para encontrar el
valor de i ms pequeo de modo que RND<SUMA[i].

Po + . . . + P
n
= 1

Simulacin con un Nmero Finito de Resultados

Determinan N y la probabilidad P [0],. . . , P[ N ]. Forme las sumas

SUMA[i] = P[0] + + p[i]

Para i = 0 a N. Generar RND y encuentre el valor ms pequeo de i de manera que
RND<SUMA [ i ] .

Yo falta el programa del ejemplo 8

El ejemplo 9
Use el mtodo anterior para simular 100 rollos de un dado comn y corriente.

Solucin Cada resultado tiene igual probabilidad 1/6. Por lo tanto no tienen
que ser introducidos en el programa. Tampoco SUMA [i] tiene que ser almacenado
desde SUMA [i] = 1/6. Por qu?
Programa del ejemplo 9


Tenga en cuenta que i se inicializa a 1 antes del bucle, mientras que en lugar de 0
como en el Ejemplo 8.
Por qu?
El ejemplo 10: Simulando Una Variable Aleatoria Binomial

Entrada MAXI, N, P, y simular muchos experimentos MAXI; Cada uno consiste en
realizar N pruebas Bernoulli con P de probabilidad de xito y determinar el nmero de
xitos sobre todas Los N ensayos.

La solucin que hay dos mtodos. La primera parte es simular un total de MAXIN
numerosas pruebas de Bernoulli, dividirlos en grupos de N cada uno; Para cada grupo
de N, cuente el nmero total de xitos. (El problema 7.13 pide que usted haga esto.).
El segundo mtodo consiste en calcular las probabilidades binomiales

P i

As como en captulo 4, el ejemplo 17. El cuerpo humano del programa es

Falta codigo del ejemplo 10

Deje al de la X al azar la variable con = la pi de alcance { 0, 1, , N } y P (la X
=
). Veamos cmo simular el anterior mtodo para valor de X aparece grficamente. La
funcin de distribucin para X es F (t) = P (la X t) como una funcin de t. Desde
que la X es discreta, F es una funcin de paso con saltos en el entero apunta a yo = 0,
1, , N.
Para simular una X de valor, el mtodo es computar a RND y encontrar lo ms
pequeo tan esa pi RND < p0 + +. Grficamente, el valor RND es tramado en el eje
vertical; Una lnea horizontal es levadiza de RND; Dnde intersecta los pasos
determina el valor simulado. (Vea higo. 7.2.).
Ms generalmente, si la X variable aleatoria discreta tiene alcance
{
x0
,
x1, ,
xn } con los valores aumentando
(xi +1
), entonces la funcin de distribucin de X es una
funcin de paso; Si la pi = p (la x = xi), entonces
F (la X) = _ Pi = P = _ P (la X = xi) (la x de la X)






Donde las sumas se extienden a lo largo de todos los indices con x xi d. Grficamente,
la funcin de distribucin aparece as como en higo. 7.3. En ese entonces el mtodo
grfico para simular un valor de X es ste: Primero genere a RND, localice a RND en el
eje vertical, y encuentre el valor de la X exactamente debajo del punto de la
interseccin de la lnea horizontal a travs de RND y la grfica de F.

Problemas

7.11. Una caja contiene 4 rojo y 3 lpices azules. Tres son seleccionados al azar sin
reemplazar cualquier de ellos. Deje a la X ser el nmero de marca con rojo en la
muestra. Qu es P (la X =) para / = O, 1, 2, 3? .Escriba un programa para simular e
imprimir 100 pruebas.
Es decir, la salida debera aparecer como una lista de enteros
2 3 0 2 0 1 1 ...
Indicando "2 rojo en primera muestra, 3 rojos en segunda muestra, O en tercera
muestra,
El aporte debera ser P i para / = O, 1, 2, 3.


7.12. El aporte MAX y P y le simulan a MAX muchos experimentos. Cada uno consiste
en lanzar una moneda al aire dos veces con P de probabilidad de cabezas. El resultado
0 le corresponde a 0 cabezas (abstemio) con probabilidad Q2 = (1 P)
2;
El resultado
1 le corresponde a HT con probabilidad P-Q; El resultado 2 le corresponde a TH; Y el
resultado 3 le corresponde a HH.

7.13. El aporte MAX, N, y P y le simulan a MAX muchos experimentos; Cada uno
consiste en realizar pruebas N Bernoulli as como en el Ejemplo 10. Haga esto
realizndole a MAX-N muchas simulaciones de pruebas Bernoulli. Un contorno del
programa es

El programa del falta de esta seccion

7.14. (La continuacin) Tenga su programa impresin el nmero comn de xitos
para MAX muchas simulaciones. Esto debera estar prximo a la expectacin N-P.

7.4 SIMULANDO DISTRIBUCIONES DISCRETAS CON UN INFINITO
COUNTABLY NUMERAN DE RESULTADOS
Suponga que a todo lo largo de esta seccin X variable aleatoria tiene alcance { Oh, 1,
2,. . .], Deje A A P I = P (la X = / ). Simular un valor para X requiere dividir el intervalo
de la unidad 0,1 en countably muchos subintervalos, entonces seleccionando RND a.
uniformemente distribuido y finalmente determinando en cul el subintervalo RND est
ubicado.
Usar las tcnicas de la seccin precedente requerira primer descubrimiento las
infinitamente muchas sumas
La SUMA i = P 0 + + P i


Para yo = 0 para _ as como en Higo. 7.4. Desde que estos infinitamente muchas
operaciones son imposibles en una computadora, necesitamos una alternativa. Una
posibilidad es encontrar una M de valor a fin de que la SUMA M frise 1. Si el valor de
RND est menos de este valor, la simulacin debera producir lo ms pequeo tan ese
i RND<SUM como antes; Si, sin embargo, la SUMA e M, la simulacin producir
resultado M + l.

Una alternativa y el mismo usado aqu hay computar sucesivamente valores de SUMA
i, detencin cuando i RND<SUM por primera vez. Este mtodo es menos eficiente que
el primer mtodo desde entonces con muchas simulaciones la SUMA de valor 0 . LA
SUMA 1,. . . Debe calcularse muchas veces. Por otra parte, no hay valor sobresaliente
de truncamiento como lo superior con direccin al valor simulado de X. Uno puede
mejorar el mtodo almacenando SUMA 0, PUEDE SUMAR a 1,. . . Como son
computados. Entonces cuando el siguiente RND es generado, uno revisa para ver si
RND est menos de cualquier de SUMA de sumas i computado hasta ahora; Si no, ms
valores de SUMA I son computados (y almacenado) hasta un valor de yo es
encontrado con RND<SUM i . Esta mejora vale la pena, sino por el bien de claridad no
ser incorporado en los ejemplos (vea a Problem7.18).

El ejemplo 11: Simulando Una Variable Aleatoria Geomtrica

Recuerde que si la X es el tiempo de espera hasta el primer xito en una sucesin de
pruebas Bernoulli, entonces




Para j = 1, 2, 3, ... Write un programa para introducir en la computadora a MAX (el
nmero de simulaciones) y P y devolver al MAX muchas veces de espera la j simulada.

La solucin La frmula recursiva






Es usado (pero vea Problema 7.17 para un mtodo alternativo). Estas probabilidades
Dividen el intervalo 0, 1 as como en Higo. 7.5.
Falta lgorimo del 7.5


El ejemplo 12: Simulando Una Variable Aleatoria Poisson

El aporte debera ser MAX para el nmero de simulaciones y L para el parmetro. La
salida debera ser MAX muchas simulaciones de una X variable aleatoria distribuida
Poisson con L de parmetro.

La retentiva de solucin (la Seccin 6.1) que las probabilidades Poisson
satisfacen esta frmula recursiva:


Para yo = 1, 2,. . ., Donde la L es el parmetro. El programa es similar a eso de
Ejemplo 11. Hay slo dos diferencias: La inicializacin

Y la modificacin

Usando la frmula recursiva. El cuerpo humano del programa es


Falta el programa

PROBLEMAS

7.15. Deje a la X ser Poisson distribuido. E (la X). Escriba un programa que introducir
en la computadora a L (para.) Y simula 1000 valores de X. Despus de cada serie de
100 simulaciones, escriba en letras de imprenta fuera de la suma de todas las
simulaciones de X hasta ahora generada y la proporcin de este nmero para el
nmero de simulaciones. Este nmero debera estar prximo a la expectacin. Corra el
programa para varios valores de L.

7.16. Deje a la X ser geomtricamente distribuido. Qu es E (la X)? Escriba un
programa que introducir en la computadora P y simule 1000 valores de X. La
impresin fuera del promedio de todo 1000 valores de la X. Corra el programa para
varios valores de P.

7.17. La x es geomtricamente distribuida. Recuerde a (la Seccin 4.3) esa P (la X
j) 1-qj. Use este mtodo (en vez del mismo en el Ejemplo 11) para escribir un
programa que introducir en la computadora K de la P y de nmero entero positivo.
Realice 1000 simulaciones e imprima el nmero de X de veces excede K. (ste debera
ser aproximadamente 1000P (X>K) = 1OOOqk.)

7.18. Incorpore la mejora discutida antes del Ejemplo 11 en ese ejemplo. Declare otra
PARTE SUPERIOR variable (el entero) cuyo valor es lo ms grande yo a fin de que i de
SUMA ha sido computado. Despus de que RND sea generado, revise para ver si
RND<SUM TOP . Si no, la SUMA de cmputo i para yo > la PARTE SUPERIOR hasta
RND<SUM i ; En ese entonces coloca al igual SOBRESALIENTE para yo.

Você também pode gostar