Professional Documents
Culture Documents
SIMULACIÓN
PRINCIPIOS DE SIMULACIÓN
PROFESOR: MARCELO A. GUTIÉRREZ S.
ÍNDICE
Introducción
Simulación, algunas definiciones
Justificación y razones de la simulación
Ejemplos de usos de modelos de simulación
Definiciones en simulación
Clasificación de modelos
Ventajas y desventajas de la simulación
Elementos clave para garantizar el éxito de un modelo
Método de Monte Carlo
Metodología general de un estudio de simulación
Introducción
Con el advenimiento de los computadores, una de las
más importantes herramientas para analizar el diseño y
operación de sistemas o procesos complejos es la
simulación.
Aunque la construcción de modelos arranca desde el
Renacimiento, el uso moderno de la palabra
simulación data de 1940, cuando los científicos John
Von Neuman y Stanislaw Ulam que trabajaban en el
proyecto Monte Carlo, durante la Segunda Guerra
Mundial, resolvieron problemas de reacciones
nucleares cuya solución experimental sería muy cara y
el análisis matemático demasiado complicado.
Con la utilización del computador en los experimentos
de simulación, surgieron incontables aplicaciones y
con ello, una cantidad mayor de problemas teóricos y
prácticos.
En este curso se abordan y analizan cierto número
de aplicaciones importantes de simulación en
variadas áreas y en el ámbito de la investigación
de operaciones.
Se sugiere también algunos métodos alternativos
para resolver algunos problemas teóricos y
prácticos que surgen al efectuar simulaciones
reales.
Se ha empezado a utilizar la palabra simulación
sin haber dado previamente una definición de ella.
Por consiguiente, antes de proseguir con la
discusión de este tema, sería conveniente describir
algunas de las definiciones más aceptadas y
difundidas de la palabra simulación.
SIMULACIÓN, ALGUNAS DEFINICIONES
1. Entidades 5. Recursos
2. Estado del sistema 6. Atributos
3. Eventos actuales y 7. Variables
futuros 8. Reloj de la
4. Localizaciones simulación
1 - Entidad
Es la representación de los flujos de entrada a un
sistema; éste es el elemento responsable de que el
estado del sistema cambie.
Ejemplos de entidades pueden ser los clientes que
llegan a la caja de un banco, las piezas que llegan
a un proceso o el embarque de piezas que llega a
un inventario.
2 – Estado del Sistema
Es la condición que guarda el sistema bajo estudio
en un momento determinado; es como una
fotografía de lo que está pasando en el sistema en
cierto instante.
El estado del sistema se compone de variables o
características de operación puntuales (digamos el
nº de clientes que hay en el sistema en ese
momento), y de variables o características de
operación acumuladas, o promedio (como podría
ser el tiempo promedio de permanencia de una
entidad en el sistema, en una cola, almacén o
equipo).
3 - Evento
Es un cambio en el estado actual del sistema.
Por ejemplo, la entrada o salida de una entidad, la
finalización de un proceso en un equipo, la
interrupción o reactivación de una operación
(digamos por un descanso del operario), o la
descompostura de una máquina.
Los eventos se pueden catalogar en dos tipos:
eventos actuales, que son aquellos que están
sucediendo en el sistema en un momento dado, y
eventos futuros, que son cambios que se
presentarán en el sistema después del tiempo de
simulación.
4 - Localizaciones
Son todos aquellos lugares en los que un
evento (por ej. un cliente o una pieza) puede
detenerse para recibir un servicio, ser
transformada o esperar a serlo.
Dentro de estas localizaciones se encuentran
almacenes, correas transportadoras,
máquinas, estaciones de inspección, etc.
5 - Recursos
Son aquellos dispositivos – diferentes a las
localizaciones – necesarios para llevar a
cabo una operación.
Por ejemplo, un montacargas que transporta
una pieza de un lugar a otro; una persona
que realiza la inspección en una estación;
una herramienta necesaria para realizar un
proceso pero que no forma parte de una
localización específica, sino que es
trasladada de acuerdo con los
requerimientos de aquél, tales como cajas y
pallets.
6 - Atributo
Es una característica de una entidad.
Por ejemplo, si la entidad es un motor, los
atributos serían su color, peso, tamaño o
cilindrada.
Los atributos son muy útiles para
diferenciar entidades sin necesidad de
generar una entidad nueva, y pueden
adjudicarse al momento de la creación de la
entidad, o asignarse y/o cambiarse durante
el proceso.
7 - Variables
Son condiciones cuyos valores se crean y
modifican por medio de ecuaciones matemáticas y
relaciones lógicas.
Pueden ser continuas (por ejemplo, el costo
promedio de operación de un sistema) o discretas
(por ejemplo, el número de unidades que deberán
empacarse en un container).
Las variables son muy útiles para determinar
características de operación y estado del sistema.
8 – Reloj de la Simulación
Es el contador de tiempo de la simulación, y su función
consiste en responder preguntas tales como cuánto tiempo se
ha utilizado el modelo en la simulación, y cuánto tiempo en
total se quiere que dure ésta.
En general, el reloj de la simulación se relaciona con la tabla
de eventos futuros, pues al cumplirse el tiempo programado
para la realización de un evento futuro, éste se convierte en un
evento actual.
Hay dos tipos de reloj de simulación: absoluto, que parte de
cero y termina en un tiempo total de simulación definido, y el
reloj relativo, que sólo considera el lapso que transcurre entre
dos eventos.
Por ejemplo, podemos decir que el tiempo de proceso de una
pieza es relativo, mientras que el tiempo absoluto sería el
tiempo global de la simulación: desde que la pieza entró a ser
procesada hasta el momento en el que terminó su proceso.
Réplica y Corrida (1)
Cuando ejecutamos el modelo en una ocasión, los
valores que obtenemos de las variables y
parámetros al final del tiempo de simulación
generalmente serán distintos de los que se
producirán si lo volvemos a correr usando
diferentes números pseudo aleatorios.
Por lo tanto, es necesario efectuar más de una
réplica o repetición del modelo que se esté
analizando, con la finalidad de obtener estadísticas
de intervalo que nos den una mejor ubicación del
verdadero valor de la variable bajo los diferentes
escenarios que se presentan al modificar los
números pseudo aleatorios en cada oportunidad.
Réplica y Corrida (2)
Punto Rango
Frecuencia Frecuencia
Medio Números
Demanda Relativa Acumulada
Aleatorios
xi fi Fi
>= <
20-24 22 5% 5% 0,00 – 0,05
25-29 27 10% 15% 0,05 – 0,15
30-34 32 20% 35% 0,15 – 0,35
35-39 37 30% 65% 0,35 – 0,65
Nº
40-44 42 20% 85% 0,65 – 0,85 Aleatorio
45-49 47 10% 95% 0,85 – 0,95 Generado
50-54 52 5% 100% 0,95 – 1,00
Simulación de 15 Períodos
Regla 1 Regla 2
Número Demanda
Día
Aleatorio Generada Cantidad Ventas Cantidad Ventas
Comprada Comprada
0 37
1 0,27 32 37 32 37 32
2 0,43 37 32 32 37 37
3 0,85 47 37 37 37 37
4 0,88 47 47 47 37 37
5 0,29 32 47 32 37 32
6 0,69 42 32 32 37 37
7 0,94 47 42 42 37 37
8 0,64 37 47 37 37 37
9 0,32 32 37 32 37 32
10 0,48 37 32 32 37 37
11 0,13 27 37 27 37 27
12 0,14 27 27 27 37 27
13 0,54 37 27 27 37 37
14 0,15 32 37 32 37 32
15 0,47 37 32 32 37 37
550 550 500 555 515
Utilidades Reglas de Operación
Utilidades = Ventas x Precio de Venta –
Compras x Precio de Costo
SansGUI Modeling
ProVision Resource Manager SAIL and Simulation SAS Software
Environment
Visual Simulation
SLIM Supply Chain Builder VisSim Witness
Environment
5 – Verificación del modelo (1)
Luego de implementado el modelo computacional,
es necesario realizar un proceso de verificación de
datos para comprobar la correcta programación del
modelo, y comprobar que todos los parámetros
usados en la simulación funcionen correctamente.
Ciertos problemas, en especial aquellos que requieren
muchas operaciones de programación o que
involucran distribuciones de probabilidad difíciles de
programar, pueden ocasionar que el comportamiento
del sistema sea muy diferente del que se esperaba.
Por otro lado, no se debe descartar la posibilidad de
que ocurran errores humanos al alimentar el modelo
con la información.
5 – Verificación del modelo (2)
Frecuencia %
30%
valores correctos. 20%
Por ejemplo, en el caso de la 10%
pastelería Betty, debe probarse 0%
si la distribución de demanda 22 27 32 37 42 47 52
Demanda
del pan generada por el modelo
es una buena representación de Modelo Real
la distribución de frecuencias
empírica.
Pruebas Estadísticas
Pueden utilizarse pruebas estadísticas
estándar para determinar si la distribución
observada tiene suficiente relación con la
distribución verdadera.
Por ejemplo, el coeficiente de correlación
r (método de los mínimos cuadrados).
También se pueden utilizar pruebas
estadísticas de bondad de ajuste como la
de Kolmogorov-Smirnov o la de chi-
cuadrado χ2
Validación de los Resultados
Pueden hacerse pruebas similares en los valores de
los resultados para determinar si el simulador
predice de una manera apropiada o no.
En el caso de la Pastelería Betty, una prueba de los
resultados sería una comparación de las ventas
reales y datos de utilidades con el resultado del
modelo bajo condiciones similares.
Estas comparaciones de resultados pueden
probarse en forma estadística de la misma
manera que los datos.
Validación del tamaño de la
corrida
En la simulación se establece un tamaño de
la corrida o longitud para el ejercicio (Nº de
períodos a simular) con el objeto de obtener
resultados estables o realistas.
Una manera de determinar la longitud del
ejercicio es graficar los resultados del
modelo versus diferentes Nº de períodos y
determinar cuándo se presenta la estabilidad
en los resultados.
Al graficar las ventas y las utilidades por período en
relación a la longitud del ejercicio, puede observarse
que existen amplias fluctuaciones en el caso de
longitudes cortas en los ejercicios.
Sin embargo, el resultado se estabiliza conforme se
incrementa la longitud del ejercicio.
Con frecuencia los simuladores tienen
condiciones iniciales (semillas) que se
seleccionan de manera arbitraria.
Pueden hacerse pruebas estadísticas estándar de
los resultados para determinar cuándo se
presenta la estabilidad
Regla 1 Regla 2
f (t ) e t
; t 0, 0
El tiempo transcurrido entre llegadas de clientes se
simula mediante una variable aleatoria continua
t ~E().
Distribución Exponencial
Para simular el tiempo entre llegadas mediante el
Método de Monte Carlo, se utiliza el método de
la transformada inversa de la distribución de
probabilidad acumulada:
F (t ) 1 e t
; t 0, 0
donde:
t = tiempo que transcurre entre las llegadas
F(t) = probabilidad de que un nuevo cliente llegue dentro del tiempo t
= número promedio de llegadas por unidad de tiempo.
1/ = tiempo promedio entre las llegadas.
Distribución Exponencial
= número promedio de llegadas por unidad de tiempo.
Por ej. = 1/6 clientes/día
1/ = tiempo promedio entre las llegadas.
Por ej. 6 días/cliente
t
r F (t ) 1 e
t
1 r e
ln(1 r ) t
t 1 ln 1 r
Ejemplo Distribución Exponencial
Si los clientes llegan a un banco con una rapidez
promedio de =20 clientes/hora y si un cliente
acaba de llegar, entonces la probabilidad de que el
siguiente llegue dentro de los siguientes 10
minutos (es decir t =1/6 de hora) es:
Valor Aleatorio a r b a
donde:
r = número aleatorio equiprobable ~U(0, 1)
a = límite inferior del rango
b = límite superior del rango
Propiedades estadísticas de la Distribución Uniforme ~U(a, b)
Media
ab
Desviación Estándar
b a
2 12
Diseño de Instalaciones Portuarias
Se requiere diseñar instalaciones portuarias para
buques.
Como los muelles son muy costosos, es
necesario decidir si se utilizará uno o dos
muelles en un puerto particular.
El problema consiste en minimizar los costos de
espera de los barcos como también el tiempo
ocioso del muelle.
Para resolver este problema, es necesario contar
con una distribución del tiempo de llegada de
los barcos.
Datos del Problema del Puerto
El tiempo necesario para dar servicio a un buque es
de 5 días. Si = tasa de servicio, entonces:
1/ = 5 días; = 1/5 [barcos/día]
El servicio en este caso involucra la descarga de la
nave y el reabastecimiento de combustibles en el
muelle.
Tiempo promedio de 6 días entre llegadas:
1/ = 6 días; = 1/6 [barcos/día]
Reglas de Operación del Muelle
Quien llega primero se atiende primero (FIFO)
En el caso de un solo muelle, si se encuentra
otro navío atracado cuando se presenta una
llegada, el nuevo barco se pone en línea de
espera.
El barco en espera permanecerá ahí hasta que
termine el servicio del barco anterior.
Como resultado, se calcula el tiempo de espera
de cada barco y el tiempo ocioso del muelle, de
existir.
Variables de estado
Entrada al Servicio = Máximo (Tiempo de
Llegada; Término del Servicio Barco Anterior)