174006189 apuntes de simulacion1

69
2013 JOSE DEL C. VAZQUEZ HDEZ INGENIERIA INDUSTRIAL 21/02/2013 MATERIA: SIMULACION INSTITUTO TECNOLOGICO DE TUXTLA GUTIERREZ

Upload: monifita

Post on 26-Dec-2015

33 views

Category:

Documents


0 download

DESCRIPTION

simula

TRANSCRIPT

Page 1: 174006189 Apuntes de Simulacion1

2013

JOSE DEL C. VAZQUEZ HDEZ

INGENIERIA INDUSTRIAL

21/02/2013

MATERIA: SIMULACION

INSTITUTO TECNOLOGICO DE

TUXTLA GUTIERREZ

Page 2: 174006189 Apuntes de Simulacion1

Índice general

Unidad Temas Subtemas 1 Introducción a la

Simulación de eventos

discretos

1.1. Introducción

1.2. Definiciones y Aplicaciones

1.3. Estructura y características de la simulación

de eventos discretos.

1.4. Sistemas, Modelos y Control

1.5. Mecanismos de tiempo fijo y tiempo variable

1.6. Etapas de un Proyecto de simulación

2 Generación de Números

Aleatorios

2.1. Números aleatorios: definición, propiedades,

generadores y tablas

2.2. Propiedades de los números pseudoaleatorios.

2.3. Pruebas estadísticas de aleatoriedad para los

números pseudoaleatorios: de medias, de varianza, de

independencia y de bondad de ajuste.

2.4. Obtención de números pseudoaleatorios

utilizando paquetes computacionales.

2.5. Método de Monte Carlo

3 Generación de Variables

Aleatorias

3.1. Introducción

3.2. Generación de variables aleatorias discretas y

continuas utilizando paquetes computacionales como

Excel, ProModel, Arena.

4 Lenguajes de Simulación

y Simuladores de

Eventos Discretos

4.1. Antecedentes de los lenguajes de simulación y

simuladores

4.2. Aprendizaje y uso de un Simulador como:

ProModel, Arena, entre otros.

4.3. Características del software

4.4. Construcción de modelos

4.5. Consideraciones económicas en la simulación.

4.6. Realizar prácticas utilizando el simulador para

procesos productivos, de transporte, líneas de

espera, calidad, inventarios, entre otros.

4.7. Interpretación de los resultados obtenidos y

generación de propuestas de mejora para el modelo

analizado.

5 Proyecto de Aplicación 5.1. Elaboración de un proyecto final

5.2. Análisis, modelado, simulación e interpretación

de resultados para sistemas reales de empresas de

manufactura o de servicios, a fin de detectar las

mejoras posibles a realizar y proponer acciones que

mejoren su desempeño, considerando aspectos

económicos

Page 3: 174006189 Apuntes de Simulacion1

Unidad I. Introducción a la Simulación de eventos discretos

1.1. Introducción

En años recientes, el advenimiento de nuevos y mejores desarrollos en el área de la

computación ha traído consigo innovaciones igualmente importantes en los terrenos de la toma

de decisiones y el diseño de procesos y productos. En este sentido, una de las técnicas de

mayor impacto es la simulación.

Hoy en día, el analista tiene a su disposición una gran cantidad de software de simulación que

le permite tomar decisiones en temas muy diversos. Por ejemplo, determinar la mejor

localización de una nueva planta, diseñar un nuevo sistema de trabajo o efectuar el análisis

productivo de un proceso ya existente pero que requiere mejoras. Sin duda, la facilidad que

otorga a la resolución de éstas y muchas otras problemáticas, ha hecho de la simulación una

herramienta cuyo uso y desarrollo se han visto significativamente alentados. Cada vez resulta

más sencillo encontrar paquetes de software con gran capacidad de análisis, así como mejores

animaciones y características para generación de reportes. En general, dichos paquetes —ya

sea orientado a procesos, a servicios o de índole general— nos proveen de una enorme

diversidad de herramientas estadísticas que permiten un manejo más eficiente de la

información relevante bajo análisis, y una mejor presentación e interpretación de la misma.

El concepto de simulación engloba soluciones para muchos propósitos diferentes. Por

ejemplo, podríamos decir que el modelo de un avión a escala que se introduce a una cámara

por donde se hace pasar un flujo de aire, puede simular los efectos que experimentará un avión

real cuando se vea sometido a turbulencia. Por otro lado, algunos paquetes permiten hacer la

representación de un proceso de fresado o torneado: una vez que el usuario establezca ciertas

condiciones iniciales, podrá ver cómo se llevaría a cabo el proceso real, lo que le permitiría

revisarlo sin necesidad de desperdiciar material ni poner en riesgo la maquinaria.

Entre los distintos tipos de procesos de simulación que podemos utilizar, en este libro nos

ocuparemos del que se basa en el uso de ecuaciones matemáticas y estadísticas, conocido

como simulación de eventos discretos. Este proceso consiste en relacionar los diferentes

eventos que pueden cambiar el estado de un sistema bajo estudio por medio de distribuciones

de probabilidad y condiciones lógicas del problema que se esté analizando. Por ejemplo, un

proceso de inspección donde sabemos estadísticamente que 0.2% de los productos tiene algún

tipo de defecto puede simularse con facilidad mediante una simple hoja de cálculo,

considerando estadísticas de rechazos y productos conformes, y asignando una distribución de

probabilidad con 0.2% de oportunidad de defecto para cada intento de inspección.

En el presente capítulo abordaremos las definiciones básicas de los conceptos de la simulación

de eventos discretos. En los siguientes se presentarán algunos otros elementos relevantes,

como los números pseudoaleatorios y las pruebas estadísticas necesarias para comprobar esta

aleatoriedad, la generación de variables aleatorias y la caracterización de algunas

Page 4: 174006189 Apuntes de Simulacion1

distribuciones de probabilidad de uso común en la simulación, lo cual nos permitirá realizar

una simulación sencilla con ayuda de una hoja de cálculo. Por último, describiremos la

utilización de un software comercial: Promodel, una versión limitada del cual se incluye en

este curso.

La simulación consiste básicamente en construir modelos informáticos que describen la parte

esencial del comportamiento de un sistema de interés, así como en diseñar y realizar

experimentos con el modelo y extraer conclusiones de sus resultados para apoyar la toma de

decisiones. Típicamente, se utiliza en el análisis de sistemas tan complejos que no es posible

su tratamiento analítico o mediante métodos de análisis numéricos. Sus orígenes están en los

trabajos de Student para aproximar la distribución que lleva su nombre, y los métodos que

Von Neumann y Ulam introdujeron para resolver ecuaciones integrales. Desde entonces, la

Simulación ha crecido como una metodología de experimentación fundamental en campos tan

diversos como la Economía, la estadística, la Informática o la Física, y con enormes

aplicaciones industriales y comerciales, como los simuladores de vuelo, los juegos de

simulación, o la predicción bursátil o meteorológica.

La crisis del petróleo de los años setenta obligó a la industria en general a enfocar sus

esfuerzos en ser enérgicamente más eficientes, iniciándose así una etapa de desarrollo

tecnológico encaminado a mejorar los procesos existentes y a diseñar otros nuevos más

eficientes.

Este fue el caldo de cultivo necesario para motivar el desarrolló en simulación de procesos.

El comienzo fue lento y se dio en forma conceptual, experimental y académica en algunas

compañías y universidades en Estados Unidos, Canadá y Europa. Para 1975 se había

generalizado el desarrollo de simuladores con algunas aplicaciones industriales reducidas.

En 1980 empezaron a surgir compañías elaboradoras de software, que desarrollaban paquetes

de simulación para su comercialización, pero tenían la desventaja de que la entrada y salida de

la información eran muy rígidas y se presentaban en forma de listados de difícil interpretación.

A finales de los años 80’s se inició el desarrollo de paquetes de simulación interactivos y su

comercialización marcó el comienzo de un uso más intensivo y generalizado en la industria y

las universidades. Entre 1991 y 1995 se inicia la comercialización de paquetes de simulación

dinámica y de integración de energía.

En los últimos años, la simulación de procesos en estado estacionario ha llegado a ser una

herramienta de apoyo para el diseño de procesos industriales y además su uso se está

extendiendo en las instituciones de formación de ingenieros industriales. La simulación de

procesos está jugando un papel muy importante en la industria de procesos, como una

herramienta adecuada y oportuna para el diseño, caracterización, optimización y monitoreo del

funcionamiento de procesos industriales.

Page 5: 174006189 Apuntes de Simulacion1

Aun cuando en sus inicios la simulación de procesos estuvo enfocada principalmente a la

industria petroquímica y de refinación del petróleo, su aplicación se ha ido extendiendo a otras

industrias tales como la de combustibles sintéticos, pulpa y papel, cemento, metales,

minerales, alimentos, etc., en donde se involucra la fase sólida.

La simulación de procesos industriales ha involucrado ambos comportamientos de procesos

estacionarios y dinámicos.

Historia de la simulación

El galopante desarrollo tecnológico de las últimas décadas hace que los términos que hasta

hace poco tiempo eran exclusivos de las novelas de ficción formen parte de nuestro día a día.

Con la capacidad de cálculo de los ordenadores más rápida, y técnicas visuales

perfeccionadas, surgen nuevas ideas sobre desarrollos de herramientas de entrenamiento

basadas en tecnologías innovadoras. El empleo de la simulación se presenta como uno de los

métodos más efectivos a la hora de trasmitir los conocimientos y análisis en determinadas

materias, pero por su elevado coste solamente es alcanzable para las grandes empresas, o

entidades con importante financiación pública.

Gracias a los avances tecnológicos la simulación ha evolucionado enormemente, permitiendo

alcanzar excelentes cotas de fiabilidad. Las capacidades de cálculo actuales permiten ejecutar

una serie de Modelos Matemáticos que conjuntamente con las técnicas visuales reflejan

fielmente la realidad en toda su complejidad.

El reto que nos depara el presente es una aplicación masiva de la simulación con formación a

un amplio sector de la sociedad. Ofrecer las bondades de esta técnica hasta ahora accesibles a

un pequeño porcentaje de la población es uno de los principales objetivos de Lander. Y lo

estamos logrando, los productos como Sistema Lander Multipropósito y Lander Simbio

suponen un auténtico punto de inflexión y acercamiento de esta técnica de formación a un

mayor número de personas. Con ellos un amplio sector de la sociedad es capaz de adquirir un

simulador, mejorar la calidad y el contenido de la formación.

Esto no quiere decir que ya hemos cumplido nuestros retos. El progreso continúa y con él cada

avance en el plano tecnológico debe estar traducido en beneficio de las personas. Lo que nos

deparará el futuro no lo sabemos, pero estaremos ahí para utilizarlo de la mejor manera

posible.

Este hito histórico abrió las puertas a la aplicación de la simulación en el campo del proceso

de control industrial así como a las sinergias que generaba esta simulación basada en la

experimentación y técnicas de análisis para descubrir soluciones exactas a problemas clásicos

de la industria y la ingeniería.

Page 6: 174006189 Apuntes de Simulacion1

A mediados de los años 40 dos hechos sentaron las bases para la rápida evolución del campo

de la simulación:

La construcción de los primeros computadores de propósito general como el ENIAC.

El trabajo de Stanislaw Ulam, John Von Neumann y otros científicos para usar el método de

Montercarlo en computadores modernos y solucionar problemas de difusión de neutrones en el

diseño y desarrollo de la bomba de hidrógeno. Ulam y Von Neumann ya estuvieron presentes

en el proyecto Manhattan.

En 1960, Keith Douglas Tocher desarrolló un programa de simulación general cuya principal

tarea era la de simular el funcionamiento de una planta de producción donde las máquinas

ciclaban por estados: Ocupado, Esperando, No disponible y Fallo; de manera que las

simulaciones en los cambios de estado de las máquinas marcarán el estado definitivo de la

producción de la planta. Este trabajo produjo además el primer libro sobre simulación: The Art

of Simulation (1963).

Para aquel entonces, IBM desarrolló entre 1960 y 1961 el Sistema de Simulación de propósito

general o General Purpose Simulation System (GPSS). El GPSS se diseñó para realizar

simulaciones de teleprocesos involucrando por ejemplo: control de tráfico urbano, gestión de

llamadas telefónicas, reservas de billetes de avión, etc. La sencillez de uso de este sistema lo

popularizó como el lenguaje de simulación más usado de la época.

Por otro lado, en 1963 se desarrolló SIMSCRIPT, otra tecnología alternativa al GPSS basada

en FORTRAN, más enfocada a usuarios que no tenían por qué ser obligatoriamente expertos

informáticos en RAND CORPORATION.

Complementariamente a los desarrollos llevados a cabo por RAND e IBM, el Royal

Norwegian Computing Center inició en 1961 el desarrollo del programa SIMULA con ayuda

de Univac. El resultado fue SIMULA I, probablemente el lenguaje de programación más

importante de toda la historia.

En 1967 se fundó el WSC (Winter Simulation Conference), lugar donde desde entonces y

hasta ahora se archivan los lenguajes de simulación y aplicaciones derivadas, siendo en la

actualidad el referente en lo que a avances en el campo de los sistemas de simulación se

refiere.

Page 7: 174006189 Apuntes de Simulacion1

Periodo de expansión 1970-1981

Durante este periodo se desarrollaron avanzadas herramientas de modelado y de análisis de

resultados. Gracias también a los desarrollos obtenidos en la generación de datos y a las

técnicas de optimización y representación de datos, la simulación llega a su fase de expansión

donde comienza a aplicarse en múltiples campos

Anteriormente, los datos de salida obtenidos de una simulación por computadora se

presentaban en una tabla o matriz, de manera que se mostraba el efecto que los múltiples

cambios en los parámetros tenían sobre los datos. El empleo del formato de matriz se debía al

uso tradicional que se hacía de la matriz en los modelos matemáticos. Sin embargo, los

psicólogos advirtieron que los seres humanos percibían mejor los cambios en el desarrollo de

las situaciones si miraban gráficos o incluso imágenes en movimiento ó animaciones

generadas a partir de dichos datos, como las que se ejecutan en las animaciones de imágenes

generadas por computadora.

Tabla 1.1. Cronología de la simulación

Año Evento

1942-1945 J. V. Neumann S. Ulman desarrollan el método de Montecarlo

1950's Estudios de capacidad de las líneas telefónicas

1961 G. Gordon diseña el lenguaje de simulación GPSS

1961-1979 Impulso de los ordenadores por transistores, Conferencias sobre Aplicación de la

simulación

1977 J Henriksen mostró el pseudocódigo para la implementación de modelos de simulación

de eventos discretos

1980's Nuevos lenguajes donde integran resultados de simulación, animación SIMAN IV y

CINEMA IV. Surgen metodologías independientes del lenguaje de simulación

1990's- Nuevos sistemas donde el proceso de simulación está totalmente integrado,

acercamiento de la simulación a la empresa privada

1.2. Definiciones y Aplicaciones

Definiciones

“Es una técnica numérica para conducir experimentos en un computador digital, la cual

incluye ciertos tipos de relaciones lógicas y matemáticas necesarias para describir la

estructura y comportamiento de un sistema complejo del mundo real sobre un periodo de

tiempo”.

Page 8: 174006189 Apuntes de Simulacion1

También se considera a la simulación como un proceso para describir la esencia de la

realidad, el cual incluye la construcción, experimentación y manipulación de un modelo

complejo en un computador.

“Conjunto de relaciones lógicas, matemáticas y probabilísimas que integran el

comportamiento de un sistema bajo estudio cuando se presenta un evento determinado”

(García Dunna Eduardo. García reyes Heriberto y Cárdenas Barrón Leopoldo

Eduardo).

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 periodos de tiempo (Thomas H. Naylor).

Simulación es el desarrollo de un modelo lógico matemático de un sistema, de tal forma

que se tiene una imitación de la operación de un proceso de la vida real o de un sistema a

través del tiempo. La simulación involucra la generación de una historia artificial de un

sistema, la observación de esta historia mediante la manipulación experimental, nos

ayuda a inferir las características operacionales de tal sistema (JERRY BANKS).

Simulación 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 de sistemas de negocios, económicos, sociales, biológicos,

físicos o químicos a través de largos periodos de tiempo (H. MAISEL y G. GNUGNOLI).

Simulación es el proceso de diseñar y desarrollar un modelo de un sistema o proceso real

y conducir experimentos con el propósito de entender el comportamiento del sistema o

evaluar varias estrategias (dentro de límites impuestos por un criterio o conjunto de

criterios) para la operación del sistema (Robert. Shannon).

Aplicaciones generales

Sistemas de computación: redes de ordenadores, componentes, programación, bases de

datos, fiabilidad.

Fabricación: manejo de materiales, líneas de montaje, equipos de almacenamiento,

control de inventario, mantenimiento, distribución en planta, diseño de máquinas

Negocios: análisis de existencias, política de precios, estrategias de marketing, estudios

de adquisición, análisis de flujo de caja, predicción, alternativas del transporte,

planificación de mano de obra.

Page 9: 174006189 Apuntes de Simulacion1

Gobierno: armamento y su uso, tácticas militares, predicción de la población, uso del

suelo, prevención de incendios, servicios de policía, justicia criminal, diseño de vías de

comunicación, servicios sanitarios.

Ecología y medio ambiente: contaminación y purificación del agua, control de residuos,

contaminación del aire, control de plagas, predicción del tiempo, análisis de sismos y

tormentas, exploración y explotación de minerales, sistemas de energía solar, explotación

de cultivos.

Sociedad y comportamiento: estudios de alimentación de la población, políticas

educativas, estructuras organizativas, análisis de sistemas sociales, sistemas de asistencia

social, administración universitaria.

Biociencias: rendimiento en el deporte, control de epidemias, ciclos de vida biológicos,

estudios biomédicos

1.3. Estructura y características de la simulación de eventos discretos

Sistema: La definición básica de sistema nos dice que se trata de un conjunto de elementos

que se interrelacionan para funcionar como un todo; desde el punto de vista de la simulación,

tales elementos deben tener una frontera clara. Por ejemplo, podemos hablar del sistema de

atención de clientes en un banco, del sistema de inventarios de una empresa o del sistema de

atención en la sala de emergencia de un hospital.

Atributos: Un atributo es una característica de una entidad. Por ejemplo, si la entidad es un

motor, los atributos serían su color, peso, tamaño o cilindraje. Los atributos son muy útiles

para diferenciar entidades sin necesidad de generar una entidad nueva, y pueden adjudicarse al

momento de la creación de la entidad, o asignarse y/o cambiarse durante el proceso.

Son las características de las entidades, con las cuales se describen y diferencian. Por ejemplo,

son atributos de los pacientes, como la edad, el sexo, la duración de su enfermedad, la

gravedad de ésta y el cumplimiento del tratamiento.

Un atributo importante en las evaluaciones económicas, fundamental en los estudios de costo-

utilidad, sería la calidad de vida. Ésta se puede estudiar de forma detallada incluyéndola

mediante un atributo.

Todas las entidades tienen los mismos tipos de atributos, pero con diferentes valores para cada

entidad; los valores de los atributos están, por tanto, ligados a una entidad concreta. Por

Page 10: 174006189 Apuntes de Simulacion1

ejemplo, todos los pacientes tienen «edad» o «presión arterial», pero cada uno posee un valor

específico. El atributo puede asignarse como un valor específico, una muestra de una

distribución o el resultado de una expresión (p. ej., de una ecuación condicional).

Existen varios tipos de atributos

Tipos de Atributos

P: Parámetros son atributos fijados durante el diseño del sistema

U: Variables de entradas o exógenos, fijadas por el entorno

D: Variables de entradas fijadas por el usuario

Y: Variables de salida son las variables de estado o combinación de ellas

correspondiente a medidas del sistema

Sucesos: Hechos que ocurren en un instante de tiempo y que dan lugar a cambios en el estado

del sistema.

Colas: Estados pasivos de una entidad mientras espera el inicio de una actividad

Estados: Condiciones del modelo o sus entidades, de forma que se puede saber si una acción

se puede ejecutar o si se puede elegir entre varias.

Reloj de simulación

Puesto que en este tipo de simulación se está considerando la evolución temporal del sistema,

cuyo estado se modifica sólo en instantes discretos de tiempo a causa de la aparición de algún

evento, será necesario introducir un «reloj de simulación» que registre el tiempo virtual

transcurrido desde la puesta en marcha del sistema, y que permita referenciar el instante

exacto en que ocurre cada uno de los eventos. Es importante no confundir el tiempo virtual

Page 11: 174006189 Apuntes de Simulacion1

que marca el reloj de simulación con el tiempo de computación, el cual registra el tiempo real

transcurrido desde que la simulación se puso en marcha.

El tiempo marcado por el reloj de simulación hace explícito el paso del tiempo a lo largo del

modelo. Esto hace posible señalar el comienzo y el final de la simulación, y la aparición de

eventos clínicos en su momento exacto, sin necesidad de ciclos de duración fija. Esto permite

una simulación más eficiente y realista en función de la aparición de los eventos durante el

curso de la enfermedad en los pacientes.

También permite la creación de relojes secundarios que marcan tiempos importantes, como la

estancia hospitalaria, el tiempo de ausencia de efectos adversos o la supervivencia.

Puesto que los cambios en el sistema se producen sólo cuando ocurre algún evento, queda

claro que el estado del sistema no sufrirá ninguna variación entre 2 eventos consecutivos. Este

hecho da sentido a una de las políticas más habituales para controlar el reloj de simulación: si

se sabe que el evento n se acaba de producir en el instante virtual actual , y que el evento n +

1 se producirá en el instante virtual , dado que entre ambos instantes no pasará nada de

interés, se «avanzará» el reloj de simulación hasta el instante tn+1, y se asignará dicho instante

a la variable del programa que representa el reloj de simulación. Tras avanzar el reloj hasta el

instante , se lleva a cabo la actualización de las variables de estado y estadísticas del

sistema. Este proceso de «avance hasta el siguiente evento y actualización de variables» se

repite de forma indefinida hasta que se verifique alguna condición de fin de la simulación.

Entidades

Son los elementos dinámicos que se simulan a través del modelo, cambian de estatus, afectan

y son afectados por otras entidades y son los protagonistas de los eventos clínicos de estudio

del modelo.

Normalmente, en la simulación de una enfermedad se representan pacientes, pero pueden

representarse también distintos componentes, como enfermeras, familiares o médicos. Estas

entidades suponen una diferencia importante respecto a los árboles de decisión o a los modelos

de Markov, en los cuales se especifican los resultados clínicos, estados o transiciones de los

pacientes, pero éstos en sí no son caracterizados como elementos explícitos del modelo, tal

como ocurre en los MSED.

Page 12: 174006189 Apuntes de Simulacion1

Eventos

Es todo aquello que puede ocurrir durante la simulación en función del proceso que estamos

estudiando. Por ejemplo, un evento puede ser un efecto adverso, una admisión hospitalaria, el

alta del hospital, un cambio de dosis o una baja laboral. El concepto de evento va más allá de

las transiciones de los modelos de Markov, ya que la aparición de un evento no

necesariamente implica el cambio de estado de salud del paciente (p. ej., una visita al médico).

A pesar de que hay una secuencia temporal dada, los eventos pueden suceder de forma casi

simultánea y pueden hacerlo en cualquier secuencia lógica en relación con la historia plausible

del proceso de estudio (p. ej., fallo en un órgano diana o fallo multiorgánico en un paciente

con sepsis). Al contrario que en los modelos de Markov, estos eventos no presentan ningún

tipo de restricción de memoria.

Los riesgos de que los diferentes eventos ocurran pueden tomar la forma de funciones

dependientes de los datos y depender de algunos atributos y variables. Estas funciones pueden

cambiar durante la simulación.

Variables

Las variables definen el modelo y reflejan una característica del conjunto, no de entidades

específicas. Son especificaciones que se mantienen a lo largo del modelo, aunque sus valores

pueden cambiar durante el proceso de simulación, y van a definir el entorno de la simulación

afectándolo a lo largo de todo el proceso. Las variables de uso común son: el horizonte

temporal (duración de la simulación), las tasas de descuento para los costos y los beneficios,

las tasas de incidencia, la proporción de cada tratamiento al inicio, la tasa de admisión o la

perspectiva de uso. Sólo hay una copia de cada variable que se mantiene para todo el modelo.

Recursos

Definidos en un tiempo determinado, su consumo lleva asociado el gasto de una serie de

unidades de dichos recursos en momentos de tiempo concretos. En el ámbito sanitario estos

recursos se pueden dividir en personas (médicos, enfermeras, cuidadores), bienes

(medicamentos, pruebas de laboratorio), espacios (camas hospitalarias, quirófanos) entre

otros.

Algunos recursos pueden consumirse de manera simultánea en un momento dado, pero lo más

frecuente es que las entidades tengan que competir por estos recursos, que además tienen un

costo unitario de uso.

Page 13: 174006189 Apuntes de Simulacion1

Un recurso puede tener diferentes unidades de capacidad (pensemos, por ejemplo, en las

camas en una sala de emergencia o en el número de médicos en una zona geográfica

determinada).

Acumuladores estadísticos

Son variables que acumulan la información de lo que ha pasado sin participar en el suceso

mismo, es decir, son pasivos. Dependen de la caracterización de los resultados pedidos al

modelo. Al final de la simulación, se usan para obtener el resultado final, y las medidas de

éstos (cocientes costo efectividad). Algunos ejemplos de acumuladores estadísticos son la

supervivencia, los costos asociados a los pacientes o el número de visitas en un tiempo

determinado.

Colas

Cuando un paciente utiliza un determinado recurso, éste deja de estar disponible para el resto

de los pacientes, lo cual puede generar colas en el sistema. Esta situación no suele tenerse en

cuenta en otro tipo de modelos, en los que los recursos parecen gozar de una capacidad infinita

(lo cual está alejado de la máxima de la escasez de recursos en función de las necesidades de

la población, que es una característica de la toma de decisiones en sanidad). Esta

conceptualización está vinculada a la idea del costo de oportunidad de los recursos en la

propia estructura del modelo.

Retrasos

Se pueden generar 2 tipos de retrasos: explícitos, que son los que se generan por algún tipo de

acción o proceso (p. ej., la duración de los exámenes médicos), e implícitos, causados por

otras acciones o condiciones en la simulación del modelo (p. ej., colas para acceder a una

prueba diagnóstica).

Cuando se escribe un programa de simulación para MSED se puede realizar una aproximación

del esquema temporal de funcionamiento de las entidades en el sistema. Así, deberá

describirse la secuencia de eventos y actividades que realizarán las entidades durante su

estancia en el sistema y cómo se modificarán. Algunos de los sistemas más estudiados son los

problemas de colas que se aplican en determinadas situaciones, como la espera que deben

tener los pacientes entre visita y visita, si los centros donde son tratados no pueden absorber

toda su demanda (p. ej., en un centro e instante de tiempo sólo puede ser tratado un paciente a

la vez).

Page 14: 174006189 Apuntes de Simulacion1

A modo de resumen, para llevar a cabo la simulación del sistema se deben seguir una serie de

etapas, ampliamente identificadas y discutidas en la literatura científica (Figura):

Clasificación de modelos

1. Estático. Las variables de estado no dependen del tiempo

2. Dinámico. El valor de las variables de estado es modificado en el tiempo

3. Determinista. Si el sistema no contiene ningún elemento aleatorio es un sistema

determinístico.

4. Estocástico. En este caso algún elemento del sistema tiene una conducta aleatoria. Para

valores de entradas conocidas no es posible asegurar los valores de salida.

5. Continuo. Se tiene un sistema continuo cuando las relaciones funcionales entre las variables

del sistema sólo permiten que el estado evolucione en el tiempo en forma continua (basta que

una variable evolucione continuamente).Matemáticamente, el estado cambia en infinitos

puntos de tiempo.

Page 15: 174006189 Apuntes de Simulacion1

6. Discreto. Se tiene un sistema discreto cuando las relaciones funcionales del sistema sólo

permiten que el estado varíe en un conjunto finito (contable) de puntos temporales. Las causas

instantáneas de los cambios de estados se denominan eventos.

1.4. Sistemas, Modelos y Control

Un Sistema se define como una colección de entidades (por ejemplo, personas, máquinas, etc.)

que actúan e interactúan juntas para lograr un fin común. En la práctica, ¿qué se entiende por

sistema?, depende de los objetivos del estudio particular que se pretenda hacer. El conjunto de

entidades que componen el sistema para un estudio puede ser sólo un conjunto de todas las

entidades utilizadas para otro estudio.

Se puede definir el estado de un sistema con un conjunto de variables necesarias para describir

el sistema en un punto particular de tiempo, relativo a los objetivos del estudio. Los sistemas

se pueden clasificar en dos tipos, discretos y continuos. Un sistema discreto es aquel en el que

las variables de estado cambian instantáneamente en puntos separados en el tiempo. Un

sistema continuo es aquel en el que las variables de estado cambian continuamente con

respecto al tiempo. En la práctica muchos sistemas no son completamente discretos o

continuos, usualmente es posible clasificarlos en base al tipo de cambios que predominen en el

mismo.

En algunos momentos en la vida de un sistema es necesario estudiar el mismo para entender

las relaciones entre sus componentes o predecir su comportamiento bajo nuevas condiciones

que se consideran. Existen diferentes formas de estudiar un sistema (Figura 1.1):

Experimentar sobre el sistema actual frente a experimentar con un modelo del sistema. Lo

primero es preferible siempre y cuando se pueda alterar el sistema con las nuevas condiciones

y no sea muy costoso. Sin embargo es muy raro que esto se pueda llevar a cabo, ya que

normalmente estos experimentos suelen ser muy costosos o muy destructivos para el sistema.

Incluso puede ocurrir que el sistema no exista pero se quiera estudiar posibles alternativas de

construcción del mismo (sistemas de fabricación, armas nucleares, etc.). Por estas razones es

necesario construir un modelo que represente al sistema y estudiar éste para poder responder

a las cuestiones planteadas sobre el sistema.

Modelo físico frente a modelo matemático: Para muchos la palabra modelo, evoca imágenes

de miniaturas, cabinas separadas de los aviones para el entrenamiento de los pilotos, etc. Estos

son ejemplos de modelos físicos (también conocidos como modelos icónicos). Sin embargo la

mayoría de los modelos construidos para estudiar los sistemas son matemáticos, los cuales

Page 16: 174006189 Apuntes de Simulacion1

representan un sistema en términos de relaciones cuantitativas y lógicas que pueden ser

cambiadas para ver cómo el modelo reacciona y ver así como debería comportarse el sistema,

si el modelo es válido.

Solución Analítica frente a Simulación: Una vez que se ha construido un modelo matemático,

éste debe examinarse para poder concluir el comportamiento del sistema y así responder a las

cuestiones planteadas sobre el mismo. Si el modelo es simple, es posible trabajar con estas

cantidades y relaciones y obtener una solución analítica exacta. Sin embargo hay veces en las

que obtener una solución analítica resulta complejo y necesita muchos recursos de

computación. En estos casos el modelo puede ser estudiado por medio de simulación, es decir,

se ejercita el modelo numéricamente por medio de entradas para ver cómo éstas afectan a las

medidas de salida o ejecución.

Los modelos deben contener sólo los aspectos esenciales del sistema real que representan.

Aquellos aspectos del sistema que no contribuyen significativamente en su comportamiento no

se deben incluir, ya que lo que harían sería obscurecer las relaciones entre las entradas y las

salidas. ¿En qué punto se debe parar de incluir realismo en el modelo? Esto depende del

propósito para el cual el modelo se haya desarrollado.

Page 17: 174006189 Apuntes de Simulacion1

Características que deben presentar los modelos:

Deben ser fáciles de entender y manejar.

Deben ser simples y de costo no excesivo.

Deben ser una buena aproximación del sistema real, que controle el mayor número

posible de aspectos del mismo y que éstos contribuyan de forma significativa al

sistema (hay relaciones en el sistema que no son significativas y pueden obviarse en el

modelo).

El diseño y control de modelos de modelos obliga a tener conocimientos de cuatro áreas de

conocimiento distintas:

Modelización: necesarios para diseñar el modelo que permita dar respuestas válidas del

sistema real que represente. El diseño es una fase muy importante, ya que los errores

proporcionarán modelos falsos.

Programación: ya que el modelo se ha de implantar con un lenguaje de programación.

Probabilidad y Estadística: la probabilidad es necesaria para definir y estudiar las

variables aleatorias de las entradas, y la estadística para permitir el diseño y análisis de

los experimentos.

Métodos Heurísticos: para permitir llegar a una solución buena del problema

planteado.

Control: Es el elemento de verificación de datos del sistema, mediante el cual,

automáticamente vuelve a traer los datos necesarios relacionados con la rutina de

procedimiento que se controla.

Un Sistema de Control está definido como un conjunto de componentes que pueden regular su

propia conducta o la de otro sistema con el fin de lograr un funcionamiento predeterminado,

de modo que reduzcan las probabilidades de fallos y se obtengan los resultados buscados.

La finalidad de un sistema de control es conseguir, mediante la manipulación de las variables

de control, un dominio sobre las variables de salida, de modo que estas alcancen unos valores

prefijados (consigna).

1.5. Mecanismos de tiempo fijo y tiempo variable

Parte de la construcción de modelos es el mecanismo de avance de tiempo. Este dependerá de

la aproximación elegida para describir el comportamiento del sistema. Si se eligió la

aproximación de flujo físico, este diagrama de flujo podría refinarse para convertirse en el

diagrama de flujo del programa. Si se siguió la aproximación de cambio de estado, el

Page 18: 174006189 Apuntes de Simulacion1

diagrama de flujo desarrollado debería describir el procedimiento que efectúa los cambios de

estado en el tiempo.

Otros dos factores inciden en la construcción del diagrama de flujo del programa:

elegir un mecanismo de avance del tiempo y el lenguaje de programación que se seleccione.

Hay fundamentalmente dos formas de considerar el avance del tiempo en un modelo de

simulación:

Incrementos fijos de tiempo: se considera un intervalo fijo de tiempo y el estado del

modelo se comprueba después de transcurrido cada uno de estos incrementos constantes.

Incrementos por los eventos (N.E.T.A., Next Event Time Advance): las

comprobaciones y modificaciones de las variables afectadas se realizan sólo después de la

ocurrencia de un evento. Aquí el incremento de tiempo es variable, va desde la ocurrencia de

un evento a otro.

El avance del tiempo de simulación depende de cuál de las aproximaciones se elija. Si se elige

el incremento por eventos, el reloj se inicializa a 0, y se incrementa al siguiente tiempo en que

vaya a ocurrir un suceso, en ese momento, en este momento de actualización del reloj se

modifican las variables que se vean afectadas por la ocurrencia del suceso. Si por el contrario

se elige un incremento de tiempo fijo, el reloj se inicia a 0 y se va actualizando cada vez que

pase el incremento de tiempo fijado. En esos instantes se observará el sistema para realizar los

cambios. En ese momento puede ocurrir que no haya sucedido ningún cambio o que por el

contrario que hayan ocurrido más de un suceso con lo cual se tendrá que decidir cuál atender

antes (por ejemplo dando prioridad a los sucesos). En esta aproximación pueden ocurrir

“errores de redondeo”, que hacen referencia a la diferencia de tiempo que pasa desde que

sucede un suceso hasta que éste se computa (cuando el reloj se incrementa).

Hay que tener cuidado en la elección del incremento de tiempo. Si éste es demasiado pequeño

se realizará trabajo inútil, ya que se comprobarán cambios cuando en realidad no ha ocurrido

ningún suceso. Por el contrario si es demasiado grande se producirán muchos errores de

redondeo y la dinámica del modelo será ineficiente.

Avance del reloj de simulación según los sucesos.

Avance del reloj de simulación en incrementos fijos.

Page 19: 174006189 Apuntes de Simulacion1

1.6. Etapas de un Proyecto de simulación

1. Definición del sistema bajo estudio. En esta etapa es necesario conocer el sistema a

modelar. Para ello se requiere saber qué origina el estudio de simulación y establecer los

supuestos del modelo: es conveniente definir con claridad las variables de decisión del

modelo, determinar las interacciones entre éstas y establecer con precisión los alcances y

limitaciones que aquel podría llegar a tener.

Antes de concluir este paso es recomendable contar con la información suficiente para lograr

establecer un modelo conceptual del sistema bajo estudio, incluyendo sus fronteras y todos los

elementos que lo componen, además de las interacciones entre éstos, flujos de productos,

personas y recursos, así como las variables de mayor interés para el problema.

2. Generación del modelo de simulación base. Una vez que se ha definido el sistema en

términos de un modelo conceptual, la siguiente etapa del estudio consiste en la generación de

un modelo de simulación base. No es preciso que este modelo sea demasiado detallado, pues

se requiere mucha más información estadística sobre el comportamiento de las variables de

decisión del sistema. La generación de este modelo es el primer reto para el programador de la

simulación, toda vez que debe traducir a un lenguaje de simulación la información que se

obtuvo en la etapa de definición del sistema, incluyendo las interrelaciones de todos los

posibles subsistemas que existan en el problema a modelar. En caso de que se requiera una

animación, éste también es un buen momento para definir qué gráfico puede representar mejor

el sistema que se modela.

Igual que ocurre en otras ramas de la investigación de operaciones, la simulación exige ciencia

y arte en la generación de sus modelos. El realizador de un estudio de simulación es, en este

sentido, como un artista que debe usar toda su creatividad para realizar un buen modelo que

refleje la realidad del problema que se está analizando. Conforme se avanza en el modelo base

se pueden ir incluyendo las variables aleatorias del sistema, con sus respectivas distribuciones

de probabilidad asociadas.

3. Recolección y análisis de datos. De manera paralela a la generación del modelo base, es

posible comenzar la recopilación de la información estadística de las variables aleatorias del

modelo. En esta etapa se debe determinar qué información es útil para la determinación de las

distribuciones de probabilidad asociadas a cada una de las variables aleatorias innecesarias

para la simulación. Aunque en algunos casos se logra contar con datos estadísticos, suele

suceder que el formato de almacenamiento o de generación de reportes no es el apropiado para

facilitar el estudio. Por ello es muy importante dedicar el tiempo suficiente a esta actividad. De

no contar con la información necesaria o en caso de desconfiar de la que se tiene disponible,

será necesario realizar un estudio estadístico del comportamiento de la variable que se desea

identificar, para posteriormente incluirla en el modelo. El análisis de los datos necesarios para

Page 20: 174006189 Apuntes de Simulacion1

asociar una distribución de probabilidad a una variable aleatoria, así como las pruebas que se

debe aplicar a los mismos, se analizarán más adelante. Al finalizar la recolección y análisis de

datos para todas las variables del modelo, se tendrán las condiciones necesarias para generar

una versión preliminar del problema que se está simulando.

4. Generación del modelo preliminar. En esta etapa se integra la información obtenida a

partir del análisis de los datos, los supuestos del modelo y todos los datos que se requieran

para tener un modelo lo más cercano posible a la realidad del problema bajo estudio. En

algunos casos —sobre todo cuando se trata del diseño de un nuevo proceso o esquema de

trabajo— no se cuenta con información estadística, por lo que debe estimarse un rango de

variación o determinar (con ayuda del cliente) valores constantes que permitan realizar el

modelado. Si éste es el caso, el encargado de la simulación puede, con base en su experiencia,

realizar algunas sugerencias de distribuciones de probabilidad que comúnmente se asocien al

tipo de proceso que se desea incluir en el modelo. Al finalizar esta etapa el modelo está listo

para su primera prueba: su verificación o, en otras palabras, la comparación con la realidad.

5. Verificación del modelo. Una vez que se han identificado las distribuciones de

probabilidad de las variables del modelo y se han implantado los supuestos acordados, es

necesario realizar un proceso de verificación de datos para comprobar la propiedad de la

programación del modelo, y comprobar que todos los parámetros usados en la simulación

funcionen correctamente. Ciertos problemas, en especial aquellos que requieren muchas

operaciones de programación o que involucran distribuciones de probabilidad difíciles de

programar, pueden ocasionar que el comportamiento del sistema sea muy diferente del que se

esperaba. Por otro lado, no se debe descartar la posibilidad de que ocurran errores humanos al

alimentar el modelo con la información. Incluso podría darse el caso de que los supuestos

iniciales hayan cambiado una o varias veces durante el desarrollo del modelo. Por lo tanto,

debemos asegurarnos de que el modelo que se va a ejecutar esté basado en los más actuales.

Una vez que se ha completado la verificación, el modelo está listo para su comparación con la

realidad del problema que se está modelando. A esta etapa se le conoce también como

validación del modelo.

6. Validación del modelo. El proceso de validación del modelo consiste en realizar una serie

de pruebas al mismo, utilizando información de entrada real para observar su comportamiento

y analizar sus resultados.

Si el problema bajo simulación involucra un proceso que se desea mejorar, el modelo debe

someterse a prueba con las condiciones actuales de operación, lo que nos dará como resultado

un comportamiento similar al que se presenta realmente en nuestro proceso. Por otro lado, si

se está diseñando un nuevo proceso la validación resulta más complicada. Una manera de

validar el modelo en este caso, consiste en introducir algunos escenarios sugeridos por el

Page 21: 174006189 Apuntes de Simulacion1

cliente y validar que el comportamiento sea congruente con las expectativas que se tienen de

acuerdo con la experiencia. Cualquiera que sea la situación importante que el analista conozca

bien el modelo, de manera que pueda justificar aquellos comportamientos que sean contrarios

a las experiencias de los especialistas en el proceso que participan de su validación.

7. Generación del modelo final. Una vez que el modelo se ha validado, el analista está listo

para realizar la simulación y estudiar el comportamiento del proceso. En caso de que se desee

comparar escenarios diferentes para un mismo problema, éste será el modelo raíz; en tal

situación, el siguiente paso es la definición de los escenarios a analizar.

8. Determinación de los escenarios para el análisis. Tras validar el modelo es necesario

acordar con el cliente los escenarios que se quiere analizar. Una manera muy sencilla de

determinarlos consiste en utilizar un escenario pesimista, uno optimista y uno intermedio para

la variable de respuesta más importante. Sin embargo, es preciso tomar en cuenta que no todas

las variables se comportan, igual ante los cambios en los distintos escenarios, por lo que tal

vez sea necesario que más de una variable de respuesta se analice bajo las perspectivas

pesimista, optimista e intermedia. El riesgo de esta situación radica en que el analista podría

caer en un diseño de experimentos capaz de generar una gran cantidad de réplicas, lo que

redundaría en un incremento considerable de costo, análisis y tiempo de simulación. Es por

ello que muchos paquetes de simulación cuentan con herramientas para realizar este proceso,

eliminando la animación y acortando los tiempos de simulación. Estas herramientas permiten

realizar varias réplicas del mismo escenario para obtener resultados con estadísticas

importantes respecto de la toma de decisiones (por ejemplo, los intervalos de confianza).

Por su parte, el analista también puede contribuir a la selección de escenarios, sugiriendo

aquellos que considere más importantes; al hacerlo dará pie a que se reduzca el número de

combinaciones posibles.

9. Análisis de sensibilidad. Una vez que se obtienen los resultados de los escenarios es

importante realizar pruebas estadísticas que permitan comparar los escenarios con los mejores

resultados finales. Si dos de ellos tienen resultados similares será necesario comparar sus

intervalos de confianza respecto de la variable de respuesta final. Si no hay intersección de

intervalos podremos decir con certeza estadística que los resultados no son iguales; sin

embargo, si los intervalos se traslapan será imposible determinar, estadísticamente hablando,

que una solución es mejor que otra. Si se desea obtener un escenario "ganador" en estos casos,

será necesario realizar más réplicas de cada modelo y/o incrementar el tiempo de simulación

de cada corrida. Con ello se busca acortar los intervalos de confianza de las soluciones finales

y, por consiguiente, incrementar la probabilidad de diferenciar las soluciones.

Page 22: 174006189 Apuntes de Simulacion1

10. Documentación del modelo, sugerencias y conclusiones. Una vez realizado el análisis de

los resultados, es necesario efectuar toda la documentación del modelo.

Esta documentación es muy importante, pues permitirá el uso del modelo generado en caso de

que se requieran ajustes futuros. En ella se deben incluir los supuestos del modelo, las

distribuciones asociadas a sus variables, todos sus alcances y limitaciones y, en general, la

totalidad de las consideraciones de programación. También es importante incluir sugerencias

tanto del uso del modelo como sobre los resultados obtenidos, con el propósito de realizar un

reporte más completo. Por último, deberán presentarse asimismo las conclusiones del proyecto

de simulación, a partir de las cuales es posible obtener los reportes ejecutivos para la

presentación final.

Ventajas e inconvenientes de la simulación de eventos discretos

Como hemos visto hasta ahora, la simulación es una de las diversas herramientas con las que

cuenta el analista para tomar decisiones y mejorar sus procesos. Sin embargo, es necesario

destacar que, como todas las demás opciones de que disponemos, la simulación de eventos

discretos presenta ventajas y desventajas que, es preciso tomar en cuenta al determinar si es

apta para resolver un problema determinado.

Dentro de las ventajas más comunes que ofrece la simulación podemos citar las siguientes:

a) Es muy buena herramienta para conocer el impacto de los cambios en los procesos sin

necesidad de llevarlos a cabo en la realidad.

b) Mejora el conocimiento del proceso actual al permitir que el analista vea cómo se

comporta el modelo generado bajo diferentes escenarios.

c) Puede utilizarse como medio de capacitación para la toma de decisiones.

d) Es más económico realizar un estudio de simulación que hacer muchos cambios en los

procesos reales.

e) Permite probar varios escenarios en busca de las mejores condiciones de trabajo de los

procesos que se simulan.

f) En problemas de gran complejidad, la simulación permite generar una buena solución.

g) En la actualidad los paquetes de software para simulación tienden a ser más sencillos,

lo que facilita su aplicación.

h) 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.

Page 23: 174006189 Apuntes de Simulacion1

Entre las desventajas que pueden llegar a presentar la simulación están:

a) Aunque muchos paquetes de software permiten obtener el mejor escenario a partir de

una combinación de variaciones posibles, la simulación no es una herramienta de

optimización.

b) La simulación puede ser costosa cuando se quiere emplearla en problemas

relativamente sencillos de resolver, en lugar de utilizar soluciones analíticas que se han

desarrollado de manera específica para ese tipo de casos.

c) Se requiere bastante tiempo —generalmente meses— para realizar un buen estudio de

simulación; por desgracia, no todos los analistas tienen la disposición (o la

oportunidad) de esperar ese tiempo para obtener una respuesta.

d) 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.

Page 24: 174006189 Apuntes de Simulacion1

Unidad II. Generación de Números Aleatorios

En este capítulo se discuten las técnicas de transformación inversa, el método de convolución

y más brevemente la técnica de aceptación-rechazo. Otra técnica el método de composición, es

discutida por Fisherman [1978] y Law y Kelton [1991]. Todas las técnicas en este capítulo

consideran que se conoce como fuente la uniformidad U(0,1) de los números aleatorios

R1,R2,...., donde cada Ri tiene una función de densidad de probabilidad (FDP).

( ) [

Y la función de densidad acumulada de probabilidad (FDA)

( ) {

2.1. Números aleatorios: definición, propiedades, generadores y tablas

Historia

En el siglo XVII, un noble francés, Antoine Gombauld (1607-1684), puso en tela de juicio el

fundamento matemático del éxito y fracaso en las mesas de juego. Formuló esta pregunta al

matemático francés Balies Pascal (1623-1662): ¿Cuáles son las posibilidades de que me salgan

dos seises por lo menos una vez en veinticuatro lanzamientos de un par de dados?, Pascal

resolvió el problema, pues la teoría de la probabilidad empezaban a interesarle tanto como a

Gombauld. Ambos compartieron sus ideas con el famoso matemático Pierre de Fermat (1601-

1665), y las cartas escritas por los tres constituyen la primera revista académica dedicada a la

probabilidad. Algunos de los problemas que ellos resolvieron habían permanecido si solución

durante unos 300 años. Sin embargo, ciertas probabilidades numéricas para ciertas

combinaciones de dados ya habían sido calculadas por Giordamo Cardano (1501-1576) y por

Galileo Galileo (1564-1642).

Más tarde, Jacob Bernoulli (1654-1705), Abraham de Moivre (1667-1754), el reverendo

Thomas Bayes (1702-1761) y Joseph Lagrange (1736-1813) inventaron formulas y técnicas de

probabilidad. En el siglo XIX, Pierre Simón, marqués de Laplace (1749-1827), unifico esas

primeras ideas y formuló la primera teoría general de la probabilidad, la cual fue aplicada

inicialmente con buenos resultados a los juegos de azar; con el tiempo también se aplicó en la

búsqueda de soluciones analíticas a problemas de naturaleza no determinística. La teoría de la

probabilidad ha sido constantemente desarrollada desde el siglo XVII y ampliamente aplicada

en diversos campos de estudio. Hoy es una herramienta importante en la mayoría de las áreas

Page 25: 174006189 Apuntes de Simulacion1

de ingeniería, ciencias y administración, y se constituye en la base para el estudio de las leyes

de azar.

Definición

Los números aleatorios son aquellos que pueden ser generados a partir de fuentes de

aleatoriedad, las cuales, generalmente, son de naturaleza física (dados, ruletas, mecanismos

electrónicos o mecánicos), y son gobernados por las leyes del azar; éstos exhiben verdadera

aleatoriedad en la realización de experimentos.

Por su parte, los números pseudo-aleatorios son aquellas que tienen un comportamiento

similar a la naturaleza aleatoria, pero están ceñidos a un patrón, generalmente de naturaleza

matemática, que hace que su comportamiento sea determinante.

Los números aleatorios son números que deben de cumplir los requisitos de espacio

equiprobable, es decir, que todo elemento tenga la misma probabilidad de ser elegido y que la

elección de uno no dependa de la elección del otro. Son generados por medio de una función

determinista (no aleatoria) y que aparentan ser aleatorios.

Propiedades de los números aleatorios

1. Cualquier número que pertenezca al rango de interés debe tener la misma probabilidad de

resultar sorteado.

2. La distribución de los números debe ser uniforme en todo el intervalo [0,1].

3. La aparición de un número en la secuencia, no afecta la probabilidad de sortear otro (o el

mismo) número.

4. Los números deben ser independientes dentro de toda la serie generada.

5. El ciclo del generador debe ser lo suficientemente grande.

6. La serie debe volverse a repetir.

7. Capaz de generar números pseudo-aleatorios a altas velocidades.

8. Requerir una mínima cantidad de la capacidad de memoria de Computadora

9. Estadísticamente independientes.

10. Su media debe ser estadísticamente igual a 1/2.

11. Su varianza debe ser estadísticamente igual a 1/12.

12. Su periodo o ciclo de vida debe ser largo.

13. Deben ser generados a través de un método rápido.

14. Generados a través de un método que no requiera mucha capacidad de almacenamiento

de la computadora

Page 26: 174006189 Apuntes de Simulacion1

Generadores de números aleatorios

Los métodos para generar números aleatorios involucran algún proceso físico cuasi-aleatorio,

que genera sucesiones de números aleatorios de determinada longitud. El requisito general

para las sucesiones es la independencia estadística. Para esto, existen varios métodos:

Métodos manuales: Dispositivos mecánicos o electrónicos, lanzamientos de monedas o

dados, empleo de barajas, ruletas. Son menos prácticos pero simples, lentos, atractivos,

pedagógico. Pero no pueden reproducirse.

Tablas de bibliotecas: Generados por los métodos anteriores. Están en tablas. Siempre

pueden reproducirse, pero es un sistema lento. Determinados problemas requieren más

números aleatorios que los publicados.

Métodos de computación analógica: Dependen de procesos físicos aleatorios, por ejemplo:

el ruido térmico de un circuito con semiconductores, que convertido en un número binario,

representa un valor numérico aleatorio. Se considera que conducen a verdaderos números

aleatorios.

Métodos de computación digital: Se han sugerido tres métodos para producir números

aleatorios cuando se usan computadoras digitales; provisión externa, generación interna,

relación de recurrencia.

En los modelos estocásticos existirán una o más variable aleatorias interactuando. Estas

variables siguen distribuciones de probabilidad teóricas o empíricas, diferentes a la

distribución uniforme (0-1). Para generar números que sigan el comportamiento de éstas

variables, se pueden utilizar algunos métodos como los siguientes:

1. Método de la transformada inversa

2. Método de rechazo

3. Método de composición, y

4. Procedimientos especiales

Existen en la actualidad técnicas para generar con una computadora, variables aleatorias

uniformemente distribuidas, r (en donde r ≥ 0 y 1 ≥ r). Los números generados por estas

subrutinas de computadora se denominan números pseudo-aleatorios, porque se generan a

partir de una fórmula totalmente determinística mediante la computación. Sus propiedades

Page 27: 174006189 Apuntes de Simulacion1

estadísticas, coinciden con las de los números generados a través de un dispositivo fortuito

idealizado que selecciona números de un intervalo unitario (0,1) de un modo independiente en

donde son igualmente probables todos los números.

A condición de que estos números pseudo aleatorios puedan pasar el conjunto de pruebas

estadísticas (las de frecuencia, auto correlación, producto rezagado, corridas, de distancia y así

sucesivamente) implicadas por un dispositivo fortuito idealizado, tales números pseudo-

aleatorios se pueden tratar corno si "en realidad lo fueran" a pesar de que no lo son.

Ejemplos de aplicación

Simulación: La reproducción de fenómenos naturales necesita números aleatorios. En

Física los ejemplos clásicos: Física Estadística, Física de Partículas

Muestreo: Muchas veces es poco práctico examinar todos los casos posibles. Un

muestreo aleatorio puede revelar un comportamiento típico.

Análisis Numérico: Técnicas numéricas necesitan números aleatorios

Programación de ordenadores: Tests de efectividad de algoritmos

Toma de decisiones: Se rumorea que algunos ejecutivos tiran monedas al aire para

tomar decisiones.

Estética: Un toque de aleatoriedad puede resultar agradable

Juegos: De aquí proviene el propio método para generación de números aleatorios

Generación de números pseudo-aleatorios

Para realizar una simulación se requieren números aleatorios en el intervalo (0,1), a los cuales

se hará referencia como es decir, una secuencia que contiene n

números, todos ellos diferentes; n recibe el nombre de periodo o ciclo de vida del generador

que creó la secuencia .

Los constituyen la parte medular de la simulación de procesos estocásticos, y generalmente

se usan para generar el comportamiento de variables aleatorias, tanto continuas como

discretas. Debido a que no es posible generar números realmente aleatorios, consideramos los

como números pseudo aleatorios, generados por medio de algoritmos determinísticos que

requieren parámetros de arranque.

Para simular el comportamiento de una o más variables aleatorias es necesario contar con un

conjunto suficientemente grande de – que permita, por ejemplo, que la secuencia tenga al

menos un periodo de vida de . De acuerdo con L'Ecuyer una

secuencia de con periodo de vida de es relativamente pequeña; de hecho, incluso

una secuencia de que contenga un ciclo de vida de se considera pequeña. En la

Page 28: 174006189 Apuntes de Simulacion1

actualidad contamos ya con generadores y procesadores capaces de construir una secuencia de

con periodo de vida de .

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ópolism. 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 r¡ se determina simplemente anteponiendo el "0."a esos dígitos. Para obtener

el segundo 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 Este método se repite hasta

obtener n números A continuación se presentan con más detalle los pasos para generar

números con el algoritmo de cuadrados medios.

1. Seleccionar una semilla (Xo) con D dígitos (D > 3).

2. Sea Xo = resultado de elevar al cuadrado; sea X, = los D dígitos del centro, y sea

dígitos del centro.

3. Sea Y. = resultado de elevar al cuadrado; sea = los D dígitos del centro, y sea

=0.D dígitos del centro para toda

4. Repetir el paso 3 hasta obtener los n números deseados.

Nota: Si no es posible obtener los D dígitos del centro del número agregue ceros a la

izquierda del número .

Ejemplo 1.

Generar los primeros 5 números a partir de una semilla , de donde se puede

observar que D = 4 dígitos.

Page 29: 174006189 Apuntes de Simulacion1

El algoritmo de cuadrados medios generalmente es incapaz de generar una secuencia de t¡ con

periodo de vida n grande. Además, en ocasiones sólo es capaz de generar un número, por

ejemplo, si ;, entonces ; y se dice que el algoritmo se

degenera con la semilla de

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 = 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 . Siempre se irá eliminando el

número más antiguo, y el procedimiento se repetirá hasta generar “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.

1. Seleccionar una semilla (Xo) con D dígitos (D > 3).

2. Seleccionar una semilla (X}) con D dígitos (D > 3).

3. Sea ; sea = los D dígitos del centro, y sea dígitos del centro.

4. Sea ( ) sea = los D dígitos del centro, y sea dígitos del

centro para toda

5. Repetir el paso 4 hasta obtener los n números r¡ deseados.

Nota: Si no es posible obtener los D dígitos del centro del número /^agregue ceros a la

izquierda del número

Ejemplo 2.

Generar los primeros 5 números a partir de las semillas y ; observe

que ambas semillas tienen D = 4 dígitos.

Page 30: 174006189 Apuntes de Simulacion1

Algoritmo de multiplicador constante

Este algoritmo no congruencial 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.

1. Seleccionar una semilla (Xo) con D dígitos (D > 3).

2. Seleccionar una constante (a) con D dígitos (D > 3).

3. Sea ; sea X, = los D dígitos del centro, y sea dígitos del centro.

4. Sea ; sea = los D dígitos del centro, y sea dígitos del centro

para toda

5. Repetir el paso 4 hasta obtener los n números deseados.

Nota: Si no es posible obtener los D dígitos del centro del número agregue ceros a la

izquierda del número

Ejemplo 3

Generar los primeros 5 números ri a partir de la semilla Xo = 9 803 y con la constante a = 6

965. Observe que tanto la semilla como la constante tienen D = 4 dígitos.

Page 31: 174006189 Apuntes de Simulacion1

Algoritmo lineal

Este algoritmo congruencial fue propuesto por D. H. Lehmer15' 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:

( ) ( )

Donde es la semilla, a es la constante multiplicativa, c es una constante aditiva y m es el

módulo; X_o >0, a>0, c>0 y m>0 deben ser números enteros. La operación "mod m" significa

multiplicar por a, sumar c y dividir el resultado entre m para obtener el residuo . Es

importante señalar que la ecuación recursiva del algoritmo congruencial lineal genera una

secuencia de números enteros y que para obtener números pseudo

aleatorios en el intervalo (0,1) se requiere la siguiente ecuación

Ejemplo 4

Generar 4 números entre (0<A<1) con los siguientes parámetros: = 37, a= 19, c=33 y m =

100.

En el ejemplo anterior se colocaron de manera arbitraria cada uno de los parámetros

requeridos^, 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.

Page 32: 174006189 Apuntes de Simulacion1

Bajo estas condiciones se obtiene un periodo de vida máximo . Veamos un

ejemplo más, tomando en cuenta lo anterior.

Ejemplo 5

Generar suficientes números entre (0 y 1) con los parámetros y

, hasta encontrar el periodo de vida máximo (N).

Como podemos ver, si se cumplen las condiciones que Banks, Carson, Nelson y Nicol

sugieren, se logrará el periodo máximo . A continuación se presenta el

desarrollo de la generación de los números r¡.

2.2. Propiedades de los números atorios

Las propiedades de los números aleatorios, son las que se muestran a continuación:

Los números deben estar uniformemente distribuidos es decir, los números

aleatorios pueden estar entre 0 y 1, y en algún momento serán 0 o 1.

La media establecida por los números aleatorios debe ser de 0.5. μ= 0.5.

La probabilidad de salir un número de forma aleatoria es: , debe estar entre

0 y 1.

La desviación estándar de los números aleatorios debe ser de aproximadamente 0.29,

es decir

Son estadísticamente independientes.

Sin repetición dentro de una longitud determinada de la sucesión.

Los números aleatorios debe ser reproducibles, es decir, la misma semilla utilizada

para generar los números aleatorios debe dar la misma sucesión.

Page 33: 174006189 Apuntes de Simulacion1

Prueba de póker utilizado como método de independencia estadística en números

aleatorios.

La varianza de los números aleatorios debe ser de 1/12.

Es impredecible conocer qué valor va a tener cada número aleatorio y cuál va a ser su

secuencia

Propiedades de los números pseudoaleatorios

Es deseable que los números pseudoaleatorios uniformes posean las siguientes características:

Uniformemente distribuidos.

Estadísticamente independientes.

Reproducibles.

Periodo largo.

Generados mediante un método rápido.

Generados mediante un método que no requiera mucha capacidad de almacenamiento

de la computadora.

2.3. Pruebas estadísticas de aleatoriedad para los números pseudoaleatorios: de medias,

de varianza, de independencia y de bondad de ajuste.

Existen algunos métodos disponibles para verificar varios aspectos de la calidad de los

números pseudoaleatorios. Si no existiera un generador particular de números aleatorios

disponible, se le recomienda al analista usar estos métodos cuando se realice una simulación.

Una de las propiedades que deben cumplir los números del conjunto , es que el valor

esperado sea igual a 0.5. La prueba que busca determinar lo anterior es la llamada prueba de

medias, en la cual se plantean las siguientes hipótesis:

La prueba de medias consiste en determinar el promedio de los “n” números que contiene el

conjunto , mediante la ecuación siguiente:

Posteriormente se calculan los límites de aceptación inferior y superior con las ecuaciones

siguientes:

Page 34: 174006189 Apuntes de Simulacion1

(

√ )

(

√ )

Si el valor de r se encuentra entre los límites de aceptación, concluimos que no se puede

rechazar que el conjunto tiene un valor esperado de 0.5 con un nivel de aceptación de .

En caso contrario se rechaza que el conjunto ri tiene un valor esperado de 0.5.

Para el cálculo de los límites de aceptación se utiliza el estadístico , el cual se determina

por medio de la tabla de distribución normal estándar.

Ejemplo

.

(

√ )

(

√ )

(

√ )

(

√ )

Prueba de variancia

Consiste en verificar si los números aleatorios generados tienen una variancia de 0.083, del tal

forma que la hipótesis queda expresada como:

( )

( )

Paso: 1 calcular la varianza de los números aleatorios

Page 35: 174006189 Apuntes de Simulacion1

( ) ∑ ( )

Paso: 2 calcular los límites de aceptación

( )

( )

( )

( )

( )

( )

Paso: 3 Si V(x) se encuentra entre los valores de los límites, aceptamos la hipótesis nula y los

números aleatorios tienen una varianza estadísticamente igual.

Ejemplo. Realice la prueba de varianza a los siguientes 30 números con nivel de confianza del

95%

0.72484 0.48999 0.50502 0.39528 0.36782 0.90234

0.71890 0.61234 0.86322 0.94134 0.99872 0.27657

0.34565 0.02345 0.67347 0.10987 0.25678 0.25593

0.82345 0.12387 0.05389 0.82474 0.59289 0.36782

0.03991 0.10461 0.93716 0.16894 0.98953 0.73231

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

Por lo tanto el valor se encuentra dentro de los limites por lo que aceptamos que la varianza de

la muestra es estadísticamente igual a

Pruebas de independencia

Las pruebas de independencia consisten en demostrar que los números generados son

estadísticamente independientes entre sí, esto es, que no depende uno de otro. Para esto se

propone la siguiente hipótesis:

Independiente

Dependiente

Page 36: 174006189 Apuntes de Simulacion1

Para realizar esta prueba de hipótesis existen varios métodos, puede seleccionarse cualquiera

de la siguiente lista:

i. Prueba de póker.

ii. Prueba de corridas arriba y abajo.

iii. Prueba de corridas arriba y abajo de la media.

iv. Prueba de la longitud de las corridas.

v. Prueba de distancia.

vi. Prueba de series.

vii. Prueba de huecos.

Los procedimientos para demostrar la independencia utilizando 3 de ellas son los siguientes:

Prueba de póker

Independiente

Dependiente

Paso 1

Calcular las probabilidades esperadas para un juego de póker con 5 cartas numeradas del O al

9 con remplazo, se tienen 7 eventos o intervalos, con las siguientes probabilidades:

( )

( )

( )

( )

( )

( )

( )

Paso 2

Calcular la frecuencia esperada de cada uno de los eventos ( ) multiplicando la probabilidad

de cada evento por el número de números aleatorios generados.

Paso 3

Para cada número aleatorio generado verificar (imaginando que es una mano de póker) si es

Pachuca, un par, dos pares, etcétera, tomando los primeros cinco dígitos a la derecha del punto

decimal. Por ejemplo, 0.03408 es un par, 0.44343 es un full, 0.00321 dos pares, etcétera. Con

Page 37: 174006189 Apuntes de Simulacion1

esos resultados se generan una tabla de frecuencias de estos eventos. La frecuencia observada

de cada uno de los eventos se conoce como (FO).

Paso 4

Calcular el estadístico C con la ecuación 3.8 con .

Paso 5

Si el valor de C es menor o igual al estadístico de tablas con 6 grados de libertad y una

probabilidad de rechazo a, entonces se acepta que los datos son estadísticamente

independientes entre sí.

Ejemplo. Realice la prueba de póker a los siguientes 30 números con un nivel de confianza del

95%.

Agrupando los números de acuerdo con sus dígitos, como si fuera una mano de póker se

obtiene la siguiente tabla de frecuencias:

Intervalo FO PE FE=n*PE)

Pachuca 14 0.3024 9.072

Un par 15 0.5040 15.120

Dos pares 1 0.1080 3.240

Una tercia 1 0.0720 2.160

Full 0 0.0090 0.270

Póker 0 0.0045 0.135

Quintilla 0 0.0001 .003

El cálculo de C utilizando de nuevo la ecuación es igual a 4.25 que comparado contra el valor

de tablas con grados de libertad, y con un nivel de 5%, que es igual a 12.59,

indica que los números generados son estadísticamente independientes.

∑( )

Page 38: 174006189 Apuntes de Simulacion1

La prueba de Kolmogorov-Smirnov

Esta prueba compara la fdp (función de densidad de probabilidad) ( ), de la distribución

uniforme con el fdp (función de densidad de probabilidad) empírico, ( ) de una muestra de

N observaciones.

Por definición

( )

Conforme N crece, ( ) deberá tener una mejor aproximación de ( ) dado que la hipótesis

nula sea verdadera.

( )

La prueba Kolmogorov-Smirnov está basada en la desviación máxima absoluta entre ( ) y

( ) sobre el rango de la variable aleatoria- Esto es, basado en la estadística.

| ( ) ( )|

La distribución de la muestra D es conocida y es tabulada como una función de N en la tabla

Kolmogorov-Smirnov. Para probar contra una fdp uniforme, el procedimiento sigue los pasos

siguientes:

Paso 1: Ordene los datos en forma ascendente. Sea , en la más pequeña observación,

tal que

Paso 2: Usando la fdp teórica ( ), calcule

[

]

[

]

Paso 3: Calcule ( )

Paso 4: Encuentre el valor crítico de la tabla para un nivel de significancia y un tamaño

de muestra N.

Paso 5: Si al valor crítico , acepte la distribución candidato como aquella que tiene un

buen ajuste a los datos observados; de otra forma rechace.

Page 39: 174006189 Apuntes de Simulacion1

Esta prueba está basada en la desviación absoluta mayor entre las fdp empírica y teórica para

todo valor dado de Esta desviación es comparada con los valores críticos de tabulados

para determinar si la desviación puede ser atribuida a los efectos aleatorios y por lo tanto sea

una distribución candidato a ser aceptada tener un buen ajuste a los datos observados. Más

específicamente, la prueba tiene los pasos siguientes:

Ejemplo:

En este ejemplo se usa la prueba para examinar bajo un nivel de significancia de

si un conjunto de datos representa números aleatorios (por ejemplo esta la distribución

uniforme entre 0 y 1). Suponga que cinco datos son dados: 0.53, 0.35, 0.03, 0.94, y 0.22

Solución. Para la distribución Uniforme la fdp es ( ) ( )

Para este caso particular . Por lo tanto ( ) . Ahora se ordenan los valores

en forma ascendente y se realizan los cálculos relativos.

La tabla siguiente resume los cálculos realizados:

( )

(

( ) ) ( )

( )

1 0.03 0.20 0.17 0.03

2 0.22 0.40 0.18 0.02

3 0.35 0.60 0.25 -0.05

4 0.53 0.80 0.27 -0.07

5 0.94 1.00 0.06 -0.14

De acuerdo a los cálculos ( ) . El valor crítico de 1 de la

tabla en el apéndice de tablas para un tamaño de 5 y un nivel de significancia de 0.05 es

. Debido a que D es menor que este valor crítico, la hipótesis de que los datos

dados pertenecen a una distribución Uniforme es aceptada.

EJEMPLO 5. Efectuar la prueba de Kolmogorov – Smirnov a la siguiente muestra de

números aleatorios uniformes.

0.15 0.31 0.81 0.48 0.01 0.60

0.26 0.34 0.70 0.31 0.07 0.06

0.33 0.49 0.77 0.04 0.43 0.92

0.25 0.83 0.68 0.97 0.11 0.00

0.18 0.11 0.03 0.59 0.25 0.55

1 KS kolmorov Smirnov

Page 40: 174006189 Apuntes de Simulacion1

Sustituyendo los valores en las fórmulas correspondientes se tiene que:

i ( ) ( )

1 0.00 0.03 0.03

2 0.01 0.07 0.06

3 0.03 0.10 0.07

4 0.04 0.13 0.09

5 0.06 0.17 0.11

6 0.07 0.20 0.13

7 0.11 0.23 0.12

8 0.11 0.27 0.16

9 0.15 0.30 0.15

10 0.18 0.33 0.15

11 0.25 0.36 0.11

12 0.25 0.40 0.15

13 0.26 0.43 0.17

14 0.31 0.47 0.16

15 0.33 0.50 0.17

16 0.34 0.53 0.19

17 0.34 0.57 0.23

18 0.43 0.60 0.17

19 0.48 0.63 0.15

20 0.49 0.67 0.18

21 0.55 0.70 0.15

22 0.59 0.73 0.14

23 0.60 0.77 0.17

24 0.68 0.80 0.12

25 0.70 0.83 0.13

26 0.77 0.87 0.1

27 0.81 0.90 0.09

28 0.83 0.93 0.1

29 0.92 0.97 0.05

30 0.97 1.00 0.03

Siguiendo con el paso 4

| – ( )|

Comparamos el valor (calculado) contra el valor en tablas de la distribución Kolmogorov-

Smirnov con y un nivel de significancia el cual es

, como 0.23 es menor que 0.242, entonces, no se puede rechazar la uniformidad de los

números aleatorios.

Page 41: 174006189 Apuntes de Simulacion1

Prueba de bondad de ajuste ji cuadrada.

Procedimiento:

1. Generar la muestra de números aleatorios de tamaño N.

2. Subdividir el intervalo [0,1] en n sub-intervalos.

3. Para cada sub-intervalo contar la frecuencia observada y calcular la frecuencia esperada

FE de números aleatorios, la cual se obtiene dividiendo N/n.

4. Calcular el estadístico de prueba.

( )

5. Comparar el valor calculado contra el valor tabulado de la distribución con ( )

grados de libertad y una significancia ?. Si es menor que

entonces no se puede

rechazar la uniformidad de los números aleatorios.

EJEMPLO 4. Realizar la prueba de bondad de ajuste Ji-cuadrada a la siguiente muestra de

tamaño 30 de números aleatorios uniformes.

0.15 0.31 0.81 0.48 0.01 0.60

0.26 0.34 0.70 0.31 0.07 0.06

0.33 0.49 0.77 0.04 0.43 0.92

0.25 0.83 0.68 0.97 0.11 0.00

0.18 0.11 0.03 0.59 0.25 0.55

INTERVALO FE FO ( )

0.00 - 0.20 6 10 2.67

0.21 - 0.40 6 7 0.17

0.41 - 0.60 6 6 0.00

0.61 - 0.80 6 3 1.50

0.81 - 1.00 6 4 0.67

Sea = 5%. Tenemos ( ) grados de libertad, es decir . El valor en tablas de la

distribución Ji cuadrada es:

Page 42: 174006189 Apuntes de Simulacion1

Como es menor que es decir; 5.01 es menor que 9.49, entonces no se puede

rechazar la uniformidad de los números aleatorios.

Corridas por arriba y por abajo del promedio

Procedimiento

Generar la muestra de tamaño N de números aleatorios.

Con base en esta muestra, obtener una nueva sucesión binaria, según el criterio siguiente:

Si es menor o igual a 0.50 entonces asignarle a el símbolo 0.

Si es mayor a 0.50 entonces asignarle a: el símbolo 1.

La frecuencia esperada para cada longitud de corrida i, es:

( )

EJEMPLO 6. Dada la siguiente muestra de tamaño 30 de números aleatorios, aplicar la

prueba de corridas, para la independencia

0.15 0.31 0.81 0.48 0.01 0.60

0.26 0.34 0.31 0.70 0.07 0.06

0.33 0.49 0.77 0.04 0.43 0.92

0.25 0.83 0.68 0.97 0.11 0.00

0.18 0.11 0.03 0.59 0.25 0.55

Comparando los números aleatorios según el criterio establecido, se obtiene la siguiente

sucesión binaria. Leyendo de izquierda a derecha se agrupan los símbolos del mismo tipo para

formar las corridas.

0 0 1 0 0 1

0 0 0 1 0 0

0 0 1 0 0 1

0 1 1 1 0 0

0 0 0 1 0 1

En la siguiente tabla se resume la información necesaria para el cálculo de la Ji-cuadrada.

Longitud de corrida i FE FO ( )

1 8.000 9 0.125

2 3.875 3 0.197

3 1.875 2 0.008

Page 43: 174006189 Apuntes de Simulacion1

4 0.906 1 0.010

5 0.438 1 0.721

Como para las longitudes de corrida ; las frecuencias observadas son menores o

igual a cinco, agrupamos estas longitudes de corridas en una sola longitud de corrida? 2.

i FE FO ( )

1 8 9 0.125

>=2 7.04 7 0.936

El valor en tablas de ; entonces no se puede rechazar la independencia de los

números aleatorios.

Corridas ascendentes y descendentes

Procedimiento

1. Generar la muestra de tamaño N de números aleatorios.

2. Construir la sucesión binaria de acuerdo al siguiente criterio:

Si es menor o igual a rj+1 entonces asignarle a el símbolo

Si es mayor que entonces asignarle al el símbolo .

Con base en la distribución efectuar la prueba, donde la frecuencia esperada de las

longitudes de corrida se calculará con:

|( ) ( )|

( )

EJEMPLO 7. Aplicar la prueba de las corridas ascendentes y descendentes a la muestra de

números aleatorios del ejemplo anterior. Compararemos a los números por fila, pero es

indistinto hacerlo por columna.

0.15 0.31 0.81 0.48 0.01 0.60

0.26 0.34 0.70 0.31 0.07 0.06

0.33 0.49 0.77 0.04 0.43 0.92

0.25 0.83 0.68 0.97 0.11 0.00

0.18 0.11 0.03 0.59 0.25 0.55

Page 44: 174006189 Apuntes de Simulacion1

Ahora la sucesión binaria es

0 0 1 1 0 1

0 0 0 1 1 0

0 0 1 0 1 1

0 1 0 1 1 0

1 1 0 1 0

Obsérvese que la última celda se deja en blanco, pues no hay con qué número comparar. (Aquí

N = 29)

Longitud de corrida i FE FO (FE-FO)2/FE

1 11.500 11 0.020

2 5.083 5 0.001

3 1.400 2 0.257

4 0.292 -

5 0.005 -

i FE FO (FE-FO)2/FE

1 11.500 11 0.020

>=2 6.483 7 0.004

X02 = 0.024

Como el valor calculado de 0.024 es menor que el valor en tablas de Ji-cuadrada

, no se puede rechazar la independencia de los números aleatorios.

2.4. Obtención de números pseudoaleatorios utilizando paquetes computacionales.

Los lenguajes precursores en Simulación fueron los de propósito general, entre ellos por

mencionar solo algunos tenemos: FORTRAN, ALGOL, COBOL, RPG, BASIC, PASCAL,

MODULA, PL/1, etc. Los principales lenguajes utilizados en Simulación son:

Simulación de cambio continuo y de cambio discreto en computadoras híbridas H01;

Simulación de incremento continuo con orientación a ecuaciones directas con énfasis en

ecuaciones diferenciales DSL/90, MIMIC, BHSL, DIHYSYS y S/360 CSMP; Simulación de

Page 45: 174006189 Apuntes de Simulacion1

incremento continuo con simuladores orientados a bloques con énfasis en ecuaciones

diferenciales MIDAS, PACTOLUS, SCADS, MADBLOC, COBLOC y 1130 CSMP;

Simulación de incremento continuo con simuladores orientados a bloques con énfasis en

ecuaciones de diferencias DYNAMO, DYSMAP 2; Simulación de incremento discreto con

orientación a actividades CSL, CLP, GSP, GERT, FORSIM, ESP, MONTECODE y

MILITRAN; Simulación de incremento discreto con orientación a eventos SIMSCRIPT,

GASP, SIMCOM, SIMULATE y SIMPAC; Simulación de incremento discreto con

orientación a procesos SIMULA, OPS, SLAM y SOL; Simulación de incremento discreto con

orientación a flujo de transacciones GPSS y BOS.

Los paquetes de mayor utilización en Simulación son:

EXCEL, STELLA, SIMAN, RISK, STORM, LINDO, CRYSTAL BALL, QSB, MOR/DS,

OR/MS, BEER GAME, GREENPACE, SIMULACION, TAYLOR II, CAPRE, SIMNET II,

PROMODEL, ITHINK, URBAN DYNAMICS y POWERSIM. En Simulación Gerencial

podemos citar: FISH BANK, FINANACAT, BUGA-BUGA y MARKOPS, TREE PLAN

entre otros.

2.5. Método de Monte Carlo

El método Montecarlo es un método numérico que permite resolver problemas físicos y

matemáticos mediante la simulación de variables aleatorias. Lo vamos a considerar aquí desde

un punto de vista didáctico para resolver un problema del que conocemos tanto su solución

analítica como numérica. El método Montecarlo fue bautizado así por su clara analogía con

los juegos de ruleta de los casinos, el más célebre de los cuales es el de Montecarlo, casino

cuya construcción fue propuesta en 1856 por el príncipe Carlos III de Mónaco, siendo

inaugurado en 1861.

La importancia actual del método Montecarlo se basa en la existencia de problemas que tienen

difícil solución por métodos exclusivamente analíticos o numéricos, pero que dependen de

factores aleatorios o se pueden asociar a un modelo probabilística artificial (resolución de

integrales de muchas variables, minimización de funciones, etc.). Gracias al avance en diseño

de los ordenadores, cálculos Montecarlo que en otro tiempo hubieran sido inconcebibles, hoy

en día se presentan como asequibles para la resolución de ciertos problemas. En estos métodos

el error √ , donde N es el número de pruebas y, por tanto, ganar una cifra decimal en la

precisión implica aumentar N en 100 veces. La base es la generación de números aleatorios de

los que nos serviremos para calcular probabilidades. Conseguir un buen generador de estos

números así como un conjunto estadístico adecuado sobre el que trabajar son las primeras

dificultades con la nos vamos a encontrar a la hora de utilizar este método. En el caso que

presentamos hemos hecho uso de la función random(x) incluida en la clase Math que la

máquina virtual Java trae por defecto como generador. Las pruebas realizadas, algunas de las

Page 46: 174006189 Apuntes de Simulacion1

cuales se propondrán como ejercicio, verifican su calidad a la hora de calcular números

aleatorios sin tendencia aparente a la repetición ordenada.

El método de Montecarlo permite resolver problemas matemáticos mediante la simulación de

variables aleatorias.

John Von Neumann, en los años 40 y con los primeros ordenadores, aplica la simulación para

resolver problemas complejos que no podían ser resueltos de forma analítica.

Montecarlo y su casino están relacionados con la simulación. La ruleta, juego estrella de los

casinos, es uno de los aparatos mecánicos más sencillos que nos permiten obtener números

aleatorios para simular variables aleatorias.

Ejemplo

Una cadena de distribución de material informático ha de decidir cuantas licencias de un nuevo

sistema operativo ha de comprar para maximizar su beneficio. Dispone de información histórica que

le informa sobre la probabilidad de vender cierto número de copias. El costo de adquisición de cada

licencia es de 75 €, el precio de venta de 100 €. Cuando salga a la venta el nuevo S.O. el almacén

podrá devolver al fabricante las copias no vendidas obteniendo un ingreso de 25 € por cada licencia

devuelta.

nºLic.Vendidas Prob. Prob. Acum. Ext.Inf.Interv. Ext.Sup.Interv. nºLic.Vendidas

100 0.30 0.30 0.00 0.30 100

150 0.20 0.50 0.30 0.50 150

200 0.30 0.80 0.50 0.80 200

250 0.15 0.95 0.80 0.95 250

300 0.05 1.00 0.95 1.00 300

Costo de cada licencia 75.00 €

Precio de venta unitario 100.00 €

Ingresos por devolución 25.00 €

Cantidad Lic. a comprar 200

Bº Media muestral 1,625 €

Desv. Estandar 3175.724685

Máx. Bº 5000

Mín. Bº -2500

Nivel significación (alpha) 0.05

Amplitud intervalos confianza 622.43 €

Page 47: 174006189 Apuntes de Simulacion1

IC para la madia a nivel (1-alpha)% 1,002.57 €

2,247.43 €

Resumen de escenario Vtas. Bajas Vtas. Medio Bajas Vtas. Medias Vtas. Medio Altas Vtas. Altas

Celdas cambiantes:

nºLic.Vendidas 100 150 200 250 300

Celdas de resultado:

Bº Media muestral 2,500 € 2,646 € 2,033 € 267 € - 2,053 €

Desv. Estandar 0 1721.320178 3279.37797 4155.016529 4530.576624

Máx. Bº 2500 3750 5000 6250 7500

Mín. Bº 2500 0 -2500 -5000 -7500

Nivel significación (alpha) 0.05 0.05 0.05 0.05 0.05

Amplitud intervalor confianza - € 33.63 € 63.98 € 82.51 € 88.74 €

IC para la madia a nivel (1-

alpha)%

2,500.00 € 2,626.12 € 1,950.91 € 129.47 € - 2,144.08 €

2,500.00 € 2,688.05 € 2,125.47 € 319.45 € - 2,013.20 €

Aleat. Vtas. Dev. Costo Ing. Vtas Ing. Dev. Benef,

0.984 200 0 15,000 € 20,000 € - € 5,000 €

0.215 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.476 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.725 200 0 15,000 € 20,000 € - € 5,000 €

0.368 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.416 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.124 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.452 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.376 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.626 200 0 15,000 € 20,000 € - € 5,000 €

0.907 200 0 15,000 € 20,000 € - € 5,000 €

0.076 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.648 200 0 15,000 € 20,000 € - € 5,000 €

0.289 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.952 200 0 15,000 € 20,000 € - € 5,000 €

0.308 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.724 200 0 15,000 € 20,000 € - € 5,000 €

0.209 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.965 200 0 15,000 € 20,000 € - € 5,000 €

0.254 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.273 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.178 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.343 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.439 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.048 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

Page 48: 174006189 Apuntes de Simulacion1

0.247 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.371 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.931 200 0 15,000 € 20,000 € - € 5,000 €

0.741 200 0 15,000 € 20,000 € - € 5,000 €

0.577 200 0 15,000 € 20,000 € - € 5,000 €

0.5 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.273 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.685 200 0 15,000 € 20,000 € - € 5,000 €

0.063 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.521 200 0 15,000 € 20,000 € - € 5,000 €

0.164 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.402 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.168 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.875 200 0 15,000 € 20,000 € - € 5,000 €

0.928 200 0 15,000 € 20,000 € - € 5,000 €

0.803 200 0 15,000 € 20,000 € - € 5,000 €

0.13 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.338 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.031 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.699 200 0 15,000 € 20,000 € - € 5,000 €

0.531 200 0 15,000 € 20,000 € - € 5,000 €

0.68 200 0 15,000 € 20,000 € - € 5,000 €

0.081 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.23 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.493 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.259 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.927 200 0 15,000 € 20,000 € - € 5,000 €

0.205 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.538 200 0 15,000 € 20,000 € - € 5,000 €

0.057 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.853 200 0 15,000 € 20,000 € - € 5,000 €

0.361 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.305 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.945 200 0 15,000 € 20,000 € - € 5,000 €

0.362 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.317 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.874 200 0 15,000 € 20,000 € - € 5,000 €

0.232 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.757 200 0 15,000 € 20,000 € - € 5,000 €

0.25 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.923 200 0 15,000 € 20,000 € - € 5,000 €

0.055 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.255 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.297 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.778 200 0 15,000 € 20,000 € - € 5,000 €

Page 49: 174006189 Apuntes de Simulacion1

0.065 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.576 200 0 15,000 € 20,000 € - € 5,000 €

0.079 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.433 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.488 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.358 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.199 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.803 200 0 15,000 € 20,000 € - € 5,000 €

0.424 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.618 200 0 15,000 € 20,000 € - € 5,000 €

0.846 200 0 15,000 € 20,000 € - € 5,000 €

0.846 200 0 15,000 € 20,000 € - € 5,000 €

0.816 200 0 15,000 € 20,000 € - € 5,000 €

0.763 200 0 15,000 € 20,000 € - € 5,000 €

0.611 200 0 15,000 € 20,000 € - € 5,000 €

0.483 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.678 200 0 15,000 € 20,000 € - € 5,000 €

0.937 200 0 15,000 € 20,000 € - € 5,000 €

0.964 200 0 15,000 € 20,000 € - € 5,000 €

0.299 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.876 200 0 15,000 € 20,000 € - € 5,000 €

0.423 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.058 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.449 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.201 100 100 15,000 € 10,000 € 2,500.00 € - 2,500 €

0.824 200 0 15,000 € 20,000 € - € 5,000 €

0.44 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

0.996 200 0 15,000 € 20,000 € - € 5,000 €

0.885 200 0 15,000 € 20,000 € - € 5,000 €

0.389 150 50 15,000 € 15,000 € 1,250.00 € 1,250 €

-3,000 €

-2,000 €

-1,000 €

- €

1,000 €

2,000 €

3,000 €

100 150 200 250 300

Licencias Vendidas

Beneficio esperado

Bº medio

Bº peor

Bº mejor

Page 50: 174006189 Apuntes de Simulacion1
Page 51: 174006189 Apuntes de Simulacion1

Unidad III. Generación de Variables Aleatorias

3.1. Introducción

Una vez obtenida toda la información, es decir, los datos de entrada del sistema real, es

necesario convertirlos en información o datos de entrada del modelo de simulación. Es posible

distinguir dos tipos de información:

Información determinística. Esta información entra directamente al modelo con su

valor correspondiente en el sistema real.

Información probabilística. Es necesario crear modelos de simulación que imiten el

comportamiento de esas variables.

De esta forma, al crear un modelo de simulación debemos ser capaces de crear ese

comportamiento y modelarlo. Los números aleatorios uniformes (0-1) son la base en los

modelos de simulación donde hay variables estocásticas, ya que dichos números son la

herramienta para generar eventos de tipo probabilístico.

La generación de cualquier variable aleatoria se va a basar en la generación previa de una

distribución uniforme (0,1). Y las transformaciones de dichos números generados en valores

de otras distribuciones.

La mayoría de las técnicas utilizadas para la generación se pueden agrupar en:

Método de la transformada inversa

Método de aceptación rechazo

Método de composición

Método de convolución

MÉTODO DE LA TRANSFORMADA INVERSA

INTRODUCCIÓN

Existen varios métodos que nos permiten generar variables aleatorias. Lo normal es que

existan varias opciones para generar una misma variable aleatoria. La elección del método

adecuado se puede basar en una serie de factores como:

Exactitud. Se prefiere un método exacto frente a métodos aproximados,

como soluciones numéricas.

Velocidad. Uno de los datos que se toma en consideración es el °em tiempo

de generación de la variable.

Espacio. Necesidades de memoria del método utilizado. En general, los métodos no

consumen mucha memoria.

Simplicidad.

Page 52: 174006189 Apuntes de Simulacion1

La mayoría de las técnicas utilizadas para la generación se pueden agrupar en:

Método de la transformada inversa

Método de aceptación-rechazo

Método de composición

Método de convolución

GENERACIÓN DE VARIABLES ALEATORIAS

La variabilidad de eventos y actividades se presentan a través de funciones de densidad para

fenómenos continuos, y mediante distribuciones de probabilidad para fenómenos de tipo

discreto. La simulación de estos eventos o actividades se realiza con la ayuda de la generación

de variables aleatorias.

MÉTODO DE LA TRANSFORMADA INVERSA

El método de la transformada inversa puede utilizarse para simular variables aleatorias

continuas, lo cual se logra mediante la función acumulada f(x) y la generación de números

pseudoaleatorios ( ).

El método consiste en:

Definir la función de Densidad f(x) que representa 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 pdeudoaleatorios

( ). en la función acumulada inversa.

El método de la transformada inversa también puede emplearse para simular variables

aleatorias de tipo discreto, como en las distribuciones de Poisson, de Bernoulli, binomial,

geométrica, discreta general, etc. La generación se lleva a cabo a través de la probabilidad

acumulada P(x) y la generación de números pseudoaleatorios ( ).

Page 53: 174006189 Apuntes de Simulacion1

Metodología para generar variables aleatorias continuas.

Metodología para generar variables aleatorias discretas.

Distribución Uniforme

A partir de la función de la densidad de las variables aleatorias uniformes entre a y b.

Se obtiene la función acumulada

Page 54: 174006189 Apuntes de Simulacion1

Igualando la función acumulada F(x) con el número pseudoaleatorio ( ), y

despejando x se obtiene:

( ) ( )

( )

Ejemplo 1:

Los datos del tiempo de servicio en la caja de un banco se comportan de forma exponencial

con media de 3 minutos/cliente. Una lista de números pseudoleatorios ( )y la ecuación

generadora exponencial xi = -3In (1 - ri) nos permite simular el comportamiento de la variable

aleatoria

Distribución de Bernoulli

A partir de la distribución de probabilidad de las variables aleatorias de Bernoulli con media

p(x) = px (1 – p)

1 – x para x=0,1

Se calculan las probabilidades para x=0 y x=1, para obtener

X 0 1

P(x) 1-p p

Acumulando los valores de p(x) se obtiene:

X 0 1

P(x) 1-p p

Generando números pseudoaleatorios ( )se aplica la regla:

{ ( )

( )

Page 55: 174006189 Apuntes de Simulacion1

La tabla siguiente muestra la demanda diaria de cepillos dentales en un supermercado.

Día 1 2 3 4 5 6 7 8 9

Demanda 1 2 2 1 3 0 3 1 3

Simular el comportamiento de la demanda mediante el método de la transformada inversa.

A partir de la información histórica se calculan las probabilidades puntuales y las acumuladas

para

X P(x) P(x)

0 0.111 0.111

1 0.222 0.222

2 0.333 0.666

3 0.333 1

La regla para generar esta variable aleatoria estaría dada por:

{

( )

( ) ( )

(

Con la lista de números pseudoaleatorios ( )y la regla anterior es posibles simular la

demanda diaria de cepillos dentales, tal como se muestra

Dia Demanda diaria

1 0.213 1

2 0.345 2

3 0.021 0

4 0.987 3

5 0.543 2

Ejemplo. La distribución exponencial

Supongamos que tiene una distribución exponencial de media beta. La función densidad de

probabilidad es:

La función de distribución (acumulativa) es:

Page 56: 174006189 Apuntes de Simulacion1

Método de aceptación rechazo

Este método es más probabilístico que el anterior. Los métodos de inversión, composición y

convolución son métodos de generación directos, en el sentido en que tratan directamente con

la función de distribución. El método de aceptación-rechazo es menos directo en su

aproximación.

Se va aplicar este método en el caso de que la variable aleatoria sea continua, el caso discreto

es análogo y está tratado en Prob.

En este caso tenemos la función de densidad f(x) de la variable y necesitamos una función t(x)

que la acote, es decir t(x)³f(x) "x. Hay que notar que t(x) no es, en general, una función de

densidad

Pero la función r(x)=t(x)/c, si es claramente una función de densidad. (Suponemos que t es tal

que c<¥). Debemos de poder generar (esperamos que de forma fácil y rápida) un valor de la

variable aleatoria que sigue la función r(x). El algoritmo general queda como sigue:

Generar x que siga la distribución r(x)

Generar ( ) independiente de x entonces devolver x si no volver a repetir el algoritmo

El algoritmo continúa repitiéndose hasta que se genera un valor que es aceptado.

Para hacer que se rechacen el menor número de puntos posibles la función t(x) debe ser la

mínima función que acote a f(x).

Método de composición

Este método va a poder ser aplicado cuando la función de densidad es fácil de siendo n el

número de trozos en los que se ha dividido la función.

Cada uno de los fragmentos se puede expresar como producto de una función de distribución y

un peso y la función de distribución global la podemos obtener como

Page 57: 174006189 Apuntes de Simulacion1

El método consiste en generar dos números aleatorios, uno sirve para seleccionar un trozo y el

otro se utiliza para generar un valor de una variable que sigue la distribución de dicho trozo. El

valor de la variable obtenida es el valor buscado.

El algoritmo general queda como sigue:

Generar ( )

Si entonces generar ( )

Si no

Si entonces generar ( )

3.2. Generación de variables aleatorias discretas y continuas utilizando paquetes

Computacionales como Excel, ProModel, Arena.

Métodos para Generar Variables aleatorias discretas y continuas utilizando programas

computacionales Excel

GENERACIÓN DE VARIABLES ALEATORIAS NO UNIFORMES

Si el modelo de simulación es estocástico, la simulación debe ser capaz de generar variables

aleatorias no uniformes de distribuciones de probabilidad teóricas o empíricas. Lo anterior

puede obtenerse si se cuenta con un generador de números uniformes y una función que

transforme estos números en valores de la distribución de probabilidad deseada. A este

respecto, se han desarrollado una gran cantidad de generadores para las distribuciones más

comunes como; la distribución normal, exponencial, Poisson, Erlang, Binomial, Gamma, Beta,

F, t, Simulación.

2. LENGUAJE DE PROGRAMACION.

Las primeras etapas de un estudio de simulación se refieren a la definición del sistema a ser

modelado y a la descripción del sistema en términos de relaciones lógicas de sus variables y

diagramas de flujo. Sin embargo, llega el momento de describir el modelo en un lenguaje que

sea aceptado por la computadora que va utilizar (PC compatible). En esta etapa se tienen dos

cursos de acción a seguir si no se tiene nada de software de simulación, que son:

Desarrollar el software requerido, o Comprar software (lenguaje de programación d propósito

especial). Para esta alternativa es necesario analizar y evaluar varios paquetes de simulación

Page 58: 174006189 Apuntes de Simulacion1

(GPSS, GPSSH, PROMODEL SIMFACTORY, SLAM, MICROMANAGER, etc.) antes de

tomar la decisión final.

Condiciones iniciales.

La mayoría de los modelos de simulación estocástica se corren con la idea de estudiar al

sistema en una situación de estado estable. Sin embargo, la mayor parte de estos modelos

presentan en su etapa inicial estados transigentes los cuales no son típicos del estado estable.

Por consiguiente es necesario establecer claramente las alternativas o cursos de acción que

existen para resolver este problema. Algunos autores piensan que la forma de atacar este

problema sería a través de:

Usar un tiempo de corrida suficientemente grande de modo que los períodos transientes sean

relativamente insignificantes con respecto a la condición de estado estable.

• Excluir una parte apropiada de la parte inicial de la corrida.

• Utilizar simulación regenerativa.

• Basado en la experiencia, de las tres alternativas presentadas, la que presenta menos

desventajas es el uso de simulación regenerativa. Las otras alternativas presentan las

desventajas de ser prohibitivamente excesivas en costo.

Tamaño de la muestra.

Uno de los factores principales a considerar en un estudio de simulación es el tamaño de la

muestra (número de corridas en la computadora). La selección de un tamaño de muestra

apropiado que asegure un nivel deseado de precisión y a la vez minimice el costo de operación

del modelo, es un problema algo difícil pero muy importante. Puesto que la información

proporcionada por el experimento de simulación sería la base para decidir con respecto a la

operación del sistema real. Esta información deberá ser tan exacta y precisa como sea posible

o al menos el grado de imprecisión presente en la información proporcionada por el modelo

debe ser conocida. Por consiguiente, es necesario que un análisis estadístico se a realizado

para determinar el tamaño de la muestra requerido.

El tamaño de la muestra puede obtenerse de dos maneras:

• Previa e independientemente de la operación del modelo, o

• Durante la operación del modelo basado en los resultados arrojados por el mismo. Para

la última alternativa se utiliza la técnica estadística de intervalos de confianza.

Page 59: 174006189 Apuntes de Simulacion1

Diseño de experimentos.

El diseño de experimentos es un tópico cuya relevancia en experimentos en estudios de

simulación ha sido reconocida, pero raramente aplicada. El diseño de experimentos en

estudios de simulación puede ser varios tipos, dependiendo de los propósitos específicos que

se hayan planteado. Existen diferentes formas de análisis que pueden ser utilizados. Entre los

más comunes e importantes, se pueden mencionar los siguientes:

• Comparación de las medias y varianzas de las alternativas analizadas.

• Determinación de la importancia y el efecto de diferentes variables en los resultados de

la simulación.

• Búsqueda de los valores óptimos de un conjunto de variables.

Para realizar el primer tipo de análisis, al cual se le denomina comúnmente diseño de

experimentos de un factor simple, es necesario tomar muy en cuenta el tamaño de la muestra,

las condiciones iniciales y la presencia o ausencia de autocorrelación. Para el segundo tipo de

análisis, existe una gran cantidad de literatura, puesto que la gran mayoría de los libros de

texto de diseño de experimentos, explican o tratan el tema de análisis de varianza y técnicas de

regresión como medios para evaluar la importancia y el efecto de varias variables en los

resultados de operación de un sistema. Para el tercer tipo de análisis, generalmente se requiere

utilizar algoritmos heurísticos de búsqueda como por ejemplo el algoritmo de Hookes y

Jeeves.

Ventajas y desventajas en el uso de la simulación

Aunque la técnica de simulación generalmente se ve como un método de último recurso,

recientemente avances en las metodologías de simulación y la gran disponibilidad de software

que actualmente existe en el mercado, han hecho posible que la técnica de simulación sea una

de las herramientas más ampliamente usadas en el análisis de sistemas. Además de las razones

antes mencionadas, Tomas H. Naylor (1977), ha sugerido que un estudio de simulación es

muy recomendable porque presenta las siguientes ventajas:

a) A través de la técnica de simulación, se puede estudiar el efecto de cambios internos y

externos del sistema, al hacer alteraciones en el modelo del sistema y observando los

efectos de estas alteraciones en el comportamiento del sistema.

b) Una observación detallada del sistema que se está simulando puede conducir a un

mejor entendimiento del sistema y por consiguiente a sugerir estrategias que mejoren

la operación y eficiencia del sistema.

c) La técnica de simulación puede ser utilizada como un instrumento pedagógico, para

estudiantes al enseñarles los conocimientos básicos en el análisis teórico, el análisis

estadístico, y en la toma de decisiones.

Page 60: 174006189 Apuntes de Simulacion1

d) La simulación de sistemas complejos puede producir un valioso y profundo

conocimiento acerca de cuáles variables son más importantes que otras en el sistema y

cómo ellas obran entre sí.

e) La técnica de simulación puede utilizarse para experimentar con nuevas situaciones,

sobre las cuales se tiene poca o nula información. A través de esta experimentación se

puede anticipar mejor a los posibles resultados no previstos.

f) La técnica de la simulación de sistemas complejos puede producir un valioso y

profundo conocimiento acerca de cuáles variables son más importantes que otras en el

sistema y cómo ellas obran entre sí.

g) Se puede utilizar también para entrenamiento de personal. En algunas ocasiones se

puede tener una buena representación de un sistema (como por ejemplo los juegos de

negocios), y entonces a través de él es posible entrenar y dar experiencia a cierto tipo

de personal.

h) La simulación de sistemas complejos puede producir un valioso y profundo

conocimiento acerca de cuáles variables son más importantes que otras en el sistema y

cómo ellas entre sí.

i) Cuando nuevos elementos son introducidos en un sistema, la simulación puede

utilizarse para anticipar cuellos de botella o algún otro problema que puede surgir en el

comportamiento del sistema.

A diferencia de las ventajas mencionadas, la técnica de simulación presenta el problema de

requerir equipo de cómputo y recursos humanos, en ocasiones costosas. Además,

generalmente se requiere bastante tiempo para que un modelo de simulación sea desarrollado

y perfeccionado. Finalmente, es posible que la alta administración de una organización no

entienda esta técnica y esto crea dificultad en vender la idea.

Page 61: 174006189 Apuntes de Simulacion1

Unidad IV. Lenguajes de Simulación y Simuladores de Eventos Discretos

4.1. Antecedentes de los lenguajes de simulación y simuladores

La historia y la evolución de la simulación por ordenador han ido paralelas a la evolución de la

Informática. Sus orígenes los encontramos en la segunda Guerra Mundial cuando dos

matemáticos, J. VNeumann y S. Ulam, tenían el reto de resolver un problema complejo

relacionado con el comportamiento de los neutrones. Los experimentos basados en prueba y

error eran muy caros y el problema era demasiado complicado para abordarlo mediante

técnicas analíticas. La aproximación que cogieron se basa en la utilización de números

aleatorios y distribuciones de probabilidad. El método desarrollado fue llamado "método de

Montecarlo" por el paralelismo entre la generación de números aleatorios y el juego de la

ruleta.

Simulación implica crear un modelo que aproxima cierto aspecto de un sistema del mundo real

y que puede ser usado para generar historias artificiales del sistema, de forma tal que nos

permite predecir cierto aspecto del comportamiento del sistema.

En particular, usaremos computadores para imitar comportamientos del sistema evaluando

numéricamente un modelo del mismo. Estas evaluaciones numéricas son las que nos permiten

generar las historias artificiales que no son más que experimentos.

Modelo

Un modelo es una representación de un objeto, idea, o sistema en una forma diferente a la

entidad misma.

En nuestro caso el modelo es un conjunto de relaciones matemáticas o lógicas derivadas de

supuestos sobre el comportamiento del sistema.

La simulación por eventos discretos es una técnica informática de modelado dinámico de

sistemas. Frente a su homóloga, la simulación de tiempo continuo, esta se caracteriza por un

control en la variable del tiempo que permite avanzar a éste a intervalos variables, en función

de la planificación de ocurrencia de tales eventos a un tiempo futuro. Un requisito para aplicar

esta técnica es que las variables que definen el sistema no cambien su comportamiento durante

el intervalo simulado.

Page 62: 174006189 Apuntes de Simulacion1

-Descripción

Estos sistemas se caracterizan por mantener un estado interno global del sistema, que puede no

obstante estar física o lógicamente distribuido, y que cambia parcialmente debido a la

ocurrencia de un evento.

El estado del sistema solo cambia mediante la ejecución de eventos, que se almacenan en un

contenedor, y uno o varios procesos dedicados a su ejecución avanzan el tiempo de simulación

a medida que se van ejecutando y eliminando los eventos pendientes para el valor de tiempo

actual.

La ejecución de un evento puede desencadenar la generación de nuevos eventos futuros. Cada

uno está marcado por su tiempo, por lo que el orden de generación puede no coincidir con el

orden de ejecución.

La simulación de eventos discretos ha sido caracterizada por dos tendencias significantes en

años recientes. El primero fue el uso creciente de simulación con respecto a lo complejo de

sistemas industriales. El segundo ha sido el uso creciente de gráficos de la computadora por

displays animados en movimiento. Estas tendencias han originado una nueva generación de

software o paquetes de simulación; sin embargo, ningún software podría utilizarse única y

necesariamente con todos los usuarios probables.

Simulador de restaurante

Juega Gratis a estos Fabulosos juegos en el que tendrás que llevar un restaurante sirviendo las

mesas y tomando el control del restaurante.

Simulador de gimnasio

Simulador de Gimnasio Online. Entrénate con este personaje flacucho en el gimnasio para

ponerle cachas y que se vuelvan todas las mujeres locas por él.

Simulador puerto marítimo

Juego al estilo Sim City en el que tendrás que crear un puerto marítimo rentable con todas las

instalaciones necesarias. Tú eres el director del puerto.

Page 63: 174006189 Apuntes de Simulacion1

Comprando en la ciudad

Hazte empresario. Crea negocios en tu ciudad y hazte con el poder económico. Juego

Simulador de montar negocios en una ciudad e intentar ganar el máximo de dinero sin

arruinarte

Simulador tienda de ropa

Deberás llevar una tienda de ropa y atender en todo lo que te pidan tus clientes. ¿Serás capaz

de llevar a lo más alto tu negocio?

Simulador Mac Donald en español

Hacer dinero con una gran empresa no es fácil, controla todo el proceso hasta que la

hamburguesa llega al cliente.

Volar como una paloma

Eres una paloma en la ciudad y estas en busca de patatas fritas para alimentarte y después

cagar sobre los policías de la ciudad. Fantástico simulador de vuelo. Lo mejor es que puedes

jugar a 1 o 2 jugadores.

Mezclador musical

Estupendo Juego Mezclador Musical. Crea tu propia música sin conocimientos musicales.

Puedes combinar distintos ritmos hasta conseguir el tuyo propio.

Ejemplos de Simulaciones

Te invitamos a conocer ejemplos de Simulaciones llevadas a cabo con ProModel.

Avión

Este modelo muestra cómo se pueden incorporar fácilmente fotografías digitales a ProModel.

El modelo ilustra el cálculo de la utilización de los operarios, permitiendo variar el número de

operarios

Page 64: 174006189 Apuntes de Simulacion1

Bodega

¿Cuántos montacargas necesitamos? ¿Cuál es el inventario que puede mover el centro de

distribución? ¿Cómo nos afectan los horarios dentro del centro de trabajo? ¿Cómo nos afecta

el mantenimiento a los montacargas? ¿El diseño de la operación de la bodega, nos permitirá

absorber la estacionalidad de la demanda?

Celda

Qué capacidad tenemos en piezas por hora? ¿Cuál es el tiempo de entrega? ¿Cuál es el tiempo

de ciclo? ¿Cuál es el Takt Time? ¿Cómo nos afecta el diseño de turnos en la celda de

manufactura? ¿Podemos meter un producto nuevo a la línea? ¿Cuál es el impacto de los

tiempos de preparación

Conveyors

ProModel permite representar bandas transportadoras que representen manejo de materiales a

través de filas y bandas (conveyors).

Container

¿El itinerario que tenemos es satisfactorio? ¿Podemos satisfacer la demanda adecuadamente?

¿Las unidades de transporte son suficientes? ¿Cómo se comportarán los inventarios en cada

una de las estaciones de servicio? ¿Cómo impacta al proceso el mantenimiento de las unidades

de transporte?

Page 65: 174006189 Apuntes de Simulacion1

Container 3D

Una vez terminado el análisis, para fines de una buena presentación se transfiere el modelo a

3D Animator. Rápidamente se configura la animación en 3 Dimensiones para mostrar

claramente el problema y su solución.

Ejemplos de Conveyors

Una de las facilidades mejor aprovechadas por los usuarios de ProModel son las bandas

transportadoras, y las grúas viajeras. En este modelo están representados y nos muestran cómo

el sistema podría saturarse por la velocidad de proceso del sistema.

Demand Based

Las preocupaciones de los Directores Generales hoy día es la eficiencia y la optimización de

las cadenas de abasto (Supply Chain). Este modelo permite el análisis del sistema tomando en

cuenta la variabilidad en la demanda, los recursos de la empresa y todo el proceso de

manufactura. Simplemente, no hay otra forma de hacer el análisis y al mismo tiempo

incorporando todas las variables en el proceso.

Distribución

¿Cuantas bodegas? ¿De qué capacidad? ¿Qué utilización tendremos del espacio? ¿Cuántos

camiones? ¿En qué horarios podemos trabajar? ¿Toda la demanda será satisfecha? ¿Qué pasa

durante los cambios debido la estacionalidad de la demanda? ProModel permite representar

fácilmente el sistema y poderle hacer cambios y optimizar el sistema total.

Distribución 2

¿Cuantas bodegas? ¿De qué capacidad? ¿Qué utilización tendremos del espacio? ¿Cuántos

camiones? ¿En qué horarios podemos trabajar? ¿Toda la demanda será satisfecha? ¿Qué pasa

durante los cambios debido la estacionalidad de la demanda? ProModel permite representar

fácilmente el sistema incorporando plantas, bodegas y clientes finales y poderle hacer cambios

y optimizar el desempeño.

Fábrica

ProModel nos permite representar la realidad de una fábrica, con las entregas de materia

prima, operadores, factores de calidad, aleatoriedad en los tiempos de proceso, en la duración

y frecuencia de los mantenimientos, de tal manera que podemos calcular la capacidad de la

Page 66: 174006189 Apuntes de Simulacion1

planta (Capacity Planning), Takt Time, Lead Time. Muchos de los usos actualmente van hacia

la manufactura esbelta.

Ferrocarril

Con ProModel, los usuarios que tienen relación con la industria del transporte han hecho

muchísimas aplicaciones que les han permitido ahorrar millones de dólares. Preguntas como

¿Cuántos contenedores? ¿De qué tipo? ¿Qué plan de mantenimiento se puede seguir? ¿Cómo

afectamos los inventarios y la demanda de nuestros clientes?

Grúas Viajeras

El objeto de grúas de techo o viajeras de ProModel permite que rápidamente se construyan

modelos incorporando este método de manejo de materiales. ¿Cuál es la utilización de la grúa?

¿Qué políticas deben usarse en la asignación de prioridades de servicio de la grúa? ¿El layout

favorece el uso de grúas?

Logística 3D

En este modelo, se presenta una aplicación de logística de cadena de abasto, en 3D Animator,

en el que se muestra desde que el acero es chatarra hasta que es producto terminado y llega al

cliente final. El modelo permite presentar los indicadores clave en la pantalla para

visualización.

Manufactura Automotriz

ProModel permite incorporar el layout de AutoCAD de la planta, para visualizar la

implementación del proceso directamente en él y así poder comunicarlo a la audiencia. Este

modelo utiliza el SimRunner adicionalmente, para optimizar la velocidad de la banda de

transporte, así como el número de contenedores que se deben usar en el proceso. Se muestran

en color rojo, aquellos productos que fallan la prueba.

Panel

Este modelo ilustra un proceso de manufactura en el cual se desea conocer en dónde está el

cuello de botella, y cuál es la capacidad de la línea. Tanto el layout cómo el producto se

incorporó a la biblioteca de gráficos de ProModel. Las estadísticas críticas en este modelo son

el uso de los recursos y el uso de los equipos.

Page 67: 174006189 Apuntes de Simulacion1

Los Simpson

Este modelo cómico, está diseñado para ilustrar que cualquier gráfico puede ser colocado

dentro de ProModel, de tal manera que gráficamente se logre el objetivo. Para ProModel,

Simulación es Visualizar, Analizar y Optimizar.

4.2. Aprendizaje y uso de un Simulador como: ProModel, Arena, entre otros.

ProModel es un simulador con animación para computadoras personales. Permite simular

cualquier tipo de sistemas de manufactura, logística, manejo de materiales, etc. Puedes simular

bandas de transporte, grúas viajeras, ensamble, corte, talleres, logística, etc.

ProModel es un paquete de simulación que no requiere programación, aunque sí lo permite.

Corre en equipos 486 en adelante y utiliza la plataforma Windows®. Tiene la combinación

perfecta entre facilidad de uso y flexibilidad para aplicaciones complejas.

Puedes simular Justo a Tiempo, Teoría de Restricciones, Sistemas de Empujar, Jalar,

Logística, etc. Prácticamente, cualquier sistema puede ser modelado.

Una vez hecho el modelo, éste puede ser optimizado para encontrar los valores óptimos de los

parámetros claves del modelo. Algunos ejemplos incluyen determinar la mejor combinación

de factores para maximizar producción minimizando costo, minimizar el número de camiones

sin penalizar el servicio, etc.

El módulo de optimización nos ayuda a encontrar rápidamente la solución óptima, en lugar de

solamente hacer prueba y error. ProModel cuenta con 2 optimizadores disponibles y permite

de esta manera explotar los modelos de forma rápida y confiable.

4.3. Características del software

Rápido aprendizaje con interfaces muy amigables.

Fácil manejo y análisis de los datos a través de la exportación de los resultados en formato

Microsoft® Excel.

Agregue el detalle necesario incorporando máquinas, operadores, grúas horquillas, grúas

puente, correas transportadoras, asignación de turnos de trabajo, tiempos muertos, etc.

Capture la variabilidad y aleatoriedad de su proceso utilizando más de 20 tipos de

distribuciones de probabilidad estadística, o importe directamente sus propios datos.

Distribuya fácilmente, a través del correo electrónico, los modelos desarrollados por usted a

otras divisiones o departamentos.

Page 68: 174006189 Apuntes de Simulacion1

4.4. Construcción de modelos

¿Qué son los modelos?

Aquellos que manejan y controlan sistemas de hombres y equipos se enfrentan al problema

constante de mejorar (por ejemplo, optimizar) el rendimiento del sistema. El problema puede

ser reducir el costo de operación y a la vez mantener un nivel aceptable de servicio, utilidades

de las operaciones actuales, proporcionar un mayor nivel de servicio sin aumentar los costos,

mantener un funcionamiento rentable cumpliendo a la vez con las reglamentaciones

gubernamentales establecidas, o "mejorar" un aspecto de la calidad del producto sin reducir la

calidad de otros aspectos. Para identificar la mejora del funcionamiento del sistema, se debe

construir una representación sintética o modelo del sistema físico, que puede utilizarse para

describir el efecto de una variedad de soluciones propuestas.

Pasos para la construcción de un modelo

1. Definición del problema de interés y recolección de los datos relevantes

2. Formulación de un modelo que represente el problema

3. Solución del modelo

4. Prueba del modelo

5. Preparación para la aplicación del modelo

6. Puesta en marcha

4.5. Consideraciones económicas en la simulación.

4.6. Realizar prácticas utilizando el simulador para procesos productivos, de transporte, líneas

de espera, calidad, inventarios, entre otros.

4.7. Interpretación de los resultados obtenidos y generación de propuestas de mejora para el

modelo analizado.

Unidad V. Proyecto de Aplicación

5.1. Elaboración de un proyecto final

5.2. Análisis, modelado, simulación e interpretación de resultados para sistemas reales de

empresas de manufactura o de servicios, a fin de detectar las mejoras posibles a realizar y

proponer acciones que mejoren su desempeño, considerando aspectos económicos.

Page 69: 174006189 Apuntes de Simulacion1

Bibliografía

1. Azarang, M. R. y García Dunna, E., Simulación y Análisis de Modelos Estocásticos. Mc Graw Hill

(1998)

2. Banks, J. y Carson, J. S. Discrete Event System Simulation. Prentice Hall (2001)

3. Law A. y Kelton W., Simulation Modelling and Analisis, Mc Graw Hill (2000)

4. García Dunna Eduardo, García Reyes Heriberto, Cárdenas Barrón Leopoldo. Simulación y Análisis

de Sistemas con Promodel. Pearson (2006)

5. García F., Sierra J., y Guzmán V., Simulación de Sistemas para Administración e Ingeniería.

CECSA (2005)

6. Harrell Ch., Ghosh B., y Borden Royce., Simulation Using Promodel. Mc Graw Hill (2004)

7. Kelton W David., Sadowski Randall P., Sturrock David T., Simulación con software Arena. 4a

Edicion. México. McGraw Hill