Está en la página 1de 21

Simulacin de Eventos

LII 210

SIMULACION DE EVENTOS
CLAVE : LII 210

PROFESOR: MTRO. ALEJANDRO SALAZAR GUERRERO

Simulacin de Eventos 1. LA SIMULACIN DE EVENTOS DISCRETOS. 1.1 Definicin de Eventos Discretos. 1.2 Estructura de la simulacin de eventos discretos. 1.3 Caracterstica de la simulacin de eventos discretos. 1.4 Sistemas. 1.5 Modelos. 1.6 Control. 1.7 Mecanismos de tiempo fijo. 1.8 Metodologa 1.8.1 Formulacin del Problema. 1.8.2 Recoleccin de datos. 1.8.3 Desarrollo del modelo. 1.8.4 Verificacin. 1.8.5 Validacin. 1.8.6 Experimentacin de resultados. 1.8.7 Optimizacin de resultados.

LII 210

2. NMEROS ALEATORIOS Y PSEUDOALEATORIOS. 2.1 Nmeros aleatorios definicin propiedades. 2.1.1 Generadores. 2.1.2 Tablas. 2.2 Nmeros pseudoaleatorios propiedades. 2.2.1 Tcnicas para generar nmeros pseudoaleatorios 2.2.1.1 Mtodos de centros al cuadrado. 2.2.1.2 Mtodos de congruencia. 2.2.1.3 Multiplicativo. 2.2.1.4 Mixto. 2.3 Pruebas de aleatoriedad. 2.4 Mtodo de Montecarlo. 2.4.1 Simulacin de procesos aleatorios. 2.4.2 Usando nmeros. 2.4.3 Manuales. 2.4.4 Lenguajes de propsito general como. 2.4.4.1 C, C++. 2.4.4.2 Delphi. 2.4.4.3 Visual. 2.4.5 Sistemas productivos. 2.4.6 Calidad. 2.4.7 Inventarios. 2.4.8 Econmicos. 3. VARIABLES ALEATORIAS. 3.1 Mtodos para generar variables aleatorias. 3.1.1 Transformadas Inversas. 3.1.2 Aceptacin rechazo. 3.1.3 Convolucin. 3.1.4 Directos. 2

Simulacin de Eventos 3.1.4.1 Generacin de variables aleatorias discretas. 3.1.4.2 Distribuciones Poisson. 3.1.4.3 Binomial. 3.1.4.4 Geomtrica. 3.1.4.5 Generacin de variables aleatorias continuas. 3.1.4.6 Distribucin uniforme. 3.1.4.7 Exponencial. 3.1.4.8 Normal. 3.1.4.9 Erlang. 3.1.4.10 Gamma. 3.1.4.11 Beta. 3.1.4.12 Triangular. 3.1.5 Distribuciones empricas de probabilidad. 3.1.6 Simulacin de procesos aleatorios manuales. 3.1.7 Sistemas productivos. 3.1.8 Calidad. 3.1.9 Inventarios. 3.1.10 Econmicos.

LII 210

4. LENGUAJES DE SIMULACIN Y SIMULADORES DE EVENTOS DISCRETOS. 4.1 Lenguajes de simulacin y simuladores. 4.1.1 Caractersticas 4.1.2 Aplicacin y uso lenguajes 4.1.2.1 SLAM 4.1.2.2 ECSL 4.1.2.3 SIMAN 4.1.2.4 GPSS 4.1.3 Simuladores 4.1.3.1 PROMODEL 4.1.3.2 TAYLOR ED 4.1.3.3 ARENA 4.1.3.4 WITNESS 4.2 Aprendizaje y uso de un simulador 4.2.1 Caractersticas del Software 4.2.2 Elementos del modelo 4.2.3 Mens principales 4.2.4 Construccin del modelo 4.2.5 El uso del simulador de problemas aplicados a servicios 4.2.6 Sistemas productivos 4.2.7 Calidad 4.2.8 Inventarios 4.2.9 Econmicos

Simulacin de Eventos CAP. 2. NMEROS ALEATORIOS Y PSEUDOALEATORIOS.

LII 210

Los nmeros aleatorios son elementos que se emplean dentro del proceso de simulacin, con el propsito de evaluar el grado de respuesta de un sistema a los eventos fortuitos o de baja predictibilidad. Un problema bsico que nos encontramos habitualmente es el de obtener secuencias de nmeros uniformemente distribuidos en un intervalo [0,1] Las diferentes posibilidades para resolver dicho problema son: i) Buscar en tablas de nmeros aleatorios publicadas (libros, internet...) ii) Observar un proceso fsico tal como la desintegracin radiactiva, el ruido elctrico iii) Los lenguajes de programacin y las hojas electrnicas incluyen una funcin para generarlos iv) Mediante algoritmos de generacin de nmeros aleatorios Las principales ventajas de los generadores de nmeros aleatorios son: - Rapidez - Comodidad - Reproducibilidad - Portabilidad Y la desventaja fundamental: - Las secuencias obtenidas no son realmente aleatorias, ya que se obtienen con operaciones deterministas. Solo podemos obtener secuencias pseudo-aleatorias, que a su vez satisfacen algunos criterios de aleatoriedad adecuados. Los nmeros generados deben cumplir ciertas caractersticas para que sean vlidos. Dichas caractersticas son: 1. Uniformemente distribuidos. 2. Estadsticamente independientes. 3. Su media debe ser estadsticamente igual a 1/2. 4. Su varianza debe ser estadsticamente igual a 1/12. 5. Su periodo o ciclo de vida debe ser largo. 6. Deben ser generados a travs de un mtodo rpido. 7. Generados a travs de un mtodo que no requiera mucha capacidad de almacenamiento de la computadora. Normalmente se utilizan nmeros enteros, ya que su aritmtica es exacta y rpida. Se generan enteros Ni entre 0 y M - 1, y xi = Ni / M da valores reales en el intervalo [0,1). En general los algoritmos utilizan relaciones de recurrencia del tipo

En el caso de recurrencia simple, o bien

Simulacin de Eventos

LII 210

Para el caso de una recurrencia de orden . Se necesitar dar un valor inicial para comenzar el algoritmo ( orden ).

valores para recurrencias de

Generadores. Un Generador de nmeros aleatorios es un componente o funcionalidad que crea nmeros o smbolos para un programa software en una forma que carezca de un patrn evidente, y que as parezcan ser nmeros aleatorios. La mayor parte de los generadores de nmeros aleatorios son, en realidad, pseudoaleatorios: se calcula (o introduce internamente) un valor X0, que llamaremos semilla, y, a partir de l, se van generando X1, X2, X3,... Siempre que se parta de la misma semilla, se obtendr la misma secuencia de valores. El algoritmo bsico es el mtodo congruencial, que genera valores en el intervalo [0,1), mediante el siguiente esquema: Se fijan A, B, enteros positivos (deben tener ciertas propiedades para obtener un buen generador), y, a partir de una semilla X0 en el conjunto 0,1,...,(N-1), se generan X1 = A*X0+B (mod N) X2 = A*X1+B (mod N) X3 = A*X2+B (mod N) ... X(k+1) = A*Xk+B (mod N) ...donde A*X+B (mod N) es el resto de la divisin entera de A*X+B entre N. Por ejemplo, 16 (mod 7) es 2. Tablas. Es un conjunto de cifras entre 0 y 9 cuyo orden no obedece ninguna regla de formacin, ellas se pueden leer individualmente o en grupos y en cualquier orden, en columnas hacia abajo, columnas hacia arriba, en fila, diagonalmente, si se desea formar nmeros aleatorios en un determinado rango, basta con calcular la proporcin, otra forma de usarlo es sumando dos nmeros tomados de alguna posicin o multiplicarlos. Para ser presentadas estas cifras se agrupan en nmeros de 4 dgitos, formando bloques de 5 filas y 10 columnas facilitando de esta forma su lectura que puede iniciarse desde cualquier parte de la tabla. Una tabla de nmeros aleatorios es til para seleccionar al azar los individuos de una poblacin conocida que deben formar parte de una muestra.

Nmeros pseudoaleatorios propiedades. Un nmero pseudo-aleatorio es un nmero generado en un proceso que parece producir nmeros al azar, pero no lo hace realmente. Las secuencias de nmeros pseudo-aleatorios no muestran ningn patrn o regularidad aparente desde un punto de vista estadstico, a pesar de haber sido generadas por un algoritmo completamente determinista, en el que las mismas condiciones inciales producen siempre el mismo resultado.

Simulacin de Eventos

LII 210

Los mecanismos de generacin de nmeros aleatorios que se utilizan en la mayora de los sistemas informticos son en realidad procesos pseudo-aleatorios. Una Sucesin de nmeros pseudoaleatorios es una sucesin de nmeros que ha sido obtenida mediante un proceso aritmtico definido, pero que es una secuencia de nmeros aleatorios efectiva para el propsito para el que se la requiere. Si bien una sucesin de nmeros pseudoaleatorios parece generalmente no obedecer a ningn patrn o ley de formacin, todo generador de nmeros pseudoaleatorios con un estado interior finito, se repetir luego de una larga sucesin de nmeros.

Tcnicas para generar nmeros pseudoaleatorios Mtodos de centros al cuadrado. Consiste en que cada nmero de una sucesin es producido tomando los dgitos medios de un nmero obtenido mediante la elevacin al cuadrado. P1: Obtener semilla (valores iniciales 445) P2: Aplicacin de Algoritmos recursivos (elevar al cuadrado) P3: Validacin del conjunto de datos generados Ejemplo: Consideremos la semilla 445 X 445 9802 792 2726 X2 1| 9802 | 5 96| 0792 | 04 6 | 2726 | 4 ............... N Aleatorio 0,9802 0,0792 0,2726 ...............

Problemas Tendencia a degenerar a cero

Mtodos de congruencia. Una secuencia de nmeros enteros Z1 , Z2 , Z3.. es definido por la frmula recursiva. Zi = (a Zi-1 + b) (mod m) m = modulo; a= multiplicador b = sesgo : Zc = semilla o valor inicial

Todos enteros no negativos. Adems 0 < m, a < m, b < m, Z0 < m. 6

Simulacin de Eventos Para obtener Zi, dividir a Zi-1 + b por m, y dejar que Zi sea el resto de esta divisin Observacin:

LII 210

1.- Cuando b=0 el generador se denomina Generador congruencial multiplicativo. 2.- Cuando b0 el generador se denomina Generador congruencial mixto. 3.- A pesar de la simplicidad una adecuada eleccin de los parmetros de a, b y m, permite obtener de manera eficiente una larga e impredecible sucesin de nmeros como para considerarse aleatoria.
m a c Zo = = = = 16 5 3 7 i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Zi 7 6 1 8 11 10 5 12 15 14 9 0 3 2 13 4 7 6 1 8 11 Ui 0 .3 7 5 0 .0 6 2 5 0 .5 0 .6 8 7 5 0 .6 2 5 0 .3 1 2 5 0 .7 5 0 .9 3 7 5 0 .8 7 5 0 .5 6 2 5 0 0 .1 8 7 5 0 .1 2 5 0 .8 1 2 5 0 .2 5 0 .4 3 7 5 0 .3 7 5 0 .0 6 2 5 0 .5 0 .6 8 7 5

Caso 1 2 3 4 5

a 6 7 5 7 6

Parmetros b m 0 13 0 13 0 13 0 11 0 11

xo 1 10 5 5 3

Caso 1 2 3 4 5

6 5 12 2 7

10 9 8 3 9

8 11 1 10 10

9 12 5 4 5

2 6 12 6 8

Salidas 12 7 3 8 8 1 9 8 4 2

3 4 5 1 1

5 2 12 7 6

4 1 8 5 3

11 7 1 2 7

1 10 5 3 9

6 5 12 10 10

10 9 8 4 4

Simulacin de Eventos

LII 210

Algunas observaciones de las salidas de los generadores congruenciales: i) Un generador congruencial tiene ciclos ii) La longitud del ciclo depende de la seleccin de los parmetros (ver caso 1) y 3) ) iii) Dentro de selecciones de parmetros que conducen a la misma longitud, algunas salidas parecen ms aleatorias que otras. Pruebas de aleatoriedad. Para comprobar si los nmeros aleatorios obtenidos cumplen las propiedades deseadas de uniformidad e independencia se deben realizar una serie de pruebas. Prueba de frecuencia. Pruebas de series. Prueba de autocorrelacin. Prueba de saltos. Prueba de pker. Cuando se prueba la uniformidad las hiptesis son: H0: Ri ~ U[0,1] H1: Ri U[0,1] La hiptesis nula supone que la secuencia de nmeros obtenidos est distribuida uniformemente en el intervalo [0,1].

Mtodo de Montecarlo. El mtodo de Monte Carlo es un mtodo no deterministico o estadstico numrico usado para aproximar expresiones matemticas complejas y costosas de evaluar con exactitud. El mtodo se llam as en referencia al Casino de Montecarlo (Principado de Mnaco) por ser la capital del juego de azar, al ser la ruleta un generador simple de nmeros aleatorios. El nombre y el desarrollo sistemtico de los mtodos de Monte Carlo datan aproximadamente de 1944 y se mejoraron enormemente con el desarrollo de la computadora. El uso de los mtodos de Monte Carlo como herramienta de investigacin, proviene del trabajo realizado en el desarrollo de la bomba atmica durante la segunda guerra mundial en el Laboratorio Nacional de Los lamos en EE.UU. Este trabajo conllevaba la simulacin de problemas probabilsticos de hidrodinmica concernientes a la difusin de neutrones en el material de fusin, la cual posee un comportamiento eminentemente aleatorio. En la actualidad es parte fundamental de los algoritmos de trazado de rayos para la generacin de imgenes sintticas. Monte Carlo En la primera etapa de estas investigaciones, John von Neumann y Stanislaw Ulam refinaron esta ruleta rusa y los mtodos "de divisin" de tareas. Sin embargo, el desarrollo sistemtico de estas ideas tuvo que esperar al trabajo de Harris y Herman Kahn en 1948. Aproximadamente en el mismo ao, Enrico Fermi, Metropolis y Ulam obtuvieron estimadores para los valores caractersticos de la ecuacin de Schrdinger para la captura de neutrones a nivel nuclear usando este mtodo. El mtodo de Monte Carlo proporciona soluciones aproximadas a una gran variedad de problemas matemticos posibilitando la realizacin de experimentos con muestreos de nmeros 8

Simulacin de Eventos

LII 210

pseudoaleatorios en una computadora. El mtodo es aplicable a cualquier tipo de problema, ya sea estocstico o determinista. A diferencia de los mtodos numricos que se basan en evaluaciones en N puntos en un espacio M-dimensional para producir una solucin aproximada, el

mtodo de Monte Carlo tiene un error absoluto de la estimacin que decrece como del teorema del lmite central. Simulacin de procesos aleatorios.

en virtud

La tcnica de simulacin es desde hace mucho tiempo una herramienta importante para el diseador. Durante muchos aos, se han usado modelos a escala de mquinas, para simular la distribucin de planta. La simulacin comn se uso inicialmente en la investigacin de operaciones, surgi por primera vez en el trabajo de John Von Neumann y Stanislaw Ulam, en los ltimos aos de la dcada de los 40. Quienes a travs del anlisis de Montecarlo en conjunto con una tcnica matemtica, resolvieron problema relacionados con las barreras nucleares de proteccin, demasiado costosas para someterlas a pruebas de experimentacin o demasiado complejas para realizar sus anlisis. Un el advenimiento de las computadoras, en los primeros aos de la dcada de los 50, la simulacin experiment un avance substancial. En la actualidad se resuelven incontables problemas de negocios, puesto que la simulacin en la computadora es un mtodo econmico y rpido para efectuar la vasta cantidad de clculos que se requieren. Las reas de aplicacin de la simulacin son muy amplias, numerosas y diversas, basta mencionar slo algunas de ellas: Anlisis del impacto ambiental causado por diversas fuentes Anlisis y diseo de sistemas de manufactura Anlisis y diseo de sistemas de comunicaciones. Evaluacin del diseo de organismos prestadores de servicios pblicos (por ejemplo: hospitales, oficinas de correos, telgrafos, casas de cambio, etc.). Anlisis de sistemas de transporte terrestre, martimo o por aire. Anlisis de grandes equipos de cmputo. Anlisis de un departamento dentro de una fbrica. Adiestramiento de operadores (centrales carboelctricas, termoelctricas, nucleoelctricas, aviones, etc.).Anlisis de sistemas de acondicionamiento de aire. Planeacin para la produccin de bienes. Anlisis financiero de sistemas econmicos. Evaluacin de sistemas tcticos o de defensa militar. La simulacin se utiliza en la etapa de diseo para auxiliar en el logro o mejoramiento de un proceso o diseo o bien a un sistema ya existente para explorar algunas modificaciones. Se recomienda la aplicacin de la simulacin a sistemas ya existentes cuando existe algn problema de operacin o bien cuando se requiere llevar a cabo una mejora en el comportamiento. El efecto que sobre el sistema ocurre cuando se cambia alguno de sus componentes se puede examinar antes de que ocurra el cambio fsico en la planta para asegurar que el problema de operacin se soluciona o bien para determinar el medio ms econmico para lograr la mejora deseada. Todos los modelos de simulacin se llaman modelos de entrada-salida. Es decir, producen la salida del sistema si se les da la entrada a sus subsistemas interactuantes. Por tanto los modelos de simulacin se corren en vez de resolverse, a fin de obtener la informacin o los resultados deseados. Son incapaces de generar una solucin por si mismos en el sentido de los modelos analticos; solos pueden servir como herramienta para el anlisis del comportamiento de un sistema en condiciones especificadas por el experimentador. Por tanto la simulacin es una teora, si no una metodologa de resolucin de problemas. Adems la simulacin es solo uno de varios planteamientos valiosos para resolver problemas que estn disponibles para el anlisis de sistemas. Pero Cundo es til utilizar la simulacin? Cuando existan una o ms de las siguientes condiciones: 1.- No existe una completa formulacin matemtica del problema o los mtodos analticos para resolver el modelo 9

Simulacin de Eventos

LII 210

matemtico no se han desarrollado an. Muchos modelos de lneas de espera corresponden a esta categora. 2.- Los mtodos analticos estn disponibles, pero los procedimientos matemticos son tan complejos y difciles, que la simulacin proporciona un mtodo ms simple de solucin. 3.Las soluciones analticas existen y son posibles, pero estn mas all de la habilidad matemtica del personal disponible El costo del diseo, la prueba y la corrida de una simulacin debe entonces evaluarse contra el costo de obtener ayuda externa. 4.- Se desea observar el trayecto histrico simulado del proceso sobre un perodo, adems de estimar ciertos parmetros. 5.- La simulacin puede ser la nica posibilidad, debido a la dificultad para realizar experimentos y observar fenmenos en su entorno real, por ejemplo, estudios de vehculos espaciales en sus vuelos interplanetarios. 6.- Se requiere la aceleracin del tiempo para sistemas o procesos que requieren de largo tiempo para realizarse. La simulacin proporciona un control sobre el tiempo, debido a que un fenmeno se puede acelerar o retardar segn se desee. PROCESO DE SIMULACION Antes de especificar los aspectos ms importantes que se presentan al formular problemas de simulacin, ser til definir esta. La simulacin es la utilizacin de un modelo de sistemas, que tiene las caractersticas deseadas de la realidad, a fin de reproducir la esencia de las operaciones reales. Tambin se le ha definido como una representacin de la realidad mediante el empleo de un modelo u otro sistema que reaccione de la misma manera que la realidad, en un conjunto de condiciones dadas. Ninguna de estas definiciones incluye todos requisitos fundamentales de esta, como son, el uso de los modelos matemticos, las computadoras, los procesos estadsticos o estocsticos, los casos las suposiciones y los cursos de accin alternativos. La definicin ms general y amplia de esta: una tcnica cuantitativa que utiliza un modelo matemtico computarizado para representar la toma real de decisiones bajo condiciones de incertidumbre, con objeto de evaluar cursos alternativos de accin con base en hechos y suposiciones. La simulacin es til en la resolucin de problema de negocios cuando no se conocen parcialmente las variables con anticipacin y no existe una manera fcil de encontrar estos valores. El problema se parece que al de la secuencia, para la cual no se conoce una frmula ya elaborada por encontrar el ensimo (o ltimo) termin. El nico hecho conocido es una regla (relacin recursiva) que permite encontrar el siguiente trmino a partir de los ltimos. Bsicamente, la nica manera de descubrir el ensimo trmino es aplicando la misma regla una y otra vez hasta llegar a dicho trmino. La simulacin utiliza un mtodo para encontrar estos estados sucesivos en un problema, aplicando repetidamente las reglas bajo las que operan el sistema. Este eslabonamiento sucesivo de un estado particular con otros anteriores es una caracterstica importante de la simulacin. Generalmente, la simulacin implica la construccin de un modelo matemtico que describa el funcionamiento de sistema en cuanto a eventos y componentes individuales. Adems, el sistema se divide en los elementos y las interrelaciones de aquellos elementos de comportamiento previsible, al menos en funcin de una distribucin de probabilidades, para cada uno de los diversos estados del sistema y sus insumos. La simulacin es un medio de dividir el proceso de elaboracin de modelos en parte componentes ms pequeas y combinarlas en el orden natural o lgico. Lo que permite el anlisis en computadoras de los efectos de las interacciones mutuas entre esta. Debido al error estadstico, es imposible garantizar que se encontrar la respuesta ptima, no obstante la respuesta estar por lo menos prxima a la ptima si el problema se simula correctamente. En esencia, el modelo de simulacin realiza experimentos sobre los datos de una 10

Simulacin de Eventos

LII 210

muestra ms que sobre el universo entero, ya que esto sera demasiado tardado, inconveniente y costoso. Planificar un proceso de simulacin requiere de los siguientes pasos: a) Formulacin del problema. b) Recoleccin y procesamiento de la informacin requerida. c) Formulacin del modelo matemtico. d) Evaluacin de las caractersticas de la informacin procesada. e) Formulacin de un programa de computadora. f) Validacin del programa de computadora. g) Diseo de experimentos de simulacin. h) Anlisis de resultados y validacin de la simulacin. A continuacin se resumen las principales caractersticas asociadas a cada paso. FORMULACIN DEL PROBLEMA Generalmente un problema se presenta por sntomas, no por el diagnostico. Por lo que antes de generar soluciones en un sistema, se deben buscar el mayor nmero de sntomas. Segn Acoff y Sasieni, las condiciones para que exista el ms simple de los problemas son: Debe existir por lo menos un individuo que se encuentra dentro de un marco de referencia, el cual se puede atribuir el problema del sistema. El individuo debe tener por lo menos un par de alternativas para resolver su problema, en caso contrario no existe tal problema. Deben de existir por lo menos, un par de soluciones, una de las cuales debe tener mayor aceptacin que la otra en el individuo. En caso contrario, no existe el problema. Esta preferencia esta asociada a un cierto objetivo dentro del marco de referencia en donde se encuentra el individuo del sistema. La seleccin de cualquiera de las soluciones debe repercutir de manera diferente en los objetivos del sistema, es decir existe una eficiencia y/o efectividad asociada con cada solucin. Estas eficiencias y/o efectividades deben ser diferentes, puesto que de lo contrario no existe problema. Por ultimo le individuo que toma las decisiones ignora las soluciones y/o eficiencia y/o efectividades asociadas con las soluciones del problema. Si las cinco condiciones anteriores existen, entonces se tiene un problema. Esta situacin puede complicarse en los siguientes casos: El problema recae en un grupo, no en un individuo. El marco de referencia donde se encuentra el grupo, cambia en forma dinmica.

11

Simulacin de Eventos El numero de alternativas que el grupo puede escoger es bastante grande, pero finito.

LII 210

El grupo dentro del sistema puede tener objetivos mltiples. Peor aun, no necesariamente estos objetivos son consistentes entre si. Las alternativas que selecciona el grupo son ejecutadas por otro grupo ajeno, al cual no se le puede considerar como elemento independiente del sistema. Los efectos de la decisin del grupo pueden sentirse por elementos que aun siendo ajenos al sistema considerando, influyen directa o indirectamente, favorable o desfavorablemente hacia el (poltico, consumidor, etc.). Para formular un problema se necesita la siguiente informacin: Existe un problema? De quien es el problema?. Cual es el marco de referencia del sistema donde se encuentra el problema? Quien o quienes toman las decisiones? Cuales son sus objetivos? Cuales son los componentes controlables del sistema y cuales no lo son?. Cuales son las interrelaciones ms importantes del sistema?. Como se emplearan los resultados del proyecto? Por quien? Qu efectos tendr? Las soluciones tendrn efecto a corto o largo plazo? Podrn los efectos de las soluciones modificarse o cambiarse fcilmente? Cuantos elementos del sistema se afectaran por las soluciones del proyecto? En qu grado? FORMULAR UN PROBLEMA REQUIERE: Identificar las componentes controlables de un sistema. Identificar posibles rutas de accin dadas por las componentes, controlables. Definir el marco de referencia, dado por las componentes no controlables Definir los objetivos que se persiguen y clasificarlos por su orden de importancia. Identificar las relaciones importantes entre las diferentes componentes del sistema, este paso equivale a encontrar las restricciones que existen, a la vez que permite ms adelante representar estas interrelaciones en forma matemtica.

La identificacin de la estructura del sistema (componentes, canales, interrelaciones, etc.), se hace a travs de un proceso sistemtico, que se conoce como diseo de sistemas. 12

Simulacin de Eventos El diseo de sistemas se lleva a cabo de la siguiente manera: -

LII 210

Se ubica al sistema considerando dentro de sistemas ms grandes. Se determinan las componentes del sistema. Se determinan los canales de comunicacin entre las componentes del sistema y de este hacia los elementos de otros sistemas que van a tener influencia directa o indirecta. Se determinan de que manera se tiene acceso a la informacin requerida como se procesa esta y como se transmite entre las diferentes componentes del sistema.

GENERACIN DE VALORES DE UNA VARIABLE ALEATORIA INTRODUCCIN. Mtodos ms utilizados para generar nmeros aleatorios y pseudoaleatorios con computadora. Antes de continuar, es necesario establecer la siguiente terminologa. El trmino variable aleatoria se emplea para nombrar una funcin de valor real, definida sobre un espacio muestral asociado con los resultados de un experimento conceptual, de naturaleza azarosa. El valor numrico resultante de un experimento, de cada una de las variables aleatorias, se llama nmero aleatorio. Se utilizan letras maysculas para denotar las variables aleatorias y minsculas, para denotar valores de stas variables aleatorias y minsculas, para denotar valores de stas variables, es decir, para los nmeros aleatorios. Por ejemplo, F(x); la funcin de distribucin acumulada para una variable aleatoria X, indica la probabilidad de que X sea menor o igual al particular valor x de la funcin de probabilidad de la variable aleatoria X, cuando X= x. TECNICAS PARA GENERAR NMEROS ALEATORIOS. Se han venido usando cuatro mtodos alternativos para generar las sucesiones de nmeros aleatorios, estos son: Mtodos manuales Lanzamiento de monedas Lanzamiento de dados Barajas Dispositivos mecnicos Dispositivos electrnicos Ventajas: Son aleatorios Desventajas: No reproducibles TABLAS DE BIBLIOTECA.

13

Simulacin de Eventos

LII 210

Son nmeros aleatorios que se han publicado; por ejemplo a Millon Random Digits, de la Corporacin Rand, de los cuales podemos encontrar listas de los en los libros de probabilidad y tablas de matemticas. Estos nmeros fueron generados por alguno de los mtodos de computacin analgica, los cuales mencionados a continuacin. Ventaja: Provienen de un fenmeno aleatorio y son reproducibles. Desventaja: No se obtiene en tiempo real. MTODOS DE COMPUTACIN ANALOGICA Los mtodos de computacin analgica dependen de ciertos procesos fsicos aleatorios (por ejemplo, el comportamiento de una corriente elctrica), por lo que se considera que conducen verdaderos nmeros aleatorios. Ventaja: Aleatorios. Desventaja: No reproducible. MTODOS DE COMPUTACIN DIGITAL Se distinguen tres mtodos para producir nmeros aleatorio cuando se usa la computacin digital (computadoras), los cuales son: PROVISIN EXTERNA. Consiste en grabar en la memoria de la computadora, las tablas Randa, a fin de tratar estos nmeros como datos de entrada para un determinado problema. GENERACIN POR MEDIO DE PROCESOS FSICOS ALEATORIOS. Consiste en usar algn aditamento especial de la computadora, para registra los resultados de algn proceso aleatorio y adems, reduzca estas resultados a sucesiones de dgitos. GENERACIN INTERNA POR MEDIO DE UNA RELACIN DE RECURRENCIA. Consiste en generar nmeros pseudoaleatorios por medio de ecuaciones de recurrencia, en las que necesariamente se tiene que dar un valor inicial o semilla, para generar los siguientes valores. Vamos ha centrar nuestra atencin en este ltimo mtodo de computacin digital, y los describiremos ampliamente. Ventaja: Son reproducibles. Desventaja: Son pseudoaleatorios. CARACTERISTICAS DE LOS NMEROS PSEUDOALEATORIOS Uniformemente distribuidos Estadsticamente independientes Reproducibles 14

Simulacin de Eventos Sin repeticin dentro de una longitud determinada

LII 210

METODOS QUE UTILIZAN ECUACUACIONES DE RECURRENCIA PARA GENERAR NUMEROS PSEUDOALEATORIOS. Aqu describiremos los mtodos de generacin de nmeros pseudoaleatorios, usando ecuaciones de recurrencia. METODOS DE GENERACIN DE NUM. PSEUDOALEATORIOS U(0,1). -Mtodos congruenciales 69 Reglas:

C debe ser un entero impar, no divisible ni por 3 ni por 5 a usualmente puede ser cualquier constante sin embargo para asegurar buenos resultados, seleccione a de tal forma que (a) mod 8= 5 para una computadora binario a o (a) mod 200 = 21 para una computadora decimal. M debe ser el nmero entero ms grande que la computadora acepte

De acuerdo con Hull y Debell, los mejores resultados par un generador congruencial mixto en una computadora binaria son:

a=8*c

Lenguajes de propsito general como. C, C++. C es un lenguaje de programacin diseado por Dennis Ritchie, de los Laboratorios Bell, y se instal en un PDP-11 en 1972; se dise para ser el lenguaje de los Sistemas Operativos UNIX1. A su vez, UNIX es un Sistema Operativo desarrollado por Ken Thompson, quin utiliz el lenguaje ensamblador y un lenguaje llamado B para producir las versiones originales de UNIX, en 1970. C se invent para superar las limitaciones de B. C es un lenguaje maduro de propsitos generales que se desarroll a partir de estas races; su definicin aparece en 1978 en el apndice ``C Reference Manual'' del libro The C Programming Language, de Brian W. Kernighan y Dennis M. Ritchie (Englewood Cliffs,Nueva Jersey, Prentice-Hall 1978), pero el estndar recomendable ms reciente apareci en junio de 1983, en el documento de los Laboratorios Bell titulado The C Programming Language-Reference Manual, escrito por Dennis M. Ritchie Un programa en C Generalizando, un programa en C consta de tres secciones. La primera seccin es donde van todos los ``headers''. Estos ``headers'' son comnmente los ``#define'' y los ``#include''. Como segunda seccin se tienen las ``funciones''. Al igual que Pascal, en C todas las funciones que se van a ocupar en el programa deben ir antes que la funcin principal (main()). Declarando las funciones a ocupar al principio del programa, se logra que la funcin principal est antes que el 15

Simulacin de Eventos

LII 210

resto de las funciones. Ahora, solo se habla de funciones ya que en C no existen los procedimientos. Y como ltima seccin se tiene a la funcin principal, llamada main. Cuando se ejecuta el programa, lo primero que se ejecuta es esta funcin, y de ah sigue el resto del programa. Los smbolos { y } indican ``begin'' y ``end'' respectivamente. Si en una funcin o en un ciclo while, por ejemplo, su contenido es de solamente una lnea, no es necesario usar ``llaves'' ({ }), en caso contrario es obligacin usarlos. Ejemplo de un programa en C /*Programa ejemplo que despliega el contenido de "ROL" en pantalla*/ #include <stdio.h> #define ROL "9274002-1" despliega_rol() { printf("Mi rol es : \%s\n", ROL); } void main() { despliega_rol(); } /* Fin programa */

Delphi. En 1994, Borland comenz a trabajar en una herramienta RAD (Desarrollo Rpido de Aplicaciones, por sus siglas en ingls) a la que asign el nombre clave de Delphi. Cuando se decidi que la arquitectura del modelo de componentes era la mejor forma de implementar el desarrollo rpido de aplicaciones, entonces fue necesario establecer el lenguaje de programacin que sera el corazn del sistema. En ese momento Borland era el nico fabricante de compiladores en masa que comercializaba un compilador de Pascal. Borland era conocida como la compaa que produca las mejores herramientas Pascal. Si usted fue un programador de Pascal, probablemente utiliz el Turbo Pascal de Borland en alguna de sus modalidades. En cierto modo, Borland era el "dueo" de Pascal. Aunque Borland no posea el lenguaje Pascal en un sentido legal, sin duda pens que debido a su posicin en el mundo de Pascal, poda tomarse libertades considerables en la implementacin de nuevas caractersticas y mejoras al lenguaje. Adems, no haba un comit de estndares de Pascal, ni siquiera un estndar escrito que definiera al lenguaje Pascal. As que Borland cre Delphi utilizando Pascal como el lenguaje base (el nombre clave interno de Borland se qued y se convirti en el nombre oficial del producto). Antes de que existiera Delphi, Borland ya haba modificado el lenguaje Pascal en formas positivas. Por ejemplo, Borland ya haba extendido a Pascal creando un nuevo lenguaje denominado Object Pascal. Podra decirse que Object Pascal es a Pascal lo que C++ es a C. Object Pascal incorpor clases a Pascal, lanzando as a Pascal al mundo de los lenguajes de OOP (Programacin Orientada a Objetos, por sus siglas en ingls). Mientras se desarrollaba Delphi, se agregaron palabras clave y un nuevo comportamiento del lenguaje para abordar el modelo de componentes. Se incorporaron palabras clave como published y property, as como otras. Esto le permiti a 16

Simulacin de Eventos

LII 210

Borland implementar por completo el poder del modelo de componentes. Al modificar el lenguaje Pascal para adaptarlo al modelo de componentes, Borland pudo implementar el desarrollo rpido de aplicaciones en la forma correcta. En esencia, el lenguaje Object Pascal se modific de acuerdo a las necesidades cuando surgieron aspectos de diseo durante el desarrollo del entonces desconocido producto de nombre Delphi. El resultado es un lenguaje que funciona de manera fluida con el modelo de componentes. Aunque la modificacin del lenguaje Pascal podra considerarse como un paso capital de Borland, no fue sin que hubiera precedentes. Antes, Microsoft haba tomado y modificado el lenguaje BASIC para producir un nuevo lenguaje denominado Visual Basic. Este nuevo lenguaje era casi irreconocible al compararlo con el lenguaje BASIC original que le sirvi de base. Borland se arriesg al modificar a Pascal. Despus de todo, tena una base leal de clientes que podran no tomar a bien las mejoras al lenguaje que haban llegado a conocer y apreciar. Sin embargo, Borland tena una slida posicin en el mercado de Pascal y continu con sus planes. El resultado fue, por supuesto, un gran xito. No se hay que equivocarse, Object Pascal es un lenguaje de programacin poderoso, y no se hace esta declaracin a la ligera. Pronto descubrir que el lenguaje Object Pascal es muy capaz. De hecho, en manos del programador promedio, casi no hay diferencia entre los lenguajes C/C++ y Object Pascal en trminos de poder. Object Pascal es nico en que es al mismo tiempo poderoso y relativamente fcil de aprender. No se quiere de ninguna manera dejar la impresin de que Pascal no es un lenguaje de programacin con todas las caractersticas. Con frecuencia, Pascal ha sido tachado como un lenguaje de programacin menos que serio. Eso nunca ha sido cierto, y menos cierto con el Object Pascal actual. Visual La Simulacin Visual Interactiva, que puede definirse como aquella que posibilita la creacin grfica de modelos de simulacin, permite mostrar por pantalla dinmicamente el sistema simulado, as como la interaccin entre el usuario y el programa en ejecucin. La interaccin implica que o bien se detiene la simulacin y solicita informacin al usuario, o bien que ste puede parar la simulacin a su voluntad e interaccionar con el mencionado programa ; esto ltimo se puede realizar off-line o on-line, es decir sin interrumpir la simulacin, e introduciendo las variaciones oportunas tanto en los modelos, como en los valores de las variables en el siguiente ciclo de scan del proceso de ejecucin del programa en la computadora que para esto debe tener una estructura multitarea que permita este tipo de operaciones. Algunos productos del mercado son: SIMFACTORY DE CACI Inc. , PROMODEL de ProModel Corporation , ARENA de Rockwell Software Inc., WITNESS de ATT & Istel , o FACTOR/AIM de Pritsker Corporation , FIX DEMACS de Intellution (Fisher-Rosemount). Todos ellos son productos orientados primordialmente a la utilizacin de la simulacin para la resolucin de problemas en el mbito de la produccin. Utilizables desde entorno Windows, y ejecutables sobre computadoras personales o sobre plataformas mas potentes como Estaciones de trabajo (Workstations). Estos permiten construir modelos complejos de manera incremental, a partir de la seleccin de componentes del sistema de entre un repertorio limitado a la extensin de las libreras que contienen unas entidades predefinidas, si bien las ultimas tendencias aaden a estos paquetes editores para crear nuevas plantillas con caractersticas a gusto del consumidor, introduciendo adems utilidades de todo tipo 17

Simulacin de Eventos

LII 210

incluidas las gestiones de configuracin y control de las comunicaciones con un sistema de control real al que se puede conectar el equipo. Ventajas: Sirven para comunicar la esencia del modelo de simulacin a los directivos. Puede ayudar a corregir errores del programa de simulacin, o a mostrar que el modelo no es vlido. Puede ayudar a entender el comportamiento dinmico del sistema. Inconvenientes: No puede sustituir a un cuidadoso anlisis estadstico de los resultados. Slo una parte de la lgica del modelo de simulacin puede verse en la animacin, y no se puede concluir a partir de ese corto periodo de tiempo que el modelo est bien definido. Aumenta el tiempo para desarrollar el programa de simulacin. Muy lenta la animacin en directo. Otro enfoque se puede derivar de los lenguajes de simulacin y de los simuladores es el de los Sistemas Hbridos que combinan la flexibilidad de un lenguaje de simulacin con la facilidad de uso de un simulador como lo son el ARENA y el QUEST. Los simuladores y lenguajes de simulacin pueden adoptar uno de los diferentes mtodos o estrategias. Existen tres estrategias que son generalmente reconocidas: Enfoque de modelado basado en eventos. La orientacin basada en Eventos (ES) es gobernada por un calendario y ejecucin de subrutinas (eventos) que como consecuencia programa la ejecucin de otras subrutinas Los eventos son los instantes de tiempo en los cuales un cambio en el sistema ocurre y coincide con el inicio o terminacin de las actividades. Bajo este enfoque segmentos del programa son empleados para definir cada evento en el modelo. Despus de inicializado el modelo, las rutinas de ejecucin revisan los tiempos de ocurrencia de los eventos y avanzan el reloj de la simulacin hacia el tiempo en el cual ocurrir el prximo evento. Debe existir una subrutina para cada tipo de evento. Enfoque de modelado basado en actividades. La orientacin basada en Seguimiento de Actividades (SA) bajo este enfoque un segmento del programa es empleado para definir cada actividad en la cual las entidades se ven involucradas y las condiciones bajo las cuales la actividad puede realizarse. Dicho segmento incluye una serie de pruebas para determinar si la actividad ha sido iniciada en un punto del tiempo y define las acciones que se deben ejecutar si la actividad ha sido iniciada. Enfoque de modelado basado en procesos. La orientacin basada en Interaccin de Procesos (IP) es desarrollada desde el punto de vista de las entidades (transacciones) que fluyen en el sistema. Bajo este enfoque las entidades se clasifican en transacciones o clientes, servidores o recursos (entidades permanentes y entidades temporales). En este enfoque, existen segmentos del programa que son empleados para describir los procesos en los cuales se ven involucradas las entidades.

Sistemas productivos.

18

Simulacin de Eventos

LII 210

La simulacin en los sistemas productivos permite elaborar diversas situaciones, a veces difciles de imaginar en la realidad, tales como una baja en la produccin, prdidas en la distribucin de productos, etc., estas tcnicas son tiles para desarrollar planes de contingencia y estar preparados para la toma de decisiones en forma rpida y segura. Por ejemplo, el grupo SIMON de investigaciones en modelos y simulacin, aplicando el carcter interdisciplinario de la Dinmica de Sistemas, asociado a labores desarrolladas por CORPOICA en el anlisis de procesos pecuarios, desarroll el proyecto titulado, Propuesta de un Modelo de Simulacin de Sistemas de Produccin de Ganadera Bovina para la Investigacin Integral. Un Enfoque Sistmico: SIPROB 1.0, elaborado con el lenguaje de la Dinmica de Sistemas y con el propsito de representar los sistemas de produccin bovina, permitiendo su comprensin y la prueba de diferentes tecnologas para facilitar a los ganaderos la toma de decisiones y el aprendizaje sobre sus sistemas de Produccin. En la construccin del modelo se elaboraron tres prototipos. A continuacin se presenta una descripcin general de uno de ellos: El prototipo 1 modela los sistemas de produccin Bovina con relacin a variables demogrficas y productivas, estas hacen referencia a los elementos que componen el sistema: Terneros, Levantes y Vacas -en todas sus etapas: Vacas, Preadas, En das de Descanso y Lactantes-, con factores determinantes de la produccin como son la Tasa de Natalidad y la Probabilidad de Muerte. Se presenta el ciclo animal completo desde el nacimiento o introduccin al sistema de cada animal ya sea por una compra o por el nacimiento del mismo, hasta su muerte o venta cuando este cumpla su ciclo. En este prototipo no se presentan los limitantes biofsicos ni los econmicos. Calidad. En los procesos de control de calidad, los modelos de simulacin representan una herramienta de mucha utilidad para la obtencin de informacin acerca de los procesos y de la forma de corregir los defectos que se derivan en el manejo de los mismos. Por ejemplo, en el trabajo titulado: Medida y simulacin Monte Carlo de factores de correccin por calidad de haz La calibracin de un haz de fotones de megavoltaje de un usuario consiste en la determinacin de la dosis absorbida en agua depositada por el haz en condiciones de referencia. Esto se realiza mediante la medida de carga o corriente recogida en una cmara de ionizacin que ha sido calibrada en un laboratorio de calibracin mediante un haz de cobalto 60. Para tener en cuenta la diferencia entre los espectros del haz del usuario y del haz de cobalto del laboratorio de calibracin se utiliza un factor de correccin por calidad de haz. La red de laboratorios de calibracin no cuenta con haces de calidades iguales a las de los usuarios para determinar directamente estos factores. stos se encuentran tabulados en protocolos de dosimetra para la mayor parte de cmaras de ionizacin comerciales [1]. Para aquellas cmaras no tabuladas, los protocolos describen algoritmos sencillos para estimar estos factores. La incertidumbre asociada a ellos es del orden del 1%. En el presente trabajo, se muestran los resultados de la simulacin Monte Carlo de factores de correccin por calidad de haz (para distintas calidades y cmaras de ionizcin) y su comparacin con medidas experimentales relativas a una cmara de ionizacin calibrada a varias calidades en el laboratorio de calibracin alemn (Physikalisch-Technische Bundesanstalt, PTB).

19

Simulacin de Eventos

LII 210

Tanto los resultados experimentales como los de las simulaciones muestran una incertidumbre menor que la de los factores tabulados en los protocolos de dosimetra, siendo compatibles con stos dentro de incertidumbres (una desviacin estndar). Material y mtodos En este trabajo se determinaron mediante dos mtodos factores de correccin por calidad de haz para 9 modelos de cmara de ionizacin de los principales fabricantes (PTW, Exradin y Wellhfer). Simulacin Monte Carlo: El factor de correccin por calidad de haz para una cmara de ionizacin y un haz de calidad Q dados.

Donde Dw es la dosis absorbida en agua, determinada a la profundidad de referencia en un tanque de agua y condiciones de irradiacin de referencia establecidas en el protocolo de dosimetra TRS-398; Y Dair es la dosis absorbida en el aire encerrado en la cavidad de una cmara de ionizacin cuyo punto de referencia est situado en el mismo punto en el cual se determine Dw y en las mismas condiciones de irradiacin de referencia establecidas en el protocolo. La ecuacin (1) se deduce de la definicin alternativa del factor de correccin por calidad de haz que aparece en Andreo 1992 [2] y de la relacin entre Dw y Dair. Las dosis que intervienen en la ecuacin (1) se calcularon mediante simulacin Monte Carlo (sistema EGSnrc [3]) propagando en un tanque de agua los espacios de fase correspondientes a la simulacin de haces clnicos (haz de cobalto 60 como referencia y haces de megavoltaje de 4 a 25 MV, mediante el cdigo BEAMnrc [4]). Para el clculo de la dosis en agua se almacen la dosis en un voxel centrado a la profundidad de referencia en un tanque de agua (cdigo cavrznrc [5]). Para el clculo de la dosis en la cavidad se emple una geometra realista de la cmara de ionizacin proporcionada por el fabricante

Inventarios. Un ejemplo sera un sistema de inventarios de una fbrica, o bien el sistema de lneas de espera de una fabrica, etc. Estos modelos producen una salida que es en si misma de carcter aleatorio y sta debe ser tratada nicamente para estimar las caractersticas reales del modelo, esta es una de las principales desventajas de este tipo de simulacin, Otro ejemplo: un fabricante de comida para perros, requiere el auxilio de una compaa consultora con el objeto de construir un modelo de simulacin para su lnea de fabricacin, la cual produce medio milln de latas al da a una velocidad casi constante. Debido a que cada una de las latas se represent como una entidad separada en el modelo, ste resulto ser demasiado detallado y por ende caro para correrlo, hacindolo poco til. Unos meses ms tarde, se hizo una reformulacin del modelo, tratando al proceso como un flujo continuo. Este nuevo modelo produjo resultados precisos y se ejecuto en una fraccin del tiempo necesario por el modelo original.

20

Simulacin de Eventos Econmicos.

LII 210

En este campo la simulacin representa un mecanismo de evaluacin para la toma de decisiones que afecta a grandes sectores de la poblacin, un ejemplo es el estudios titulado: Simulacin de polticas econmicas: los modelos de equilibrio general aplicado. Los modelos de equilibrio general aplicado o computacional se utilizan para la simulacin de polticas econmicas de diversa ndole, como polticas fiscales, comerciales, medioambientales, y otras. Estos modelos han comenzado a plantearse recientemente como problemas de complementariedad mixta, lo que ha permitido solucionar algunos de los problemas planteados en su formulacin tradicional como problema de optimizacin del comportamiento de los agentes. En este trabajo realizamos una presentacin y puesta al da de la metodologa, junto con una descripcin de las bases de datos utilizadas (matrices de contabilidad social), as como una revisin de los modelos de equilibrio general aplicado realizados para la economa.

21

También podría gustarte