modelos y simulaciones

26
8/16/2019 Modelos y simulaciones http://slidepdf.com/reader/full/modelos-y-simulaciones 1/26 1 Universidad Católica de Salta Cátedra de Modelos y Simulación Apuntes de Cátedra Unidad III Mg. Ing. Gustavo Ramiro Rivadera Año 2015

Upload: enzo-notario

Post on 05-Jul-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 1/26

1

Universidad Católica de Salta

Cátedra de Modelos y Simulación Apuntes de Cátedra

Unidad III

Mg. Ing. Gustavo Ramiro Rivadera Año 2015

Page 2: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 2/26

Unidad 3: Variables aleatorias

2

1. Generación de variables aleatorias

1.1 Introducción

Toda simulación de un sistema discreto necesita especificar cómo se producen las variaciones aleatoriasen sus fuentes de aleatoriedad. Esto se establece por medio de la asignación de una distribución de probabilidad a cada fuente de aleatoriedad. Un ejemplo clásico es la simulación de un sistema de una colay un servidor. La llegada de entidades (dinámicas) al sistema ocurre con cierta frecuencia, y es por lotanto una fuente de aleatoriedad. Por otra parte, el servidor sirve a las entidades dinámicas durante uncierto tiempo de servicio, que es la otra fuente de aleatoriedad en este sistema simple. Por lo tanto de loenunciado antes surge que en esta simulación se necesitarán dos distribuciones que especifiquen la“frecuencia” de los tiempos aleatorios, el de llegada y el de servicio. La definición de cual distribuciónutilizar para cada fuente de aleatoriedad está dada por un análisis estadístico previo de ajuste.Todo entorno, librería o lenguaje de simulación debe, por lo tanto, proporcionar medios adecuados para lageneración de estos valores aleatorios. La base para la generación de cualquier método para la generaciónde valores de distribuciones aleatorias es un generador de valores IID U(0,1). Es por esta razón que esesencial que se disponga de un generador de números aleatorios U(0,1) confiable.Existen por para ciertas distribuciones de probabilidad varios tipos de algoritmos. La elección de un

algoritmo en particular depende de varios factores, pero sobre todo se trata de obtener algoritmos quetraten de ser lo más exactos y eficientes posible.En este capítulo presentaremos en forma conjunta algunas de las muchas distribuciones de probabilidadutilizadas en la práctica de la simulación, así también como uno de los algoritmos disponibles para sugeneración.Hacemos la aclaración pertinente de que las distribuciones se describen en este capítulo solo de formageneral, ya que este trabajo no pretende ser un tratado de estadística, sugiriéndose al lector interesado laconsulta de fuentes más completas y generales como [Vardema94] ,[WalpMyer92], etc.Además de la descripción general de las distribuciones continuas y discretas, se hace una descripción delmétodo utilizado para generar valores aleatorios de dichas distribuciones. Para la comprensión total dedichos métodos es preciso referirse primeramente a ciertos métodos generales para la generación devalores aleatorios, tales como los denominados de la transformada inversa, de la composición, de laconvolución, etc. que explicaremos a continuación.

1.2 Definición de variable aleatoria

Una variable es aleatoria si toma diferentes valores como resultado de un experimento aleatorio. Puedeser discreta o continua. Si puede tomar sólo un número limitado de valores, entonces es una variablealeatoria discreta. En el otro extremo, si puede tomar cualquier valor dentro de un intervalo dado,entonces se trata de una variable aleatoria continua.Se puede pensar en una variable aleatoria como un valor o una magnitud que cambia de una presentacióna otra, sin seguir una secuencia predecible. Los valores de una variable aleatoria son los valoresnuméricos correspondientes a cada posible resultado de un experimento aleatorio.

Formalmente: sea un experimento E y S el espacio muestral asociado con el experimento; unafunción X que asigna a cada uno de los elementos deS un número realX(s) , se llama variable aleatoria.

1.3 Definición de función de densidad de probabilidad

En el caso de variables aleatorias continuas, en lugar de trabajar con la probabilidad de valores particulares de la variable, resulta más apropiado calcular probabilidades asociadas a intervalos. Paradistribuir propiedades se usa una función que mide "concentración" de probabilidades alrededor de un punto, que se denomina función de densidad de probabilidad y se denota como f(x).Una función de densidad de probabilidad debe cumplir con las siguientes propiedades:

f(x) >= 0 (la función es no negativa para cualquier valor de x, f(x) no es una probabilidad, y puede valer más de 1)

f(x) dx = 1 (la acumulada para todos los valores de la variable suma 1, el área bajo la curva de lafunción vale 1).

Page 3: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 3/26

Unidad 3: Variables aleatorias

3

Función de densidad de probabilidad normal

1.4 Definición de función de densidad de probabilidadacumulada

Sea X una variable aleatoria, discreta o continua; definimos a F, la función de densidad de distribuciónacumulada de la variable aleatoria X, como F(x) = P(X <= x), y además:

i) Si X es una variable aleatoria discreta, entonces:

j j x p x F )()(

ii) Si X es una variable aleatoria continua con fdp f:

x

dt t f x F 0

)()(

donde f(t) representa el valor de la fdp de la variable aleatoria X, cuando X = t.

Función de distribución de probabilidad (Acumulada)

1.5 Métodos de Generación

1.5.1 Método de inversión o Transformada Inversa

Page 4: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 4/26

Unidad 3: Variables aleatorias

4

Este método se basa en la función inversa de la función de distribución de la variable aleatoria X. Dadoque F(X) está acotada entre 0 y 1, podemos generar valores en U(0; 1) y sobre ellos aplicar F-1(X).Se utiliza la función de distribución acumulada F(x). Como F(x) está definida entre 0 y 1, entonces senecesita generar números aleatorios uniformemente distribuidos entre 0 y 1.Si representamos un número aleatorio con R , entonces

R = F(x)x=F-1(R)

Es por esto que se denomina al método como el de la transformada inversa. Dada una función acumuladade una distribución, se obtiene el valor de la variable.Prueba: si F(x) es invertible,

)xX(P)x(F

)x(F))x(FR (P)x)R (F(P)xX(P 1

Gráficamente la idea es:

R F(x)

xPor ejemplo, tomemos la distribución exponencial con media en, y cuyas funciones de distribución ydensidad son las siguientes:

x e x x( ) . ; 0 ; o x < 0

F x f x dx e dx x

x x

( ) ( ). . .

0 0

F x e dx e x x x x

( ) . .

1

0 0

F x e e R x x( ) . . ( )

1 11

La función inversa de F(X) será:

e R x

1

. ln( ) .ln( ) x R x R11

1

es decir:

R ln.x 1

R: número aleatorio.Y el algoritmo para generar valores aleatorios para esta distribución será:

Page 5: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 5/26

Unidad 3: Variables aleatorias

5

def exponential(media):u = random(0,1)return -log(1-u)/media

El método de la inversa es especialmente útil para generar valores de variables aleatorias discretas.

Veamos un ejemplo. supongamos que tenemos una variable aleatoria discreta con espacio de muestreo S= f1; 2; 3g, y cuya función de densidad es la siguiente:

p(1) = 0:2 p(2) = 0:3 p(3) = 0:5

Entonces su función de distribución será:

F(1) = 0:2 F(2) = 0:2 + 0:3 = 0:5 F(3) = 0:5 + 0:5 = 1

Así, en el eje de F(x) podemos identificar tres intervalos: (0; 0:2], (0:2; 0:5] y (0:5; 1]. Para obtenervalores para esta variable, generaremos un valor para U(0; 1), y determinaremos su inversa a partir delintervalo en el que caiga. Si éste cae en el primer invervalo, el valor de F_1 será 1, si en el segundo 2, y sien el tercero 3. Así, el algoritmo para generar valores para esta variable

aleatoria será el siguiente:def genera_discreta(p1, p2, p3):u= random(0,1)if u<=p1:finv = 1elseif u<=p1+p2:finv = 2else:finv = 3return finv

Este tipo de distribuciones suele aparecer en los diagramas de eventos, concretamente cuando un suceso

planifica la ocurrencia de otros sucesos con una determinada probabilidad.Como ejercicio se plantea realizar una función para obtener valores aleatorios según una distribucióndiscreta representada con una lista de cualquier longitud (por ejemplo [0.1, 0.3, 0.4, 0.2] o [0.5, 0.3,0.2],etc.)

1.5.2 Ejemplos:

1.5.2.1 Método de la transformada inversa discreta:

Suponemos un dado X probable, que nos lleva a la siguiente tabla de probabilidades:

X P(X) F(X)1 1/6 1/62 1/6 2/63 1/6 3/64 1/6 4/65 1/6 5/66 1/6 1

Como se comprueba, en la columna de la derecha, se ha calculado la FUNCION DE DISTRIBUCIONACUMULADA, F(x), una de cuyas propiedades es 0 <= F(x) <= 1, es decir, similar a las variables detipou, 0 <= u <= 1. En definitiva,u = F(x) que es el fundamento básico del método.

Page 6: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 6/26

Unidad 3: Variables aleatorias

6

La función de probabilidad P(x) tiene la siguiente forma:

La función acumulada F(x) para esos puntos es:

Ahora se procede a invertir los ejes:

Luego, generar (mediante un generador congruencial) una variable tipou, son números pseudoaleatoriosgenerados (0, 1) uniformemente distribuidos en ese intervalo y continuas en el sentido numérico.Si p = 3 0,001 – 0,999 p es una distribución de probabilidad constante.Ahora se supone; u = 0,4 x = 3. Con la tabla, se busca en F(x) el primer valor mayor que u, en lacolumna x está el valor que le corresponde.u = 0,6 x = 4u = 0,9 x = 6Resumiendo:El primer paso es establecer la función de distribución acumulada.El segundo paso es formar la tabla correspondiente a fin de establecer losnúmeros índices . Los númerosíndices se asignan de manera tal que puedan reflejar la probabilidad de los diversos valores que asume lavariable aleatoria.

El tercer paso es obtener las variables de tipou y realizar la simulación.A continuación, el diagrama de flujo del método:

0,00

0,05

0,10

0,15

0,20

0 1 2 3 4 5 6 7

0 , 0

0 , 2

0 , 4

0 , 6

0 , 8

1 , 0

1 , 2

0 1 2 3 4 5 6 7

0

1

2

3

4

5

6

7

0 1 /6 1 /3 1 /2 2 / 3 5 / 6 1

Page 7: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 7/26

Unidad 3: Variables aleatorias

7

1.5.2.2 Método de la transformada inversa continua:Supongamos una variable aleatoria en el intervalo (10, 12)Encontrar f(x) como una función de densidad de probabilidad Área = 1

Área = 1(B * h) / 2 = (2 * h) / 2 = 1 h = 1

x f y

x x x x

y y y y 1

12

121 y = (x/2) - 5

Encontrar la función Acumulada dx x f x F

2554

52

2 x xdx x

Determinar la función inversa F-1

aacbb

x

xU F

U x F U x F

24

0

2

1

x = 2(5 u )Encontrar el Signo: Uno de los valores de x hallados se corresponde al problema y el otro puede que nosea así, por lo tanto se debe determinar cual es el x apropiado.Para u = 0 x = 10Para u = 1 x = 12

0

0,2

0,4

0,6

0,8

1

1,2

10 12

I

Leer x[i]

Leer PX[i]

tope

i = 1, tope

FX[i]=FX[i-1] + PX[i]

F

Buscar Tabla

Buscar Tabla

i = 1

u=GenerarU

X[i]

i = tope

i = i+1

i <= tope

FX[i] >= u

Page 8: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 8/26

Unidad 3: Variables aleatorias

8

+ : u = 0 x = 10u = 1 x = 12

- : u = 0 x = 10u = 1 x = 8

1.5.2.3 Resumiendo

Método de la transformada inversa:

La técnica de la transformada inversa puede ser usada para obtener muestras de lasdistribuciones exponenciales, uniforme, Weibull y triangular.

El principio básico es encontrar la función inversa de F, de tal forma que.

denota la solución a la ecuaciónr = F ( x) en términos der , no es 1/ F . Por ejemplo, la inversa de y =x es x = y, la inversa de y = 2 x + 1 es x = (y-1)/2 , etc.

1.5.2.4 Ventajas y desventajas

La desventaja de este método es que se necesita tener la expresión de x = F-1 ( R ), la que no es siemprefácil de encontrar. De todas maneras puede trabajarse con tablas de números e interpolar, de hecho esto eslo que hacen algunos lenguajes de simulación como el GPSS que veremos en el curso de Simulación: sele ingresa F(x) vs. x como tabla numérica, le asigna un valor R a F(x) e interpola en la tabla para obtenerx; el método de interpolación depende de que la función sea continua o discontinua, lo que también hayque especificarle.

1.5.2.5 Condiciones para aplicar el Método de laTransformada Inversa

1. Debe existir f(x) como una función de densidad de probabilidad.2. f(x) debe ser integrable, es decir, se pueda calcular F(x)3. F(x) debe ser invertible, para poder calcular F-1

1.5.3 Método del rechazo

Cuando no podamos calcular la inversa de la función de distribución, lo que sucede en la mayor parte delas distribuciones continuas, entonces tendremos que basarnos en la función de densidad f(x).El método del rechazo utiliza una función de densidad g(x) para la cual sabemos generar números

aleatorios (ej. una uniforme), y que además recubre por completo la función de densidad que queremosobtener, es decir:a g(x) f(x)

El método sirve para generar variables aleatorias en las que x está acotada en un intervalo [a,b], a x b.Se utiliza la función distribución de probabilidad f(x) y el concepto de moda:M = máximo valor de f(x) f(x) acotada.

Es un método iterativo para generar cada valor de x.

Como paso previo hay que dividir todos los valores de la función por la moda, implica escalonarla entre 0y 1, de manera de asociarla con los números pseudoaleatorios.

El algoritmo para generar valores a partir de g(x) será el siguiente:

x = 2(5 u )

Page 9: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 9/26

Unidad 3: Variables aleatorias

9

1.5.3.1 Para funciones discretas

Pasos a seguir:1. Generar 2 números pseudoaleatorios uniformemente distribuidos: u1, u2 2. Definir x como una función lineal deu:

11 uaba INT x x se denomina postulado o propuesto.

3. Evaluar la función en el punto x.4. Calcular la probabilidad relativa de aceptación

PMAX

x P PRA

5. Comparar el u2 con la PRA; si xaceptamos PRAu 2 ; de lo contrario, se repite desde el punto(1)

Algoritmo:

1.5.3.2 Para funciones continuas

Pasos a seguir:1. Encontrar f(x) como una función de densidad de probabilidad.

2. Generar u1 y u2. Definir x como una función lineal de u. 1uaba x 3. Evaluar f en el x propuesto.

SI

NO

Leer x[i]Leer PX[i]

Generar u 1,u 2

u 2 <= PRA

a = Buscar_Ab = Buscar_B

x = INT[a + (b - a + 1) u 1]

PX[i] = Buscar_PX

PMAX = Buscar_PMAX

PRA = PX[i]/PMAX

x

Page 10: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 10/26

Unidad 3: Variables aleatorias

10

4. Calcular x f x f

PMAX x f

PRA 1

5. Evaluar el resultado obtenido en el punto anterior. aceptar PRAu 2 x, sino volver al

punto (2)

Consideraciones:El método de eliminación para Funciones Discretas puede no ser óptimo porque genera dosu comomínimo y no todos los x generados se aceptan. Tiene la ventaja respecto a la transformada inversa que nonecesitamos trabajar con tablas ni necesitamos calcular la acumulada.El método de eliminación para funciones continuas, tiene la misma desventaja que el de funcionesdiscretas. Por otro lado, no es necesario hallar la integral ni la inversa.Para que funcione eficientemente, el algoritmo debe utilizar una función g(x) sencilla, y que se ajuste lomás posible a la función f(x). De ella dependerá el número de iteraciones del algoritmo.Veamos un ejemplo presentado en [Raj Jain, 1991]. Supongamos que queremos generar una secuencia devalores para la distribución beta(2; 4), cuya función de densidad es:

f(x) = 20 _ x(1 _ x)3

Esta función puede ser recubierta por un rectángulo de altura 2:11, que es el máximo de la función. Por lotanto, tomando g(x) = U(0; 1) y a = 2:11, obtendremos el siguiente algoritmo:

def beta2_4():a = 2.11x = random(0,1)u = random(0,1)while (u_a <= (20*x*(1-x)**3)):x = random(0,1)u = random(0,1)return x

1.5.4 Método de Convolución

Si X es la suma de dos variables aleatorias Y1 y Y2, entonces la función de distribución de X puedeobtenerse analíticamente mediante la convolución de las funciones de distribución de Y1 y Y2. Este es el principio del método de convolución: para obtener los valores de X bastará con generar 2 valores para Y1y Y2, y devolver su suma.Es importante destacar que la suma de un conjunto de variables aleatorias (denominada convolución) esun concepto diferente al de la suma de sus funciones de distribución (composición).Existen varias distribuciones que pueden generarse por convolución:

Una variable con distribución normal puede obtenerse sumando un número suficiente de

variables aleatorias con cualquier distribución. Una variable con distribución 2 con k grados de libertad puede obtenerse sumando los cuadradosde k variables con distribución N(0; 1).

Una variable con distribución Erlang-k puede obtenerse sumando k variables con distribuciónexponencial.

La suma de dos variables con distribución U(0; 1) forma una variable con distribución triangular.

Resumiendo:

La distribución de probabilidad de la suma de dos o más variables aleatorias independientes sedenomina unaconvolución de las distribuciones de las variables originales.

Por ejemplo, para la distribución de Erlang:

Page 11: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 11/26

Unidad 3: Variables aleatorias

11

o Es demostrable que una variable aleatoria Erlang X con parámetros es la suma

de K variables aleatorias exponenciales , cada una con media

Todos estos métodos pueden encontrarse debidamente explicados en [LawKelt91] y [Taha88] y otrostratados de simulación.

1.5.5 Método de composición

Permite generar valores de variables aleatorias no uniforme expresando f(x) como una mezcla devarias distribuciones de probabilidad f i(x) que se seleccionan adecuadamente.

Pasos a seguir:1. Dividir f(x) en sub-áreas.

2. Definir una distribución de probabilidad para cada sub-área: f i(x), donde

n

ii

nn

A

x f A x f A x f A x f

1

2211

1

...

3. Obtener la distribución de las áreas.

4. Generar u1 y u2.5. Seleccionar f i(x), mediante: inversión de ejes.

Se debe buscar con u1 la función de probabilidad a trabajar.

0

0 , 5

1

1 , 5

2

2 , 5

4 5 8 9

f 1 ( x ) f 3 ( x )

A 1 A 2 A 3

f 2 ( x )

f 1 ( x ) f 2 ( x ) f 3 ( x )

A 1

A1 + A 2

A1 + A 2 + A 3 f i Acumuladas

Page 12: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 12/26

Unidad 3: Variables aleatorias

12

f 2(x) = M.T.I. o M.A.R. (para funciones Continuas)x = en función de u u2 en función de x

2. Distribuciones de Probabilidad

2.1 Distribuciones continuas

En esta parte se describen las algunas distribuciones continuas existentes, y su algoritmo de generación devalores aleatorios. El algoritmo que se presenta es el que entendemos más simple de describir eimplementar, y que además presenta cierta eficiencia en la generación. Además los algoritmos son por logeneral métodos exactos, no aproximaciones.

2.1.1 Distribución Uniforme

Descripción

Esta distribución tiene una aplicación posible como una primera aproximación a una fuente dealeatoriedad que se presiente varía entre los parámetrosa y b, pero de la cual se saben muy pocas cosas.Por otra parte esta distribución es esencial para la generación de valores aleatorios para las otrasdistribuciones.Las funciones de densidad de probabilidad y la acumulada se describen abajo:

Los parámetros de esta distribución son los valoresa y b.La figura 6.1 muestra la función de densidad.

A 1 A 1 + A 2 A 1 + A 2 + A 3

f 1 ( x )

f 2 ( x )

f 3 ( x )

Page 13: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 13/26

Unidad 3: Variables aleatorias

13

Figura 6.1: Función de densidad de la distribución uniforme

Generación

La función de distribución de una variable aleatoria U(a ,b) se invierte fácilmente resolviendou = F ( x) para x, de tal forma de obtener , para 0 u 1,

uabau F x )()(1

De esta forma se puede utilizar el método de la transformada inversa para generar X :1. Generar U U(0,1).2. Devolver X = a + (b - a) U

2.1.2 Distribución Exponencial

Descripción

Las aplicaciones de esta distribución son en general la generación de tiempos de arribos de entidadesdinámicas de simulación (clientes, piezas, etc.) a un sistema con una tasa constante.

Las funciones de densidad de probabilidad y la acumulada se describen abajo :

Esta distribución tiene un solo parámetro,, denominado parámetro de escala y que es mayor que cero.La función de densidad se muestra en la figura 6.2.

Figura 6.2:Función de densidad de la distribución exponencialGeneración

Para obtener el algoritmo de generación de esta distribución, seguimos el método de la transformadainversa, y tratamos de encontrar F -1, y entonces hacemos :

F -1(u) = - ln (1 – u)

Por lo tanto, el algoritmo se reduce a :

Page 14: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 14/26

Unidad 3: Variables aleatorias

14

1. Generar U U(0,1).2. Devolver X = - ln (1 – u)

2.1.3 Distribución Gamma o Erlang

Descripción

Una de las aplicaciones posibles de esta distribución en la simulación es la generación para completaralgunas tareas, por ejemplo tiempos de servicios en servidores de clientes o servidores que son máquinasde un taller.Las funciones de densidad de probabilidad y la acumulada se describen abajo :

Los parámetros y se denominan parámetros de forma de la distribución Si el parámetro es un

entero positivo se denomina a esta distribución como Erlang. La distribución de Erlang con parámetros y es la suma o convolución de distribuciones exponenciales independientes e idénticamentedistribuidas con media igual a 1/. Esta relación es a menudo muy útil en las simulaciones, ya que porejemplo, si se tiene una simulación donde llegan trabajos a un taller con una tasa de llegada exponencialde media igual a 1/., y estos trabajos se asignan en base a una política de rotaciones an máquinas, lostiempos de asignación de los trabajos a cada máquina se distribuyen necesariamente con una distribuciónErlang( .,n).La función de densidad se muestra en la figura 6.3.

Figura 6.3:Función de densidad de la distribución Gamma o Erlang

Obsérvese que la forma de esta distribución cambia en relación al parámetro. Si = 1, esta distribuciónse reduce a la exponencial.

Generación

Como se dijo anteriormente, si X es una distribución de Erlang con media 1/., se puede escribir que X =Y 1+ Y 2+…+ Y m, donce losY i son variables aleatorias exponenciales IID con media igual a. Esto conllevaa utilizar un algoritmo basado en esta convolución (suma). Sin embargo el algoritmo más utilizado se basa en esta propiedad pero también en el método de la transformada inversa, aplicado a la generación decada valor exponencial en la convolución :

m

i

m

i

m

iii U

mY X

1 1 1

ln

Luego el algoritmo puede ser descripto como sigue :

1. GenerarU 1, U 2 , … , U m como IID U(0,1).3. Devolver

m

iiU m X 1ln

Page 15: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 15/26

Unidad 3: Variables aleatorias

15

2.1.4 Distribución de Weibull

Descripción

Esta distribución se utiliza en la simulación para asignar tiempos para completar alguna tarea, tiempos para que ocurra una falla en una pieza de equipo, etc. En general esta distribución tiene una ampliaaplicación en modelos de confiabilidad de materiales y/o máquinas.Las funciones de densidad de probabilidad y la acumulada se describen abajo :

El parámetro se denomina parámetro de forma, mientras que el o se denomina parámetro de escala.La función de densidad se muestra en la figura 6.4.

Figura 6.4:Función de densidad de la distribución Weibull

Si = 1 esta distribución se reduce a la exponencial.

Generación

Los valores para esta función se generan fácilmente invirtiendo la función de densidad mostrada másarrriba, para obtener

/11 )1ln()( uu F

lo cual lleva al siguiente método de generación :

1. Generar U U(0,1).2. Devolver X = ln ( – ln U )1/

2.1.5 Distribución Normal

Descripción

Las aplicaciones en la simulación son errores de variada índole, tales como el impacto (geográfico) deuna bomba. También tiene aplicaciones en la suma de grandes números provenientes de otrasobservaciones. En general esta distribución describe fenómenos aleatorios que tienen variacionessimétricas por arriba y por debajo de la media Por otra parte, esta distribución es muy útil en larealización de análisis estadísticos sobre la salida de la simulación.Las función de densidad de probabilidad se describe abajo; la función de densidad acumulada no tieneforma cerrada.

Page 16: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 16/26

Unidad 3: Variables aleatorias

16

La función de densidad se muestra en la figura 6.5.

Figura 6.5: Función de densidad de la distribución normal

Generación

Existen varios métodos para la generación de valores de esta distribución, los cuales pueden consultarseen [LawKelt91]. Uno de los más conocidos, y por otra parte un método que no es una aproximación, es eldenominadométodo polar , el cual se basa en una propiedad particular de esta distribución (ver referenciaanterior). Este método se describe a continuación:

1. GenerarU 1 y U 2 como valores aleatorios IID con U(0,1), y seaV 1 = 2 U 1 – 1 y parai = 1,2 y seaW =V 1

2 + V 22.

2. Si W > 1, se vuelve al paso anterior, de lo contrario se hace W W Y /)ln2( y X 1 = V 1Y y X 2= V 2Y .Luego X 1 y X 2 son dos valores aleatorios distribuidos IID según una distribución N(0,1).

2.1.6 Distribución Lognormal

DescripciónEsta distribución se utiliza para describir o generar el tiempo para realizar alguna tarea en particular (lafunción de densidad tiene en muchos casos formas similares a la distribuciones Gama y Weibull). Engeneral esta distribución tiene amplias aplicaciones en modelos de confiabilidad. Esta distribuciónademás se relaciona directamente con la normal por virtud de los siguiente : una variable aleatoria x sigueuna distribución lognormal con parámetros y (ver abajo) si y solo si el logaritmo natural de x sedistribuye con una N(, 2).Las función de densidad de probabilidad se describe abajo; la función de densidad acumulada no tieneforma cerrada.

La función de densidad se muestra en la figura 6.6

Figura 6.6:Función de densidad de la distribución Lognormal

Page 17: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 17/26

Unidad 3: Variables aleatorias

17

Generación

Para generar valores con esta distribución se utiliza una propiedad especial de esta distribución: siY N( , 2), entonceseY ln( , 2). Por lo tanto el algoritmo es como sigue:

1. GenerarY N( , 2).2. Devolver X = eY .

2.1.7 Distribución beta

Descripción

Esta distribución se utiliza en principio como una primera aproximación a la generación de valoresaleatorios, cuando no se tienen otros datos sobre la distribución probable de los mismos. También seutiliza como una distribución para generar proporciones, como por ejemplo, proporción de artículos o partes defectuosas en un cargamento o un taller, tiempo para realizar una tarea, duraciones de las tareas enuna red pert, etc.Las función de densidad de probabilidad se describe abajo; la función de densidad acumulada no tiene

forma cerrada.

La función de densidad se muestra en la figura 6.7.

Figura 6.7: Función de densidad de la distribución Beta

Generación

Un método general para la generación de valores de esta distribución con parámetros y mayores que0, surge de que siY 1 Gama( ,1), yY 2 Gama( ,1), yY 1 y Y 2 son independientes, entoncesY 1/( Y 1 + Y 2)

Beta( , ), lo cual lleva al siguiente algoritmo :

1. GenerarY 1 Gama( ,1), yY 2 Gama( ,1) independientes deY 1.2. DevolverY 1/(Y 1 + Y 2).

2.1.8 Distribución Triangular

Page 18: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 18/26

Unidad 3: Variables aleatorias

18

Descripción

Se utiliza de forma similar a la anterior, como una primera aproximación en ausencia de datos.Las funciones de densidad de probabilidad y la acumulada se describen abajo :

La función de densidad se muestra en la figura 6.8.

Figura 6.8:Función de densidad de la distribución triangular Generación

Para generar valores con esta distribución, debemos notar primero que si tenemos X Triang(0,1,(c-a )/(b-a)), luego X’ = a+(b-a)X Triang(a,b,c), de tal forma que podemos restringir nuestra atención a lasvariableas aleatorias Triang(0,1,c), donde 0<c<1 . Esta distribución se puede invertir fácilmente paraobtener 0 u 1,

1)1)(1(1

0)(1

ucuc

cucu F u

Por lo tanto podemos establecer el siguiente algoritmo, basado en la transformada inversa, para generar X Triang(0,1,c):

1. GenerarU U(0,1).2. Si U c, devolver cU X , de otra forma retornar )1)(1(1 U c X .

2.2 Distribuciones DiscretasEstas distribuciones se describen solo ligeramente, ya que su aplicación en la simulación es menosfrecuente que las anteriores.

2.2.1 Distribución de Bernoulli

Descripción

Las aplicaciones de esta distribución son las de una ocurrencia aleatoria con dos posibles resultados. Engeneral esta distribución se utiliza como base para la generación de otras variables aleatorias discretas,como por ejemplo la binomial, la geométrica y la binomial negativa.La función de masa se muestra abajo:

Page 19: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 19/26

Unidad 3: Variables aleatorias

19

1

01)(

x p

x p x p

Generación

El siguiente algoritmo es bastante intuitivo y es equivalente al método de la transformada inversa (si seintercambian los roles deU y 1 – U ).

1. GenerarU U(0,1).2. Si U p, devolver X = 1, de otra forma retornar X = 0.

2.2.2 Distribución Uniforme Discreta

Descripción

Las aplicaciones posibles de esta distribución son la ocurrencia aleatoria con varios resultados posibles,cad uno de los cuales es igualmente probable. Esta distribución se utiliza a menudo como un primer

modelo para una cantidad que varía entre los enteros i a j, pero de la que se conoce muy poco. La funciónde masa se muestra abajo:

jii xi j

x p ,...,1,1

1)(

Generación

El algoritmo más utilizado para la generación de valores con esta distribución surge directamente delmétodo de la transformada inversa:

1. GenerarU U(0,1).2. Devolver X = i + ( j – i + 1)U

Con este algoritmo no se necesita de ninguna búsqueda. La constante ( j – i + 1) debería computarse conanticipación y guardarse si se van a generar numerosos números.

2.2.3 Distribución binomial

Descripción

Las aplicaciones posibles de esta distribución son el número de éxitos en un número det intentosindependientes de Bernoulli, con una probabilidad de éxito p en cada ensayo. En la simulación se utiliza por ejemplo en la generación de cantidades de elementos defectuosas en un lote de tamañot , para generar

un número aleatorio de objetos en un lote, como un grupo de personas , de piezas, etc., para generar unacantidad de materiales que se demandan en un sistema de stock, etc.La función de masa se muestra abajo:

t x p p

x

t x p xt x ,...,1,0)1()(

Generación

Para generar un valor aleatorio de una distribución bin(t,p), utilizamos la propiedad de que estadistribución puede ser considerada como la suma det distribuciones de Bernoulli IID con parámetro p.Esta relación nos lleva al siguiente algoritmo :

1. GenerarY 1, Y 2,…, Y t como valores aleatorios distribuidos según una distribución Bernolli( p).

Page 20: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 20/26

Unidad 3: Variables aleatorias

20

2. Devolver X = Y 1 + Y 2 + …+ Y t

Como se observa, el tiempo de ejecución es proporcional at , por ello sería necesario buscar unaalternativa en el caso de quet sea muy grande. [LawKelt91] proporciona algunos indicios que comorealizar esto.

2.2.4 Distribución GeométricaDescripción

Las aplicaciones de esta distribución se dan en general en la generación de fallos antes del primer éxito enuna secuencia de ensayos de Bernoulli con una probabilidad de éxito de p en cada ensayo. En particularse puede utilizar para generar una cantidad de materiales u objetos que deben ser inspeccionados antes dever un fallo en uno de ellos. Tiene además aplicaciones similares a la distribución anterior. La función demasa se muestra abajo:

x s p p x

x s x p )1(

1)(

Generación

El siguiente algoritmo es equivalente al de la transformada inversa, si reemplazamosU por 1 – U en el paso 2 (ver [LawKelt91]):

1. GenerarU U(0,1).2. Devolver X = ln U / ln (1 – p)

La constante 1- p debería ser computada con anticipación a la generación. Si p es muy cercano a 0, el ln(1- p) también será muy cercano a 0, de tal forma que debería considerarse el empleo de aritmética de doble precisión (tiposdouble en muchos lenguajes), de forma de evitar errores de redondeo grandes en elcálculo.

2.2.5 Distribución de Poisson

Descripción

Esta distribución es muy utiliza en la simulación debido a su relación con la distribución exponencialcontinua. Las aplicaciones son en general la generación de un número de eventos que ocurren en unintervalo de tiempo con una tasa o relación constante. También se utiliza para generar el número deartículos en un lote de tamaño aleatorio, y el número de artículos que se demandan de un stock. Lafunción de masa se muestra abajo:

,...1,0!)( x xe

x p

x

Generación

El algoritmo general para la generación de valores distribuidos según una distribución de Poisson() está basado en la relación existente entre esta distribución y la exponencial expo(1/) (ver [LawKelt91]):

1. Sea a = e- , b = 1, ei = 0.3. GenerarU i+1 U(0,1) y reempláceseb por bU i+1. Si b < a , devolver X = i, de otra forma regresar al

punto 3.2. Reemplazari por i + 1 , y volver al punto 2.

La justificación de este algoritmo puede encontrarse en la referencia antes citada.

Page 21: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 21/26

Unidad 3: Variables aleatorias

21

3. Datos de entrada del modelo de simulación, en relacióncon las distribuciones de probabilidad

A continuación se describe como sería el procedimiento para aplicar las distribuciones en un estudio desimulación.

1. Colección de datos del sistema real.2. Identificación de una distribución de probabilidades para representar los procesos de entrada.

Típicamente consiste en realizar una distribución de frecuencias o histograma de los datos.3. Elección de una distribución de probabilidades que represente los datos.4. Elección de parámetros para determinar una instancia específica de la familia de distribuciones.5. Evaluar la distribución seleccionada y comprobar la bondad de ajuste, vía gráfica y/o estadística (K-

S, o Chi cuadrado).6. Repetir el último procedimiento hasta encontrar una función que ajuste a los datos. O determinar una

función empírica.

3.1 Ejemplo

Se intentó simular una operación de autoservicio de lavado.Los tiempos de arribos no fueron homogéneos: la distribución cambió según los tiempos en un día ysegún los días de la semana. El autoservicio estuvo abierto los 7 días de la semana durante 16 hs/día o 112horas por semana.Para cubrir esta información en un período de tiempo aceptable, se eligió una muestra de tiempos, dondelas distribuciones de tiempos entre arribos se determinaron y clasificaron de acuerdo a su velocidad dearribos en alta, media y baja.

Las distribuciones de tiempo de servicio presentaron algunos problemas. Se observó la proporción declientes que demandan varias combinaciones de servicio. El caso más simple fue el de clientes que usaronla máquina de lavar y la de secar. Algunos pidieron 2 máquinas de lavar y un secador, y otros tipos deservicios. Asimismo, los clientes seleccionaron distintas máquinas de lavar, y de secado, por lo que fueimposible asociar una máquina de lavar con una de secar en forma específica.Algunos clientes esperaron pacientemente hasta terminar todas las operaciones, mientras que otrossalieron y volvieron después que las máquinas que usaban terminaron el ciclo.En períodos de mucha demanda, el gerente sacaba las ropas y las metía en un canasto, para dejar libres lasmáquinas a ser usadas por otros clientes. El tiempo de finalización del servicio se determinó entoncescomo el tiempo en que se sacó la ropa de las máquinas.De vez en cuando las máquinas se rompieron y quedaron inhabilitadas, con un tiempo variable desdeminutos hasta días. Se pudo registrar el tiempo de reparación más corto, mientras que el más largo fueestimado por el gerente.

3.2 Sugerencias para recoger datos

1. Un gasto útil de tiempo es la planificación. Se puede hacer una sesión de pre-observación del sistema

y recoger algunos datos. Diseñar formas para este propósito. Probablemente, estas formas sufranmodificaciones antes de recoger los datos. Observar circunstancias no usuales y pensar cómotratarlas. Cuando es posible, filmar un video del sistema y observarlo después para extraer los datos.

2. Tratar de analizar los datos cuando se los recoge, de manera de ver si son suficientes o adecuados para suministrar las distribuciones necesarias para la simulación, asimismo si son útiles. No perdertiempo con datos superfluos.

3. Tratar de combinar conjunto de datos homogéneos. Chequear los datos para homogeneidad en períodos de tiempos sucesivos y durante el mismo período de tiempo en días sucesivos. Por ejemplo,chequear datos entre las 14 hs. a las 15 hs. y entre las 15 y 16 hs. Hacerlo en varios días. Cuando sechequea la homogeneidad, un test inicial es ver si las medias de las distribuciones son las mismas. Se puede usar la prueba t para dos muestras.

4. Puede ocurrir que la cantidad que interesa no puede observarse completamente. Esto ocurre cuandoel analista está interesado en el tiempo requerido para completar un proceso (por ejemplo, producir

una parte, tratar un paciente, o ver cuándo falla un componente) porque el proceso comienza antes otermina después del tiempo de observación.5. Para determinar si hay una relación entre dos variables construir un diagrama de dispersión.

Page 22: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 22/26

Unidad 3: Variables aleatorias

22

6. Considerar la posibilidad que una secuencia de observaciones que aparenta ser independiente tieneuna autocorrelación. Puede existir entre períodos de tiempo sucesivos o clientes sucesivos. Porejemplo el tiempo de servicio de cliente i puede estar relacionado con el tiempo de servicio delcliente i+1.

3.3 Identificación de una distribución con los datos deentrada

3.3.1 Histogramas

Una distribución de frecuencias o histograma es útil para identificar la forma de una distribución.Un histograma se construye con las siguientes etapas:

1. Dividir el rango de datos en intervalos (generalmente son de igual amplitud, pero puede tener anchosdistintos si las alturas de las frecuencias son ajustadas)

2. Particionar el eje horizontal según los intervalos seleccionados.3. Determinar las ocurrencias en los intervalos seleccionados4. Particionar el eje vertical de modo que todas las ocurrencias puedan ser graficadas para cada

intervalo.5. Graficar las frecuencias sobre el eje vertical.

El número de intervalos de clase depende del número de observaciones y de la cantidad de dispersión enlos datos. Se sugiere que el número de intervalos de clase sea la raíz cuadrada del tamaño de muestrastrabajado en la práctica. Si los intervalos son muy anchos, el histograma será muy burdo y no mostrará laforma o tendencia de los datos. Al contrario, si los intervalos son muy estrechos, el histograma será muydesigual.

El histograma para datos continuos corresponde a la función densidad de probabilidad de una distribución

teórica. Si es continua una línea a través del punto central de cada intervalo de clase resultará en unaforma como la de una función de densidad de probabilidad (pdf).Los histogramas de datos discretos donde hay un gran número de puntos, tendrán una celda de cada valoren el rango de los datos. Sin embargo, si hay pocos puntos se necesita combinar celdas adyacentes paraeliminar la apariencia desigual del histograma. Si el histograma está asociado con datos discretos, se verácomo una función de masa de probabilidad.

0

2

4

6

8

10

0 2 4 6 8 10 12 14 16 18 20 22 240

5

10

15

20

25

0 6 12 180

2

4

6

8

10

12

14

0 3 6 9 12 15 18 21 24

Page 23: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 23/26

Page 24: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 24/26

Page 25: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 25/26

Unidad 3: Variables aleatorias

25

3. k

iii xf

nx

1

1

4. Variancia:2

1

22

1

1 k

iii xnxf

ns

Donde k es el número de distintos valores de X y f i es la frecuencia observada.

Para cada distribución se pueden encontrar estimadores sugeridos, y los software gráficos y/o estadísticoscalculan los parámetros para cada caso.

Bondad de ajuste: Se aplican los test de Chi cuadrado y K-S.

Seleccionado el modelo de distribución es necesario realizar un análisis de sensibilidad para observar elimpacto del cambio de los valores de la distribución en la simulación. A veces los parámetros suelen presentarse como secuencias de variables aleatorias independientemente e idénticamente distribuidas, porlo cual se requiere modelos de entrada multivariados, o modelos de series de tiempos, que representanuna secuencia de entradas dependientes.

4. Referencias

[Lehmer51] D. Lehmer, Mathematical Methods in Large Scale Computing Units , Ann. Comp. Lab.Harvard Univ., Vol. 26, 1951

[Fishman78] G. Fishman, Conceptos y métodos en la simulación digital de eventos discretos ,Editorial Limusa, México, DF, 1978

[LawKelt91] A. Law, W. D. Kelton,Simulation Modeling and Analysis , Second Edition, McGraw-Hill, 1991.

[BanCars84] J. Banks, J. Carson, Discrete Event System Simulation, Prentice Hall, Englewood Cliffs,

New Jersey, 1984.[Vardema94] Stephen Vardeman,Statistics for Engineering Problem Solving , PWS PublishingCompany, Boston, 1994

[WalpMyer92] R. Walpole, R. Myers, Probabilidad y Estadística , Cuarta Edición, McGraw-Hill, 1992[Taha88] Andy S. Taha,Simulation Modelling and Simnet , Prentice-Hall International, 1988.[Taha91] Andy S. Taha, Investigación de Operaciones , Segunda Edición, Alfaomega, 1991.

5. Relaciones entre funciones de distribución deprobabilidad

A continuación presentamos un diagrama de las relaciones entre distribuciones de probabilidad. Laslíneas sólidas representan transformaciones y casos especiales, las líneas punteadas representan límites.

Tomado de Statistical Inference de Casella y Berger.

Page 26: Modelos y simulaciones

8/16/2019 Modelos y simulaciones

http://slidepdf.com/reader/full/modelos-y-simulaciones 26/26

Unidad 3: Variables aleatorias

26