Professional Documents
Culture Documents
1. Introduccin
2. Sistemas y modelos
3. Simulacin de modelos de sucesos discretos
4. Componentes y organizacin de un estudio de simulacin
4.1 Diagrama de flujo general
4.2 Diagramas de flujo de los sucesos ms importantes en sistemas de colas
5. Ejemplo de simulacin de una cola con un servidor.
6. Etapas ms frecuentes en un estudio de simulacin
6.1 Descripcin general de todas las etapas
6.2 Eleccin del lenguaje de programacin. Simuladores. Animacin.
6.3 Verificacin del programa
6.4 Validacin del modelo
6.5 Anlisis estadstico de resultados (se ver en la pizarra)
7. Ventajas, inconvenientes y errores ms frecuentes en los estudios de simulacin.
8. Generacin de nmeros aleatorios (pizarra)
Tcnicas de reduccin de varianza (pizarra)
1. INTRODUCCIN
Simulacin: Tcnicas para imitar el funcionamiento de sistemas o procesos reales mediante programas de ordenador. Para estudiar el
sistema suele ser necesario hacer algunas suposiciones sobre su forma de operar. Estas hiptesis constituyen un modelo que no es ms que una
representacin simplificada de un sistema que se construye para estudiar el comportamiento del mismo.
Si el modelo es suficientemente simple es posible obtener soluciones exactas sobre las cuestiones de inters mediante mtodos
matemticos. A esta solucin se le llama analtica.
Sin embargo, la mayora de los sistemas reales son demasiado complejos para admitir modelos que sean evaluados analticamente, y
deben ser estudiados mediante simulacin. Por tanto, los modelos de simulacin suelen ser ms complejos y prximos a los sistemas reales que
los modelos analticos ya que no es necesario hacer tantas simplificaciones para obtener resultados. En simulacin se utiliza el ordenador para
evaluar numricamente el modelo y los resultados que se obtienen se usan para estimar las verdaderas caractersticas del modelo.
Como ejemplo de una simulacin, supongamos que se est pensando hacer una gran ampliacin de un sistema de produccin pero no se
est seguro de que la mejora en productividad justifique la inversin. No tendra sentido hacer la extensin para luego darse cuenta de que no
mereca la pena. Sin embargo, un cuidadoso estudio de simulacin permitira estudiar los resultados en la produccin porque simulara el
funcionamiento del sistema como si se hubiera realizado la extensin del sistema de produccin.
Areas de aplicacin:
Diseo y anlisis de sistemas de produccin
Evaluacin de requerimientos hardware y software para un sistema de computacin
Determinacin de polticas de pedidos para un sistema de inventarios
Diseo de sistemas de comunicacin.
Diseo y operacin de sistemas de transporte como aeropuertos, puertos, metro, etc.
Evaluacin de diseos para la organizacin de servicios como hospitales u oficinas de correos.
Anlisis de sistemas econmicos o financieros.
Dentro de las tcnicas de Investigacin Operativa la simulacin es la ms ampliamente utilizada. Sin embargo, ha tardado mucho tiempo
en aceptarse su uso. Las razones son diversas. En primer lugar, los modelos que se utilizan para simular sistemas reales son muy complejos y
escribir programas de ordenador que los desarrollen es una tarea complicada. Estos han cambiado mucho en los ltimos aos por la aparicin en
el mercado de excelente software para tratar problemas de simulacin. Segundo, la simulacin de sistemas complejos necesita un tiempo de
ordenador muy elevado. Este problema es cada vez de menor importancia conforme el coste del tiempo de computacin se hace cada vez menor.
Antes era necesario ejecutar las simulaciones en ordenadores grandes en horas donde no estuvieran trabajando. En la actualidad cualquier
ordenador personal puede ejecutar un programa de simulacin en un tiempo razonable.
Por ltimo, est muy extendida la idea de que hacer una simulacin es desarrollar un programa de ordenador y considerar como solucin
al problema los resultados de la ejecucin del programa. Sin embargo, las salidas de una simulacin son aleatorias y no se puede evitar en ningn
caso un anlisis estadstico de resultados.
2. SISTEMAS Y MODELOS
Sistema: Coleccin de entidades (Ej. personas mquinas) que interactuan entre s para conseguir un determinado fin. En la prctica el
significado de sistema depende de los objetivos del estudio: la coleccin de entidades que componen un sistema en un estudio puede ser slo un
subconjunto de entidades para el estudio de otro sistema.
Estado del sistema: Es la coleccin de variables necesarias para describir un sistema en un instante dado. Estas variables se llaman
variables de estado.
Tipos de sistemas:
Discretos: Las variables de estado cambian en puntos separados del tiempo.
Continuos: Las variables de estado cambian de forma continua a lo largo del tiempo.
Formas de estudiar un sistema:
Experimentar con el sistema real
modelo fsico solucin analtica
Experimentar con un modelo del sistema modelo matemtico simulacin
Supuesto que vamos a estudiar un modelo matemtico mediante simulacin, a lo que nos vamos a referir como un modelo de simulacin,
podemos clasificar este tipo de modelos segn tres puntos de vista:
1. Modelos estticos frente a modelos dinmicos: en los primeros, el tiempo no juega ningn papel mientras que en los segundos el sistema
evoluciona con el tiempo.
2. Modelos determinsticos frente a modelo estocsticos: si un modelo de simulacin no contiene componentes aleatorias se dice determinstico.
En otro caso se habla de modelos estocsticos. Estos modelos producen resultados aleatorios por lo deben de ser tratados como estimaciones
de las verdaderas caractersticas del modelo.
3. Modelos discretos frente a modelos continuos: los modelos discretos se refieren a sistemas en los cuales las variables de estado cambian en
puntos separados en el tiempo. En los modelos continuos, las variables de estado cambian de manera continua a lo largo del tiempo, por
ejemplo, la trayectoria de un avin.
Nos vamos a centrar en el estudio de modelos de simulacin DINAMICOS, ESTOCASTICOS Y DISCRETOS.
3. SIMULACIN DE MODELOS DE SUCESOS DICRETOS
Se refiere a la modelizacin de sistemas en los que las variables de estado cambian en puntos separados en el tiempo. Estos puntos son
aquellos en los que ocurre lo que llamamos un suceso. Un suceso se define como una ocurrencia que puede modificar el estado del sistema.
Ej. Un sistema de colas con un slo servidor (como una peluquera o un mostrador de informacin de un aeropuerto)
Objetivo: Estimar el tiempo medio en cola de los clientes que llegan.
Variables de estado asociadas a este objetivo: Estado del servidor (libre u ocupado), nmero de clientes en cola, hora de llegada de cada cliente
(si, por ejemplo, el objetivo fuese estimar el nmero medio de clientes en el sistema, la hora de llegada de cada cliente no sera variable de
estado).
Sucesos: Llegada de clientes (produce cambios en las variables de estado, por ejemplo, en el estado del servidor), salida de clientes servidos.
Aunque la simulacin se aplica a una serie de campos muy diversos, existen una serie de componentes comunes en todo modelo de
simulacin y hay una organizacin lgica de estos componentes lo que da lugar al cdigo del programa de ordenador que servir para desarrollar
el modelo de simulacin.
4. COMPONENTES Y ORGANIZACIN DE UN ESTUDIO DE SIMULACIN
Estos componentes estn en la mayora de los modelos de simulacin de eventos discretos.
Estado del sistema: Hemos hablado anteriormente de las variables que definen el estado del sistema.
Reloj de simulacin:
Debido a la naturaleza dinmica de una simulacin, debemos de conocer el instante de tiempo simulado en el que nos encontramos
mientras se est realizando la simulacin. La variable que proporciona el instante actual de tiempo simulado se llama reloj de simulacin. La
unidad de tiempo se suele tomar la misma que la de los parmetros de entrada. No tiene relacin con el tiempo necesario para correr la
simulacin en el ordenador (tiempo de computacin o de ejecucin).
Para avanzar el reloj de simulacin, lo habitual es avanzar el tiempo al ocurrir el siguiente suceso: El reloj de simulacin se inicia a cero, y
se avanza hasta el instante en que ocurrir el prximo suceso. En ese punto se actualizan las variables de estado para ver cmo ha afectado al
sistema la ocurrencia de un suceso. Tambin se actualizan los futuros sucesos a ocurrir. Este proceso se contina hasta que se satisface alguna
condicin de parada.
Lista de sucesos: la lista que contiene los prximos instantes en los que van a ocurrir los distintos tipos de sucesos.
Contadores estadsticos: Variables utilizadas para guardar la informacin estadstica sobre el funcionamiento del sistema.
Rutina de inicializacin: subprograma que inicializa el modelo de simulacin en el instante cero.
Rutina del tiempo: subprograma que determina el siguiente suceso de la lista de sucesos, y avanza el reloj hasta el instante en que ese suceso
ocurre.
Rutinas de sucesos: subprograma que actualiza el estado del sistema y de los contadores cuando ocurre un suceso (una rutina para cada tipo de
suceso)
Librera de rutinas: Conjunto de subprogramas que generan nmeros aleatorios de las distribuciones utilizadas en el modelo.
Generador de informes: subprograma que estima (a partir de los contadores estadsticos) las medidas de comportamiento del sistema que nos
interese, y genera un informe con los resultados de la simulacin.
Programa principal: subprograma que llama a la rutina de tiempos para determinar el prximo suceso y transfiere el control a la rutina
correspondiente . Tambin se ocupa de verificar la condicin de parada y de llamar al generador de informes cuando la simulacin ha terminado.
4.1. DIAGRAMA DE FLUJO GENERAL
Rutina de inicializacin Programa principal Rutina del tiempo
Pone el reloj a cero Llama a la rutina de incializacin Determina el siguiente tipo de
Inicializa el estado del sistema Llama repetidas veces a: suceso, por ej. i
y los contadores rutina del tiempo y Avanza el reloj de simulacin
Inicializa la lista de sucesos rutina de sucesos
Rutina de sucesos Librera de rutinas
Actualiza el estado del sistema Genera nmeros
Actualiza los contadores aleatorios
Genera futuros sucesos y los
aade a la lista de sucesos
Termin la simulacin? no
s
Generador de informes
Calcula estimaciones de inters
Escribe el informe
4.2. DIAGRAMA DE FLUJO DE LOS SUCESOS MS IMPORTANTES:
A) RUTINA DE LLEGADA DE UN CLIENTE
Suceso llegada
Programar siguiente llegada
si Servidor no
ocupado?
si
no
Aadir 1 a la cola Poner el servidor
ocupado
Poner espera = 0
Programar el suceso de salida
para este cliente y aadir a la
lista de sucesos
cola
llena?
Error si capacidad
infinita. Si no,
aadir 1 a clientes
perdidos.
Aadir 1 al n de
clientes servidos
Guardar instante de
llegada de este cliente
B) RUTINA DE SALIDA DE UN CLIENTE
suceso salida
si cola no
vaca?
poner libre Restar 1 al nmero
el servidor en la cola
Calcular espera del cliente
Dejar de considerar que entra en el servidor y
el suceso salida actualizar estadsticas
Aadir 1 al nmero de
clientes servidos
Programar suceso salida
para este cliente
Subir un puesto a cada cliente en cola
6. ETAPAS MS FRECUENTES EN UN ESTUDIO DE SIMULACIN
1. Formulacin del problema y del plan de estudio