Logo Studenta

Tema_3_Simulación_2018-II (1)

¡Este material tiene más páginas!

Vista previa del material en texto

Tema 3 
Simulación
Investigación de Operaciones - 2
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
a. Inversa
b. Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
3Investigación de Operaciones 2
1. Introducción
• La simulación (estadística) consiste en recrear mediante fórmulas
matemáticas los resultados numéricos de algún fenómeno real en el que
haya incertidumbre.
• El resultado de caja ejecución (replicación o iteración) de la simulación es
‘como si’ fuese una observación real.
• En cada replicación, los factores que están sujetos a incertidumbre van
cambiando de valor de forma similar a como lo harían en la realidad, de
manera que recrean la incertidumbre que se tiene del sistema.
• El resultado es más preciso e informativo que simplemente calcular
‘escenarios’ pesimistas u optimistas.
4Investigación de Operaciones 2
1. Introducción
Ejemplo (muy muy) sencillo (que se pueder resolver fácilemte analíticamente)
El propietario de un restaurante está pensando en abrir una terraza
exterior con mesas. Cuando el tiempo sea bueno, tendrá buena
aceptación por parte de los clientes, y ganará dinero. Sin embargo, si hace
mal tiempo, esa zona no atraerá clientes y le acarreará pérdidas. Las
ganancias diarias que espera según las condiciones atmosféricas se
resumen en la siguiente tabla.
Sin calor Con calor
Sol $ 1000 -$300
Nubes -$200 $600
¿Cuál será la ganancia esperada?
Opción 1: abrir la terraza y ver qué pasa…
Opción 2: simular numéricamente el comportamiento de la terraza
(en ese caso, puede calcularlo analíticamente) 
5Investigación de Operaciones 2
1. Introducción
Ejemplo (muy) sencillo
¿Cuál será la ganancia esperada?
• La ganancia no es fija. Es una variable aleatoria, pues depende
del factor ‘tiempo atmosférico’, que tiene incertidumbre (es
variable aleatoria).
• Para poder obtener las ganancias debemos conocer las
propiedades estadísticas del tiempo atmosférico: con qué
frecuencia se observa cada situación.
Ganancia diaria estimada del patio exterior del restaurante
Nota: Una variable aleatoria queda definida con su espacio muestral y 
su ley de probabilidad
Sin calor Con calor
Sol $ 1000 -$300
Nubes -$200 $600
6Investigación de Operaciones 2
1. Introducción
Tenemos que conocer las probabilidades de los diferentes sucesos, para poder 
simularlos.
Prob(Sol)=0.5; Prob(Nubes)=0.5
Para nuestro ejemplo, se sabe que:
Si hace sol: Pr(Sin Calor|Sol)=1/3; Pr(Con Calor|Sol)=2/3.
Si hay nubes: Pr(Sin Calor|Nubes)=0.5; Pr(Con Calor|Nubes)=0.5
Para ‘simular’ el tiempo atmosférico necesitamos:
• Un procedimiento que simule si es un día con sol. Es decir, un
generador de sucesos con probabilidad 0.5. Por ejemplo, lanzar una
moneda (luego lo haremos con ordenador).
CARA=SOL SELLO=NUBES
• Ese mismo procedimiento sirve para simular si hay o no calor en el
caso de día nublado.
CARA=CALOR (si nubes) SELLO=SIN CALOR (si nubes)
• Un generador de sucesos con probabilidad 1/3. Por ejemplo, obtener 1 ó
2 con un dado: 1ó2=SIN CALOR (si sol) 3 a 6=CON CALOR (si sol)
7Investigación de Operaciones 2
1. Introducción
Día 1: 1. Lanzamos una moneda y sale CARA: ha tocado día con SOL
2. Lanzamos entonces el dado, y sale 4: día con calor
Resultado: Como es un día con sol y calor, la ganancia es -300 
Día 2: 1. Lanzamos una moneda y sale SELLO: ha tocado día con NUBES
2. Lanzamos entonces otra moneda y sale CARA: día con calor
Resultado: Como es un día nublado pero con calor, la ganancia es +600 
…
Día N: 1. Lanzamos una moneda y sale SELLO: ha tocado día con NUBES
2. Lanzamos entonces otra moneda y sale SELLO: día sin calor
Resultado: Como es un día nublado y sin calor, la ganancia es 800 
Simulamos…
8Investigación de Operaciones 2
1. Introducción
Replicación Sol/nubes Calor/No Calor Ganancia
1 Sol No Calor 1000
2 Nubes No Calor 800
3 Nubes No Calor 800
4 Nubes No Calor 800
5 Sol Calor -300
6 Sol Calor -300
7 Sol Calor -300
8 Nubes No Calor 800
9 Sol Calor -300
10 Sol Calor -300
11 Sol Calor -300
12 Nubes No Calor 800
13 Nubes No Calor 800
14 Nubes No Calor 800
15 Sol Calor -300
16 Sol No Calor 1000
17 Nubes No Calor 800
493 Sol Calor -300
494 Nubes No Calor 800
495 Nubes No Calor 800
496 Nubes No Calor 800
497 Sol Calor -300
498 Sol Calor -300
499 Sol Calor -300
500 Sol Calor -300
Promedio 446
ganará, por término 
medio, $446 cada día
La frecuencia de aparición de
los diferentes sucesos será
aproximadamente igual a sus
probabilidades teóricas.
Las replicaciones (iteraciones)
pueden interpretarse como un
muestreo. En lugar de
muestrear de la población de
datos reales, muestreamos del
modelo de probabilidad:
Simulación por MonteCarlo
¿Intervalo de confianza?
(Lo puedes hacer analíticamente=416,7)
9Investigación de Operaciones 2
Replicación Sol/nubes Calor/No Calor Ganancia
1 Sol No Calor 1000
2 Nubes No Calor 800
3 Nubes No Calor 800
4 Nubes No Calor 800
5 Sol Calor -300
6 Sol Calor -300
7 Sol Calor -300
8 Nubes No Calor 800
9 Sol Calor -300
10 Sol Calor -300
11 Sol Calor -300
12 Nubes No Calor 800
13 Nubes No Calor 800
14 Nubes No Calor 800
15 Sol Calor -300
16 Sol No Calor 1000
17 Nubes No Calor 800
493 Sol Calor -300
494 Nubes No Calor 800
495 Nubes No Calor 800
496 Nubes No Calor 800
497 Sol Calor -300
498 Sol Calor -300
499 Sol Calor -300
500 Sol Calor -300
Promedio 446
1. Introducción
En la práctica, no utilizamos monedas, 
dados, o similares, para reproducir 
sucesos que tengan una determinada 
probabilidad. 
Utilizamos los valores de la distribución 
uniforme, que los transformamos en 
sucesos con la probabilidad deseada 
de forma mucho más flexible y cómoda.
10Investigación de Operaciones 2
1. Introducción
Número aleatorio: Un número aleatorio es una realización al azar de una
variable especificada por una función de distribución. Cuando no se
especifica ninguna distribución, se presupone que se utiliza la
distribución uniforme continua en el intervalo [0,1].
U(a,b)
U(0,1)
En la práctica, y mientras no se indique lo contrario:
Numero aleatorio=valores de U(0,1)
11Investigación de Operaciones 2
1. Introducción
0 1
0
1
Función de densidad de 𝑈 ∼ U(0,1): 𝑓 𝑢 = 1
𝑢1
0
𝐹 𝑢1 = 𝑃 𝑈 ≤ 𝑢1 = න
0
𝑢1
𝑓 𝑢 𝑑𝑢 = 𝑢1
Por ejemplo
𝐹 0.7 = 𝑃 𝑈 ≤ 0.7 = 0.7
𝐹 0.1 = 𝑃 𝑈 ≤ 0.1 = 0.1
𝐹 0.9 = 𝑃 𝑈 ≤ 0.9 = 0.9
Al ser una distribución continua es 
irrelevante poner o no el signo =
12Investigación de Operaciones 2
1. Introducción
Si queremos reproducir un suceso de probabilidad 𝑝, generamos valores de la U(0,1) y
asociamos el suceso de interés con valores 𝑢 de la U(0,1) menores o iguales que 𝑝. Si
𝑢 ≤ 𝑝 es como si hubiésemos observado el suceso de probabilidad 𝑝.
Sea 𝑢 ∼ U(0,1). Entonces
Sea 𝑋 = 0,1 tal que 𝑃 𝑋 = 1 = 𝑝; 𝑃 𝑋 = 0 = 1 − 𝑝
𝑋 = ቊ
1, 𝑠𝑖 𝑢 ≤ 𝑝
0, 𝑠𝑖 𝑢 > 𝑝
𝑃 𝑋 = 1 = 𝑃 𝑢 ≤ 𝑝 = 𝑝
Al ser una distribución 
continua es irrelevante 
dónde poner el =
13Investigación de Operaciones 2
1. Introducción
Replicación Uniforme 1 Suceso Sol/nubes Sol/nubes
1 0,3596 1 Sol
2 0,7242 0 Nubes
3 0,6438 0 Nubes
4 0,9666 0 Nubes
5 0,1300 1 Sol
6 0,1843 1 Sol
7 0,1807 1 Sol
8 0,8880 0 Nubes
9 0,3116 1 Sol
10 0,4891 1 Sol
11 0,4879 1 Sol
12 0,8306 0 Nubes
13 0,8409 0 Nubes
14 0,8320 0 Nubes
15 0,1368 1 Sol
16 0,3459 1 Sol
17 0,6739 0 Nubes
18 0,8630 0 Nubes
Ejemplo: queremos simular que P(Hay Sol)=0.5
Si 𝑢 ≤ 0.5 ⇒ 𝑋 = 1 ⇒ SOL Si 𝑢 > 0.5 ⇒ 𝑋 = 0 ⇒ Nubes
14Investigación de Operaciones 2
1. Introducción
Y así se haría con Excel… (de forma sencilla)
Simulación_Terraza.xlsx
15Investigación de Operaciones 2
1. Introducción
Generador 
de U(0,1)
Sus valores se
recalculan al
presionar F9
Simulación_Terraza.xlsx
16Investigación de Operaciones 2
1. Introducción
Simulación_Terraza.xlsx
17Investigación de Operaciones 21. Introducción
Simulación_Terraza.xlsx
18Investigación de Operaciones 2
1. Introducción
Simulación_Terraza.xlsx
19Investigación de Operaciones 2
1. Introducción
Simulación_Terraza.xlsx
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
a. Inversa
b. Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
21Investigación de Operaciones 2
2. Generación de números aleatorios 
Podemos generar números aleatorios del 1 al n sacando bolas al azar de una
urna, con reemplazamiento (como en la lotería). Si n es muy grande y dividimos
todos los valores obtenidos por n, podemos tener una aproximación a U(0,1).
Hay libros con tablas de números aleatorios obtenidos de esta forma.
Para usar esta tabla: decidimos el lugar por el que comenzar, y vamos tomando
valores consecutivos por filas, aunque también se podría hacer por columnas,
en diagonal,…
22Investigación de Operaciones 2
2. Generación de números aleatorios 
Ejemplo de generación de una U(0,1) con tres decimales usando la tabla
• Empezamos por un lugar al azar; por ejemplo, por la fila 1, columna 2.
• Vamos tomando las cifras de 3 en 3 ignorando los espacios (que sólo están para
facilitar la visualización) : 363; 187; 506; 137; 674; 263; 207;510,…
• Dividimos por 1000: 0.363; 0.187; 0.506; 0.137; 0.674; 0.263; 0.207;0.510,…
23Investigación de Operaciones 2
2. Generación de números aleatorios 
Ejemplo de selección al azar de 5 individuos de una lista de 350 usando la tabla
• Como el máximo valor tiene 3 cifras, numeramos a todos los individuos con 3
cifras: 001, 002, 003,…, 349, 350.
• Empezando por un lugar arbitrario de la tabla, vamos tomando las cifras de 3 en 3
de forma consecutiva. Si, por ejemplo, empezásemos por la fila 2 de la columna 1
tendríamos: 212, 159, 179, 176, 831, 586,….
• Si tenemos un número entre 001 y 350 lo tomamos, de lo contrario lo rechazamos
y seguimos. Quedaría entonces:
212, 159, 179, 176, 054 
(esto es un ejemplo sencillo de lo que más adelante se definirá como el método de aceptación-rechazo)
24Investigación de Operaciones 2
2. Generación de números aleatorios 
• Son ´números aleatorios’ por su distribución, no por los valores concretos
que toma. Por ejemplo, no tiene sentido decir que el número 11164 es un
número aleatorio, sino que todo el conjunto de números lo es. Son
número aleatorios porque proceden de una distribución uniforme.
• La secuencia de valores que se han generado es ‘independiente’. Por
ejemplo, el que se obtenga un valor alto no va a predisponer que el
siguiente sea alto o bajo. Si se desordenase la tabla de forma totalmente
al azar, seguiría siendo una tabla de números aleatorios. Otra forma de
expresar esa independencia es pensando que el generador de números
no tiene memoria. Una vez generado un número, lo olvida y no tiene
forma de influir en el siguiente.
• Como conclusión, podemos decir que los números aleatorios forman
entonces una secuencia de valores independientes e idénticamente
distribuidos (iid) según una U(0,1).
Algunas consideraciones
25Investigación de Operaciones 2
2. Generación de números aleatorios 
¿Cómo genera el ordenador valores de U(0,1)?
Los valores que se generan no son exactamente de una U(0,1). Es sólo una
aproximación muy buena. Se les denominan ‘pseudoaleatorios’. Para la inmensa
mayoría de las aplicaciones, son tan buenos como si fuesen verdaderamente
aleatorios.
Hay varios algoritmos para generar números aleatorios. Cada software puede tener un
algoritmo diferente. Es un campo de investigación abierto. El método más popular es el
llamado Método Congruencial:
1. Se inicia con un valor inicial (semilla) que puede leerse de una tabla: 𝑥1.
2. Se toma un número 𝑚 muy elevado (dependiendo de la precisión de la máquina),
por ejemplo 𝑚 = 2191. El número 𝑚 será el número de valores diferentes que se
obtendrá.
3. 𝑥𝑛+1 = (𝑎𝑥𝑛+𝑐)(módulo 𝑚) con 𝑎 < 𝑚, 𝑐 < 𝑚 y relacionados entre si.
Es decir, 𝑥𝑛+1 es el residuo, o resto, de dividir (𝑎𝑥𝑛 + 𝑐) entre 𝑚.
4. Fnalmente, 𝑢𝑛+1 = 𝑥𝑛+1/𝑚
El estándar POSIX C define para la función de generación de números
pseudoaleatorios los valores de c=12345, m=32768 y a=1103515245
26Investigación de Operaciones 2
2. Generación de números aleatorios 
Ejemplo: 𝑥𝑛+1 = 𝑎𝑥𝑛 𝑚𝑜𝑑 𝑚, con 𝑎 = 7
5, 𝑚 = 231 − 1
Simulador_U01.xlsx
0,00
0,02
0,04
0,06
0,08
0,10
0,12
0,14
1 2 3 4 5 6 7 8 9 10
Histograma
U(0,1)
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
a. Inversa
b. Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
28
Recordatorio
Variables aleatorias discretas: quedan definidas con su espacio muestral y su función de 
probabilidad o de distribución
F. de probabilidad 𝑝 𝑥𝑖 = 𝑃 𝑋 = 𝑥𝑖 , 𝑖 = 1,… , 𝑘Espacio muestral: 𝑋 = {𝑥1, 𝑥2, … , 𝑥𝑘}
Ejemplo: Una centralita telefónica tiene 5 líneas. 
Sea X=número de líneas ocupadas en una unidad de tiempo.
Espacio muestral: X={0,1,2,3,4,5} 
Supongamos que la centralita recibe por término medio 2 llamadas por unidad de tiempo (y la 
duración de la llamada se completa en esa misma unidad de tiempo). Entonces se puede 
demostrar que la función de probabilidad es:
P(X=0)=0.14
P(X=1)=0.27
P(X=2)=0.27
P(X=3)=0.18
P(X=4)=0.09
P(X=5)=0.05
29
Recordatorio (cont.)
Variables aleatorias discretas: quedan definidas con su espacio muestral y su función de 
probabilidad o de distribución
F. de probabilidad 𝑝 𝑥𝑖 = 𝑃 𝑋 = 𝑥𝑖 , 𝑖 = 1,… , 𝑘Espacio muestral: 𝑋 = {𝑥1, 𝑥2, … , 𝑥𝑘}
Función de distribución: 𝐹 𝑥𝑖 = 𝑃 𝑋 ≤ 𝑥𝑖 , 𝑖 = 1, … , 𝑘)
La F. de distribución de las v.a. discretas tiene escalones en los valores de 𝑥𝑖 de altura 𝑝(𝑥𝑖)
30
Recordatorio (cont.)
Variables aleatorias continuas: quedan definidas con su espacio muestral y su función de 
densidad o de distribución
PROBABILIDAD=ÁREA
es una función matemática tal que
𝑓(𝑥): función de densidad de probabilidad de la variable aleatoria 𝑋 en el punto 𝑥
Función de densidad
31
Recordatorio (cont.)
Variables aleatorias continuas: quedan definidas con su espacio muestral y su función de 
densidad o de distribución
Función de distribución
Tiene la misma definición que en el caso discreto: 
𝐹 𝑥 = 𝑃 𝑋 ≤ 𝑥 = න
−∞
𝑥
𝑓 𝑣 𝑑𝑣
𝑥
0.45
𝑓(𝑥)
( ) 0.45
x
f v dv
𝑥
0.45
𝐹(𝑥) = 𝑃(𝑋 ≤ 𝑥)
La función de distribución es continua, monótona no decreciente
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
a. Inversa
b. Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
33Investigación de Operaciones 2
3.1Método de la inversa
Sea 𝑋 una variable aleatoria con Función de Distribución 𝐹(𝑥) entonces la
variable aleatoria 𝑈 = 𝐹(𝑋) tiene distribución uniforme en [0,1], es decir 𝑈 ∼
𝑈(0,1).
Este resultado quiere decir, entre otras cosas, que
si a partir de una muestra 𝑥1, 𝑥2, … , 𝑥𝑛 de la
variable con F. de distribución 𝐹(𝑥) obtenemos los
valores 𝑢1 = 𝐹 𝑥1 , 𝑢2 = 𝐹 𝑥2 , … , 𝑢𝑛 = 𝐹 𝑥𝑛
entonces un histograma de 𝑢1, 𝑢2, … , 𝑢𝑛 tendrá el
aspecto de una uniforme en el intervalo [0,1].
34Investigación de Operaciones 2
𝑥𝑖
𝐹 𝑥𝑖 = න
−∞
𝑥𝑖
𝑓 𝑥 𝑑𝑥
0 1
0
1
0
𝐹 𝑋 transforma 𝑓(𝑥) en 𝑈(0,1)
𝑓(𝑥)
3.1Método de la inversa
𝑢𝑖
𝑥𝑖
𝑢𝑖
35Investigación de Operaciones 2
... 𝑥𝑛𝑥1 𝑥2 𝑥3
... 𝑥𝑛𝑥1 𝑥2 𝑥3
... 𝑥𝑛𝑥1 𝑥2 𝑥3
𝑢1
𝑢2
𝑢3
𝑢𝑛
... 𝑢𝑛𝑢1 𝑢2 𝑢3
𝑓(𝑥)
𝐹 𝑥𝑖 = න
−∞
𝑥𝑖
𝑓 𝑥 𝑑𝑥
La función de distribución nos 
devuelve valores de la 𝑈(0,1)
a partir de valores de 𝑋
3.1Método de la inversa
36Investigación de Operaciones 2
Teorema de la inversión (de una función de distribución)
Sea 𝑋 una variable aleatoria con Funciónde Distribución 𝐹(𝑥) continua e
invertible, y sea 𝐹−1 su función inversa. Entonces la variable aleatoria 𝑈 =
𝐹(𝑋) tiene distribución uniforme en [0,1], es decir 𝑈 ∼ 𝑈(0,1).
Como consecuencia, si 𝑈 ∼ 𝑈(0,1) entonces la variable aleatoria 𝑋 = 𝐹−1(𝑈)
satisface la función de distribución 𝐹(𝑋).
Este resultado quiere decir que si generamos una muestra de
valores de una uniforme 𝑈 0,1 : 𝑢1, 𝑢2, … , 𝑢𝑛, y les aplicamos la
función inversa de 𝐹(𝑥) obtendremos los valores 𝑥1 =
𝐹−1 𝑢1 , 𝑥2 = 𝐹
−1 𝑢2 , … , 𝑥𝑛 = 𝐹
−1 𝑢𝑛 . Entonces un histograma
de 𝑥1, 𝑥2, … , 𝑥𝑛 tendrá el aspecto de 𝑓 𝑥 = 𝑑𝐹(𝑥)/𝑑𝑥.
De esta forma podemos simular valores de 𝑋 de densidad 𝑓 𝑥 a
partir de un procedimiento que simule valores de 𝑈(0,1).
Éste es un resultado básico de la Simulación por MonteCarlo
3.1Método de la inversa
37Investigación de Operaciones 2
... 𝑥𝑛𝑥1 𝑥2 𝑥3
... 𝑥𝑛𝑥1 𝑥2 𝑥3
𝑢1
𝑢2
𝑢3
𝑢𝑛
... 𝑢𝑛𝑢1 𝑢2 𝑢3
𝑓(𝑥)
𝐹 𝑥𝑖 = න
−∞
𝑥𝑖
𝑓 𝑥 𝑑𝑥
3.1Método de la inversa
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
3.1 Inversa
3.1.1 Simulación de una v.a. discreta
3.1.2 Simulación de una v.a. continua
3.2 Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
39Investigación de Operaciones 2
Ejemplo de simulación de valores de una variable aleatoria discreta finita
Sea X=número de líneas ocupadas en una unidad de tiempo.
Utilizamos el ejemplo anterior de la centralita con 5 líneas
0.14 si 𝑥 = 0
0.27 si 𝑥 = 1
0.27 si 𝑥 = 2
0.18 si 𝑥 = 3
0.09 si 𝑥 = 4
0.05 si 𝑥 = 5
𝑝(𝑥)
Se tiene que la función de probabilidad es
Por tanto, se puede calcular fácilmente la 
función de distribución, resultando:
Función de 
distribución 𝐹(𝑥) = 𝑃(𝑋 ≤ 𝑥)
0 si 𝑥 < 0, pues 𝑃(𝑋  0) = 0
0.14 si 0 ≤ 𝑥 < 1, pues 𝑃 𝑋 ≤ 𝑥 = 𝑃 𝑋 < 0 + 𝑃 𝑋 = 0
0.41 si 1 ≤ 𝑥 < 2, pues 𝑃(𝑋  𝑥) = 𝑃(𝑋 < 1) + 𝑃(𝑋 = 1)
0.68 si 2 ≤ 𝑥 < 3, pues 𝑃(𝑋  𝑥) = 𝑃(𝑋 < 2) + 𝑃(𝑋 = 2)
0.86 si 3 ≤ 𝑥 < 4, pues 𝑃(𝑋  𝑥) = 𝑃(𝑋 < 3) + 𝑃(𝑋 = 3)
0.95 si 4 ≤ 𝑥 < 5, pues 𝑃(𝑋  𝑥) = 𝑃(𝑋 < 4) + 𝑃(𝑋 = 4)
1.00 si 𝑥 ≥ 5.
Como 𝐹(𝑋) es continua, definida en toda la recta real, puede ser engorroso estar definiendo todos los 
intervalos en los que toma valores diferentes. Para simular sólo necesitamos los valores en los puntos del 
espacio muestral.
3.1Método de la inversa
40Investigación de Operaciones 2
Valores 
𝑋
Prob. de 
cada valor
𝑝(𝑋)
Prob. 
acumulada 
en cada 
valor
𝐹(𝑋)
0 0.14 0.14
1 0.27 0.41
2 0.27 0.68
3 0.18 0.86
4 0.09 0.95
5 0.05 1.00
Para hacer simulaciones sólo necesitamos
calcular la probabilidad acumulada en cada
punto, que es un cálculo inmediato. Es
decir, sólo necesitamos 𝐹 𝑥𝑖 = σ𝑗=1
𝑖 𝑝(𝑥𝑖)
3.1Método de la inversa
41Investigación de Operaciones 2
1. Generamos números aleatorios. Por 
ejemplo, 𝑢 = 0.563
2. Gráficamente: ‘Entramos’ por el eje Y de la 
función de distribución hasta chocar con el 
escalón de 𝐹(𝑥). Asignamos el valor de 𝑥
que corresponde. En este ejemplo, 𝑥 = 2
Simulación de una secuencia de valores iid de la variable X
Valores 
𝑋
Prob. de cada 
valor
𝑝(𝑋)
Prob. acumulada 
en cada valor
𝐹(𝑋)
0 0.14 0.14
1 0.27 0.41
2 0.27 0.68
3 0.18 0.86
4 0.09 0.95
5 0.05 1.00
0.563
3. Usando la Tabla: localizamos la fila
cuyo 𝐹(𝑥) sea el inmediatamente
superior a 𝑢 . En nuestro ejemplo
sería 𝐹(𝑋) = 0.68. Asignamos el valor
de 𝑋 de esa fila. En nuestro caso 𝑥 =
2.
3.1Método de la inversa
42Investigación de Operaciones 2
Con Excel
Sus valores se recalculan al presionar F9
Simulación_Centralita.xlsx
(Este promedio lo sabríamos 
calcular analíticamente)
3.1Método de la inversa
43
Simulación_Centralita_buscarv.xlsx
BUSCARV (valor_buscado, matriz_buscar_en, indicador_columnas, [ordenado])
Usando BUSCARV
Si la función BUSCARV no puede encontrar el valor
buscado, la función muestra el valor más grande que es
menor o igual al valor buscado.
El rango de celdas en las que
BUSCARV buscará valor_buscado y el
valor devuelto
El número de columna (a partir de 1 para la
columna situada más a la izquierda de matriz_tabla)
que contiene el valor devuelto
44Investigación de Operaciones 2
Valores 
𝑋
𝑝(𝑋) 𝐹(𝑋)
0 0.14 0.14
1 0.27 0.41
2 0.27 0.68
3 0.18 0.86
4 0.09 0.95
5 0.05 1.00
3.1Método de la inversa
289517575310511075495679935458
Ejemplo usando valores aleatorios de una tabla (como en el examen)
Simula 5 valores de la distribución que se
muestra usando la siguiente secuencia de
números aleatorios, comenzando en la
posición 3.
Como F(x) está con dos decimales, bastará
simular valores de la U(0,1) con dos decimales
Tabla U(0,1) x
95 0.95 4
17 0.17 1
57 0.57 2
53 0.53 2
10 0.10 0
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
3.1 Inversa
3.1.1 Simulación de una v.a. discreta
3.1.2 Simulación de una v.a. continua
3.2 Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
46Investigación de Operaciones 2
El desarrollo es más analítico, pues debemos obtener la expresión de 
𝐹−1. Veámoslo con un ejemplo, simulando la distribución Exponencial
Ejemplo: Simulación de una Exponencial X ∼ 𝐸𝑥𝑝(𝜆)
Sea T= tiempo (minutos) entre llegadas a un puesto de servicio. Si el tiempo entre 
dos clientes consecutivos sigue una distribución exponencial de media 𝐸 𝑋 = 𝜇 = 5
minutos (minutos/cliente). Entonces 𝜆 =
1
𝜇
= 0.2 clientes /minuto:
x5 x3 x2 x1x4x6
tiempo
F de densidad: 𝑓 𝑥 = 𝜆𝑒−𝜆𝑥 = 0.2 𝑒−0.2𝑥
F de distribución: F 𝑥 = 𝑃 𝑋 ≤ 𝑥 = 1 − 𝑒−𝜆𝑥 = 1 − 𝑒−0.2𝑥
3.1Método de la inversa
Ejemplo de simulación de valores de una variable aleatoria continua
47Investigación de Operaciones 2
Ejemplo (cont.): Simulación de una Exponencial X ∼ 𝐸𝑥𝑝(𝜆)
F 𝑥 = 1 − 𝑒−𝜆𝑥
Para calcular la función inversa despejamos 𝑥 en la ecuación 𝑢 = 𝐹(𝑥)
𝐹 𝑥 = 𝑢 ⇒ 1 − 𝑒−𝜆𝑥 = 𝑢 ⇒ 𝑒−𝜆𝑥 = 1 − 𝑢
⇒ −𝜆𝑥= ln 1 − 𝑢
⇒ 𝑥 = −
ln(1 − 𝑢)
𝜆
… y ya tenemos el método de simulación para una exponencial
PASO 1: simulamos de U(0,1) PASO 2: transformamos con 𝐹−1(𝑢)
𝑥 = 𝐹−1 𝑢 = −
ln(1−𝑢)
𝜆
3.1Método de la inversa
48Investigación de Operaciones 2
=ALEATORIO()
=-LN(1-D8)/$E$5
Simulación_EjemploExponencial.xlsx
3.1Método de la inversa
49Investigación de Operaciones 2
Problemas:
Calcula la función inversa e implementa en Excel la simulación de las
variables aleatorias siguientes, donde 𝐹(𝑥) es la Función de Distribución.
1 𝐹 𝑥 = 1 − 𝑒
−
𝑥
𝛽
𝛼
𝛼, 𝛽 > 0; 𝑥 ≥ 0 Solución: 𝑥 = 𝛽 − ln 1 − 𝑢
1
𝛼
2 𝐹 𝑥 = 1 − 𝑒−𝑒
(𝑥−𝑎)
, 𝑎 > 0; 𝑥 ≥ 0 Solución: 𝑥 = 𝑎 + ln(− ln(1 − 𝑢))
3 𝐹 𝑥 = 1 − 𝑒−
𝑥2
2 ; 𝑥 ≥ 0 Solución: 𝑥 = −2 ln(1 − 𝑢)
4 𝐹 𝑥 = 1 − exp −𝜆𝑥 𝛼; 𝜆, 𝛼 > 0, 𝑥 > 0 Solución: 𝑥 = −
ln 1 − 𝑢1/𝛼
𝜆
6 𝑓 𝑥 = 𝑥𝑒−𝑥; 𝐹 𝑥 = 1 − 𝑒−𝑥 1 + 𝑥 ; 𝑥 > 0 Solución: por métodos numéricos
5 𝑋 ∼ 𝑈 𝑎, 𝑏 Solución: 𝑥 = 𝑎 + 𝑏 − 𝑎 𝑢
3.1Método de la inversa
50Investigación de Operaciones 2
Podemos utilizar las funciones inversas que contiene Excel
INV.BINOM Función inversa de una Binomial
INV.CHICUAD Función inversa de la ji-cuadrado
INV.F Función inversa de la F de Fisher
INV.GAMMA Función inversa de la Gamma
INV.LOGNORM Función inversa de la Lognormal
INV.NORM Función inversa de la Normal
INV.NORM.ESTAND Función inversa de la Normal estándar
INV.T Función inversa de la t de Student
Ver fichero Funciones inversas de excel.xlsx para ver cómo se usan.
3 (a) Método de la inversa
Nota: algunas de estas funciones no proporcionan valores para 𝑢 = 0 y 𝑢 = 1, tal vez por la 
forma en que han sido programadas.
51Investigación de Operaciones 2
3.1Método de la inversa
Distribución log-normal
Resumimos la log-normal, pues suele haber confusión con su notación.
Se dice que 𝑋 sigue una distribuciónlognormal 𝑋 ∼ 𝐿𝑛𝑁(𝜇, 𝜎) si 𝑌 = ln 𝑋 sigue una distribución 
normal 𝑌 ∼ 𝑁(𝜇, 𝜎).
Hay que tener cuidado con la notación de los parámetros, pues 𝜇 y 𝜎 son la media y 
desviación típica de ln(𝑋). La media y desviación típica de 𝑋 son:
𝑚 = 𝐸 𝑋 = 𝑒𝜇+
𝜎2
2
𝑣 = Var 𝑋 = 𝑒2𝜇+𝜎
2
× (𝑒𝜎
2
− 1)
𝜇 = ln
𝑚
1 + 𝑣/𝑚2
𝜎 = ln 1 +
𝑣
𝑚2
Se suele denominar:
𝜇: parámetro de localización
𝜎: parámetro de escala
En Excel: para definir la lognormal piden:
‘media’=𝜇
‘desviación estándar’=𝜎
pues especifican que son de ln(𝑋)
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
3.1 Inversa
3.2 Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
53Investigación de Operaciones 2
El método de la inversa puede a veces ser difícil de implementar.
Especialmente si:
• La solución de 𝑥 = 𝐹−1(𝑢) no tiene forma explícita.
• La v.a. es discreta pero de rango infinito (Poisson)
Existen muchos otros métodos para simular valores de una
determinada distribución. El más popular es el método de Aceptación-
Rechazo. Existen, a su vez, varias alternativas de este método.
Por simplicidad, vamos a describirlo asumiendo que:
• La v.a. es continua.
• Está definida en el intervalo [a,b].
• En dicho intervalo alcanza un máximo de valor M.
3.2 Método de aceptación-rechazo
54Investigación de Operaciones 2
𝑀 = max 𝑓 𝑥
La intuición de este método es la siguiente:
Imaginemos nuestra función de densidad
𝑓 𝑥 encerrada en el rectángulo 𝑎, 𝑏 ×
[0,𝑀] y que lanzamos dardos hacia dicho
rectángulo uniformemente distribuidos.
Muestreo por aceptación-rechazo
(Rejection sampling)
Ahora eliminamos aquellos dardos que caen fuera del área bajo nuestra función
de densidad (puntos negros). Entonces, los restantes dardos (puntos azules) se
distribuirán uniformemente dentro del área bajo la curva. Por tanto, habrá más
en las zonas de más densidad y menos en las zonas de menos densidad.
Entonces, puede demostrarse que las abscisas de dichos puntos azules forman
una secuencia iid de una v.a. de densidad 𝑓(𝑥). Es decir
𝑋 ∼ 𝑈1 (𝑈2< 𝑓 𝑈1
𝑎 𝑏
3.2 Método de aceptación-rechazo
55Investigación de Operaciones 2
MÉTODO:
Muestreo por aceptación-rechazo
(Rejection sampling)
El método consiste en los siguientes pasos
Paso 2: Se generan dos números aleatorios 𝑢1 y 𝑢2 independientes. Es
decir, 𝑈𝑖 ∼ 𝑈 0,1 , 𝑖 = 1,2.
Paso 1: A partir de 𝑓(𝑥) se obtiene 𝑎, 𝑏, y 𝑀
Paso 3: Se calcula 𝑥∗ = 𝑎 + 𝑏–𝑎 𝑢1 e 𝑦
∗ = 𝑀𝑢2 (éstas serían las 
coordenadas donde caen los dardos)
Paso 4: Si 𝑦∗ ≤ 𝑓(𝑥∗) entonces 𝑥∗ pertenece a la distribución buscada. En 
caso contrario, se rechaza.
Se repiten los Pasos 2-4 hasta que se tiene el tamaño muestral deseado.
𝑀
(𝒙∗, 𝒚∗)
𝑎 𝑏
3.2 Método de aceptación-rechazo
56Investigación de Operaciones 2
Ejemplo: Implementa en Excel un procedimiento para simular la distribución 
𝑓 𝑥 = 𝑥𝑒−𝑥; 𝐹 𝑥 = 1 − 𝑒−𝑥 1 + 𝑥 ; 𝑥 > 0
utilizando el método de Aceptación-Rechazo
El dominio de la distribución no está acotado (𝑥 > 0 ⇒ 𝑎 = 0, 𝑏 = ∞ ) . Sin embargo,
podemos usar como extremo superior un número suficientemente alto tal que esté en
una zona de muy baja probabilidad, y que en la práctica no se van a observar. Por
tanto no nos importará que no salgan en la simulación.
0,0000
0,0500
0,1000
0,1500
0,2000
0,2500
0,3000
0,3500
0,4000
0 5 10 15 20 25
Usaremos 𝑏 = 10
Como valor de M: 0.37 (se 
obtiene con la primera 
derivada).
Podríamos usar otro valor 
superior, pero el método se 
hace menos eficiente.
3.2 Método de aceptación-rechazo
57Investigación de Operaciones 2
=+$E$7+($E$8-$E$7)*D10
=+E10*$E$6
=+F10*EXP(-F10)
=SI(G10<=H10;F10;"")
3.2 Método de aceptación-rechazo
Simulación_rejectionSampling1.xlsx
58Investigación de Operaciones 2
En otra Hoja implementamos un “truco” para quitarnos los espacios en blanco
HOJA 1
HOJA 2
=+Hoja1!I10
3.2 Método de aceptación-rechazo
59Investigación de Operaciones 2
=SI(A1<>""; FILA(A1);"")
=INDICE(A:A;C1;1)
=K.ESIMO.MENOR(B:B; FILA(A1))
=SI.ERROR(D1;"")
3.2 Método de aceptación-rechazo
60Investigación de Operaciones 2
Ejemplo:
En simulación es frecuente utilizar la distribución Beta para modelizar 
proporciones. La distribución Beta es continua y definida en el intervalo [0,1]. 
Depende de dos parámetros 𝛼 y 𝛽. Dependiendo de sus valores, la forma de 
la distribución cambia.
La densidad es
𝑓 𝑥 = 𝐾 𝛼, 𝛽 𝑥𝛼−1 1 − 𝑥 𝛽−1
3.2 Método de aceptación-rechazo
61Investigación de Operaciones 2
Un aerogenerador de 1 MW de potencia nominal no siempre funciona a pleno
rendimiento, pues depende de la velocidad del viento. Para modelizar la
proporción de su potencia nominal que genera en cada instante se elige una
distribución Beta(6,2), de densidad 𝑓 𝑥 = 42𝑥5(1 − 𝑥).
Implementa en Excel un procedimiento para simular sus valores utilizando el 
método de aceptación-rechazo (M=2.73)
3.2 Método de aceptación-rechazo
Ejemplo (cont):
Simulación_rejectionSampling_Beta.xlsx
62Investigación de Operaciones 2
3.2 Método de aceptación-rechazo
Ejercicios:
Utilizando la siguiente secuencia de números aleatorios (usa grupos de 2 dígitos)
41956 43720 77816 16008 60441 76696 01583 42059 56749 24144 42644
genera 3 valores de las variables aleatorias con las siguientes funciones de densidad, 
utilizando el método de aceptación-rechazo.
𝑎 𝑓 𝑥 = 0.5𝑥 ; 0 ≤ 𝑥 ≤ 2
𝑏 𝑓 𝑥 = 3𝑥2; 0 ≤ 𝑥 ≤ 1
𝑐 𝑓 𝑥 =
3
2
1 − 𝑥2 ; 0 ≤ 𝑥 ≤ 1
𝑑 𝑓 𝑥 = 2 1 −
1
𝑥2
; 1 ≤ 𝑥 ≤ 2
𝑒 𝑓 𝑥 = 2𝑥𝑒−𝑥
2
; 𝑥 ≥ 0
𝑓 𝑓 𝑥 =
1
24
𝑥 1 −
𝑥
12
; 0 ≤ 𝑥 ≤ 12
Tema 3- Simulación 
Investigación de Operaciones - 2
1. Introducción 
2. Generación de números aleatorios 
3. Métodos de generación de variables aleatorias
a. Inversa
b. Aceptación-Rechazo
4. Generación de variables aleatorias en Excel.
64Investigación de Operaciones 2
Excel tiene funciones específicas para simular variables aleatorias. Se
hace mediante un paquete, o complemento, específico de Excel
denominado Análisis de datos. Este complemento se encuentra, por
defecto, desinstalado, y hay que instalarlo. Se hace fácilmente.
https://www.youtube.com/watch?v=CCyQPn23IME
Esto es lo que queremos tener 
tras la instalación
4. Generación de variables aleatorias en Excel.
https://www.youtube.com/watch?v=CCyQPn23IME
65Investigación de Operaciones 2
4. Generación de variables aleatorias en Excel.
66Investigación de Operaciones 2
4. Generación de variables aleatorias en Excel.
68Investigación de Operaciones 2
Ejemplo: Simular datos discretos con una determinada distribución de 
probabilidad
4. Generación de variables aleatorias en Excel.
69Investigación de Operaciones 2
4. Generación de variables aleatorias en Excel.
70Investigación de Operaciones 2
El resto de las distribuciones son fáciles de implementar (la opción ‘Frecuencia 
relativa’ no nos interesa)
4. Generación de variables aleatorias en Excel.
71Investigación de Operaciones 2
Ejemplo:
Los clientes acuden a un puesto de servicio donde realizan las siguientes
actividades, cada una con una duración (minutos) que es una variable
aleatoria (el tiempo de atención nunca es igual para cada cliente)
Actividad Variable aleatoria
Atención en la ventanilla 1 𝑁(3, 1)
Atención en la ventanilla 2 𝑈(3,5)
Atención en la ventanilla 3 𝑈(2; 10)
Notación:𝑁(𝜇, 𝜎)
Obtenga mediante simulación la distribución de la variable: Tiempo total
de atención. Calcule su media y su mediana. ¿Qué tiempo total sólo es
superado el 5% de las veces? Utilice el complemento de Excel de Análisis
de Datos.
4. Generación de variables aleatorias en Excel.
Simulacion_VentanillasExcel.xlsx
72Investigación de Operaciones 2
4. Generación de variables aleatorias en Excel.
Simulacion_VentanillasExcel.xlsx
73Investigación de Operaciones 2
4. Generación de variables aleatorias en Excel.
Simulacion_VentanillasExcel.xlsx74Investigación de Operaciones 2
4. Generación de variables aleatorias en Excel.
Simulacion_VentanillasExcel.xlsx
75Investigación de Operaciones 2
4. Generación de variables aleatorias en Excel.
Es bimodal
Simulacion_VentanillasExcel.xlsx
76Investigación de Operaciones 2
En media necesitan casi 13 minutos (¿lo sabíamos ya?). Hay un 5% de
clientes que demoran más de 17 minutos. Sólo el 5% de los clientes
necesitan menos de 9 minutos para completar el proceso. Por tanto, el 90%
de los clientes necesitan entre 8.93 y 17.27 minutos.
Ventanilla 1 Ventanilla 2 Ventanilla 3 TOTAL
1.2296 4.9731 9.7952 16.00
3.2541 4.4020 6.7863 14.44 Media 12.89 minutos
3.3798 3.2477 4.2938 10.92 Mediana 12.69 minutos
2.2470 4.2421 8.0580 14.55 Percentil 95 17.27 minutos
1.4934 4.8779 6.7140 13.09 Percentil 5 8.93 minutos
1.8102 4.4728 4.4752 10.76
4.1308 3.1061 3.2815 10.52
3.0503 4.1776 2.7600 9.99
2.8580 3.3719 8.1276 14.36
3.6782 3.5932 2.1287 9.40
0.9742 3.4259 9.2800 13.68
4.0357 3.7108 5.9669 13.71
2.4541 4.6893 8.6674 15.81
1.9406 3.7066 4.7301 10.38
… hasta 500 datos
4. Generación de variables aleatorias en Excel.
Simulacion_VentanillasExcel.xlsx

Continuar navegando

Materiales relacionados

20 pag.
Variables - Luisa Rámirez

User badge image

Desafio PASSEI DIRETO

13 pag.
Simulacion_Sheldon_Ross

User badge image

Estudios Generales