Resumen - SIM
Resumen - SIM
Índice
Índice 1
Unidad N° 1 5
Introducción 5
Simulación 5
¿Por qué simular? 6
Modelo 6
Funciones de los modelos 6
Principio de los modelos 7
Clasificación de Sistemas 7
Cerrados VS. Abiertos 7
Naturales VS. Artificiales 7
Estables VS. Inestables 8
Discretos VS. Continuos 8
Discretos 8
Estático 8
Dinámico 8
Continuos 8
Naturales 8
Observación 9
Lineales VS. No lineales 9
Estocásticos VS. Determinísticos 9
Terminantes VS. No terminantes 9
Terminantes 9
No terminantes 9
Clasificación de Modelos 10
Discretos 10
Continuos 11
Modelos Caja Blancas, Grises y Negras 11
Caja Negra 11
Caja Gris 11
Caja Blanca 11
Datos 12
Tipos de Simulación 12
Ventajas, Desventajas y Peligros de la Simulación 12
Ventajas 12
Peligros 13
Etapas de una simulación 14
Validación De Un Modelo 15
Lenguajes de propósito general vs. Lenguajes de simulación 15
1
Resumen Simulación - Java Team
Diferencias 15
Lenguajes de propósito general 16
Ventajas (desventajas de los de simulación) 16
Desventajas 16
Lenguajes de simulación 16
Ventajas 16
Desventajas 16
Aclaración para Intervalo de Confianza y Tamaño de la Muestra 16
Intervalo de confianza 17
Tamaño de la muestra 18
Unidad N° 3 33
Variables Aleatorias 33
Método de la transformada inversa 33
Ejemplo 33
Ejercicio 2 (todos los ejercicios siguen estos pasos) 34
En caso de gráfico: 35
Distribución uniforme 36
Ejercicio 36
Distribución normal 37
Método de Box-Muller 37
Método de convolución 37
Ejercicio 38
Distribución exponencial 38
Exponencial negativa 38
Ejercicio 38
Distribución Poisson 39
Ejercicio 39
Generación de estas distribuciones a partir de la uniforme 40
Distribuciones obtenidas de datos empíricos 40
Unidad N° 4 41
Modelos de simulación discretos estáticos (Montecarlo) 41
2
Resumen Simulación - Java Team
Unidad N° 5 48
Modelos de Simulación Dinámicos 48
Características 48
Elementos de un sistema de colas 48
Breve introducción a la teoría de colas 48
Metodología de modelización de sistemas de colas 48
Objetos (Identificación, estados y atributos) 49
Determinación de eventos 50
Llegada al sistema 50
Fin del servicio 51
Medidas de desempeño 52
Ley de Little 53
Notacion de Kendall 53
Modelo M/M/1 55
Modelo M/M/s (Múltiples Servidores) 57
Vector de estado 58
Ejemplo 58
Enunciado 58
Objetivos 58
Objetos 58
Eventos 58
Variables necesarias de acuerdo a los objetivos 58
Llegada al sistema: cambios originados por el evento 59
Fin de servicio: cambios originados por el evento 59
Vector de estado 59
Estadísticas del ejemplo 60
Conclusiones 60
Simulación Dinámica 60
3
Resumen Simulación - Java Team
Unidad N° 6 61
Simulación de Modelos Continuos 61
Euler 1º Orden 62
Valor límite 62
Modelos basados en ecuaciones diferenciales de primer orden, de orden superior y
sistema de ecuaciones diferenciales 63
Modelos basados en leyes naturales 63
Modelos basados en la observación 63
Influencia de los resultados obtenidos en la toma de decisiones 63
4
Resumen Simulación - Java Team
Unidad N° 1
Introducción
Simulación
Simulación es el proceso de diseñar un modelo de un sistema real y experimentar con él
para entender el comportamiento del sistema o evaluar varias estrategias para la operación
del sistema (dentro de los límites impuestos por un criterio o por un conjunto de criterios).
En consecuencia, entendemos que el proceso de simulación incluye tanto la construcción
del modelo como su uso analítico para estudiar un problema. Por modelo de un sistema
real entendemos una representación de un conjunto de objetos o ideas de forma tal que sea
diferente a la de la entidad misma (abstracción de la realidad), y en este caso el término
“real” se usa en el sentido de “en existencia o capaz de ser puesto en existencia”. Por lo
tanto, los sistemas en estado preliminar o de planeación pueden modelarse de igual manera
que aquellos que ya existen.
De acuerdo con esta definición, la simulación puede o no implicar un modelo estocástico
(aquel que no se puede predecir, se mueve al azar) o probabilístico y una experimentación
de tipo Montecarlo. Dicho de otra manera, las entradas al modelo y/o las relaciones
funcionales entre sus diversos componentes pueden o no implicar un elemento aleatorio
sujeto a las reglas de probabilidad.
OBJETIVO:
a. Describir el comportamiento de sistemas.
b. Postular teorias o hipotesis que expliquen el comportamiento observado
c. Usar estas teorías para predecir un comportamiento futuro, es decir, los efectos que
se producirán mediante cambios en el sistema o en su método de operación
DEFINICIONES:
Definición 1: Hacer evolucionar un Modelo para observar su comportamiento a través del
tiempo.
Definición 2: Es el proceso de construir un programa de computadora que describa el
comportamiento del sistema de interés, o refleje el modelo que lo representa, y proceder a
experimentar con el programa o modelo para llegar a conclusiones que apoyen la toma de
decisiones.
Definición 3: Es el proceso de diseñar y desarrollar un modelo computarizado de un sistema
o proceso, y conducir experimentos con ese modelo con el propósito de entender el
comportamiento del sistema, o evaluar estrategias con las cuales se puede operar el
sistema.
Definición 4: Es una técnica numérica para realizar experimentos en una computadora
digital. Que involucran ciertos tipos de modelos matemáticos y lógicos que describen el
comportamiento de sistemas de negocios, económicos, sociales, biológicos, físicos o
químicos a través de largos periodos de tiempo.
5
Resumen Simulación - Java Team
Modelo
Un modelo es una representación de la realidad con el fin de estudiarla, información relativa
a un sistema, para saber cómo se comporta antes de construirlo.
Un modelo es una representación de un objeto, sistema, o idea, de forma diferente a la de
la identidad misma. Un modelo de un objeto puede ser una réplica exacta de este, o puede
ser una abstracción de las propiedades dominantes del objeto.
Estos modelos son de procesos, con una simplificación del sistema/subsistema real,
definiendo un alcance. Simular es hacer evolucionar este modelo a lo largo del tiempo, ya
que, los modelos de procesos no son estáticos.
Se considera que las funciones de un modelo son la predicción y la comparación para
proporcionar una manera lógica de predecir los resultados que siguen las acciones
alternativas, e indicar una preferencia entre ellas.
Tipos de modelos
● Matemáticos: Las entidades y atributos del sistema se representan mediante
variables matemáticas. Los modelos matemáticos dinámicos permiten deducir
cambios de los atributos del sistema en función del tiempo.
● Físicos
● Numéricos
● Analiticos
Podemos tener un buen modelo pero nunca podrá ser el sistema. Los modelos se
construyen, ó porque no se puede trabajar con el sistema, ó porque es costoso, o porque el
modelo nos permite hacer modificaciones para ver qué resultados trae consigo, o bien,
puede pasar que el sistema directamente no exista.
6
Resumen Simulación - Java Team
ayuda a que la estructura general sea más comprensible y revela relaciones de causa y
efecto muy importantes.
Uno de los usos más importantes de los modelos, es la predicción de las características del
comportamiento de la entidad modelada.
Finalmente, el uso de los modelos hace posible la experimentación controlada en
situaciones en que los experimentos directos serían imprácticos o prohibitivos por su costo.
Un modelo puede servir para uno de dos propósitos principales: Describir, para explicar
y/o entender; Predecir, prediciendo y/o duplicando las características de comportamiento. El
segundo usualmente implica el primero, pero no viceversa, es decir, un modelo preceptivo
útil en diseño es casi siempre descriptivo de la entidad que se está modelando, pero no
necesariamente al revés.
Por ejemplo: Los modelos económicos han tenido poco impacto en la manipulación de
sistemas económicos y poco uso como herramientas para ayudar a la dirección general.
Mientras que los modelos de Investigación de Operaciones han tenido un impacto
significativo y reconocido en estas áreas.
Clasificación de Sistemas
Los modelos pueden clasificarse de manera general y los modelos de simulación de manera
particular, de diversas formas.
Los modelos de simulación pueden ser pensados como un espectro continuo, empezando
con los modelos exactos o reales a escala, siguiente con los matemáticas completamente
abstractos.
7
Resumen Simulación - Java Team
Discretos
Se consideran sistemas discretos a aquellos en los que los cambios (tanto internos como en
las salidas) se manifiestan de manera discreta. Los cambios se producen en momentos
determinados.
PARA NOSOTROS, el sistema cambia en los t, si uno mide entre los t (x), el valor será el
último estado (último t, en el ejemplo sería t0) que cambió. Estos cambios se llaman
eventos, ocurren en cada t, las t no necesitan ser equidistantes. Los cambios están pero no
son relevantes.
Son sistemas estocásticos o probabilísticos en los que intervienen variables aleatorias.
Estático
El sistema internamente no cambia.
Ejemplos:
● Modelo de montecarlo: se basa en resolver ensayos independientes (los resultados
que ocurren en un ensayo no afectan a los que ocurren en ensayos subsiguientes).
● Análisis de riesgo.
● Modelos de inventario.
Dinámico
Ocurre un cambio en el sistema, el sistema cambia su estado interno.
Ejemplos:
● Modelos de línea de espera o sistema de colas.
Continuos
Se consideran sistemas continuos a aquellos en los que los cambios se producen
continuamente. (Entre cualquier par de mediciones podemos detectar cambios). Son
sistemas determinísticos, que se pueden modelar con ecuaciones diferenciales (si se
conoce cuales son las aplicables). Puedo medir en cualquier momento y siempre habrá
cambios. Son definidos mediante ecuaciones diferenciales.
Naturales
Son basados en leyes de la naturaleza (conocidas). Ejemplos:
● Térmicos.
● Mecánicos.
● Químicos.
● Electromagnéticos.
8
Resumen Simulación - Java Team
Observación
Se desconocen las leyes que lo gobiernan. Ejemplos:
● Económicos.
● Políticos.
● Biológicos.
● Ecológicos.
● Meteorológico.
● Poblacionales.
Terminantes
Generalmente, no alcanza un estado estable, y existe evento natural que determina el
tiempo de simulación, es decir que determina el final de la actividad del sistema
Ejemplos:
● Oficina/comercio con horarios de apertura y cierre.
● Confrontación militar que finaliza cuando algún bando pierde el 30% de su fuerza,
pero no se conoce el momento en que eso ocurra.
● Una empresa recibe una orden para fabricar una cantidad X de artículos con ciertas
especificaciones.
Estos sistemas no evolucionan indefinidamente, es decir que tienen un inicio y un final.
No terminantes
Su vida se prolonga en el tiempo, suelen encontrar un estado estable o “En Régimen”, ya
que algunos valores no necesariamente pueden llegar a ser estables pero el sistema llega a
un régimen identificable.
Ejemplos:
● Central telefónica.
● Líneas de ensamblaje o de producción continua,
● Atención en salas de emergencias.
● Sistemas de redes.
Al inicio presentan un estado transitorio (Warm-Up), el problema es determinar cuándo
termina este estado. Hay métodos de supresión de este estado:
● Con corridas prolongadas
Ver gráfico de abajo
● Inicialización adecuada
Hay sistemas en los que si partimos del reposo, hay variables internas que tienen
ciertos valores, por lo que si arrancamos la simulación con valores cercanos a los
9
Resumen Simulación - Java Team
valores que tienen en régimen, existe la probabilidad que exista el warm-up, pero
tendrá mucha menos incidencia.
● Truncamiento
Es necesario identificar cuándo termina el estado transitorio, para eliminarlo a
medida que se conozcan los datos en la simulación, quedándonos solo con los
valores medios medidos a partir de cierto momento.
● Eliminación de datos iniciales (medias globales)
● Traslado de medias de replicaicones independientes
● Medias de tandas
Podemos ver en el recuadro rojo el estado transitorio “Warm-Up”, y se puede observar que
en promedio los valores son superiores a los valores finales, y provocan una distorsión.
El recuadro violeta lo que implica que el sistema entra en un Régimen, los valores no son
estables como tal, ya que en realidad los valores están bajando constantemente.
Clasificación de Modelos
Discretos
Son aquellos en los que los cambios, tanto internos como en las salidas, se manifiestan de
manera discreta. Es decir, que ocurren cambios en un momento t0, y luego ocurre otro
cambio en el momento t1, y otro en t2, etc, de manera que si midiéramos las variables del
sistema en un momento t0+ tal que t0 < t0+ < t1 los valores serían los mismos que los
obtenidos en t0. Es decir, que no existen cambios entre los momentos tn.
Es importante aclarar que los momentos no necesariamente deben ser equidistantes, y que
son sistemas estocásticos o probabilísticos en los que intervienen variables aleatorias.
Estos modelos pueden ser estáticos (cuando su estado interno no cambia, es decir que ante
la misma entrada, la salida del sistema será la misma) o dinámicos (por lo que ante la
misma entrada, la salida del sistema podrá cambiar su estado interno, provocando que la
salida pueda ser distinta).
10
Resumen Simulación - Java Team
Continuos
Son aquellos en los que los cambios se producen continuamente, por lo que pueden
detectarse cambios entre cualquier momento o par de mediciones.
Son sistemas determinísticos, que se pueden modelar con ecuaciones diferenciales cuando
se conocen cuáles son las aplicables.
Estos modelos pueden ser Basados en Leyes de la naturaleza (Conocida), por ejemplo
sistemas físicos, o Basado en la Observación (cuando no se conocen las leyes que lo
gobiernan)
Caja Negra
Son sistemas opacos, es decir que no es posible conocer qué hay adentro. Solo es posible
conocer (generalmente) qué entradas y salidas tiene. Esto provoca que estos sistemas sean
los menos predecibles.
Caja Gris
Son sistemas en los que se pueden conocer algunos componentes internos y otros no, por
lo que dependiendo de cuántos componentes pueden conocerse estará más cerca de una
caja blanca o de una caja negra.
Caja Blanca
Son sistemas transparentes donde se pueden ver todos los elementos que componen al
sistema y sus relaciones.
11
Resumen Simulación - Java Team
Datos
Tipos de Simulación
Ventajas
● Permite estimar medidas de desempeño bajo diferentes escenarios
Implica que simular el modelo de un sistema permite modificar los parámetros
internos y poder analizar qué salidas produce con esos estímulos.
12
Resumen Simulación - Java Team
Desventajas
● Costos económicos y en tiempo
Hay veces en los que la simulación es muy costosa, por lo que es necesario un
análisis previo para comprobar su factibilidad.
Peligros
● Inferir resultados con una sola prueba, asumiendo independencia.
Es necesario recordar que las entradas y muchas de las actividades internas de los
sistemas estocásticos, justamente se comportan con variables aleatorias.
Esto produce que aunque se hagan distintas simulaciones, partiendo de las mismas
condiciones iniciales, esas variables irán tomando distintos valores en las sucesivas
corridas, generando distintos resultados.
● Los resultados pueden dar lugar a una excesiva confianza, esto porque al
tener un modelo podemos creernos que tenemos el sistema cuando no es así.
Es importante tener en cuenta y recalcar al momento de plantear una conclusión, de
que se tratan de probabilidades. Es decir, hacer foco en que “Es probable que si se
hace tal cosa, el sistema produzca tal otra”.
13
Resumen Simulación - Java Team
Esto puede ocurrir cuando el proceso es estacional, como por ejemplo la producción
de tulipanes. El proceso estacional ya que, durante unos meses está en producción,
después estará la siembra, en otros el packaging y el transporte. Evidentemente, la
siembra de tulipanes se debe hacer en un momento determinado del año, y dura
varios meses. Por lo tanto, es peligroso concluir que “el promedio de ganancia es
de…”, porque en realidad, la ganancia no existe hasta que no se vendan, es decir
que desde la siembra y hasta antes de la venta, no hubo ganancia.
7) Experimentación
Implica hacer las corridas de la simulación según la planeación realizada.
14
Resumen Simulación - Java Team
9) Implantación
Realizar los eventuales cambios que se propongan, en el sistema real. O crear el
sistema real si no existía.
10) Documentación
Incluye la elaboración de la documentación técnica y manuales de uso. La
documentación técnica debe contar con una descripción detallada del modelo y de
los datos; también, se debe incluir la evolución histórica de las distintas etapas del
desarrollo. Al construir un modelo conlleva trabajo, si hay que utilizarlo, sin
documentación, nos tomaría tiempo volver a entenderlo.
En esta documentación debe registrarse como fue evolucionando el modelo a lo
largo de los 9 pasos, y de esta manera poder reutilizarlo en un sistema real parecido.
Validación De Un Modelo
Al validar un modelo, uno tiene que evaluar 3 puntos claves:
- Supuestos
Involucrar al cliente en el proceso para encontrar los elementos del sistema que
considera más útiles.
- Valores de entradas y distribuciones
Cuáles son las entradas del sistema real, cómo se pueden representar, validar si
realmente lo que muestra el modelo es lo que ocurre en la vida real del sistema.
- Valores de salidas y conclusiones
Diferencias
● Organización del tiempo y las actividades.
● Definición y estructuración de las entidades del modelo.
15
Resumen Simulación - Java Team
Desventajas
● Tiempo de programación más largo. (El costo total del proyecto puede ser
mayor).
● Debemos crear las rutinas de detección de errores de proceso.
Lenguajes de simulación
Ventajas
● Provee la mayoría de las funcionalidades necesarias para construir un modelo.
● Genera automáticamente ciertos datos necesarios.
● Facilita recopilación y despliegue de los datos producidos.
● Controla administración y asignación del almacenamiento de la computadora,
durante la corrida (Importante).
Desventajas
● Debe apegarse a los formatos de salida del lenguaje.
● Flexibilidad reducida y tiempo de ejecución incrementado.
Es decir, lo que se hace es, a partir de una condición inicial del sistema, ejecutamos una
simulación de dicho sistema, para poder obtener de manera menos costosa valores del
parámetro muestral que nos ayude a inferir un valor del parámetro poblacional de interés,
con un cierto intervalo de confianza.
16
Resumen Simulación - Java Team
Intervalo de confianza
Simular nos permite obtener estimaciones de la variable de salida, pero no será un valor
exacto, es decir que estará comprendida entre ciertos límites.
Es necesario tener en claro que NO podemos afirmar, por ejemplo, que se obtendrá una
ganancia media anual de 1 millón de pesos (X barra). En cambio, debemos decir que
“Existe una probabilidad de que la ganancia media anual sea de 1 millón de pesos”.
Entonces, de aquí es de donde nace el intervalo de confianza.
El intervalo de confianza nos establecerá los límites (Linf, Lsup) con el que podremos
establecer dicha probabilidad.
El parámetro alfa (nivel de significancia), es el que nos indica qué tan grande será nuestro
intervalo de confianza. Podemos notar que si α = 0, entonces la probabilidad es 1 (no tiene
sentido práctico ya que implicaría que el valor que encontraste está sí o sí dentro del
intervalo que estas diciendo), en cambio si la α= 1, entonces la probabilidad es 0 (no tiene
sentido, ya que estás diciendo que hay 0 probabilidades de que el valor que encontraste no
está en el intervalo que estás diciendo). Otra cosa que se deduce de esto, es que a menor
nivel de significancia mayor será el error que podamos cometer, y esto es porque el “ancho”
del intervalo de confianza crece al inverso que el nivel de significancia. Por lo tanto, lo que
se buscará es usar un alfa lo más pequeño posible, de manera que podamos dar un
resultado con un grado de fiabilidad aceptable.
La interpretación sería:
Para cierto nivel de significancia (alfa), se puede concluir que existe una probabilidad
de (1-alfa), de que el valor del parámetro poblacional (en este caso ganancia media)
se encuentre entre estos valores (Linf, Lsup).
17
Resumen Simulación - Java Team
Ejemplo: De una muestra de 10 mediciones se obtiene una media de 43,8 min y una
desviación estándar de 6 min. Encontrar el intervalo de confianza para un 95%.
Tamaño de la muestra
Esto sería el camino inverso al intervalo de confianza. Es decir:
“A partir de tal nivel de significancia, qué tamaño de la muestra debo usar para poder
estimar el valor del parámetro poblacional dentro del intervalo de confianza que me
determina el nivel de significancia”.
18
Resumen Simulación - Java Team
Ejemplo 2: Se desea estimar cierta variable de manera tal que el error sea menor de ±4, con
una probabilidad de 0,95. Se estima que el posible intervalo de salida es de 80 unidades.
Ejemplo: Se realizó una corrida inicial de tamaño n’=10, para estimar s=13.21. Determinar la
longitud de la réplica para estimar el valor medio dentro de un rango de ±0.3, con un nivel
de aceptación del 90%
19
Resumen Simulación - Java Team
20
Resumen Simulación - Java Team
Si tomamos por ejemplo una muestra de 1000 números pseudo aleatorios (n=1000),
y luego dividimos el eje de las abscisas entre 0 y 1 en una cantidad de intervalos T
(T=10), y se distribuye cada número de la muestra en su intervalo correspondiente,
deberíamos obtener que la cantidad de números en cada intervalo es de n/T (100
números por cada intervalo).
2) La media de los números pseudo aleatorios entre 0 y 1 debe ser de 0,5; y la
varianza de 1/12.
3) Independencia: los números aleatorios no deben tener correlación entre sí; deben
ser independientes, de manera que puedan dispersarse uniformemente dentro de
todo el espectro de valores posibles.
21
Resumen Simulación - Java Team
22
Resumen Simulación - Java Team
Para que el algoritmo pueda lograr el período máximo N, los parámetros deben cumplir
ciertas condiciones:
- m = 2g
- a = 1 + 4.k (con k un número entero positivo)
- c debe ser relativamente primo a m (dos números son relativamente primos si su
factor común más grande ( FCG ) es 1.)
Algunas variables las dan como dato en el ejercicio en el caso del ej1, g y k son dato
𝑔
Bajo estas condiciones, puede lograrse un periodo máximo1 N = m = 2 .
i 𝑎. 𝑋 + 𝑐 𝑋 𝑋 𝑖+1
𝑖 𝑖+1
𝑚−1
1 85 5 0,7142
2 72 0 0,0000
3 7 7 1,0000
4 98 2 0,2857
5 33 1 0,1428
6 20 4 0,5714
7 59 3 0,4285
8 46 6 0,8571
1
Es la cantidad de números distintos que te pueden salir hasta que se repita otro.
23
Resumen Simulación - Java Team
i 𝑎. 𝑋 + 𝑐 𝑋 𝑋 𝑖+1
𝑖 𝑖+1
𝑚−1
1 79 7 1,0000
2 91 3 0,4285
3 43 3 0,4285
4 43 3 0,4285
5 43 3 0,4285
6 43 3 0,4285
7 43 3 0,4285
8 43 3 0,4285
Este método tiene la ventaja de que implica una operación menos a realizar que el método
congruencial lineal.
Al igual que el otro método, los parámetros deben ser números enteros y mayores a cero.
También deben transformarse los números obtenidos para que estén en el intervalo (0,1).
𝑋 𝑖
𝑟𝑛𝑑 𝑖
= 𝑚−1
𝑖 = 1, 2, 3,..., 𝑛
Para que el algoritmo pueda lograr el período máximo N, los parámetros deben cumplir
ciertas condiciones:
𝑔
- m = 2 (con g un número entero positivo)
- a = 3 + 8.k ó a = 5 + 8.k (con k = 0,1,2,3,...)
- X0 debe ser un número impar y es mejor si es un número primo
𝑔−2
Bajo estas condiciones, puede lograrse un periodo máximo N = m/4 = 2 . [1]
Ejercicio 1: X0 = 17 k=2 g=5
i 𝑎. 𝑋 𝑋 𝑋 𝑖+1
𝑖 𝑖+1
𝑚−1
1 323 3 0.0968
2 57 25 0.8065
24
Resumen Simulación - Java Team
3 475 27 0.8710
4 513 1 0.0323
5 19 19 0.6129
6 361 9 0.2903
7 171 11 0.3548
8 209 17 0.5484
Prueba de Ji-Cuadrada
Se trata de una prueba de hipótesis a partir de datos, basada en un cálculo de valor llamado
estadístico de prueba, al que se compara con un valor conocido como valor crítico (obtenido
de tablas estadísticas).
25
Resumen Simulación - Java Team
El método en pasos
1) Obtener al menos 30 datos de la variable aleatoria a analizar.
2) Calcular la media y la varianza de los datos (cuando corresponda).
3) Crear un histograma de k intervalos (se sugiere k = 𝑛), y obtener la frecuencia
observada en cada intervalo 𝑓0𝑖.
4) Establecer la hipótesis nula, proponiendo una distribución de probabilidad que se
ajuste a la forma obtenida en el histograma.
5) Calcular la frecuencia esperada 𝑓𝑒𝑖, a partir de la función de densidad de la
distribución estadística propuesta.
6) Calcular el estadístico de prueba:
Ejercicio
Dada la siguiente serie numérica, efectuar una prueba de bondad de ajuste para aceptar o
rechazar la hipótesis nula.
0,15 — 0,22 — 0,41 — 0,65 — 0,84 — 0,81 — 0,62 — 0,45 — 0,32 — 0,07 — 0,11 — 0,29
— 0,58 — 0,73 — 0,93 — 0,97 — 0,79 —0,55 — 0,35 —0,09 — 0,99 — 0,51 —0,35 — 0,02
— 0,19 — 0,24 — 0,98 — 0,10-0,31-0,17
Se confecciona un histograma. Mediante el mismo se puede percibir la tendencia de la serie
numérica, en este caso resultará en una aparente distribución uniforme.
Se establece la hipótesis nula: “la serie de datos corresponde a una distribución uniforme
entre 0 y 1”.
Se procede a efectuar una tabla de frecuencia, donde se divide el espectro (0-1) en cinco
intervalos. En este caso la elección de la cantidad de intervalos no es arbitraria, ya que si
bien no es mandatorio, se recomienda un número de intervalos igual a la raíz cuadrada del
tamaño de muestra.
Luego se procede a efectuar un conteo de frecuencia, para especificar cuántos números de
la serie caen en cada intervalo (fo). A continuación se calculan las frecuencias esperadas,
que en el caso de la distribución uniforme es el mismo valor para cada intervalo, ya que se
espera que los números de la serie se distribuyan de manera equitativa en cada intervalo
26
Resumen Simulación - Java Team
(fe). Es decir, cada intervalo tiene la misma probabilidad que los otros intervalos de que un
número de la serie caiga en él.
A continuación se calcula el estadístico de prueba para cada intervalo (C) y por último se
efectúa una acumulación de cada estadístico. El valor estadístico de prueba resultante es
de 1,67.
Como último paso se debe comparar el estadístico de prueba con el valor crítico. Este
último se puede obtener de la siguiente tabla:
27
Resumen Simulación - Java Team
28
Resumen Simulación - Java Team
Para los grados de libertad calculados y el nivel de significancia seleccionado el valor crítico
es 9,49. Como el estadístico de prueba calculado (1,67) es menor al valor crítico, se
concluye que no se puede rechazar la hipótesis nula.
Pasos:
1. Obtener hasta 30 datos de la variable aleatoria a analizar
2. Calcular la media y la varianza de los datos (cuando corresponda).
3. Crear un histograma de k intervalos (se sugiere k=√n), y obtener la frecuencia
observada en cad a intervalo 𝑓0
𝑖
4. Calcular la probabilidad observada de 𝑃0𝑖 en cada intervalo. Esto es, dividir la
frecuencia observada 𝑓0𝑖 entre el número total de datos de la muestra n.
(𝑃0𝑖 = 𝑓0𝑖/𝑛).
5. Acumular las probabilidades 𝑃0𝑖 para obtener la probabilidad observada hasta el
29
Resumen Simulación - Java Team
0,15 — 0,22 — 0,41 — 0,65 — 0,84 — 0,81 — 0,62 — 0,45 — 0,32 — 0,07 — 0,11 — 0,29
— 0,58 — 0,73 — 0,93 — 0,97 — 0,79 —0,55 — 0,35 —0,09 — 0,99 — 0,51 —0,35 — 0,02
— 0,19 — 0,24 — 0,98 — 0,10—0,31—0,17
30
Resumen Simulación - Java Team
31
Resumen Simulación - Java Team
Ejercicios
Efectuar dos pruebas de bondad de ajuste (Ji-Cuadrada / Kolmogorov-Smirnov) para cada
muestra de datos provista.
Muestra 1
0,15 – 0,22 – 0,41 – 0,65 – 0,84 – 0,81 – 0,62 – 0,45 – 0,32 – 0,07 – 0,11 – 0,29 – 0,58 –
0,73 – 0,93 – 0,97 – 0,79 – 0,55 – 0,35 – 0,09 – 0,99 – 0,51 – 0,35 – 0,02 – 0,19 – 0,24 –
0,98 – 0,10 – 0,31 – 0,17.
Muestra 2
0,10 – 0,25 – 1,53 – 2,83 – 3,50 – 4.14 – 5.65 – 6.96 – 7.19 – 8,25 – 1,20 – 5,24 – 4,75 –
3,96 – 2,21 – 3,15 – 2,53 – 1,16 – 0,32 – 0,90 – 0,87 – 1,34 – 1,87 – 2,91 – 0,71 – 1,69 –
0,69 – 0,55 – 0,43 – 0,26
Muestra 3
1,56 – 2,21 – 3,15 – 4,61 – 4,18 – 5,20 – 6,94 – 7,71 – 5,15 – 6,76 – 7,28 – 4,23 – 3,21 –
2,75 – 4,69 – 5,86 – 6,25 – 4,27 – 4,91 – 4,78 – 2,46 – 3,97 – 5,71 – 6,19 – 4,20 – 3,48 –
5,83 – 6,36 – 5,90 – 5,43
Muestra 4
14 – 7 – 13 – 16 – 16 – 13 – 14 – 17 – 15 – 16 – 13 – 15 – 10 – 15 – 16 – 14 – 12 – 17 – 14
– 12 – 13 – 20 – 8 – 17 – 19 – 11 – 12 – 17 – 9 – 18 – 20 – 10 – 18 – 15 – 13 – 16 – 24 – 18
– 16 – 18 – 12 – 14 – 20 – 15 – 10 – 13 – 21 – 23 – 15 – 18
32
Resumen Simulación - Java Team
Unidad N° 3
Variables Aleatorias
Método de la transformada inversa
El método de la transformada inversa puede utilizarse para simular variables aleatorias
continuas, lo cual se logra mediante la obtención de la función acumulada F(X) y la
generación de números pseudo aleatorios ri con distribución uniforme entre 0 y 1.
Los pasos a seguir para efectuar el método son:
1. Definir la función f(x) que represente la variable a modelar.
2. Calcular la función acumulada F(X).
3. Igualar la función acumulada F(X) a un número pseudo aleatorio ri U(0,1), y luego
despejar la variable aleatoria x para obtener la función acumulada inversa F(X)-1
4. Generar las variables aleatorias x, a través de números pseudo aleatorios ri U(0,1)
en la función acumulada inversa.
Ejemplo
33
Resumen Simulación - Java Team
34
Resumen Simulación - Java Team
En caso de gráfico:
En estos casos, se debe tomar cada una
de las partes como una recta con la
ecuación:
𝑦 = 𝑚. 𝑥 + 𝑏
Para definir m hacemos:
𝑓(𝑥2)−𝑓(𝑥1)
𝑥2−𝑥1
Para este ejercicio sería:
35
Resumen Simulación - Java Team
Distribución uniforme
Para la generación de números aleatorios uniformemente distribuidos entre el intervalo [A;B]
se utilizará el siguiente modelo:
Este generador fue obtenido por el método de transformada inversa explicado previamente.
El mismo se aplica cuando deban generarse variables aleatorias con distribución uniforme,
con la salvedad de que el intervalo en el que las mismas deban generarse no sea entre cero
y uno, sino entre otro intervalo de valores A-B.
Por ejemplo, entre 8 y 14. En este intervalo A toma el valor de 8 y B el valor de 14, por lo
tanto nuestro generador específico para este intervalo queda:
De esa manera se podrá generar variables aleatorias en el intervalo [8; 14] y que aún
mantengan su distribución uniforme. Lo que se hace con este generador es transformar una
distribución uniforme [0; 1] en una distribución uniforme [A; B].
36
Resumen Simulación - Java Team
Ejercicio
La temperatura de una estufa se comporta uniformemente dentro del rango de 80oC a
95ºC. Simular 5 valores de temperaturas:
Distribución normal
Método de Box-Muller
Este método nos permite la generación de variables aleatorias normales, ya sea para
distribución normal estándar (μ=0 y σ=1) o para cualquier otra combinación de media μ y
desviación estándar σ.
La particularidad de este método, a diferencia de los dos generadores anteriores, es que
requiere de un par de números aleatorios uniformes como parámetros de entrada, para
poder generar un par de números aleatorios de distribución normal.
El procedimiento es el siguiente:
- Obtener con un generador uniforme [0; 1] un par de números pseudo aleatorios (se
denominarán RND1 y RND2).
- Utilizar RND1 y RND2 en la primera fórmula del método, para obtener N1.
- Utilizar los mismos RND1 y RND2 utilizados en el punto anterior, en la segunda
fórmula para obtener N2.
Para generar otro par de números aleatorios de distribución normal N1 y N2, repetir el
procedimiento.
Método de convolución
Si se toman n muestras a partir de una distribución uniforme sobre el intervalo que va de
1 2 1
cero a uno, entonces la media μ = 2
y la varianza σ = 12
; y de la suma de las n muestras
se obtendría una variable X que estaría normalmente distribuida con una media de n/2 y
una varianza de n/12.
Por lo tanto, si se selecciona un tamaño de muestra n=12, la varianza de X es igual a 1; y si
se le resta 6 a la suma de las 12 muestras, la media es igual a cero.
El modelo a utilizar es el siguiente:
37
Resumen Simulación - Java Team
Ejercicio
El volumen de un líquido de refresco sigue una distribución normal con media de 11 onzas y
desviación estándar de 0,3 onzas. Generar 2 variables aleatorias normales utilizando el
método Box-Müller y una variable aleatoria normal utilizando el método de Convolución.
Utilizar la siguiente serie uniforme: 0,48 0,82 0,69 0,67 0,01 0,64 0,46 0,16 0,50 0,21 0,34
0,75
Distribución exponencial
Exponencial negativa
Si la probabilidad de que un evento ocurra durante un corto intervalo de tiempo es muy
pequeña, y la ocurrencia de este evento es independiente de otros eventos, entonces el
intervalo de tiempo entre la ocurrencia de eventos está exponencialmente distribuido. Se
utilizará el siguiente modelo para generar números exponencialmente distribuidos:
Este generador también fue obtenido con el método de la transformada inversa explicado
previamente. En este caso el símbolo λ representa la frecuencia con la que ocurre el evento
bajo análisis, lo cual no debe ser confundido con la media μ de la distribución.
Por ejemplo, si a cierto lugar ingresaron “tres personas cada sesenta minutos”, el lambda λ
3 1 1
sería igual a 60
, lo cual puede simplificarse a 20
. Si el lambda λ es de 20
entonces la
media μ es de 20 minutos. Sería incorrecto afirmar que ante la premisa de “tres personas
cada sesenta minutos” la media sería de 3. Primero, porque el “tres” se refiere a personas y
no a minutos, y la media se refiere a la cantidad de tiempo promedio entre una llegada y
otra de personas. Es decir, el tiempo entre llegadas de personas, que tiene una media de 20
minutos.
Ejercicio
La llegada de personas a la caja de un banco se comporta de forma exponencial con media
de 4 minutos por cliente. Simular el comportamiento de la variable aleatoria:
38
Resumen Simulación - Java Team
Además, efectuar los cálculos suponiendo ahora que a la caja del banco llegan 24 personas
por hora.
Distribución Poisson
La distribución de Poisson es una distribución discreta. Esto significa que la variable
aleatoria solo puede tener valores enteros, incluyendo el cero. Tiene una media y una
varianza igual a λ (a diferencia de la distribución exponencial negativa, cuya media es
inversamente proporcional a λ). Lambda (λ) puede ser un valor positivo y no
necesariamente tiene que ser un número entero.
Es posible generar variables aleatorias Poisson mediante la relación existente entre la
distribución de Poisson y la distribución exponencial. Si el tiempo entre ocurrencias de un
evento durante un segmento de tiempo está exponencialmente distribuido, entonces la
cantidad de llegadas en ese segmento de tiempo tiene una distribución de Poisson.
Otro método posible para la generación de valores de una distribución de Poisson [1] se
basa en la generación de variables aleatorias uniformes (RND) en el intervalo que va de
cero a uno. A continuación se muestra un algoritmo a tal efecto:
El único parámetro que requiere este algoritmo es el Lambda (λ) el cual en este caso
representa a la media de la distribución de Poisson para la cual se quieren generar
variables aleatorias.
Ejercicio
El número de piezas que entran a un sistema de producción sigue una distribución de
Poisson con media de 2 piezas por hora. Simular el comportamiento de la llegada de piezas
al sistema, para 5 segmentos de 1 hora.
39
Resumen Simulación - Java Team
40
Resumen Simulación - Java Team
Unidad N° 4
41
Resumen Simulación - Java Team
Ebrio aleatorio
¿Cuál es la probabilidad de que el ebrio esté sobre la avenida luego de dos movimientos?
Se puede hacer un estudio de probabilidad hasta cierto punto, en el caso del ebrio
queremos conocer qué probabilidad hay que después de 2 movimientos este en la avenida.
Esto se logra con 2 movimientos consecutivos hacia el sur: 0.25 x 0.25 = 0.0625
42
Resumen Simulación - Java Team
43
Resumen Simulación - Java Team
Descripción
Métricas y variables
Diseño de experimentos
Planteo Táctico
Planteo Estratégico
Validación e implantación
44
Resumen Simulación - Java Team
45
Resumen Simulación - Java Team
𝑅 = µ + σ * 𝑍
Siendo µ la media y σ la desviación
Empresa genérica
Una empresa tiene un tamaño de lote de pedido de 15 unidades, y un punto de reposición
de 7 unidades. Los costos son los siguientes en todos los casos: de pedido $600 por orden;
de mantenimiento $40 por unidad; por faltante $90 por unidad.
La demanda y la reposición tienen la siguiente distribución de probabilidad:
Fraccionadora de aceite
Una empresa fraccionadora y envasadora de aceite para máquinas industriales desea
reconsiderar su mecanismo de aprovisionamiento. Para eso experimentaría un cambio en el
tamaño y frecuencia de los pedidos, realizando un pedido de 6 barriles cuando haya 2 en
existencia.
El costo diario de mantener un barril almacenado es de $220, por cada barril diario que no
puede procesar pierde $400, y cada orden de compra implica un costo de $1000.
Resultado de la revisión de las órdenes de compra, se advierte que los pedidos realizados
demoraron un día en 8 oportunidades, dos días en 16 oportunidades, 3 días en 12 y 4 veces
demoraron 4 días.
Un análisis de las ventas recientes, indicó que fue necesario procesar 5 barriles en 6 días
diferentes, 18 días se procesaron 4 barriles, 40 días se procesaron 3, 24 días 2 barriles y un
barril se procesó en 12 oportunidades.
Ud. deberá aconsejarle al dueño de la empresa si debe efectivizar el cambio propuesto o
no, siendo que costo promedio actual es de $1050 diarios. (Considere un stock inicial de 4
barriles, sin que estos impliquen costo inicial alguno y simula 12 días).
Demanda: 44, 13, 98, 71, 39, 80, 24, 94, 06, 62, 58, 90, 29, 11
Reposición: 52, 70, 83, 22, 03, 33, 95, 34, 76, 02, 86, 30
Moreno Insumos
Un local que se dedica a la venta de artículos e insumos para oficinas. Su ítem más vendido
es el DVD virgen. Los DVDs son adquiridos a un distribuidor mayorista de la Capital
Federal, en lotes de 9 paquetes cilíndricos; cada paquete contiene 100 DVDs. Cada vez que
46
Resumen Simulación - Java Team
se hace un pedido, el lote demora 1 semana en llegar, pero le insume a Moreno $800 en
costos de transporte.
Durante las últimas 10 semanas, la demanda de DVDs estuvo entre 0 y 200 DVDs en una
ocasión, entre 200 y 400 DVDs en dos ocasiones, entre 400 y 600 DVDs en 4 ocasiones, y
tres veces estuvo entre 600 y 800 DVDs. En todos los casos con una distribución uniforme.
Actualmente los pedidos al proveedor se hacen cuando el stock de DVDs es de 200
unidades o menos. En las ocasiones en que el stock no alcanza a cubrir la demanda, se
debe recurrir a “Neyra” (la competencia) para cubrir el faltante, lo que genera un costo extra
de $0,50 centavos por unidad. Debido al escaso espacio físico del local, los DVDs insumen
un costo de mantenimiento de $0,30 por unidad, por semana.
Un amigo del dueño, le sugiere que haga pedidos de 7 paquetes, cuando el stock sea de
150 DVDs o menos, pero si el stock se agota, que el pedido sea de 10 paquetes. Simular
durante 8 semanas, y averiguar si se debería aplicar la sugerencia. Actualmente el costo
promedio semanal es de $400,[Link] un stock inicial de 700 DVDs.
RND (demanda): 31, 75, 45, 11, 08, 39, 55, 21.
RND ([Link]): 35, 21, 88, 29, 24, 02, 49, 70.
47
Resumen Simulación - Java Team
Unidad N° 5
Características
● ¿Longitud máxima?: depende de cada caso.
● FIFO/LIFO.
● Impaciencia: puede pasar que un cliente en la cola no espere indefinidamente a ser
atendido.
● Prioridades.
48
Resumen Simulación - Java Team
○ Paralelo
○ Combinados
Podemos definir como Sistema Elemental aquel que tiene un servidor, un solo tipo de
cliente y una cola.
49
Resumen Simulación - Java Team
Determinación de eventos
Podemos tener en cuenta distintos tipos de eventos:
● Llegada de objetos.
● Fin de atención: el servidor atiende al cliente y le brinda el servicio en un tiempo
limitado.
○ Caso especial: cuando hablamos de sistemas de colas con múltiples
servidores de una misma cola, debemos diferenciar cada fin de atención con
un subíndice.
● Eventos temporizados:
○ Fin de la simulación.
○ Interrupción de la atención.
○ Interrupción de las llegadas.
○ Tareas programadas (mantenimiento, descanso).
Nota: el inicio de atención no existe como tipo de evento.
En una cola, si se produce una interrupción, los elementos en cola se quedan ahí, podría
pasar que se vayan por impaciencia, pero no debería pasar nada con esos clientes. Un
cliente cuando llega jamás se fija en la cola, pregunta quién lo tiene que atender y si puede
atenderlo, de ahí entra en la cola en caso de que el servidor esté ocupado.
Llegada al sistema
Cambios originados por el evento
50
Resumen Simulación - Java Team
Cuando nos entra un cliente debemos generar (obtener el intervalo de tiempo) el próximo
ingreso. Cuando se arranca a atender, debemos calcular el RND para simular el tiempo de
finalización.
51
Resumen Simulación - Java Team
Medidas de desempeño
Nota: n no es solo los clientes en cola sino los que pueden ir a la misma, por ejemplo, si no
hay cola el cliente llega y le pregunta al servidor si lo puede atender, este le dice que si por
lo que se le considera para n pero su tiempo en cola es 0. El cálculo de cantidad de clientes
en cola no tiene unidad pues es una cantidad.
52
Resumen Simulación - Java Team
Ley de Little
Notacion de Kendall
53
Resumen Simulación - Java Team
54
Resumen Simulación - Java Team
Modelo M/M/1
55
Resumen Simulación - Java Team
56
Resumen Simulación - Java Team
57
Resumen Simulación - Java Team
Vector de estado
Ejemplo
Enunciado
Una librería con un empleado atiende la demanda de sus clientes.
Objetivos
● Determinar el tiempo promedio de permanencia de clientes en cola.
● Conocer el porcentaje de ocupación del empleado.
Objetos
● Cliente
○ Temporario
○ Estados:
■ Siendo atendido
■ Esperando en cola
● Empleado (servidor)
○ Permanente
○ Estados:
■ Libre
■ Ocupado
Eventos
● Llegada de clientes al sistema
● Fin de atencion al cliente
● Fin de la simulación (temporizado)
Variables necesarias de acuerdo a los objetivos
● Determinar el tiempo promedio de permanencia de clientes en cola.
○ Acumulador de tiempos de permanencia en cola
○ Contador de clientes que llegan al sistema
● Conocer el porcentaje de ocupación del empleado.
○ Acumulador de tiempos de ocupación del empleado
○ Tiempo total de la simulación
58
Resumen Simulación - Java Team
Vector de estado
59
Resumen Simulación - Java Team
Conclusiones
El tiempo medio de espera parece excesivo. Sería conveniente agregar otro empleado que
colabore con la venta en momentos que la cola tenga más de un cliente.
Simulación Dinámica
60
Resumen Simulación - Java Team
Unidad N° 6
Por ejemplo:
61
Resumen Simulación - Java Team
Euler 1º Orden
y(i+1) = y(i) + h * y’(i)
Por ejemplo:
*E(i+1) = y(i+1)
Valor límite
Este valor puede ser obtenido analiticamente (solo cuando hay un término independiente en
la función) y se hace igualandola a 0, por ejemplo:
62
Resumen Simulación - Java Team
63
Resumen Simulación - Java Team
Modalidad Académica
Modalidad Académica 2021
Planificación Académica 2022 (Ex Modalidad Académica)
Links
Clases 2021
Clases 2021 (Carena)
Bibliografía
● Simulación de Sistemas. Robert E. Shannon. Ed. Trillas. 1988.
● Simulación. Segunda edición. VSheldon M. Ross. E. Prentice Hall.1997.
● Simulation, Modelling and Analysis. [Link] & D. Kelton. Mc. Graw-Hill Editions. 4ta.
Edición. 2007.
● Ecuaciones diferenciales-Una perspectiva de modelación -Borelli y Coleman. Ed.
Oxford – 2002.
● Ecuaciones Diferenciales y sus Aplicaciones. M. Braun. Ed. Grupo Editorial
Iberoamérica. 1983.
64