You are on page 1of 165

Institución Certificada

Norma ISO 9001:2000

INSTITUTO TECNOLÓGICO SUPERIOR


DE CENTLA

Academia de Informática y
Sistemas Computacionales

Antología

SCB-9310 SIMULACIÓN

Presenta

ROCÍO DE LA CRUZ HERNÁNDEZ

Revisado por los integrantes de la


academia
de Informática y Sistemas Computacionales

Material compilado con fines académicos

Fecha elaboración: Junio 2009.


INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Contenido

...........................................................................................................................
INTRODUCCIÓN................................ ........................... 4

UNIDAD 1 ................................................................................................................................
................................ ..................................... 5

........................... 5
INTRODUCCIÓN A LA SIMULACIÓN...........................................................................................
SIMULACIÓN
1.1 Definición ............................................................................................................................
................................ ............................ 5
1.2 Conceptos básicos de modelación ................................................................
.................................................... 10
1.3. Metodología de la Simulación.........................................................................................
Simulación ......................... 15
1.4. Sistemas, modelos y simulación................................................................
simulación ...................................................... 23
1.5 Estructura y etapa de un modelo de simulación...............................................................
simulación ............................... 35
1.6. Etapas de un proyecto de Simulación ................................................................
.............................................. 36

UNIDAD 2 ................................................................................................................................
................................ ................................... 37

NUMEROS PSEUDOALEATORIOS ...............................................................................................


............................... 37
2.1 Generación de números pseudoaleatorios................................................................
pseudoaleatorios ....................................... 37
Características de los números pseudoaleatorios ................................................................
.................................. 40
Métodos que utilizan ecuaciones de recurrencia para generar números pseudoaleatorios.
................................................................
................................................................................................
................................................. 40
Métodos de generación de números pseudoaleatorios.........................................................
pseudoaleatorios ......................... 41
2.2 Pruebas estadísticas de aleatoriedad................................................................
aleatoriedad ................................................ 46
Ejemplo 4 ............................................................................................................................
................................ ............................ 52

UNIDAD 3 ................................................................................................................................
................................ ................................... 57

GENERACIÓN DE VARIABLES ALEATORIAS ................................................................


............................................... 57
3.1 Introducción ................................................................................................
................................ ...................................................... 57
3.2 Variables aleatorias discretas............................................................................................
discretas ............................ 58
3.2 Variables aleatorias continuas ..........................................................................................
.......................... 61

UNIDAD 4 ................................................................................................................................
................................ ................................... 63

LENGUAJES DE SIMULACIÓN ................................................................................................


...................................... 63
4.1 Lenguajes de simulación y simuladores. ................................................................
........................................... 63
2

4.2 Aprendizaje y uso de un simulador ................................................................


................................................... 68
Página

4.3 Casos prácticos de simulación...........................................................................................


simulación ........................... 68

UNIDAD 5 ................................................................................................................................
................................ ................................... 71

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

UNIDAD INTEGRADORA ................................................................................................


................................ ............................................ 71
5.1. CASO DE ESTUDIO ................................................................................................
................................ ............................................ 71
5.2. Validación del sistema de simulación. ................................................................
............................................. 72

3
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

INTRODUCCIÓN
La creciente capacidad de las computadoras y la inmensa
investigación en el campo de la Ciencia de la Computación oto otorgan nuevas
herramientas para apoyar el proceso de la toma de decisiones en diversas
disciplinas y áreas de diseño y manejo de la industria. La Simulación es una
de las herramientas más importantes y más interdisciplinarias. En pocas
palabras podemos decir, cir, que la simulación realiza cuando la computadora
finge ser una tienda, un avión o un mercado de abarrotes. El usuario define
la estructura del sistema que quiere simular.

Una corrida del programa de simulación correspondiente le dice cual


será el comportamiento
portamiento dinámico de su empresa o de la maquina que está
diseñando. Así podemos ver los pronósticos para la demanda y utilidad de
nuestro producto, o ver cuando un mecanismo pueda fallar en las
condiciones adversas del ambiente donde funcionará.

Lass aplicaciones de la simulación parecen no tener límites.


Actualmente se simulan los comportamientos hasta las partes más pequeñas
de un mecanismo, el desarrollo de las epidemias, el sistema inmunológico
humano, las plantas productivas, sucursales bancarias,
bancarias, el sistema de
repartición de pizzas en la Ciudad de México, crecimiento de poblaciones
de especies de animales, partidos y torneos de fútbol, movimiento de los
planetas y la evolución del universo, para mencionar unos pocos ejemplos
de las aplicaciones de esta herramienta.

Cabe mencionar la creciente importancia de la Simulación en la


Investigación de operaciones y en sus aplicaciones industriales. En los
países altamente desarrollados la simulación es una herramienta principal
de en los procesos dee toma de decisiones, en el manejo de empresas y el
planeación de la producción. Además, la Simulación es cada vez más
“amigable” para el usuario, que no tiene que ser un especialista en
4

computación.
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

UNIDAD 1

INTRODUCCIÓN A LA SIMULACIÓN

1.1 De
Definición

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,
Física y con enormes aplicaciones industriales y
comerciales,
omerciales, como los simuladores de vuelo, los juegos de simulación
simulación, o la
predicción bursátil o meteorológica.
meteorológica

También se considera a la simulación como un proceso para descdescribir


la esencia de la realidad, el cual incluye la construcción, experimentación y
manipulación de un modelo complejo en un computador.
5
Página

El uso de la metodología de simulación ofrece ventajas y desventajas,


entre las cuales podemos mencionar las siguientes:
siguient

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Ventajas:
1. La simulación hace posible estudiar y experimentar con las
interacciones complejas de un sistema dado (sin importar cual).

2. A través de la simulación podemos estudiar el efecto de cambios


ambientales, organizacionales de cierta información,, en la operación del
sistema.

3. La observación detallada del sistema simulado nos permite tener


una mejor comprensión del mismo.

4. La experiencia al diseñar un modelo de simulación para


computadora es más valiosa que la simulación en sí.

La simulación
ación es una técnica muy poderosa y ampliamente usada en
las ciencias para analizar y estudiar sistemas complejos. En Investigaciones
se formularon modelos que se resolvían en forma analítica. En casi todos
estos modelos la meta era determinar soluciones óptimas.
óptimas. Sin embargo,
debido a la complejidad, las relaciones estocásticas, etc., no todos los
problemas del mundo real se pueden representar adecuadamente en
forma de modelo.

Cuando se intenta utilizar modelos analíticos para sistemas como


éstos, en general
ral necesitan de tantas hipótesis de simplificación que es
probable que las soluciones no sean buenas, o bien, sean inadecuadas para
su realización. En eso caso, con frecuencia la única opción de modelado y
análisis de que dispone quien toma decisiones es la simulación. Simular, es
reproducir artificialmente un fenómeno o las relaciones entrada
entrada-salida de
un sistema. Esto ocurre siempre cuando la operación de un sistema o la
experimentación en él son imposibles, costosas, peligrosas o poco prácticas,
como en el entrenamiento de personal de operación, pilotos de aviones, etc.

¿Quéué es la SIMULACIÓN? Existen innumerables definiciones de


simulación, aquí se presentan algunas de las mas aceptadas:
6
Página

Simulación es una técnica numérica para conducir experimentos een una


computadora digital. estos experimentos comprenden ciertos tipos de
relaciones matemáticas y lógicas las cuales son necesarias para describir el

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

comportamiento y la estructura de sistemas complejos del mundo real a


través de largos periodos de tiempo.
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
ació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
imulación es una técnica numérica para realizar experimentos
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

Se describe comúnmente como un arte, o una ciencia sofisticada,


debido a que la utilidad de los resultados dependerá de la destreza del
grupo que realiza y analiza el modelo. actualmente no existe una teoría
científica para garantizar la validez de un proceso de simulación antes de
que el experimento sea realizado, en su lugar, la confiabilidad de un
modelo es evaluada por la correspondencia de los resultados
resultados del modelo
7

con los obtenidos por otros sistemas comparables con el que se está
Página

examinando.

¿COMO
COMO SE DEFINE UN SISTEMA EN SIMULACIÓN?
SIMULACIÓN

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Colección de entradas que pasan a través de las fases de cierto


proceso, produciendo respuestas. Por ejemplo:

SISTEMA DE MANUFACTURA
ENTRADA PROCESO SALIDA EVALUACIÓN

1. EFICIENCIA
FACILIDADES 2. COSTOS DE TRANSFORMACIÓN
MATERIA PRIMA SISTEMA DE PRODUCTO 3.INVENTARIO EN PROCESO
PRESUPUESTO TRANSFORMACIÓN TERMINADO 4.TIEMPO DE PROCESO
INFORMACIÓN (distribución y asignación) 5.PRODUCCIÓN/HORA
6.AREA OCUPADA

SISTEMA DE SERVICIO
ENTRADA PROCESO SALIDA EVALUACIÓN

SISTEMA DE SERVICIO: 1. COSTO DEL SISTEMA


SERVIDORES 2. TIEMPO EN LA COLA
CLIENTE
CLIENTES DISCIPLINA DEL SERVICIO SATISFECHO
3.TIEMPO EN EL SISTEMA
ESPACIO DISPONIBLE 4.LONGITUD DE COLA
5. OCUPACIÓN DE LOS SERVIDORES

Tipos de simulación:

Simulación
predectiva

Simulación Simulación
Investigativa comparativa
8 Página

Simulación
Simulación de
Visual
caja negra
Interactiva

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Simulación predictiva:
En la simulación predictiva nos interesamos por los resultados
absolutos finales, no por las comparaciones. Determinamos promedios e
intervalos de confianza de una corrida de simulación
simulación con valores específicos
en las variables de decisión (varias corridas, mejores resultados).

Este tipo de simulación se puede utilizar para realizar pronósticos,


por lo que es necesario contar con datos históricos de entrada confiables, se
utiliza en procesos
ocesos de decisiones que se repiten, por lo tanto debiera estar
integrada en un DSS. Ejemplo: predecir el número de pacientes que
necesitan transplante de riñon).

Simulación comparativa:
comparativa
En la simulación comparativa determinamos cuando una opción es
mejorr que otra. (1 cola vs 4 colas). Se debe especificar detalladamente
que significado tiene la palabra "mejor", para definir cuales serán los
datos de salida a comparar. Mejor significa mantener las colas lo mas
cortas posibles o es un compromiso entre tiempo
tiempo de servicio, largo de cola y
costo por servidor?

Se puede usar para tomar decisiones casuales o repetitivas, utilizar


datos de entrada y salidas confiables.
confiables Si los objetivos no son claros,(*) se
proveerá de un rango variado de resultados, que le permitapermitan al usuario
definir a posteriori la importancia relativa de cada uno de ellos.

Si los resultados o los datos de salida son claros se puede usar


técnicas de hipótesis estadística de los resultados

Simulación Investigativa:
La simulación investigativa indica
indica factores que afectan el flujo de
entidades en el sistema pero no requiere de respuestas precisas, por lo que
la calidad de los datos de entrada no son críticos.

Simulación visual interectiva:


La técnica de simulación visual interactiva es adecuada para apoyar
9
Página

la toma de decisiones.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Simulación de caja negra:


negra
Pensando al modelo como parte de un proceso de toma de
decisiones, es conveniente, a veces, considerar el modelo como una caja
negra, de donde salen flechas con datos, derivados directame
directamente de los
objetivos (y que difieren de un problema a otro) y a donde ingresan
flechas con datos relacionados estrechamente con las hipótesis de trabajo
del modelo.

1.2 Conceptos básicos de modelación

La simulación es un tema muy amplio y mal definido q que es muy


importante para los responsables del diseño de sistemas, así como para los
responsables de su operación.

See entiende que el proceso de simulación incluye tanto la construcción


del modelo como su uso analítico para estudiar un problema. Un modelo de
simulación comúnmente toma la forma de un conjunto de hipótesis acerca
del funcionamiento del sistema, expresado con relaciones matemáticas o
lógicas entre los objetos de interés del sistema. En contraste con las
soluciones matemáticas exactas disponibles
disponibles en la mayoría de los modelos
analíticos, el proceso de simulación incluye la ejecución del modelo a través
del tiempo, en general en una computadora, para generar nuestras
representativas de las mediciones del desempeño o funcionamiento.

El primer pasoo a dar para estudiar un sistema es elaborar un modelo,


el cual puede ser una representación formal de la teoría o una explicación
formal de la observación empírica. Sin embargo, a menudo es una
combinación de ambas. Los propósitos de usar un modelo son llos siguientes:

 Hace posible que un investigador organice sus conocimientos teóricos


y sus observaciones empíricas sobre un sistema y deduzca las
consecuencias lógicas de esta organización.
 Favorece una mejor comprensión del sistema.
10

 Acelera análisis.
 Constituye
tituye un sistema de referencia para probar la aceptación de
Página

las modificaciones del sistema.


 Es más fácil de manipular que el sistema mismo.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

 Hace posible controlar más fuentes de variación que lo que


permitiría el estudio directo de un sistema.
 Suele ser menos
enos costoso.

Al analizar un sistema podemos observar, que al cambiar un aspecto


del mismo, se producen cambios o alteraciones en otros. Es en estos casos en
los que la simulación, representa una buena alternativa para analizar el
diseño y operación de complejos
co procesos o sistemas.

La modelación de sistemas es una metodología aplicada y


experimental que pretende:

1. Describir el comportamiento de sistemas.

2. Hipótesis que expliquen el comportamiento de situaciones


problemática.

3. Predecir un comportamiento futuro, es decir, los efectos que se


producirán mediante cambios en el sistema o en su método de
operación.

Definición de modelo

Un modelo es una representación de un objeto, sistema o idea, de


forma diferente al de la entidad misma. El propósito de los modelos es
ayudarnos a explicar, entender o mejorar un sistema. Un modelo de un
objeto puede ser una réplica exacta de éste o una abstracción de las
propiedades dominantes del objeto.

El uso de modelos no es algo nuevo. El hombre siempre ha tratado de


representar
epresentar y expresar ideas y objetos para tratar de entender y
manipular su medio. Un requerimiento básico para cualquier modelo, es que
11

debe describir al sistema con suficiente detalle para hacer predicciones


válidas sobre el comportamiento del sistema. Más generalmente, las
Página

características del modelo deben corresponder a algunas características del


sistema modelado. La figura siguiente muestra el concepto de un modelo de
simulación:

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

ENTRADA ENTRADA
X

CORRESPONDENCIA

PARÁMETROS
PARÁMETROS característica o
característica o CORRESPONDENCIA
SISTEMA MODELO atributos de
atributos del modelo
sistema

INFERENCIA

SALIDA SALIDA
Y

Un modelo se utiliza como ayuda para el pensamiento al organizar y


clasificar conceptos confusos e inconsistentes. Al realizar un análisis de
sistemas, se crea un modelo del sistema que muestre las entidades, las
interrelaciones, etc. La adecuada construcción de un modelo ayuda a
organizar, evaluar y examinar la validez de pensamientos.

Estructura de los modelos de simulación.

Los componentes son las partes constituyentes del sistema. También se


les denomina elementos o subsistemas.

Las variables son aquellos valores que cambian dentro de la


simulación y forman
orman parte de funciones del modelo o de una función
objetivo.

Los parámetros son cantidades a las cuales se les asignar valores, una
vez establecidos los parámetros, son constantes y no varían dentro de la
simulación.

"Las relaciones funcionales muestrann el comportamiento de las


variables y parámetros dentro de un componente o entre componentes de
12

un sistema. Estas características operativas pueden ser de naturaleza


determinística o estocástica. Las relaciones determinísticas son identidades o
Página

definiciones
es que relacionan ciertas variables o parámetros, donde una
salida de proceso es singularmente determinada por una entrada dada.
Las relaciones estocásticas son aquellas en las que el proceso tiene de

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

manera característica una salida indefinida para una eentrada


determinada.

Las restricciones son limitaciones impuestas a los valores de las


variables o la manera en la cual los recursos pueden asignarse o
consumirse.

En las funciones de objetivos se definen explícitamente los objetivos


del sistema y cómo se evaluarán, es una medida de la eficiencia del
sistema.

El porque de los modelos se debe a las siguientes condiciones:

 Complejidad de la interrelación entre factores que definen un


sistema.

 Preparación del tomador de decisiones.

 Incapacidad de clasificar
clasificar los hechos relevantes e irrelevantes y cómo
pueden afectarse al implementar decisiones.

 Diseño o modificación de sistemas evaluando diferentes alternativas.

 Menor costo que en sistemas reales la toma de decisiones.

 La inexistencia del sistema real.


re

 Implementar sistemas para tomar decisiones genera grandes atrasos


y se incurre en la posibilidad que el sistema implementado sea
insatisfactorio.

Características deseables de un modelo de simulación


13

 Que sea completo


Página

 Adaptabilidad
 Credibilidad
 Simplicidad
cidad (menor número de parámetros)

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

 Factible tanto en Información como en recursos


 Económico (EL COSTO MÁXIMO DEL MODELO DEBE SER EL MÍNIMO
BENEFICIO QUE SE OBTIENE)

COSTO DEL MODELO

COSTO DEL ERROR

COMPLEJO DEL MODELO Y ERRORES


(COMPLETO, EXACTO, ETC)

Clasificación de los modelos

Los modelos pueden clasificarse de diversas maneras. Existen muchos


modelos físicos tales como el modelo de un avión o, más generalmente, una
réplica a escala de un sistema. Existen modelos esquemáticos que abarcan
dibujos, mapas y diagramas. existen modelos simbólicos, de los cuales los
que están basados en las matemáticas o en un código de computadora son
simbólicos desempeñan funciones importantes en el diseño de los estudios
de simulación de sistemas por medio de computadora.

Algunos modelos son estáticos; otros, dinámicos. Un modelo estático


omite
mite ya sea un reconocimiento del tiempo o describe un instante del estado
de un sistema en determinado momento. En contraste, un modelo dinámico
reconoce explícitamente el transcurso del tiempo. Además de proporcionar
una secuencia de instantes del sistema
sistema en el transcurso del tiempo, algunos
modelos dinámicos especifican relaciones entre los estados de un sistema en
diferentes momentos.

Otra distinción es la referente a los modelos deterministas contra


14

modelos estocásticos. En los primeros, todas las entidades


entidades establecen
Página

relaciones matemáticas o lógicas constantes. Como consecuencia, estas


relaciones determinan soluciones. En un modelo estocástico, por lo menos
una parte de la variación tienen una naturaleza casual. Por tanto, un
investigador puede, a lo sumo, obtener soluciones promedio mediante

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

modelos estocásticos para resolver los problemas. El presente libro se


concentra exclusivamente en modelos estocásticos.

1.3. Metodología de la Simulación

La experiencia sugiere que la planeación de experimentos de


simulación requiera de un procedimiento que consta de las etapas
siguientes:
1. Formulación del problema.
2. Recolección y procedimiento de datos tomados en realidad.
3. Formulación de un modelo matemático.
4. Estimación de los parámetros de las características
operacionales
eracionales a partir de los datos reales.
5. Evaluación del modelo y de los parámetros estimados.
6. Formulación de un programa para la computadora.
7. Validación.
8. Diseño de los experimentos de simulación.
9. Análisis de los datos se simulación.

Aunque el orden en queque se implantan esos nueve pasos permanece


abierto a discusión, la figura 3.1 los muestra bajo una ordenación basada
en los resultados de experiencias [Naylor, 1977].

Con toda seguridad, cualquier procedimiento de este tipo resulta


sumamente arbitrario en su naturaleza y la posibilidad de juzgarlo sólo
existe en un plano puramente pragmático.

(1)

FOMULACIÓN DEL PROBLEMA

(2)

RECOLECCIÓN Y PROCESAMIENTO
DE DATOS
15

(3)
Página

FORMULACIÓN DEL MODELO


MATEMATICO

(4)

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

ESTIMACIÓN DELOS PARAMETROS

MODELO RECHAZADO

EVALUACIÓN DEL (5)


MODELO

MODELO
ACEPTADO (6)

FORMULACIÓN DEL
PROGRAMA PARA LA
COMPUTADORA

(7)

VERIFICACIÓN

(8)

DISEÑO DE EXPERIMENTOS Fig. 3.1 Diagrama de


flujo para la planeación
(9) de experimentos de
simulación
ANALISIS DE DATOS DE
LA SIMULACIÓN

FORMULACIÓN DEL PROBLEMA

Es necesario en primer lugar definir claramente los objetivos de


nuestra investigación, antes de hacer cualquier intento encaminado a
planear la realización de un experimento en simulación. Encontraremos que
la exposición original del problema varía considerablemente de su versión
final, ya que la formulación del problema es un proceso secuencial que
16

generalmente requiere de una formulación continua y progresiva de


Página

refinamiento de los objetivos de experimento durante su realización.

Los objetivos de la investigación, tanto en la empresa y la economía,


como también en la mayoría de las ciencias sociales,
sociales, toma generalmente la

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

forma ya sea de: (1) preguntas que deben contestarse, (2) hipótesis que se
deben probarse y (3) efectos por estimarse.

RECOLECCIÓN Y PROCESAMIENTO DE DATOS TOMADOS DE LA


REALIDAD.

Necesitaríamos colectar y procesar una cierta cantidad de datos


antes de que exista la posibilidad de definir algún problema. Para nuestros
propósitos, resulta completamente irrelevante que los requerimientos para
el procesamiento de datos procedan la formulación del problema o
viceversa; si hemos de dirigir experimentos de simulación, es importante
que ambas funciones se lleven a cabo.

Existen, por lo menos, cinco razones por las cuales es necesario de


disponer de un sistema eficiente para el procesamiento de datos, que
permita alcanzar el éxito al realizar
realizar los experimentos de simulación.

En primer instancia la información descriptiva y cuantitativa. En


segundo, los datos puedan sugerir hipótesis de cierta validez. Como tercer
punto, los datos también pueden sugerir y mejoras o refinamientos en los
modelos matemáticos. Cuarto; es necesario que los datos, reducidos a una
forma final, se utilicen para estimar los parámetros de las características
disponibles de operación relativas a las variables endógenas, exógenas y
de estado del sistema. Finalmente,
Finalmente, cabe considerar que sin tales datos,
serían imposibles probar la validez de un modelo para la simulación.

La recolección de datos es el proceso de capacitación de los


hechos disponibles, con los cuales pueden ser procesados posteriormente,
cuando sean
an necesarios. El proceso de recolección y el almacenamiento de
datos ocurre simultáneamente.

FORMULACIÓN DE LOS MODELOS MATEMÁTICOS

La formulación de los modelos matemáticos consiste en tres pasos:


17

i. Especificación de los componentes


Página

ii. Especificación
ecificación de las variables y los parámetros
iii. Especificación de las relaciones funcionales.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Una de las primeras consideraciones que se toman en cuanta en la


formulación de un modelo matemático reside en saber cuántas variables se
deben incluirr en el modelo.

La segunda consideración importante en la formulación del modelo


matemático se refiere a la complejidad de los mismos. Por lo general,
estamos interesados en al formulación de modelos matemáticos que
produzcan descripciones o predicciones,
predicciones, razonablemente exactas,
referentes al comportamiento de un sistema dado y reduzca a la vez, el
tiempo de computación y programación. Sin embargo, no es posible
establecer con exactitud,
titud, la interdependencia de las características en los
modelos matemáticos,os, ya que tanto él numero de variables en un modelo,
como su complejidad, se encuentran directamente relacionadas con los
tiempos de programación, cómputo y validez. Si alteramos cualquiera de
las citadas características, alteramos a su vez el resto de ellas.
ellas.

Una tercera consideración en la formulación de modelo


modelos matemáticos
para simulación en computadora estriba en el área de la eficiencia de
computación, es decir, la complejidad del algiritmo1.

Entendemos por ello, la cantidad de tiempo de cómputo re


requerida
para lograr algún objetivo experimental específico.

El tiempo consumido para la programación de la computadora,


constituye una cuarta consideración al formular modelos para simulación.

ESTIMACIÓN DE LOS PARÁMETROS DE LAS CARACTERISTICAS


OPERACIONALES
NALES A PARTIR DE LOS DATOS REALES

Una vez que hemos recolectado los datos apropiados del sistema y
formulando varios modelos matemáticos que describen su comportamiento
es necesario estimar sus valores de los parámetros de dichos modelos y
probar su significación
nificación estadística.
18

Ejemplo. La estimación de parámetros de los modelos económicos


Página

cae dentro del dominio de la econométria.


econométria

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Entre los métodos importantes de estimación econométrica descritos


por Goldber y Johnston [Naylor, 1977], y que se comparan sobre la base
de sus propiedades estadísticas y de computación, se encuentran:

1.- Métodos de una sola ecuación.


Mínimos cuadrados ordinarios.
Mínimos cuadrados indirectos (Generalizados).
Ecuación única con información limitada.
Mínimos cuadrados de dos etapas.

2.- Métodos de ecuaciones simultáneas.


Máxima probabilidad con información completa.
Mínimos cuadrados de tres etapas.

EVALUACIÓN DEL MODELO Y DE LOS PARAMETROS ESTIMADOS

Es necesario hacer un juicio del valor inicial de la suficiencia de


nuestroo modelo, para probarlo. Esto se logra haciendo una comparación
de las mediciones iniciales obtenidas por nuestro modelo de simulación con
las obtenidas de la realidad.

Este paso representa sólo la primera etapa en la prueba de un


modelo de simulación previa
previa a las corridas reales en la computadora, por
lo que en este punto nuestro interés reside en probar las suposiciones o
entradas que se programarán en la computadora.

En caso de que las características operacionales tomen la forma de


distribuciones de probabilidad, será necesario aplicar pruebas de bondad
de ajuste que determinen qué también se ajusta una distribución hipotética
de probabilidad a los datos del mundo real. Deseamos también probar la
importancia estadística de nuestras estimaciones de los
los valores esperados,
variancias y otros parámetros de estas distribuciones de probabilidad.
Estas pruebas podrían comprender:
19

1.- Prueba referente a las medidas.


Prueba de una muestra relativa a las medidas
Página

Diferencias entre medias

2.- Prueba referentes


referente a las variancias

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

ji cuadrada
Prueba F

3.- Pruebas basadas sobre el conteo de datos.


Prueba referente a las proporciones
Diferencias entre K proporciones
Tablas de contingencia
Pruebas de bondad de ajuste

4.- Pruebas no paramétricas


Las pruebas de signo
sig
Pruebas basadas en suma de rangos
Pruebas de la mediana
La prueba U (Tchebychev)
Pruebas de corridas
Prueba de correlación en serie

En caso de que las características operacionales tomen la forma de


los modelos econométricos, requerimos probar la importancia
importancia estadística de
cada uno de los parámetros estimados en tales modelos, mediante el uso
de las pruebas estándar t, y F. También desearemos aplicar pruebas que
nos permitiran las violaciones en las suposiciones fundamentales de nuestros
modelos econométricos;
étricos; estas podrían comprender las pruebas para:

 Errores en las variables


 Colinearidad múltiple
 Heterosedasticidad
 Autocorrelación
 Identificación

De entre las preguntas que nos interesa formular durante esta etapa
del procedimiento, se encuentran las siguientes:

¿Incluimos algunas variables que no sean pertinentes, en el sentido de


20

que contribuyen muy poco a nuestra capacidad para predecir el


Página

comportamiento de las variables endógenas de nuestro sistema?

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

¿Omitimos la inclusión de una o más variables eexógenas que


pudieran afectar el comportamiento de las variables endógenas en nuestro
sistema?

¿Formulamos incorrectamente una o más relaciones funcionales entre


las variables endógenas y exógenas de nuestro sistema?

¿Apreciamos debidamente las estimaciones


estimaciones de los parámetros de las
características operacionales de nuestro sistema?

¿Cómo se comportan los valores teóricos de las variables endógenas


de nuestro sistema con los valores históricos o reales basados en cálculos
manuales? (ya que aún no formulamos un programa para computadora).

Sólo si es posibles contestar satisfactoriamente las seis preguntas,


procederemos al paso 6: la formulación de un programa para
computadora. De otro, repetiremos los pasos del 1 al 5 hasta que sea
posible responder satisfactoriamente
satisfa las preguntas.

FORMULACIÓN DE UN PROGRAMA PARA LA COMPUTADORA.

La formulación de un programa para computadoras, cuyo


propósito sea dirigir los experimentos de simulación con nuestros modelos
del sistema bajo estudio, requiere que se considere
considere especialmente las
siguientes actividades:

 Diagrama de flujo
 Lenguaje de computadora
 Compiladores de propósito general
 Lenguajes de simulación de propósitos especiales
 Búsqueda de errores
 Datos de entrada y condiciones iniciales
 Generación de datos
 Reportes
rtes de salida
21
Página

Al escribir un programa de simulación para computadora la primera


etapa requiere la formulación de un diagrama de flujo que bosqueje la
secuencia lógica de los eventos que realizará la computadora, al generar
los tiempos planificados para las
las variables endógenas de nuestro modelo.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Podemos escribir nuestro programa en un lenguaje de propósitos


generales como FORTRAN, BASIC, PASCAL , C++ o sus visuales o bien
emplear un lenguaje de simulación como . SIMPAC, DINAMO, PROGRAM
SIMULATE, GPSS, o nuevos como GPSSH, SLAM, PROMODEL,
SINFACTORY, MICLROMANAGER, entre otros. Dependerá de la aplicación,
el uso del lenguaje adecuado. En un capítulo posterior se describirán
alguno de estos lenguajes y su aplicación particular.

VALIDACIÓN

Ciertamente, ell problema de validar modelos de simulación es difícil


ya que implica un sinnúmero de complejidades de tipo práctico, teórico,
estadístico e inclusive filosófico. La validación de experimentos de
simulación forma parte de un problema mucho más general, es decir, el de
la validación de cualquier clase de modelo o hipótesis. Las preguntas
básicas son: “¿Qué significa validar una hipótesis?” y “¿Cuáles criterios
deberán utilizarse para establecer la validez de una hipótesis?”.

Aún así parece que por lo general


general sólo dos pruebas se consideran
apropiadas para validar los modelos simulación. Primeramente, ¿Qué tan
bien coinciden los valores simulados de las variables endógenas con los
datos históricos conocidos, si es que estos están disponibles?. En segundo
lugar, ¿Qué tan exactas son las predicciones del comportamiento del
sistema real hechas por el modelo de simulación, para períodos futuros (de
tiempo)?. Asociada con cada una de estas pruebas, existe una gran
variedad de pruebas estadísticas, tanto como clásicas
clásicas como recientes.

DISEÑO DE LOS EXPERIMENTOS DE SIMULACIÓN

Una vez que estemos satisfechos con la validez de nuestro modelo


para la computadora, estaremos en posibilidad de considerar su uso para
dirigir efectivamente, los experimentos de simulación.
simulación. De hecho, como ya
hemos definido nuestro problema experimental, las variables endógenas y
22

lo factores (variables exógenas y parámetros), deberemos interesarnos


Página

ahora por los detalles de diseño experimental.

En esta fase, es posible identificar dos metas


metas importantes: en primer
lugar, seleccionaremos los niveles de los factores y las combinaciones de

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

niveles, así como el orden de experimentos; en seguida y una vez que


seleccionaremos nuestras combinaciones de factores, deberemos
esforzarnos por asegurar
asegurar que los resultados queden libres de errores
fortuitos.

ANALISIS DE LOS DATOS SIMULADOS

La etapa final en el procesamiento requiere un análisis de los datos


generados por la computadora, a partir del modelo que simular. Tal
análisis consiste de tres pasos:
pa

1.- Recolección y procesamiento de los datos simulados.


2.- Cálculo de la estadística de las pruebas.
3.- Interpretación de los resultados.

Aunque el análisis de los datos simulados es de hecho semejante al


análisis de los datos del mundo real (Véanse
(Véanse los pasos 2, 3 y 4 de la figura
3.1) existen algunas diferencias importantes. El análisis de los datos de
simulación en computadora es, según los expertos, considerablemente más
difícil que el análisis de los datos del mundo real.

1.4. Sistemas, modelos


os y simulación

En el mundo actual, tanto en el área de los negocios, como en la


industria y el gobierno, los proyectos en gran escala y de gran complejidad
son la regla y no la excepción. Estos proyectos complejos requieren estudios
previos a su construcción
cción o modificación, denominados estudios pilotos.

Tales estudios pilotos se realizan utilizando la técnica llamada


modelización, es decir, construcción de modelos donde se realiza el
estudio con el fin de obtener conclusiones aplicables al sistema real.
Construido el modelo, el proceso de ensayar en él una alternativa se
llama simular. El conjunto de alternativas que se definen para su ensayo
23

constituye la estrategia de la simulación.


Página

Los objetivos del proyecto definen cuál es el sistema y cuál el medi


medio
ambiente que lo rodea.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

El sistema procura satisfacer las necesidades cambiantes de ese


medio ambiente en el que está insertado. Cada nuevo sistema lo modifica y
crea en él nuevas necesidades.

El sistema para poder subsistir debe adaptarse a los cambios


cambios. Uno
de los objetivos de la simulación es realizar ensayos de cambios en el
sistema probándolos en el modelo, con el fin de elegir la mejor alternativa,
y así enfrentar mejor a una realidad que varía día a día.

En esta breve introducción se destacan tres


tres conceptos fundamentales,
que constituyen el eje de esta publicación y sobre los cuales se da a
continuación una primera aproximación.

Son los conceptos de: sistema, modelo y simulación.

Sistema
Pueden darse varias definiciones de sistema:

• "Conjunto de elementos cuya interacción interesa estudiar"

• "Conjunto de elementos que interactúan entre sí, con un fin común, que
se aísla del universo para su estudio."

• "Conjunto de partes organizado funcionalmente de manera tal de


constituir una unidad interconectada
terconectada”

Existen otras definiciones sobre sistemas más complejas que estas,


tales como:

• “El estudio de las interacciones conduce lógicamente al concepto de


organización sistemática.” (KHAILOV)

• "Totalidad arbitraria de variables que el investigador


investigador escoge de un
gran número de variables que pertenecen al sistema real.” (ASHBY)

• “Complejo de elementos que actúan recíprocamente”ó “la totalidad de


elementos en interacción recíproca” (BERTALANFFY). Acentúa la relación, la
24

influencia recíproca de los


los elementos que forman el sistema. Un único elemento
no puede constituir un sistema ni tampoco varios componentes aislados.
Página

• Unidad consistente en partes mutuamente interactuantes” (ACKOFF)

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

• “la totalidad de objetos junto con su mutua interacción” (HAL


(HALL y
FAGEN)

• La esencia de estas definiciones, concluye KHAILOV, es el


acoplamiento entre los componentes, y la organización como sistema
resultante de este acoplamiento.

• “Entidad que consiste en dos o más elementos y un conjunto no vacío


de relaciones entre los elementos” (Francisco SAGASTI)

• “La palabra sistema se refiere a una colección de procesos o eventos


interrelacionados, abarcados por una frontera reconocible” (F. K. BERRIEN)
BERRIEN).

• “Un sistema puede ser definido como una reunión de componentes


dotados de propiedades identificables y entre los cuales se perciben relaciones.
El exterior de un sistema es su controno” (Charles A. McCLELLAND)

• SADOWSKIJ nombra tres tipos básicos de sistema:


• de cosas
• de objetos
• de conocimientos

Como componentes ntes específicos del concepto de sistema enumera:


• al conjunto de elementos
• a la existencia de relaciones entre ellos
• al carácter de totalidad del conjunto dado

Nota: En todas estas definiciones se observa que para que constituyan un


sistema los elementos
entos deben ser varios y deben estar relacionados.

SUBSISTEMA:

Es un conjunto que se aísla dentro del sistema. El sistema puede verse


como un subsistema del Universo.

Cada subsistema puede ser tratado dentro del sistema o estudiado


en forma aislada.

El comportamiento del sistema total depende de:


25

1) El comportamiento de cada subsistema.


Página

2) Las relaciones entre los subsistemas.


3) Las relaciones con el mundo exterior, o sea con el medio ambiente
que lo circunda.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

El sistema en estudio, puede subdividirse


subdividirse en subsistemas
interconectados, cada uno de los cuales está compuesto por elementos
interconectados entre sí.

El comportamiento del sistema dependerá del comportamiento de


cada subsistema,, de sus relaciones y del medio ambiente donde se lo
inserta.

Los elementos y las relaciones que los ligan entre sí definen los
subsistemas. Los subsistemas y las relaciones entre sí definen al sistema en
estudio.

Las relaciones entre los elementos del sistema constituyen la estructura


del sistema.

Estas ideas son


on fundamentales para la resolución de problemas que
implican la construcción de modelos.
modelos

Modelo: La simulación de sistemas implica la construcción de modelos.


El objetivo es averiguar qué pasaría en el sistema si acontecieran
determinadas hipótesis.

Desde
sde muy antiguo la humanidad ha intentado adivinar el futuro. Ha
querido conocer qué va a pasar cuando suceda un determinado hecho
histórico. La simulación ofrece, sobre bases ciertas, esa predicción del
futuro, condicionada a supuestos previos.

Para ello se construyen los modelos,, normalmente una simplificación


de la realidad. Surgen de un análisis de todas las variables intervinientes
en el sistema y de las relaciones que se descubren existen entre ellas.

A medida que avanza el estudio del sistema se in incrementa el


entendimiento que el analista tiene del modelo y ayuda a crear modelos
más cercanos a la realidad.

En el modelo se estudian los hechos salientes del sistema o proyecto.


Se hace una abstracción de la realidad, realidad, representándose el
sistema/proyecto,
o, en un modelo.
26

El modelo que se construye debe tener en cuenta todos los detalles


Página

que interesan en el estudio para que realmente represente al sistema real


(Modelo válido). Por razones de simplicidad deben eliminarse aquellos
detalles que no interesan y que lo complicarían innecesariamente.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Se requiere pues, que el modelo sea una fiel representación del


sistema real. No obstante, el modelo no tiene porqué ser una réplica de
aquél. Consiste en una descripción del sistema, junto con un conjunto de
reglas que lo gobiernan.

La descripción del sistema puede ser abstracta, física o simplemente


verbal. Las reglas definen el aspecto dinámico del modelo. Se utilizan para
estudiar el comportamiento del sistema real.

Como ejemplo de modelo físico se pueden citar los túneles de viento


donde se ensayan los aviones, los simuladores de vuelo, los canales de
experiencia donde se ensayan los barcos, etc.

Como ejemplo de modelo abstracto, se pueden citar los modelos


econométricos donde, entre otras cosas, se pueden ens ensayar las
consecuencias de medidas económicas antes de aplicarlas.

Dado un sistema, son muchas las representaciones que se pueden


hacer de él. Depende de las facetas del sistema que interesan en el
estudio, de la herramienta que se utiliza en el mismo e in
incluso de la
modalidad personal del que lo construye.

En los modelos deben estar identificadas perfectamente las


entidades intervinientes y sus atributos.. Las mismas pueden ser permanentes
(Ej.: empleados atendiendo) o transitorias (Ej. clientes).. Las acciones
provocan cambios de estado,
estado, es decir, se modifican los atributos de las
entidades; se producen los eventos.

C. WEST CHURCHMAN en su obra “The Systems Approach” nos


resalta que “Todo diseño de sistema se orienta hacia el futuro,
especialmente hacia un u futuro cercano. Los diseños y modelos que
habitualmente se consideran versan sobre la etapa siguiente a la actual.”

Por otro lado existe un Axioma: “el futuro es menos cierto que el
presente”.

También nos hace una aguda observación: “el pasado es tan d difícil
de conocer con certeza como el futuro, cosa digna de reflexión en cuanto
nos fundamos en datos del pretérito para averiguar el porvenir”
porvenir”.
27

El Planeamiento estático comprende una sola etapa. El planeamiento


Página

dinámico contempla múltiples etapas.

Para predecir el futuro se postula lo siguiente:

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

• La actividad de estimar lo sucedido en lo pasado es separable de


la actividad a estimar de lo que ha de suceder en lo futuro. Es decir, el
análisis del futuro es separable del análisis del pasado.

• Cualquierr estimación específica de lo ocurrido en el pasado puede


ser evaluada conforme a una escala que va desde valores negativos
pasando por cero a valores positivos (hay hechos que inciden
negativamente, otros que no inciden y otros que inciden positivamente p
para
que ocurra algo).

• El conocimiento del futuro es posible Se habla de causa


causa-efecto
bidireccional. Se dice que la variable X se usa para predecir Y (No se
dice: “X es causa de Y”).

En forma general para predecir Y en función del conjunto Xi de


variables independientes:

Y = g(X1,X2,...,Xn)

Surgen dos errores para realizar la predicción de Y:


• Error de ecuación: mal expresada la relación
• Error de medida: mal evaluada las variables independientes.

También debería tenerse en cuenta la libertad del comportamiento


comportamiento
humano, el cual:

• No se comporta siempre de la misma manera


• Sabe lo que tiene que hacer pero no sabe que es lo que haría si
realmente tuviera que actuar.

John W. SUTHERLAND señala que prácticamente todos los fenómenos


del mundo real pueden
pueden ser modelizados según cuatro direcciones de
análisis:

• El nivel de las variables de estado, donde se trata de investigar los


principales aspectos estructurales o cualitativos del sistema.
sistema
• El nivel paramétrico, que implica la asignación de valores nnuméricos
específicos a las variables de estado.
estado
28

• El nivel de las relaciones, que implica establecer la naturaleza de


las relaciones entre las variables de estado, y
Página

• El nivel de los coeficientes en que se asignan valores numéricos


específicos a los conjuntos
njuntos de las variables de estado.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

El que va a tomar la decisión percibe en forma real, o aparente, una


identidad efectiva entre el estado real del sistema y el postulado. Al
percibirla toma la decisión, de lo contrario comienza el análisis para lograr
esa identidad

A posteriori se hace un análisis de informaciones comparando lo


previsto con lo real para el instante t y el instante t-1.
t 1. Mientras perciba una
diferencia entre lo postulado y lo real continuará el proceso de análisis.
Cuando logre la identidad
dad procederá a tomar su decisión.

Tenemos un planteo teórico general que nos permite inferir el futuro


en base al conocimiento del presente y la influencia del pasado en un
modelo válido (identificación entre lo real y lo postulado).

En las decisiones existen


e sistemas donde prima:

• El determinismo.
determinismo. La base de datos y las relaciones causales son
altamente específicas y precisas respecto del fenómeno contemplado. Sólo
se espera que haya uno y sólo un acontecimiento probable, que repetirá
situaciones anteriores.
riores. Se tiene una identidad efectiva entre los estados a
priori y los que realmente se producen. Los instrumentos de análisis
correspondientes son: modelos de análisis de estados de los sistemas
finitos; programación lineal y modelos de máx. Y mín.; aná análisis de la
regresión, de la correlación, análisis de series temporales y espectrales, con
tratamiento exógeno del error, si es que lo hay.

• Una Estocasticidad moderada: la variación de las variables y


parámetros.

El ser humano tiene restricciones de tiempo que muchas veces le


obligan a decidir sin percibir esta identidad, es decir, sin tener elementos
de juicio que le indiquen con certeza cuál es la mejor decisión.

El modelo es una representación o abstracción de una situación u


objetos reales, que muestra
muestra las relaciones (directas e indirectas) y las
relaciones de la acción y la reacción en términos de causa efecto. Como un
modelo es una abstracción de la realidad, puede parecer menos
29

complicado que la misma. Para que sea completo, el modelo debe se ser
representativo de aquellos aspectos de la realidad que están
Página

investigándose.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Debido a que la simulación es solamente un tipo de modelación,


aunque muy importante, preparemos el escenario para un comentario sobre
modelación de simulación considerando primero
primero la modelación en términos
generales.

Una de las razones básicas para el desarrollo de modelos es la de


descubrir cuáles son las variables importantes o pertinentes. El
descubrimiento de las variables pertinentes está estrechamente asociado
con la investigación
estigación de las estadísticas y la simulación para investigar las
relaciones que hay entre las muchas variables de un modelo.

FUNCIÓN DE LOS MODELOS

El concepto de la representación de algún objeto, sistema o idea, con


un modelo, es tan general que es difícil clasificar todas las funciones que
satisfagan los modelos. La mayoría de los autores de libros de simulación,
reconocen por lo menos cinco usos comunes:

1. Una ayuda para el pensamiento.


2. Una ayuda para la comunicación.
3. Para entretenimiento e instrucción.
instruc
4. Una herramienta de predicción.
5. Una ayuda para la experimentación.

La utilidad de modelo como ayuda para el pensamiento es evidente.


Los modelos pueden ayudarnos a organizar y clasificar conceptos confusos
e inconsistencias. Por ejemplo, la construcción
construcción de un modelo de
representación de una red con el método PERT (evaluación de programas y
técnicas de revisión) para un trabajo de diseño de sistemas complejos,
obliga a pensar sobre qué pasos son necesarios y su consecuencia. Si es
adecuada, la construcción
trucción de modelos obliga a organizar, evaluar y
experimentar la validez de pensamientos.
30

Los modelos han sido, y continúan teniendo un uso generalizado como


Página

ayudas para el entretenimiento e instrucción. A menudo los modelos son


ideales para entrenar a una persona, para que aprenda nuevas
habilidades y pueda afrontar varias eventualidades antes de que ocurran.
Un muñeco de tamaño natural es utilizado en ocasiones para enseñar

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

técnicas de primeros auxilios, modelos de vehículos espaciales se usan para


entrenar astronautas, modelos para enseñar a conducir automóviles, y
simulación de negocios para entrenar ejecutivos, son algunos ejemplos de
modelos de entrenamiento.

Quizás, uno de los usos más importantes de los modelos, práctica e


históricamente, es la predicción de las características del comportamiento
de la entidad modelada. No es económicamente factible construir un jet
supersónico para determinar sus características de vuelo bajo condiciones
extremas, sin embargo, su comportamiento se puede predecir
predecir mediante la
simulación Mediante simulación se verificaron las disposiciones de
emergencia del Apolo 13, antes de implantarlas; éstas les permitieron a los
astronautas regresar a salvo después de la explosión del tanque de
oxigeno. La mayoría de los modelos que se tratan en os libros de
simulación son herramientas de predicción.

Finalmente, el uso de los modelos hace posible la experimentación


controlada en situaciones en que los experimentos directos serían
imprácticos o prohibitivos por su costo.

CLASIFICACIÓN
SIFICACIÓN DE LOS MODELOS DE SIMULACIÓN

Las diferentes clasificaciones de los modelos dan una idea adicional


de sus características esenciales, porque pueden describirse de muchos
modos. Los modelos pueden clasificarse por sus dimensiones, funciones,
propósitos, temas o grado de abstracción. La base más común es la de
tipos de modelos, que incluye los tipos básicos: icónico, analógico y
simbólico o matemático.

Los modelos pueden clasificarse de manera general y los modelos de


simulación de manera particular,
particular, de diversas formas. Por desgracia,
ninguna es completamente satisfactoria, a pesar de que cada una sirve a
un propósito particular. Algunos de estos esquemas de clasificación son los
siguientes:
31
Página

 Estático (de corte seccional) vs. Dinámico (series


(series de tiempo)
 Determinantico vs Estocástico.
 Discreto vs Continuo.
 Icónico o físico vs Analógico vs Simbólico.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

MODELOS ICONICOS O FÍSICOS

Un modelo icónico es una representación física de algunos objetos, ya


sea en forma idealizada o en escala distinta.
distinta. Para expresarlo de otro
modo, una representación es un modelo icónico hasta el grado en que sus
propiedades sean las mismas que tiene lo que representa. Los modelos
icónicos son muy adecuados para la descripción de acontecimientos en un
momento específicoico del tiempo. Por ejemplo, una maqueta es una buena
imagen de una fábrica, mientras que las operaciones reales de una fabrica
construid en términos de un pequeño modelo que funcione, pueden ser
demasiado costosas para construir y modificar a fin de estudiar
estudiar sus posibles
mejoras. Otra característica de un modelo icónico la constituyen sus
dimensiones,, dos dimensiones (fotografía, plano y mapa), o tres dimensiones
(maqueta, globo, automóvil y avión), llamados generalmente modelos
escala. Cuando un modelo sobrepasa la tercera dimensión, como ocurre en
muchos problemas de investigación de operaciones y simulación, es
imposible construirlo físicamente, y entonces pertenece a otra categoría de
modelos llamados simbólicos o matemáticos.

MODELOS ANALOGICOS

Los modelos analógicos pueden representar situaciones dinámicas y


se usan más que los icónicos, porque pueden mostrar las características del
acontecimiento que se estudia. Las curvas de demanda, las curvas de
distribución de frecuencia en las estadísticas
estadísticas y los diagramas de flujo, son
ejemplos de modelos analógicos.

A menudo un modelo analógico es muy adecuado para representar


relaciones cuantitativas entre las propiedades de los objetos de varias
clases. Al transformar las propiedades en propiedades analógicas, con
frecuencia podemos incrementar nuestra capacidad de hacer cambios.
32

Otra ventaja de los modelos analógico sobre los icónicos es que


ordinariamente puede hacerse que los primeros representen muchos
Página

procesos del mismo tipo, lo que se hace evidente


evidente en el flujo de trabajos en
procesos y productos terminados de una fabrica.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

No podría usarse eficazmente un modelo icónico para estudiar los


efectos de ciertos cambios en el control de calidad. Un diagrama de flujo
es un modelo analógico muy sencillo
sencillo y eficaz en esas condiciones.

MODELOS SIMBOLICOS (MATEMATICOS)

Nos interesan principalmente los modelos simbólicos que son


verdaderas representaciones de la realidad y toma la forma de cifras,
símbolos y ecuaciones matemáticas. Comienzan como mode modelos abstractos
que formamos en nuestra mente y luego se registran como modelos
simbólico o matemático que se usa comúnmente en la investigación en
general, es la ecuación. Una ecuación es concisa y fácil de comprender.
Sus símbolos no sólo son más fáciles
fáciles de manipular que las palabras, sino
que se escriben más rápidamente. Además de estos atributos, los modelos
simbólicos se prestan a las manipulaciones de las computadora, a través de
lenguajes de programación de propósito partículas o general, los cuale
cuales
trataremos en un capítulo posterior.

Los modelos simbólicos los hemos descrito hasta ahora en un sentido


muy amplio. Las ecuaciones no sólo son ejemplos de modelos, sino que
modelos comunes de negocios incluyen además, declaraciones de ingresos,
tablas de organización de empresas, etc. Hay que tener en cuenta que
pueden representarse problemas para los que las analogías son más
eficientes que los modelos simbólicos. Por ejemplo, un sistema puede ser
tan complicado que la cantidad de trabajo requerida para para construir un
modelo simbólico sea demasiado costosa si se relaciona con ganancias
posibles. A menudo es difícil asignar tan sólo un modelo a una clase, y esto
es especialmente cierto con respecto a los modelos de simulación, que son
modelos analógicos y que se describen con símbolos matemáticos.

TIPOS DE MODELOS MATEMÁTICOS

Como los modelos matemáticos son los que más interesan


principalmente, los separaremos por categorías, lo que nos dará un soporte
33

lógico para clasificarlos. Sin que esta clasificación


clasificación pretenda estar
Página

completa; la podemos a disposición del lector, para que éste tenga una
mejor comprensión de las diferencias esenciales entre los modelos.

CUANTITATIVOS Y CUALITATIVOS

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Cuando construimos un modelo matemático e insertamos símbolos


para representar constantes y variables (en gran parte números),
Llamamos a esto un modelo cuantitativo. Se considera que una ecuación
matemática es un modelo de este tipo, porque representa una abstracción
de las relaciones o condiciones entre constantes y variables. Las fórmulas,
matrices, diagramas o series de valores que se obtienen mediante procesos
algebraicos son ejemplos comunes de los modelos matemáticos.

Los modelos que se ocupan de las cualidades de los componentes se


llaman cualitativos. Hay muchos
muchos problemas en los que no pueden
cuantificarse exactamente debido a uno o más de los siguientes motivos:
técnicas inadecuadas de medición, necesidad de muchas variables, algunas
variables desconocidas, relaciones especiales desconocidas, relaciones
demasiado
siado complejas para expresarse en forma cuantitativa. Sin
embargo, mediante el empleo del análisis lógico, sistemas de clasificación,
métodos de ordenamiento, teoría de conjuntos, análisis dimensional,
investigación de operaciones, análisis de decisiones y simulación se pueden
obtener ciertos valores representativos del sistema bajo análisis.

ESTANDAR Y HECHOS A LA MEDIDA

Se usan modelos estándar para describir las técnicas que han


llegado a asociarse con la investigación de operaciones (I. O.). Para usar
esas técnicas se insertan los valores (números) apropiados de un problema
específico de negocios en el modelo estándar para obtener una respuesta.

Se obtiene un modelo hecho a la medida cuando se usan los


conceptos básicos de diversas disciplinas, y especialmente las matemáticas,
para construir un modelo de ajuste al problema de que se trata. Un
ejemplo de este caso es el Análisis Veture [Thierauf, 1995], utilizado en
investigación de operaciones, que reúnen varios métodos estándar de la I.
O.
34
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

1.5 Estructura y etapa de un modelo de simulación

DEFINICIÓN DEL SISTEMA.


SISTEMA Cada estudio
tudio debe de comenzar con
una descripción del problema o del sistema. Debe determinarse los límites o
fronteras, restricciones, y medidas de efectividad que se usarán.

FORMULACIÓN
RMULACIÓN DEL MODELO.
MODELO. Reducción o abstracción del sistema
real a un diagrama de flujo lógico.

PREPARACIÓN DE DATOS.DATOS Identificación de los datos que el


modelo requiere y reducción de estos a una forma adecuada.

SELECCIÓN DEL LENGUAJE:


LENGUAJE De la selección d del lenguaje
dependerá el tiempo de desarrollo del modelo de simulación, es importante
utilizar el lenguaje que mejor se adecué a las necesidades de simulación
que se requieran. La selección puede ser desde usar un lenguaje general
como lo es BASIC, PASCAL o FORTRAN hasta hacer uso de un paquete
específicamente para simular sistemas de manufactura como el
SIMFACTORY o el PROMODEL, o lenguajes de Simulación como: GPSS,
SLAM, SIMAN, SIMSCRIPT, etc.

TRANSLACIÓN DEL MODELO.


MODELO Consiste en generar las instruccio
instrucciones o
código computacional o necesario para lograr que el modelo pueda ser
ejecutado en la computadora.

VALIDACIÓN DEL MODELO.


MODELO Es el proceso que tiene como objetivo
determinar la habilidad que tiene un modelo para representar la realidad.
La validación see lleva a cabo mediante la comparación estadística de los
resultados del modelo y los resultados reales.

PLANEACION ESTRATÉGICA.
ESTRATÉGICA Diseño del un experimento que
producirá la información deseada.

PLANEACIÓN TÁCTICA.
TÁCTICA Determinación de cómo se realizará cada
35

una de las corridas de prueba


Página

EXPERIMENTACIÓN.. Corrida de la simulación para generar los


EXPERIMENTACIÓN
datos deseados y efectuar análisis de sensibilidad.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

INTERPRETACIÓN. Obtención de inferencias con base en datos


INTERPRETACIÓN
generados por la simulación

IMPLANTACIÓN. Una vez seleccionada


leccionada la mejor alternativa es
importante llevarla a la práctica, en muchas ocasiones este último caso es
el más difícil ya que se tiene que convencer a la alta dirección y al
personal de las ventajas de esta puesta en marcha. Al implantar hay que
tener cuidado con las diferencias que pueda haber con respecto a los
resultados simulados, ya que estos últimos se obtienen, si bien de un
modelo representativo, a partir de una suposiciones.

MONITOREO Y CONTROL:
CONTROL No hay que olvidar que los sistemas son
dinámicos y con el transcurso del tiempo es necesario modificar el modelo
de simulación, ante los nuevos cambios del sistema real, con el fin de llevar
a cabo actualizaciones periódicas que permitan que el modelo siga siendo
una representación del sistema.
sistema

1.6. Etapas de un proyecto de Simulación

Etapa Descripción
Formulación del Define el problema que se pretende estudiar.
problema. Incluye por escrito sus objetivos.
Diseño del modelo Especificación del modelo a partir de las
conceptual. características
rísticas de los elementos del sistema que se
quiere estudiar y sus interacciones teniendo en
cuenta los objetivos del problema.
Recogida de datos. Identificar, recoger y analizar los datos necesarios
para el estudio.
Construcción del Construcción
ción del modelo de simulación partiendo del
modelo. modelo conceptual y de los datos.
Verificación y Comprobar que el modelo se comporta como es de
validación. esperar y que existe la correspondencia adecuada
entre el sistema real y el modelo.
Análisis. Analizar
izar los resultados de la simulación con la
36

finalidad de detectar problemas y recomendar


mejoras o soluciones.
Página

Documentación. Proporcionar documentación sobre el trabajo


efectuado.
Implementación. Poner en práctica las decisiones efectuadas con el
apoyo del estudio de simulación.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

UNIDAD 2

NUMEROS PSEUDOALEATORIOS

2.1 Generación de números pseudoaleatorios

En principio definiremos la función de distribución acumulada para la


distribución uniforme estandarizada como:

0 x<0
( )= 0<x<1
1 x>1

En la práctica, se requieren sucesiones de números aleatorios para la


generación de los datos de entrada para el proceso de simulación.

Se tienen cuatro métodos alternativos para generar o proveer


sucesiones de números aleatorios:

1. Métodos manuales {lanzamiento


{lanzamiento de monedas, dados, cartas,
ruleta, etc.}

2. Tablas {corporación rand}

3. Métodos analógicos de computación

4. Métodos de computación digitales


37

Los métodos analógicos comprenden el uso de procesos físicos


aleatorios (comportamiento de corriente eléctrica),), se considera que
Página

producen verdaderos números aleatorios.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

En el caso de los métodos digitales hay 3 formas para proveerse de


números aleatorios: provisión externa, generación interna por medio de un
proceso físico al azar, generación interna por medio
edio de una relación de
recurrencia.
En el caso de provisión externa, lo que se hace es, grabar las tablas
de números aleatorios en una cinta del sistema de la computadora digital.

La segunda alternativa utiliza un aditamento de la computadora que


puede registrar los resultados de algún proceso aleatorio y que los
traduzca a sucesiones de dígitos, tales procesos pueden ser el decaimiento
radiactivo, el ruido térmico,
térmico entre otros.

El defecto de estos procedimientos analógicos es el de que las


sucesiones asíí generadas no pueden reproducirse.

La generación interna por medio de una relación de recurrencia,


comprende la generación por medio de una “transformacióntransformación
indefinidamente
ndefinidamente continuada”
continuada aplicada a un grupo de números elegidos en
forma arbitraria.

El primerr método conocido para generar números aleatorios de


manera recurrente se considera que es de los “cuadrados centrales”, en el
que cada número de la sucesión se obtiene tomando los dígitos centrales
del cuadrado del número precedente.

En la actualidad se prefiere el uso del método de “congruencias”


para generar números aleatorios satisfactorios.

Cualquiera que sea el método para generar números aleatorios


debe satisfacer las siguientes condiciones:

Deben ser:

1. Uniformemente distribuidos
38

2. Estadísticamente
mente independientes
Página

3. Reproducibles
4. Sin repetición dentro de una longitud determinada de la sucesión
5. Generación a grandes velocidades
6. Requerir el mínimo de capacidad de almacenamiento

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Método dee Congruencias:

Estos métodos se basan en una relación


relación fundamental de congruencias
que se expresa como:

ni+1 = a ni + c (mod m) → 1

donde:
ni, a, c y m : son enteros no negativos

para i= 0,1,2,... al desarrollar la ecuación

n1= a n0 + c (mod m)

n2= a n1 c= a(an0 + c) + c º a2 n0 + (a +1)c (mod m)

n3= a3n0 (a2-a+1)c


a+1)c = a3n0 + c (a2-1)
(a2 (mod m)
. (a-1)
.
.
1) (mod m) → 2
ni= aino + c(ai-1)
(a-1)
n0 = constante inicial
c = constante aditiva
a = constante multiplicativa

Los términos de la sucesión {ni} forman una sucesión de residuos


modulo m, es decir, ni < m " ni; a partir de los números enteros de la
sucesión {ni}
ni} se pueden obtener números racionales en el intervalo (0,1) con
solo formar la sucesión:

{ri} = {ni / m}
39

Respecto a la pregunta de que si existe un mínimo valor positivo


Página

para i, i=h tal que nh = n0 donde h es el período de la sucesión {ni}; si h


existe,
e, cabe preguntarse que condiciones se pueden imponer sobre n0, a, c
y m de manera que el periodo de {ni} sea lo más largo posible.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Se tienen 3 versiones del método de congruencias para generar


números pseudoaleatorios:

Características de los números pse


pseudoaleatorios

a) Uniformemente distribuidos
b) Estadísticamente independientes
c) Reproducibles
d) Sin repetición dentro de una longitud determinada

Métodos
étodos que utilizan ecuaciones de recurrencia para generar números
pseudoaleatorios.

Aquí describiremos los métodos


métodos de generación de números
pseudoaleatorios, usando ecuaciones de recurrencia.

Método
étodo de cuadrados centrales.

Históricamente, el primer método aritmético para generar números


pseudoaleatorios, fue el de los cuadrados centrales, en el que cada número
de la sucesión se obtiene tomando los dígitos centrales del cuadro del
número precedente. El modelo matemático que los describe es:

n0 = semilla entera (entero positivo)

ni = dígitos centrales de n2i-1

xi = dígitos centrales de x2i-1 para i = 1, 2, 3,…

ejemplo:

a) ENTERO sea:
n0 = 83,
n1 = d. c. (6889) = 88
40

n2 = d. c. (7744) = 74
n3 = d. c. (5476) = 47
Página

n4 = d. c. (2209) = 20
n5 = d. c. (0400) = 40
n6 = d. c. (1600) = 60

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

b) FRACCIONARIO (Semilla impar y primo)

n0 = 0.528
n1 = 0.278784 = 0.787
n2 = 0.619369 = 0.193
n3 = 0.037249 = 0.372
n4 = 0.138124 = 0.383
n5 = 0.146689 = 0.466
n6 = 0.217151 = 0.171
n7 = 0.029241 = 0.292
n8 = 0.085264 = 0.852
n9 = 0.725904 = 0.259
n10 = 0.067021 = 0.670
n11 = 0.4489
4489 = 0.489
n12 = 0.239121 = 0.391
n13 = 0.152881 = 0.528 P = 13
n14 = 0.278784 = 0.787

n14 = 0.278784 = 0.787

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

-Métodos
Métodos congruenciales “69”

Reglas:

 C debe ser un entero impar, no divisible ni por 3 ni por 5


 a usualmente puede ser cualquier constante sin embargo para asegurar
buenos resultados, seleccione a de tal forma que (a) mod 8= 5 para una
computadora binario a o (a) mod 200 = 21 para una una computadora
decimal.
 M debe ser el número entero más grande que la computadora acepte

De acuerdo con Hull y Debell, los mejores resultados par


para un
generador congruencial mixto en una computadora binaria son:

 a = 8 * c3
41

 c = cualquier entero
Página

 r0 = cualquier entero impar (ni)


 m =2b donde b>2 y que m sea aceptado por la computadora

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

METODO DE CONGRUENCIAS PARA GENERAR NÚMEROS


PSEUDOALEATORIOS

Fórmulas generales de congruencias.

MIXTO MU
MULTIPLICATIVO

ni+1 = (ani +c)mod m ni+1 = (a*ni )mod m

Para i = 0, 1, 2, …,m-1,
…,m 1, donde a, c, m son enteros positivos. A n0 se le llama
semilla inicial.
i
i a 1
n  a n  c mod m
0 a 1
donde i = 0, 1, 2,…,m-1
a, c, n0 < m
h = máximo periodo

Método multiplicativo c =0 Método mixto c  0

BASE 2
h = 2b-2 ; b<2 h = m = 2b ; donde b > 2
a  2 2 1
b
m= 2b
a m donde a impar a  2 s  1; s  2
n0 impar positivo c = impar positivo y n0 entero
positivo
(a,m) =1
b
 b  par
b 2

2 b 1
b  b  impar
a  22  1 ; 2

válida para b4


si b = 3 poner a = 5.

BASE 10
h = 5 * 10d-2; d>3 h = m 10d; d  3
a  10 2  1
d
m = 10d
42

a  200t  p a  10s  1; s  1
Página

t= cualquier entero
tero positivo si d = 3, poner a = 101
d

p  3 mod 8  0 para d  4
a  10 2
1
p = {3,11,13,19,21,27,29,

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

53,59,61,77,83,91 c= impar positivo y (c,5) = 1


etc} mod 200
n0 impar positivo y (a,5)01 n0 entero positivo

METODO MIXTO BASE 2


Genera tantos números igual al modulo para b> 2

METODO MULTIPLICATIVO BASE 10

m>h

Mínimo del modulo sería 10,000


p= 3 mod 8 residuo 3

p < mod m

(a,5) = 1 significa que a no debe ser múltiplo de 5

METODO MIXTO BASE 10


Se genera un periodo igual al modulo
d

h  m  10  d  3
2

a  a  10 2  1
a  10s  1; s= 1, 2, 3,…

caso particular
c que no sea múltiplo de 5
c=
= 1, 3, 7, 9, 11, 13, 117, 19, ….(m-1)
….(m
n0 = cualquier entero positivo…(m-1)
positivo…(m

ejemplo:
h = m = 103 d=3
a  10 + 1 = 32.62
43

3/2

posibles de a s a
Página

2 101 el que más se acerca


acerca a 32.62 es 101, a = 101
3 1001
4 10001

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

d a d a

3 32.62 3 101
4 101 4 1101
5 317.22 más cercano al valor de a. 5 101
6 1001 6 1001
7 3163.27 7 1001
8 10001 8 10001
9 31623.77 9

Cuando d = 3, a = 32.62 en los valores de 5 a 9 cualquier valor que más se acerque a


32.62 es s = 2 y a = 101

d d  d  par
 2
2 d 1
 d  impar
2
d= 4 a=104/2 + 1 = 102 + 1
d= 5 a=105/2 + 1 = 101

Ejemplo: Base 2 MULTIPLICATIVO


MUL
h = 27 b -2
2 = 7 de donde b= 7 + 2 , b =9
n = 2b-2, b > 2.
M = 2b m = 29 , m = 512.

a  m  a  impar

a  512  22.63
a  8t  3 , t = 0, 1, 2, 3, 4, 5, …

t a

0 3
44

1 5
Página

11

2 13

19

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

3 21

27

4 29

35

n0 = 1, 3, 5, 7, 9,… 511, impar menor que m.


(a , m) = 1 primo relativo,
lativo, divisibles entre 1, máximo común divisor
(5 , 15) = 1 No son primos relativos
(8 , 9) = 1 son primos relativos porque no tienen factores primos comunes
que los puedan dividir.
Ni+1 = 21ni mod 512
i =0, 1, 2, 3, 4, 5, 6, …127
127 + n0 = 128
h = 27 = 128.

NOTA: Con
on estos parámetros genero 128 datos.

Método aditivo de congruencias

ni1  ni  ni k mod m


con k = 1, 2, 3, 4, 5, …

n0 , n1 , n2 ,... nk semillas

Se presupone k valores iniciales dados, con k un númernúmero entero


positivo. Si k = 1, la ecuación de recurrencia genera la conocida sucesión
de Fibonacci. Esta sucesión se comporta como las sucesión que se genera
con el método multiplicativo de congruencias, con el factor:
factor

a  1  5 2..
45

Las propiedades
ropiedades estadísticas de este método tienden a mejorarse
cuando k se incremente. Además, este método genera períodos mayores
Página

que el módulo m.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

2.2 Pruebas estadísticas de aleatoriedad

Los métodos analógicos comprenden el uso de procesos físicos


aleatorios (comportamiento de corriente eléctrica), se considera que
producen verdaderos números aleatorios.

En el caso de los métodos digitales hay 3 formas para proveerse de


números aleatorios: provisión externa, generación interna por medio de un
proceso físico al azar, generación interna por medio de una relación de
recurrencia.

En el caso de provisión externa, lo que se hace es, grabar las tablas


de números aleatorios en una cinta del sistema de la computadora digital.

La segunda alternativa utiliza un aditamento


aditamento de la computadora que
puede registrar los resultados de algún proceso aleatorio y que los
traduzca a sucesiones de dígitos, tales procesos pueden ser el decaimiento
radiactivo, el ruido térmico,
térmico entre otros.

El defecto de estos procedimientos analógicos es el de que las


sucesiones así generadas no pueden reproducirse.

La generación interna por medio de una relación de recurrencia,


comprende la generación por medio de una “transformacióntransformación
indefinidamente continuada”
continuada aplicada a un grupo de números eelegidos en
forma arbitraria.

Además se discutirán pruebas de independencia de dos variables


aleatorias en las cuales la evidencia maestral se obtiene mediante la
clasificación de cada variable aleatoria en un cierto número de categorías.
Este tipo de pruebaba recibe el nombre de bondad de ajuste. Para un
tamaño específico del error de tipo I, la hipótesis nula será rechazada si
46

existe una diferencia suficiente entre las frecuencias observadas y las


Página

esperadas.

La hipótesis alternativa es compuesta y a veces no suele estar


identificada. El resultado es que la función potencia es difícil de obtener.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

En consecuencia, una prueba de bondad de ajuste no debe usarse por sí


misma para aceptar la afirmación de la hipótesis nula.

2. Prueba de bondad de ajuste chi-cuadrado


chi

Se utiliza para decidir cuando un conjunto de datos se ajusta a una distribución


dada

Considérese una muestra aleatoria de tamaño n de la distribución de una


variable aleatoria X dividida en k clases exhaustivas e incompatibles, y sea N i i = 1, 2,
…, k. el número de observaciones en la i-ésima
i ésima clase. Considérese la hipótesis nula

H0: F(x)=F0(x)

en donde el modelo de probabilidad propuesto F0(x) se encuentra especificado


de manera completa, con respecto a todos los parámetros.

Es posible, pues, calcular


calc pi: probabilidad de obtener una observación en la ii-
ésima clase, bajo H0. Es obvio, también, que

Sea ni la realización de Ni para i = 1,2,…, k de manera que

La probabilidad de obtener de manera exacta ni observaciones en la ii-ésima


clase es

Dado que existen k categorías mutuamente excluyentes con probabilidades p1,


p2, …, pk; entonces bajo la hipótesis nula la probabilidad de la muestra agrupada es
igual a la función de probabilidad de una distribución multinomial determinada.
47
Página

Para deducir una prueba estadística para H0, considérese el caso de k = 2. Este
es el caso de la distribución binomial con x = n1, p = p1, n-x =n2 y 11-p =p2. Sea la
variable aleatoria estandarizada:

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

para n grande, esta variable aleatoria se distribuye según una N(0;1). Además
sabemos que el cuadrado de una variable aleatoria N(0,1) se distribuye según una chi
chi-
cuadrado con un grado de libertad. Entonces el estadístico

Si se sigue este razonamiento, puede demostrarse


demostrarse que para kk≥2 categorías
distintas

Nótese que Ni es la frecuencia observada en la i-ésima


i ésima clase y npi la esperada
bajo la hipótesis nula.

Esta estadística recibe el nombre de prueba de bondad de ajuste chi


chi-cuadrada
de Pearson.

Si existe una concordancia


concordancia perfecta entre las frecuencias observadas y las
esperadas, el estadístico tendrá un valor igual a cero; por otra parte si las
discrepancias entre estas frecuencias son grandes, el estadístico tomará un valor,
también muy grande. Por ello se desprende
desprende que para un valor dado del error de tipo I,
la región crítica estará en el extremo superior la distribución chi-cuadrada
chi cuadrada con k-1
grado de libertad.

Una ventaja de la prueba de bondad de ajuste chi-cuadrada


chi cuadrada es que para
valores grandes de n, la distribución
distribució límite chi-cuadrada
cuadrada de la estadística, es
independiente de la forma que tenga la distribución F0(x) propuesta en la hipótesis H0.
Como consecuencia de esto se tiene que la prueba de bondad se utiliza también para
distribuciones de probabilidad en las que F0(x) es continua. Sin embargo, debe insistirse
en que la prueba de bondad es discreta, en el sentido de que ésta compara frecuencias
que se observan y se esperan para un número finito de categorías.
48

De acuerdo con lo anterior, si F0(x) es continua, la prueba ueba no compara las


Página

frecuencias que se observan aisladas con la función de densidad propuesta tal y como
implica la hipótesis nula; sino, más bien, la comparación se lleva a cabo aproximando la
distribución continua bajo H0 con un número finito de intervalos de clase.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

No obstante, esta prueba es un procedimiento razonablemente adecuado para


probar suposiciones de normalidad siempre y cuando el tamaño de la muestra sea
suficientemente grande.

¿Qué tan grande debe ser el tamaño de la muestra? Se ha encontrado que con n
igual a 5 veces el número de clases, los resultados son aceptables. Una regla
conservadora es que ninguna clase tenga una frecuencia inferior a 5; si esto sucediera,
se agruparían clases vecinas.

A menos que se especifique una hipótesis alternativa


alternativa que consista en un modelo
alternativo particular F1(x), la potencia de la prueba (probabilidad de que un valor se
encuentre en la región crítica cuando H0 es falsa) es muy difícil de determinar. Por otra
parte, puede demostrarse que la potencia tiende a 1 cuando n tiende a infinito. Esto
implica que cuando n es muy grande es casi seguro que se rechaza H0, pues es muy
difícil especificar una F0(x) lo suficientemente cercana a la distribución. Por tanto esta
prueba es cuestionable para muestras muy grandes.
grand

Recuérdese que el modelo de probabilidad propuesto F0(x) se especificó


completamente. Por regla general, solo se conoce la normalidad de F0(x), necesitándose
estimar la media y la varianza, en consecuencia las frecuencias esperadas npi; i
=1,2,…,k no pueden determinarse.

Sea T el estadístico del parámetro desconocido θ de F0(x). Tanto Ni (frecuencias


observadas) como npi(T) frecuencias esperadas son variables aleatorias, donde pi(T)
estadístico T de θ.
indica que la probabilidad bajo la hipótesis nula es función del estadístico

Puede demostrarse que si T es el estimador de máxima verosimilitud de θ,


entonces:

en donde r es el número de parámetros que se está intentando estimar.

Ejemplo 1

El gerente de una planta industrial pretende determinar si el número de


empleados
eados que asisten al consultorio médico de la planta se encuentran distribuido en
forma equitativa durante los 5 días de trabajo de la semana. Con base en una muestra
49

aleatoria de 4 semanas completas de trabajo, se observó el siguiente número de


consultas:
Página

Lunes Martes Miércoles Jueves Viernes


49 35 32 39 45

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Con a=0,05, ¿existe alguna razón para creer que el número de empleados que
asisten al consultorio médico, no se encuentra distribuido de forma equitativa durante los
días de la semana?

Solución

Una distribución uniforme lleva consigo que la probabilidad sería la misma para
cada día de la semana. Por tanto pi=0,2 para i = 1, 2, 3, 4, 5.

La hipótesis nula H0: pi=0,2 para i = 1, 2, 3, 4, 5. Dado que n=200, la


frecuencia esperada para cada día de
de la semana es 200*0,2=40. Luego, el valor del
estadístico es:

Días Frecuencias Frecuencias (Ni-


2
Observadas teóricas npi) /npi
Lunes 49 40 2,025
Martes 35 40 0,625
Miércoles 32 40 1,6
Jueves 39 40 0,025
Viernes 45 40 0,625
Suma 4,9

El estadístico sigue una chi-cuadrada


chi con k-1
1 grado de libertad, con k=5. Luego

Por otro lado PRUEBA.CHI.INV(0,05;4)= 9,48772846. Como 4,9<9,48772846,


no puede rechazarse la hipótesis nula.

Ejemplo 2

En la tabla siguiente se dan las calificaciones


calificaciones obtenidas en la prueba de
matemáticas SAT por los estudiantes de tercer año preparatorio

De ….a.…. Número Frecuencia Intervalo normal Probabilidad Número


de relativa estándar del intervalo esperado
exámenes
200 249 3423 0,00716 -2,425 -2,017 0,0142 6795,55
250 299 18434 0,03855 -2,008 -1,600 0,0325 15539,08
50

300 349 39913 0,08347 -1,592 -1,183 0,0626 29939,08


350 399 51603 0,10791 -1,175 -0,767 0,1016 48604,67
Página

400 449 61691 0,12901 -0,758 -0,350 0,1390 66489,75


450 499 72186 0,15096 -0,342 0,067 0,1603 76642,67
500 549 72804 0,15225 0,075 0,483 0,1557 74444,01
550 599 58304 0,12193 0,492 0,900 0,1274 60930,11
600 649 46910 0,09810 0,908 1,317 0,0879 42021,58

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

650 699 30265 0,06329 1,325 1,733 0,0511 24420,10


700 749 16246 0,03397 1,742 2,150 0,0250 11957,60
750 800 6414 0,01341 2,158 2,575 0,0104 4991,80
478193 1,00000 0,9678 462776,00

los datos están ajustados a una normal de media 491 y desviación típica 120.
Con base en la prueba de bondad de ajuste chi-cuadrado,
chi cuadrado, ¿existe alguna razón para
creer que el número de respuestas correctas no se encuentra distribuidas según una
N(491; 120) a un nivel =0,05?
=0,05?

Solución

Nótese que la sumas de las probabilidades no es la unidad y por tanto la


clasificación en clases no es exhaustiva; sin embargo, mediante un reajuste esto puede
lograrse, haciendo que la primera clase no tenga límite inferior ni la última ssuperior. La
P(X ≤250)= 0,02230387 y la P(X≥750)=
P(X 0,01545091. Sustituyendo estos valores y
calculando

De …...…..a...……. Número Probabilidad Número (Ni--


de npi)2/npi
exámenes del intervalo esperado
200 250 3423 0,0223 10665,55 4918,1271
250 300 18434 0,0334 15984,05 375,515279
300 350 39913 0,0643 30732,32 2742,54873
350 400 51603 0,1041 49793,4 65,7647833
400 450 61691 0,1422 67987,23 583,087621
450 500 72186 0,1636 78228,44 466,723881
500 550 72804 0,1586 75855,65 122,766962
550 600 58304 0,1296 61986,47 218,766858
600 650 46910 0,0893 42686,09 417,967907
650 700 30265 0,0518 24771,49 1218,28167
700 750 16246 0,0253 12113,8 1409,55578
750 800 6414 0,0155 7388,52 128,535787
535787
478193 1 478193 12667,6424

Se obtiene que el valor de χ2 con 12 clases es igual a 12.667,64. Por otro lado
el valor crítico
51
Página

Por tanto la hipótesis nula debe rechazarse. Este ejemplo ilustra el comentario
formulado anteriormente con respecto a muestras muy grandes, en las cuales con casi
toda seguridad la hipótesis nula será rechazada.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

EL ESTADÍSTICO DE KOLMOGOROV-SMIRNOV
KOLMOGOROV

La prueba de bondad de ajuste de Pearson se encuentra limitada cuando F0(x)


es continua y la muestra aleatoria disponible
disponible es de tamaño pequeño. Una prueba de
bondad cuando F0(x) es continua es la de Kolmogorov-Smirnov.
Kolmogorov Smirnov. No necesita que los
datos esten agrupados en intervalos y es aplicable cuando la muestra es pequeña. Ésta
se basa en una comparación entre las funciones
funciones de distribución acumulativas que se
observan en la muestra ordenada y en la distribución propuesta bajo la hipótesis nula.

Consideremos la hipótesis nula H0: F(x)=F0(x), en donde F0(x) se especifica de


forma completa. Denótese por x(1), x(2), …, x(n) a las observaciones ordenadas de una
muestra aleatoria de tamaño n; y defínase la función de distribución acumulativa
muestral como

Si la hipótesis nula es correcta las diferencias entre Sn(x) y F0(x) serán pequeñas.
El estadístico de Kolmogorov-Smirnov
Kolmogorov se define como

El estadístico Dn tiene una distribución que es independiente del modelo


propuesto bajo la hipótesis nula, y depende tan solo del tamaño de la muestra. En la
tabla adjunta en la hoja de cálculo, se proporcionan valores cuantiles superiores de Dn
para varios tamaños de la muestra.

Para un error de tipo I de tamaño ,, la región crítica es de la forma

Ejemplo 4

A continuación se dan los valores ordenados de una muestra aleatoria con las
respuestas correctas de los estudiantes que ingresaron en la universidad en la prueba
del SAT: 852, 875, 910, 933, 957, 963, 981, 998,998, 1010, 1015, 1018, 1023, 1035,
52

1048, 1063. En años anteriores el número de respuestas correctas estaba representado


Página

por una N(985; 50). Con base en la muestra, ¿existe alguna razón para creer que ha
ocurrido un cambio en la distribución de respuestas correctas
correctas en las pruebas del SAT?
Empléese un nivel =0,05.

Solución

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Valores Sn(x) F0(x) |Sn(x)-F0(x)|


ordenados
1 852 0,0625 0,0039 0,0586
2 875 0,1250 0,0139 0,1111
3 910 0,1875 0,0668 0,1207
4 933 0,2500 0,1492 0,1008
5 957 0,3125 0,2877 0,0248
6 963 0,3750 0,3300 0,0450
7 981 0,4375 0,4681 0,0306
8 998 0,5000 0,6026 0,1026
9 1007 0,5625 0,6700 0,1075
10 1010 0,6250 0,6915 0,0665
11 1015 0,6875 0,7257 0,0382
12 1018 0,7500 0,7454 0,0046
13 1023 0,8125 0,7764 0,0361
14 1035 0,8750 0,8413 0,0337
15 1048 0,9375 0,8962 0,0413
16 1063 1,0000 0,9406 0,0594

La máxima desviación es 0,1207. El valor crítico para =0,05


=0,05 para D16 es
0,328 como puede obtenerse en la hoja adjunta de Excel, como 0,1207<0,328 no
puede rechazarse la hipótesis nula.

Prueba de chi-cuadrado
cuadrado para el análisis de tablas de contingencia
con dos criterios de clasificación

Muchas veces surge la necesidad


necesidad de determinar si existe alguna relación entre
dos rasgos diferentes en los que una población ha sido clasificada y en donde cada
rasgo ha sido subdividido en cierto número de categorías. Cuando una muestra se
clasifica de esta manera recibe el nombre
nombre de tabla de contingencia de 2 criterios de
clasificación. Es posible analizar tablas que contengan más de dos clasificaciones.

El análisis de una tabla de este tipo supone que las dos clasificaciones son
independientes. Esto es, bajo la hipótesis nula de independencia se desea saber si existe
una diferencia entre las frecuencias que se observan y las correspondientes frecuencias
que se esperan. La prueba chi-cuadrada
chi da los medios apropiados.

Sea n una muestra que se clasifica según A y B, cada uno de los cuales tiene r y c
categorías. Además, sea Nij el número de observaciones de las categorías i, j de A y B.
Se pueden tabular los datos en una matriz de r x c. El total del i-ésimo
ésimo renglón es la
frecuencia de la i-ésima
ésima categoría de A, de manera similar para las columnas. Sea
53
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Sea pij la probabilidad de que un objeto seleccionado al azar se encuentre en la


categoría (i, j), sea pi. la marginal de i de A y p.j la marginal de j de B. Si las
características son independientes, la probabilidad conjunta es igual al producto de las
marginales

bajo la hipótesis nula, el estadístico

cuando n es grande.

Sin embargo, la mayoría de las veces no se conocen las probabilidades


marginales, y de esta forma se estiman con base en una muestra.

Afortunadamente, la prueba
prueba de bondad de ajuste de la chi chi-cuadrado
permanece como la estadística apropiada siempre que se empleen los estimados de
máxima verosimilitud y se reste un grado de libertad del total para cada parámetro
que se esté estimando. Dado que

existen r-1 parámetros


ámetros de filas y c-1
c 1 de columnas a ser estimados.

De esta forma el número de grados de libertad será

rc-1-(r-1)-(c-1)=rc-r--c+1=r(c-1)-(c-1)=(r-1)(c-1)

Puede demostrarse que los estimadores de máxima verosimilitud son


54
Página

al sustituir se obtiene

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Ejercicio 5

Una compañía evalúa una propuesta para fusionarse con una corporación. El
consejo de directores desea muestrear la opinión de los accionistas para determinar si
esta es independiente del número de acciones que posee cada uno. Una muestra
aleatoria dee 250 accionistas da los siguientes resultados:

Número de Opinión
acciones A En contra Indecisos Totales
favor
Menos de 200 38 29 9 76
200-1000 30 42 7 79
Más de 1000 32 59 4 95

Totales 100 130 20 250

Con base en esta información, ¿existe alguna razón para dudar de que la
opinión con respecto a la propuesta es independiente del número de acciones que posee
el accionista? Úsese =0,1.

Solución

Formulamos la hipótesis nula de independencia de los dos caracteres;


caracteres; es decir:

H0: pij = pi.p.j i=1,2,3; j=1,2,3.


Como las probabilidades marginales no se conocen, hay que estimarlas de la
muestra, en consecuencia, el estadístico
55

Número de Opinión
Página

Acciones A favor En contra Indecisos Totales


Menos de 38 29 9 76
200
200-1000 30 42 7 79
Más de 1000 32 59 4 95

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Totales 100 130 20 250

Sumas
1,9 2,80036437 1,40236842 6,10273279
0,08101266 0,0206037 0,07316456 0,17478092
0,94736842 1,86558704 1,70526316 4,51821862
Suma Total 10,7957323

El valor obtenido de la muestra para χ2=10,7957323. El valor crítico que se


obtiene en la distribución chi-cuadrado
chi es χ0,9;4= PRUEBA.CHI.INV(0,1;4)=
7,77943396. Como 10,795 > 7,779 el estadístico de prueba se encuentra dentro de la
región crítica y por tanto la hipótesis nula debe rechazarse.

56
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

UNIDAD 3

GENERACIÓN DE VARIABLES ALEATORIAS

3.1 Introducción

La generación de cualquier variable aleatoria se va a basar en la


generación
ración previa de una distribución uniforme (0,1), visto en el tema
anterior. En este capítulo vamos a estudiar ciertas transformaciones o
algoritmos que nos van a transformar dichos números generados en valores
de otras distribuciones.

Buscamos métodos que


que nos permitan obtener valores de variables
aleatorias que sigan determinadas distribuciones de probabilidad a partir
de los números aleatorios generados, que siguen la distribución Uniforme en
el intervalo (0,1).

Hay cuatro métodos generales de generación


generación de variables aleatorias
y una serie de métodos particulares de las distintas distribuciones.

La facilidad de aplicación de dichos métodos, así como el coste


computacional asociado a los mismos, varía mucho según la familia de
variables aleatorias a las que se apliquen.

Normalmente existen varios algoritmos que se pueden utilizar para


generar valores de una determinada distribución, y diferentes factores que
se pueden considerar para determinar qué algoritmo utilizar en un caso
particular. Desafortunadamente
Desafortunadamente dichos factores suelen entrar en conflicto
unos con otros y a veces se ha de llegar a una solución de compromiso.
57

Algunos de estos factores son los siguientes:


Página

 Exactitud: se han de obtener valores de una variable con una


precisión dada. A veces se tiene
iene suficiente con obtener una
aproximación y otras no.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

 Eficiencia: el algoritmo que implementa el método de generación


tiene asociado un tiempo de ejecución y un gasto de memoria.
Elegiremos un método que sea eficiente en cuando al tiempo y a la
cantidadd de memoria requeridos.

 Complejidad: Buscamos métodos que tengan complejidad mínima,


siempre y cuando se garantice cierta exactitud.

 Robusted: el método tiene que ser eficiente para cualquier valor que
tomen los parámetros de la distribución que siga la variable
aleatoria.

 Facilidad de implementación.

Vea Anexo: Generación de variables aleatorias.

3.2 Variables aleatorias discretas

Muchas veces se desea resumir con un número el resultado de un


experimento aleatorio. En muchos de los ejemplos relativos
relativos a experimentos
aleatorios que han sido considerados hasta ahora, el espacio muestral es
sólo una descripción de los posibles resultados. En algunos casos tales
descripciones son suficientes, pero en otros se hace útil asociar un número
con cada resultado del espacio muestral. Es así como se llega a la
definición de variable aleatoria.
aleatoria

Una variable aleatoria X es una función que asigna un número real


a cada resultado en el espacio muestral  de un experimento aleatorio. El
conjunto de los posibles valores
valo de la variable aleatoria X se denomina
rango. Diremos que la variable aleatoria es discreta si su rango es finito (o
infinito contable).
58

A menudo el interés recae en la probabilidad de que una variable


Página

aleatoria X tome un valor particular x, esto se se denota P(P(X=x). La


distribución de probabilidad de X será entonces la descripción del conjunto
de valores posibles de X (rango de X),), junto con la probabilidad asociada
con cada uno de estos valores. La distribución de probabilidad de una

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

variable aleatoria
ia es a menudo el resumen más útil de un experimento
aleatorio.

Diremos que la función p(x)=P(X=x)


=x) que va del conjunto de valores
posibles de la variable aleatoria X al intervalo [0, 1] es la función
distribución de probabilidad para X si y sólo si se satisfacen las siguientes
propiedades:

0  p(x)  1 para todo x

px 1
x

Se define la distribución acumulada F(x)


(x) para la variable aleatoria
X como

F(x) = P(X  x) =  p t 
tx
Ejemplo 1

Experimento aleatorio: se lanza una moneda 3 veces


 = {ccc, ccs, csc, css, scc, scs, ssc, sss }
Sea X : # caras observadas

x 0 1 2 3
p(x) 1 3 3 1
8 8 8 8

La distribución anterior es una distribución de probabilidades para


X en efecto 0  p(x)  1 para todo x (x = 0, 1, 2 y
la variable aleatoria X,
3) y además  p x  1. Para determinar la distribución a acumulada de
x
probabilidad observe que

P(X  0) = P(X = 0) = 1
8
59
Página

P(X  1) = P(X = 0) + P(X = 1) = 1 +3 = 1


8 8 2

P(X  2) = P(X = 0) + P(X = 1) + P(X = 2) = 1 +3 +3 =7


8 8 8 8

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

P(X  3) = P(X= 0) + P(X= 1) + P(X= 2) + P(X= 3) = 1 + 3 + 3 + 1 =1


8 8 8 8
Se tiene entonces,

x 0 1 2 3
F(x) 1 1 7 1
8 2 8

Si X es una variable aleatoria, y el experimento aleatorio que


determina el valor de X se repite muchas veces, entonces se obtiene una
secuencia de valores para X.. A partir de esta secuencia de valores se
puede identificar el valor promedio o valor esperado de la variable
aleatoria X,, que denotamos EX , y se define enn la forma siguiente:

EX =  xp x
x

Propiedades:
E(k)=k
E(kX)=kE(X)
E(XY)=E(X)E(Y)
E(Y)
E(g(X))=g(x)p(x)
g(x)p(x)
E(XY)=E(X)E(Y)=XY
e) Si X y Y son independientes entonces E(XY)=E(X)E(Y)=

Para el ejemplo dado, EX =  xp x = 0 p0   1p1  2p2  3p3


x
1 3 3 1 12 3
= 0 .  1.  2.  3 .  
8 8 8 8 8 2
A veces, el interés es determinar la variabilidad de la variable
aleatoria. Definimos entonces la varianza de la variable aleatoria X,
denotada VX , ó σ2 mediante la siguiente ecuación:

V(X) = E[(X-E(X))2] y su forma reducida es:


60

 
Página

VX = E X2  EX2

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

 
donde, E X2 =  x2 p x
x

 
Para el ejemplo dado, E X2 = 0 2 p0   12 p1  22 p2  32 p3
1 3 3 1 24
= 0 .  1.  4.  9.   3
8 8 8 8 8
2
 3  12 9 3
Entonces, VX = 3     
 2 4 4
V(k)=0
V(kX)=k2V(X)
V(XY)=V(X)+V(Y)
Y)=V(X)+V(Y) si X y Y son independientes
V(aX+bY)= a2V(X)+b2V(Y)+2abCov(XY)
E((X X)(Y-Y)) = E(XY)-XY
donde Cov(XY) = E((X-

La desviación estándar de la variable aleatoria X es la raíz


cuadrada positiva de la varianza, es decir, σ = VX .

3.2 Variables aleatorias continuas

Una variable aleatoria X es continua si su función de distribución es


una función continua.

En la práctica, se corresponden con variables asociadas con


experimentos en los cuales la variable medida puede tomar cualquier valor
en un intervalo: mediciones biométricas, intervalos de tiempo, áreas, etc.

Ejemplos:

Resultado de un generador de números aleatorios entre 0 y 1. Es el


ejemplo más sencillo que podemos considerar, es un caso particular de una
familia de variables aleatorias que tienen una distribución uniforme en un
intervalo [a, b].]. Se corresponde con la elección al azar de cualquier valor
61

entre a y b.
Página

Estatura de una persona elegida al azar en una población. El valor


que se obtenga serárá una medición en cualquier unidad de longitud (m, cm,
etc.) dentro de unos límites condicionados por la naturaleza de la variable.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

El resultado es impredecible con antelación, pero existen intervalos de


valores más probables que otros debido a la distribución
distribución de alturas en la
población. Más adelante veremos que, generalmente, variables biométricas
como la altura se adaptan un modelo de distribución denominado
distribución Normal y representado por una campana de Gauss.

Dentro de las variables aleatorias continuas tenemos las variables


aleatorias absolutamente continuas.
continuas

Diremos que una variable aleatoria X continua tiene una distribución


absolutamente continua si existe una función real f,, positiva e integrable en
el conjunto de números reales, tal que la
la función de distribución F de X se
puede expresar como

Una variable aleatoria con distribución absolutamente continua, por


extensión, se clasifica como variable aleatoria absolutamente continua.

En el presente manual, todas las variables aleatorias co


continuas con
las que trabajemos pertenecen al grupo de las variables absolutamente
continuas,, en particular, los ejemplos y casos expuestos.
expuestos

Vea archivo Unidad 3

62
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

UNIDAD 4

LENGUAJES DE SIMULACIÓN

4.1 Lenguajes de simulación y sim


simuladores.

Muchas propiedades en programación de modelos de simulación


discreta, tales como:

 Generadores de números aleatorios.


 Generadores de variables aleatorias.
 Rutinas del siguiente evento.
 Avance de tiempo.
 Recopilación de estadísticas.
 Reportes, etc,
et

Han sido desarrolladas en lenguajes especiales orientados a


simulación, dejando la ardua labor de programación en FORTRAN, C o
PASCAL a lenguajes de simulación, los que incluyen facilidades de
animación. Actualmente, existen cerca de 100 software de ssimulación,
disponibles en una variedad de computadores.
computadores

LENGUAJES DE SIMULACIÓN Y LENGUAJES DE PROPÓSITOS


GENERALES

La importancia de escribir modelos


modelos de simulación en lenguajes de
propósitos generales como FORTRAN radica en:
 Permite conocer los detalles íntimos de la simulación.
 Es imprescindible, cuando no se dispone de software de simulación.
 Algunos modelos en lenguajes de simulación permiten iinterfaces con
63

lenguajes generales, específicamente FORTRAN (ocurre con SLAM ll,


SIMAN, GPSS).
Página

Por otra parte, los lenguajes de simulación ofrecen mayores ventajas,


porque:

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

 Automáticamente proveen muchas de las facilidades


necesarias en la simulación del modelo.
 Proveen un natural ambiente para modelamiento de la
simulación.
 Son fáciles de usar.
 Proveen una gran interacción entre edición, depuración y
ejecución. Alcanzando algunos de ellos implantación de la
ingeniería de software.

CLASIFICACIÓN DE LOS SOFTWARE


TWARE PARA SIMULACIÓN

Existen en el mercado dos grandes clases de software para


simulación: los lenguajes y los simuladores. Un lenguaje de sim
simulación es un
software de simulación de naturaleza general y posee algunas
características especiales para ciertas aplicaciones, tal como ocurre con
SLAM 11 y SIMAN con sus módulos de manufactura. El modelo es
desarrollado usando las instrucciones adecuadas
adecuadas del lenguaje y
permitiendo al analista un gran control para cualquier clase de sistema.

Un simulador (o de propósitos especiales) es un paquete de computadoras


que permite realizar la simulación para un ambiente específico, no
requiriendo esfuerzo en programación.
programación. Hoy en día existen simuladores
para ambientes de manufactura y sistemas de comunicación permitiendo un
menor tiempo en el desarrollo del modelo, así como también contar con el
personal sin experiencia en simulación.

Los simuladores son actualmente


actualmente muy utilizados para análisis en alto nivel,
requiriéndose únicamente agregar detalles en un cierto nivel, puesto que lo
demás es estándar.

CACI Products Company autor de SIMSCRIPT 11.5 es también autor de los


simuladores SIMFACTORY 11.5, NETWORK 11.5 11.5 y COMNET 11.5, muy
utilizados en estos últimos tiempos para simulaciones de sistemas de
64

manufacturas, redes de computadoras y redes de telecomunicaciones.


Página

Para procesar transacciones en espera de un ordenamiento, un lenguaje de


simulación debe proporcionar
proporcionar un medio automático de almacenamiento y

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

recuperación de estas entidades. Atendiendo a la orientación del


modelamiento de una simulación discreta, existen tres formas:
1. Programación de eventos.
2. Procesos.

3. Examinación de actividades.

Una programación
gramación al evento es modelada, identificando las
características del evento y luego se escriben un juego de rutinas para los
eventos con la finalidad de describir detalladamente los cambios que
ocurren en el tiempo en cada evento. Lenguajes como SIMSCRIP
SIMSCRIPT 11.5 y
SLAM 11 están orientados al evento.

Una interacción al proceso es una secuencia de tiempos


interrelacionados, describiendo la experiencia de una entidad a través del
sistema. Por ejemplo, en un modelo de colas esta "historia" se traduce en el
pasoo del tiempo del ingreso a la cola, ingreso al servidor, paso del tiempo
en el servicio y fin del servicio.
servicio GPSS, SIMAN y SIMNET son orientados al
proceso.

En el examen de actividades, el modelador define las condiciones


necesarias al empezar y finalizar cada actividad en el sistema. El tiempo es
avanzado en iguales incrementos de tiempo y en cada incremento de
tiempo, las condiciones son evaluadas para determinar si alguna actividad
puede estar empezando o terminando. El ESCL, es un lenguaje de
simulación muy popular en Europa y fue desarrollado en FORTRAN.

GASP IV
Es una colección de subrutinas FORTRAN, diseñadas para facilitar la
simulación de secuencia
ecuencia de eventos. Cerca de 30 subrutinas y funciones que
proveen numerosas facilidades, incluyendo:
 Rutinas de avance del tiempo,
 Gestión de listas de eventos futuros,
 Adición y remoción de entidades.
65

 Colección de estadísticas.
Página

 Generadores de variables aleatorias.


 Reporte estándar.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

El programador únicamente provee un program main, una rutina de


actualización, rutinas de eventos, generadores de reportes personalizados
y una subrutina denominada EVNTS. El programa main debe incluir la
sentencia CALL GASP; P; siendo GASP una subrutina que determina el
eminente evento, invocando a EVNTS escrita por el usuario y obtiene el
índice NEXT.

GASP IV es un lenguaje de simulación desarrollado por Alan B.


Pristker y N. Hurst en 1973. Es un lenguaje híbrido porque pued
puede ser usado
para programadores de simulación discretos, continuos y combinados;
siendo el primero en integrar completamente estos dos ambientes de
función del tiempo. GASP IV es un derivado del GASP II, y se diferencia
por la definición del evento espacio-estado
espacio estado (state space event).

SIMSCRIPT II.5
Desarrollado en la RAND Corporation por H. Markowtz en los inicios
de los sesenta. SIMSCRIPT 11.5. Es Es un lenguaje de simulación con
orientación al evento y al proceso, es híbrido porque posee facilidades
para simulación de sistemas discretos y continuos. Un programador
SIMSCRIPT 11.5 consiste de las siguientes partes:
 Preamble
 Main program
 Rutinas de eventos.
ev
 Rutinas ordinarias.

SIMSCRIPT 11.5, producido por CACI Products Company (La Jolla,


California), fue utilizado en el pasado en grandes y complejas simulaciones,
como es el caso de los modelos no orientados a colas; por ejemplo modelos
de combates militares.
ilitares. Se encuentra disponible en versión PC destacando su
ambiente de S11VIGRAPHICS.

SIMSCRIPT 11.5 está basado en entidades, atributos y conjuntos. Visualiza


el mundo a ser simulado como un conjunto de entidades que pueden ser
descritas a través de sus
us atributos y los eventos que aparecen en el tiempo.
66
Página

SIMAN/Cinema
La versión original del SIMAN (Simulation and Analysis) fue
desarrollada por Dennis Pegden, en la Universidad de Alabama, cuando
era líder del grupo de desarrollo de la versión original de SLAM (basada

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

en los software de GASP y Q~GER-r


Q~GER r de Pristker and Associates). Más
tarde, Pegden inicia su trabajo en el Pennisylvania State Unive
University donde
lo diseña como un lenguaje de modelamiento para propósitos generales,
incluyendo facilidades de manufactura muy útiles en modelamiento de
sistemas complejos de manufactura.

Desde su implementación inicial en 1984, ha sido continuamente refinad


refinado
por System Modeling Corporation, y en 1998 y 1989 el lenguaje fue
completamente rediseñado dando origen a SIMAN/Cinema.

El ambiente de modelamiento en SIMAN se desarrolla entre el Modeling y


el Experiment; en el primero se describe las componentes del ssistema y sus
interacciones y en el segundo se definen las condiciones del experimento
(longitud de la corrida, condiciones iniciales).

SIMAN modela un sistema discreto usando la orientación al proceso; es


decir, en un modelo de sistema particular, se estudian
estudian las entidades que se
mueven a través del sistema. Una entidad para SIMAN es un cliente, un
objeto que se mueve en la simulación y que posee características únicas
conocidas como atributos. Los procesos denotan la secuencia de
operaciones o actividades a través del que se mueven las entidades, siendo
modeladas por el diagrama de bloques.

Usted construye un diagrama de bloque en un flowchart gráfico,


seleccionando y combinando bloques. Después, interactivamente, usando un
editor especial se activa el generador
generador automático de las sentencias del
modelo desde el ambiente gráfico. Los bloques de SIMAN se clasi
clasifican en
10 tipos básicos.

SLAM II

El SIMPSCRIPT y el GASP IV son los lenguajes de programación de


eventos más destacados.
67

SLAM es un descendiente de GASP IV que ofrece también recursos de


Página

simulación de redes y continuos, estando ambos codificados en FORTRAN.


Desde los lenguajes orientados a los procesos, existen representación de
modelos en bloques como GPSS y SIMAN y los basados en redes como Q Q-
GERT y SLAM.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Con la llegada del PERT, se plantearon situaciones de redes complejas, en


tanto a ramificación por efecto de una decisión y loop para conseguir que
varias actividades se realicen de modo repetitivo, trayendo consigo el
desarrollo del GERT (Graphical Evaluation and Review Technique), por
Pritoker y Elaghraby; quienes lo aplicaron para el programa Apolo.

El lenguaje Q-GERT
GERT significó la respuesta al cálculo de estimación de
probabilidades de terminación en cada nodo y la distribución de tiempos y
costos para la realización de cualquier nodo, la estructura básica de un
modelo de simulación Q-GERT
Q GERT es una red compuesta de nodos y
actividades (bifurcaciones). SLAM es una variante de QGERT que ofrece
recursos de eventos de redes y discretos (y también simulación continua).

SLAM II (Simulation Languaje for Alternative Modeling) es un lenguaje de


simulación por el cual se pueden construir modelos
modelos con orientación al
proceso o al evento. SLAM fue desarrollado en 1979 por Dennis Pedge y
Alan Pritsker y es distribuido por Pritsker Corporation (indianapolis,
Indiana). La parte de SLAM que se orienta a los procesos emplea una
estructura reticular compuesta
compuesta por símbolos de nodos y ramas tales como
colas, servidores y puntos de decisión. Modelamiento significa incorporar
esos símbolos a un modelo de red que representa el sistema y en donde las
entidades (ítems) pasan a través de la red. SLAM contiene un pprocesador
que convierte la representación visual del sistema a un conjunto de
sentencias.

4.2 Aprendizaje y uso de un simulador

Vea manual de prácticas de la asignatura Simulación.

4.3 Casos prácticos de simulación


68

A partir de la problemática propia del


del aprendizaje a distancia, se
Página

exponen las Ventajas del uso de herramientas de simulación por una parte,
y de las herramientas multimedia como elemento de transmisión en el
proceso enseñanza-aprendizaje.
aprendizaje. En este trabajo se propone la integración
de las herramientas
amientas de simulación y multimedia para la enseñanza a

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

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.
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 orden
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.

Las herramientas de simulación

En el ámbito de la enseñanza de la Ingeniería de Sistem Sistemas y


Automática, las herramientas de simulación pueden ser aplicadas desde el
enfoque constructivista del “aprendizaje por descubrimiento guiado” para
conseguir un “aprendizaje significativo”.

4.3.1 Modelos
odelos de inventarios.
Modelos de inventario. Comúnmente los inventarios están
relacionados con la mantención de cantidades suficientes
suficientes de bienes
(insumos, repuestos, etc.), que garanticen una operación fluida en un sistema
o actividad comercial. La forma efectiva de manejar los inventarios es
minimizando su impacto adverso, encontrando un punto medio entre la poca
reserva y el exceso
ceso de reserva. Está actitud prevaleció en los países
industrializados de Occidente, incluso después de la segunda guerra
mundial, cuando Japón instauró con gran éxito el sistema (famoso ahora)
"Just in time", ambiente que requiere un sistema de producció
producción (casi) sin
inventario.
En la mayoría de las situaciones del mundo real, el manejo de
inventario involucra un número
número apreciable de productos que varían en
precio, desde aquellos relativamente económicos hasta los muy costosos. El
inventario representa realmente el capital ocioso, es natural que se ejerza
un control en aquellos artículos que sean responsables en el incremento
incremento en el
69

costo de capital. Empíricamente se ha comprobado que un pequeño número


Página

de productos del inventario son los que suelen incurrir en parte importante
del costo del capital, por ende, son los que deben estar sujetos a control
más estricto.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

4.3.2 Modelos de líneas de espera.


Las colas (líneas de espera) son parte de la vida diaria. Todos
esperamos en colas para comprar un boleto para el cine, hacer un depósito
en el banco, pagar en el supermercado, enviar un paquete por correo,
subir a un juego en la feria, etc. Nos hemos acostumbrado a esperas largas,
pero todavía nos
os molesta cuando lo son demasiado.

Sin embargo, tener que esperar no sólo es una molestia personal. El


tiempo que la población de un país pierde en colas es un factor importante
tanto en la calidad de vida como en la eficiencia de su economía. Por
ejemplo,
lo, antes de su disolución, la Unión Soviética era notoria por las
excesivas colas que sus ciudadanos solían tener que soportar solo para
comprar artículos básicos. Hoy en Estados Unidos se estima que las
personas pasan 37 mil millones de horas al año en líneas
líneas de espera. Si este
tiempo se usara de manera productiva significaría cerca de 20 millones de
personas-años
años de trabajo útil cada año.

Incluso estas asombrosas cifras no cuentan toda la historia del


impacto que causa la espera excesiva. También ocurr ocurren grandes
ineficiencias debido a otros tipos de espera que no son personas en una
Cola.

La Teoría de Colas es el estudio de la espera en las distintas


modalidades. Usa los modelos de colas para representar los tipos de
sistemas de líneas de espera (sistemas
(sistemas que involucran colas de algún tipo)
que surgen en la práctica. Las fórmulas para cada modelo indican cuál
debe ser el desempeño del sistema correspondiente y señalan la cantidad
promedio de espera que ocurrirá, en una gama de circunstancias.

Por lo tanto, estos modelos de líneas de espera son muy útiles para
determinar cómo operar un sistema de colas de la manera más efectiva.
Proporcionar demasiada capacidad de servicios para operar el sistema
implica costos excesivos; pero al no contar con suficiente
suficiente capacidad de
servicio la espera aumenta con todas sus desafortunadas consecuencias. Los
70

modelos permiten encontrar un balance adecuado entre el costo de servicio


Página

y la cantidad de espera.

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

UNIDAD 5

UNIDAD INTEGRADORA

5.1. CASO DE ESTUDIO

La experiencia
ia sugiere que el proyecto de Simulación consta de las
siguientes etapas:

 Debe comprenderse que el orden en que se realizan estas 10


etapas permanece abierto a discusión.
 La estructura de la secuencia de etapas que se presenta
obedece a los resultados de la experiencia.
 Con toda seguridad, cualquier procedimiento de este tipo
resulta sumamente arbitrario en su naturaleza y la posibilidad
de juzgarlo sólo existe en un plano puramente pragmático.

71
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
INSTITUTO TECNOLÓGICO SUPERIOR DE CENTLA
Academia
mia de Informática y Sistemas Computacionales

Vea Archivo Unidad 5.

5.2. Validación del sistema d


de simulación.

A través de esta etapa es valorar las diferencias entre el


funcionamiento del simulador y el sistema real que se está tratando de
simular. Las formas más comunes de validar un modelo son:

1. La opinión de expertos sobre los resultados de la


la simulación.
2. La exactitud con que se predicen datos históricos.
3. La exactitud en la predicción del futuro.
4. La comprobación de falla del modelo de simulación al utilizar datos
que hacen fallar al sistema real.
5. La aceptación y confianza en el modelo de lala persona que hará uso
de los resultados que arroje el experimento de simulación.

Vea Archivo Unidad 5.


72
Página

Asignatura: Simulación
Material compilado con fines académicos, se prohíbe su reproducción total o parcial sin autorización
de cada autor.
SIMULACIÓN

TEMA 12.- CONCEPTOS BÁSICOS.


12.1. Introducción.
12.2. Clasificación de sistemas.
12.3. Clasificación de modelos.
12.4. Modelos de simulación de eventos discretos.
12.5. El proyecto de simulación.
12.6. Ventajas y desventajas de la simulación.
12.7. Aplicaciones empresariales de la simulación.
12.8. El Programa de Simulación “ARENA”.

12.1. Introducción.
La simulación digital es una técnica que permite imitar (o
simular) en un ordenador el comportamiento de un sistema físico
o teórico según ciertas condiciones particulares de operación.

El uso de la simulación como metodología de trabajo es una


actividad muy antigua, y podría decirse que inherente al proceso
de aprendizaje del ser humano.

Para poder comprender la realidad y toda la complejidad que un


sistema puede conllevar, ha sido necesario construir
artificialmente objetos y experimentar con ellos dinámicamente
antes de interactuar con el sistema real.

La simulación digital puede verse como el equivalente electrónico


a este tipo de experimentación.
12.2. Clasificación de sistemas.

Un sistema puede definirse como una colección de objetos o


entidades que interactúan entre sí para alcanzar un cierto
objetivo.

Estado de un sistema: conjunto mínimo de variables necesarias


para caracterizar o describir todos aquellos aspectos de interés
del sistema en un cierto instante de tiempo. A estas variables las
denominaremos variables de estado.

Atendiendo a la relación entre la evolución de las propiedades de


interés y la variable independiente tiempo, los sistemas se
clasifican en:
.

• Sistemas Continuos: Las


variables del estado del
sistema evolucionan de
modo continuo a lo largo
del tiempo.

Figura 12.1. Ejemplo de sistema continuo.

Figura 12.2. Evolución de una variable de un sistema continuo.


• Sistemas Discretos. Se caracterizan porque las propiedades
de interés del sistema cambian únicamente en un cierto
instante o secuencia de instantes, y permanecen constantes
el resto del tiempo. La secuencia de instantes en los cuales
el estado del sistema puede presentar un cambio, obedece
normalmente a un patrón periódico (figura 12.3).

Figura 12.3. Evolución de una variable de


un sistema discreto.

• Sistemas orientados a eventos discretos. Al igual que los


sistemas discretos, se caracterizan porque las propiedades de
interés del sistema cambian únicamente en una secuencia de
instantes de tiempo permaneciendo constantes el resto del
tiempo. La secuencia de instantes en los cuales el estado del
sistema puede presentar un cambio, obedece a un patrón
aleatorio (figura 12.4).

Figura 12.4. Evolución de una variable de un


sistema orientado a eventos discretos.
• Sistemas combinados. Aquellos que combinan subsistemas
que siguen filosofías continuas o discretas, respectivamente.
Es el caso de los sistemas que poseen componentes que
deben ser necesariamente modelados según alguno de
dichos enfoques específicos.

12.3. Clasificación de modelos.


La descripción de las características de interés de un sistema se
conoce como modelo del sistema, y el proceso de abstracción
para obtener esta descripción se conoce como modelado.

Existen muchos tipos de modelos (modelos físicos, modelos


mentales, modelos simbólicos) para representar los sistemas en
estudio. Utilizaremos modelos simbólicos matemáticos como
herramienta para representar las dinámicas de interés de cualquier
sistema en un entorno de simulación digital.

Los modelos simbólicos matemáticos mapean las relaciones


existentes entre las propiedades físicas del sistema que se
pretende modelar en las correspondientes estructuras
matemáticas. El tipo de formalización matemática que se utilice
va a depender de las características intrínsecas de las dinámicas
de interés que se quieran representar.

La descripción en términos matemáticos de un sistema real no es


una metodología de trabajo propia de la simulación digital, sino
que es inherente a la mayoría de las técnicas que se utilizan para
solventar cualquier tipo de problema, las cuales suelen seguir
unas pautas que, de modo general, se pueden resumir en:

• Reconocimiento del problema.


• Formulación del modelo matemático.
• Solución del problema matemático.
• Interpretación de los resultados matemáticos en el contexto
del problema real.
Consideraciones que se deben tener en cuenta para garantizar una
representación eficiente del sistema real:

• Un modelo se desarrolla siempre a partir de una serie de


aproximaciones e hipótesis y, consecuentemente, representa
tan sólo parcialmente la realidad.
• Un modelo se construye para una finalidad específica y debe
ser formulado para que sea útil a dicho fin.
• Un modelo tiene que ser por necesidad un compromiso entre
la simplicidad y la necesidad de recoger todos los aspectos
esenciales del sistema en estudio.

Un buen modelo debe:

• Representar adecuadamente aquellas características del


sistema que son de nuestro interés.
• Ser una representación abstracta de la realidad lo
suficientemente sencilla como para facilitar su
mantenimiento, adaptación y reutilización.

Modelos Estáticos frente a Modelos Dinámicos

Los Modelos Estáticos suelen utilizarse para representar el


sistema en un cierto instante de tiempo; por tanto, en su
formulación no se considera el avance del tiempo.

STOCK = Stock inicial + Material entrada – Material consumido

Los Modelos Dinámicos permiten deducir cómo las variables de


interés del sistema en estudio evolucionan con el tiempo.

Evolución del STOCK = Flujo de entrada – Flujo de salida

dS
= Fi ( t ) − Fo ( t )
dt
S( k + 1 ) = S( k ) + Fi ( k ) − Fo ( k )
Modelos Deterministas respecto a Modelos Estocásticos.

Un modelo se denomina Determinista si su nuevo estado puede


ser completamente definido a partir del estado previo y de sus
entradas. Es decir, ofrece un único conjunto de valores de salida
para un conjunto de entradas conocidas.

Los Modelos Estocásticos requieren de una o más variables


aleatorias para formalizar las dinámicas de interés. En
consecuencia, el modelo no genera un único conjunto de salidas
cuando es utilizado para realizar un experimento, sino que los
resultados son utilizados para estimar el comportamiento real del
sistema.

Modelos Continuos frente a Modelos Discretos.

Los Modelos Continuos se caracterizan por representar la


evolución de las variables de interés de forma continua. En
general suelen utilizarse ecuaciones diferenciales ordinarias si se
considera simplemente la evolución de una propiedad respecto al
tiempo, o bien ecuaciones en derivadas parciales si se considera
también la evolución respecto a otras variables adicionales.

De modo análogo a la definición de los modelos continuos, los


Modelos Discretos se caracterizan por representar la evolución de
las variables de interés de forma discreta.
12.4. Modelos de simulación de eventos discretos.
Los Modelos de Eventos Discretos son modelos dinámicos,
estocásticos y discretos en los que las variables de estado cambian
de valor en instantes no periódicos del tiempo. Estos instantes de
tiempo se corresponden con la ocurrencia de un evento.

Un evento se define como una acción instantánea que puede


cambiar el estado de un modelo.

RECEPCIÓN PROCESADO
EXPEDICIÓN
DE ÓRDENES DE ÓRDENES

En promedio se reciben
10 órdenes al día: Tiempo de proceso:
- Ordinarias (40%) - Ordinarias (2 horas)
- Prioritarias (60%) - Prioritarias (4 horas)

Figura 12.5. Esquema del procesado de órdenes.

Los parámetros más significativos del sistema son:

• Hay 4 trabajadores por cada turno diario de 8 horas.


• Se trabaja desde las 9 de la mañana hasta las 5 de la tarde.
No obstante, la jornada laboral se alarga si no ha sido
posible expedir todas las órdenes recibidas a lo largo del día.
• Sólo se aceptan órdenes hasta las 13 horas.
• En promedio, se reciben 10 órdenes cada día.
• Hay dos tipos de órdenes, las ordinarias (el 40%) y las
prioritarias (el 60% restante).
• En promedio, una orden prioritaria requiere 4 horas de
proceso, mientras que una ordinaria sólo 2 horas.
12.4.1. Simulación del Modelo Estático.

órdenes horas horas


órdenes ordinarias = 4 ×2 =8
día orden día
órdenes horas horas
órdenes prioritarias = 6 ×4 = 24
día orden día
horas
capacidad necesaria = 8 + 24 = 32
día
trabajador es horas horas
capacidad disponible = 4 ×8 = 32
día trabajador día

capacidad necesaria 32
porcentaje de utilización = × 100 = × 100 = 100%
capacidad disponible 32

12.4.2. Simulación Manual del Modelo Orientado a Eventos Discretos.

Orden es
expedida

llegada de
una orden

NO Hay órdenes SI
En la cola

NO 4 trabajadores SI
ocupados
Trabajador Quitar una
en espera orden de
de órdenes la cola
Se inicia el La orden
proceso de entra
la orden en cola

Se inicia el
Figura 12.6. Diagrama de flujo del evento de proceso de
llegada de una orden. la orden

Figura 12.7. Diagrama de flujo del evento de


expedición de una orden.
Tabla 12.1. Distribución de probabilidades.
Órdenes / Probabilidad Probabilidad Números
Hora (%) Acumulada Aleatorios
1 40 40 00 – 39
2 30 70 40 – 69
3 20 90 70 – 89
4 10 100 90 – 99

Tabla 12.2. Distribución de probabilidades.


Tipo de Probabilidad Probabilidad Números
Orden (%) Acumulada Aleatorios
Ordinaria 40 40 00 – 39
Prioritaria 60 100 40 – 99

Tabla 12.3. Resumen de la simulación del proceso de llegada de órdenes.


Número Número de Numero Tipo de
Hora
Aleatorio llegadas Aleatorio orden
9 horas 54 2 02 Ordinaria
38 Ordinaria
10 horas 12 1 11 Ordinaria
11 horas 36 1 78 Prioritaria
12 horas 60 2 21 Ordinaria
47 Prioritaria
13 horas 90 4 92 Prioritaria
50 Prioritaria
82 Prioritaria
44 Prioritaria

9 10 11 12 13 14 15 16 17 18 19 20

Figura 12.8. Diagrama de la simulación manual.


Tabla 12.4. Tabla de la simulación manual del procesado de órdenes.
Número Tipo de Tipo de Número Número en Tiempo Tiempo en
Hora
de orden orden evento en cola sistema en cola el sistema
9 1 Ordinaria Llegada 0 1 - -
9 2 Ordinaria Llegada 0 2 - -
10 3 Ordinaria Llegada 0 3 - -
11 1 Ordinaria Expedición 0 2 - 2 h.
11 2 Ordinaria Expedición 0 1 - 2 h.
11 4 Prioritaria Llegada 0 2 - -
12 3 Ordinaria Expedición 0 1 - 2 h.
12 5 Ordinaria Llegada 0 2 - -
12 6 Prioritaria Llegada 0 3 - -
13 7 Prioritaria Llegada 0 4 - -
13 8 Prioritaria Llegada 1 5 - -
13 9 Prioritaria Llegada 2 6 - -
13 10 Prioritaria Llegada 3 7 - -
14 5 Ordinaria Expedición 2 6 - 2 h.
15 4 Prioritaria Expedición 1 5 - 4 h.
16 6 Prioritaria Expedición 0 4 - 4 h.
17 7 Prioritaria Expedición 0 3 - 4 h.
19 8 Prioritaria Expedición 0 2 1 h. 5 h.
19 9 Prioritaria Expedición 0 1 2 h. 6 h.
20 10 Prioritaria Expedición 0 0 3 h. 7 h.

2 + 2 + 2 + 2 horas horas
tiempo de ciclo promedio para órdenes ordinarias = =2
4 órdenes orden

4 + 4 + 4 + 5 + 6 + 7 horas horas
tiempo de ciclo promedio para órdenes prioritarias = =5
6 órdenes orden

0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 2 + 3 horas horas
tiempo promedio en la cola = = 0 ,6
10 órdenes orden

tiempo máximo en la cola = 3 horas

7 órdenes a tiempo
nivel de servicio promedio = × 100 = 70%
10 órdenes

3 trabajadores han tenido que trabajar un total de 6 horas extras para completar las
órdenes
12.4.3. Simulación digital mediante un lenguaje de propósito general.

12.4.4. Simulación mediante un Entorno de Simulación.

Figura 12.9. Interfaz gráfico de modelado en el simulador Arena.


12.5. El proyecto de simulación.

Tabla 12.5. Etapas de un proyecto de simulación.


Etapa Descripción
Formulación del problema. Define el problema que se pretende estudiar. Incluye por
escrito sus objetivos.
Diseño del modelo Especificación del modelo a partir de las características de
conceptual. los elementos del sistema que se quiere estudiar y sus
interacciones teniendo en cuenta los objetivos del problema.
Recogida de datos. Identificar, recoger y analizar los datos necesarios para el
estudio.
Construcción del modelo. Construcción del modelo de simulación partiendo del
modelo conceptual y de los datos.
Verificación y validación. Comprobar que el modelo se comporta como es de esperar
y que existe la correspondencia adecuada entre el sistema
real y el modelo.
Análisis. Analizar los resultados de la simulación con la finalidad de
detectar problemas y recomendar mejoras o soluciones.
Documentación. Proporcionar documentación sobre el trabajo efectuado.
Implementación. Poner en práctica las decisiones efectuadas con el apoyo del
estudio de simulación.
12.6. Ventajas y desventajas de la simulación.
• Permite analizar el efecto sobre el rendimiento global de un
sistema, de pequeños cambios realizados en una o varias de
sus componentes
• A partir de la experimentación con un modelo, es posible
analizar los efectos sobre el sistema real de cambios
organizativos, o de cambios en la gestión de la información.
• El análisis del modelo del sistema puede permitir la
sugerencia de posibles mejoras del sistema real, así como
detectar las variables más influyentes en el rendimiento del
mismo.
• Permite la experimentación en condiciones que podrían ser
peligrosas o de elevado coste económico en el sistema real.
• La simulación suele ser utilizada también con una
perspectiva pedagógica para ilustrar y facilitar la
comprensión de los resultados que se obtienen mediante la
técnicas analíticas.

En resumen:

• Permite responder muy satisfactoriamente a preguntas del


tipo “qué ocurriría si realizamos este cambio en ...”
• Contribuye a la reducción del riesgo inherente a la toma de
decisiones.

Inconvenientes:

1. Soluciones no exactas.
2. Existe el riesgo de tomar malas decisiones basadas en
modelos de simulación que no han sido validados y
verificados adecuadamente.
12.7. Aplicaciones empresariales de la simulación.
Procesos de fabricación. Fue una de las primeras áreas
beneficiadas por estas técnicas. La simulación se emplea tanto
para el diseño como para la ayuda a la toma de decisiones
operacionales.

Figura 12.10. Ejemplos de modelos de simulación para el análisis y


mejora de procesos productivos.

Logística. La simulación contribuye de forma significativa a la


mejora de los procesos logísticos en general. Dentro de esta área,
se incluye tanto una cadena completa de suministros, como la
gestión de inventarios de un almacén.

Figura 12.11. Ejemplos de aplicación de la simulación a procesos logísticos.


Transporte.

Figura 12.12. Aplicación de la simulación en el campo del transporte.

Sanidad. Se emplea tanto para la mejora de un departamento


hospitalario, como en la logística asociada a los transplantes o a
la coordinación médica de una región.

Figura 12.13. Aplicación al servicio de emergencias de un hospital.


Negocios (Business Processing). Simulación de los procesos
administrativos y de negocio de una empresa. En esta área están
teniendo mucho éxito los juegos de empresa en los que a través de
la simulación de los efectos de las decisiones que se van tomando
se puede entrenar a los directivos.

Figura 12.14. Aplicaciones en el campo de la simulación de negocios.

Servicios en general. Servicios públicos, gestión de restaurantes,


banca, empresas de seguros, etc.

Figura 12.15. Simulación de un banco y de un pequeño supermercado.


12.8. El Programa de Simulación “ARENA”.
En este apartado se hará un breve resumen de los métodos de
modelado de sistemas aplicando el programa de simulación
ARENA (de Systems Modeling Corporation, www.sm.com).
Utilizando ejemplos sencillos, se irá haciendo un recorrido por las
posibilidades del programa para simular cualquier tipo de sistema.

Elementos de un modelo de ARENA.

Entidades. La mayoría de las simulaciones incluyen


“entidades” que se mueven a través del modelo, cambian de
estado, afectan y son afectadas por otras entidades y por el estado
del sistema, y afectan a las medidas de eficiencia. Son los
elementos dinámicos del modelo, habitual mente se crean, se
mueven por el modelo durante un tiempo y finalmente abandonan
el modelo. En un proceso sencillo de fabricación, como el que
analizamos en el primer ejemplo, las entidades serán las piezas que
son creadas, pasan a la cola si la máquina que debe procesarlas está
ocupada, entran en la máquina cuando ésta queda libre, y
abandonan el sistema cuando salen de la máquina. En este caso
sólo habrá un tipo de entidades (aunque puede haber
simultáneamente varias “copias” de la entidad circulando por el
diagrama), pero en un caso general podría haber muchos tipos de
entidades distintas (y muchas copias de cada una de ellas), que
representarían distintos tipos de piezas, de diferentes
características, prioridades, rutas, etc.

Atributos. Para individualizar cada entidad, se le pueden unir


distintos “atributos”. Un atributo es una característica de todas las
entidades, pero con un valor específico que puede diferir de una
entidad a otra. Por ejemplo, en el primer ejemplo, nuestras
entidades (piezas), podrían tener unos atributos denominados Hora
de Llegada, Fecha de Entrega, Prioridad y Color para indicar esas
características para cada entidad individual. Arena hace un
seguimiento de algunos atributos de manera automática, pero será
necesario definir, asignar valores, cambiar y usar atributos
específicos, en cada sistema que se desee simular.

Variables (Globales). Una variable es un fragmento de


información que refleja alguna característica del sistema,
independientemente de las entidades que se muevan por el modelo.
Se pueden tener muy diferentes variables en un modelo, pero cada
una es única. Existen dos tipos de variables: las variables
prefijadas de Arena (número de unidades en una cola, número de
unidades ocupadas de un recurso, tiempo de simulación, etc.) y las
variables definibles por en usuario (número de unidades en el
sistema, turno de trabajo, etc.) Contrariamente a los atributos, las
variables no están unidas a ninguna entidad en particular, sino que
pertenecen al sistema en su conjunto. Las entidades pueden variar
el valor de las variables en algún momento, por ejemplo, la
variable Número de Unidades en el Sistema cambiará de valor
cuando se crea o se elimina una entidad.

Recursos. Las entidades compiten por ser servidas por


recursos que representan cosas como personal, equipo, espacio en
un almacén de tamaño limitado, etc. Una o varias unidades de un
recurso libre son asignadas a una entidad, y son liberadas cuando
terminan su trabajo. Una entidad podría recibir simultáneamente
servicio de varios recursos (por ejemplo una máquina y un
operario)

Colas. Cuando una entidad no puede continuar su


movimiento a través del modelo, a menudo porque necesita un
recurso que está ocupado, necesita un espacio donde esperar que le
recurso quede libre, ésta es la función de las colas. En Arena, cada
cola tendrá un nombre y podría tener una capacidad para
representar, por ejemplo, un espacio limitado de almacenamiento.

Acumuladores de estadísticas. Para obtener las medidas de


eficiencia finales, podría ser conveniente hacer un seguimiento de
algunas variables intermedias en las que se calculan estadísticas,
por ejemplo: el número total de piezas producidas, el tiempo total
consumido en la cola, el número de unidades que han pasado por la
cola (necesitaremos este valor para calcular el tiempo medio en
cola), el mayor tiempo invertido en la cola por una entidad, el
tiempo total en el sistema (en cola más procesado), el mayor
tiempo consumido en el sistema por una entidad, etc. Todos estos
acumuladores deberían ser inicializados a 0, y cuando sucede
algún hecho en el sistema, se tendrán que actualizar los
acumuladores afectados.

Eventos. Un evento es algo que sucede en un instante


determinado de tiempo en la simulación, que podría hacer cambiar
los atributos, variables, o acumuladores de estadísticas. En nuestro
ejemplo sencillo, sólo hay tres tipos de eventos: Llegada de una
nueva pieza al sistema, Salida de una pieza del sistema cuando
finaliza el tiempo de procesado en la máquina, y Final de la
simulación, cuando se cumple el tiempo previsto.

Reloj de la Simulación. El valor del tiempo transcurrido, se


almacena en una variable denominada Reloj de Simulación. Este
reloj irá avanzando de evento en evento, ya que al no cambiar nada
entre eventos, no es necesario gastar tiempo llegando de uno a
otro.

Ejemplo de modelado de un sistema sencillo

Para introducir los conceptos fundamentales de la metodología de


simulación con Arena, vamos a modelar un sistema simple: Se
trata de un sencillo sistema de atención al público. Los clientes
llegan a la instalación, si el servidor está ocupado atendiendo a otro
cliente, el que acaba de llegar se une a la cola. Si, por el contrario,
el servidor está libre, el cliente pasa inmediatamente a ser atendido.
Cuando el servidor acaba la atención a un cliente, comenzará a
servir al que estuviera en la primera posición de la cola, y si un
hubiera nadie, quedaría desocupado.
Servidor

Clientes en Cola
Cliente atendido

Vamos a suponer que los clientes llegan al sistema según una


distribución exponencial de media 5 minutos; el tiempo que el
servidor emplea en atender a un cliente se distribuye según una
función triangular de tiempo mínimo 1 minuto, modal 4 y máximo
8 minutos. Haremos una simulación de 15 minutos y calcularemos:

• El número total de clientes atendidos


• El valor medio del tiempo de espera en la cola. Si Di es el
tiempo que pasó en la cola el i-ésimo cliente, y N es el
número de clientes que pasaron por la cola, el valor medio
buscado será:
N

∑D
i =1
i

En Arena, este tipo de estadísticas se denominan Tally


Statistics, debido a que el valor de la estadística se va
calculando al mismo tiempo que las entidades van pasando
por el punto donde se calcula.
• El valor más alto del tiempo de espera en la cola.
• El número medio de clientes esperando en la cola. Este valor
se calcula como la media ponderada de las posibles
longitudes de la cola (0, 1, 2, ... ), ponderada por la
proporción de tiempo de simulación que en la cola había ese
número de clientes. Si llamamos Q(t) al número de clientes
en la cola en cualquier momento t, el valor medio buscado
será el área bajo la curva, dividido por la longitud de la
simulación 15.
15

∫ Q(t )
0

15

15

Este tipo de estadísticas persistentes en el tiempo (Time-


Persistent Variable) son comunes en simulación. Ésta indica
el número medio en la cola, lo que puede ser interesante para
asignar el espacio adecuado.
• El máximo número de clientes que ha habido en la cola en un
momento determinado.
• Los valores medio y máximo del tiempo que un cliente
permanece en el sistema (en la cola más siendo atendido). El
valor medio será una estadística de tipo Tally.
• La utilización del servidor, definida como el porcentaje del
tiempo en que el servidor está ocupado. Se trata de otra
estadística persistente en el tiempo, en este caso la función
B(t) solo puede tomar dos valores 0, cuando el servidor está
libre y 1 cuando está ocupado.
15

∫ B(t )
0

15 15

Para modelar el sistema con Arena, se irán arrastrando los módulos


adecuados al diagrama. En primer lugar se cogerá el modulo
“Arrive” con el que se modelará el proceso de llegada de los
clientes al sistema. Haciendo “doble clic” sobre el dibujo del
módulo aparecerá una ventana en la que se introducirán los datos
relativos a la llegada de los clientes al sistema:
Enter Data
Station Llegada

Arrival Data
Time Between EXPO(5)
Mark Time Attribute Tiempo de llegada
Leave Data
Connect Seleccionar

Para similar el proceso de


servicio, se arrastrará el módulo
“Server” al diagrama (si se seleccionó
la opción “Connect” en el módulo
anterior, el servidor aparecerá ya conectado al módulo de llegada).
Haciendo doble clic en el símbolo del servidor se podrán introducir
las características del proceso de atención a los clientes:

Enter Data
Station Atención al cliente

Arrival Data
Process Time TRIA(1,4,8)

Leave Data
Connect Seleccionar

Para modelar el proceso


de salida del sistema se
escogerá el módulo “Depart”,
en el que se introducirán los
datos relativos al proceso de
salida de los clientes de la instalación, además de algunas de las
estadísticas que se recopilarán:
Enter Data
Station Salida

Count
Individual Counter
Counter Clientes atendidos

Tally
Individual Tally
Tally Tiempo en Sistema
Attribute Tiempo de llegada

Las características de la simulación


se introducen en el módulo “Simulate”:

Project
Title Sistema Sencillo
Analyst Yo
Date 10-10-1962

Replicate
Length of Replication 15

Utilizando dos módulos “Animate” añadiremos dos gráficos,


que nos proporcionarán información sobre el número de clientes en
la cola y la ocupación del servidor.
Por último, se puede añadir el título “SISTEMA
SENCILLO”, para identificar el modelo. De esta manera, el
modelo esta listo para ser ejecutado.
EJEMPLO 1: SIMULACIÓN DE PROCESOS
DE SERVICIO CON ARENA
El Banco Nacional de Occidente piensa abrir una ventanilla de
servicio en automóvil para servicio a los clientes. La gerencia
estima que los clientes llegarán a una tasa de 15 por hora. El
cajero que estará en la ventanilla puede atender clientes a una tasa
de uno cada tres minutos.
Suponiendo que las llegadas son de Poisson y que el servicio es
exponencial, encuentre:
1. La utilización del cajero.
2. El número promedio en cola.
3. Número promedio en el sistema.
4. Tiempo promedio de espera en cola.
5. Tiempo promedio de espera en el sistema (incluyendo el
servicio).
Por la disponibilidad limitada de espacio y el deseo de
proporcionar un nivel de servicio aceptable, el gerente del banco
quisiera asegurar, con un 95% de certeza que los clientes no
tengan que esperar y sean atendidos inmediatamente. Para ello
tiene dos opciones: conseguir que el empleado de la ventanilla
trabaje más rápido, o poner más empleados conservando la misma
tasa de servicio. Evaluar las dos posibilidades.

EJEMPLO 2: SIMULACIÓN DE PROCESOS


DE FABRICACIÓN CON ARENA
Se trata de simular el proceso de fabricación de un producto que
está compuesto por 3 elementos: 2 tapas (la superior y la inferior,
y el interior).
Las tapas llegan a la línea de fabricación según un proceso de
Poisson de media 5 tapas/hora. El 50% son tapas superiores y el
otro 50% inferiores. Una vez recibidas, es necesario pintarlas,
para lo que pasan de una en una; por un proceso de pintura cuya
duración es independiente de la clase de tapa que se trate; se ha
comprobado que se distribuye según una triangular de tiempo
mínimo 6, medio 9 y máximo 12 minutos. Hay un control de
calidad del proceso de pintura que separa las tapas correctamente
pintadas (el 95%) de las defectuosas, las cuales vuelven al
proceso de pintura de nuevo.
Por otra parte, el elemento interior del producto final, llega a la
línea de fabricación empaquetado en cajas de 3 unidades,
siguiendo una distribución exponencial de media 64 minutos. El
proceso de desempaquetado lo realiza una máquina que tarda en
realizar el trabajo un tiempo que se distribuye según una uniforme
entre 30 y 50 minutos. Además, esta misma máquina separa las
unidades defectuosas (el 10%) y las envía a chatarra.
Posteriormente, se tiene una máquina que hace el ensamblaje de
una tapa superior, una inferior y un elemento interior para
constituir el producto final. El tiempo de ensamblado se
distribuye según una normal de media 15 minutos y varianza 10
minutos.

Se trata de simular el proceso para calcular cuantas unidades del


producto final es posible fabricar en 1 mes (30 días) con jornadas
de 8 horas.
EJEMPLO 3: SIMULACIÓN DE DISTINTOS
TRANSPORTES CON ARENA
Las piezas llegan al primer proceso de una en una, con una media
de 10 unidades/hora (Poisson); la mitad son de color ROJO y la
otra mitad AZULES. En el primer proceso se dispone de 2
máquinas iguales que realizar el trabajo tardando un tiempo que
se distribuye según una triangular de tiempos mínimo, modal y
máximo, de 5, 8 y 10 minutos respectivamente. Cuando finaliza
este primer trabajo, se mandan las piezas al departamento 2
utilizando un transporte directo (“ROUTE”) que tarda 12 minutos.
En el departamento 2, se agrupan las piezas en cajas de 6
unidades del mismo color. Las cajas son mandadas al
departamento 3 a través de una cinta transportadora
(“CONVEYOR”), de 100 metros de longitud y que se mueve a una
velocidad constante de 200 metros/hora.
En el departamento 3 se sacan las unidades de las cajas, y se
procesan de una en una en una máquina que tarda un tiempo que
se distribuye uniformemente entre 4 y 8 minutos. El producto ya
finalizado se mete otra vez en cajas de 10 unidades del mismo
color que se llevarán al almacén 1 si son rojas, y al almacén 2 si
son azules. Para ello se utilizará una carretilla eléctrica
(“TRANSPORTER”), que se moverá a una velocidad de 30
km/hora si va vacía, y 10 km/hora cuando va llena. La distancia
hasta el almacén 1 es de 6 km, y de 10 km al almacén 2.
Tabla de Números Aleatorios.

27767 43584 85301 88977 29490 69714 94015 64874 32444 48277
13025 14338 54066 15243 47724 66733 74108 88222 88570 74015
80217 36292 98525 24335 24432 24896 62880 87873 95160 59221
10875 62004 90391 61105 57411 06368 11748 12102 80580 41867
54127 57326 26629 19087 24472 88779 17944 05600 60478 03343
60311 42824 37301 42678 45990 43242 66067 42792 95043 52680
49739 71484 92003 98086 76668 73209 54244 91030 45547 70818
78626 51594 16453 94614 39014 97066 30945 57589 31732 57260
66692 13986 99837 00582 81232 44987 69170 37403 86995 90307
44071 28091 07362 97703 76447 42537 08345 88975 35841 85771
59820 96163 78851 16499 87064 13075 73035 41207 74699 09310
25704 91035 26313 77463 55387 72681 47431 43905 31048 56699
22304 90314 78438 66276 18396 73538 43277 58874 11446 16082
17710 59621 15292 76139 59526 52113 53856 30743 08670 84741
25852 58905 55018 56374 35824 71708 30540 27886 61732 75454
46780 56487 75211 10271 36633 68424 17374 52003 70707 70214
59849 96169 87195 46092 26787 60939 59202 11973 02902 33250
47670 07654 30342 40277 11049 72049 83012 09832 25571 77628
94304 71803 73465 09819 58869 35220 09504 96412 90193 79568
08105 59987 21437 36786 49226 77837 98524 97831 65704 09514
64281 61826 18555 64937 64654 25843 41145 42820 14924 39650
66847 70495 32350 02985 01755 14750 48968 38603 70312 05682
72461 33230 21529 53424 72877 17334 39283 04149 90850 64618
21032 91050 13058 16218 06554 07850 73950 79552 24781 89483
95362 67011 06651 16136 57216 39618 49856 99326 40902 05069
49712 97380 10404 55452 09971 59481 37006 22186 72682 07385
58275 61764 97586 54716 61459 21647 87417 17198 21443 41808
89514 11788 68224 23417 46376 25366 94746 49580 01176 28838
15472 50669 48139 36732 26823 05511 12459 91314 80582 71944
12120 86124 51247 44302 87112 21476 14713 71181 13177 55292
95294 00566 70481 06905 21785 41101 49386 54480 23604 23554
66986 34099 74474 20740 47458 64809 06312 88940 15995 69321
80620 51790 11436 38072 40405 68032 60942 00307 11897 92674
55411 85667 77535 99892 71209 92061 92329 98932 78284 46347
95083 06783 28102 57816 85561 29671 77936 63574 31384 51924
90726 57166 98884 08583 93889 57067 38101 77756 11657 13897
68984 83620 89747 98882 92613 89719 39641 69457 91339 22502
36421 16489 18059 51061 67667 60631 84054 40455 99396 63680
92638 40333 67054 16067 24700 71594 47468 03577 57649 63266
21036 82808 77501 97427 76479 68562 43321 31370 28977 23896
13173 33365 41468 85149 49554 17994 91178 10174 29420 90438
86716 38746 94559 37559 49678 53119 98189 81851 29651 84215
92581 02262 41615 70360 64114 56861 96717 54244 10701 41393
12470 56500 50273 93113 41794 86861 39448 93136 25722 08564
01016 00857 41396 80504 90670 08289 58137 17820 22751 36518
34030 60726 25807 24260 71529 78920 47648 13885 70669 93406
50259 46345 06170 97965 88302 98041 11947 56203 19324 20504
73959 76145 60808 54444 74412 81105 69181 96845 38525 11600
46874 37088 80940 44893 10408 36222 14004 23153 69249 05747
60883 52109 19516 90120 46759 71643 62342 07589 08899 05985
APLICACIONES DE LA SIMULACIÓN

1. DISEÑO DE LAS INSTALACIONES. ESTA APLICACIÓN EVALÚA EL TAMAÑO DE LAS


INSTALACIONES O EL NÚMERO DE EMPLEADOS QUE SE REQUIEREN.

2. PLANIFICACIÓN AGREGADA. EVALUACIÓN DEL COSTE DE PLANES ALTERNATIVOS.

3. PROGRAMACIÓN. SECUENCIACIÓN DE TAREAS EN TODO TIPO DE PROCESOS.

4. GESTIÓN DE INVENTARIO. SE SIMULAN LAS REGLAS DE DECISIÓN PROPUESTAS PARA


CALCULAR COSTES Y EFECTO EN EL SERVICIO AL CLIENTE.

5. PLANIFICACIÓN DE REQUERIMIENTOS DE MATERIALES. EVALUAR EL EFECTO DE LOS


CAMBIOS PROPUESTOS EN EL PLAN DE PRODUCCIÓN.

6. SIMULACIÓN DE SISTEMAS ECONÓMICOS. EVALUAR EL EFECTO DE DECISIONES


(DEVALUACIÓN DE LA MONEDA, EL IMPUESTO AL VALOR AÑADIDO, ETC.) EN LAS
DEMÁS VARIABLES MACROECÓMICAS.

7. SIMULACIÓN DE ESTADOS FINANCIEROS. PERMITE ANALIZAR ESTRATEGIAS QUE


LLEVARÁN A LA ORGANIZACIÓN AL LOGRO DE SUS OBJETIVOS Y METAS DE CORTO,
MEDIO Y LARGO PLAZO.

SIMULACIÓN - 1 ..
METODOLOGÍA DE SIMULACIÓN (1)

FORMULACIÓN DEL • PREGUNTAS QUE DEBEN CONTESTARSE.


1 PROBLEMA Y PLANIFICACIÓN • HIPÓTESIS QUE DEBEN PROBARSE.
• EFECTOS QUE SE DESEAN ESTIMAR.
DEL ESTUDIO

• LÍMITES DEL MODELO (EXTENSIÓN Y


AMPLITUD DEL MISMO).
• ELEMENTOS QUE CONSTITUYEN EL
MODELO (RECURSOS, MATERIA PRIMA,
2 DISEÑO Y VALIDACIÓN DE UN PRODUCTOS, ...)
MODELO CONCEPTUAL • ESCENARIOS OPERACIONALES A
EXAMINAR.
• REGLAS DE TRABAJO.
• CRITERIOS SOBRE EL MANEJO DE LOS
RECURSOS.
• DISEÑO O LAYOUT DEL SISTEMA.

SIMULACIÓN - 2 ..
METODOLOGÍA DE SIMULACIÓN (2)
• RUTAS DE LAS PIEZAS Y POSIBLES
3 RECOPILACIÓN Y ALTERNATIVAS.
ORGANIZACIÓN DE LOS DATOS • SECUENCIACIÓN DE OPERACIONES.
• TIEMPOS DE OPERACIÓN.
• CICLOS DE MÁQUINA Y TIEMPOS DE
PREPARACIÓN.
• EFICIENCIA DE LOS TRABAJADORES.
• TURNOS DE TRABAJO.
• LÓGICA DE PROCESAMIENTO
CREACIÓN DEL MODELO (PRIORIDADES ETC.)
4 MEDIANTE EL SOFTWARE • ...
ADECUADO

VALIDACIÓN DEL EJECUCIÓN DEL MODELO


5 MODELO FRENTE AL 6 Y ANÁLISIS DE LOS
SISTEMA REAL RESULTADOS OBTENIDOS
SIMULACIÓN - 3 ..
MÉTODO DE SIMULACIÓN DE MONTECARLO: EJEMPLO DE SIMULACIÓN
DINÁMICA CON INCREMENTOS DE TIEMPO FIJOS.

GESTIÓN DE LOS PEDIDOS A PROVEEDORES EN UN NEGOCIO DE VENTA DE


LECHE

• ESTUDIO DE LA DEMANDA EN LOS ÚLTIMOS 100 DÍAS:

Demanda
Punto medio Frecuencia
(Unidades del producto)
20-24 22 0.05
25-29 27 0.10
30-34 32 0.20
35-39 37 0.30
40-44 42 0.20
45-49 47 0.10
50-54 52 0.05

• VENTA MEDIA DIARIA:

VENTA MEDIA = 0.05·(22) + 0.10·(27) + 0.20·(32) + 0.30·(37) +


+ 0.20·(42) + 0.10·(47) + 0.05·(52) = 37
SIMULACIÓN - 4 ..
DOS REGLAS DE DECISIÓN POSIBLES:

REGLA 1: PEDIR UN NÚMERO DE UNIDADES DE LECHE IGUAL


A LA DEMANDA DEL DÍA ANTERIOR

REGLA 2: PEDIR UNA CANTIDAD FIJA (37 UNIDADES) SIN


TENER EN CUENTA LA DEMANDA DEL DÍA
ANTERIOR.

SE SIMULARÁ LA DEMANDA PARA LOS PRÓXIMOS 15 DÍAS, Y SE CALCULARÁN


LOS BENEFICIOS DERIVADOS DE LA ADOPCIÓN DE CADA UNA DE LAS
ALTERNATIVAS. SE ELEGIRÁ LA REGLA DE DECISIÓN QUE DE MAYORES
BENEFICIOS

PRECIO DE VENTA = 50 u.m./unidad


PRECIO DE COMPRA = 25 u.m./unidad

SIMULACIÓN - 5 ..
MÉTODO DE MONTECARLO DE SIMULACIÓN

ASIGNACIÓN DE NÚMEROS ALEATORIOS

Punto medio Números


Frecuencia
de la demanda aleatorios
22 0.05 00 - 04
27 0.10 05 - 14
32 0.20 15 - 34
37 0.30 35 - 64
42 0.20 65 - 84
47 0.10 85 - 94
52 0.05 95 - 99

UTILIZACIÓN DE UNA TABLA DE NÚMEROS ALEATORIOS

SIMULACIÓN - 6 ..
REGLA 1 REGLA 2
Número Cantidad Cantidad
Día Demanda Ventas Ventas
aleatorio ordenada ordenada
0 37
1 27 32 37 32 37 32
2 43 37 32 32 37 37
3 85 47 37 37 37 37
4 88 47 47 47 37 37
5 29 32 47 32 37 32
6 69 42 32 32 37 37
7 94 47 42 42 37 37
8 84 37 47 37 37 37
9 32 32 37 32 37 32
10 48 37 32 32 37 37
11 13 27 37 27 37 27
12 14 27 27 27 37 27
13 54 37 27 27 37 37
14 15 32 37 32 37 37
15 47 37 32 32 37 37
587 550 500 555 515

Regla 1: Beneficio = 50(500) - 25(550) = 11.250 u.m.


Regla 2: Beneficio = 50(515) - 25(555) = 11.875 u.m.
SIMULACIÓN - 7 ..
0.35 Demanda
Real
0.3 Demanda
0.25 Simulada

0.2
0.15
0.1
0.05
0
22 27 32 37 42 47 52
Figura 8. Lechería: demanda real versus demanda simulada.

9 35
Utilidad por Período

Ventas por Período


8 34

Utilidad
Ventas

7 33
0 25 50 75 100 125 150
Número de días simulados
Figura 9. Resultados obtenidos versus longitud de la simulación.

SIMULACIÓN - 8 ..
RESULTADOS DE LA SIMULACIÓN DE 100 DÍAS
REGLA 1 REGLA 2
Beneficios: 749 810
Ventas: 1.687 1.735

VARIACIÓN EN EL PRECIO DE COMPRA


C=20 C=30
Regla 1 Regla 2 Regla 1 Regla 2
Beneficio 936 995 561 625

ANÁLISIS DE SENSIBILIDAD RESPECTO A LA CANTIDAD FIJA PEDIDA


800

600

400

200

0
0 10 20 30 40 50 60

Figura 10. Análisis de sensibilidad respecto a la cantidad pedida.


SIMULACIÓN - 9 ..
MÉTODO DE SIMULACIÓN DE MONTECARLO: EJEMPLO DE SIMULACIÓN
DINÁMICA CON INCREMENTOS DE TIEMPO VARIABLES.

• PROCESO DE LLEGADA: EXPONENCIAL DE MEDIA 6 DÍAS


• TASA DE SERVICIO: CONSTANTE (5 DÍAS)

ln (1 − NA)
1
t=− P ( x ≤ t ) = 1 − e − λt
λ

Probabilidad Acumulada
0.2
1-EXP(-lambda*t)
0.15 0.7

0.1

0.05

0
0
0-1 1-2 2-3 3-4 4-5 5-6 6-7 7-8 8-9 9-10
0 7.22
(a) Intervalo entre cada llegada
(b) Intervalo entre cada llegada, t

Figura 11. Distribución de los intervalos de llegada.

SIMULACIÓN - 10 ..
Intervalo Tiempo Tiempo Salida Tiempo Tiempo de
Nº de Entrada
NA entre de en del de espera servicio
llegada al puerto
llegadas llegada servicio puerto del barco ocioso
1 44 3.5 3.5 3.5 5 8.5 0 3.5
2 18 1.2 4.7 8.5 5 13.5 3.8 0
3 45 3.6 8.3 13.5 5 18.5 5.2 0
4 52 4.5 12.8 18.5 5 23.5 5.7 0
5 14 0.9 13.7 23.5 5 28.5 9.8 0
6 91 15 28.7 28.7 5 33.7 0 0.2
7 63 6 34.7 34.7 5 39.7 0 1.0
8 70 7.4 52.1 52.1 5 57.1 0 12.4
9 72 7.8 59.9 59.9 5 64.9 0 2.8
10 57 5.1 65.0 65.0 5 70.0 0 0.1
Total 24.5 20

llegadas
24,5
TMEspera = = 2,45 días
10
salidas

SIMULACIÓN - 11 ..
Generación de variables
 aleatorias

20 de Febrero de 2007 1
ÍNDICE

Definición de simulación.
Generación de variables aleatorias:
✔ Generación de número aleatorios

✔ Método de la función inversa

✔ Otros métodos:

✔ Composición

✔ Convolución

✔ Transformaciones conocidas

✔ Generación de secuencias

Comprobación de resultados
Bibliografía 

20 de Febrero de 2007 2
DEFINICIÓN DE SIMULACIÓN

SIMULACIÓN:  "Experimentar  con  modelos  matemáticos  en  un 


computador".
Esquema general de la simulación: Experimentación/Medida
Sistema Análisis de 
resultados
Simulación
Generación de  Modelo matemático  Análisis de 
señales de entrada del sistema resultados

En este curso cubriremos los tres aspectos
Notar  que,  al  trabajar  en  computador,  siempre  trabajaremos  con 
secuencias discretas (muestras, en todo caso, de señales continuas)

20 de Febrero de 2007 3
GENERACIÓN DE VARIABLES ALEATORIAS
Muchos  modelos  de  sistemas  reales  contienen  elementos  que 
precisan o admiten un modelado estadístico:
✔ Sistemas de comunicaciones: ruido, desvanecimiento, ...

✔ Sistemas  de  conmutación:  llegadas  de  usuarios  al  sistema, 

duración de servicios, ...
✔ Sistemas sensores: proceso de detección, proceso de medida, ...

✔ ...

Modelado toma forma definiendo:
✔ Variables  aleatorias  que  rigen  ciertos  comportamientos  del 

sistema
✔ Procesos  estocásticos  para  modelar  variación  de  entradas  en  el 

tiempo.
Se  deben  definir  métodos  para  generar  muestras  de  variables 
aleatorias y muestras de procesos estocásticos.

20 de Febrero de 2007 4
GENERACIÓN DE VARIABLES ALEATORIAS (II)

Esquema general de generación de variables aleatorias y muestras 
de procesos estocásticos:
Generación de  {Ui} Transformación  {xi}
números 
X=f(U)
pseudoaleatorios
{Ui}:  Conjunto  de  números  generados  en  el  computador,  que 
siguen una distribución uniforme entre 0 y 1, independientes.
{xi}: Conjunto de números que pueden verse como:
✔ Muestras de una determinada variable aleatoria

✔ Muestras  de  un  proceso  estocástico  en  distintos  instantes  de 

tiempo

20 de Febrero de 2007 5
GENERACIÓN DE NUMEROS ALEATORIOS

Números  aleatorios:  los  que  generan  variables  aleatorias  con 


distribución uniforme entre 0 y 1.
Importante: Poder reproducir exactamente el mismo experimento:
✔ Detectar casos singulares

✔ Comparar sistemas similares bajo condiciones idénticas.

Objetivo:  
✔ U(0,1)

✔ Secuencia de números independientes linealmente: Incorrelados

✔ Secuencia reproducible a partir de pocos datos

✔ Coste computacional reducido

20 de Febrero de 2007 6
GENERACIÓN DE NUMEROS ALEATORIOS (II)

Existen  varias  familias  de  métodos  de  generación  de  números 


aleatorios.
Aquí  explicaremos  el  funcionamiento  de  los  más  usuales:  tipo 
congruencial lineal.
Fórmula:
Genera una secuencia de enteros {zi} como:
zi=(a zi­1 + c) mod m
✔ m es el módulo
✔ a es el multiplicador

✔ c es el incremento

✔ m>0 , m>a , m>c 

El número aleatorio entre 0 y 1 se obtiene como:
Ui=zi/m

20 de Febrero de 2007 7
GENERACIÓN DE NUMEROS ALEATORIOS (III)
Propiedades:
✔ Ecuación  recursiva:  con  un  valor  inicial  (z )  se  define  la 
o
secuencia  completa.  A  este  valor  se  el  denomina  semilla 
aleatoria. 
✔ Como  máximo  se  pueden  conseguir  m  números  aleatorios 

distintos.
✔ Tiene comportamiento cíclico. Longitud del ciclo como máximo 

m, depende de z0. 
✔ ¿Que pasa si z =0? Selección de z  puede ser importante.
0 0
✔ No puede salir cualquier número, solo los de la forma z/m.

✔ Dependencia fuertemente no lineal  

Ejemplo: función rand de MATLAB 4:
zi=(77 zi­1) mod(231­1)

20 de Febrero de 2007 8
GENERACIÓN DE NUMEROS ALEATORIOS (IV)

Otros métodos, con carácter general, mantienen misma estructura: 
✔ Ecuación  recursivas,  reproducibles  a  partir  de  valor  inicial 

seleccionable. 
✔ Dependencias no lineales => lineales implican correlación entre 

muestras.
✔ Tienen comportamiento cíclico. 

20 de Febrero de 2007 9
GENERACIÓN DE VARIABLES ALEATORIAS

Sabemos  generar  U(0,1).  Aquí  generalizaremos  para  conseguir 


muestras que:
✔ Sigan una distribución deseada (función de distribución F (x) o 
X
densidad de probabilidad fX(x)). 
✔ Sean independientes (linealmente). 

Generación de  {Ui} Transformación  {xi}


números 
X=f(U)
pseudoaleatorios

Como debe ser f(U) para conseguir la distribución deseada

20 de Febrero de 2007 10
MÉTODO DE LA FUNCIÓN INVERSA

Método para funciones continuas:
f(U)=FX­1(U)
Demostración de su validez:
✔ Definimos Y=f(U) 

✔ Queremos calcular F (y)=P(Y≤y)
Y
✔ F (.) es monótona creciente => P(Y≤y)=P(F (Y)≤F (y))
X X X
✔ F (y)=P(F (f(U))≤F (y))
Y X X
✔ F (y)=P(F (F (U))≤FX(y))
­1
Y X X
✔ F (y)=P(U≤F (y))
Y X
✔ Como  U  es  una  variable  aleatoria  uniforme,  si  0<p<1 

P(U≤p)=p.
✔ Por tanto F (y)=F (y)
Y X

20 de Febrero de 2007 11
MÉTODO DE LA FUNCIÓN INVERSA (II)

U
FX(X)
1
fU(U)

fX(X)

20 de Febrero de 2007 12
MÉTODO DE LA FUNCIÓN INVERSA (III)

Generación completa de una muestra de una variable aleatoria: 
✔ Se genera un numero aleatorio u  con un generador de números 
i
aleatorios.
✔ Se transforma utilizando x =F (ui) 
­1
i X
Propiedades del método:
✔ Si  podemos  asumir  que  los  números  aleatorios  son 
independientes,  las  muestras  de  las  variables  aleatorias 
transformadas también serán independientes
✔ General, vale para cualquier distribución.

✔ Problema: Generar F (U) 
­1
X

20 de Febrero de 2007 13
MÉTODO DE LA FUNCIÓN INVERSA (IV)

Extensión a variables aleatorias discretas: 
✔ Solo  los  puntos  x  tienen  una  cierta  probabilidad  de  aparecer 
k
(p(xk)).

F X  x=P X≤ x= ∑ p  x i 
x i≤ x
Al fin y al cabo, son distribuciones como cualquier otra
Veamos gráficamente 

20 de Febrero de 2007 14
MÉTODO DE LA FUNCIÓN INVERSA (V)

U
FX(X)
1
fU(U)

fX(X)

20 de Febrero de 2007 15
MÉTODO DE LA FUNCIÓN INVERSA (VI)

Lo que cambia es el método de generación:
Generación  completa  de  una  muestra  de  una  variable  aleatoria 
discreta: 
✔ Se genera un numero aleatorio u  con un generador de números 
i
aleatorios.
✔ Se transforma seleccionando el menor x  tal que u <F(x ).
k i k
Implementación  práctica:  Ordenar  xk,  ir  recorriendo  hasta  que  se 
cumpla la anterior condición, devolver xi=xk. 
Generalización a distribuciones mixtas es inmediata.

20 de Febrero de 2007 16
EJEMPLOS
Generación  de  muestras  que  siguen  una  distribución 
exponencial:
✔ f (x)=1/c exp(­x/c) para valores positivos de x. 
X
✔ F (x)=1­exp(­x/c)  
X
✔ f(u)=F (u)= ­ c ln(1­u)
­1
X
✔ MATLAB: >>x=­c*log(1­rand(1,1));

Generación de muestras que siguen una distribución discreta:
✔ p(1)=1/3, p(2)=1/2, p(4)=1/6 

✔ MATLAB:

>>u=rand(1,1)
>>if(u<1/3) x=1;
>>else if(u<5/3) x=2;
>>else x=4;

20 de Febrero de 2007 17
OTROS MÉTODOS 

Problema del método anterior es sintetizar FX­1(U).
En ocasiones, mas sencillo emplear propiedades de distribuciones. 
Ejemplos:
✔ Composición

✔ Convolución

✔ Transformaciones conocidas

20 de Febrero de 2007 18
COMPOSICIÓN 

Método típico para generar distribuciones multimodales:
fX(X)=p1fX1(X)+p2fX2(X)+p3fX3(X)+ ...+pNfXN(X)
Si una distribución es mezcla estadística de otras, por que no:
✔ Generar  una  variable  aleatoria  discreta  coherente  con  la 

probabilidad de cada modo
✔ Seleccionar el modo resultante

✔ Generar  la  variable  aleatoria  con  la  distribución  asociada  al 

modo.

20 de Febrero de 2007 19
COMPOSICIÓN (II)

Ejemplo: distribución de Laplace fX(X)=1/(2c) exp(­|x|/c) 
✔ Puede  verse  como  composición  de  dos  exponenciales,  una 

positiva y otra negativa
✔ Generando  dos  números  aleatorios  u  y  u  se  puede  calcular 
1 2
decidiendo  con  el  primero  el  signo  (equiprobable)  y  con  el 
segundo el módulo (exponencial).
✔ MATLAB:

if rand(1,1)<0.5
x=c*log(1­rand(1,1));
else
x=­c*log(1­rand(1,1));

20 de Febrero de 2007 20
CONVOLUCIÓN

En otras ocasiones, se sabe que una variable aleatoria es resultado 
de la suma de varias otras variables. 
Si dos variables aleatorias (X e Y) son independientes, la función 
densidad  de  probabilidad  se  la  suma  Z=X+Y  puede  demostrarse 
(ISA) que es: fZ(z)=fX(z)*fY(z) => de hay el nombre del método.
Si sabemos que Z cumple esta propiedad, por que no:
✔ Generar  muestras  (en  el  ejemplo  x e  yi)  de  las  variables 

aleatorias originales (X e Y en el ejemplo) utilizando el método 
que sea preciso.
✔ Sumarlas (en el ejemplo, z =x +y )
i i i

20 de Febrero de 2007 21
CONVOLUCIÓN (II)

Ejemplo 1: m­Erlang que es la suma de m exponenciales.
✔ MATLAB:

x=0;
for i=1:m
x=x­c/m *log(1­rand(1,1));
end

20 de Febrero de 2007 22
CONVOLUCIÓN (III)
Ejemplo 2: Síntesis de gaussianas como suma de uniformes 
✔ Teorema de límite central.

✔ Sumando suficientes uniformes, tenderemos a una gaussiana.

✔ Método clásico usa 12 => resultado: N(6,1)

20 de Febrero de 2007 23
TRANSFORMACIONES CONOCIDAS 

En ocasiones, se conocen relaciones entre variables aleatorias que 
permiten transformar unas en otras.
Ejemplo clásico: Generación de variables aleatorias gaussianas 
✔ Propiedad  conocida:  Si  tenemos  dos  variables  aleatorias 

gaussianas X e Y (media nula y varianza igual):
✔ ¿Cual es la distribución de |X+jY|?

✔ ¿La de M=|X+jY|2 ? 

✔ ¿Y la de F=arg(X+jY)?

✔ ¿Hay dependencia entre M y F? 

✔ Generar  variables  aleatorias  exponencial  y  uniforme  no  es 

complicado => ya hemos visto como

20 de Febrero de 2007 24
TRANSFORMACIONES CONOCIDAS (II)
A partir de dos variables aleatorias, una exponencial (M) y la otra 
uniforme  entre  0  y  1  (F),  se  pueden  generar  dos  gaussianas 
independientes utilizando las siguientes transformaciones:
X = M cos2  F
Y = M sen 2  F
El método completo quedará:
✔ Generar dos variables aleatorias uniformes (u  y u ).
1 2
✔ Utilizar la siguiente transformación:

x=  −2 lnu 1 cos2  u2
Y = −2 ln u 1 sen 2  u2

Resultado:  pareja  de  dos  muestras  de  una  gaussiana  (N(0,1))), 


independientes entre si

20 de Febrero de 2007 25
TRANSFORMACIONES CONOCIDAS (III)

Ejemplo  2:  ¿Como  modificar  media  y  varianza  de    una  variable 


aleatoria?
✔ Traslación  de  la  media:  Y=X+m  =>  aplicar  sobre  muestras 

generadas de X (comprobar que E{Y}=E{X}+m): 
yi=xi+m  
✔ Modificación de la varianza: Recordar que Y= a X implica que 

Var(Y)=a2  Var(X). Aplicar de forma equivalente a las muestras 
generadas de X: 
yi=a xi 
✔ Traslación de la media y modificación de la varianza conjuntas: 

¿Que pasa con media y varianza si Y=a X+m? Pensar antes 
de ir a la práctica.

20 de Febrero de 2007 26
GENERACIÓN DE SECUENCIAS

De entre todos los procesos aleatorios, nos vamos a quedar con los 
estacionarios. Existen métodos para otras familias, pero no son de 
interés en este curso.
OBJETIVO:  Generar  un  proceso  estocástico  (discreto)  con 
función densidad de probabilidad ( o distribución) y correlación (o 
espectro) arbitrarias.
✔ Problema sin solución general.

✔ En general, incluso cuando es posible, sintetizar adecuadamente 

el proceso es difícil
✔ Vamos  a  exponer  un  método  de  generación  lo  más  genérico 

posible 

20 de Febrero de 2007 27
GENERACIÓN DE SECUENCIAS (II)

¿Como generar procesos gaussianos con una cierta correlación?
Recordar de ISA:
✔ Si tenemos un ruido blanco gaussiano

✔ Pasamos por un filtro con respuesta en frecuencia H(f)

✔ Espectro del ruido coloreado: |H(f)|2

✔ Distribución sigue siendo gaussiana.

Este es el fundamento de la generación de secuencias correladas:

 Generación de x[n]  H(f) y[n]


gaussianas

SY(f)=|H(f)|2
RY[n]=ℱ­1{|H(f)|2}

20 de Febrero de 2007 28
GENERACIÓN DE SECUENCIAS (III)

Tratemos de generalizar ahora a otras distribuciones:
¿Que pasa si:

 Generación de x[n] y[n]


 H(f)
variables aleatorias

?
✔ Espectro: |H(f)|2
✔ Pero distribución se modifica: cada salida es resultado de sumas 
ponderadas de entradas 
✔ Efecto sumamente difícil de controlar

20 de Febrero de 2007 29
GENERACIÓN DE SECUENCIAS (IV)
Cambiemos ahora el método:
¿Que pasa si :

 Generación de x[n] y[n]


 H(f)  f(Y) z[n]=f(y[n])
gaussianas

?
✔ Z=f(Y): No linealidad sin memoria.
✔ Distribución  es  una  gaussiana  tras  pasar  por  la  transformación 
f(Y)  =>  predecible  =>  controlando  f(Y)  podemos  generar  la 
distribución deseada.
✔ Espectro,  al  pasar  por  no  linealidad,  se  distorsiona  (y  por  tanto 
correlación).  También  es  predecible  esta  distorsión  => 
controlando  H(f),  para  una  f(Y)  dada,  se  puede  controlar 
espectro de la salida.
20 de Febrero de 2007 30
GENERACIÓN DE SECUENCIAS (V)

¿Como calcular f(Y)?: Puede hacerse en dos etapas:
✔ Convertir  gaussiana  en  uniforme:  al  igual  que  F (.)  sirve  para 
­1
X
transformar  una  uniforme  en  una  distribución,  FX(.)  sirve  para 
transformar esa distribución en uniforme.
✔ Convertir  uniforme  en  la  distribución  deseada  (método  de  la 

función inversa):
✔ f(Y)=F (FY(Y))
­1
Z

20 de Febrero de 2007 31
GENERACIÓN DE SECUENCIAS (VI)

¿Como calcular H(f)?: 
✔ Autocorrelación antes de pasar por no linealidad: R'(n)

✔ Función densidad de probabilidad conjunta de dos muestras (u y 

v) de la variable aleatoria y[n] separadas n muestras:

1 1 2 2
g  u , v , R ' n= exp −  u v −2R ' n  uv
2π  1−R ' n 2
✔ Autocorrelación a la salida (z[n]):
∞ ∞
R n = ∫ ∫ f  u ⋅f  v ⋅g  u , v , R '  n  ⋅du⋅dv
−∞ −∞
✔ A  partir  de  autocorrelación  =>|H(f)|2=ℱ{R'[n]}.  Usar  métodos 
de diseño de filtros digitales. 

20 de Febrero de 2007 32
GENERACIÓN DE SECUENCIAS (V)

Relación  R'(n)=función(R(n))  complicada  de  resolver  en  general. 


En  introducción  teórica  a  la  práctica  se  da  resuelta  para  algunos 
casos de distribuciones.
En introducción teórica también se propone un método de síntesis 
de filtros a partir de R(n) (usando la DFT).

20 de Febrero de 2007 33
COMPROBACIÓN DE RESULTADOS

En  la  práctica  se  van  a  generar  un  conjunto  de  muestras  de 
variables aleatorias y de procesos estocásticos.
Hay que validar los resultados.
Para  ello  utilizaremos  un  conjunto  de  funciones  de  MATLAB, 
aplicándolas  sobre  los  resultados  obtenidos  para  estimar 
parámetros  de  las  variable  aleatorias  y  procesos  estocásticos 
generados.
En prácticas posteriores veremos que es lo que hacen internamente 
estas funciones.

20 de Febrero de 2007 34
COMPROBACIÓN DE RESULTADOS (II)

Habrá que utilizar las siguientes funciones de MATLAB:
✔ mean: media

✔ std: desviación típica (raiz cuadrada de la varianza)

✔ xcorr:  correlación  cruzada  (¿como  la  usaría  para  calcular 

autocorrelación?)
✔ psd: densidad espectral de potencia de una señal 

✔ hist: Histograma (recordar de LSCM)

20 de Febrero de 2007 35
RESUMEN

Generación de  {Ui} Transformaciones  Análisis de 


números  {xi} resultados
X=f(U)
pseudoaleatorios

Requisitos:
­Distribución
­Espectro/Autocorrelación

20 de Febrero de 2007 36
SIMULACIÓN

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 sistemas evaluando
numericamente un modelo del mismo. Estas evaluaciones numericas son las que nos permiten generar las
historias artificiales que no son mas 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.

¿Para que?

Simulamos para explicar, entender o mejorar el sistema.

Ejemplo:

El diseño de un procesador involucra miles o millones de compuertas lógicas interconectadas. El


proceso de crear el primer chip es sumamente costoso y no es posible darse el lujo de construir varios
chips y luego verificar su funcionamiento. Lo que se hace es modelar el procesador y verificar su
funcionamiento usando simulación.

¿Cuando?

a) El sistema real no existe. Es costoso, peligroso, consume mucho tiempo, o imposible de construir y
experimentar con prototipos (nuevo computador o procesador, reactor nuclear).
b) Experimentar con el sistema real es complicado, costoso, peligroso, o puede causar serios desajustes
(sistema de transporte, sistema de manufactura, reactor nuclear).
c) Necesidad de estudiar el pasado, presente, o futuro del sistema en tiempo real, tiempo expandido, o
tiempo comprimido (sistemas de control a tiempo real, estudios en cámara lenta, crecimiento
poblacional).
d) Es sistema es tan complejo que su evaluación analítica es prohibitiva, bien sea porque el modelado
matemático es imposible, o porque el modelado matemático no tiene solución analítica o numérica
simple y practica (colas de espera, ecuaciones diferenciales no lineales, problemas estocásticos).
e) Se puede validar satisfactoriamente el modelo de simulación.

Prof. Herbert Hoeger Simulación I-1


Se podría decir “Simular cuando todo lo demás falla”, pero esto no es excusa para usar simulación
inadecuadamente.

Sistema

Experimentar Experimentar
con el sistema con un modelo
mismo del sistema

Modelos Modelos
físicos Matemáticos

Solución
Simulación
analítica

Figura 1. La simulación en el estudio de sistemas.

Las areas de aplicacion de la simulacion son numerosas y entre ellas estan:


• Diseño y analisis de sistemas de produccion.
• Analisis de sistemas finacieros o economicos.
• Evaluacion de software y hardware.
• Evaluacion de sistemas de armamaneto militar o sistemas tacticos.
• Determinacion de politicas de inventario.
• Manejo de bosques.
• Diseño de sistemas de comunicacion y protocolos
• Diseño de sistemas de transporte.
• Evaluacion de diseños de organizaciones como hospitales, comedores, servicios de correo, etc.

I. ERRORES COMUNES EN SIMULACIÓN

1. Nivel de detalle inapropiado

Un modelo analítico es menos detallado que un modelo de simulación. Análisis requiere de muchos
supuestos y simplificaciones. El detalle en un modelo de simulación esta limitado por el tiempo
disponible para desarrollarlo.

Prof. Herbert Hoeger Simulación I-2


Mas detalle ⇒ mas tiempo
⇒ incrementa la posibilidad de errores y es mas difícil detectarlos
⇒ incrementa el tiempo de corrida del modelo

¡Mas detalle no necesariamente es mejor!


Mas detalle requiere mas conocimiento de los parámetros de entrada, que si no están disponibles pueden
hacer el modelo mas inexacto.

Ejemplo:

Supongamos que en la simulación de un sistema de tiempo compartido (timesharing) debemos


simular el tiempo requerido para satisfacer accesos a disco. Una opción es generarlos usando una
distribución exponencial. Una alternativa mas detallada seria simular el movimiento de los cabezales
y la rotación del disco. En la segunda alternativa se pueden tener mejores resultados solo si
conocemos las referencias a sectores y pistas. Sin embargo, si esta información no esta disponible a
la hora de la entrada de datos, hay que terminar generándolos exponencialmente y hubiese sido
menos costoso irse por la primera alternativa.

Es mejor partir de un modelo sencillo, obtener resultados, estudiar la sensibilidad, e introducir mas
detalles en las áreas que impactan mas los resultados.

2. Lenguaje inapropiado

Lenguajes de simulación de propósito especial requieren menos tiempo para implementar el modelo y
facilitan actividades como verificación (mediante el uso de opciones de trazado) y de análisis estadístico.
Lenguajes de propósito general son mas portables y proveen mejor control sobre la eficiencia y el tiempo
de corrida de la simulación.

3. Modelos no verificados

Los modelos de simulación son generalmente programas grandes, que si no se tienen las precauciones
respectivas, es posible tener errores de programación que hagan las conclusiones sin sentido.

4. Modelos inválidos

Aun cuando no hayan errores de programación, puede que el modelo no represente al sistema real
adecuadamente por supuestos incorrectos en su formulación. Es esencial que el modelo sea validado para
asegurar que las conclusiones a las que se pueda llegar sean las mismas que se obtendrían del sistema
real.
Todo modelo de simulación debe estar bajo sospecha hasta que se pruebe lo contrario por modelos
analíticos, mediciones, o intuición.

Prof. Herbert Hoeger Simulación I-3


5. Tratamiento incorrecto de las condiciones iniciales

Generalmente la parte inicial de una corrida de simulación no es representativa del comportamiento de


un sistema en estado estable, por lo tanto debe ser descartada.

6. Simulaciones muy cortas

Por tratar de ahorrar tiempo de análisis y de computación, las corridas de simulación pueden ser muy
cortas. Los resultados en estos casos dependen fuertemente de las condiciones iniciales y pueden no
representar al sistema real. El tiempo de corrida adecuado depende de la exactitud deseada (intervalos de
confianza) y de la varianza de las cantidades observadas.

7. Generadores de números aleatorios inadecuados

Las simulaciones requieren de cantidades aleatorias que son producidas por procedimientos llamados
generadores de números aleatorios. Es mejor usar generadores que han sido bien analizados a usar los de
uno mismo. Aun buenos generadores presentan problemas.

8. Selección de semillas inadecuadas

Los generadores de números aleatorios son procedimientos que dado un numero aleatorio generan otro.
El primer numero aleatorio de la secuencia es llamado la semilla y debe ser proporcionada por el
analista.
Las semillas para diferentes secuencias deben ser cuidadosamente seleccionadas para mantener
independencia entre las secuencias. Los analistas usualmente usan una misma secuencia para diferentes
procesos o usan la misma semilla para todas las secuencias. Esto introduce correlación entre los procesos
y puede llevar a conclusiones erróneas.

II. OTRAS CAUSAS DEL FRACASO DE LOS ANÁLISIS DE SIMULACIÓN

1. Estimación inadecuada del tiempo para desarrollar el proyecto

Es común subestimar el tiempo y el esfuerzo requerido para desarrollar modelos de simulación. Si la


simulación es exitosa y produce información útil, sus usuarios quieren incorporar mas funciones,
parámetros y detalles. Por el contrario, si no provee de información útil, usualmente se espera que al
añadir elementos la puedan hacer útil. En ambos casos el proyecto se extiende mas allá de las
proyecciones iniciales.
Para proyectos grandes se deben hacer previsiones para incorporara cambios que son inevitables sobre
largos periodos de tiempo.

Prof. Herbert Hoeger Simulación I-4


2. Metas inalcanzables

La simulación es un proceso largo y complejo y se debe tener claramente definido un conjunto de metas
que sean especificas, minuciosas, medibles, y alcanzables.
Un ejemplo común de una meta inalcanzable es "modelemos X." Es posible modelar muchas
características diferentes de X a muchos niveles de detalle.

3. Mezcla incompleta de habilidades

Un proyecto de simulación requiere por lo menos:


a. Liderazgo: Habilidad para motivar, guiar y manejar a los miembros del equipo de simulación.
b. Modelaje y estadísticas: Habilidad para identificar las características claves del sistema y modelarlas
al nivel de detalle requerido.
c. Programación: Habilidad para escribir código entendible y verificable que implemente el modelo
correctamente.
d. Conocimiento del sistema modelado: Habilidad para entender el sistema, explicarlo al equipo de
modelaje, e interpretar los resultados del modelo en términos de su impacto en el diseño del sistema.

4. Nivel inadecuado de participación de los usuarios

Es esencial que el equipo de simulación y los usuarios de la organización estén en constante contacto
para intercambiar y discutir ideas. La mayoría de los sistemas evolucionan y cambian con el tiempo y un
modelo desarrollado sin la participación de los usuarios raramente resulta exitoso.

5. Documentación inexistente u obsoleta

La mayoría de los modelos de simulación se desarrollan en largos periodos de tiempo y continuamente


son modificados a medida que el sistema cambia o es mejor comprendido. Su documentación muchas
veces es desatendida y rápidamente se vuelve obsoleta. Es recomendable documentar los programas y
usar lenguajes que sean fáciles de leer.

6. Inhabilidad para gerenciar el desarrollo de programas de computación grandes

Hay muchas herramientas de ingeniería de la programación que permiten vigilar los objetivos del diseño,
los requerimientos funcionales, las estructuras de datos y los estimados de progreso. También hay un
conjunto de principios de diseño, como diseño de arriba abajo y programación estructurada, para
desarrollar grandes proyectos en forma ordenada . Sin el uso de estas herramientas y técnicas es
imposible desarrollar exitosamente un modelo de simulación grande.

Prof. Herbert Hoeger Simulación I-5


7. Resultados misteriosos

Resultados misteriosos generalmente son debido a errores de programación, supuestos incorrectos en el


modelo, o falta de entendimiento del sistema real. Nunca deben ser obviados.

III. TERMINOLOGÍA

1. Variables de Estado

El estado del sistema esta caracterizado por el valor que tengan las variables de estado en un instante de
tiempo dado. El conjunto de variables de estado debe ser suficiente para el propósito de estudio, y puede
diferir en el número y tipo de variables si los objetivos de la simulación cambian. Si la simulación es
detenida, puede ser continuada después si y solo si los valores de las variables de estado son conocidos.

2. Evento

Un evento es un suceso, un hecho, una ocurrencia que genera un cambio en el estado del sistema. Una
llegada, una salida, etc.

3. Modelos de Tiempo Continuo y de Tiempo Discreto

Modelo de Tiempo Continuo


Cuando el estado del sistema esta definido para cada instante de tiempo.

Modelo de Tiempo Discreto


Cuando el estado del sistema esta definido solo para particulares instantes de tiempo.

Tiempo Continuo Tiempo Discreto

Numero de Numero de
trabajos estudiantes
en cola en clase los
viernes

tiempo tiempo
(viernes)

Figura 2. Modelos de tiempo continuo y discreto.

Prof. Herbert Hoeger Simulación I-6


4. Modelos de Estado Continuo y de Estado Discreto

El modelo es de estado continuo o discreto dependiendo de si las variables de estado son continuas o
discretas.
Modelo de Estado Discreto → Modelo de Eventos Discretos
Modelo de Estado Continuo → Modelo de Eventos Continuos
Continuidad de tiempo no implica continuidad de estado y viceversa.

Estado Continuo Estado Discreto

Numero de
Nivel de trabajos
agua en cola

tiempo tiempo

Figura 3. Modelos de estado continuo y discreto.

5. Modelos Determinísticos y Probabilísticos

Si los resultados de un modelo pueden predecirse con certeza, el modelo es determinístico; un simulador
de contratos colectivos. Si repeticiones con la misma entrada pueden producir resultados distintos
entonces el modelo es probabilístico; un simulador de colas.

Deterministico Probabilistico

salida salida

entrada entrada

Figura 4. Modelos deterministicos y probabilisticos.

Prof. Herbert Hoeger Simulación I-7


6. Modelos Estáticos y Dinámicos

Un modelo en el que el tiempo no es una variable es estático. Si el sistema cambia con el tiempo el
modelo es dinámico.
E = m c2 → Modelo Estático (materia en energía)

Numero de trabajos en cola en un computador. → Modelo Dinámico

7. Modelos Lineales y No-Lineales

Si la salida es una función lineal de la entrada, el modelo es lineal, de lo contrario es no-lineal. Ejemplo:
f ( x ) = a + bx vs. f ( x ) = a + b x

Lineal No-Lineal

salida salida

entrada entrada

Figura 5. Modelos lineales y no lineales.

8. Modelos Cerrados y Abiertos

Si la entrada es externa al modelo e independiente de el, el modelo es abierto. Si el modelo es cerrado no


hay entrada externa. Puede depender de los objetivos de la simulación, como se enfoque el problema y
los supuestos que se hagan. Por ejemplo: podemos simular el trafico en una ciudad como un sistema
cerrado si asumimos que el numero de vehículos permanece constante (no hay arribos ni salidas o arribos
= salidas), o como un sistema abierto generando arribos y salidas al exterior.

Abierto Cerrado

Figura 6. Modelos abiertos y cerrados.

Prof. Herbert Hoeger Simulación I-8


9. Modelo Estables e Inestables

Si el comportamiento del sistema converge a un estado estable (independientemente del tiempo) el


modelo es estable. Un modelo cuyo comportamiento cambia constantemente es inestable. Por ejemplo:
en un sistema de taquilla simple tenemos:
Intervalo entre llegadas > tiempo de servicio → modelo estable
Intervalo entre llegadas ≤ tiempo de servicio → modelo inestable.

Estable Inestable

salida salida
promedio promedio

entrada entrada

Figura 7. Modelos estables e inestables.

Ejemplo

Modelos de sistema de computación generalmente son de tiempo continuo, estado discreto,


probabilísticos, dinámicos y no-lineales. Algunos son abiertos y otros cerrados. También pueden ser
estables o inestables.

IV. SELECCIÓN DEL LENGUAJE DE SIMULACIÓN

1. Importante

La selección incorrecta del lenguaje de simulación puede extender considerablemente el tiempo de


ejecución del proyecto, producir estudios incompletos o hacer fracasar el proyecto.

2. Lenguaje de Simulación

Lenguajes como SIMULA y SIMSCRIPT ahorran tiempo de desarrollo: tienen facilidades para generar
estadísticas, reportes, etc. Permiten al analista concentrarse en aspectos específicos del sistema y no
preocuparse por aspectos generales a todas las simulaciones. El código es modular, fácil de leer y
proveen buena detección de errores.

Prof. Herbert Hoeger Simulación I-9


3. Lenguaje de Propósito General

C, Pascal, Fortran. Se usan cuando el analista esta familiarizado con el lenguaje, no hay tiempo de
aprender un lenguaje de simulación o no esta disponible. Proveen flexibilidad, eficiencia y portabilidad.

4. Extensiones a Lenguajes de Propósito General

Lenguajes de propósito general extendidos con un conjunto de rutinas comúnmente requeridas en


simulación. Ejemplo: GASP para FORTRAN.

5. Paquetes de Simulación

QNET4 y RESQ permiten definir el modelo usando un dialogo. Pueden ahorrar mucho tiempo pero son
muy inflexibles. Proveen solo cosas que fueron previstas por los desarrolladores.

Continuos Discretos Mixtos


CSMP SIMULA SIMSCRIPT
DYNAMO GPSS GASP
GLIDER

V. TIPOS DE SIMULACIÓN

1. Monte Carlo

Simulación estática o sin eje de tiempo. Se usa para modelar fenómenos probabilísticos que no dependen
del tiempo o para evaluar expresiones no-probabilísticas con métodos probabilísticos. Esta definición es
mas restrictiva que la que dan otros autores para los cuales simulación Monte Carlo es cualquier
simulación que use números aleatorios.

Ejemplo 1:

I = ∫ e − x dx
2

Para evaluar esta integral (para este ejemplo es mejor usar métodos numéricos y usar Monte Carlo en
integrales múltiples con integrandos con comportamiento inusual) podemos generar números
aleatorios con distribución uniforme x y para cada numero calcular la siguiente función y:

x ~ Unif(0,2)

función de densidad f(x) = ½ si 0 ≤ x ≤ 2

Prof. Herbert Hoeger Simulación I-10


2
y = 2e− x

El valor esperado de y es:


2 2 2

E ( y ) = ∫ 2e −x2
f ( x )dx = ∫ 2 e −x2

1 dx = e − x 2 dx = I
2
0 0 0

Y podemos evaluar la integral generando xi, calculando yi, y promediando de la siguiente forma:
xi ~ Unif(0,2)
2
yi = 2e − x

1 n
I = E ( y) = ∑ yi
n 1

Programa y Corridas 1
program calcula_integral;
var suma,n,x,y: extended;
begin n Resultado
randomize;
n := 0; suma := 0;
10.000 0.8855
while n < 1000000 do begin
x := 2 * random; 100.000 0.8807
y := 2 * exp( -x * x ); 1.000.000 0.8822
suma := suma + y;
n := n + 1;
end;
writeln('Resultado: ',suma/n:6:4);
end.

Notese que la funcion random genera números uniformes entre 0 y 1.

Ejemplo 2:

Para calcular π podemos basarnos en el hecho de que la relación entre el área del circulo y del
π .r 2 π .12 π
cuadrado que se muestra a continuación es = = . Por lo tanto podemos generar pares de
a.b 2.2 4
números aleatorios (x, y) entre -1 y 1 (en realidad es suficiente con generarlos entre 0 y 1 dada la
simetría que presenta el problema y por lo tanto los resultados serán los mismos si consideramos solo
el primer cuadrante), y calcular la relación entre los números dentro del circulo d ( x2 + y2 = 1) con
respecto a los números generados n. Esta relación multiplicada por 4 debe aproximarse más π a
d
medida que el número de pares generados sea mayor, es decir, lim 4 = π
n →∞ n

1
Todos los códigos en Pascal fueron probados usando Delphi 5

Prof. Herbert Hoeger Simulación I-11


1

-1 1

-1

Programa y Corridas
program calcula_pi;
const limit = 10000000;
var x, y, dentro, contador: extended; n Resultado
begin
randomize;
10.000 3.15560000
dentro := 0;
contador := 0; 1.000.000 3.14124800
while (contador < limit) do begin 100.000.000 3.14139356
x := random;
y := random;
if (x*x + y*y) <= 1 then dentro := dentro + 1;
contador := contador + 1;
end;
writeln('PI: ',4.0*dentro/limit:10:8);
end.

2. Simulación por trazas

Una traza es un registro de eventos ordenados por tiempo de un sistema real. Son muy usadas para
analizar diferentes alternativas. Las trazas deben ser independientes del sistema bajo estudio.

Ejemplo

Para comparar diferentes esquemas de administración de memoria en un computador, se puede


obtener del sistema una traza de paginas referenciadas por programas claves. Esta traza puede ser
usada para ajustar los parámetros (tamaño de pagina) de un algoritmo de administración particular o
para comparar diferentes algoritmos (FIFO, aleatorio, menos usada recientemente, etc.).

Ventajas
a) Credibilidad: Una traza tiene mas credibilidad que una generación aleatoria.
b) Facilidad para validar: Para obtener la traza hay que monitorear al sistema. Durante este
monitoreo se pueden observar otras características del sistema que luego pueden usarse para
validar la simulación.
c) Menos aleatoriedad: Una traza es una entrada determinística. Si la simulación se repite, la traza
es la misma pero la salida puede diferir por aleatoriedad en otros componentes del modelo. Hay

Prof. Herbert Hoeger Simulación I-12


menos varianza en las salidas y por lo tanto se requieren menos repeticiones para obtener la
confianza estadística deseada.
d) Comparaciones mas justas: Una traza permite comparar diferentes alternativas con la misma
entrada.

Desventajas
a) Complejidad y detalle: Puede requerir una simulación mas detallada del sistema. Por ejemplo: en
la simulación de un sistema de disco podemos asumir tiempo de acceso exponencial a sectores, o
tomar trazas de los sectores accesados e incluir cómputos del tiempo de rotación del disco y
movimiento de cabezales ⇒ ¡mas cómputos y detalle!
b) Trazas finitas y representatividad: En pocos minutos se puede obtener una traza detallada larga
que puede no ser representativa en todos los momentos.
c) Validación: Las trazas pueden producir diferentes resultados en diferentes alternativas. Deben
usarse varias trazas distintas para validar los resultados.
d) Cambios de trazas: Si se desea estudiar un sistema bajo condiciones distintas, no es posible
modificar las trazas, y hay que tener trazas características para cada caso.

3. Simulación por Eventos Discretos

Una simulación que usa un modelo de estado discreto del sistema es llamada una simulación por eventos
discretos. En este tipo de simulaciones el estado del sistema cambia solo en momentos específicos del
tiempo: cuando ocurre un evento. Consideremos un sistema de taquilla simple:

Taquilla

Clientes en cola

Aquí podemos considerar que la variable de estado (la única en este caso) es una variable entera, que
podemos llamar cola, que indica cuantos clientes están frente a la taquilla con las siguientes
consideraciones:

Caso Valor de cola


No hay clientes en el sistema 0
El primer cliente es atendido y los otros esperan ≥1

En este tipo de sistema tenemos dos tipos de eventos, llegadas y salidas. Cuando un cliente arriba, la
longitud de cola se incrementa (cambia el estado del sistema), y cuando un cliente termina de ser
atendido este abandona el sistema y la longitud de cola se decrementa (vuelve a cambia el estado del
sistema). Es claro que el estado del sistema no cambia constantemente y solo lo hace al ocurrir un
evento: una llegada o una salida.

Prof. Herbert Hoeger Simulación I-13


El esquema secuencial clásico de los simuladores por eventos discretos se muestra a continuación, en
donde por lo general la simulación termina cuando el tiempo del próximo evento a simular es mayor que
el tiempo que se estipulo para la simulación.
Lista de eventos pendientes

Variables de
estado

Lazo de simulación:
Lazo
• obtenga próximo evento
• tiempo = tiempo del evento
• procesa el evento: actualiza variables de
estado y estadísticas y posiblemente genera
nuevos eventos
Fin del lazo

El simulador debe garantizar la causalidad, es decir, que todo evento sea simulado después de todos los
eventos que él dependa. Para entender mejor esto, suponga una habitación con una puerta que esta
cerrada y con una persona dentro. Si se tienen dos eventos: abrir puerta y persona sale, evidentemente
no se puede simular la salida de la persona antes de simular la apertura de la puerta: el evento persona
sale depende del evento abrir puerta. En un simulador en el que solo se permite que el tiempo avance
(nunca retroceda) y en el que los eventos se simulen en estricto orden cronológico (los eventos más
próximos en el tiempo primero), la causalidad esta garantizada. Si la causalidad no se garantiza se puede
generar un caos y la simulación carecería de sentido alguno.

Todas las simulaciones de eventos discretos tienen una estructura común e incluyen los siguientes
componentes:
a) Manejador de eventos: Mantiene los eventos que esperan por suceder. Es de uno de los
componentes de simulación más usados. Es ejecutado antes de la simulación de cada evento y
posiblemente durante la simulación de un evento para programar nuevos eventos. Su
implementación debe ser cuidadosa ya que tiene un fuerte impacto sobre la eficiencia del
simulador.
b) Reloj de simulación y mecanismo de avance de tiempo: Toda simulación tiene una variable global
que representa el tiempo simulado. El manejador es el encargado de avanzar este tiempo. Hay
dos formas de hacer esto:
Método de tiempo unitario: Incrementa el tiempo en pequeños pasos y se chequea si hay eventos
que pueden ocurrir. Generalmente no se usa.
Método por eventos: Incrementa el tiempo automáticamente al tiempo de evento más próximo a
ocurrir.

Prof. Herbert Hoeger Simulación I-14


c) Variables de estado del sistema: Son variables globales que describen el estado del sistema.
d) Rutinas de eventos: Cada tipo de evento es simulado por su rutina. Estas rutinas actualizan las
variables de estado y generan nuevos eventos.
e) Rutinas de entrada: Son para obtener los parámetros del modelo como tiempo promedio entre
llegadas, tiempo promedio de servicio, etc. Deben ejecutarse al comienzo de la simulación para
liberar al usuario ya que generalmente las simulaciones consumen tiempo. Permiten variar los
parámetros. Cada conjunto de valores de entrada define una iteración que quizás deba ser repetida
varias veces con diferentes semillas. Cada ejecución de la simulación consiste de varias
iteraciones, y cada iteración consiste de varias repeticiones.
f) Generador de reportes: Rutinas para producir las salidas al final de la simulación.
g) Rutinas de inicialización: Fijan el estado inicial del sistema e inicializan los generadores de
secuencias de números aleatorios.
h) Rutinas de trazado: Imprimen resultados intermedios durante la simulación. Sirven para depurar
el simulador.
i) Manejo dinámico de memoria: Durante la simulación se crean nuevas entidades y las viejas son
destruidas. Esto requiere una periódica colección de basura. Si esto no lo provee el lenguaje, el
programador debe escribir código para manejo dinámico de memoria.
j) Programa principal: Agrupa todas las rutinas.

4. Simulación Continua

Los modelos de simulación continua, donde las variables de estado son continuas, usualmente son
descritos mediante ecuaciones diferenciales y algebraicas. Estas variables de estado por lo general
cambian en forma continua a medida que la simulación avanza, por ejemplo, el contenido de agua en un
embalse cambia continuamente con la afluencia y salida de agua del mismo y no en solo en instantes
específicos del tiempo como si estuviéramos agregando o sacando baldados de agua. Muchas
simulaciones por eventos discretos incluyen subsistemas continuos y viceversa. Se puede hacer en
computadores analógicos o en computadores digitales.
Computadores analógicos son maquinas de propósito especial:
a) operan continuamente sobre todas las variables en tiempo real
b) son dispositivos paralelos
c) incluyen circuiteria para sumatorias, multiplicación, integración, y generación de funciones
d) no tienen capacidades de almacenamiento o son muy limitadas
e) dan resultados inmediatamente
f) no pueden manejar variables muy grandes o muy pequeñas requiriendo cambio de escala
g) las variables de entrada son continuas y esto requiere conversión de voltajes analógicos a números
y viceversa.

Prof. Herbert Hoeger Simulación I-15


Computadoras digitales son maquinas de propósito general:
a) operaciones aritméticas y lógicas son efectuadas secuencialemente
b) variables de entrada son discreteas
c) pueden manejar números muy grandes o muy pequeños
d) integración matemática directa no es posible y se hace usando métodos numéricos (ver el ejemplo
siguiente)
e) pueden almacenar gran cantidad de datos
f) son relativamente lentas.

Ejemplo de integración numérica usando el método del trapecio


2

I = ∫ e − x dx
2

Programa y Corridas
El siguiente programa calcula el área bajo la curva usando trapecios como los mostrados en la
figura 8.

program calcula_integral;
var suma,x,x1,x2,fx2,tria,paso: extended;
begin paso Resultado
paso := 0.1;
x1 := 0; 0.1 0.87985
x2 := paso; 0.01 0.88208
suma := 0;
while x2 <= 2 do begin
fx2 := exp(-x2 * x2);
tria := (exp(-x1 * x1) - fx2)*paso/2;
suma := suma + tria + xf2 * paso;
x1 := x2;
x2 := x2 + paso;
end;
writeln('Resultado: ',suma:10:8);
end.

f( x1 )

f(x 2 )

x1 x2

Figura 8. Integración numérica.

Prof. Herbert Hoeger Simulación I-16


Ejemplo de un programa en CSMP y GLIDER

La distancia x , en metros, recorrida entre paradas por un ascensor en una mina esta dada por la
siguiente ecuación diferencial:
x ' ' = −1.7 ( t − 2 ) 3 donde t = tiempo en segundos, x ' ( 0) = x ( 0) = 0 y 0 ≤ t ≤ 4.

Calcular el valor de x como función del tiempo.


t

En CSMP, Y = ∫ Xdt + CI ; Y (0) = CI , tiene el siguiente formato Y=INTGRL(IC,X).


0

Programa Comentarios
TITLE PROGRAMA EJEMPLO
* SIMULA LA DISTANCIA RECORRIDA POR UN ASCENSOR FINTIME tiempo de simulacion
CONSTANT K = -1.7
X2 = K*(TIME-2.0)**3 PRDEL intervalo entre impresiones
X1 = INTGRL(0.0,X2)
X = INTGRL(0.0,X1) DELT intervalo de integracion
TIMER FINTIM = 4.0,PRDEL = 0.4, DELT = 0.01
PRINT X,X1,X2
END
STOP
ENDJOB

En GLIDER (Gate, Line, Input, Decision, Exit, Resource), se escriben directamente las ecuaciones
diferenciales. Como no hay segunda derivada, se usa una variable auxiliar para especificarla.

Programa
TITLE Distancia recorrida por un ascensor

NETWORK
C :: X' := Z;
Z' := Y;
Y := -1.7*(TIME - 2.0)*(TIME - 2.0)*(TIME - 2.0);
IF (TRUNC(TIME*100) MOD 40 = 0) THEN ACT(IMP,0);
ENC(A) :: WRITELN(F,' TIEMPO X X1 X2');
WRITELN(F,'---------- ---------- ---------- ----------');
IMP(A) :: WRITELN(F,TIME:10:6,' ',X:10:6,' ',Z:10:6,' ',Y:10:6);
FIN(A) :: CLOSE(F);

INIT
ASSIGN(F,'ELEV.OUT');
REWRITE(F);
ACT(ENC,0);
ACT(IMP,0);
ACT(FIN,4.001);
ACT(C,0);
Z := 0.0;
X := 0.0;
Y := 13.6;
TSIM := 4.001;
DT_C := 0.01;

DECL VAR X,Y,Z: CONT;


F: TEXT;
END.

Prof. Herbert Hoeger Simulación I-17


Salida: ELEV.OUT
TIEMPO X X1 X2
---------- ---------- ---------- ----------
0.000000 0.000000 0.000000 13.600000
0.400000 0.898373 4.047964 6.963200
0.800000 2.956270 5.972140 2.937600
1.200000 5.516312 6.689709 0.870400
1.600000 8.235768 6.856738 0.108800
2.000000 10.982108 6.868169 -0.000000
2.400000 13.728557 6.857826 -0.108800
2.800000 16.449645 6.698413 -0.870400
3.200000 19.016759 6.001516 -2.937600
3.600000 21.093697 4.117596 -6.963200
4.000000 22.032218 0.136000 -13.600000

Prof. Herbert Hoeger Simulación I-18