Vous êtes sur la page 1sur 33

Instituto Tecnológico Superior de Las Choapas

Investigación de unidades

Materia:
Simulación

Docente:
Ing. José Eduardo Gerónimo Castro

Presenta:
Gabriela Yajaira Córdova Contreras

Carrera:
Ingeniería en sistemas computacionales

Semestre:
4° “A”

Las Choapas, Veracruz, 08 de marzo del 2018


Contenido
Unidad 1 .............................................................................................................................................. 2
Introducción a la simulación ............................................................................................................... 2
1.1 Definición e importancia de la simulación la ingeniería ......................................................... 2
1.2 Conceptos básicos de la simulación ........................................................................................ 3
1.3 Metodología de la simulación ................................................................................................. 4
1.4 Estructura y etapas de un estudio de simulación ................................................................. 13
1.5 Etapas de un proyecto de simulación ................................................................................... 14
1.6 Elementos básicos de un simulador de eventos discretos.................................................... 15
1.7 Ventajas y desventajas de la simulación ..................................................................................... 15
Unidad 2 ............................................................................................................................................ 16
Números pseudoaleatorios ............................................................................................................... 16
2.1 Métodos de generación de números pseudoaleatorios ............................................................. 16
2.2 Pruebas estadísticas .................................................................................................................... 18
2.2.1 De uniformidad ........................................................................................................................ 18
2.2.2 De aleatoriedad ........................................................................................................................ 19
2.2.3 De independencia .................................................................................................................... 19
2.3 Método de Monte Carlo.............................................................................................................. 20
2.3.1 Características .......................................................................................................................... 20
2.3.2 Aplicaciones.............................................................................................................................. 21
2.3.3 Solución de problemas ............................................................................................................. 21
Unidad 3 ............................................................................................................................................ 23
Generación de variables aleatorias ................................................................................................... 23
3.1 Conceptos básicos ....................................................................................................................... 23
3.2 Variables aleatorias discretas...................................................................................................... 24
3.3 Variables aleatorias continuas .................................................................................................... 24
3.4 Métodos para generar variables aleatorias ................................................................................ 24
3.4.1 Método de transformación inversa ......................................................................................... 24
3.4.2 Método de convolución ........................................................................................................... 25
3.4.3 Método de composición .......................................................................................................... 26
3.5 Procedimientos especiales .......................................................................................................... 26
3.6 Pruebas estadísticas .................................................................................................................... 27
Unidad 4 ............................................................................................................................................ 27

1
Lenguajes de simulación ................................................................................................................... 27
4.1 Lenguaje de simulación y simuladores........................................................................................ 27
4.2 Aprendizaje y uso lenguaje de simulación .................................................................................. 28
4.3 Casos prácticos de simulación ..................................................................................................... 28
4.3.1 Problemas con líneas de espera............................................................................................... 29
4.3.2 Problemas con sistemas de inventarios ................................................................................... 29
4.4 Validación de un simulador ......................................................................................................... 29
4.4.1 Pruebas paramétricas .............................................................................................................. 29
4.4.2 Pruebas no paramétricas ......................................................................................................... 30
CONCLUSION ..................................................................................................................................... 31
Fuentes de Información .................................................................................................................... 31

Unidad 1

Introducción a la simulación
Las primeras referencias sobre simulación se encuentran hacia el año 1940, cuando
Von Neumann y Ullman trabajaron sobre la simulación del flujo de neutrones para
la construcción de la bomba atómica en el proyecto “Montecarlo”. Desde entonces
se conocían las técnicas de simulación como procesos Montecarlo, aunque en la
actualidad se diferencian ambas cosas, siendo los segundos un tipo particular de
simulación. También se realizó un proceso de simulación para el proyecto APOLLO
dentro del plan espacial de la N.A.S.A, acerca del movimiento dentro de la atmósfera
de la luna.
Actualmente, la simulación es una poderosa técnica para la resolución de
problemas. Sus orígenes están en la teoría de muestreo estadístico y análisis de
sistemas físicos probabilísticos complejos. El aspecto común de ambos es el uso
de números y muestras aleatorias para aproximar soluciones.
Para estudiar científicamente estos sistemas, a menudo se han de hacer una serie
de suposiciones acerca de cómo trabaja éste. Estas suposiciones que usualmente
toman la forma de relaciones matemáticas o lógicas, constituyen un modelo que va
a ser usado para intentar comprender el comportamiento del sistema
correspondiente.

1.1 Definición e importancia de la simulación la ingeniería


Simulación es una técnica numérica para conducir experimentos en una
computadora digital. Estos experimentos comprenden ciertos tipos de relaciones

2
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.
Importancia de la simulación en la Ingeniería.
• A través de un estudio 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 esas alteraciones en el comportamiento del sistema.
• 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.
• La simulación de sistemas complejos puede ayudar a entender mejor la operación
del sistema, a detectar las variables más importantes que interactúan en el sistema
y a entender mejor las interrelaciones entre estas variables.

• La técnica de simulación puede ser utilizada para experimentar con nuevas


situaciones, sobre las cuales tiene poca o ninguna información. A través de esta
experimentación se puede anticipar mejor a posibles resultados no previstos.
• Cuando nuevos elementos son introducidos en un sistema, la simulación puede
ser usada para anticipar cuellos de botella o algún otro problema que puede surgir
en el comportamiento del sistema.
Las áreas de aplicación de la simulación son muy amplias, numerosas y diversas,
basta mencionar sólo algunas de ellas: Análisis del impacto ambiental causado por
diversas fuentes Análisis y diseño de sistemas de manufactura. Análisis y diseño de
sistemas de comunicaciones. Análisis de grandes equipos de cómputo. Análisis de
un departamento dentro de una fábrica. Adiestramiento de operadores. Análisis
financiero de sistemas económicos. Evaluación de sistemas tácticos o de defensa
militar. La simulación se utiliza en la etapa de diseño para auxiliar en el logro o
mejoramiento de un proceso o diseño o bien a un sistema ya existente para explorar
algunas modificaciones.

1.2 Conceptos básicos de la simulación


Simulación: 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. 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

3
delimites impuestos por un criterio o conjunto de criterios) para la
operación del sistema.
Modelos: Es una representación de un objeto, sistema o idea en forma tal quesea
diferente a la entidad misma. Un modelo de un objeto puede ser una réplica exacta
de este, o puede ser una abstracción de las propiedades dominantes del objeto. Es
una abstracción de la realidad. Es una construcción intelectual y descriptiva
de una entidad en la cual un observador tiene interés. Se construyen para ser
transmitidos. Supuestos simples son usados para capturar el comportamiento
importante.
Modelos de simulación: Un modelo de simulación es una hipótesis que describe
la estructura y las interrelaciones de un sistema. La experimentación puede ser un
trabajo de campo o de laboratorio. El modelo de método usado para la simulación
seria teórico, conceptual o sistémico. Después de confirmar la hipótesis podemos
ya diseñar un teorema. Finalmente, si este es admitido puede convertirse en una
teoría o en una ley. Modelos en los cuales no se producen características físicas,
sino que se encuentran soluciones numéricas a los modelos, cuando es imposible
analizarlos paso a paso.
Proceso: La simulación de procesos conlleva la computación mediante software de
los modelos que describen los procesos químicos, físicos, biológicos, así como otros
procesos técnicos y operaciones unitarias. Los requisitos básicos para su aplicación
requieren un conocimiento profundo de las propiedades químicas y físicas
de los componentes puros y mezclas, de las reacciones, y de los modelos
matemáticos que, en combinación, permiten el cálculo de un proceso usando la
computación. En el proceso de simulación deben considerarse dos aspectos. En
primer lugar, para un conjunto dado de condiciones del modelo, es necesario
asegurarse que se lleve a cabo un número adecuado de experimentos muéstrales
(repeticiones de simulación).
El segundo aspecto que debe abordarse en el proceso de simulación es que, si van
a hacerse inferencias con respecto al funcionamiento del problema en
el mundo real, es necesario analizar diferentes condiciones y parámetros del
modelo.

1.3 Metodología de la simulación


Formulación del problema
Se definen las cuestiones para las que se buscan las respuestas, las variables
implicadas y las medidas de ejecución que se van a usar.

4
Esta fase es muy importante para poder alcanzar un modelo válido, se puede dividir
a su vez en 5 fases

Identificación del Problema


Se hace una abstracción del tipo de problema que se va a tratar. Se identifican los
recursos a utilizar, los requisitos que se van a exigir (relaciones a establecer).

Reconocer las variables del sistema


Se han de identificar las variables que interviene en el sistema y que son de interés
para nuestro modelo, éstas se pueden clasificar en:
· Variables exógenas: son variables externas al modelo y existen con independencia
de él.
Se consideran variables de entrada. Éstas a su vez se pueden dividir en dos grupos:
· Variables controlables o de decisión (factores): son aquellas sobre las que el
analista puede decidir su valor dentro de ciertos límites.
· Variables incontrolables o parámetros: sus valores no se pueden decidir, sino que
vienen fijados. Las variables serán controlables o incontrolables dependiendo de
quién las defina.
· Variables endógenas: son variables internas y las variables de salida del modelo.
Son función de las variables exógenas y de la estructura del modelo.

Especificación de las restricciones de las variables de decisión


Incluso en el caso de que las variables sean controlables, están limitadas o
restringidas a ciertos límites dentro de los cuales se pueden modificar.
Es importante considerar cuidadosamente las restricciones sobre las variables de
decisión, ya que definen el posible espacio de soluciones dentro del cual se buscará
una buena solución o la óptima usando el modelo de simulación.

Desarrollar una estructura preliminar del modelo que interrelacione las


variables del sistema y las medidas de ejecución.
Para evaluar la efectividad de un sistema, se debe identificar una medida o medidas
de comportamiento (o ejecución) para juzgarlo. Estas medidas se seleccionan del
conjunto de variables endógenas. La medida o medidas que se pretenden optimizar
se conocen como función objetivo.

5
Hay veces en las que existe una única función objetivo dominante y entonces se
intenta optimizar ésta sin tener en cuenta las otras variables, aunque siempre
considerando las restricciones. En otras ocasiones existe más de una función
dominante, en este caso, hay que estudiar las distintas funciones objetivo e intentar
encontrar valores para los cuales las funciones son óptimas.
Cuando se quiere tener en cuenta varias medidas de comportamiento, a menudo
no se podrán optimizar simultáneamente. Lo ideal sería hacer mínimas ambas
medidas, el tiempo de espera y el costo de tener los empleados, pero si se minimiza
una de ellas la otra aumenta. Se tienen tres formas de abordar este problema:
· Establecer compromisos implícitos entre las medidas. Esta aproximación es muy
subjetiva y no se va a considerar. Se dan los resultados a quién tenga que tomar la
decisión y él será quien establezca la relación entre las variables conflictivas.
· Establecer compromisos explícitos, realizando una combinación de todas las
medidas usando una dimensión común tal como el costo. A estas técnicas se les
suele conocer como análisis de toma de decisiones multiatributo o multiobjetivo.
Para realizar esta técnica se tiene que decidir una dimensión común para todas las
medidas, factores pesos, y formar una función que las combine.
· Restricción y corte: seleccionar una medida como la que más interesa optimizar y
hacer que las otras estén dentro de un rango de valores aceptable. Esto reduce la
posibilidad de encontrar un óptimo, o al menos las mejores soluciones.
Desarrollo de un modelo apropiado
Los modelos son abstracciones de las partes esenciales del sistema. Se ha de
intentar ver si con las variables que se han especificado se tiene suficiente para
describir estos aspectos importantes del sistema (si no se tienen suficientes
entonces el modelo no será una buena representación del sistema), o por el
contrario se han definido más de las necesarias (esto puede oscurecer las
relaciones entre las variables realmente importantes). En resumen, lo que se tiene
que fijar en este paso es el nivel de detalle al que se debe llegar en el modelo. El
nivel de detalle depende de:
· Propósito del modelo.
· Contribución de las variables al modelo.
No es igual si lo que se desea hacer es un modelo para una previsión a largo plazo,
en cuyo caso la precisión puede ser menor, debido a que al transcurrir el tiempo las
variables van a cambiar e incluso podrán aparecer otras nuevas, que si se desea
una previsión a corto plazo, entonces se deberá profundizar más en el nivel de
detalle.

Colección de datos y Análisis

6
Aunque la recogida de datos se va a ver como el segundo paso, es bastante posible
que se hayan tenido que recoger datos para la formulación del problema. Sin
embargo, durante este paso se recoge el mayor volumen de datos, se reduce y se
analiza.
Los métodos de recogida de datos son tan variados como los problemas a los que
éstos se pueden aplicar. Si se clasifican por su sencillez, se puede ir desde las
aproximaciones manuales hasta las técnicas más sofisticadas de alta tecnología.
En la selección de un método se pueden tener en cuenta los siguientes factores:
· Capacidad de quien recoja los datos.
· El impacto que pueda producir el proceso de recolección sobre el comportamiento
del sistema real. Puede producir perturbaciones reales o físicas en el sistema o
psicológicas.
· La facilidad de conversión de los datos a una representación procesable por el
ordenador.
· El coste del método.
En muchas situaciones es suficiente con la observación directa y la recogida manual
de los atributos de interés. Pero si la medida que se quiere observar depende de
una persona, su comportamiento se puede ver afectado por estar siendo observada.
Otras veces puede ocurrir que la acción que se quiere observar sea muy rápida y
que no sea posible realizar una observación humana.
Para decidir el número de muestras necesarias, se ha de establecer una relación
costo-exactitud y hacer una optimización de dicha relación.
Una vez realizado el muestreo, los datos se han de analizar e introducir en el
modelo. Los datos usados para definir el modelo pueden ser de dos tipos:
· Determinísticos: son datos conocidos con certeza. Éstos se pueden introducir
fácilmente en el modelo.
· Probabilísticos: hay dos formas de incluirlos en el modelo:
· Usar la muestra de datos recogida para representar la distribución de
probabilidades.
· Determinar una distribución probabilística teórica que se comporte como la
muestra y usar ésta en el modelo. Esto permite tener una mejor comprensión
(generalización) del modelo.

Desarrollo del modelo

7
Incluye la construcción y depuración del modelo del sistema real, incluyendo la
selección de un lenguaje de programación, codificación del modelo. Esta etapa se
va a dividir en dos partes:
Comprensión del sistema y Construcción del modelo.

Comprensión del sistema


Una de las tareas más difíciles en el análisis de simulación es adquirir el suficiente
conocimiento del sistema para poder desarrollar un modelo apropiado, es decir,
conocer el comportamiento del sistema. Dos técnicas comúnmente usadas son la
aproximación de flujo físico y la aproximación de cambio de estado.
· Aproximación de Flujo Físico. Se ha de identificar las entidades cuyo
procesamiento o transformación constituye el propósito principal del sistema. Estas
entidades pueden tomar diferentes caminos en el sistema, las rutas que siguen se
determinan mediante reglas de decisión. La representación del sistema vendrá dada
mediante un diagrama de flujo de entidad y los elementos de procesamiento del
sistema.
· Aproximación de Cambio de Estado. Para describir esta aproximación, se debe
definir unas variables endógenas adicionales que son las variables de estado e
introducir un nuevo concepto, el de suceso o evento. Las variables de estado
describen el estado del sistema en cada momento. Dados los valores actuales de
las variables de estado, las variables exógenas y la estructura del modelo, se puede
determinar el estado futuro del sistema. Un evento es un instante particular en el
tiempo en el que el sistema cambia de estado. La evolución del sistema se puede
representar mediante un grafo de sucesos.
Construcción del Modelo
Las tareas principales en la construcción de un modelo son:
Elección Mecanismo de avance del 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 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.

8
· 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.
Elección de un Lenguaje de programación. Hay un creciente número de lenguajes
de programación disponibles para la implementación de modelos de simulación.
Entre los lenguajes de simulación destacan: GPSS (General Purpose Simulation
System), SLAM (Simulation Language for Alternative Modeling), SIMAN (Simulation
Analysis), y SIMSCRIPT. Muchos lenguajes de propósito general son
completamente adecuados para la simulación, por ejemplo, FORTRAM,
PASCAL,…, pero los lenguajes de simulación proporcionan una serie de
características que hacen la programación, depuración y experimentación más
eficientes en tiempo y esfuerzo, aunque consuman más tiempo en la ejecución.
Quizás la más importante ventaja de los lenguajes de simulación es la
correspondencia entre los elementos del sistema y los elementos del lenguaje. Por
ejemplo, en GPSS hay bloques de diagramas de flujo y conjuntos de sentencias de
programa llamados QUEUE que procesan entidades a través de una cola de espera
y acumulan datos de variables de salida tales como tiempo de espera en la cola.
El lenguaje seleccionado puede influir en la forma exacta del diagrama de flujo del
programa de computador.
Generación de números y variables aleatorias. Se van a necesitar muestras
aleatorias para representar valores de variables de entrada probabilísticas.

9
Utilizando estos números aleatorios podemos obtener valores de variables
aleatorias que sigan ciertas distribuciones de probabilidad.
Aunque se ha hecho referencia a que los números usados en simulación son
aleatorios, no lo son totalmente, ya que se producen a partir de algoritmos
determinísticos. Sin embargo, las propiedades de los números producidos se
pueden hacer lo suficientemente cerradas de forma que éstos sean completamente
utilizables para la simulación. Si el modelo se implementa con un lenguaje de
propósito general, se puede seleccionar e incluir algoritmos necesarios para generar
las variables aleatorias requeridas. Pero si se utiliza un lenguaje de simulación estos
algoritmos están incluidos y pueden ser fácilmente accesibles por el usuario.
Implementación y depuración del modelo. La facilidad o dificultad en esta etapa
dependen en gran medida del lenguaje de programación que se haya elegido.

Verificación y Validación del modelo


La Verificación del modelo consiste en ver cuál es la consistencia interna del
modelo.
La Validación consiste en asegurar que existe la una correspondencia entre el
sistema real y el modelo. Un buen método para la validación es hacer un test para
ver cómo el modelo predice el comportamiento del sistema ante determinadas
entradas.
La verificación y validación del modelo se realiza en todos los niveles de
modelización: modelo conceptual, modelo lógico y un modelo de ordenador. La
verificación se centra en la consistencia interna del modelo, mientras que la
validación se interesa por la correspondencia entre el modelo y la realidad.
Se dice que un modelo es válido si sus medidas de salida tienen una
correspondencia apropiada con las mismas medidas en el sistema real. La
comprobación última para la validez de un modelo es ver cómo el modelo puede
predecir un comportamiento futuro del sistema ante unas determinadas entradas.

Experimentación y Análisis de las salidas


Se han de diseñar los experimentos que se van a llevar a cabo sobre el modelo y
luego analizar las salidas obtenidas, de forma que podamos responder a las
cuestiones que se plantearon.

Experimentación con el modelo

10
El propósito último de la experimentación con el modelo es obtener información
acerca del comportamiento del sistema para que esto nos ayude en la toma de
decisiones. Cuando consideramos la ejecución de un sistema se puede desear
conocer cómo se comporta dicho sistema en sentido absoluto, o comparativamente,
para poder contrastar varias configuraciones alternativas del sistema. O se podrían
considerar dos medidas simultáneamente.
Es evidente que el número de exploraciones que se tendrían que realizar es
extremadamente largo. Hasta para los diseños de experimentos más modestos, la
exploración de todas las posibles soluciones en la búsqueda de la mejor solución,
no es algo factible. Se necesita una aproximación estructurada más directa para
encontrar una solución que merezca la pena. Podemos considerar dos
aproximaciones diferentes para abordar este problema: conjunto predeterminado de
experimentos y técnicas de búsqueda de óptimos.
Conjunto de experimentos predeterminado: esta aproximación impone identificar
factores que podrían afectar a la medida de salida y ejecutar los experimentos con
los factores puestos a determinados valores. Una vez realizados los experimentos
se aplicarían unas técnicas estadísticas denominadas análisis de la varianza
(ANOVA), para decidir cuál o cuáles de los factores seleccionados tiene realmente
algún impacto en la medida de salida. Las medidas de salida se pueden adaptar de
forma que las suposiciones estadísticas de esta técnica se satisfagan de forma
razonable y puedan ser aplicadas en la experimentación del modelo.
Un diseño experimental particularmente general es el diseño factorial. Se
consideran dos o más factores pudiendo estar cada uno a dos o más niveles.
El uso de un conjunto predeterminado de experimentos es efectivo para encontrar
buenas soluciones si se puede aproximar una región de optimalidad con
experimentos previos o con la experiencia que se tenga sobre el problema. Sin
embargo, esta técnica no puede conducir a la mejor solución global, ni siquiera
puede garantizar un óptimo local.
Técnicas de búsqueda de óptimos: un conjunto de estas técnicas se conoce como
Metodología de Superficie de Respuesta (RSM). La superficie de respuesta es la
función que describe las relaciones de las medidas de ejecución con los factores o
variables de decisión. Dos factores definen una superficie de 3 dimensiones, la cual
puede ser vista como un terreno en donde se puede escalar. De hecho, la
representación en 2 dimensiones de la respuesta de superficie es como las líneas
de contorno de un mapa topográfico. Usando varias estrategias se pueden alcanzar
puntos altos en el terreno, y quizás llegar a la cumbre. Una estrategia es el método
de escalado ascendente. Esta requiere que el modelo se ejecute suficientemente
para hacer que se pueda determinar qué dirección (qué cambios en los valores de
los factores) parece conducir a un incremento en la altitud (incremento en la medida
de salida). Las variables de decisión se van cambiando de esta forma y el proceso

11
continúa hasta que ya no se puede llegar más alto, en ese momento se ha
alcanzado un óptimo local o global.

Análisis de las salidas


En la interpretación de las salidas del modelo, hay algunos aspectos que son únicos
de la simulación. Mientras que los modelos analíticos proporcionan soluciones con
medidas de ejecución completamente definidas, los modelos de simulación
producen estimaciones de las medidas que están sujetas a error.
Las salidas del modelo de simulación se consideran muestras. Las principales
cuestiones en la obtención de estimaciones útiles a partir de muestras son: que la
muestra sea representativa del comportamiento del sistema, y que el tamaño de la
muestra sea lo suficientemente grande para que las estimaciones de las medidas
de ejecución alcancen un buen nivel de precisión. El tamaño de la muestra es algo
que está bien definido, pero la representatividad del comportamiento del sistema
depende de la naturaleza de las cuestiones que tienen que ser contestadas por el
modelo.
Se pueden realizar dos tipos de análisis con un modelo de simulación:
Análisis para sistemas con final definido: la ejecución del modelo finaliza cuando
ocurre un evento específico. Se tomaría una muestra por ejecución.
Análisis para sistemas con final no definido (sistemas en estado de equilibrio o
estacionario): el interés está en medias de las medidas de comportamiento de
ejecuciones largas, después de que el sistema ha pasado por algún periodo de
comportamiento transitorio. Las medidas en estado estacionario se pueden definir
como el valor de las medidas en el límite, cuando la longitud de la ejecución tiende
a infinito.
En ambos casos, las condiciones inician les (estado del sistema el empezar la
ejecución) pueden influir en la estimación de las medidas de comportamiento.
El tamaño de la muestra es importante ya que la precisión de las estimaciones
depende de la varianza de la media de la muestra, y la varianza cambia de forma
inversamente proporcional al tamaño de la muestra (si se cuadriplica el tamaño de
la muestra la desviación estándar se reduce a la mitad). La definición de tamaño de
muestra para simulación depende del tipo de análisis que se haya hecho. Para el
análisis de un sistema con final definido se podría reproducir el periodo de interés,
con las condiciones iniciales apropiadas, un determinado número de veces hasta
conseguir la precisión deseada de la estimación. En cada ejecución de obtendrá un
elemento de la muestra. Con un análisis en estado estacionario el tamaño de la
muestra está estrechamente enlazado con el tamaño de la ejecución del modelo o
cantidad de tiempo de simulación.

12
Implantación de los resultados de la Simulación
Se ha de asegurar que los resultados son aceptados por el usuario.
Este paso final es uno de los más importantes y el que más se descuida de todo el
proceso. Parece obvio que los beneficios de un largo y costoso análisis no se
realizarán sin una implementación apropiada y una aceptación por parte de los
usuarios.
Entre las razones por las que los esfuerzos de implantación son a menudo inútiles,
se incluyen las siguientes:
· Existe un vacío de comunicación entre el analista de la simulación y los
encargados y usuarios del sistema.
· Falta de entendimientos por parte de los encargados del sistema debido a los
tecnicismos utilizados.
· El compromiso de implementación es tardío.
· Resistencia al cambio.
· Falta de coincidencia entre el personal disponible y los objetivos marcados por el
modelo.
Hay aproximaciones que tratan estos obstáculos potenciales. Estas aproximaciones
requieren que los usuarios y los analistas estén implicados desde el comienzo en el
proyecto simulación.

1.4 Estructura y etapas de un estudio de simulación


Para llevar a cabo un experimento de simulación se requiere realizar las siguientes
etapas:
Definición Del Sistema: Para tener una definición exacta del sistema que se desea
simular, es necesario hacer primeramente un análisis preliminar del mismo, con el
fin de determinar la iteración del sistema con otros sistemas.
Formulación Del Modelo: Una vez que están definidos con exactitud los resultados
que se desean obtener del estudio el siguiente paso es definir y construir el modelo
con el cual se obtendrán los resultados deseados.
Colección De Datos: Es posible que la facilidad de obtención de algunos datos o
la dificultad de conseguir otros, pueda influenciar el desarrollo y formulación del
modelo.
Implementaron Del Modelo En La Computadora: A k.o. se define cual es el
lenguaje que se va a utilizar algunos de estos pueden ser de propósito general
como: Visual basic, Java, Delphi o se pueden usar unos paquetes como:
GBSS,SIMULA,PROMODEL.

13
Validación: A través de esta etapa es posible detallar definiciones en la formulación
del modelo o en los datos alimentados al modelo.
Experimentación: La experimentación con el modelo se realizará después de que
este ha sido validado.
Interpretación: A que se interpretan los resultados que arroja la simulación y en
base a esto se toma una decisión.
Documentación: existen dos tipos de documentación que son requeridos para
hacer un mejor uso del modelo de simulación.

1.5 Etapas de un proyecto de simulación


Otro importante aspecto abordado en la investigación es la identificación y estudio
de las técnicas de integración para la formulación de las tareas docentes.
A continuación, se describen muy brevemente algunas técnicas utilizadas para la
formulación de problemas químicos de integración estructural, que son los más
importantes:
1.-Modelación. Fijado el objetivo que se persigue en la creación de un problema,
inmediatamente se activan los componentes intelectuales básicos: sensaciones,
percepciones, memoria, pensamiento e imaginación.
2.-Tanteo-error. Consiste en un proceso continuo de adecuación y ajuste por
búsqueda y prueba de los datos y/o las incógnitas según las condiciones del
problema, hasta encontrar las más adecuadas.
3.-Asociación. Por analogía. En esta técnica se hace uso de la reproducción en
una primera fase. Consiste en establecer nuevos nexos entre datos e incógnitas
siguiendo formatos y textos guardados en la memoria para obtener otras por medio
de la innovación.
4.-Integración. Por inclusión. Es una técnica muy sencilla, cuyo procedimiento es
asequible a cualquier sujeto. Consiste en elaborarla de forma tal que las incógnitas
de los diferentes incisos mantengan una dependencia sucesiva en forma de cadena.
5.-Reformulación. Consiste en reconstruir la estructura gramatical y de sistema
mediante procesos de innovación. Se diferencia de la analogía por la profundidad
de los cambios introducidos, puesto que se parte de un ejemplo concreto que debe
ser modificado y no de recuerdos que pueden ser borrosos y a veces confusos.1

1García Dunna Eduardo, García Reyes Heriberto y Cárdenas Barrón Leopoldo Eduardo (2006).
Simulación y análisis de sistemas con ProModel. México, Person educación

14
1.6 Elementos básicos de un simulador de eventos discretos
Tiempo de simulación Es el valor del tiempo que el simulador puede avanzar a
una velocidad superior a la habitual de un reloj común, evolucionando así el estado
de un sistema de forma acelerada.
Evento Un evento es un suceso que hace cambiar las variables de estado del
sistema. Durante el procesamiento de un evento el tiempo de simulación permanece
fijo. Un evento pertenece a una entidad, o actor en el sistema, y normalmente solo
cambiara atributos de esta, dejando invariante el resto del sistema.
Entidad El sistema a simular se modela sobre la base de entidades ó actores que
representan en su agregado al sistema compuesto. El estado del sistema se
entiende entonces como el agregado de los estados que lo conforman.
Actividad Secuencia de eventos pertenecientes a una entidad que cierran un ciclo
funcional. A diferencia de un evento, que se ejecuta a tiempo de simulación
constante, una actividad se desarrolla dentro de un intervalo de tiempo de
simulación no puntual.
Simulación en tiempo acelerado Se da cuando el avance del tiempo de simulación
es mayor de un segundo por cada segundo de tiempo real.
Simulación en tiempo real Se da cuando el avance del tiempo de simulación
exactamente de un segundo por cada segundo de tiempo real

1.7 Ventajas y desventajas de la simulación


Ventajas Desventajas
Permite adquirir experiencia de manera No es aplicable cuando existan técnicas
rápida con un bajo costo y sin poner en analíticas que permitan corregir u
riesgo la productividad del sistema. optimizar el sistema.
Permite identificar áreas con problemas En ocasiones no es posible asegurar que
en un proceso complejo. el modelo sea válido.
Permite realizar un estudio sistemático de
Es posible querer utilizar el modelo fuera
alternativas aplicables al sistema. de los imites para los que fue construido
causando una falsa apreciación del
problema.
No importa que tan complejo sea el No existe ningún criterio científico sobre
sistema ya que todo sistema puede ser las posibles alternativas a ser simuladas
modelado y de esta manera poder atacar
el problema
Puede ser aplicada en cualquier punto de La simulación es imprecisa y en
la vida de un sistema, ya sea durante el ocasiones no proveen soluciones
diseño o la producción planteando óptimas.
alternativas para el mejoramiento del
mismo.

15
Unidad 2

Números pseudoaleatorios
Casi todos los métodos de simulación se basan en la posibilidad de crear números
aleatorios con distribución U(0,1). Hasta la aparición de las computadoras, los
números aleatorios se obtenías de procedimientos experimentales como lotería o
ruleta y se almacenaban en tablas.
Los números generados por computadora se llaman números pseudoaleatorios,
dado que son predecibles a partir del primer número denominado semilla
Para poder utilizar un generador automático de números pseudoaleatorios, éste
debe cumplir con ciertas propiedades:
• Producir muestras según la distribución U(0,1)
• Pasar los contrastes de aleatoriedad e independencia más habituales
• Que la sucesión generada sea reproducible a partir de la semilla
• Tener una longitud de ciclo tan grande como se desee
• Generar valores a alta velocidad
• Ocupar poca memoria

2.1 Métodos de generación de números pseudoaleatorios


Métodos de Cuadrados Medios: el procedimiento de obtención de números
pseudoaleatorios con este tipo de generador es el siguiente:
• Se define una semilla.
• Se eleva la semilla al cuadrado.
• Dependiendo de la cantidad de dígitos que se desea tenga el número
pseudoaleatorio, se toman de la parte central del número resultante en el paso
anterior el número de dígitos requeridos. Si no es posible determinar la parte central,
se completa el número agregando ceros al principio o al final.
• Debe tenerse en cuenta que se desean números pseudoaleatorios entre 0 y 1, en
consecuencia, el resultado se debe normalizar, es decir, si los números son de dos
dígitos se normaliza dividiendo por 100, si es de tres dígitos por mil y así
sucesivamente.
Método de Producto medio: este método es un poco similar al anterior, pero se
debe comenzar con dos semillas cada una con k dígitos, el número resultante se
toma como las cifras centrales del producto de los dos números anteriores. Por
ejemplo, tomando como semillas a X0 =13 y X1 =15 el método sería el siguiente:
X2 = (13*15) = 0195 = 19, luego R2 =19 / 100 = 0.19.

16
X3 = (15*19) = 0285 = 28, luego R3 = 28 / 100 = 0.28.
X4 = (19*28) = 0532 = 53, luego R4=53 / 100 = 0.53.

Método del producto medio modificado: consiste en usar una constante


multiplicativa en lugar de una variable. Es decir Xn+1 = (K*Xn). Debe notarse que
los métodos anteriores tienen periodos relativamente cortos, los cuales son
afectados grandemente por los valores iniciales que se escojan, además son
estadísticamente insatisfactorios. También debe tenerse en cuenta que un
generador con un periodo corto no sirve para hacer un número considerado de
ensayos de simulación.
Método Congruencial Aditivo: calcula una sucesión de números pseudoaleatorios
mediante la relación Xn+1= Xn +Xn-k (mod M). Para usar este método se necesitan
k valores iniciales, siendo k entero. Las propiedades estadísticas de la secuencia
tienden a mejorarse a medida que k se incrementa. Este es el único método que
produce periodos mayores que M.
Método Congruencial Multiplicativo: calcula una sucesión Xn de enteros no
negativos, cada uno de los cuales es menor que M mediante la relación Xn+1= a.Xn
(mod M). Es un caso especial de la relación de congruencia en que c=0, este método
se comporta de manera satisfactoria estadísticamente, es decir, los números
generados por medio de este método están uniformemente distribuidos, y no están
correlacionados. Este método tiene un periodo máximo menor que M, pero se
pueden imponer condiciones en a y X0 de tal forma que se obtenga el periodo
máximo. Desde el punto de vista computacional es el más rápido de todos.
Método Congruencial Mixto o Lineal: los generadores congruenciales lineales
generan una secuencia de números pseudoaleatorios en la cual el próximo número
pseudoaleatorio es determinado a partir del último número generado, es decir, el
número pseudoaleatorio Xn+1 es derivado a partir del número pseudoaleatorio Xn
La relación de recurrencia para el generador congruencial mixto es Xn+1 =(a Xn+c)
mod m, en donde
• X0 = es la semilla
• a =el multiplicador
• c = constante aditiva
• m = el módulo (m > X0, a,c)
• X0, a, c >0
Esta relación de recurrencia nos dice que Xn+1 es el residuo de dividir a Xn+c entre
el módulo. Lo anterior significa que los valores posibles de Xn+1 son 0,1,2,3 …m-1,
es decir, m representa el número posible de valores diferentes que pueden ser

17
generados.

2.2 Pruebas estadísticas


Puesto que en el muestreo Monte Carlo cualquier variable aleatoria no uniforme
(normal, exponencial, Poisson, etc.), es obtenida a partir de números aleatorios
uniformes (0,1), el principal énfasis en las pruebas estadísticas deberá ser con
respecto al generador de los números aleatorios, ya que cualquier deficiencia
estadística en la distribución de la variable aleatoria no uniforme, se deberá
exclusivamente a la utilización de un deficiente generador de números aleatorios.
Por ello se aplicarán algunas de las muchas pruebas estadísticas que han sido
desarrolladas para probar la uniformidad y aleatoriedad o independencia de los
mismos, lo cual significa que la ocurrencia de un número aleatorio no determina la
ocurrencia del siguiente y así sucesivamente.

2.2.1 De uniformidad
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 subintervalos.
3. Para cada subintervalo contar la frecuencia observada F0 y calcular la frecuencia
esperada FE de números aleatorios, la cual se obtiene dividiendo N/n.
4. Calcular el estadístico de prueba
𝑋2 (𝐹𝐸𝑖−𝐹𝑂𝑖) ^2
0=∑𝑛
𝑖=1 𝐹𝐸𝑖

5. Comparar el valor calculado X0^2 contra el valor tabulado de la distribución X^2,


con(n-1) grados de libertad y una significancia. Si X0^2 es menor que X^2 (n-1),
entonces no se puede rechazar la uniformidad de los números aleatorios

PRUEBA DE BONDAD DE AJUSTE DE KOLMOGOROV-SMIRNOV


1. Generar una muestra de números aleatorios uniformes de tamaño N.
2. Ordenar dichos números en orden ascendente.
3. Calcular la distribución acumulada de los números generados con la siguiente
expresión
𝑖
𝐹𝑛(𝑋) =
𝑛

18
Donde i es la posición que ocupa el número aleatorio Xi en el vector ordenado
obtenido en el paso 2
4. Calcular el estado de prueba Kolmogorov-Smirnov del modo siguiente
Dn= máx | Fn(Xi) – Xi| para toda Xi
5. Si Dn es menor d alfa,n, entonces no se puede rechazar la hipótesis de que los
números generados provienen de una distribución uniforme. La distribución de Dn
ha sido tabulada como una función de n y alfa para cuando F n
(x) = F0(x)

2.2.2 De aleatoriedad
Esta prueba se utiliza para comprobar el grado de aleatoriedad entre números
sucesivos.
La prueba consiste en formar parejas de números, las cuales son consideradas
como coordenadas en un cuadrado unitario dividido en n2 celdas. En la prueba de
series se generan N números pseudoaleatorios de los cuales se forman parejas
entre Ui y Ui + 1, es decir si se generan 5 números, las parejas que se forman serian:
(U1 , U2), (U2 , U3), (U3 , U4), (U4 , U5).
En seguida se determina la celda a la que pertenece cada pareja ordenada, con lo
cual se determina la frecuencia observada de cada celda.

2.2.3 De independencia
Recuerde que las dos propiedades más importantes que deben satisfacer los
números de un conjunto ri son uniformes e independientes. Hemos comentados
anteriormente dos pruebas para determinar si los números ri son uniformes. A
continuación, hablaremos de las pruebas estadísticas que tratan de corroborar si
los números en el intervalo (0,1) son independientes o en otras palabras, si parecen
aleatorios.
H0: los números del conjunto ri son independientes.
H1: los números del conjunto ri no son independientes
La prueba de las corridas sirve para probar la aleatoriedad de los números
generados. Esta prueba se basa en el número de corridas o secuencias
ascendentes y descendentes. Una corrida es una secuencia ascendente o
descendente de números pseudoaleatorios adyacentes.
Las hipótesis son:
Ho: Los números son pseudoaleatorios U (0,1).
Ha: Los números no son pseudoaleatorios U (0,1).

19
En este método se coloca el signo “+” o “–” en cada par de números adyacentes.
Se puede demostrar que:
Si:
R = número total de corridas (arriba y abajo)
N = tamaño de la muestra

2.3 Método de Monte Carlo


El método Monte Carlo se configura como una herramienta de modelado y
simulación del proceso “Realizar el Análisis Cuantitativo de Riesgos”. Este método
no determinista o estadístico numérico, que debe su nombre a la capital del juego
al azar, se usa para aproximar expresiones matemáticas complejas y costosas de
evaluar con exactitud. Su uso como herramienta de investigación, se remonta al
desarrollo de la bomba atómica en la Segunda Guerra Mundial (Laboratorio
Nacional de los Álamos-EEUU).

2.3.1 Características
John von Neumann fue pionero en la investigación de los generadores de números
aleatorios. Neumann ideó una forma “tosca” de generar números pseudoaleatorios,
utilizando el método middle-square. Aunque está demostrado que este método no
es del todo fiable, Neumann era consciente de esto y justificó su uso basándose en
la rapidez que presentaba en términos de tiempo computacional.
Para llevar a cabo el método desarrollado por Neumann, se parte de una semilla
inicial: un número entero de 2n cifras al que llamaremos X0. Se eleva la semilla
inicial al cuadrado y se toman los 2n dígitos centrales, que servirán para formar el
primer número y para continuar calculando números pseudoaleatorios. A
continuación, se incluye un ejemplo:
Partimos de la semilla inicial Xo=3456.
Calculamos Z=(X0)2 =11943936, obteniendo así un número de hasta 4n cifras. Si
fuese necesario se añadirían ceros a la izquierda para que el número resultante
tenga exactamente 4n cifras.
Se toman los 2n dígitos centrales, es decir, X1=9439.
El primer número pseudoaleatorio es X1/102n, es decir 0,9439.
La nueva semilla es X1=9439 y comenzará de nuevo el proceso para crear otro
número pseudoaleatorio.

20
2.3.2 Aplicaciones
Los programas de diseño asistido por ordenador (CAD) pueden determinar
rápidamente el volumen de modelos muy complejos. Estos modelos, en general, no
tienen una expresión analítica para determinar su volumen (por ejemplo, para un
prisma, área de la base multiplicada por la altura), y la única solución es dividir el
modelo en un conjunto de pequeños submodelos (teselación) cuyo volumen pueda
determinarse (por ejemplo, dividir el modelo en miles de tetraedros). Sin embargo,
esto consume muchos recursos, tanto para la teselación como para el cálculo del
volumen de cada uno de los elementos. Por ello utilizan métodos de Montecarlo,
más robustos y eficientes.
Como el software sí que conoce la expresión analítica de la geometría del modelo
(posición de los nodos, aristas y superficies) puede determinar si un punto está
dentro del modelo o está fuera con un coste mucho menor que el de determinar un
volumen.
En primer lugar, el software coloca el modelo dentro de un volumen conocido (por
ejemplo, dentro de un cubo de 1 m3 de volumen).
A continuación, genera un punto aleatorio del interior del volumen conocido, y
registra si el punto "ha caído" dentro o fuera del modelo. Esto se repite un gran
número de veces (miles o millones), consiguiendo un registro muy grande de
cuántos puntos han quedado dentro y cuántos fuera.
Como la probabilidad de que caiga dentro es proporcional al volumen del modelo,
la proporción de puntos que han caído dentro con respecto al total de puntos
generados es la misma proporción de volumen que ocupa el modelo dentro del cubo
de 1 m3.
Si el 50% de los puntos han caído dentro, el modelo ocupa el 50% el volumen total,
es decir, 0.5 m3. Evidentemente, cuantos más puntos genere el software, menor
será el error de la estimación del volumen.

2.3.3 Solución de problemas


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ístico
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 ~ 1/√N, 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

21
método. En el caso que presentamos hemos hecho uso de la función random()
incluida en la clase Math que la máquina virtual Java trae por defecto como
generador. Las pruebas realizadas, algunas de las 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.
Para resolver la ecuación elíptica de nuestro problema usando el método de
Montecarlo, se ha dividido el recinto bidimensional en una malla cuadrada de
puntos. Todos los situados en su frontera se consideran inicializados a un valor de
temperatura conocido. Suponemos en principio una partícula situada en uno de los
puntos y que tiene la posibilidad de moverse libremente por todos los que
constituyen la malla. La única condición que imponemos es que, en un solo salto,
su movimiento se limite a los 4 nodos vecinos, los situados su izquierda, derecha,
arriba o abajo. La probabilidad de elegir una cualquiera de las 4 direcciones posibles
es la misma. Dejando a la partícula viajar por toda la red sin más restricciones
contamos el número de veces que, partiendo de un mismo punto de coordenadas
(i,j) sale por cada uno de los que constituyen la frontera, momento en el cual
suponemos que ha terminado su viaje. Considerando un número elevado de
pruebas podemos calcular la probabilidad de que, partiendo de un mismo punto,
salga por cada uno de los puntos del contorno después de recorrer una trayectoria
aleatoria. Los detalles de camino seguido desde el inicio hasta el final del viaje no
nos importan, tan solo nos vamos a fijar en el número de veces que sale del recinto
por cada uno de los puntos posibles.2

2García Dunna Eduardo, García Reyes Heriberto y Cárdenas Barrón Leopoldo Eduardo (2006).
Simulación y análisis de sistemas con ProModel. México, Person educación

22
Unidad 3

Generación de variables aleatorias


La variabilidad de eventos y actividades se representan 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

3.1 Conceptos básicos


Un generador de números aleatorios es un dispositivo informático o físico diseñado
para producir secuencias de números sin un orden aparente.
Algoritmos
Los algoritmos para la generación de valores uniformemente distribuidos están
presentes en todas las calculadoras y lenguajes de programación, y suelen estar
basados en congruencias numéricas del tipo:
𝑋𝑛+1 = (𝑎𝑥𝑛 + 𝑐)(𝑚𝑜𝑑 𝑚)
El éxito de este tipo de generadores de valores de una variable aleatoria depende
de la elección de los cuatro parámetros que intervienen inicialmente en la expresión
anterior:
El valor inicial o semilla: X0
La constante multiplicativa: a
La constante aditiva: c
El número m respecto al cual se calculan los restos
Estos cuatro valores deben ser números enteros no negativos y que cumplan la
siguiente condición: X0,a,c,<m.
La mayor parte de los generadores de números aleatorios son, en realidad,
pseudoaleatorios; se calcula (o introduce internamente) un valor x0, que llamaremos
semilla, y, a partir de él, se van generando x1,x2, x3, ...
Siempre que se parta de la misma semilla, se obtendrá la misma secuencia de
valores.
Por la condición anterior, es evidente que todos los valores generados por este
procedimiento son números enteros entre 0 y -1. El número máximo de cifras
distintas que pueden obtenerse con el procedimiento descrito es, así que llegará un
momento en que el primer número generado se repetirá produciéndose un ciclo.

23
El ciclo dónde inevitablemente caerá el generador interesa que sea de la mayor
longitud posible (como máximo), para evitar que se repitan pronto los valores
aleatorios. Por ejemplo, para los valores a=3, c=5, X0=2, m=32 y se obtiene la
siguiente secuencia de valores:
2-11-6-23-10-3-14-15-18-27-22-7-26-19-30-31-2-11-6

3.2 Variables aleatorias discretas


Variable aleatoria discreta: una V.A. es discreta si su recorrido es un conjunto
discreto.
En gran cantidad de experimentos aleatorios es necesario cuantificar los resultados,
es decir, asignar a cada resultado del experimento un número, con el fin de poder
realizar un estudio matemático.

3.3 Variables aleatorias continuas


Es aquella que puede tomar infinitos valores dentro de un intervalo de la recta real.
En el caso de variables aleatorias continuas no tiene sentido plantearse
probabilidades de resultados aislados. La probabilidad de valores puntuales es cero.
El interés de estas probabilidades está en conocer la probabilidad correspondiente
a un intervalo.
Dicha probabilidad se conoce mediante una curva llamada función de densidad y
suponiendo que bajo dicha curva hay un área de una unidad. Conociendo esta
curva, basta calcular el área correspondiente para conocer la probabilidad de un
intervalo cualquiera.

3.4 Métodos para generar variables aleatorias


Existen varios métodos que nos permiten generar variables aleatorias. Lo normal es
que existan varias opciones para generar una misma variable aleatoria. La lecció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 tiempo de
generación de la variable.
Espacio. Necesidades de memoria del método utilizado. En general, los métodos
no consumen mucha memoria

3.4.1 Método de transformación inversa


El método de la transformada (o transformación) inversa, también conocido como
método de la inversa de la transformada, es un método para la generación de
números aleatorios de cualquier distribución de probabilidad continua cuando se

24
conoce la inversa de su función de distribución (cdf). Este método es en general
aplicable, pero puede resultar muy complicado obtener una expresión analítica de
la inversa para algunas distribuciones de probabilidad.
El método de Box-Muller es un ejemplo de algoritmo que aunque menos general,
es más eficiente desde el punto de vista computacional. El método se utiliza para
simular valores de las distribuciones exponencial, Cauchy, triangular, de Pareto y
Weibull.
El problema que resuelve el método de la transformada inversa es el siguiente:
 Sea X una variable aleatoria cuya distribución puede ser descrita por la cdf
F.
 Se desea generar valores de X que están distribuidos según dicha
distribución.
Numerosos lenguajes de programación poseen la capacidad de generar números
pseudo-aleatorios que se encuentran distribuidos de acuerdo con una distribución
uniforme standard. Si una variable aleatoria posee ese tipo de distribución, entonces
la probabilidad de que el número caiga dentro de cualquier subintervalo (a, b) del
intervalo entre 0 a 1 es la longitud del subintervalo, o sea b − a.
El método de la transformada inversa funciona de la siguiente manera:
1. Se genera un número aleatorio a partir de la distribución uniforme standard;
se lo llama u.
2. Se calcula el valor x tal que; y se lo llama X.
3. Se toma X como el número aleatorio extraído de la distribución caracterizada por
F.

3.4.2 Método de convolución


Convolución es un operador matemático que transforma dos funciones f y g en una
tercera función que en cierto sentido representa la magnitud en la que se
superponen f y una versión trasladada e invertida de g. Una convolución es un tipo
muy general de media móvil, como se puede observar si una de las funciones se
toma como la función característica de un intervalo.
Convolución discreta
Cuando se trata de hacer un procesamiento digital de señal no tiene sentido hablar
de convoluciones aplicando estrictamente la definición ya que solo disponemos de
valores en instantes discretos de tiempo. Es necesario, pues, una aproximación
numérica. Para realizar la convolución entre dos señales, se evaluará el área de la
función: X(T)*h(t-T) Para ello, disponemos de muestreos de ambas señales en los
instantes de tiempo nt, que llamaremos X[n] y h[n-k] (donde n y k son enteros). El
área es, por tanto,

25

𝑦[𝑛] = ∑ 𝑡 ∗ 𝑥[𝑘] ∗ ℎ[𝑛 − 𝑘] = 𝑡 ∗ [ ∑ 𝑥[𝑘] ∗ ℎ[𝑛 − 𝑘]]


𝑘=−∞
𝑘=−∞

3.4.3 Método de composición


Sea f(x) la función de densidad de una variable aleatoria X. El método de
composición consiste en lo siguiente:
1.
Se descompone f como 𝑓(𝑥) = ∑𝑚
𝑖=1 𝑝𝑖𝑓𝑖(𝑥), con fi función de densidad, 𝑝𝑖 ≥ 0, 𝑖 =
𝑚
1, … , 𝑚, ∑𝑖=1 𝑝𝑖 = 1
2.
Se elige la i-ésima función con probabilidad pi y se genera un valor para la función
de densidad fi.

3.5 Procedimientos especiales


Existen diferentes tipos de métodos para generar variables aleatorias, pero también
existen casos especiales para generar estas los cuales son:
Las distribuciones de Poisson parte de la distribución binomial: Cuando en una
distribución binomial se realiza el experimento un número "n" muy elevado de veces
y la probabilidad de éxito "p" en cada ensayo es reducida, entonces se aplica el
modelo de distribución de Poisson:
Se tiene que cumplir que:
" p " < 0,10
" p * n " < 10
La distribución de Poisson sigue el siguiente modelo:
Vamos a explicarla:
El número "e" es 2,71828
" l " = n * p (es decir, el número de veces " n " que se realiza el experimento
multiplicado por la probabilidad " p " de éxito en cada ensayo) " k " es el número de
éxito cuya probabilidad se está calculando.
La distribución binomial parte de la distribución de Bernouilli:
La distribución de Bernouiili se aplica cuando se realiza una sola vez un experimento
que tiene únicamente dos posibles resultados (éxito o fracaso), por lo que la variable
sólo puede tomar dos valores: el 1 y el 0 La distribución binomial se aplica cuando
se realizan un número "n" de veces el experimento de Bernouiili, siendo cada
ensayo independiente del anterior. La variable puede tomar valores entre:

26
0: si todos los experimentos han sido fracaso
n: si todos los experimentos han sido éxitos

3.6 Pruebas estadísticas


En la construcción del modelo de simulación es importante decidir si un conjunto de
datos se ajusta apropiadamente a una distribución específica de probabilidad.
Al probar la bondad del ajuste de un conjunto de datos, se comparan las frecuencias
observadas FO realmente en cada categoría o intervalo de clase con las frecuencias
esperadas teóricamente FE.
Prueba Ji cuadrada
La prueba Ji cuadrada hace uso de la distribución del mismo nombre para probar la
bondad del ajuste al comparar el estadístico de prueba Xo2 con el valor en tablas
de la mencionada distribución Ji cuadrada con v grados de libertad y un nivel de
significancia alfa.3

Unidad 4

Lenguajes de simulación
Los lenguajes de simulación facilitan enormemente el desarrollo y ejecución de
simulaciones de sistemas complejos del mundo real. El lenguaje de simulación de
propósito específico es un paquete de computadora que permite realizar la
simulación para un ambiente específico, no requiriendo esfuerzo en programación,
es decir, produce un código más legible, modificable y menos largo.

4.1 Lenguaje de simulación y simuladores


En un principio, los programas de simulación se elaboraban utilizando algún
lenguaje de propósito general, como ASSEMBLER, FORTRAN, ALGOL o PL/I. A
partir de la década de 1960 hacen su aparición los lenguajes específicos para
simulación como GPSS, GASP, SIMSCRIPT, SLAM. En la última década del siglo
pasado la aparición de las interfaces gráficas revolucionó el campo de las
aplicaciones en esta área, y ocasionaron el nacimiento de los simuladores.
En el terreno práctico, es importante utilizar la aplicación que mejor se adecúe al
tipo de sistema a simular, ya que de la selección del lenguaje o simulador dependerá
el tiempo de desarrollo del modelo de simulación. Las opciones van desde las hojas
de cálculo, lenguajes de tipo general (como Visual Basic, C++ o Fortan), lenguajes

3García Dunna Eduardo, García Reyes Heriberto y Cárdenas Barrón Leopoldo Eduardo (2006).
Simulación y análisis de sistemas con ProModel. México, Person educación

27
específicos de simulación (como GPSS, SLAM, SIMAN, SIMSCRIPT, GAS y
SSED), hasta simuladores específicamente desarrollados para diferentes objetivos
(como SIMPROCESS, ProModel, Witness, Taylor II y Cristal Ball).

4.2 Aprendizaje y uso lenguaje de simulación


¿Qué es Flexsim?
Flexsim es una herramienta de análisis que ayuda a ingenieros y los planificadores
a tomar decisiones inteligentes en el diseño y la operación de un sistema. Con
Flexsim, se puede desarrollar un modelo de computadora en 3 dimensiones de un
sistema de la vida real. Flexsim brinda la posibilidad de realizar un modelo de un
sistema antes de que sea construido, o evaluar políticas operativas antes de que
sean puestas en funcionamiento.
Elementos de un modelo de sistema
Entidades (flujos del sistema): artículos que fluyen a través del sistema.
Estados del sistema: Condición del sistema en un momento t. Las actividades
encajan aquí.
Evento: Cambios en los estados del sistema.
Recursos: Son los elementos del sistema que no son entidades.
Localizaciones: Lugares por donde deben esperar o fluir las entidades (Son los
“recursos fijos”).
Atributos: Características de una entidad.
Variables: condiciones cuyos valores se crean y modifican.
Controles: Reglas que gobiernan al sistema.

4.3 Casos prácticos de simulación


A partir de la problemática propia del aprendizaje a distancia, se exponen las
ventajas del uso de herramientas de simulación por una parte, y de las herramientas
multimedia como elementos de transmisión en el proceso enseñanza-aprendizaje.
En este trabajo se propone la integración de las herramientas de simulación y
multimedia para la enseñanza a distancia de la ingeniería de sistemas y automática.
Para que esta integración sea efectiva, es conveniente seguir una determinada
metodología de diseño y desarrollo tanto de la parte multimedia como de los
contenidos que se apoyan en la simulación.

28
Como caso práctico se propone el desarrollo de una aplicación multimedia para su
distribución en internet de un ejercicio guiado apoyado en herramientas de
simulación y diseño de sistemas asistido por ordenador, cuyo objetivo principal es
que el alumno aprenda las técnicas basadas en la respuesta en frecuencia para el
análisis de la estabilidad de sistemas realimentados.

4.3.1 Problemas con líneas de espera


Una línea de espera es el efecto resultante en un sistema cuando la demanda de
un servicio supera la capacidad de proporcionar dicho servicio. Este sistema está
formado por un conjunto de entidades en paralelo que proporcionan un servicio a
las transacciones que aleatoriamente entran al sistema. Dependiendo del sistema
que se trate, las entidades pueden ser cajeras, máquinas, semáforos, grúas,
etcétera, mientras que las transacciones pueden ser: clientes, piezas, autos, barcos,
etcétera. Tanto el tiempo de servicio como las entradas al sistema son fenómenos
que generalmente tienen asociadas fuentes de variación que se encuentran fuera
del control del tomador de decisiones, de tal forma que se hace necesaria la
utilización de modelos estocásticos que permitan el estudio de este tipo de sistemas.
Una línea de espera puede modelarse como un proceso estocástico en el cual la
variable aleatoria se define como el número de transacciones en el sistema en un
momento dado; el conjunto de valores que puede tomar dicha variable es{O, 1, 2, .
. . , N\ y cada uno de ellos tiene asociada una probabilidad de ocurrencia.

4.3.2 Problemas con sistemas de inventarios


Algunos problemas son:
 La tasa de demanda o ventas de cada artículo que varía dependiendo de la
temporada, implica gastos de tener los artículos almacenados.
 La confiabilidad de predecir las ventas futuras, cambios en el diseño o los
métodos de producción, etc., ya que muchos artículos dependen de las
variaciones del clima, estilos, modas, etc.
 Las tasas de producción son considerablemente mayores que las de
demanda.

4.4 Validación de un simulador


Aquí vamos a mostrar cómo se validó el correcto funcionamiento de un simulador
con demanda y tiempo de espera, determinísticos.

4.4.1 Pruebas paramétricas


Las pruebas estadísticas paramétricas, como la de la “t” de Student o el análisis de
la varianza (ANOVA), se basan en que se supone una forma determinada de la
distribución de valores, generalmente la distribución normal, en la población de la
que se obtiene la muestra experimental.

29
En contraposición de las técnicas no paramétricas, las técnicas paramétricas si
presuponen una distribución teórica de probabilidad subyacente para la distribución
de los datos.
Son más potentes que las no paramétricas.
Dentro de las pruebas paramétricas, las más habituales se basan en la distribución
de probabilidad normal, y al estimar los parámetros del modelo se supone que los
datos constituyen una muestra aleatoria de esa distribución, por lo que la elección
del estimador y el cálculo de la precisión de la estimación, elementos básicos para
construir intervalos de confianza y contrastar hipótesis, dependen del modelo
probabilístico supuesto.
Cuando un procedimiento estadístico es poco sensible a alteraciones en el modelo
probabilístico supuesto, es decir que los resultados obtenidos son
aproximadamente válidos cuando éste varía, se dice que es un procedimiento
robusto.

4.4.2 Pruebas no paramétricas


Las pruebas estadísticas no paramétricas son las que, a pesar de basarse en
determinadas suposiciones, no parten de la base de que los datos analizados
adoptan una distribución normal.
Técnica estadística que no presupone ninguna distribución de probabilidad teórica
de la distribución de nuestros datos.
Se denominan pruebas no paramétricas aquellas que no presuponen una
distribución de probabilidad para los datos, por ello se conocen también como de
distribución libre (distribución free).
En la mayor parte de ellas los resultados estadísticos se derivan únicamente a partir
de procedimientos de ordenación y recuento, por lo que su base lógica es de fácil
comprensión.
Cuando trabajamos con muestras pequeñas (n < 10) en las que se desconoce si es
válido suponer la normalidad de los datos, conviene utilizar pruebas no
paramétricas, al menos para corroborar los resultados obtenidos a partir de la
utilización de la teoría basada en la normal.
En estos casos se emplea como parámetro de centralización la mediana, que es
aquel punto para el que el valor de X está el 50% de las veces por debajo y el 50%
por encima.

30
Las pruebas no paramétricas no requieren asumir normalidad de la población y en
su mayoría se basan en el ordenamiento de los datos, la población tiene que ser
continua.4
El parámetro que se usa para hacer las pruebas estadísticas es la Mediana y no la
Media.
Son técnicas estadísticas que no presuponen ningún modelo probabilístico teórico.
Son menos potentes que las técnicas paramétricas, aunque tienen la ventaja que
se pueden aplicar más fácilmente.

CONCLUSION
La simulación se utiliza en una amplia variedad de empresas, para ayudar a la
gerencia a tomar decisiones. Casi todas las empresas tienen problemas de
planificación y la simulación puede ayudar a resolverlos. Se utiliza más
frecuentemente para ayudar a la gerencia en los casos en que el problema no se
presta a soluciones rutinarias.
Así pues, la simulación ayuda a la gerencia a tomar decisiones; ofrece un método
mediante el cual se pueden probar los planes propuestos, antes de llevarlos a cabo.
Por naturaleza, la simulación ayuda a la gerencia a determinar los resultados de las
preguntas del tipo: ¿qué pasaría sí? Como subproducto importante de la simulación,
se adquiere un conocimiento de la estructura del “negocio”. A través del análisis
necesario para preparar el modelo se puede descubrir un gran número de
interrelaciones inadvertidas hasta el momento. Además, pueden ponerse de
manifiesto los puntos débiles del negocio en la estructura de la empresa. Por lo
tanto, el propio proceso de representación mediante modelos resulta
frecuentemente beneficioso para la gerencia.

Fuentes de Información
 http://www.material_simulacion.ucv.cl/en%20PDF/Definicion%20de%20la%
20simulacion%20de%20sistemas.pdf
 http://pisis.unalmed.edu.co/cursos/material/3004586/1/yom_c1.pdf
 http://licmoralesvidea.files.wordpress.com
 http://materias.fi.uba.ar/7526/docs/teoria.pdf
 http://www.modelica.es/NR/rdonlyres/0973E138-E391-4242-8563-
E6DD44973702/0/ResumenLibroMathmodelica.pdf
 https://www.slideshare.net/SagFenix/proyecto-de-simulacion-de-sistemas

4García Dunna Eduardo, García Reyes Heriberto y Cárdenas Barrón Leopoldo Eduardo (2006).
Simulación y análisis de sistemas con ProModel. México, Person educación

31
 http://sisbib.unmsm.edu.pe/bibvirtualdata/publicaciones/indata/Vol2_n1/pdf/
software.pdf (acceso: octubre 2012).
 Kelton W.D., et al. (2008). Simulación con software Arena. México: Mc Graw-
Hill.
 Eduardo García Dunna, Heriberto García Reyes, Leopoldo Eduardo
Cárdenas Barrón (2006). Simulacion y análisis de sistemas con Promodel.
Mexico: Person educación.

32

Vous aimerez peut-être aussi