Simulación2.pdf

May 14, 2018 | Author: Angel Jhems Pozo Estrada | Category: Computer Simulation, Simulation, Stochastic, Monte Carlo Method, Probability


Comments



Description

1 TÍTULO: “SIMULACIÓN DE SISTEMAS” ORIENTADO A EVENTOS DISCRETOS INDICE 1. INTRODUCCIÓN A LA SIMULACIÓN...................................................................................... 1 1.1. PRINCIPIOS BASICOS DE LA SIMULACION .................................................................... 2 1.1.1. INTRODUCCIÓN A LA SIMULACIÓN...................................................................... 2 1.1.2. DEFINICIONES ....................................................................................................... 3 1.1.3. DEFINICIÓN DE LA SIMULACIÓN DE SISTEMAS.................................................... 6 1.1.4. TIPOS DE SIMULACIÓN. ........................................................................................ 7 1.1.5. VENTAJAS Y DESVENTAJAS DE LA SIMULACIÓN .................................................. 9 1.1.6. ERRORES AL MOMENTO DE REALIZAR UN MODELO DE SIMULACIÓN ............. 10 1.1.7. ETAPAS DE LA SIMULACIÓN ............................................................................... 10 1.1.8. EJEMPLOS DE MODELO DE SIMULACIÓN........................................................... 13 1.1.9. TOMA DE DECISIONES ........................................................................................ 15 1.1.10. CLASIFICACIÓN DE MODELOS DE LA INVESTIGACIÓN DE OPERACIONES ......... 15 1.1.11. PASOS PARA REALIZAR UN ESTUDIO DE SIMULACIÓN ..................................... 16 1.2. EL MÉTODO DE MONTE CARLO .................................................................................. 19 1.2.1. APLICACIONES DE LA SIMULACIÓN .................................................................... 20 1.2.2. EL SIMULADOR POR COMPUTADORA................................................................ 23 1.2.3. RESOLUCIÓN ANALÍTICA VS SIMULACIÓN ......................................................... 23 2. NÚMEROS Y VARIABLES ALEATORIAS................................................................................ 35 2.1. LOS NUMEROS PSEUDO ALEATORIOS........................................................................ 37 2.1.1. NÚMEROS PSEUDO – ALEATORIOS .................................................................... 37 2.1.2. GENERACIÓN DE NÚMEROS PSEUDO – ALEATORIOS ....................................... 37 2.2. ALGORITMOS NO CONGRUENCIALES ........................................................................ 39 2.2.1. ALGORITMO DE CUADRADOS MEDIOS .............................................................. 39 2.2.2. ALGORITMO DE PRODUCTOS MEDIOS .............................................................. 40 2.2.3. ALGORITMO DE MULTIPLICADOR CONSTANTE ................................................. 41 2.3. ALGORITMOS CONGRUENCIALES ............................................................................... 42 2.3.1. ALGORITMO LINEAL............................................................................................ 42 2.3.2. ALGORITMO CONGRUENCIAL MULTIPLICATIVO ............................................... 44 2.3.3. ALGORITMO CONGRUENCIAL ADITIVO ............................................................. 45 2.4. ALGORITMOS CONGRUENCIALES NO LINEALES ........................................................ 46 2.4.1. ALGORITMO CONGRUENCIAL CUADRÁTICO ..................................................... 46 2.4.2. ALGORITMO DE BLUM, BLUM Y SHUB ............................................................... 47 2.5. PROPIEDADES DE LOS NÚMEROS PSEUDO - ALEATORIOS........................................ 47 2.5.1. PRUEBA DE MEDIAS ............................................................................................ 48 2.5.2. PRUEBA DE VARIANZA......................................................................................... 50 2.5.3. PRUEBA DE UNIFORMIDAD ................................................................................ 52 2.5.4. PRUEBA DE INDEPENDENCIA ............................................................................. 54 3. VARIABLES ALEATORIAS ................................................................................................. 57 3.1. DEFINICIÓN DE LAS VARIABLES ALEATORIA .............................................................. 59 3.1.1. TIPOS DE VARIABLES ALEATORIAS ..................................................................... 60 3.2. PRUEBAS PARA EL TIPO DE DISTRIBUCIÓN................................................................ 63 3.2.1. PRUEBAS CHI-CUADRADA .................................................................................. 63 3.2.2. PRUEBAS DE KOLMOGOROV – SMIRNOV .......................................................... 65 3.2.3. AJUSTE DE DATOS CON STAT - FIT...................................................................... 68 3.3. GENERACION DE VARIABLES ALEATORIAS. ............................................................... 68 3.3.1. MÉTODO DE LA TRANSFORMADA INVERSA ...................................................... 68 3.3.2. MÉTODO DE CONVOLUCIÓN .............................................................................. 73 4. CONSTRUCCIÓN DE MODELOS DE SIMULACIÓN ............................................................... 77 4.1. VERIFICACIÓN Y VALIDACIÓN DE LOS MODELOS DE SIMULACIÓN .......................... 79 4.1.1. SIMULACIONES TERMINALES ............................................................................. 79 4.1.2. SIMULACIONES NO TERMINALES O DE ESTADO ESTABLE ................................. 82 4.1.3. LONGITUD DE RÉPLICAS ..................................................................................... 82 4.2. MODELOS DE SIMULACIÓN ........................................................................................ 87 4.2.1. MODELO DE UNA LÍNEA DE ESPERA CON UN SERVIDOR .................................. 87 BIBLIOGRAFÍA 1. INTRODUCCIÓN A LA SIMULACIÓN 1 1.1. PRINCIPIOS BASICOS DE LA SIMULACION 1.1.1. INTRODUCCIÓN A LA SIMULACIÓN La simulación se puede definir como el acto de imitar un sistema real, de forma que se representen ciertas características o comportamientos clave del mismo. Es así que existen dos formas de simulación principales: real o computacional. Simulación de eventos discretos En este tipo de simulación se generan y administran eventos en el tiempo por medio de una cola de eventos ordenada según el tiempo de simulación en que deben ocurrir y de esta forma el simulador lee de la cola y dispara nuevos eventos. Entre otros un evento puede ser: la llegada de un cliente, la llegada de un camión, el inicio del proceso de una pieza, la finalización de un proceso de fabricación. Esta modalidad de simulación se usa típicamente en el diseño de la mayoría de eslabones de la cadena de suministro tales como: líneas de producción, plantas de procesamiento, bodegas de materia prima, bodegas de producto terminado, puntos de atención a clientes, hospitales, centros de atención médica. Una variación importante de la simulación de eventos discretos es la simulación de agentes, en ella las entidades (tales como moléculas, células, árboles o consumidores) son representados directamente (en vez de representarse a través de sus densidades o cantidades), estos agentes poseen estados internos y conjuntos de comportamientos o reglas sencillas individuales que definen como son actualizados estos estados entre los diferentes puntos en el tiempo, definiendo así el comportamiento del conjunto de los agentes. Un ejemplo típico para este tipo de simulación es el de peatones en un evento de evacuación, para que dado unas reglas generales del comportamiento de movimiento de cada individuo se logre simular y determinar el tiempo de evacuación de todo el grupo de peatones dado un número de salidas en una locación determinada. 2 Esquema General de Modelamiento de Sistemas 1.1.2. DEFINICIONES Sistemas: Un sistema es un conjunto de partes o elementos organizados y relacionados que interactúan entre sí para lograr un objetivo. Sistema Cerrado: Sistema que no tiene Interrelación con las actividades exógenas Sistema Abierto: Sistema que si tiene Interrelación con las actividades exógenas. Sistema Discreto: Las variables de estado cambian en puntos separados del tiempo. Una gasolinera donde se encuentran un número de clientes. Sistema Continuo: Las variables de estado cambian continuamente con respecto al tiempo. Una aeronave que se desplaza en el espacio. Atributo: Propiedad de una entidad. La prioridad de los clientes en la fila de espera. Actividad: Proceso que provoca cambios en el sistema. Determinístico: Actividad que tiene bien definido tanto las entradas como las salidas. Endógeno: Describe las actividades que ocurren dentro del sistema. Estado del Sistema: Es la condición que guarda el sistema bajo estudio en un momento determinado. 3 Evento: Es un cambio en el estado actual del sistema. 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. Eventos Actuales: Son aquellos que están sucediendo en el sistema en un momento dado. Eventos Futuros: Son cambios que se presentan en el sistema después del tiempo de simulación. Exógeno: Describe las actividades del medio ambiente que lo afectan al sistema. Localizaciones: Son todos aquellos lugares en los que la pieza puede detenerse para ser transformada o esperar a serlo. Almacenes, bandas transportadoras, máquinas, estaciones de inspección. Modelos Continuos: Son aquellos en que las relaciones entre las variables relevantes de la situación real se definen por medio de ecuaciones diferenciales, dado que éstas permiten conocer el comportamiento de las variables en un lapso de tiempo continuo. Ejemplo: flujo de un material dentro de una tubería Modelos Discretos: El comportamiento se representa por medio de ecuaciones evaluadas en un punto determinado. Ejemplo: El número de personas que llegaron a un Banco en un lapso de tiempo Modelos Dinámicos: Son aquellos en los que el estado del sistema que estamos analizando cambia respecto al tiempo. Ejemplo: El número de personas que hacen fila para entrar a una sala de cine varía con el tiempo Modelos Estáticos: Representan un resultado bajo un conjunto de situaciones o condiciones determinado. Ejemplo: Al lanzar un dado los únicos valores que se puede obtener son 1, 2, 3, 4, 5 ó 6 de manera que el resultado de la simulación será uno de los tales valores posibles. (Simulación de Montecarlo) Modelos Determinísticos: Relaciones constantes entre los cambios de las variables del modelo. Ejemplo: Si las cajas empleadas en un proceso contienen siempre 5 productos, cada vez que se añada una caja en el inventario este se incrementará en 5 unidades. Modelos Probabilísticas: Si algunas cajas contienen 3 productos, otras 4 y así por el estilo, el inventario se modificará según el número de piezas de cada caja y en consecuencia será necesario un modelo estocástico. 4 Estocástico: Actividad que cambia aleatoriamente en distintas salidas. Modelos: Toda representación de un sistema real o abstracto. (Icónico, Simbólico, Análogo y Matemático) Tipos: Físicos, Mentales, Simbólicos Recursos: Son aquellos dispositivos (diferentes a las localizaciones) necesarios para llevar a cabo una operación. 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. Reloj de Simulación: Es un contador del tiempo de simulación Reloj de Simulación Absoluto: Que parte desde cero y termina en un tiempo total de simulación definido. Reloj de Simulación Relativo: Que solo considera el lapso de tiempo que transcurre entre dos eventos. Modelos: Representa situaciones reales de diferentes tipos: Modelos físicos y Modelos matemáticos a la cual pertenecen los modelos de simulación de eventos discretos. Simulación: Es la imitación de la operación de un proceso o sistema del mundo real en un determinado tiempo. Simulación es una técnica numérica para conducir experimentos en una computadora digital; estos experimentos comprenden ciertos tipos de relaciones matemáticas y lógicas, las cuales son necesarias para describir el comportamiento y la estructura de sistemas complejos del mundo real a través de largos períodos". Simulación de Eventos Discretos: Conjunto de relaciones lógicas, matemáticas y probabilísticas que integran el comportamiento del sistema bajo estudio cuando se presenta un evento determinado. Variables: Son condiciones cuyos valores se crean y modifican por medio de ecuaciones matemáticas y relaciones lógicas. Variables Continuas: El costo de operación de un sistema. Variables Discretas: El número de unidades que deberá empacarse en un contenedor. Variables Exógenas: Son variables Independientes o de entradas del modelo. Estas variables actúan sobre el sistema y no viceversa (por lo general) Variables Endógenas: Son variables Dependientes o de salidas del sistema y son generadas por la interacción de las variables exógenas con las del estado 5 Variables de Estado: Describen el estado de un sistema o uno de sus componentes, estas variables Interaccionan con las variables exógenas y endógenas. Los modelos matemáticos del sistema constan de cuatro elementos bien definidos:  Componentes.  Variables.  Parámetros y;  Relaciones Funcionales. 1.1.3. DEFINICIÓN DE LA SIMULACIÓN DE SISTEMAS La simulación es la imitación de la operación de un proceso o sistema real a lo largo del tiempo. El desempeño del sistema real se imita usando distribuciones de probabilidad para generar aleatoriamente los distintos eventos que ocurren en el sistema. Por ello al modelar se caracterizan matemáticamente las relaciones que definen de manera lógica la interacción de los componentes del sistema y de las variables endógenas y exógenas. La descripción del sistema se debe hacer en forma modular y por bloques. PIONEROS EXPERTOS DE LA SIMULACIÓN DE SISTEMAS  Robert E. Shanon: Es el proceso de diseñar y desarrollar un modelo computarizado de un sistema o proceso y conducir experimentos con este modelo con el propósito de entender el comportamiento del sistema o evaluar varias estrategias con las cuales se puede operar el sistema.  H. Maisel y G. Gnugnoli: Es una técnica numérica para realizar experimentos en una computadora digital. Estos experimentos involucran ciertos tipos de modelos matemáticos y lógicos que describen el comportamiento del sistema de negocios, económicos, 6 sociales, biológicos, físicos o químicos a través de largos periodos de tiempo.  Thomas H. Naylor: Es una técnica numérica para conducir experimentos en una computadora digital. Estos experimentos comprenden ciertos tipos de relaciones matemáticas y lógicas, las cuales son necesarias para describir el comportamiento y la estructura de sistemas complejos del mundo real a través de largos periodos de tiempo 1.1.4. TIPOS DE SIMULACIÓN.  Modelo de Simulación Determinista: No contiene elementos aleatorios. Reacción química, Ecuaciones Diferenciales.  Modelo de Simulación Estocásticos: Contiene elementos aleatorios. Sistema de Filas.  Modelo de Simulación Estáticos: Simulación Montecarlo.  Modelo de Simulación Dinámicos: Evoluciona en el tiempo. Una Fábrica, Contaminación, etc.  Modelo de Simulación Continuos: Las variables dependientes cambian en forma discreta. Número de personas en cola.  Modelo de Simulación Discretos: Las variables dependientes cambian en forma continua. Lanzamiento espacial.  Modelo de Simulación Discretos y Continuos. Variables combinados. Un modelo discreto no siempre se usa para modelar un sistema discreto y viceversa. La decisión de qué tipo de modelo usar depende del objetivo específico del problema a resolver. Por ejemplo: un flujo de tráfico en una carretera podría ser discreto si el interés está enfocado en cada vehículo en particular; o continuo usando ecuaciones diferenciales, si está enfocado al flujo. 7 De acuerdo a la naturaleza del modelo empleado, la simulación puede ser por (Fishman, 1978):  Identidad: Es cuando el modelo es una réplica exacta del sistema en estudio. Es la que utilizan las empresas automotrices cuando realizan ensayos de choques de automóviles utilizando unidades reales.  Cuasi-identidad: Se utiliza una versión ligeramente simplificada del sistema real. Por ejemplo, los entrenamientos militares que incluyen movilización de equipos y tropas pero no se lleva a cabo una batalla real.  Laboratorio: Se utilizan modelos bajo las condiciones controladas de un laboratorio. Se pueden distinguir dos tipos de simulaciones: o Juego operacional: Personas compiten entre ellas, ellas forman parte del modelo, la otra parte consiste en computadoras, maquinaria, etc. Es el caso de una simulación de negocios donde las computadoras se limitan a recolectar la información generada por cada participante y a presentarla en forma ordenada a cada uno de ellos. o Hombre-Máquina: Se estudia la relación entre las personas y la máquina. Las personas también forman parte del modelo. La computadora no se limita a recolectar información, sino que también la genera. Un ejemplo de este tipo de simulación es el simulador de vuelo.  Simulación por computadora: El modelo es completamente simbólico y está implementado en un lenguaje computacional. Las personas quedan excluidas del modelo. Un ejemplo es el simulador de un sistema de 8 redes de comunicación donde la conducta de los usuarios está modelada en forma estadística. Este tipo de simulación a su vez puede ser: o Digital: Cuando se utiliza una computadora digital. o Analógica: Cuando se utiliza una computadora analógica. En este grupo también se pueden incluir las simulaciones que utilizan modelos físicos. 1.1.5. VENTAJAS Y DESVENTAJAS DE LA SIMULACIÓN Ventajas:  Es muy buena herramienta para conocer el impacto de los cambios en los procesos sin necesidad de llevarlos a cabo en la realidad.  Mejora el conocimiento del proceso actual al permitir que el analista vea cómo se comporta el modelo generado bajo deferentes escenarios  Puede utilizarse como medio de capacitación para la toma de decisiones.  Es más económico realizar un estudio de simulación que hacer muchos cambios en los procesos reales.  Permite probar varios escenarios en busca de las mejores condiciones de trabajo de los procesos que se simulan.  En problemas de gran complejidad, la simulación permite generar una buena solución.  En la actualidad los paquetes de software para simulación tienden a ser más sencillos, lo que facilita su aplicación.  Gracias a las herramientas de animación que forman parte de muchos de esos paquetes es posible ver cómo se comportará un proceso una vez que sea mejorado. Desventajas:  Aunque muchos paquetes de software permiten obtener el mejor escenario a partir de una combinación de variaciones posibles, la simulación no es herramienta de optimización.  La simulación puede ser costosa cuando se quiere emplearla en problemas relativamente sencillos de resolver, en lugar de utilizar 9 soluciones analíticas que se han desarrollado de manera específica para ese tipo de casos.  Se requiere bastante tiempo para realizar un buen estudio de simulación.  Es preciso que el analista domine el uso del paquete de simulación y que tenga sólidos conocimientos de estadística para interpretar los resultados. 1.1.6. ERRORES AL MOMENTO DEREALIZAR UN MODELO DE SIMULACIÓN  Tamaño insuficiente de la corrida.  Variables de respuestas mal definidas.  Errores al establecer las relaciones entre las variables aleatorias.  Errores al determinar el tipo de distribución asociado a las variables aleatorias del modelo.  Falta de un análisis estadístico de los resultados.  Uso incorrecto de la información obtenida.  Falta o exceso de detalle en el modelo. 1.1.7. ETAPAS DE LA SIMULACIÓN En el desarrollo de una simulación se pueden distinguir las siguientes etapas (Banks et al.,1996):  Formulación del Problema: En este paso debe quedar perfectamente establecido el objeto de la simulación, el cliente y el desarrollador deben acordar lo más detalladamente posible los siguientes factores: - Los resultados que se esperan del simulador, - El plan de experimentación, - El tiempo disponible, - Las variables de interés, - El tipo de perturbaciones a estudiar, - El tratamiento estadístico de los resultados, - La complejidad de la interfaz del simulador, etc. 10 Se debe establecer si el simulador será operado por el usuario o si el usuario sólo recibirá los resultados. Finalmente, se debe establecer si el usuario solicita un trabajo de simulación o un trabajo de optimización.  Definición del Sistema: El sistema a simular debe estar perfectamente definido. El cliente y el desarrollador deben acordar dónde estará la frontera del sistema a estudiar y las interacciones con el medioambiente que serán consideradas.  Formulación del Modelo: Esta etapa es un arte y será discutida más adelante. La misma comienza con el desarrollo de un modelo simple que captura los aspectos relevantes del sistema real. Los aspectos relevantes del sistema real dependen de la formulación del problema; para un ingeniero de seguridad los aspectos relevantes de un automóvil son diferentes de los aspectos considerados por un ingeniero mecánico para el mismo sistema. Este modelo simple se irá enriqueciendo como resultado de varias iteraciones.  Colección de Datos: La naturaleza y cantidad de datos necesarios están determinadas por la formulación del problema y del modelo. Los datos pueden ser provistos por registros históricos, experimentos de laboratorios o mediciones realizadas en el sistema real. Los mismos deberán ser procesados adecuadamente para darles el formato exigido por el modelo.  Implementación del Modelo por Computadora: El modelo es implementado utilizando algún lenguaje de computación. Existen lenguajes específicos de simulación que facilitan esta tarea; también, existen programas que ya cuentan con modelos implementados para casos especiales.  Verificación: En esta etapa se comprueba que no se hayan cometidos errores durante la implementación del modelo. Para ello, se utilizan las herramientas de debugging provistas por el entorno de programación..  Validación: En esta etapa se comprueba la exactitud del modelo desarrollado. Esto se lleva a cabo comparando las predicciones del modelo con: mediciones realizadas en el sistema real, datos históricos o datos de sistemas similares. Como resultado de esta etapa puede 11 surgir la necesidad de modificar el modelo o recolectar datos adicionales.  Diseño de Experimentos: En esta etapa se decide las características de los experimentos a realizar: el tiempo de arranque, el tiempo de simulación y el número de simulaciones. No se debe incluir aquí la elaboración del conjunto de alternativas a probar para seleccionar la mejor, la elaboración de esta lista y su manejo es tarea de la optimización y no de la simulación. Debe quedar claro cuando se formula el problema si lo que el cliente desea es un estudio de simulación o de optimización.  Experimentación: En esta etapa se realizan las simulaciones de acuerdo al diseño previo. Los resultados obtenidos son debidamente recolectados y procesados  Interpretación: Se analiza la sensibilidad del modelo con respecto a los parámetros que tienen asociados la mayor incertidumbre. Si es necesario, se deberán recolectar datos adicionales para refinar la estimación de los parámetros críticos.  Implementación: Conviene acompañar al cliente en la etapa de implementación para evitar el mal manejo del simulador o el mal empleo de los resultados del mismo.  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. Esta documentación será de utilidad para el posterior perfeccionamiento del simulador. 12 1.1.8. EJEMPLOS DE MODELO DE SIMULACIÓN  Modelo de simulación del sistema de transporte  Público de pasajeros de gran Mendoza.  Indicadores de comportamiento.  Aplicación de la simulación para la optimización del acarreo de mineral  Simulación integral de atención al paciente  Simulación de gestión del conocimiento  Simulación de redes de agua  Simulación del comportamiento dinámico del vehículo 13 Sistemas y sus Componentes Sistema Entidades Atributos Actividades Eventos Variables de Estado Número de cajeros Estado de Llegadas, ocupados, Banco Clientes Depositar Cuentas Salidas Número de Clientes en espera Número de Llegada a una viajeros estación, Ferrocarril Viajeros Origen, Destino Viajar esperando Llegada a un en cada destino estación Rapidez, Capacidad, Estampar, Estado de las Producción Máquinas Descompostura Tasa de Soldar máquinas descompostura Mensajes en Tamaño, Recepción en el Comunicaciones Mensajes Transmisión espera a ser Destino destino transmitidos Nivel de inventario, Inventario Almacén Capacidad Disponer Demanda Demanda acumulada Modelo de simulación de un taller Un taller recibe ciertas piezas, las mismas que son acumuladas en un almacén temporal en donde esperan a ser procesadas. Esto ocurre cuando un operario transporta las piezas dl almacén a un torno. Desarrolle un modelo que incluya el número de piezas que hay en el almacén esperando a ser atendidas en todo momento, y el número de piezas procesadas en el torno Sistema: El sistema está conformado por el conjunto de elementos interrelacionados para el funcionamiento del proceso:  Piezas  Almacén temporal  El operario  El torno 14 Entidades: Las piezas, que representan los flujos de entrada al sistema. Estado del Sistema: en 1:10 min de simulación, se encuentran 9 piezas en almacén esperando a ser procesadas, el torno no está trabajando en ese momento, hay 4 piezas procesadas. Eventos: El tiempo de descanso del aperador, la salida de una pieza tras ser procesada etc. Localizaciones: El almacén donde deben llegar las piezas, el almacén donde se almacena las piezas procesadas. Recursos: Operario que transporta las piezas del almacén al torno. Atributos: Tamaño de las piezas. Variables: El número de piezas en el almacén y El número de piezas procesadas en el torno. Reloj de la Simulación: En este momento recorrió 1:10 min y continuará avanzando hasta terminar la simulación. 1.1.9. TOMA DE DECISIONES La teoría de decisiones abarca diferentes asignaturas y se manifiesta en todas las ramas de la ciencia. Se clasifican en:  Decisiones trascendentales  Decisiones triviales 1.1.10. CLASIFICACIÓN DE MODELOS DE LA INVESTIGACIÓN DE OPERACIONES Las técnicas de la IO son herramientas útiles para la toma de decisiones y entre ellas se encuentra la simulación de sistemas. El interés de la aplicación de esta herramienta consiste en incrementar la productividad y la calidad de los bienes y servicios que se producen en las organizaciones al optimizar los recursos Los modelos utilizados en la IO son eminentemente matemáticos y se clasifican de acuerdo a sus valores y características de sus variables en. Deterministas y estocásticos y cada uno de ellos a su vez en estáticos y dinámicos. 15 Modelos Deterministas: Las variables no se obtienen por medio del azar, son valores preestablecidos. Modelos Estocásticos: Al menos una de las características de operación está dada por la función de probabilidad, los valores de estas variables se obtienen al azar. Modelos Estáticos: Son aquellos que no toman en cuenta explícitamente a la variable tiempo. Modelos Dinámicos: Son los que tratan de la interacciones que varían con el tiempo. Modelos que se consideran propios de la IO:  Programación Lineal.  Programación no lineal.  Programación entera.  Programación binaria.  Programación de metas múltiples.  Redes de optimización.  Modelos de inventarios.  Líneas de espera.  Teoría de juegos.  Análisis de decisiones.  Cadenas de Markov.  Programación dinámica.  Simulación de sistemas. 1.1.11. PASOS PARA REALIZAR UN ESTUDIO DE SIMULACIÓN Definición del sistema bajo estudio - Conocer el sistema. - Definir las variables de decisión del modelo. - Determinar las interacciones entre las variables. - Establecer los alcances y limitaciones. - Establecer un modelo conceptual. 16 Generación del modelo de simulación base - General un modelo de simulación básico. - Conforme se va avanzando el modelo base se puede ir incluyendo las variables aleatorias del sistema con sus respectivas distribuciones de probabilidad asociadas. Recolección y análisis de datos para todas las variables del modelo. - Comenzar la recopilación de la información estadística de las variables aleatorias del modelo. - Determinar qué información es útil para la determinación de las distribuciones de probabilidad asociadas a cada uno de las variables aleatorias innecesarias para la simulación. - Si no se cuenta con la información necesaria, será necesario realizar un estudio estadístico. Generación de modelo preliminar - Integrar la información obtenida a partir del análisis de los datos. - Determinar las constantes que permitan realizar el modelo. - Finalizar el modelo para su primera prueba. Verificación del modelo - Verificar los datos. - Comprobar la propiedad de la programación del modelo. - Comprobar que todos los parámetros usados en la simulación funcionen correctamente. Validación del modelo - Realizar varias pruebas del mismo. - Utilizar información real de entrada para observar su comportamiento y analizar sus resultados. - Utilizar algunos escenarios sugeridos por el cliente y validar que el comportamiento sea congruente. 17 Generación del modelo final - Una vez validado el modelo, el analista está listo para realizar la simulación y estudiar el comportamiento del proceso. Determinación de los escenarios para el análisis - Tras validar el modelo es necesario recordar con el cliente los escenarios que se quiere analizar. - Analizar escenarios pesimistas, optimistas y un intermedio. - Realizar varias réplicas. Análisis de sensibilidad - Con los resultados de los escenarios importantes realizar pruebas estadísticas que permitan comparar los escenarios con los mejores resultados finales. - Si dos de ellos tienen resultados similares, comparar sus intervalos de confianza. Documentación del modelo, sugerencias y conclusiones - Documentar todo el modelo incluyendo conclusiones y sugerencias. 18 1.2.EL MÉTODO DE MONTE CARLO Se considera la técnica estadística más usada en la simulación por ser usada para problemas que tienen una base estocástica o probabilística. Los problemas a resolver son dos:  Problemas que implican algún tipo de proceso estocástico. Ejemplo: La demanda del consumidor y la prioridad en la producción e inversión total para la expansión de plantas industriales.  Problemas matemáticos completamente determinísticos que no pueden resolverse fácilmente por métodos estrictamente determinísticos Ejemplo: Evaluar integrales. 19 En este curso nos dedicamos al caso probabilístico Descripción del método Monte Carlo  Identificar el experimento o sistema a similar.  Identificar el espacio muestral.  Definir la función de probabilidad.  Construir la función acumulada de probabilidad.  Calcular y construir la tabla de la transformación inversa de la función acumulada de probabilidad.  Generar un número aleatorio y ubicarlo en la tabla de transformada inversa para simular un valor específico de la variable aleatoria. Requerimientos de un modelo de Simulación  Definición del sistema con sus variables, parámetros, funciones de probabilidad, relaciones funcionales y medidas de efectividad.  Definición del estado del sistema.  La identificación de los posibles estados del sistema y sus componentes que pueden ocurrir.  La previsión de los posibles eventos que pueden cambiar el estado del sistema  La disponibilidad de un mecanismo que mida el transcurso del tiempo de simulación.  Procedimientos para la generación aleatoria de los diversos eventos.  Las relaciones lógicas que enlazarán transiciones de estado que son generadas por los diversos eventos que ocurren. 1.2.1. APLICACIONES DE LA SIMULACIÓN Algunas áreas donde se usa la simulación:  Procesos de manufacturas: Ayuda a detectar cuellos de botellas, a distribuir personal, determinar la política de producción. 20  Plantas industriales: Brinda información para establecer las condiciones óptimas de operación, y para la elaboración de procedimientos de operación y de emergencias.  Sistemas públicos: Predice la demanda de energía durante las diferentes épocas del año, anticipa el comportamiento del clima, predice la forma de propagación de enfermedades.  Sistemas de transportes: Detecta zonas de posible congestionamiento, zonas con mayor riesgo de accidentes, predice la demanda para cada hora del día.  Construcción: Predice el efecto de los vientos y temblores sobre la estabilidad de los edificios, provee información sobre las condiciones de iluminación y condiciones ambientales en el interior de los mismos, detecta las partes de las estructuras que deben ser reforzadas.  Diseño: Permite la selección adecuada de materiales y formas. Posibilita estudiar la sensibilidad del diseño con respecto a parámetros no controlables.  Educación: Es una excelente herramienta para ayudar a comprender un sistema real debido a que puede expandir, comprimir o detener el tiempo, y además es capaz de brindar información sobre variables que no pueden ser medidas en el sistema real.  Capacitación: Dado que el riesgo y los costos son casi nulos, una persona puede utilizar el simulador para aprender por sí misma utilizando el método más natural para aprender: el de prueba y error. 21 Impacto de la Simulación en algunos Trabajos  La Perestroyka: Estudios de simulación efectuados en Rusia en las décadas del 70 y 80 convencieron a los dirigentes de la necesidad de plantear un fuerte cambio en la economía de ese país.  La caída de la bolsa de New York en 1988: La utilización de programas de simulación por parte de los corredores de la bolsa causó una falsa inestabilidad que provocó la caída.  El regreso del Apolo 13: La simulación jugó un rol fundamental en la determinación del plan de emergencia. La nave retornó con éxito a pesar de las graves averías.  Los Voyagers: Gracias a la simulación se pudieron establecer los itinerarios óptimos para estas naves con un mínimo consumo de energía aprovechando la atracción gravitacional de los planetas.  Proyecto Monte Carlo: Von Newman y Ulam (1945) emplearon simulación para estudiar reacciones nucleares.  Los modelos del planeta: Algunos plantean la posibilidad de un calentamiento global debido al efecto invernadero. Otros plantean la posibilidad de un enfriamiento y predicen una nueva era glaciar.  Capacitación de tropas: En el operativo “Tormenta del desierto” llevado a cabo en la guerra contra Irak, las tropas de todas las fuerzas estadounidenses que participaron (fuerza aérea, marina y ejército) fueron entrenadas con simuladores.  Capacitación de policías: Se utiliza entornos virtuales para que el policía aprenda a conducirse en situaciones de riesgo. 22  Simuladores de vuelos: Fue una de las primeras aplicaciones de los simuladores. Actualmente se utilizan para entrenar pilotos de aviones comerciales y de combate. 1.2.2. EL SIMULADOR POR COMPUTADORA Este curso se centrará en la simulación por computadoras. Un simulador por computadora está compuesto por las siguientes partes:  Un modelo: Es un modelo simbólico. Puede ser un conjunto de ecuaciones, reglas lógicas o un modelo estadístico.  El evaluador: Es el conjunto de procedimientos que procesarán el modelo para obtener los resultados de la simulación. Puede contener rutinas para la resolución de sistemas de ecuaciones, generadores de números aleatorios, rutinas estadísticas, etc.  La interfaz: Es la parte dedicada a interactuar con el usuario, recibe las acciones del mismo y presenta los resultados de la simulación en una forma adecuada. Esta unidad puede ser tan compleja como la cabina utilizada en los simuladores de vuelos profesionales. 1.2.3. RESOLUCIÓN ANALÍTICA VS SIMULACIÓN Algunos modelos simbólicos pueden resolverse analíticamente. La ventaja de una solución analítica es que da una visión integral sobre la conducta del sistema. Variando sus parámetros es posible identificar fácilmente cambios importantes en el comportamiento, detectar puntos críticos y sacar conclusiones generales para el tipo de sistema analizado. Por ejemplo, la solución analítica del movimiento pendular permite concluir que el periodo (T) de cualquier péndulo es independiente de la posición inicial, pero depende de la longitud (l) del mismo: 23 l T  g En el caso del movimiento de un resorte, variando el coeficiente de fricción se puede identificar dos tipos de respuestas características: La oscilatoria (con fricción nula) y la oscilatoria amortiguada (con fricción no nula). Cuando se desea calcular las raíces del polinomio cuadrático P( x)  ax 2  bx  c se dispone de la siguiente solución analítica b  b2  4ac x1,2  2a Esta solución analítica permite calcular fácilmente las nuevas raíces cuando se varían los coeficientes del polinomio. También, es claro que habrá problemas cuando el argumento de la raíz cuadrada se haga negativo. Sin embargo, no siempre es posible obtener una solución analítica, ya sea por la naturaleza del modelo o de los experimentos que se desean realizar. En este caso, el modelo deberá ser tratado por algún tipo de método numérico. Esto es, el modelo será resuelto para un caso particular, y la solución será un número, un vector o una matriz; pero no se tendrá una función analítica. Debido a esto, el análisis de los resultados es más complejo que el requerido por una solución analítica. A continuación se da un ejemplo utilizando la simulación de Monte Carlo. Simulación de Monte Carlo La simulación de Monte Carlo es un método que emplea números aleatorios uniformemente distribuidos en el intervalo 0,1 que es utilizado para resolver problemas donde la evolución con el tiempo no es de importancia. A continuación, se analizarán dos ejemplos para comparar una solución analítica con una solución obtenida por simulación. 24 Determinación del área de una figura Cuando se desea calcular el área de un círculo de radio r  10cm. no existen mayores problemas, ya que tanto el área a como su perímetro p pueden evaluarse analíticamente con las siguientes fórmulas: a   r2 p  2 r En este caso la solución es a  314.16 cm 2 y p  62.83 cm Sin embargo, cuando se desea determinar el área de una forma irregular, por ejemplo la superficie plana de Perú, el problema debe necesariamente ser resuelto con un método numérico; es decir, simulación. La determinación del área del círculo utilizando la simulación de Monte Carlo implica la siguiente secuencia:  Crear un cuadrado de lado 2r que encierre al círculo.  Colocar n puntos al azar dentro del cuadrado.  Asignar a c el número de puntos que quedaron dentro del círculo.  Como la probabilidad de colocar un punto dentro del círculo es igual al cociente del área del círculo dividida el área del cuadrado, el área del círculo se puede estimar en función del área del cuadrado (fácilmente calculable) con: c c acirculo  acuadrado  (4r 2 ) n n 25 Es importante notar que para un dado n, el resultado será distinto cada vez que se realice la simulación. Es decir, que el resultado será un número aleatorio. A medida que n aumente, la varianza del resultado disminuirá y el valor medio se aproximará a la solución analítica. Para un n  100 , el resultado de una simulación es 320 cm 2 ; mientras que para n  10000 , un resultado es 313 cm 2 . El mismo principio se puede aplicar para figuras complejas o irregulares, conociendo la escala, se puede fijar un cuadrado arbitrario y calcular el área. Sin embargo, la determinación del perímetro de la figura es un problema de mayor magnitud para el cual se necesita recurrir a la teoría de fractales. Evaluación de Integrales Suponga que se desea evaluar la siguiente integral que no tiene solución analítica: b I   g ( x)dx a Si bien para este caso en particular existen mejores métodos para hacerlo, cuando se deben resolver integrales múltiples con integrandos mal condicionados la simulación de Monte Carlo puede ser una buena alternativa. Suponga que x es un número aleatorio con distribución uniforme continua en el intervalo  a, b , f x  es la correspondiente función de densidad de probabilidad que es igual a 1 ; entonces, el número y  g x  es también ba un número aleatorio cuyo valor medio ( E y  o  y  ) está dado por: b b 1 1 b I E( y )   g ( x ) f ( x ) dx   g ( x ) dx   g ( x ) dx  a a ba ba a ba Por lo tanto: I  (b  a) E( y ) 26 Sin embargo, E y  no es conocido; sólo puede ser estimado con el promedio de una muestra, por el mismo motivo I sólo puede ser estimado por el número aleatorio y se calcula de la siguiente manera: n n  yi g ( xi ) Y  (b  a) i 1  (b  a) i 1 n n (b  a)Var( y ) Note que E( y )  1... y...Var( y )  n Dónde: Var (o y ) es la varianza de y x 2 Ejemplo 1:  Hallar la siguiente Integral I  sen( x )dx  0 Solución Analítica: n n  yi g ( xi ) Y  (b  a) i 1  (b  a) i 1 n n  I   sen( x)dx 0     cos       cos  0    0     1     1   2 Solución por Montecarlo: n 10 20 40 80 160 320 y 2.213 1.951 1.948 1.989 1.993 ¿? 27 Modelo de simulación de 5 lanzamientos de un dado Analizar los datos simulados, calcular: el valor promedio, varianza; construir un histograma de frecuencias relativas y efectuar una prueba de bondad de ajuste. Resolver haciendo uso de los números aleatorios disponibles en una calculadora o una tabla. Variables de Sistema Entidades Atributos Actividades Eventos Estado Lanzamiento de Reposo, Número de Dado caras lanzar un Dado lanzamiento Lanzamientos Entidades: El dado puede estar en reposo o lanzamiento. Actividad: Lanzamiento del dado. Variable Endógena: Es el generador y lanzador. Variable Exógena: Es la variable aleatoria que representa la cantidad de puntos que muestra el dado. Función de Probabilidad: es la uniforme discreta con parámetros valor medio 1/6. Reloj Simulador: Se incrementa en una unidad cada vez que se efectúa el lanzamiento. Variable aleatoria: X = (1, 2, 3, 4, 5, 6) Generación de números aleatorios Lanzamiento RND RND*6 INT(RND*6) INT(RND*6)+1 1 0.382 2.295 2.0 3.0 2 0.636 3.816 3.0 4.0 3 0.969 5.815 5.0 6.0 4 0.659 3.956 3.0 4.0 5 0.299 1.794 1.0 2.0 28 Aplicación del método de Monte Carlo Haciendo uso de la función de distribución de probabilidad (f.d.p) del experimento. Como el dado se ha supuesto legal, entonces tenemos: f x   1 para toda x  X 6 Por ejemplo, si el número aleatorio obtenido es 0.592 , observamos que se encuentra en el intervalo  3 / 6, 4 / 6   0.500, 0.667  . Lo que indica que el dado muestra x  4 puntos. Tabla: Transformada Inversa Rango Caras 0 <RND <= 1/6 X=1 punto 1/6 < RND <= 2/6 X=2 puntos 2/6 < RND <= 3/6 X=3 puntos 3/6 < RND <= 4/6 X=4 puntos 4/6 < RND <= 5/6 X=5 puntos 5/6 < RND <= 6/6 X=6 puntos 29 Modelo de Simulación de Consultas en una Empresa Se cuenta con los datos históricos de 200 días sobre el número de consultas diarias realizadas en un sistema de información empresarial (EIS) residente en un servidor central. La tabla siguiente incluye el número de consultas diarias (0 a 5) junto con las frecuencias absolutas, frecuencias relativas, y las frecuencias relativas acumuladas. Deseamos conocer el número esperado de consultas por día mediante la teoría de la probabilidad y la Simulación de Monte Carlo Cant. Frecuencia Frecuencia Frecuencia Consultas Absoluta Relativa Relativa EIS Días días/200 Acumulada 0.00 10 0.05 0.05 1.00 20 0.10 0.15 2.00 40 0.20 0.35 3.00 60 0.30 0.65 4.00 40 0.20 0.85 5.00 30 0.15 1.00 Total 200 1.00 Mediante la teoría de la Probabilidad, el Nº esperado de Consulta por día p x   P X  x  n E x   xi p x  i 0 x 0 1 2 3 4 5 P(x) 10/200 20/200 40/200 60/200 40/200 30/200 x.P(x) 0 x 0.05 1 x 0.10 2 x 0.20 3 x 0.30 4 x 0.20 5 x 0.15 0 0.1 0.4 0.9 0.8 0.75 30 5 E x   xi p x   0(0.05)  1(0.10)  2(0.20)  3(0.30)  4(0.20)  5(0.15)  2.95 i 0 Cuando se conoce la distribución de probabilidad asociada a una variable discreta, es posible usar la columna de frecuencias relativas acumuladas para obtener los llamados intervalos de números aleatorios asociados a cada suceso. En este caso, los intervalos obtenidos son: Rango Consultas 0 < RND <= 0.05 X=0 0.05 < RND <= 0.15 X=1 0.15 < RND <= 0.35 X=2 0.35 < RND <= 0.65 X=3 0.65 < RND <= 0.85 X=4 0.85 < RND <= 1.00 X=5 31 MODELO DE SIMULACIÓN DE UN ALMACÉN INFORMÁTICO Supongamos que trabajamos en un gran almacén informático, y que nos piden consejo para decidir sobre el número de licencias de un determina sistema operativo que conviene adquirir – las licencias se suministran con los ordenadores que se vendan durante el próximo trimestre, y es lógico pensar que en pocos meses habrá un nuevo sistema operativo en el mercado de características superiores. Cada licencia de sistema operativo la cuesta al almacén un total de 75 Euros, mientras que el precio al que la vende es de 100 Euros. Cuando salga al mercado la nueva versión del sistema operativo, el almacén podrá devolver al distribuidor las licencias sobrantes, obteniendo un total de 25 euros por cada una. Basándose en los datos históricos de los últimos meses, los responsables del almacén han sido capaces de determinar la siguiente distribución de probabilidades por lo que las ventas de licencias del nuevo sistema operativo refiere Extremo Extremo Cantidad Probabilidad Probabilidad inferior del superior del de licencias Acumulada intervalo intervalo 100 0.30 0.30 0.00 0.30 150 0.20 0.50 0.30 0,50 200 0.30 0.80 0,50 0.80 250 0.15 0.95 0.80 0.95 300 0.05 1.00 0.95 1.00 Mediante la simulación de Monte Carlo, deseamos conocer el pedido de unidades para conseguir el máximo beneficio. Solución Analítica E x  100  0.3  150  0.2   200  0.3  250  0.15   300  0.05   172.5 32 Licencias Compradas 150 200 Licencias vendidas 150 172 Beneficio por Lic. Vendidas S/. 15,000.00 S/. 17,200.00 Licencias devueltas 0 28 Beneficio por Lic. Devueltas S/. 0.00 S/. 700.00 Costo S/. 11,250.00 S/. 15,000.00 Beneficio Final S/. 3,750.00 S/. 2,900.00 Por lo tanto se recomienda comprar 150 Licencias. IDENTIFICACIÓN DEL SISTEMA Variables Sistema Entidad Atributos Actividades Eventos de estado Precio N° licencias Venta, Comprar, vendidas, Compra, Almacén Licencia de Precio vender, N° licencias venta, Informático Software Compra, devolver compradas, devolución Precio N° licencias Devolución devueltas Variable Endógena: Encargado almacén. Variable Exógena: Demanda. Función de Probabilidad. x 0 1 2 3 4 f(x) 0.3 0.2 0.3 0.15 0.05 0.3 F(x) 0.05 0.15 0.35 0.65 0.85 0.05 33 Reloj Simulador: Tiempo entre compra y devolución de una licencia o trimestre. Variable aleatoria: N° de licencias compradas = {100, 150, 200, 250, 300}. Por lo tanto se recomienda comprar 150 Licencias. 34 2. NÚMEROS Y VARIABLES ALEATORIAS 35 36 2.1.LOS NUMEROS PSEUDO ALEATORIOS 2.1.1. NÚMEROS PSEUDO – ALEATORIOS Para poder realizar una simulación que incluya variabilidad dentro de sus eventos, es preciso generar una serie de números que sean aleatorios por si mismos. Una de las primeras tareas que es necesario llevar a cabo consiste en determinar si los números que utilizaremos para ejecutar la simulación son realmente aleatorios o no. Para lograr números completamente aleatorio con absoluta certidumbre resulta muy complicado ya que para ello tendríamos que generar un número infinito de valores que nos permita comprobar la inexistencia de correlaciones entre ellos. Pero podemos asegurar con altos niveles de confiabilidad que el conjunto de números que utilizaremos en una simulación se comporta de manera muy similar al conjunto de números totalmente aleatorios. Por eso es que se les denomina números pseudo aleatorios. 2.1.2. GENERACIÓN DE NÚMEROS PSEUDO – ALEATORIOS Para realizar una simulación se requiere números aleatorios en el intervalo (0,1) a los cuales se hará referencia como ri , es decir ri  r1 , r2 , r3 ,  , rn  que contiene n números todos ellos diferentes, donde n es el periodo o ciclo de vida del generador que creó la secuencia ri . Los ri se usan para generar el comportamiento de variables aleatorias tanto Continuas como Discretas, los ri se generan por medio de algoritmos determinísticos que requieren parámetros de arranque. Por ejemplo para simular el tiempo de atención en 5 días a clientes de un banco que tiene 5 cajeros en paralelo, cada uno de los cuales atiende 37 aproximadamente 50 clientes diarios y solamente considerando una sola variable; se requiere 2500 números pseudo aleatorios. Para generar un conjunto de ri tienes que diseñar tu propio algoritmo de generación, lo que resulta difícil es diseñar ese algoritmo que genere un conjunto de ri grande y que además pase sin problema las pruebas de uniformidad e independencia. Como:  Uniformemente distribuido.  Sean discretos en lugar de continuos.  La media del conjunto no sea muy alta o muy baja, es decir que esté por arriba o por debajo de 1 2.  La varianza no sea muy alta o muy baja, es decir, que se localice por arriba o por debajo de 1 12 . A continuación presentamos algoritmos no congruenciales y congruenciales para generar números pseudo aleatorios. Algoritmos no congruenciales  Algoritmo de cuadrados medios.  Algoritmo de productos medios.  Algoritmo de multiplicador constante. Algoritmos congruenciales  Algoritmo lineal.  Algoritmo congruencial multiplicativo.  Algoritmo congruencial aditivo.  Algoritmo congruencial aditivo. Algoritmos congruenciales no lineales  Algoritmo congruencial cuadrático.  Algoritmo de Blum, Blum y Shub. 38 2.2.ALGORITMOS NO CONGRUENCIALES 2.2.1. ALGORITMO DE CUADRADOS MEDIOS Este algoritmo no congruencial fue propuesto en la década de los cuarenta del siglo xx por Von Neumann y Metrópolis. Requiere un número entero detonador (llamado semilla) con D dígitos, el cual es elevado al cuadrado para seleccionar del resultado los D dígitos del centro; el primer número ri se determina simplemente anteponiendo el "0."a esos dígitos. Para obtener el segundo ri se sigue el mismo procedimiento, sólo que ahora se elevan al cuadrado los D dígitos del centro que se seleccionaron para obtener el primer ri . Este método se repite hasta obtener n números ri . A continuación se presentan con más detalle los pasos para generar números con el algoritmo de cuadrados medios.  Seleccionar una semilla x0 con D dígitos  D  3 .  Sea x0  resultado de elevar x0 al cuadrado; sea x1  los D dígitos del centro, y sea ri  0.D dígitos del centro.  Sea yi  resultado de elevar xi al cuadrado; sea xi 1 los D dígitosdel centro, y sea ri  0.D dígitos del centro para toda i  1, 2,3,..., n .  Repetir el paso 3 hasta obtener los n números ri deseados. Nota: Si no es posible obtener los D dígitos del centro del número yi , agregue ceros a la izquierda del número yi . Para ilustrar la mecánica del algoritmo de cuadrados medios se presenta el siguiente ejemplo: Generar los 5 primeros números ri a partir de una semilla x0  5735 , donde se puede observar que D  4 dígitos. 39 y0  (5735) 2  32890225 x1  8902 r1  0.8902 y1  (8902)  79245604 2 x2  2456 r2  0.2456 y2  (2456)  0603193 2 x3  0319 r3  0.0319 y3  (0319)  101761 2 x4  0176 r4  0.0176 y4  (0176)  030976 2 x5  3097 r5  0.3097 2.2.2. ALGORITMO DE PRODUCTOS MEDIOS La mecánica de generación de números pseudo aleatorios de este algoritmo no congruencial es similar a la del algoritmo de cuadrados medios. La diferencia entre ambos radica en que el algoritmo de productos medios requiere dos semillas, ambas con D dígitos; además, en lugar de elevarlas al cuadrado, las semillas se multiplican y del producto se seleccionan los D dígitos del centro, los cuales formarán el primer número pseudo aleatorio ri  0.D dígitos. Después se elimina una semilla,y la otra se multiplica por el primer número de D dígitos, para luego seleccionar del producto los D dígitos que conformarán un segundo número ri . Entonces se elimina la segunda semilla y se multiplican el primer número de D dígitos por el segundo número de D dígitos; del producto se obtiene el tercer número ri . Siempre se irá eliminando el número más antiguo, y el procedimiento se repetirá hasta generar los n números pseudo aleatorios. A continuación se presentan con más detalle los pasos del método para generar números con el algoritmo de producto medios.  Seleccionar una semilla x0 con D dígitos  D  3 .  Seleccionar una semilla x1 con D dígitos  D  3 .  Sea y0  x0 .x1 ; sea x2  los D dígitos del centro, y sea ri  0.D dígitos del centro.  Sea yi  xi .xi 1 ; sea xi  2  los D dígitos del centro, y sea ri 1  0.D dígitos del centro para toda i  1, 2,3,..., n .  Repetir el paso 4 hasta obtener los n números ri deseados. Nota: Si no es posible obtener los D dígitos del centro del número agregue ceros a la izquierda del número yi . 40 Ejemplo: Generar los 5 primeros números ri a partir de una semilla x0  5015 y x1  5734 , donde se puede observar que ambas semillas tienen D  4 dígitos. r0   5 015  5 734   28756 010 x2  7 560 r1  0.7560 r1   5 734  7 560   43349 040 x3  3 490 r2  0.3490 r2   7 560  3 490   26384 400 x4  3 844 r3  0.3844 r3   3 490  3 844   13415560 xs  4 155 r4  0.4155 r4   3 844  4 155   15971820 x6  9 718 r5  0.9718 2.2.3. ALGORITMO DE MULTIPLICADOR CONSTANTE Este algoritmo no congruencia! es similar al algoritmo de productos medios. Los siguientes son los pasos necesarios para generar números pseudo aleatorios con el algoritmo de multiplicador constante.  Seleccionar una semilla x0 con D dígitos  D  3  Seleccionar una constante a con D dígitos  D  3  Sea y0  a.x0 ; sea x1  los D dígitos del centro, y sea ri  0.D dígitos del centro.  Sea yi  a.xi 1 ; sea xi 1  los D dígitos del centro, y sea ri 1  0.D dígitos del centro para toda i  1, 2,3,..., n .  Repetir el paso 4 hasta obtener los n números ri deseados. Nota: Si no es posible obtener los D dígitos de! centro de! número yi , agregue ceros a la izquierda del número yi . Ejemplo: Generar los 5 primeros números ri a partir de una semilla x0  9803 y con una constante a  6965 , donde se puede observar que tanto la semilla como la constante tienen D  4 dígitos. 41 y0 =  6 965  9 803 = 68 277 895 x1  2 778 r1  0.2778 y1 =  6 965  2 778  = 19 348 770 x2  3 487 r2  0.3487 y 2 =  6 965  3 487  = 24 286 955 x3  2 869 r3  0.2869 y 4 =  6 965  2 869  = 19 982 585 x4  9 825 r4  0.9825 y5 =  6 965  9 825  = 68 431 125 x5  4 311 r5  0.4311 2.3.ALGORITMOS CONGRUENCIALES 2.3.1. ALGORITMO LINEAL Este algoritmo congruencial fue propuesto por D. H. Lehmer en 1951. Según Law y Kelton, este algoritmo ha sido el más usado. El algoritmo congruencial lineal genera una secuencia de números enteros por medio de la siguiente ecuación recursiva: xI 1   a.xi  c  mod  m i  0,1, 2,3..., n Donde x0 es la semilla, a es la constante multiplicativa, c es una constante aditiva y m es el módulo; x0  0 , a  0 , c  0 y m  0 deben ser números enteros. La operación mod  m  significa multiplicar xi por a , sumar c y dividir el resultado entre m para obtener el residuo xi 1 .Es importante señalar que la ecuación recursiva del algoritmo congruencial lineal genera una secuencia de números enteros S  0,1, 2,3, ..., m  1 y que para obtener números pseudo aleatorios en el intervalo  0,1 se requiere la siguiente ecuación: x ri  i  1, 2,3,..., n m 1 Analice el ejemplo siguiente para comprender mejor la mecánica del algoritmo congruencial lineal. 42 Ejemplo: Generar los 4 primeros números ri con los siguientes parámetros: x0  37 , a  19 , c  33 , y m  100 . x1 = 19.37+33 mod 100  = 36 r1 = 36/99 = 0.3636 x 2 = 19.36+33 mod 100  = 17 r2 = 17/99 = 0.1717 x 3 = 19.17+33 mod 100  = 56 r3 = 56/99 = 0.5656 x 4 = 19.56+33 mod 100  = 97 r4 = 97/99 = 0.9797 En el ejemplo anterior se colocaron de manera arbitraria cachi uno de los parámetros requeridos: x0 , a, c, m. Sin embargo, para que el algoritmo sea capaz de lograr el máximo periodo de vida n , es preciso que dichos parámetros cumplan ciertas condiciones. Banks, Carson, Nelson y Nicol sugieren lo siguiente: m  2 a  1  4k k debe ser entero c relativamente primo a m g debe ser entero Bajo estas condiciones se obtiene un periodo de vida máximo: n  m  2 g . Veamos un ejemplo más, tomando en cuenta lo anterior. Ejemplo: Generar números pseudo-aleatorios con los parámetros x0  6, k  3, g  3 y c  7 hasta encontrar el periodo de vida máximo n . 43 a  1  4  3  13 y m=23  8 x0  6 x1  13  6  7  mod  8   5 r1 =5/7 = 0.714 x2  13  5  7  mod  8   0 r2 =0/7 = 0.000 x3  13  0  7  mod  8   7 r3 =7/7 = 1.000 x4  13  7  7  mod  8   2 r4 =2/7 = 0.285 x5  13  2  7  mod  8   1 r5 =1/7 = 0.142 x6  13 1  7  mod  8   4 r6 =4/7 = 0.571 x7  13  4  7  mod  8   3 r7 =3/7 = 0.428 x8  13  3  7  mod  8   6 r8 =6/7 = 0.857 Como podemos ver se logra el periodo máximo n  m  8 Consideremos el ejemplo anterior violando las reglas de los parámetros. Con a  12, x0  6, k  3, g  3 y c  7 . x0  6 x1  12  6  7  mod  8   7 r1 =7/7 = 1.000 x2  12  7  7  mod  8   3 r2 =3/7 = 0.428 x3  12  3  7  mod  8   3 r3 =3/7 = 0.428 Como podemos ver no se logra el periodo máximo n  m  8 solo tenemos n  3 2.3.2. ALGORITMO CONGRUENCIAL MULTIPLICATIVO El algoritmo congruencial multiplicativo surge del algoritmo congruencial lineal cuando c = 0. Entonces la ecuación recursiva es: xi 1   a.xi  mod  m i  0,1, 2,3..., n En comparación con el algoritmo congruencial lineal, la ventaja del algoritmo multiplicativo es que implica una operación menos a realizar. Los parámetros de arranque de este algoritmo son x 0 , a y m, todos los cuales deben ser números 44 enteros y mayores que cero. Para transformar los números x1 en el intervalo  0,1 se usa la ecuación ri  xi  m 1 . De acuerdo con Banks, Carson, Nelson y Nicol, las condiciones que deben cumplir los parámetros para que el algoritmo congruencial multiplicativo alcance su máximo periodo son: m  2 a  3  8k o a  5  8k k  0,1, 2,3,... x0 debe ser un número impar g debe ser entero A partir de estas condiciones se logra un periodo de vida máximo n  k 4  2 g 2 Ejemplo: Generar números pseudo-aleatorios con los parámetros x0  17, k  2 y g  5 hasta encontrar el periodo de vida máximo n . a  5  8  2   21 y m  32 x0  17 x1   2117  mod  32   5 r1  5 31  0.1612  x8   2113 mod  32   17 r8  17 31  0.5483 Como podemos ver no se logra el periodo máximo n  m  8 2.3.3. ALGORITMO CONGRUENCIAL ADITIVO Este algoritmo requiere una secuencia previa de n números x1 , x2 , x3 ,..., x n para generar una nueva secuencia de números enteros que empieza en xn1 , xn 2 , xn3 ,... Su ecuación recursiva es: xi   xi1  xin  mod  m i  n  1, n  2, n  3,..., N Los números ri pueden ser generados mediante la ecuación ri  xi m  1 45 Ejemplo: Generar 7 números pseudo aleatorios entre cero y uno a partir de la siguiente secuencia de números enteros: 65, 89, 98, 03, 69 ; con m  100 m  100 x1  65, x2  89, x3  98, x4  03, x5  69, Generar x6 , x7 , x8 , x9 , x10 , x11 , x12 Para generar r1 , r2 , r3 , r4 , r5 , r6 , r7 x6   x5  x1  mod 100    60  65  mod 100   34 r1  34 99  0.3434 x7   x6  x2  mod 100    24  89  mod 100   23 r2  23 99  0.2323 x8   x7  x3  mod 100    23  98  mod 100   21 r1  21 99  0.2121 x9   x8  x4  mod 100    21  03 mod 100   24 r1  24 99  0.2424 x10   x9  x5  mod 100    24  69  mod 100   93 r1  93 99  0.9393 x11   x10  x6  mod 100    93  34  mod 100   27 r1  27 99  0.2727 x12   x11  x7  mod 100    27  23 mod 100   50 r1  50 99  0.5050 2.4.ALGORITMOS CONGRUENCIALES NO LINEALES 2.4.1. ALGORITMO CONGRUENCIAL CUADRÁTICO Este algoritmo tiene la siguiente ecuación recursiva: xi1   axi2  bxi  c  mod  m  i  0,1, 2,3,..., N En este caso, los números ri pueden ser generados con la ecuación ri  xi  m 1. De acuerdo con L'Ecuyer, las condiciones que deben cumplir los parámetros m, a, b y c para alcanzar un periodo máximo de N  m son: m  2g a debe ser un número par c debe ser un número impar g debe ser entero  b  1 mod  4   1 46 De esta manera se logra un periodo de vida máximo N  m . Ejemplo: Generar números pseudo aleatorios considerando los siguientes parámetros x0  13, m  8, a  26, b  27, y c  27 verificar si cumplen los parámetros las condiciones para el periodo máximo N  m  8 x1   26 132  27 13  27  mod  8   4 x2   26  42  27  4  27  mod  8   7 x3   26  7 2  27  7  27  mod 8   2 x4   26  22 ´27  2  27  mod  8   1 x5   26 12  27 1  27  mod  8   0 x6   26  02  27  0  27  mod  8   3 x7 =  26  32  27  3  27  mod 8   6 x8   26  62  27  6 4  27  mod 8   5 x9 =  26  52  27  5  27  mod 8   4 2.4.2. ALGORITMO DE BLUM, BLUM Y SHUB Si en el algoritmo congruencial cuadrático a  1, b  0 y c  0, entonces se construye una nueva ecuación recursiva: xi1  x2 mod  m i  0,1,2,3,..., n La ecuación anterior fue propuesta por Blum, Blum y Shub como un nuevo método para generar números que no tienen un comportamiento predecible. 2.5.PROPIEDADES DE LOS NÚMEROS PSEUDO - ALEATORIOS Los números aleatorios generados serán utilizados en la simulación, es por ello que debemos de conocer las propiedades que deben tener estos números aleatorios para garantizar una buena simulación. 47  El valor esperado de la media debe ser igual a 0.5 .  Deben tener una varianza de 1 12 .  La principal característica es q deben ser uniformes.  Deben sr Independientes. 2.5.1. PRUEBA DE MEDIAS El conjunto de números ri debe cumplir que el valor esperado sea igual a 0.5 para lo cual se plantean las siguientes hipótesis: H o :  ri  1 2 H1 :  ri  1 2 Las Pruebas de Medias consiste en determinar el promedio de los “n” números que contiene el conjunto ri, mediante la siguiente ecuación: 1 n r  ri n i 1 Luego se calculan los límites de aceptación inferior y superior con las siguientes ecuaciones: 1  1  LI r   z 2   2  12n  1  1  LS r   z 2   2  12n  Si el valor r se encuentra entre los límites de aceptación entonces:  No se rechaza el conjunto ri  Tienes un Valor Esperado de µ  0.5  Con un Nivel de aceptación de 1 – alpha 48 Caso contrario se rechaza el conjunto ri . Ejemplo: Considere los 40 números del conjunto ri, y determine si tienen un Valor Esperado de 1/2 con un Nivel de Aceptación de 95%. 0.0449 0.1733 0.5746 0.049 0.8406 0.8349 0.92 0.2564 0.6015 0.6694 0.3972 0.7025 0.1055 0.1247 0.1977 0.0125 0.63 0.2531 0.8297 0.6483 0.6972 0.9582 0.9085 0.8524 0.5514 0.0316 0.3587 0.7041 0.5915 0.2523 0.2545 0.3044 0.0207 0.1067 0.3587 0.1746 0.3362 0.1589 0.3727 0.4145 El conjunto ri contiene 40 números pseudo aleatorios, por lo tanto r = 40 con un nivel de aceptación del 95%, por lo tantoAlpha = 5% Calculamos el Promedio de los números aleatorios 1 n 1 40 r  n i1 ri   ri 40 i1 1 0.04487  0.17328  0.57548  0.04901  ... r  0.43250 40 ...  0.33616  0.15885  0.37266  0.41453 1  1  1  1  LI r   z 2     z   2  12n  2 0.05 2  12  40     1  1    1.96     0.410638649 2  12  40     1  1  1  1  LS r   z 2     z   2  12n  2 0.05 2  12  40     1  1    1.96     0.589461351 2  12  40     Como el valor Promedio r  0.43250 se encuentra entre los Límites de aceptación, se concluye que no se puede rechazar el conjunto ri . 49 2.5.2. PRUEBA DE VARIANZA Otra de las propiedades que debe satisfacer el conjunto de números ri es que sus números tengan una varianza de 1/12, que establece las siguientes hipótesis: H o :  ri  1 12 H1 :  ri  1 12 La prueba de la varianza consiste en determinar la varianza de los “n” números que contiene el conjunto ri mediante la siguiente ecuación: r  r  n 2 i v r   i 1 n 1 Luego se calculan los límites de aceptación inferior y superior con las siguientes ecuaciones: z2 2,n1 LI v r   2  n  1 z21  2,n1 LSv r   2  n  1 Si el valor v r  se encuentra entre los límites de aceptación entonces:  No se rechaza el conjunto ri  Tienes una varianza de   1 12  Con un Nivel de aceptación de 1 – alpha Caso contrario se rechaza el conjunto ri Realizar la prueba de Varianza a los 40 números del conjunto ri , considerando n  40 con un Nivel de Aceptación de 95% . 50 0.0449 0.1733 0.5746 0.049 0.8406 0.8349 0.92 0.2564 0.6015 0.6694 0.3972 0.7025 0.1055 0.1247 0.1977 0.0125 0.63 0.2531 0.8297 0.6483 0.6972 0.9582 0.9085 0.8524 0.5514 0.0316 0.3587 0.7041 0.5915 0.2523 0.2545 0.3044 0.0207 0.1067 0.3587 0.1746 0.3362 0.1589 0.3727 0.4145 El conjunto ri contiene 40 números pseudo aleatorios, por lo tanto n  40 con un nivel de aceptación del 95% , por lo tanto Alpha  5%. Calculamos la varianza: n40     r  0.43250 n 2 ri  r 2 i v r   i 1  i 1 n 1 40  1 1  0.04487  0.43250    0.17328  0.43250   ... 2 2 v r      0.08695062 39 ...   0.37266  0.43250 2   0.41453  0.43250 2    Calculamos los límites de aceptación: z2 2,n1 2 z0.05 58.1200541 LI v r    2,39   0.12418815 12  n  1 12  39  468 z21  2,n1 z210.05 2,39 23.6543003 LSv r      0.05054338 12  n  1 12  39  468 Dado que el valor de la varianza v r   0.8695062 está entre los límites de aceptación, entonces se concluye que no se puede rechazar al conjunto ri tiene una varianza de 1 12 al 95% de aceptación. 51 2.5.3. PRUEBA DE UNIFORMIDAD La propiedad principal de los números ri es la Uniformidad, para comprobar su acatamiento se han desarrollado pruebas estadísticas tales como Chi-cuadrada y Kolmogorov-Smirnov. Para probar la uniformidad de los números ri es necesario formular la siguiente hipótesis: H 0 : ri  U (0,1) H1 : ri no sonuniformes Prueba Chi-cuadrada Busca determinar si los ri se distribuyen uniformemente en el intervalo  0,1 . Para llevar a cabo esta prueba es necesario dividir el intervalo  0,1 en m subintervalos, donde: m n Luego se clasifica los ri en cada sub intervalo y se le denomina Frecuencia Observada Oi y la cantidad de números ri que se espera encontrar en cada intervalo se llama Frecuencia Esperada Ei donde: n Ei  m A partir de los valores Oi y Ei se determina el estadístico: m ( Ei  Oi ) x02   i 1 Ei 52 2 Si el valor del estadístico x0 es menor al valor de tablas de x2 ,m1 entonces no se puede rechazar el conjunto ri porque tiene una distribución Uniforme, en caso contrario se rechaza. Ejemplo1 Realizar la prueba Chi-cuadrada a los 40 números del conjunto ri ,considerando n  40 con un Nivel de Aceptación de 95% . 0.0449 0.1733 0.5746 0.049 0.8406 0.8349 0.92 0.2564 0.6015 0.6694 0.3972 0.7025 0.1055 0.1247 0.1977 0.0125 0.63 0.2531 0.8297 0.6483 0.6972 0.9582 0.9085 0.8524 0.5514 0.0316 0.3587 0.7041 0.5915 0.2523 0.2545 0.3044 0.0207 0.1067 0.3587 0.1746 0.3362 0.1589 0.3727 0.4145 Intervalo: m  n  40  6.3246 Frecuencia esperada: n 40 Ei   8 m 5 ( Ei  Oi ) 2 Intervalo Oi Ei Ei [0.00-0.20) 12 8 2.000 [0.20-0.40) 10 8 0.500 [0.40-0.60) 4 8 2.000 [0.60-0.80) 7 8 0.125 [0.80-1.00) 7 8 0.125 [0.00-0.20) 12 8 2.000 4.7500 53 El estadístico: 5 ( Ei  Oi ) 2 x  2 0 4.7500 i 1 Ei La Chi-Cuadrada: 2 x0.05,4  9.4880 2 2 Como el estadístico x0 es menor que la tabla x0.05,4 entonces no se puede rechazar, por lo tanto los ri tienen una distribución uniforme al 95% de aceptación. 2.5.4. PRUEBA DE INDEPENDENCIA Propiedad principal de los números ri para probar la independencia del primer ri es preciso formular la siguiente hipótesis: H 0 : los ri sonindependientes H1 : los ri no sonindependientes Prueba de Corrida Arriba y Abajo Consiste en determinar una secuencia de números S que solo contiene unos y ceros de acuerdo con una comparación ri y ri1 , posteriormente se determina el número de corridas observadas C0 (una corrida se identifica como la cantidad de unos o ceros consecutivos). Luego se calcula el valor esperado, la varianza del número de corridas y el estadístico Z 0 mediante las siguientes ecuaciones: 54 2n  1 c  o 3 16n  29  c2o  90 co  co Z0  c o Ejemplo: Realizar la prueba de Corridas Arriba y Abajo a los 40 números del conjunto ri , considerando n  40 con un Nivel de Aceptación de 95% . 0.34 0.83 0.96 0.47 0.79 0.99 0.37 0.72 0.06 0.18 0.67 0.62 0.05 0.49 0.59 0.42 0.05 0.02 0.74 0.67 0.46 0.22 0.99 0.78 0.39 0.18 0.75 0.73 0.79 0.29 0.11 0.19 0.58 0.34 0.42 0.37 0.31 0.73 0.74 0.21 S  1,1,0,1,1,0,1,0,1,1,0,0,1,1,0,0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,1,1,0,1,0,0,1,1,0 Obteniéndose un valor de C0  24 ,   5%. A continuación se presentan los cálculos correspondientes al valor esperado y a la varianza del número de corridas: 2n  1 2  40   1 c    26.333 o 3 3 16n  29 16  40   29  c2o    6.788 90 90 co  co 16  40   29 Z0   co 6.788 Como el estadístico Z 0 es menor que el valor de tabla de la normal estándar para Z 2  Z 5% 2  2.96 se concluye que no se puede rechazar y que los números del conjunto ri son independientes. Es decir, de acuerdo con esta prueba, los números son aptos para usarse en una simulación. 55 Ejercicios:  Determine el ciclo o periodo de vida de los siguientes generadores congruenciales. - xi1   21xi  15 mod 31 con x0  21 - xi1  13xi  9 mod 128 con x0  7 - xi1  17 xi  mod  31 con x0  23 - xi1  121  xi  mod  256 con x0  23 - xi1   21xi  15xi1  mod  264 con x0  21 y x1  43  Programe en una hoja de cálculo la serie congruencial xi1   553  121xi  mod 177  con x0  23 y haga lo que se indica. - Determine el ciclo o periodo de vida. - Realice las pruebas de media, varianza y uniformidad.  Programe en una hoja de cálculo la generación automática de números pseudo aleatorios con el método de cuadrados medios. Genere una muestra de 50 números con la semilla 5 735 ,y determine con un nivel de aceptación de 90% si son uniformes entre 0 y 1 .  Realice ¡as pruebas de media, varianza y uniformidad a los 50 números de la tabla siguiente, con un nivel de aceptación de 95% . 0.8797 0.3884 0.6289 0.875 0.5999 0.8589 0.9996 0.2415 0.3808 0.9606 0.9848 0.3469 0.7977 0.5844 0.8147 0.6431 0.7387 0.5613 0.0318 0.7401 0.4557 0.1592 0.8536 0.8846 0.341 0.1492 0.8681 0.5291 0.3188 0.5992 0.917 0.2204 0.5991 0.5461 0.5739 0.3254 0.0856 0.2258 0.4603 0.5027 56 3. VARIABLES ALEATORIAS 57 58 3.1.DEFINICIÓN DE LAS VARIABLES ALEATORIA Un modelo de simulación permite lograr un mejor entendimiento de cualquier sistema. Para ello es indispensable obtener la mejor aproximación a la realidad, lo cual se consigue componiendo el modelo a base de variables aleatorias que interactúen entre si. Las variables aleatorias son aquellas que tienen un comportamiento probabilístico en la realidad. Ejemplo: Número de clientes que llegan cada hora a un banco depende el momento del día, del día de la semana y de otros factores: por lo general, la afluencia de clientes será mayor al medio día que muy temprano por la mañana; la demanda será más alta el viernes que el miércoles; habrá más clientes un día de pago que un día normal, etc. Dadas estas características las variables aleatorias deben cumplir reglas de distribución de probabilidad como estas:  La suma de las probabilidades asociadas a todos los valores posibles de la variable aleatoria x es uno.  La probabilidad de que un posible valor de la variable x se presente siempre es mayor o igual a cero.  El valor esperado de la distribución de la variable aleatoria es la media de la misma, la cual a su vez estima la verdadera media de la población  Si la distribución de probabilidad asociada a una variable aleatoria está definida por más de un parámetro, dichos parámetros pueden obtenerse mediante un estimador no sesgado. Por ejemplo la varianza de la población  2 puede ser estimada usando la varianza de una muestra que es S 2 de la misma manera la desviación estándar de la población  puede estimarse mediante la desviación estándar de la muestra S . 59 3.1.1. TIPOS DE VARIABLES ALEATORIAS Podemos diferenciar las variables aleatorias de acuerdo con el tipo de valores aleatorios que representan. Variables aleatorias discretas Por ejemplo, si hablamos del número de clientes que solicitan cierto servicio en un periodo de tiempo determinado, podríamos encontrar valores tales como 0,1, 2,..., n, es decir, un comportamiento como el que presentan las distribuciones de probabilidad discretas. Este tipo de variables deben cumplir con estos parámetros:  P x   0   pi  1 i 0 b P a xb    pi  pa  ...  pb i a Algunas distribuciones discretas de probabilidad  Uniforme discreta.  Bernoulli.  Hipergeométrica.  Poisson.  Binomial. Ejemplo:  Si nuestro propósito al analizar un muestreo de calidad consiste en decidir si la pieza es buena o mala. Este tipo de comportamiento está asociado a Bernoulli.  Si lo que queremos modelar el número de usuarios que llamarán a un teléfono de atención de clientes, el tipo de comportamiento puede llegar a parecerse a una distribución de Poisson.  Puede darse el caso de que el comportamiento de una variable no se pareciera a otras distribuciones de probabilidad conocida, si este fuera el 60 caso, es perfectamente válido usar una distribución empírica que se ajuste a las condiciones reales de probabilidad, esta distribución puede ser una ecuación o una suma de términos que cumplan con las condiciones necesarias para ser consideradas una distribución de probabilidad. Distribución de probabilidad de una variable aleatoria discreta: Variables aleatorias continuas Por ejemplo, si habláramos del tiempo que tarda en ser atendida una persona, nuestra investigación tal vez arrojaría resultados como 1.54 minutos, 0.028 horas o 1.37 días, es decir, un comportamiento similar al de las distribuciones de probabilidad contínuas. Este tipo de variables se representan mediante una ecuación que se conoce como función de densidad de probabilidad, dada esta condición, cambiamos el uso de la sumatoria por la de una integral para conocer la función acumulada de la variable aleatoria. Por lo tanto las variables aleatorias continuas deben cumplir los siguientes parámetros: 61 P( x )  0  P( xa )  0   f( x)  1 b P( a xb )  P( a xb )   f ( x ) a Entre las distribuciones continuas de probabilidades tenemos:  Exponencial.  Normal.  Weibull.  Chi.cuadrada.  Erlang. Algunos procesos pueden ser asociados a ciertas distribuciones continuas Ejemplo:  Es posible que el tiempo de llegada de cada cliente a un sistema tenga una distribución de probabilidad muy semejante a una exponencial.  Es posible que el tiempo que toma un operario realizar una serie de tareas se comporte de una manera muy similar a la dispersión que presenta una distribución normal. Distribución de probabilidad de una variable aleatoria contínua: 62 3.2.PRUEBAS PARA EL TIPO DE DISTRIBUCIÓN 3.2.1. PRUEBAS CHI-CUADRADA Se trata de una prueba de hipótesis a partir de datos, basada en el cálculo de un valor llamado estadístico de prueba, al cual suele comparársele con un valor conocido como valor crítico, el mismo que se obtiene, generalmente, de tablas estadísticas Pasos:  Obtener al menos treinta datos de la variable aleatoria a analizar.  Calcular la media y la varianza de los datos.  Crear un histograma de m  n intervalos, y obtener la frecuencia observada en cada intervalo Oi .  Establecer explícitamente la hipótesis nula, proponiendo una distribución de probabilidad que se ajuste a la forma del histograma.  Calcular la frecuencia esperada Ei a partir de la función de probabilidad propuesta. m ( Ei  Oi ) 2  Calcular el estadístico de prueba c   i 1 Ei .  Definir el nivel de significancia de la prueba,  y determinar el valor crítico de la prueba X 2,mk 1 donde k es el número de parámetros estimados en la distribución propuesta.  Comparar el estadístico de prueba con el valor crítico. Si el c  X 2,mk 1 entonces no se puede rechazar la hipótesis nula. Ejemplo: Sean los datos de la tabla el número de automóviles que entran a una gasolinera cada hora. Determinar la distribución de probabilidad con un nivel de significancia   5% . 14 7 13 16 16 13 14 17 15 16 18 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 63 n  50 datos m  n  7.071 Para este ejemplo consideramos m  11 intervalos. Calculo de la media y la varianza media muestral  15.04 varianza muestral  13.14 Crear un histograma Establecer explícitamente la hipótesis nula, proponiendo una distribución de probabilidad que se ajuste a la forma del histograma. H 0 : Poisson(  15) automóviles / hora H1 : Otra Distribución 64 Calcular la frecuencia esperada Ei a partir de la función de probabilidad propuesta. En este caso es la Función de Probabilidad de Poisson. Calcular el valor estadístico:  xe p( x )  ;...donde...x  0,1, 2,... x! 15x e 15 p( x )  ;...donde...x  0,1, 2,... x! Calcular para todos los intervalos 150 e 15 157 e 15 p( x0,7)    0.01037 0! 7! 158 e 15 159 e 15 p( x8,9)    0.05185 8! 9! m ( E  Oi ) 2 c i  2.16053 i 1 Ei Definir el nivel de significancia de la prueba,  y determinar el valor crítico de la prueba X 2,mk 1 donde k es el número de parámetros estimados en la distribución propuesta: c  2.16053 X 2 0.05,1101  18.307 Comparar el estadístico de prueba con el valor crítico. Si el c  X 2,mk 1 entonces no se puede rechazar la hipótesis nula de que la variable aleatoria se comporta de acurdo con una distribución de Poisson, con una media de 15 automóviles/hora. 3.2.2. PRUEBAS DE KOLMOGOROV – SMIRNOV Esta prueba permite determinar la distribución de probabilidad de una serie de datos, una limitante de la prueba de Kolmogorov-Smirnov es que solamente se puede aplicar al análisis de variables continuas. 65  Obtener al menos 30 datos de la variable aleatoria a analizar  Calcular la media y la varianza de los datos  Crear un histograma de m  n intervalos y obtener la frecuencia observada en cada intervalo Oi  Calcular la probabilidad observada en cada intervalo POi   Oi n esto es, dividir la frecuencia observada Oi entre el número total de datos n .  Acumular las probabilidades POi  para obtener la probabilidad observada hasta el i-ésimo intervalo POAi  .  Establecer explícitamente la hipótesis nula, proponiendo una distribución de probabilidad que ajuste a la forma de histograma  Calcular la probabilidad esperada acumulada para cada intervalo PEAi  a partir de la función de probabilidad propuesta.   Calcular el estadístico de prueba c  max PEAi  , POAi  ; donde  i  1, 2,3,..., k ,.., m  Definir el nivel de significancia de la prueba de  , y determinar el valor crítico de la prueba D ,n (consultar la tabla de valores críticos de la prueba de Kolmogorov_Smirnov).  Comparar el estadístico de prueba con el valor crítico. Si el estadístico de prueba es menor que el valor crítico no se puede rechazar la hipótesis nula. Ejemplo: Un estudio del comportamiento del tiempo entre procesamiento de un determinado producto, medido en minutos/procesamiento, se muestra a continuación 4.33 1.67 2.16 2.88 0.7 0.44 1.59 2.15 8.59 7.36 9.97 7.86 5.49 0.98 4.52 2.12 4.44 0.82 6.96 3.04 2.81 14.39 3.44 9.92 4.38 8.04 2.18 6.19 4.48 9.66 4.34 1.79 2.3 5.24 11.65 10.92 12.16 6.6 0.85 4.82 1.36 3.53 6.58 1.45 8.42 3.69 2.44 0.28 1.9 2.89 66 Determinar la distribución de probabilidad con un nivel de significancia   5% . H 0 : Weibull (  1.38,   5.19) minutos / Producción H1 : Otra distribución N  50 datos m  8 intervalos Media  4.7336 Varianza  12.1991 Parámetro de forma = 1.38 Parámetro de escala = 5.19 Intervalo Oi Poi POAi PEAi POAi-PEAi [0 - 2] 12 0.24 0.24 0.235 0.0047 [2 - 4] 13 0.26 0.50 0.502 0.0025 [4 - 6] 9 0.18 0.68 0.705 0.0252 [6 - 8] 6 0.12 0.80 0.837 0.0375 [8 - 10] 6 0.12 0.92 0.916 0.0044 [10 - 12] 2 0.04 0.96 0.958 0.0016 [12 - 14] 1 0.02 0.98 0.980 0.0004 [14 - 16] 1 0.02 1.00 0.991 0.0088 50 1 C= 0.0375 D0.05,50  1.36 / 50  0.1923 El valor del estadístico de prueba c  0.0375 , comparando con el valor de tablas crítico D indica que no podemos rechazar la hipótesis de que la variable aleatoria se comporta de acuerdo con una distribución de Weibull con parámetro de escala 5.19 y parámetro de forma 1.38 . 67 3.2.3. AJUSTE DE DATOS CON STAT - FIT 3.3.GENERACION DE VARIABLES ALEATORIAS. La variabilidad de eventos y actividades se representa:  Para fenómenos continuos, a través de funciones de densidad  Para fenómenos discretos, a través de distribuciones de probabilidad La simulación de estos eventos o actividades se realiza con la ayuda de la generación de variables aleatorias. Principales Métodos para generar variables aleatorias:  Método de la Transformada inversa.  Método de Convolución.  Método de Composición.  Método de la Transformación directa.  Método de Aceptación y rechazo. 3.3.1. MÉTODO DE LA TRANSFORMADA INVERSA El método de la transformada inversa, puede utilizarse para simular variables contínuas y discretas: 68 Para simular variables continuas se sigue los siguientes pasos:  Definir la función de densidad f x  que represente la variable a modelar.  Calcular la función acumulada F x  .  Despejar la variable aleatoria x y obtener la función acumulada inversa F( x ) 1 .  Generar las variables aleatorias x , sustituyendo valores con números pseudo aleatorios ri uniformes del 1,0  en la función acumulada inversa. Para simular variables aleatorias se sigue los siguientes pasos:  Calcular todo los valores de la distribución de probabilidad p x  de la variable a modelar.  Calcular todos los valores de la distribución acumulada P x .  Generar números pseudo aleatorios ri uniformes del 1,0  .  Comparar con el valor de P(x) y determinar qué valor de r le corresponde a P x . Distribución Uniforme A partir de la función de densidad de las variables aleatorias uniformes entre a y b . 1 f x   ;a  x  b ba Se obtiene la función acumulada: x 1 xa F x    dx  ;a  x  b 0 ba ba Igualando la función acumulada F x  con el número pseudoaleatorio ri ;U (0,1) y despejando x se obtiene: 69 xi  a  (b  a) F ( x)i xi  a  (b  a)ri Ejemplo:La temperatura de una estufa se comporta uniformemente dentro del rango de 95 a 100C . Una lista de números pseudoaleatorios y la ecuación xi  95  5ri nos permiten modelar el comportamiento de la variable aleatoria que simula la temperatura de la estufa con 5 mediciones. Medición Número Pseudo-aleatorio ri Temperatura xi  95  5ri 1 0.48 97.4 2 0.82 99.1 3 0.69 98.45 4 0.67 98.35 5 0.00 95.00 Distribución Exponencial A partir de la función de densidad de las variables aleatorias exponenciales con media 1  . f ( x )  e  x ; x  0 Se obtiene la función acumulada: x F( x )   e x dx  1  e x ; x  0 0 Igualando la función acumulada F( x ) con el número pseudocódigo ri ;U (0,1) y despejando x se obtiene: 70 1 xi   ln(1  F ( x)i )  1 xi   ln(1  ri )  Ejemplo:Los datos históricos del tiempo de servicio en la caja de un banco se comportan de forma exponencial con media de 3min/cliente. Una lista de números pseudo-aleatorios ri ;U (0,1) y la ecuación generadora exponencial xi  3ln(1  r i ) nos permite simular el comportamiento de la variable aleatoria. Cliente Número Pseudo-aleatorio ri Tiempo de Servicio (min) xi  3ln(1  ri ) 1 0.1729 0.5697 2 0.3968 1.5164 3 0.5916 2.6868 4 0.8576 5.8464 5 0.1116 0.3550 Distribución de Bernoulli A partir de la distribución de probabilidad de las variables aleatorias de Bernoulli con media p( x )  p x  (1  p)1 x x  0,1 Se calculan las probabilidades para x  0 y x  1 , para obtener: x 0 1 p x  1 p p Acumulando la función acumulada p x  se obtiene: x 0 1 p x  1 p 1 71 Generando números pseudo-aleatorios ri ;U (0,1) se aplica la regla:  si.....ri  (0,1  p); x  0 xi    si.....ri  (1  p,1); x  1 Ejemplo: Los datos históricos sobre la frecuencia de paros de cierta máquina muestran que existe una probabilidad 0.2 de que esta falle  x  1 , y 0.8 de que no falle  x  0 en un día determinado. Generar una secuencia aleatoria que simule este comportamiento. A partir de la distribución de probabilidad de la variable aleatoria de Bernoulli con media 0.8 . P( x )  (0.2)(0.8)1x ..... para.....x  0,1 Cálculo de las probabilidades y probabilidades acumuladas de las fallas de la máquina: x 0 1 p x  0.8 0.2 P x 0.8 1 La regla para generar esta variable aleatoria estaría dada por:  si.....ri  (0,(1  0.2)); x  0 xi    si.....ri  ((1  0.2),1); x  1 Con una lista de números pseudo-aleatorios ri ;U (0,1) y la regla anterior es posible simular el comportamiento de las fallas de la máquina a lo largo del tiempo, considerando que: 72  Si el número ri  0.8 , la máquina no fallará.  Si el número ri  0.8 , ocurrirá la falla. Número Pseudo- Ti Variable: Estado de la Evento: La Cliente aleatorio ri Máquina xi Máquina 1 0.3539 0 No Falla 2 0.4556 0 No Falla 3 0.9100 1 Falla 4 0.5755 0 No Falla 5 0.1463 0 No Falla 3.3.2. MÉTODO DE CONVOLUCIÓN En algunas distribuciones de probabilidad la variable aleatoria a simular Y , puede generarse mediante la suma de otras variables aleatorias X de manera más rápida que a través de otros métodos. Entonces el método de convolución se puede expresar como: Y  X i  X 2  ...  X k Las variables aleatorias de cuatro de las distribuciones más conocidas (Erlang, normal, binomial y Poisson) pueden ser generadas a través de este método: Distribución Normal La variable aleatoria normal con media  y desviación estándar  puede generarse usando el teorema del límite central: Y  X i  X 2  ...  X k .....  N (k  x , k x2 ) Al sustituir X i por números pseudo-aleatorios ri , se obtiene: 73 1 1 Y  ri  r2  ...  rk .....  N (k , k ) 2 12 12 12 Y  ri  r2  ...  rk .....  N ( , )  N (6,1) 2 12 Y  Z  (ri  r2  ...  r12 )  6  N (0,1) 12 x Z   (ri )  6   N (0,1) i 1  Despejando X i tenemos que:  12  X  Ni    (ri )  6      i1  Ejemplo: El volumen de líquido de un refresco sigue una distribución normal con media de   10 onzas y desviación estándar de   0.4 onzas. Generar la variable con 5 valores aleatorias con una distribución para simular el proceso de llenado:  12  X  Ni   (ri )  6 (0.4)  (10)  i1  Botella Números Pseudo-aleatorio Nº 1 2 3 4 5 6 7 8 9 10 11 12 1 0.35 0.01 0.07 0.62 0.47 0.36 0.67 0.8 0.17 0.22 0.97 0.94 2 0.55 0.58 0.55 0.03 0.28 0.4 0.81 0.32 0.01 0.9 0.87 0.08 3 0.85 0.22 0.86 0.58 0.29 0.88 0.1 0.08 0.38 0.81 0.48 0.8 4 0.5 0.9 0.08 0.95 0.56 0.15 0.81 0.95 0.74 0.67 0.96 0.05 5 0.1 0.65 0.28 0.14 0.63 0.77 0.56 0.36 0.44 0.06 0.87 0.91 74 Botella Volumen en Onzas 12  12   (r )   (ri )  6   12  X  Ni   (ri )  6 (0.4)  (10) i Nº i 1  i1   i1  1 5.6437 -0.3563 10.0437 2 5.3727 -0.6273 9.7727 3 6.3374 0.3374 10.7374 4 7.3477 1.3477 11.7477 5 5.7629 -0.2371 10.1629 Distribución Binomial La variable aleatoria Binomial con parámetros N y p puede ser generada a través de la suma de N variables aleatorias con distribución de bernoulli con parámetro p : Y  Bi  BE1  BE2  ...  BEN  B( N , p) Ejemplo: Al inspeccionar lotes de tamaño N  5 , la probabilidad de que una pieza sea defectuosa es p  0.03 . Simular el proceso de inspección para determinar el número de piezas defectuosas por lote. Solución Este proceso sigue una distribución binomial con N  5 y p  0.03 , y será simulado mediante la generación de variables aleatorias de Bernoulli con p=0.03, de acurdo con el procedimiento señalado en el ejemplo anterior BEi  0 representa la pieza en buen estado y BEi  1 representa la pieza defectuosa. 75 0.....si.....ri  (0, ,0.97) BEi   1.....si.....ri  (0.97, ,1) Bi  BE1  BE2  ...  BE5 Ejemplo: 0.....si.....ri  (0, ,0.97) BEi   1.....si.....ri  (0.97, ,1) Bi  BE1  BE2  ...  BE5 Lote Distribución Binomial Piezas Defectuosas Nº r1 BE1 r2 BE2 r3 BE3 r4 BE2 r5 BE5 BEi 1 0.87 0 0.98 1 0.73 0 0.98 1 0.48 0 2 2 0.4 0 0.34 0 0.31 0 0.56 0 0.26 0 0 3 0.05 0 0.52 0 0.46 0 0.93 0 0.85 0 0 4 0.8 0 0.05 0 0.47 0 0.59 0 0.48 0 0 5 0.15 0 0.44 0 0.98 1 0.66 0 0.54 0 1 76 4. CONSTRUCCIÓN DE MODELOS DE SIMULACIÓN 77 78 4.1.VERIFICACIÓN Y VALIDACIÓN DE LOS MODELOS DE SIMULACIÓN Es muy común que personas con solamente conocimiento técnico, después de simular un sistema estocástico aseguran de manera bastante ingenua que el resultado de la variable de respuesta es un valor único. Por ejemplo: El número de piezas que se acumulan ante una máquina es tan solo el promedio de una variable; dejando de lado un completo análisis estadístico de dicha variable. Para evitar que el alumno de Ing. de Sistemas se convierta en uno de esos usuarios, a continuación se discutirán los aspectos mínimos que deben cuidarse de las variables de salida. Distinguimos dos Categorías entre los modelos de simulación:  Modelos Terminales  Modelos No Terminales o de estado estable 4.1.1. SIMULACIONES TERMINALES Tienen como característica principal la ocurrencia de un evento que da por terminada la simulación. Ejemplo: Nos interesa conocer:  El tiempo que llevaría procesar un lote de 10 piezas,  El tiempo requerido para vender 100 periódicos  El número de clientes que se atiende en una cafetería entre las 8 y 9am El análisis estadístico recomendado para estos tipos de simulaciones requiere la utilización de:  Intervalos de Confianza.  La determinación de la Distribución de Probabilidad de la variable de salida. 79 Distribución de Probabilidad Es necesario determinar la Distribución de Probabilidad de los datos en das diferentes réplicas, esto se puede determinarse mediante las pruebas:  Chi cuadrada.  Kolmogorov-Smirnov.  Anderson-Darling. Intervalos de Confianza Es necesario determinar sus Intervalos de Confianza en las diferentes réplicas. Si la variable aleatoria sigue una distribución normal, el intervalo de confianza esta dado por: _ s _ s  IC   x  (t /2,r 1 ), x  (t /2,r 1 )  t  r r  Intervalos de Confianza Si la variable aleatoria sigue otro tipo de distribución, el intervalo de confianza es relativamente más amplio, y se calcula como:   _ s _ s  IC   x  , x   r r   2 2  En ambas ecuaciones : r  Número de réplicas   Nivel de rechazo _ 1 r x  xi r i1 1 r _ s(  r  1 i1 ( xi  x) 2 )1/2 80 Ejemplo: Los resultados de 10 réplicas de la simulación de un sistema de inventario promedio en un almacén son: 190.3, 184.2, 182.4, 195.6, 193.2, 190.5, 191.7, 188.5, 189.3, 188.4. Determinar el intervalo de confianza con un nivel de aceptación de 95% _ x  189.41 s  3.916 Bajo la premisa de que el inventario promedio sigue una distribución normal, el intervalo de confianza se calcularía de la siguiente forma: _ s _ s  IC   x  (t /2,r 1 ), x  (t /2,r 1 )   r r   3.916 3.916  IC  189.41  (t0.05/2,101 ),189.41  (t0.05/2,101 )   10 10   3.916 3.916  IC  189.41  (2.262),189.41  (2.262)   10 10  IC  186.61, ,192.21 Si la variable aleatoria no fuera normal, o si la suposición de normalidad se considerara inadecuada, el intervalo de confianza se calcula así: _   s  _ s IC  x  , x     r. r.  2 2  3.916 3.916  IC  189.41  ,189.41    10(0.025) 10(0.025)  IC  181.57, _,197.24 Piezas promedio en el almacén 81 4.1.2. SIMULACIONES NO TERMINALES O DE ESTADO ESTABLE Tiene como característica principal la no involucración de una ocurrencia en el tiempo que tiene que finalizar. Ejemplo: Nos interesa conocer el número de máquinas que deben instalarse en un sistema de producción cuya operación tiene que mantenerse activa durante todo el año. Para este tipo de simulación, podríamos modelar el sistema hasta que la variable de interés llegara a un estado estable, en estos casos Surge la necesidad de determinar la longitud de la corrida para asegurar la estabilización de los resultados del modelo. 4.1.3. LONGITUD DE RÉPLICAS Para que el resultado de una variable aleatoria llegue al estado estable en una simulación no terminal, es necesario garantizar que la longitud de la réplica, n, sea lo suficientemente grande para que la variación entre réplicas no difiera de cierta exactitud, €, del 100(1-α)% de las veces. En este caso de normalidad el tamaño de corrida de la simulación se calcula como: Z  2 n    /2   e  Ejemplo: Determinar la longitud de la réplica para estimar, dentro de un rango de ±2, el valor de una variable normal con desviación estándar 4 y un nivel de aceptación de 95%. 82 2  4Z  n   0.05/2   (2(1.96)) 2  15.36  2  2  4Z  n   0.05/2   (2(1.96)) 2  15.36  2  n  16 La longitud de la réplica es 16 Comportamiento del promedio de la variable aleatoria normal con seis réplicas; exactitud deseada de 1σ El gráfico anterior, representa los resultados de la simulación de seis réplicas independientes de longitud n=16 de una variable aleatoria con distribución normal y desviación estándar S=4. Como puede ver los resultados finales de la variable aleatoria se encuentran dentro de la exactitud deseada, dado el nivel de aceptación del 95%, si realizáramos 100 réplicas cabría esperar que cinco de ellas estarían fuera de la exactitud deseada. Si se tiene la certeza de normalidad pero se desconoce el valor de la desviación estándar S, será necesario realizar una corrida inicial de tamaño n’ para determinar un estimador de la desviación, en este caso la longitud de la réplica se determina mediante: 2 S  n   (t /2,n1 )  e  83 Ejemplo: Se realizó una corrida inicial de tamaño n’=10 para estimar la desviación estándar S=13.21 de una variable normal. 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 de 90%. 2 S  n   (t /2,n1 )  e  2  13.21  n (t0.05/2,101 )   (44.03(2.262)) 2  9920.83  0.3  n  9920 La longitud de la réplica es 9920. Comportamiento del promedio de la variable aleatoria normal; exactitud deseada de 0.045σ Cuando se desconoce el tipo de distribución de la variable aleatoria a simular o bien la suposición de normalidad no existe, es preciso hacer uso de teorema de tchebycheff para calcular la longitud de la réplica. En este caso se utiliza: 1   2 n   e  Ejemplo: Supongamos que la normalidad del ejemplo anterior no es válida, y consideremos la misma información con n’=10 y S=13.21. Determinar la longitud de la réplica para estimar el valor de la variable dentro de un rango de ±0.3 con un nivel de aceptación de 90%. 84 1   2 2 1S n      e e 2 1  13.21  n    19389.3 0.1  0.3  n  19389.3 La longitud de la réplica es 19390. Este resultado concuerda con el concepto expuesto en el ejemplo 1 de la Simulación Terminal: para distribuciones diferentes, aun con los mismos rangos deseados, los requerimientos de simulación cambian, en este caso respeto a la n. Ahora veamos que sucede al momento de simular la variable aleatoria exponencial. El gráfico siguiente, muestra el comportamiento promedio de la variable; a pesar de haberla simulado en 9920 ocasiones, dicha variable está lejos de lograr la exactitud que se observa en el gráfico 3, donde la variable simulada sigue una distribución normal. Para que el comportamiento de la variable llegue a la zona de estabilización con la exactitud deseada de 0.045σ, es preciso generar 19390 variables exponenciales (al simular solamente 9920 variables exponenciales la exactitud es de 0.063σ) Comportamiento del promedio de la variable aleatoria exponencial; exactitud lograda de 0.063σ 85 Ejemplo: Determinar la longitud de la réplica para estimar, dentro de un rango de ±0.5 con un nivel de aceptación de 90%, el valor promedio de una variable con σ=8. se desconoce la distribución de probabilidad de la variable. 2 1  8  n    2560 0.1  0.5  2 1  8  n    2560 0.1  0.5  n  2560 La longitud de la réplica es 2560. Ejemplo 5: Determinar la longitud de la réplica, de manera que el estimado del valor promedio de una variable con distribución de Weibull y desviación estándar σ no difiera en más de ¼ de la desviación estándar, con un nivel de adaptación del 95%. 1   2 n   e 2   1   1 16 n    (4)  2  320   1   0.05 4  n  320 La longitud de la réplica es 320. 86 Comportamiento del promedio de la variable aleatoria de Weibull; exactitud lograda de 0.25σ. En el gráfico anterior se muestran los resultados de 10 réplicas de longitud 320; cada una representa el promedio móvil de una variable aleatoria de Weibull con σ=1.6. De acuerdo con los cálculos del ejemplo, esta longitud de la réplica debería asegurar la estabilización de la variable aleatoria (lo cual aparentemente ocurre, según la gráfica), con una exactitud de 0.25σ. Los resultados confirman los cálculos, ya que el valor final de las réplicas estuvo entre 54.41 y 54.57. la diferencia de 0.16 equivale a una exactitud relativa a la desviación estándar de apenas 0.1σ 4.2.MODELOS DE SIMULACIÓN 4.2.1. MODELO DE UNA LÍNEA DE ESPERA CON UN SERVIDOR Ejemplo: El tiempo que transcurre entre la llegada de ciertas piezas a una estación de inspección sigue una distribución exponencial con media de 5min/pieza. El proceso está a cargo de un operario, y la duración de la inspección sigue una distribución normal con media=4.0 y desviación estándar=0.5min/pieza. Calcular el tiempo promedio de permanencia de las piezas en el proceso de inspección 87  Construir una tabla de eventos en la que se describa la relación entre las variables involucradas en el proceso. Tiempo en el Sistema de Variable de Estado Inspección (7) Entidades Piezas Tiempo de llegada (2) Eventos Fin de la Inspección (5) Evento secundario Inicio de la Inspección (3) Tiempo entre llegadas (1) Actividades Tiempo de Inspección (4)  Definir las relaciones lógico-matemáticas entre los elementos; en la tabla se describen, por ejemplo, las siguientes relaciones: - La Actividad “tiempo entre llegadas” es una variable aleatoria, simulada utilizando el generador aleatorio() y la función generadora de variables exponenciales. - El evento “tiempo de llegada de la pieza” corresponde al valor acumulado de la columna (1). - Tomando en cuenta que solo existe un operario encargado de la tarea, el inicio de la inspección puede ocurrir cuando la pieza entra al sistema, en caso de que el operario esté ocioso (2), o bien cuando termina de inspeccionar la pieza anterior (5). - El Tiempo de inspección es una variable aleatoria normal con media 4 y desviación estándar 0.5, generada mediante la función interna normal acumulada inversa (Distrib.Norm.Inv) y como probabilidad el generador de números aleatorios aleatorio(). - El Fin de la inspección se calcula sumando el tiempo de inspección (4) al tiempo de inicio de la inspección (3). 88 - La variable Tiempo de Inspección se calcula, finalmente, como la diferencia entre el tiempo de llegada (2) y el fin de la inspección (5). - Si bien no forma parte del objetivo del ejemplo, también es posible determinar el Tiempo de espera de una pieza antes de ser inspeccionad, ya que es igual a la diferencia entre el tiempo de inicio de inspección (3) y el tiempo de llegada de la pieza (2). - Esta última columna permite calcular el Tiempo promedio de inspección como promedio móvil: cada vez que una nueva pieza es simulada, el tiempo promedio de inspección se recalcula.  Una vez definidas las relaciones se simula el proceso, teniendo cuidado de que el tamaño de la réplica o experimento sea lo suficientemente grande para asegurar la estabilidad del resultado final.La réplica cuyos resultados se ilustran en la tabla (excel) se realizó con 1500 piezas; la información nos indica que el tiempo promedio de espera es de 9.56 min/pieza. Además de este resultado, la columna (8) permite visualizar la estabilización del sistema mediante una gráfica de líneas. La gráfica de estabilización que se obtuvo a partir de la columna (8) (tiempo promedio de inspección) se muestra en el siguiente gráfico. Dicha gráfica nos indica que el tamaño de réplica es lo suficiente grande para asegurar la convergencia del resultado. Cabe señalar que esta gráfica de estabilización corresponde a una réplica diferente a la de la tabla de eventos. 89 Periodo de estabilización de tiempo promedio de permanencia en el sistema. Al trabajar con procesos donde se involucran variables, actividades y eventos aleatorios, las variables de estado o variables de respuesta serán, en consecuencia, aleatorias. El siguiente gráfico muestra las gráficas de estabilización de 5 diferentes réplicas del mismo modelo. Si bien la estabilización está asegurada, el resultado final nunca es el mismo; es evidente que replicar el experimento debe ser una práctica común en cualquier simulación. Réplicas: El análisis estadístico de las réplicas, permite concluir a través de una prueba de bondad de ajuste, que el tiempo promedio de espera en el proceso de inspección sigue una distribución de Erlang con los siguientes parámetros: Localización 9, forma 3 y escala 1.06. 10.44 11.53 14.58 11.43 14.27 12.63 15.22 10.66 12.00 10.23 11.05 10.22 17.09 14.62 13.90 12.01 11.30 12.55 12.25 16.34 13.49 12.52 11.55 11.73 15.31 10.57 10.47 10.05 11.85 13.12 10.97 10.41 11.66 10.48 10.59 13.75 11.88 15.09 10.12 09.69 12.97 12.34 11.21 13.17 13.66 12.36 11.63 10.19 11.56 10.59 90 Además tenemos los siguientes estadísticos básicos: - Media: 12:18 min/pieza - Desviación Estándar: 1.76 min/pieza - Intervalo de confianza con 1-α=0.95: {11.66, 12.69}min/pieza - Valor mínimo en la muestra: 9.69 min/pieza - Valor máximo en la muestra: 17.09 min/pieza - Coeficiente de asimetría (skewness): 0.08177 - Curtosis: -0.071. 91 BIBLIOGRAFÍA [1] Oscar Johanason , Introducción a la teoría General de Sistemas, Editorial Limusa – 1999 [2] Peter M. Senge, La Quinta Disciplina, Ediciones Granica 1998. [3] Jaime Barceló, Simulación de Sistemas, IDEFE-1996 Madrid. [4] Jerry Banks, John S. Carson, Barry L. Neslon Discrete-Event System Simulation, Prentice Hall Inc., new Jersey 1996. [5] José Pazos, Andrés Suárez, Rebeca Díaz, Teoría de Colas y Simulación de Eventos Discretos, Prentice Hall , Madrid 2003. [6] Arcil, Javier, Introducción a la Dinámica de Sistemas, Editorial Alizianza-Editorial, España, 1995. [7] Silvio Martínez y Alberto Requena, Simulación Dinámica por ordenador, Alianza Editorial, Madri 1988. [8] Eduardo García, Heriberto García, Leopoldo Cárdenas, Simulación y análisis de sistemas con promodel, 1ra. Edición México 2006. [9] Francisco García, Jorge Sierra, Virginia Guzmán, Simulación de sistemas para administración e ingeniería, 1ra. Edición México 2005. [10] Jaime Barceló, Simulación de eventos discretos. [11] Universidad Nacional de Jujuy, Teoría de modelos y simulación. [12] W. David Kelton, Randall P. Sadowski, David T. Syurrock, Simulación con software arena. [13] Manual BPWIN 4.0 [14] Manual Arena 5.0 [15] Manual Vensim 5.0 92
Copyright © 2024 DOKUMEN.SITE Inc.