You are on page 1of 99

Instituto Tecnolgico de Acapulco Catedrtico: Ing.

Vales Ortiz Gilberto


Ingeniera en Sistemas Computacionales Simulacin
1
Instituto Tecnolgico de Acapulco


Ingeniera en Sistemas
Computacionales


Apuntes de Apuntes de Apuntes de Apuntes de
Simulacin Simulacin Simulacin Simulacin


Catedrtico
Ing. Vales Ortiz Gilberto


Alumno



Horario

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
2
ndice

Unidad I. Introduccin a la simulacin Unidad I. Introduccin a la simulacin Unidad I. Introduccin a la simulacin Unidad I. Introduccin a la simulacin

Introduccin................................................................................................................... 4
Proceso de la simulacin ............................................................................................... 5
Actividades de presimulacin........................................................................................ 5
Actividades de desarrollo .............................................................................................. 7
Actividades de operacin .............................................................................................. 8
Consideraciones relativas a la simulacin..................................................................... 9
Variables exgenas...................................................................................................... 11
Variables de estado...................................................................................................... 12
Variables endgenas.................................................................................................... 12
Parmetros ................................................................................................................... 12
Caractersticas de operacin........................................................................................ 12
Identidades................................................................................................................... 12
Mtodos analticos, numricos y de simulacin.......................................................... 14
Simulacin de un sistema de inventarios..................................................................... 17

Unidad II. Generacin de Nmeros Pseudoaleatorios Unidad II. Generacin de Nmeros Pseudoaleatorios Unidad II. Generacin de Nmeros Pseudoaleatorios Unidad II. Generacin de Nmeros Pseudoaleatorios

Mtodo de congruencias.............................................................................................. 25
Mtodo multiplicativo ................................................................................................. 26
Computadoras binarias ................................................................................................ 27
Computadoras decimales............................................................................................. 28
Pruebas estadsticas ..................................................................................................... 29
Prueba de medias......................................................................................................... 31
Prueba de varianzas ..................................................................................................... 34
Prueba de poker ........................................................................................................... 35
Prueba de series ........................................................................................................... 37
Apndice...................................................................................................................... 40
Definiciones................................................................................................................. 40
Teoremas ..................................................................................................................... 42

Unidad III. Generacin de valores de variables aleatorias Unidad III. Generacin de valores de variables aleatorias Unidad III. Generacin de valores de variables aleatorias Unidad III. Generacin de valores de variables aleatorias

Mtodo de transformacin inversa .............................................................................. 44
Mtodo de rechazo ...................................................................................................... 47
Mtodo de composicin .............................................................................................. 50
Distribucin de POISSON........................................................................................... 51
Distribucin ERLANG................................................................................................ 53
Distribucin binomial.................................................................................................. 53
Mtodo de transformacin inversa para distribuciones discretas................................ 54

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
3
Unidad IV. Lenguaje de Simulacin Unidad IV. Lenguaje de Simulacin Unidad IV. Lenguaje de Simulacin Unidad IV. Lenguaje de Simulacin

Estructura del lenguaje ................................................................................................ 58
Lenguajes especficos de simulacin........................................................................... 60
Caractersticas de los lenguajes de simulacin............................................................ 60
Clasificacin de los lenguajes de simulacin.............................................................. 61
Introduccin a los bloques GPSS ................................................................................ 62
Lenguaje GPSS............................................................................................................ 64
Tipos de bloques de GPSS .......................................................................................... 70
Smbolos de los diagramas de bloques de GPSS ........................................................ 71
Simulacin de los sistemas discretos........................................................................... 83

Unidad V. Unidad V. Unidad V. Unidad V. Validacin Validacin Validacin Validacin

Clculo del nmero ptimo de simulacin.................................................................. 90
Clculo de nmero de rplicas .................................................................................... 92
Reduccin de varianza................................................................................................. 93
Validacin de resultados.............................................................................................. 95
Optimizacin ............................................................................................................... 97
Sensibilidad y experimentacin................................................................................... 98
Monitoreo .................................................................................................................... 98
Bibliografa.................................................................................................................. 99


















Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
4
UNIDAD I

Introduccin A La Simulacin

La simulacin consiste bsicamente en construir modelos informticos que describen la
parte esencial del comportamiento de un sistema de inters, as como en disear y realizar
experimentos con el modelo y extraer conclusiones de sus resultados para apoyar la toma de
decisiones. Tpicamente, se utiliza en el anlisis de sistemas tan complejos que no es posible su
tratamiento analtico o mediante mtodos de anlisis numricos. Sus orgenes estn en los
trabajos de Student para aproximar la distribucin que lleva su nombre, y los mtodos que Von
Neumann y Ulam introdujeron para resolver ecuaciones integrales. Desde entonces, la
Simulacin ha crecido como una metodologa de experimentacin fundamental en campos tan
diversos como la Economa, la estadstica, la Informtica o la Fsica, y con enormes aplicaciones
industriales y comerciales, como los simuladores de vuelo, los juegos de simulacin, o la
prediccin burstil o meteorolgica.

Existen diversas maneras para definir el trmino simulacin. Sin embargo debido a que se
considera a la simulacin como una extensin lgica y natural de los modelos analticos y
matemticos, inherentes a la Investigacin de Operaciones, la siguiente definicin es considerada
como una de las ms completas.

Simulacin: Es una tcnica numrica para conducir experimentos en un computador
digital, la cual incluye ciertos tipos de relaciones lgicas y matemticas necesarias para describir
la estructura y comportamiento de un sistema complejo del mundo real sobre un periodo de
tiempo.

Tambin se considera a la simulacin como un proceso para describir la esencia de la
realidad, el cual incluye la construccin, experimentacin y manipulacin de un modelo
complejo en un computador.

El uso de la metodologa de simulacin ofrece ventajas y desventajas, entre las cuales
podemos mencionar las siguientes:

Ventajas:

1. La simulacin hace posible estudiar y experimentar con las interacciones complejas de un
sistema dado (sin importar cul).
2. A travs de la simulacin podemos estudiar el efecto de cambios ambientales,
organizacionales de cierta informacin, en la operacin del sistema.
3. La observacin detallada del sistema simulado nos permite tener una mejor comprensin
del mismo.
4. La experiencia al disear un modelo de simulacin para computadora es ms valiosa que
la simulacin en s.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
5
5. La simulacin nos permite experimentar con situaciones nuevas, para los cuales no se
tiene o hay poca informacin.

Desventajas:

1. Los modelos de simulacin para computadora son costosos y requiere tiempo para
desarrollarse y validarse.
2. Se requiere gran cantidad de corridas para encontrar soluciones ptimas.
3. Es difcil aceptar los modelos de simulacin.
4. Los modelos de simulacin no son de optimizacin directa (son modelos de anlisis).
5. Se pueden tener restricciones o limitaciones en la disponibilidad del software requerido.

Filosofa, Desarrollo E Implementacin De Un Modelo De Simulacin

La simulacin es una de las herramientas ms fciles de usar en la ciencia administrativa,
pero posiblemente una de las ms difciles de aplicar apropiadamente.

El Proceso De La Simulacin.

Es apropiado examinar el proceso completo para el cul el anlisis de simulacin es
planeado y ejecutado. El diseo del modelo de simulacin es en s mismo una parte crtica de
cualquier estudio.

El proceso comprende tres tipos de actividades:

1. Actividades de presimulacin.
2. Actividades de desarrollo.
3. Actividades de operacin.

Actividades De Presimulacin

La primera actividad es el reconocimiento del problema, este nos lleva al estudio y
anlisis del sistema y culmina en el establecimiento de un objetivo dirigido a la solucin del
problema.

Estos objetivos se pueden categorizar en:

Caracterizacin del sistema a ejecutar esto nos lleva a:

1. Seleccin de los parmetros de operacin del sistema ya existente.
2. Seleccin de los parmetros de operacin de un sistema propuesto.
3. Exploracin del comportamiento del sistema.



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
6
Modificacin De Un Sistema Existente

Diseo de un nuevo sistema.

En esta etapa del proceso el usuario debe evaluar las diferentes herramientas disponibles
relacionadas con su objetivo.
























Ejemplos:

EOQ: Modelo Tamao de lote (control de inventarios) mtodo de solucin
deductivo.
SIMPLEX: Es una solucin algortmica.

La simulacin es una tcnica apropiada donde no es factible experimentar con el sistema
mismo o donde las tcnicas analticas directas no son disponibles.






ACTIVIDADES DE PRESIMULACIN
RECONOCIMIENTO
DEL PROBLEMA
ANLISIS DEL
SISTEMA
ESTABLECIMIENTO
DEL OBJETIVO
DEDUCTIVO SIMULACIN ALGORITMO
SELECCIN
APROXIMADA
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
7
Actividades De Desarrollo

Las primeras actividades de desarrollo son el diseo y la implementacin del modelo de
simulacin. Despus que estas tareas son completadas la siguiente actividad es la verificacin
del modelo.

En el estudio del diseo de sistemas, el propsito es producir un sistema que satisfaga
algunas especificaciones. El diseador puede elegir o planear determinados sistemas de
componentes y conceptualmente elige una combinacin determinada de componentes para
construir un sistema.

El sistema propuesto se modela y se predice su comportamiento. Un modelo validado es
aquel que ha probado comportarse tal como el diseador lo intento. Fishman y Kiviat sugieren
tcnicas para verificacin incluyendo mtodos estadsticos que nos llevan ms all de las
prcticas usuales de simples anlisis comparativos.

La validacin y verificacin de un modelo parecieran ser lo mismo, pero difieren
conceptualmente de manera sutil.

Un modelo validado, es aquel que ha probado ser una abstraccin razonable del sistema
del mundo real que intenta representar.

La aproximacin usual de validacin es la corrida del modelo con datos histricos y
comparar los resultados del modelo con los resultados del sistema para los mismos datos. Tal
comparacin usualmente no es vlida debido a que el modelo puede ser de naturaleza
experimental o predictivo.

El diseo estratgico se refiere a la actividad de planeacin y diseo de la
experimentacin, incluye la especificacin de la informacin que va a ser determinada y la
exactitud de esta informacin. Existen tcnicas apropiadas de diseo experimental, tales como
factorial completo, fraccin factorial, etc.

La experimentacin al establecer un objetivo sirve para:

1. Exploracin del comportamiento del sistema
2. Optimizacin de los parmetros del sistema

La exploracin del comportamiento del sistema intenta explicar la relacin entre los
resultados de la Simulacin y los parmetros controlables.

La optimizacin es ejecutada para encontrar la combinacin de los niveles de los
parmetros los cuales minimizan o maximizan los resultados de la simulacin.




Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
8



















Actividades De Operacin

En esta etapa el proceso de simulacin, el modelo ha sido diseado, implementado y ha
sido planeado.

Las actividades posteriores son las de llevar a cabo la experimentacin. Esta debe iniciar
con el diseo tctico de los experimentos que van a ser ejecutados. Estas actividades son: la
determinacin de nmero de corrida, y la cantidad de datos a utilizar en cada corrida.

Tambin incluye el establecimiento de las condiciones iniciales de las variables del
modelo, la estimacin de los parmetros que alcanzan el estado de equilibrio del sistema. El
usuario debe determinar como debe reconocer el equilibrio.

Otras consideraciones son: el tamao de la muestra requerido para los datos, las tcnicas a
utilizar en la comparacin del sistema alternativo, s ste es el objeto de estudio.

Si el objetivo ha sido alcanzado, el estudio de simulacin ha sido completado. No
obstante, debido a que la simulacin es un proceso de prueba-error, con frecuencia el objetivo no
se puede alcanzar, entonces optamos por las dos alternativas generales disponibles.

La primera es la de modificar el modelo.
La segunda es la de utilizar el mismo modelo alternando el diseo del
experimento, usando nuevas tcnicas.




ACTIVIDADES DE DISEO
DISEO DEL
MODELO
DISEO
ESTRATGICO DEL
EXPERIMENTAL
VERIFICACIN DEL
MODELO
VALIDACIN DEL
MODELO
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
9
ACTIVIDADES DE OPERACIN
DISEO TCTICO DE
EXPERIMENTACIN
OPERACIN DEL
MODELO
EXPERIMENT
O COMPLETO?
CAMBIOS EN LOS
PARAMETROS
NO
SI
ANLISIS DE DATOS
SIMULADOS
SE CUMPLEN
LOS OBJETIVOS?
NO
SI
MODIFICAR
EXPERIMENTO MODELO
ALTO

































Consideraciones Relativas A La Simulacin

Los siguientes tpicos generalmente son cubiertos en textos de simulacin:

Control de tiempo
Generacin de nmeros aleatorios
Generacin de V.V.A.A.
Tcnicas de reduccin de varianzas
Lenguajes de simulacin

El objeto del modelo cientfico es permitir al analista la determinacin de uno o ms
cambios en los aspectos del sistema modelado que afectan otros aspectos del sistema e incluso la
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
10
totalidad del mismo. Un modelo til debe necesariamente incorporar elementos de dos atributos
en discrepancia: realismo y simplicidad.

Por un lado el modelo ha de ser una aproximacin razonable del sistema real y por tanto
incorporar la mayor parte de los aspectos importantes de este; por otro lado, no es conveniente
que un modelo resulte tan complejo que se vuelva imposible entenderlo.

Los modelos matemticos de sistemas econmicos constan de 4 elementos bien definidos:
los componentes, las variables, los parmetros y las relaciones funcionales.

Las variables se usan para relacionar un componente con otro y se clasifican en:

a) Variables Exgenas (Independientes o de entrada del modelo)
b) Variables de Estado (Controlables o no controlables)
c) Variables Endgenas (Dependientes o de salida del sistema)

Las variables que aparecen en los modelos econmicos se emplean para relacionar un
componente con otro y se clasifican, convenientemente, como variables exgenas, variables de
estado y variables endgenas.

Las variables exgenas son las independientes o de entrada del modelo y se supone que
han sido predeterminadas y proporcionadas independientemente del sistema que se modela.

Es posible clasificar las variables exgenas en controlables y no controlables. Las
controlables son aquellas variables o parmetros susceptibles de manipulacin o control por
quienes toman decisiones. Las no controlables las genera el medio ambiente en el cual el sistema
modelado existe y no el sistema en si o los encargados de tomar decisiones.

Las variables de estado describen el estado de un sistema o uno de sus componentes, ya
sea al comienzo, al final o durante un perodo de tiempo.

El valor de una variable de estado, durante un perodo particular de tiempo, puede
depender no solamente de los valores de una o ms variables exgenas en algn perodo
precedente, sino tambin del valor de ciertas variables de salida en perodos anteriores.

Las variables de estado de una empresa podran incluir el efectivo, el inventario y el
pasivo de un perodo particular (de tiempo), as como tambin las ventas en algn perodo
precedente y los gastos de propagandas para algn perodo futuro.

Las variables endgenas son las dependientes o de salida del sistema y son generadas por
la interaccin de las variables exgenas con las de estado, de acuerdo con las caractersticas de
operacin del ltimo.

El hecho que una variable en particular este clasificado como exgena, de estado o
endgena, depende del propsito de la investigacin.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
11
Las variables exgenas se emplean en dos formas diferentes en experimentos de
simulacin: es posible tratarlas como los parmetros dados, las cuales tienen, por supuesto, que
estimarse con anterioridad y almacenarse dentro de la computadora como datos de entrada; si
son variables estocsticas, existe la posibilidad de generarlas internamente en la computadora.

Hay dos relaciones funcionales que describen la interaccin de las variables y los
componentes de un modelo econmico: las identidades y las caractersticas de operacin.

Las identidades tomaran la forma de definiciones o declaraciones tautolgicas, relativas a
los componentes del modelo. Una caracterstica de operacin es una hiptesis, generalmente
una ecuacin matemtica, que relacionan las variables endgenas y de estado del sistema, con sus
variables exgenas.

Para ilustrar el sistema de clasificacin de elementos de los modelos matemticos
considrese el siguiente ejemplo:

Se considera un modelo simple de un fenmeno de espera, de un solo canal y con
estaciones mltiples para una empresa. Los componentes de este modelo se ilustran en la figura
1. Y consiste de ordenes que llegan a la empresa y procesos, a travs de los cuales, una orden
pasara antes de completarse.








El propsito del modelo es relacionar el tiempo total que requiere una orden para pasar a
travs de n procesos, con la forma en que llegan las rdenes y el tiempo que consume cada uno
de tales procesos.

El modelo contiene las siguientes variables, parmetros, caractersticas de operacin e
identidades.

Variables Exgenas.

AT
i
= El intervalo de tiempo entre la llegada de la i-sima orden y la (i-1)-sima orden, en
donde i=1,2,...,m.

ST
ij
= El tiempo de procesamiento para la i-sima orden en el j-simo proceso en donde
i=1,...,m y j=1,2,...,n.



PEDIDOS DE
FBRICA
PROCESO
1
PROCESO
2
PROCESO
n

Fig1. Diagrama de flujo de una empresa con procesos mltiples.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
12
AT
1
= 0
WT
11
= 0, WT
12
= 0,..., WT
1n
= 0
n-1

IDT
11
= 0, IDT
12
= ST
11
,..., IDT
1n
= ST
1j

j=1

T
11
= ST
11
, T
12
= ST
12
,..., T
1n
= ST
1n

Variables De Estado.

WT
ij
= el tiempo que la i-sima orden espera para entrar al j-simo proceso, en donde
i=1,...,m y j=1,...,n.

IDT
ij
= el tiempo que el proceso j-simo permanece ocioso mientras que espera la llegada
de la i-sima orden, en donde i=1,...,m y j=1,...n.

T
ij
= el tiempo total que la i-sima orden esta en el j-simo proceso, donde i=1,...,m y
j=1,...,n.

Variables Endgenas.

T
i
= el tiempo total que la i-sima orden esta en el sistema, es decir, el tiempo requerido
para pasar a travs de los n procesos.

Parmetros

E (AT) = El intervalo de tiempo esperado entre las rdenes.
Var (AT) = La varianza del intervalo del tiempo entre las rdenes.
E (ST
ij
) = El tiempo esperado para el j-simo proceso donde j=1,2,...n.
Var (ST
ij
) = La varianza del tiempo para el j-simo proceso donde j=1,2,...n.

Caractersticas De Operacin

f (AT
i
) = La funcin de densidad de probabilidad para el intervalo de tiempo entre las
rdenes.
f (ST
ij
) = La funcin de densidad de probabilidad para el tiempo de procesamiento del
j-simo proceso donde j=1,...,n.

Identidades

Cuando la primera orden llega a la empresa, es decir, cuando i=1, se supone que las
siguientes ecuaciones describen el sistema de procesos mltiples:










Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
13
Para rdenes subsiguientes, esto es, cuando i = 2,3,...,m, estas ecuaciones se modifican
adecuadamente; las ecuaciones de tiempo se convierten en:








Que el tiempo de espera o el tiempo de ocio, ocurra en un momento particular, depende
del signo de las diferencias siguientes, donde i = 2,. . .,m :







Si DIF
j
es positiva para el j-simo proceso, entonces el tiempo de ocio ser nulo y el
tiempo de espera puede calcularse con:




Si DIF
j
es negativo

para un proceso en particular, entonces el tiempo de espera ser nulo y
el tiempo de ocio ser igual a:




Si DIF
j
es igual a cero para un proceso en particular, entonces el tiempo de espera y el
tiempo de ocio, sern nulos para ese proceso.

Este modelo de una empresa con procesos mltiples, tiene varias aplicaciones posibles,
por ejemplo, supngase que al comprar un equipo nuevo, la empresa reducir, un 50% el tiempo
esperado de procesamiento, para un proceso en particular. El modelo servir entonces para
estimar el aumento esperado en el nmero total de rdenes, que es posible procesar
completamente durante un perodo particular de planeacin, para determinar s la empresa esta
justificada en la compra del nuevo equipo.






T
i1
= WT
i1
+ ST
i1
i=2,...,m
T
i2
= WT
i2
+ ST
i2
i=2,...,m
. . . . . . . . . . . . . . .

T
in
= WT
in
+ ST
in
i=2,...,m

DIF
1
= T
i-1
,
1
- AT
i

DIF
2
= (T
i-1
,
1
+ T
i-1
,
2
) (AT
i
+ WT
i1
+ ST
i1
)
...................................................................................
DIF
n
= (T
i-1
,
1
+ T
i-1
,
2
+ ... + T
i-1
,
n
) (AT
i
+ WT
i1
+ ST
i1
+ ... + WT
i
,
n-1
+ ST
i
,
n-1
)
WT
ij
= DIF
j
i = 2,...,m j = 1,...,n
IDT
ij
= - DIF
j
i = 2,...,m j = 1,...,n
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
14
Mtodos Analticos, Numricos Y De Simulacin

Consideremos un ejemplo simplificado de un ordenador, compuesto por un sistema de
entrada/salida (E/S) y una unidad de proceso (CPU). El ordenador falla cuando lo hace alguno de
los componentes. Expresado matemticamente, si X
1
designa el fallo de E/S, X
2
el tiempo hasta
el fallo de la CPU, y T el tiempo hasta el fallo del ordenador, tenemos T= min(X
1
, X
2
).
Habitualmente, habr incertidumbre sobre los tiempos anteriores, por lo que consideramos que
X
1
, X
2
y T son variables aleatorias. Supongamos que estamos interesados en calcular el tiempo
esperado E(T) hasta el fallo, tal vez como parte de un estudio destinado a mejorar la fiabilidad del
ordenador. Para simplificar la exposicin, supongamos que X
i
es exponencial de parmetro
2 , 1 , = i
i
, y ambas variables aleatorias son independientes. En este caso, tenemos que




=
0 0
2 1 2 1 2 1
2 2 1 1
) , min( ) ( dx dx e e x x T E
x x


Aproximacin Analtica

Apelamos a resultados del Clculo de Probabilidades, teniendo en cuenta la independencia y el
tipo de distribuciones. Resulta

( ) ( ) ( )
( )t t t
e e e t X P t X t X P t T P
2 1 2 1
1 2 1
,
+
= = > = > > = >
Por lo tanto, T tiene distribucin exponencial de parmetro
2 1
+ , con lo cual
2 1
1
) (
+
= T E .
Por ejemplo, si 1
1
= , 2
2
= ,
3
1
) ( = T E .

Observemos que para esta aproximacin resulta esencial emplear hiptesis de independencia y
exponencialidad, de manera que el razonamiento empleado es poco robusto; si cambiamos alguna
de esas dos hiptesis, el clculo exacto puede resultar mucho ms complicado e, incluso,
imposible de obtener mediante un mtodo analtico.

Aproximacin Numrica.

Una posibilidad, en tal caso, es apelar a algn procedimiento de integracin numrica.
Tpicamente, un paso inicial ser reparametrizar el problema, de manera que la regin de
integracin sea acotada. Por ejemplo, tenemos que, haciendo el cambio de variable
( )
i
i
i
u
X

=
1 ln


( )
( ) ( )
2 1
1
0
1
0
2
2
1
1
1 ln
,
1 ln
min du du
u u
T E
|
|

\
|
=



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
15
y podemos aplicar, por ejemplo, la regla del trapecio. En nuestro caso, con 15 nodos y, como
antes, 1
1
= , 2
2
= , obtenemos el valor .317 como aproximacin del tiempo esperado hasta el
fallo.

Obsrvese que la estrategia numrica adoptada es ms robusta, en el sentido de que si sustituimos
alguna de las dos hiptesis, somos an capaces de utilizarla. El inconveniente estar en que al
aumentar la dimensin de la regin de integracin, la aproximacin resultar cada vez ms
ineficaz.

Aproximacin Basada en Simulacin.

La aproximacin basada en simulacin consistir en construir un programa que describa el
comportamiento del sistema y realizar experimentos con l. En este caso, podramos utilizar

tiempofallo=0
desde i=1 hasta n
desde j=1 hasta 2
generar Uj uniforme en (0,1)
hacer
j j j
u X )) 1 (ln( =
tiempofallo=tiempofallo + min(X
1
, X
2
)
esp(tiempofallo)=tiempofallo/n

Esencialmente, el programa simula tiempos de fallo X
1
, X
2
y calcula el mnimo de ellos,
repitindose el proceso n veces, esto es, simulando n cadas del sistema.

El proceso de generar U
1
y luego transformarla mediante
i i i
u X )) 1 (ln( = , nos permite
simular tiempos hasta rotura del componente i-simo. Para la aplicacin particular, supongamos
que tenemos acceso a la tabla 1.1 de nmeros aleatorios. Por ejemplo, si decidimos que n=20,
podemos escoger los 20 primeros nmeros para generar los U
1

16 82 39 86 86 73 07 32 72 35 12 82 87 21 30 30 60 53 89 92

Y los ltimos para generar U
2
.

38 63 63 30 36 25 66 30 53 98 49 78 40 92 80 97 67 46 38 34

Para ello, asociamos al nmero correspondiente el cociente resultante son 16 y 38, con lo cual
U
1
=.16, U
2
=.38, X
1
=.17, X
2
=.24 y min(X
1
, X
2
)=.17. Repitiendo el proceso, resulta la estimacin
.308.

16 82 39 86 86 73 07 32 72 35 12 82 87 21 30 30 60 53 89 92
99 77 85 43 72 34 52 99 30 86 81 40 18 61 20 16 92 39 34 44
01 48 69 32 37 05 99 27 23 55 88 47 38 48 53 79 41 08 73 95
08 34 04 83 42 92 64 49 51 23 44 62 75 43 09 22 55 51 38 18
09 22 76 47 23 99 48 66 26 73 95 53 37 47 00 43 66 80 44 18
64 18 83 13 90 95 64 21 97 09 86 59 99 70 20 73 35 11 81 57
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
16
77 67 94 40 00 12 26 45 77 54 21 51 91 91 28 74 47 00 53 95
73 01 20 47 86 40 71 03 13 36 98 50 48 45 30 23 40 85 76 63
72 67 37 77 52 79 93 67 57 78 77 07 58 19 48 32 72 94 66 11
58 96 79 92 08 88 46 62 58 96 75 18 57 89 21 17 26 92 26 63
41 69 24 18 81 29 14 06 67 15 23 70 27 89 40 77 31 98 71 15
16 45 84 78 49 17 84 92 51 12 08 78 30 35 63 84 34 68 97 10
92 09 48 47 40 81 30 44 03 98 19 38 33 07 00 55 70 65 24 19
26 92 58 75 64 61 49 58 68 45 09 32 76 03 29 08 73 11 33 79
17 33 86 83 91 26 51 12 57 73 21 12 09 58 24 64 91 53 24 92
91 41 97 06 57 45 39 16 64 92 66 18 78 71 55 99 29 18 02 56
52 00 40 81 14 06 94 03 71 39 09 33 74 08 42 15 85 08 35 30
10 07 82 40 99 00 91 31 44 73 51 42 08 28 31 35 20 07 85 96
70 70 14 24 43 71 60 86 17 85 61 05 65 10 68 73 03 31 45 23
96 50 32 72 89 62 28 76 60 00 52 94 67 16 32 08 88 27 01 94
20 89 41 95 46 28 45 92 21 97 51 15 02 82 11 95 65 27 50 08
30 99 84 95 47 72 38 22 55 44 50 61 71 58 86 49 25 60 69 17
94 53 29 42 38 74 90 06 18 71 99 27 84 88 03 43 07 53 96 02
50 61 25 57 55 50 92 14 39 77 29 17 73 75 83 38 40 02 06 47
38 63 63 30 36 25 66 30 53 98 49 78 40 92 80 97 67 46 38 34

Tabla 1.1 Nmeros Aleatorios

Por supuesto, si escogemos otra muestra de la tabla, lo que correspondera a una nueva
replicacin del experimento, obtendremos una estimacin diferente.




















Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
17
Simulacin De Un Sistema De Inventarios

La simulacin es usada para comparar alternativas ordenando polticas para un sistema de
inventarios. Muchos de los elementos de modelos representativos son encontrados en sistemas
de inventarios actuales.

Planteamiento del problema

Una compaa vende un producto en particular. Desea saber cuantos de estos productos se
tendra en el inventario para cada uno de los prximos n meses.

Los tiempos entre las demandas son variables aleatorias IID, con una media de 0.1 mes.
Los tamaos de las demandas D, son variables aleatorias IID, con







Al inicio de cada mes la compaa revisa el nivel del inventario y decide cuantos artculos
ordenar de su proveedor. Si la compaa ordena Z artculos, incurre en un costo de K+iZ, donde
K = $32 que es el costo de preparacin e i = $3 que es el costo incremental por artculo ordenado.
(si Z = 0, este costo no ocurre). Cuando una orden es colocada, el tiempo requerido para que esta
llegue (llamado periodo de entrega o Leadtime) es una variable aleatoria que esta distribuida
uniformemente entre 0.5 y 1 mes.

La compaa usa una poltica (s,S) para decidir cuanto ordenar, i.e.

S I si I < s
Z =
0 si I s

donde I es el nivel del inventario al inicio del mes.

Cuando una demanda ocurre, esta es satisfecha inmediatamente si el nivel del inventario
es al menos tan grande como la demanda. Si la demanda excede el nivel del inventario, el exceso
sobre el suministro es acumulado y satisfecho por futuras entregas. (En este caso, el nuevo nivel
del inventario es igual al nivel del inventario anterior menos el tamao de la demanda, resultando
en un nivel del inventario negativo). Cuando una orden llega, primero es usada para eliminar
cuando mucho tanto como sea posible las demandas pendientes; el resto de la orden es agregada
al inventario.

Hasta ahora, hemos discutido solamente un tipo de costo incurrido por el sistema de
inventario, el costo de ordenar. Sin embargo, en la mayora de los sistemas reales tambin hay
dos tipos de costos adicionales, costo de mantenimiento y de escasez o dficit, los cuales
1 w.p 1/6
2 w.p 1/3
3 w.p 1/3
4 w.p 1/6
D = donde w.p. se lee con probabilidad.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
18
discutiremos despus de introducir algunas anotaciones adicionales. Sea I(t) el nivel del
inventario en el tiempo t[ note que I(t) podra ser positivo, negativo o cero]; sea I
+
(t)= max
[I(t),0] el nmero de artculos fsicamente disponibles en el inventario en el tiempo t[note que
I
+
(t)0]; y I
-
(t)= max [-I(t),0] los pendientes en el tiempo t[I
-
(t)0 tambin]. Una posible
realizacin de I(t), I
+
(t), I
-
(t) se muestra en la figura 1.41. Los puntos en el tiempo que I(t)
decrece son los nicos en los cuales la demanda ocurre.

I(t): Nivel del inventario en el tiempo t, siendo el valor de t positivo, negativo o cero.

I^+(t)=max {I(t),0}: Es el nmero de artculos fsicamente disponibles en el tiempo t del
inventario.

El tiempo de los puntos al cual I(t) decrece son los nicos puntos donde ocurre la demanda.






















Para nuestro modelo, debemos asumir que la compaa incurre en un costo de
mantenimiento de h=1 por artculo por mes mantenido en el inventario. El costo de
mantenimiento incluye tales costos como la renta del almacn, seguros, impuestos, y
mantenimiento tambin como el costo de oportunidad de tener el capital en el inventario que
invertir en otra parte.

Hemos ignorado en nuestra formulacin el hecho de que algunos costos de mantenimiento
ya incurrieron cuando I
+
(t)=0. Sin embargo, dado que nuestro objetivo es comparar polticas de
ordenar, ignorando este factor, que despus de todo es independiente de la poltica usada, no
afectar en nuestra evaluacin de qu poltica es la mejor. Ahora dado que I
+
(t) es el nmero de
Punto de Orden Orden de arribo Punto de Orden
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
19
artculos mantenidos en el inventario en el tiempo t, el tiempo promedio (por mes) nmero de
artculos mantenidos en el inventario por un periodo de n meses es




Que es semejante a la definicin del nmero de tiempo promedio de clientes en la cola.
As el tiempo promedio del costo de mantenimiento por mes es hI
+


Similarmente, suponga que la compaa incurre un costo de dficit de =$5 por artculo
por mes en dficit; esto cuenta para el registro de los costos extraguardado cuando existe un
dficit, tambin la perdida de buenos clientes. El nmero de promedio de veces de artculos en
dficit esta dado por es


As que el costo promedio de atrasos por mes es I
-
.

Asuma que el nivel de inventario inicial es I(0)=60 y que no ordenar no es importante.
Simulemos el sistema de inventario para n = 120 meses y use el costo total promedio por mes
(que es la suma del costo de ordenar promedio por mes, el costo de mantenimiento promedio por
mes y el costo de dficit promedio por mes) para comparar las siguientes nueve polticas de
inventario.

s 20 20 20 20 40 40 40 60 60
S 40 60 80 100 60 80 100 80 100

No discutiremos aqu el resultado de cmo estas polticas particulares fueron elegidas para
su consideracin, tcnicas estadsticas para hacer tal consideracin sern discutidas ms adelante.

Note que las variables de estado para un modelo de simulacin de este sistema de
inventario son el nivel de inventario I(t), la cantidad de una orden prominente de la compaa al
proveedor, y el tiempo del ultimo evento.[el cual es necesaria para calcular las reas bajo las
funciones I
+
(t) e I
-
(t)]









Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
20
ORGANIZACIN Y LGICA DEL PROGRAMA

El modelo de sistema de inventario usa los siguientes tipos de eventos.

Descripcin del evento Tipo del evento
Llegada de una orden a la compaa del proveedor 1
Demanda para el producto de un cliente 2
Termino de la simulacin despus de n-meses 3
Evaluacin del inventario (al inicio de mes) 4

Hemos tenido que hacer el fin de la simulacin, como un evento de tipo 3 en lugar del
tipo 4, ambos eventos fin-simulacin y evaluacin-inventario desde el tiempo 120 que sern
eventualmente programar y querer ejecutar el primer evento anterior en este tiempo. (Puesto que
la simulacin se hace despus del tiempo 120, no hay sentido en la evaluacin del inventario y un
posible ordenamiento, incurriendo en un costo de ordenar por una orden que nunca llegar). La
ejecucin del evento tipo 3 antes del evento tipo 4 es garantizado por que la rutina del tiempo da
preferencia al mas bajo evento numerado, si dos o mas eventos son programados para ocurrir al
mismo tiempo. En general un modelo de simulacin sera designado a procesar eventos en un
orden apropiado cuando un ciclo de tiempo ocurra.

La grafica de un evento aparece en la figura 1.42













Hay tres tipos de variables aleatorias que se necesitan para simular este sistema. Los
tiempos indeterminados son distribuidos exponencialmente, as que el mismo algoritmo (y
cdigo) como se desarrollo en la seccin 1.4 pueden ser usados aqu.

El tamao de demanda de la variable aleatoria D deber ser discreta, como se describi
anteriormente, y puede ser generada como sigue. Primero se divide el intervalo unitario en
subintervalos contiguos C
1
[0, 1/6), C
2
=[1/6, 1/2), C
3
=[1/2, 5/6), y C
4
=[5/6,1], y se obtiene una
variable aleatoria uniformemente distribuida en el intervalo U(0,1), si U cae en C
1
, regresa D=1;
si U cae en C
2
, regresa D=2 ; y as sucesivamente.



Orden de
llegada
Demanda Evaluacin
Termino de
la simulacin
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
21
Evento de
orden de llegada
Incremento del nivel de
inventario por la cantidad
previamente ordenada
Eliminar evento de orden de
llegada de consideracin
Regreso
Por tanto el ancho de C
1
es 1/60=1/6 , y por tanto U (generador de N aleatorios) es
uniformemente distribuido sobre [0,1] , la probabilidad que U caiga en C
1
, (y as que regresamos
D=1) es 1/6; esto concuerda con la probabilidad deseada que D=1, similarmente regresamos a
D=2, si U cae en C
2
teniendo una probabilidad igual al ancho de C
2
, - 1/6= 1/3, como se
dese y as para los siguientes intervalos.

Los subprogramas para generar los tamaos de demandas todos usan estos principios y
toman como entrada el interruptor de puntos definiendo los subintervalos de llegada anterior los
cuales son las probabilidades acumuladas de la distribucin de D.

Los atrasos en las entregas son uniformemente distribuidos pero no sobre el intervalo
unitario [0,1]. En general podemos generar una variable aleatoria uniformemente distribuida
sobre cualquier intervalo [a,b] generando un numero aleatorio U(0,1) y despus regresar a
a+U(b a).

De los cuatro eventos solamente 3 involucran verdaderamente el cambio de estado (el
termino de eventos de simulacin es la excepcin) por lo tanto su lgica, es un lenguaje
independiente.

En el evento llegada orden, se muestra en la figura 1.43 y debemos hacer los cambios
necesarios cuando una orden llegue del proveedor. El nivel del inventario es incrementado y
desde su consideracin del evento llegada de una orden debe ser eliminada.

Evento de Orden de Llegada





















Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
22
Evento evaluacin
del inventario
Si
I(t)<s?
Determine la cuenta de
orden [S I(t)]
Costo de orden incurrido y
recoger estadsticas
Programar el evento orden
de llegada para esta orden
Programar el prximo
evento evaluacin del
inventario
Return
El evento de la demanda est dado en la figura 1.44 y procesa los cambios necesarios para
representar un caso de demanda. Primero, el tamao de la demanda es generada, y el inventario
es decrementado por esta cantidad. Finalmente el tiempo de la prxima demanda es programada
en la lista de eventos. Note que esto ocurre donde el nivel del inventario pueda ser negativo.

El evento evaluacin del inventario tiene lugar en el comienzo de cada mes, su diagrama
de flujo es el siguiente. Fig. 1.45

Si el nivel del inventario I(t) en el tiempo de evaluacin es al menos s, entonces ninguna
orden se coloca, y no se hace nada excepto la programacin de la siguiente evaluacin en la lista
de eventos. En cambio, si I(t)<s, colocamos una orden para S I(t) artculos. Esto es hecho para
almacenar la cantidad de ordenar [S I(t)]hasta la llegada de la orden, y programar su tiempo de
llegada. En este caso tambin, queremos programar el prximo evento evaluacin del inventario.

Como en el modelo de colas de un solo servidor, es conveniente escribir una rutina para
actualizar los acumuladores de la estadstica de tiempo continuo. Para este modelo, sin embargo,
haciendo esto ligeramente mas complicado, daremos al diagrama de flujo.





























Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
23
El principal punto es si necesitamos actualizar el rea debajo de I
-
(t) o I
+
(t) (o ninguno).
Si el nivel de inventario ha sido negativo desde el ultimo evento, entonces tenemos un atraso, en
el rea debajo de I
-
(t) solo estaramos actualizando. En cambio si el nivel del inventario ha sido
positivo necesitamos actualizar en el rea I
+
(t). Si el nivel de inventario ha sido cero no se
necesita actualizar. El cdigo en ambos lenguajes para esta rutina tambin trae la variable de
tiempo del ltimo evento al tiempo presente. Esta rutina ser invocada desde el programa
principal justo despus de regresar de la rutina coordinada. Ignorando el tipo de evento o si le
nivel del inventario esta actualizado en los cambios en estos puntos. Esto proporciona una simple
manera de actualizar integrales para estadsticas de tiempos continuos.





































Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
24
0 x<0
x 0<x<1
1 x>1
F(X) =
UNIDAD II

Generacin De Nmeros Pseudoaleatorios

En principio definiremos la funcin de distribucin acumulada para la distribucin
uniforme estandarizada como:




En la prctica, se requieren sucesiones de nmeros aleatorios para la generacin de los
datos de entrada para el proceso de simulacin.

Se tienen cuatro mtodos alternativos para generar o proveer sucesiones de nmeros
aleatorios:

1. Mtodos manuales {lanzamiento de monedas, dados, cartas, ruleta, etc.}
2. Tablas {corporacin rand}
3. Mtodos analgicos de computacin
4. Mtodos de computacin digitales

Los mtodos analgicos comprenden el uso de procesos fsicos aleatorios
(comportamiento de corriente elctrica), se considera que producen verdaderos nmeros
aleatorios.

En el caso de los mtodos digitales hay 3 formas para proveerse de nmeros aleatorios:
provisin externa, generacin interna por medio de un proceso fsico al azar, generacin interna
por medio de una relacin de recurrencia.

En el caso de provisin externa, lo que se hace es, grabar las tablas de nmeros 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 algn proceso aleatorio y que los traduzca a sucesiones de dgitos, tales procesos
pueden ser el decaimiento radiactivo, el ruido trmico, entre otros.

El defecto de estos procedimientos analgicos es el de que las sucesiones as generadas no
pueden reproducirse.

La generacin interna por medio de una relacin de recurrencia, comprende la
generacin por medio de una transformacin indefinidamente continuada aplicada a un grupo
de nmeros elegidos en forma arbitraria.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
25
n
i+1
a n
i
+ c (mod m) 1

donde:
n
i
, a, c y m : son enteros no negativos
para i= 0,1,2,... al desarrollar la ecuacin

n
1
= a n
0
+ c (mod m)
n
2
= a n
1
c= a(an
0
+ c) + c a
2
n
0
+ (a +1)c (mod m)
n
3
= a
3
n
0
(a
2
-a+1)c = a
3
n
0
+ c (a
2
-1) (mod m)
. (a-1)
.
.
n
i
= a
i
n
o
+ c(a
i
-1) (mod m) 2
(a-1)

n
0
= constante inicial
c = constante aditiva
a = constante multiplicativa
El primer mtodo conocido para generar nmeros aleatorios de manera recurrente se
considera que es de los cuadrados centrales, en el que cada nmero de la sucesin se obtiene
tomando los dgitos centrales del cuadrado del nmero precedente.

En la actualidad se prefiere el uso del mtodo de congruencias para generar nmeros
aleatorios satisfactorios.

Cualquiera que sea el mtodo para generar nmeros aleatorios debe satisfacer las
siguientes condiciones:

Deben ser:

1. Uniformemente distribuidos
2. Estadsticamente independientes
3. Reproducibles
4. Sin repeticin dentro de una longitud determinada de la sucesin
5. Generacin a grandes velocidades
6. Requerir el mnimo de capacidad de almacenamiento

Mtodo De Congruencias:

Estos mtodos se basan en una relacin fundamental de congruencias que se expresa
como:




















Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
26
Los trminos de la sucesin {n
i
} forman una sucesin de residuos modulo m, es decir, n
i
<
m n
i
; a partir de los nmeros enteros de la sucesin {n
i
} se pueden obtener nmeros racionales
en el intervalo (0,1) con solo formar la sucesin:

{r
i
} = {n
i
/ m}

Respecto a la pregunta de que si existe un mnimo valor positivo para i, i=h tal que n
h
= n
0

donde h es el perodo de la sucesin {n
i
}; si h existe, cabe preguntarse que condiciones se pueden
imponer sobre n
0
, a, c y m de manera que el periodo de {n
i
} sea lo ms largo posible.

Se tienen 3 versiones del mtodo de congruencias para generar nmeros
pseudoaleatorios:

1. Mtodo Aditivo

N
i+1
= n
i
+ n
i-k
(mod m)
Si k = 1 se tiene la sucesin de Fibonacci

2. Mtodo Multiplicativo

Produce una sucesin {n
i
} donde cada nmero es menor que m.
N
i+1
an
i
(mod m)
Este mtodo tiene buenos resultados estadsticos en relacin con las
pruebas de aleatoriedad e independencia.

3. Mtodo Mixto

N
i+1
an
i
+ c (mod m)

Mtodo Multiplicativo

El modulo que emplea este mtodo es m = p
e
donde p representa el nmero de
guarismos del sistema numrico que usa la computadora y e denota el nmero de dgitos en
una palabra. En computadoras binarias p=2; en computadoras decimales p=10.

La ecuacin recursiva para generar residuos potenciales es:

n
i+1
an
i
(mod p
e
)


Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
27
Computadoras Binarias

m = 2
b

b = nmero de bits de palabra b >2
h = 2
b-2
mximo perodo que se puede obtener

El problema se reduce a encontrar multiplicadores que tengan orden h=2
b-2
; a tiene que
ser primo relativo de m=2
b
y por lo tanto tiene que ser impar.

Los valores de a se encuentran en una clase residual que se representa por:

a 3 (mod 8) a = 8t 3

t = 0, 1, 2, 3,..... entero positivo

Los valores de a prximos a 2
b/2
minimizan la correlacin en serie de primer orden. Con
respecto al valor inicial n
o
, este debe ser primo relativo de m = 2
b
, entonces n
0
puede ser
cualquier nmero entero impar.

Procedimiento:

1. Se escoge cualquier nmero impar como valor inicial n
0

2. Se elige un entero a = 8t 3
3. Se calcula an
0
usando aritmtica entera de punto fijo. Este producto consta de 2b
bits, de los cuales se descartan los bits de orden superior, dejando para n
1
los bits
restantes.
4. Se calcula r
1
= n
1
/ 2
b
= n1 / 2
b

5. Cada nmero aleatorio sucesivo n
i+1
se obtiene a partir de los bits de menor
orden en el producto an
i


Ejemplo:

Sea b = 4, m = 2
4
= 16 y h = 2
4-2
= 4

1.- n
0
= 7 n
0
= 0111

2.- a cerca de 2
b/2
= 4 si t = 1, a puede ser 5 3
si a = 5 a = 0101

3.- an
o
= (0101)(0111) = 00100011
n
1
= 0011 r
1
= 3/16 = 0.1875

4.- an
1
= (0101)(0011) = 00001111
n
2
= 1111 r
2
= 15/16 = 0.9375


Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
28
5.- an
2
= (0101)(1111) = 01001011
n
3
= 1011 r
3
= 11/16 = 0.6875

6.- an
3
= (0101)(1011) = 00110111
n
4
= 0111 r
4
= 7/16 = 0.4375

y as sucesivamente...

Computadoras Decimales

m = 10
d
= 2
d
5
d

d = nmero de dgitos decimales de la palabra. d>3
a = debe ser nmero primo relativo de 10
d


El orden h de a (mod 10
d
) es: h = m.c.m. [2
d-2
,4 * 5
d-1
] = 5 * 10
d-2


Los multiplicadores constantes con perodo 5 * 10
d-2
se pueden ubicar en 32 clases
residuales distintas mod 200, dado por:

a = (3, 11, 13, 19, 21, 27, 29, 37, 53, 59, 61, 67,69, 77, 83, 91) (mod 200)

tambin se puede expresar como:

a = 200t p t = 0, 1, 2, 3, ...
p = uno de los 32 nmeros dados anteriormente.

De igual modo n
0
debe ser primo relativo de m = 10
d
, lo cual implica que tiene que ser
impar, no divisible entre 5 para seleccionarse como valor inicial.

a 10
d/2


El procedimiento es semejante al caso binario:

1. Seleccinese n
0
, un nmero impar no divisible entre 5.
2. Seleccinese a = 200t p
a 10
d/2
3. Calcular an
0
utilizando aritmtica entera de punto fijo.
4. Calcular r
1
= n
1
/10
d

5. Cada nmero aleatorio subsecuente n
i+1
se obtiene a partir de los dgitos de
menor orden del producto an
i
.





Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
29
Ejemplo:

Sea d = 4, m = 10
4
= 10,000, h = 5*10
4-2
= 500

1.- n
0
= 5379
2.- a 10
2
= 100
a = 200(0)+91 a = 200(1)-91
a = 91 a =109
3.- an
0
= (0091)(5379) =00489489
n
1
= 9489 r
1
= 9489 = 0.9484
10000

y as sucesivamente...

Pruebas Estadsticas

Las propiedades estadsticas que deben poseer los nmeros pseudoaleatorios generados
por los mtodos congruenciales tiene que ver con independencia y aleatoriedad estadsticas.

La prueba de la frecuencia se usa para comprobar la uniformidad de una sucesin de N
nmeros pseudoaleatorios. Para cada conjunto de N nmeros pseudoaleatorios r
1
, r
2
,...r
n
, se
divide el intervalo unitario (0,1) en x subintervalos iguales; el nmero esperado de nmeros
pseudoaleatorios que se encontrarn en cada subintervalo es N/x. Si fj (j=1, 2...x) denota el
nmero que realmente se tiene de nmeros pseudoaleatorios r
i
(i=1,2,...N) en el subintervalo (j-
1)/ x r
i
< j/x entonces el estadstico:

(

=
N
x
2
1

2
1

=
(


x
j
j
x
N
f

tiene aproximadamente una distribucin x
2
con x-1 g.l

La hiptesis de que los nmeros pseudoaleatorios en el de conjunto de N nmeros
pseudoaleatorios, son verdaderos nmeros pseudoaleatorios, debe rechazarse si x
1
2
con x-1 g.l.
excede su valor critico fijado por el nivel de significancia deseado.











Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
30
Ejercicio:

Verificar que el conjunto de 100 nmeros aleatorios se distribuye uniformemente, con
= 5%.

0.001213 0.898980 0.578800 0.676216 0.050106
0.499629 0.282693 0.730594 0.701195 0.182840
0.108501 0.386183 0.769105 0.683348 0.551702
0.557434 0.799824 0.456790 0.216310 0.876167
0.092645 0.589628 0.332164 0.031858 0.611683
0.762627 0.696237 0.170288 0.054759 0.915126
0.032722 0.299315 0.308614 0.833586 0.517813
0.352862 0.574100 0.265936 0.859031 0.433081
0.941875 0.240002 0.655595 0.385079 0.908297
0.199044 0.936553 0.888098 0.817720 0.369820
0.339548 0.543258 0.624006 0.091330 0.416789
0.155062 0.582447 0.858532 0.887525 0.337294
0.751033 0.239493 0.535597 0.333813 0.493837
0.634536 0.199621 0.650020 0.745759 0.791130
0.227241 0.191479 0.406443 0.081288 0.734352
0.721023 0.222878 0.072814 0.641837 0.442675
0.789616 0.052303 0.106994 0.558774 0.141519
0.760869 0.120791 0.277380 0.657266 0.792691
0.805180 0.826543 0.294530 0.208524 0.429894
0.585186 0.986111 0.344882 0.343580 0.115375





Fo 10 11 11 11 8 11 10 13 10 5


Para resolverlo se utiliza la siguiente ecuacin:


( )


=
E F
E F O F
.
. .
2
2
1


0 - 0.1 0.1 0.2 0.2 0.3 0.3 - 0.4 0.4 0.5 0.5 0.6 0.6 0.7 0.7 0.8 0.8 0.9 0.9 1.0
0.001213 0.108501 0.227241 0.352862 0.499629 0.557434 0.634536 0.762627 0.805480 0.941875
0.092645 0.199044 0.282693 0.339548 0.456790 0.585186 0.696237 0.751033 0.898980 0.936553
0.032722 0.155062 0.299315 0.386183 0.406443 0.589628 0.655595 0.721023 0.826543 0.986111
0.052303 0.199621 0.210002 0.332164 0.433081 0.574100 0.624006 0.789616 0.888098 0.915126
0.072814 0.191479 0.239493 0.308614 0.416789 0.543258 0.650020 0.760869 0.858532 0.908297
0.031858 0.120791 0.222878 0.344882 0.493837 0.582447 0.676216 0.799824 0.833586
0.054759 0.170288 0.265936 0.385079 0.442675 0.578800 0.683348 0.730594 0.859031
0.091330 0.106944 0.277380 0.333813 0.429894 0.535597 0.641837 0.779105 0.817720
0.081128 0.182840 0.294530 0.343580 0.558774 0.657266 0.701195 0.887525
0.050106 0.141519 0.216310 0.369820 0.551502 0.611683 0.745795 0.876167
0.115375 0.208524 0.337294 0.517813 0.791130
0.734352
0.792691
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
31
Donde:

F.E. = Total de nmeros aleatorios = 100 = 10
Nmeros de subintervalos 10

F.O. = Total de nmeros observados en cada subintervalo.


( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
2 . 4
10
10 5
10
10 10
10
10 13
10
10 10
10
10 11
10
10 8
10
10 11
10
10 11
10
10 11
10
10 10
2
1
2 2 2 2 2 2 2 2 2 2
2
1
=


Nosotros especificamos arbitrariamente un valor de = 0.05 (esto significa un error del tipo
I del 5%) el valor obtenido de
1
2
= 4.2 as pues podemos compararlo con el valor crtico de:

X
2
0.05
(9) = 16.919

Puesto que X
2
0.05
(9) = 16.919 >
1
2
= 4.2, entonces podemos decir que la tabla de nmeros
aleatorios se distribuye uniformemente.

Prueba De Medias

Consiste en verificar que los nmeros generados tengan una media estadsticamente igual
a 1/2, de este modo la hiptesis planteada es:

Ho = hiptesis nula: =
H
1
= hiptesis alternativa:

Paso 1 Calcular la media de los n nmeros generados

= =
=
n n
i l
r
n
r
n
X 1
1 1
1

Paso 2 Calcular los lmites superior e inferior de aceptacin

(

+
=
n
Z
ls
x
12
1
2
2 / 1


(


=
n
Z
li
x
12
1
2
2 / 1


Paso 3 Si el valor X se encuentra entre li y ls, aceptamos que los nmeros tienen una
media estadsticamente igual a con un nivel de aceptacin 1-.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
32
Ejemplo:

Realice la prueba de medias a los primeros 30 nmeros aleatorios producidos con un
generador congruencial mixto, con un nivel de confianza del 95%.

Los nmeros generados son:

0.03991 0.10461 0.93716 0.16894 0.98953 0.73231
0.25543 0.34565 0.02345 0.67347 0.10987 0.25678
0.71890 0.61234 0.86322 0.94134 0.99872 0.27657
0.82345 0.12387 0.05389 0.82474 0.59289 0.36782
0.72484 0.48999 0.50502 0.39528 0.36782 0.90234
2.56253 1.67646 2.38274 3.00377 3.05883 2.53582

= 15.22015


X = 15.22015/30 = 0.507338
X 0.5000
(

=
(

+ =
30 12
1
5 . 0
30 2
1
5 . 0
025 . 0
025 . 0
Z li
Z ls
x
x

Para buscar el valor de Z
0.025
se resta 1 - 0.025 = 0.975 y se busca en la tabla

|Z
0.025
| = 1.96
ls
x
= 0.5298 li
x
X ls
x
li
x
= 0.4701


Ho se acepta












Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
33
2

x
i
l
x
s
l
2

2
1
=
n
Z
x
i
12
2
2
1

+ = l
n
Z
x
s
12
2
2
1

+ = l
2
1
1
2
1
0
=
= =

H
H
Ejemplo: Generar nmeros aleatorios dados por la siguiente funcin

( ) 100 mod 3
1 n n
X X =
+


( ) ( ) ( ) ( ) [ ]
( ) ( ) ( ) [ ]
( ) ( )
( ) ( )
( ) [ ]
( )
43
20 100
20
20 , 2 . . 100
20 5 4 5 1 5 25
2 2 1 2 1 2 4
5 , 2 . 100
, , , . .
2
5 2 5 5 2 2 25 2 2 50 2 100
0
1 2
1 2
2 2
2 1
2 2
2 1
=
= =
=
=
= = =
= = =
=
=
=
= = = =

X
h
m c m
cm m
P P P m c m m
d
s
e
s
e e


K


Pruebas de frecuencias


( ) ( ) ( ) ( ) ( )
49 . 9
4 4 4 4 4 4 4 4 4 4
0
4
5

4 , 05 . 0
2
2 2 2 2 2 2
1
2
1
5
20
2
1
2
1
=
+ + + + =
=
= =
=
|

\
|

|

\
|
=

=

x
N
x
j
j
x
x
N
f
N
x


Pruebas de medias







n X
n
r
n
1 29 0.29
2 87 0.87
3 61 0.61
4 83 0.83
5 49 0.49
6 47 0.47
7 41 0.41
8 23 0.23
9 69 0.69
10 7 0.07
n X
n
r
n
11 21 0.21
12 63 0.63
13 89 0.89
14 67 0.67
15 1 0.01
16 3 0.03
17 9 0.09
18 27 0.27
19 81 0.81
20 43 0.43
21 29 0.29
Sub int F
j
0 - 0.2 4
0.2 - 0.4 4
0.4 - 0.6 4
0.6 - 0.8 4
0.8 - 1 4
= nivel de confianza de la prueba
= 1% o 5%
n
x
X

=
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
34
Prueba De Varianza

Consiste en verificar si los nmeros aleatorios generados tienen una variancia de 0.083, de
tal forma que la hiptesis queda expresada como:

H
o
: V(x) = 1/12
H
i
: V(x) 1/12

Paso 1. Calcular la variancia de los n nmeros generados V(x).
( )
( )
1
1
2

=
n
x r
x V
n
i
i


Paso 2. Calcular los lmites superior e inferior de aceptacin.

( )
( ) 1 12
1 , 2
2

=

n
ls
n
x V



( )
( ) 1 12
1 , 2 1
2

=

n
li
n
x V



Paso 3. Si V(x) se encuentra entre los valores de li
v(x)
y ls
v(x)
, aceptamos la hiptesis nula
y los nmeros aleatorios tiene una variancia estadsticamente igual a 1/12.

Ejemplo:

Realice la prueba de variancia a los siguientes 30 nmeros con un nivel de confianza del
95%.
.72484 .48999 .50502 .39528 .36728 .90234
.71890 .61234 .86322 .94134 .99872 .27657
.34565 .02345 .67347 .10987 .25678 .25593
.82345 .12387 .05389 .82474 .59289 .36782
.03991 .10461 .93716 .16894 .98953 .73231

x = 0.507337

Aplicando la ecuacin del paso 1 se tiene V(x)= 0.104. Al calcular los lmites de
aceptacin para muestras de tamao 30,

( )
( ) ( )
1313 . 0
29 12
7 . 45
1 12
1 , 2
2
= =

=

n
ls
n
x V



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
35
( )
( ) ( )
046 . 0
29 12
00 . 16
1 12
1 , 2 1
2
= =

=

n
li
n
x V



El valor se encuentra dentro de lmites de aceptacin por lo que se acepta que la variancia
de la muestra es estadsticamente igual a 1/12.

Prueba De Poker

Las pruebas de independencia consisten en demostrar que los nmeros generados son
estadsticamente independientes entre s, esto es, que no depende uno de otro.

Hay varios mtodos, entre los cuales estn:

La prueba de Poker
La prueba de corridas arriba y abajo
La prueba de corridas arriba debajo de la media
La prueba de la longitud de las corridas
La prueba de series

La prueba de poker plantea la siguiente hiptesis:

Ho : ri independiente
H
1
: r
i
dependiente

Paso 1. Calcular las probabilidades esperadas para un juego de poker con 5 cartas
numeradas del 0 al 9 con reemplazos. Se tienen 7 eventos con las siguientes
probabilidades:

P (Pachuca) = 0.3024
P (par) = 0.5040
P (2 pares) = 0.1080
P (1 tercia) = 0.0720
P (Full) = 0.0090
P (Poker) = 0.0045
P (Quintilla) = 0.0001

Paso 2. Calcular la frecuencia esperada de cada uno de los eventos multiplicando la
probabilidad de cada evento por la cantidad de nmeros aleatorios generados.

Paso 3. Para cada nmero aleatorio generado verificar si es Pachuca, 1 par, 2 pares,
etc., tomando los primeros 5 dgitos a la derecha del punto decimal. Con estos resultados
se genera una tabla de frecuencias observadas de cada uno de los eventos.



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
36
Paso 4. Calcular la estadstica:

( )

=
m
i
FE
Foi FEi
1
2
2
1


Paso 5. Si el valor de C
2
no excede al estadstico de tablas
i
2
con 6 g.l. y una
probabilidad de rechazo alfa =, entonces se acepta que los datos son estadsticamente
independientes entre s.

Ejemplo:

Realice la prueba de Poker a los siguientes 30 nmeros con un nivel de confianza del
95%. ( = 5%)


0.72484 0.48999 0.50502 0.39528 0.36782 0.90234
0.71890 0.61234 0.86322 0.94134 0.99872 0.27657
0.34565 0.02345 0.67347 0.10987 0.25678 0.25593
0.82345 0.12387 0.05389 0.82474 0.59289 0.36782
0.03991 0.10461 0.93716 0.16894 0.98953 0.73231












( ) ( ) ( ) ( )
336 . 5
003 . 0 135 . 0 27 . 0 548 . 1 622 . 0 082 . 0 676 . 2
003 . 0 135 . 0 27 . 0
24 . 3
1 24 . 3
16 . 2
1 16 . 2
12 . 15
14 12 . 15
072 . 9
14 072 . 9
2
1
2
1
2 2 2 2
2
1
=
+ + + + + + =
+ + +

2
0.05, 6
= 12.6

6 , 05 . 0
2
2
1

H
0
se acepta




FO PE FE
Pachuca 14 0.3024 9.072
Un Par 14 0.5040 15.12
Tercia 1 0.0720 2.16
Dos Pares 1 0.1080 3.24
Full 0 0.0090 0.27
Poker 0 0.0045 0.135
Quintilla 0 0.0001 0.003
FE = PE.n
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
37
Prueba De Series
Ho : r
i
independiente
H
1
: r
i
dependiente

Paso 1 Crear un histograma de dos dimensiones con m intervalos, clasificando cada
pareja de nmeros consecutivos (r
i
, r
i + 1
) dentro de las casillas de dicho histograma de
frecuencias. El nmero total de pares ordenados en cada casilla formar la frecuencia
observada: Fo
i
.

Paso 2 Calcular la frecuencia esperada en cada casilla FE de acuerdo con FE=nm/m
donde nm. es el nmero total de parejas ordenadas.

Paso 3 Calcular el error
1
2
, con la ecuacin:
( )

=
m
i i
i i
FE
FO FE
1
2
2
1

Paso 4 Si el valor de
1
2
es menor o igual al estadstico de tablas
1
2
con m-1 grados de
libertad y una probabilidad de rechazo , entonces aceptamos que estadsticamente los
nmeros son independientes.

Ejemplo:

Realice la prueba de series a los siguientes 30 nmeros con un nivel de confianza del 95%

0.72484 0.48999 0.50502 0.39528 0.36782 0.90234
0.71890 0.61234 0.86322 0.94134 0.99872 0.27657
0.34565 0.02345 0.67347 0.10987 0.25678 0.25593
0.82345 0.12387 0.05389 0.82474 0.59289 0.36782
0.03991 0.10461 0.93716 0.16894 0.98953 0.73231

Al formar parejas ordenadas se obtiene:

(.72484, .48999) (.48999, .50502) (.50502, .39528) ... (.98953, .73231)

La clasificacin en una tabla de frecuencias de dos dimensiones de 4 x 4, (m=16), queda

r
i+1
1 3 2 1 2
0.75 1 1 1 3
0.50 1 3 3 1
0.25 2 2 1 2
0 0.25 0.50 0.75 1 ri

Tomando en cuenta que se tienen 29 parejas ordenadas clasificadas uniformemente en 16
casillas, la frecuencia esperada FE en cada una es 1.8125 y al calcular el error con la ecuacin del
paso 3, para cada una de las 16 celdas o intervalos de la tabla anterior se tiene:
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
38
( ) ( )

= =

=
16
1
2
1
2
2
1
8125 . 1
8125 . 1
i
i
m
i i
i i
FO
FE
FO FE

( ) ( ) ( ) [ ] 75 . 5 3 8125 . 1 4 2 8125 . 1 5 1 8125 . 1 7
8125 . 1
1
2 2 2 2
1
= + + =

El valor de la tabla
2
con un nivel de confianza del 95% y con 15 grados de libertad es
igual a 25. Si se compara
1
2
=5.75 con este valor, se acepta la independencia de la secuencia de
nmeros.
15 , 05 . 0
2 2
1

Por consiguiente Ho se acepta.

Ejemplo:

Realice la prueba de Poker y la prueba de series a los siguientes 30 nmeros con un nivel
de confianza de 95%







Prueba de poker










( ) ( ) ( ) ( )
003 . 0 135 . 0 27 . 0
24 . 3
24 . 3 3
16 . 2
16 . 2 5
12 . 15
12 . 15 15
072 . 9
072 . 9 7
2 2 2 2
2
1
+ + +

=
11 . 2
2
1
=

6 . 12
2
6 , 05 . 0
=
2
6 , 05 . 0
2
1
<

0.03991 0.24122 0.10461 0.66591 0.93716 0.27699
0.38555 0.61196 0.95554 0.30231 0.32886 0.92962
0.17546 0.30532 0.73704 0.21704 0.92052 0.10274
0.32643 0.03788 0.52861 0.97599 0.95189 0.75867
0.69572 0.48228 0.68777 0.63379 0.39510 0.85783
Evento PE FO FE
Pachuca 0.3024 7 9.072
Par 0.5040 15 15.12
Tercia 0.0720 5 2.16
2 Pares 0.1080 3 3.24
Full 0.0090 0 0.27
Poker 0.0045 0 0.135
Quintilla 0.0001 0 0.003
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
39
3
1
3
2
1
3
1
3
2
1
Prueba de series




IIIIII
6
II
2
III
3


III
3

0
IIII
4


III
3
IIIII
5
III
3




22 . 3
9
29
= = FE

( ) ( ) ( ) ( ) ( ) ( ) [ ]
2 2 2 2 2 2 2
1
22 . 3 6 22 . 3 5 22 . 3 4 22 . 3 3 4 22 . 3 2 22 . 3 0
22 . 3
1
+ + + + + =
31 . 7
2
1
=

51 . 15
2
8 , 05 . 0
=
2
8 , 05 . 0
2
1
<


















Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
40

Apndice A

Elementos de la teora de nmeros

A fin de comprender totalmente y apreciar los mtodos para generar nmeros
pseudoaleatorios que se consideran, es requisito previo tener un conocimiento bsico de los
elementos de la teora de los nmeros. El apndice A contiene un conjunto bsico de definiciones,
ejemplos y teoremas de la teora de nmeros que resultan pertinentes para la comprensin de los
fundamentos racionales sobre los que se basan los mtodos.

Definiciones

Definicin 1. Para dos enteros a y b, con b 0, existe un nico par de enteros t y n, tal que a = bt
+ n 0 n < b, en donde t es el cociente n es el residuo.

Definicin 2. Un entero a es divisible entre un entero b si existe un entero t tal que bt a =

Definicin 3. Un entero p es un nmero primo si no es 0 ni 1 y si sus nicos divisores son 1 y
p. Por ejemplo, los primeros primos positivos son 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37.

Definicin 4. Un entero g es el mximo comn divisor (m.c.d.) de dos enteros a, b, si g es un
divisor comn de a y b, adems es un mltiplo de cualquier otro divisor comn de a y b.
Notacin: m.c.d. (a,b) = g, o similar a (a b) = g.

Definicin 5. Un entero d es el mnimo comn mltiplo (m.c.m.) de dos enteros a y b si d es un
divisor de cada mltiplo comn de a y de b, y es a su vez un mltiplo comn. Notacin: m.c.m.
[a, b] = d o [a, b] = d.

Definicin 6. Se dice que los enteros a y b son primos relativos si (a, b) = 1.

Definicin 7. Dos enteros a y b son congruentes mdulo m si su diferencia es un mltiplo entero
de m. La relacin de congruencia se expresa por la notacin a b (mod m), que se lee a es
congruente con b mdulo m, esto tambin significa que:

1) (a-b) es divisible entre m, y
2) a y b dan el mismo residuo al ser divididos entre m.
Ejemplo: 5590 6 (mod 8) y 2327 27 (mod 10
2
).

Definicin 8. Para una a dada, el menor entero positivo n tal que a n (mod m) recibe el nombre
de residuo mdulo m. Existe m residuos distintos (mod m); 0, 1, 2, . . .,m 1.

Definicin 9. Una clase de enteros mutuamente congruentes para un mdulo dado, forman una
clase residual. Existen m distintas clases residuales (mod m). Ejemplo: si m=2, las dos clases
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
41
residuales distintas son: la coleccin de todos los nmeros impares y la de los nmeros pares,
respectivamente.

Definicin 10. Para un mdulo dado m, el conjunto de los m enteros congruentes en algn orden
con los residuos 0, 1, 2, . . ., m 1, forman un sistema residual completo.

Definicin 11. Un subconjunto de un sistema residual completo que contenga todos los enteros
que sean primos relativos de m, recibe el nombre de un sistema residual reducido.

Definicin 12. El nmero de enteros positivos menores que m y primos relativos de m, se
conoce como la funcin Fi de Euler y se denota por (m). Un sistema residual reducido
contiene (m) enteros. Si m = p, es un nmero primo, entonces (p) = p 1.

Definicin 13. Los residuos potenciales son los residuos de las potencias sucesivas de un entero
a mdulo m. Si el residuo de la i-sima potencia de a (mod m) se denota por n
i
, entonces todos
los residuos potenciales satisfacen la relacin de congruencia n
i
a
i
(mod m) (i = 1, 2, 3, . .)

Definicin 14. Si (a, m) = 1, el mnimo exponente positivo i = h, tal que a
i
1 (mod m), se dice
que es el orden de a (mod m). El mnimo exponente positivo h tambin recibe el nombre de
multiplicador de m cuando a se dice que pertenece a m. En este caso, h se denota por h = (m).
El orden h de a (mod m) es igual al nmero total de nmeros distintos, esto es, la longitud de una
sucesin que no se repite de residuos potenciales de a, llamada el perodo de la sucesin {n
i
};

i = 1, 2, . . ., h (mod m).

Definicin 15. Un entero a de orden h = (m) (mod m) es la raz primitiva de m. Ejemplo: h =
3 (31) para a = 5 en el ejemplo (1) de la definicin 13, pero h = 30 = (31) para a = 3 en el
ejemplo (2); consecuentemente 3 es la raz primitiva de 31.

Ejemplos de residuos potenciales son:

(1) a = 5, m = 31, (m) = 30
i a
i
n
i
a
i
(mod m)
1 5 5
2 25 25
3 125 1*
4 625 5
. . . . . . .







Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
42
(2) a = 3, m = 31, (m) = 30
i a
i
n
i
i n
i
i n
i

1 3 3 11 13 21 15
2 9 9 12 8 22 14
3 27 27 13 24 23 11
4 81 19 14 10 24 2
5 243 26 15 30 25 6
6 729 16 16 28 26 18
7 2187 17 17 22 27 23
8 6561 20 18 4 28 7
9 19683 29 19 12 29 21
10 59049 25 20 5 30 1*

La sucesin de los residuos potenciales se repite para potencias de orden superior.

Teoremas

Teorema 1. Si a b(mod m) y x y(mod m), entonces a x b y(mod m), y ax by(mod m).

Teorema 2. Si (d, m) g, entonces dx dy (mod m) implica que x y (mod m/g).

Teorema 3. Si a b (mod m) y d es un divisor de m, entonces a b (mod d). Las
demostraciones de los teoremas 1, 2 y 3, resultan de la definicin [2 p.24].

Teorema 4. Cualquier entero m (distinto de 0 1) se puede factorizar de forma nica en
nmeros primos, esto es, m = pi
ei
, (i = 1, 2, 3, . . .), donde e
i
es una constante y denota al
producto p1
ei
x p
2
e2
x p
3
e3
. . . La prueba de esto se debe a Euclides [2, p.21].

Teorema 5. Si (a, m) = 1, entonces a
(m)
1 (mod m), de lo cual se sigue que:

1. El mayor orden posible de a es h = (m) cuando a es una raz primitiva de m.
2. Para n < m tales que (m, n) = 1, na
h
n (mod m), donde h = (m). La prueba de
esto se atribuye a Euler y se obtiene de los teoremas 2 y 3.

Teorema 6. Para todas las potencias de un nmero primo p > 2 existen las races primitivas, i.e.
existe un nmero tal que (a, p
e
) = 1 y a
(pe)
1 (mod p
e
) donde h (p
e
).

Teorema 7. Si m = p
i
ei
, entonces (m) = (p
i
- 1)p
i
ei-1
. La demostracin se debe a Euler.

Teorema 8. Si m = p
e
y p es un primo impar entonces h = (m) = (p-1) p
e-1
= (m) para valores
de a que son races primitivas de m.

Corolario: Si p = 2, i.e., h = (m) = 2
e-2
para e > 2, entonces (m) (m). La prueba se
debe a Euler.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
43
Teorema 9. Si m = p
i
ei
para i = 1, 2, 3, . . ., s, entonces:

1. (m) = m.c.m.[ (p
1
e1
), (p2
e2
), . . ., (ps
es
)].
2. Existe valores de a cuyo orden es igual a (esto es, pertenece conjuntamente a) cada
(p
i
ei
). La demostracin est en [21, p.293] y se sigue del teorema chino del
residuo debido a Sun-Tse [21, p.246].

Corolario: Si p
1
= 2, entonces (m) = m.c.m. [(2
e1
), (p
2
e2
), (p
3
e3
), . . .].

Teorema 10. El menor entero positivo a tal que (a
h
- 1)/ (a - 1) 0 (mod m) es h = m, si (1) a 1
(mod p) si p es un factor primo de m y (2) a 1 (mod 4) si 4 es un factor de m. La prueba se
debe a Hull y Dobell.


































Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
44
UNIDAD III

Generacin De Valores De Variables Aleatorias

La generacin de estadsticas simuladas o sea de valores de las variables aleatorias, es de
naturaleza numrica y debe configurarse mediante la aportacin de nmeros pseudoaleatorios.
Al querer reproducir algn proceso estocstico particular, se recurre al empleo de las
distribuciones tericas convencionales y en su defecto a una distribucin emprica.

Al considerar procesos estadsticos que involucran variables aleatorias continuas o
discretas, se tiene que definir F(x), funcin de densidad acumulada (f
n
D
n
).

Si la variable aleatoria es discreta, x tomar valores especficos y F(x) ser una funcin
escalonada. Si la variable aleatoria es continua, x tomar valores en un rango especificado.

Si F(x) es continua en el dominio de x, entonces F(x) se podr diferenciar, para lo cual se
define ( )
( )
dx
x dF
x f = {Funcin de densidad de probabilidad}
Luego entonces:
( ) ( ) ( )
( ) 1 0
= =


x F
dt t f x x P x F
x


f(t) representa el valor de la funcin de densidad de probabilidad de la variable aleatoria
cuando x = t.

Tambin tenemos que: 0 r 1 y F(x) = r.

Existen tres mtodos para generar los valores de variables aleatorias a partir de
distribuciones de probabilidad:

1. Mtodo de la transformacin inversa
2. Mtodo de rechazo
3. Mtodo de composicin (convolucin)

Mtodo De La Transformacin Inversa

Se quiere generar valores de xi a partir de F(x). En primer lugar hay que obtener F(x).

Puesto que F(x) se define en el rango de 0 a 1 se pueden generar nmeros aleatorios para
sustituir a F(x)=r.

De manera unvoca cada valor de r
i
define un valor de F(x).
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
45
( )
( )
2
1
4
3
2
1
4
3
4
3
4
3
4
1
4
3
4
1
1
=
=
(

+ =
+ =

x r
x x x F
dt x F
x










Al considerarla funcin inversa de F F
-1
(x) en caso de ser conocida, podemos hacer:
x
0
= F
-1
(r
0
).

Podemos de manera general establecer que: ( ) ( )


= =
x
dt t f x F r

Entonces ( ) ( ) ( ) [ ] ( ) [ ] x x F p x F r p x F x x p = = =
1


Ejemplo:

Genrese los valores x de variables aleatorias con una funcin de densidad f(x) = 2x
0 x 1
( )

=
x
tdt x F
0
2
( )
2
x x F r = = r x = 1 0 r
Ejemplo:

Genrese los valores x de variables aleatorias con funcin de densidad

4
1
1 0 x
( ) = x f
4
3
2 1 x

1 parte 2 parte
( )
( )
4
4
4
1
0
x
r
x
x F
dt x F
x
=
=
=


F(x)
1
F(x
i
) = r
i
0 xi X
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
46
Al tomar la transformacin inversa y resolviendo:

r x 4 = si
4
1
0 r
3
2
3
4
+ = r x si 1
4
1
r

Para generar un valor de x se debe en primer lugar generar un valor de r; cuando r <
el valor de x estar determinado por x = 4r.

Si r > entonces x =
4
/
3
r +
2
/
3


Ejemplo:

Se desea simular una variable aleatoria con d
n
exponencial ( )
x
e x f


= 0 x

( ) ( )
( ) [ ] [ ] [ ]
( )
( ) ( ) r x r x x r
e r r e x F
e e e e x F
dt e dt e x F
t t
t t
x
t
t
x x
t
ln 1 ln 1 ln
1 1
1
1 1
0
0
0 0




= = =
= = =
= = =
= =






Ejemplo:

Se desea simular n nmeros aleatorios con d
n
uniforme entre (a,b):
( ) b x a
a b
x f

=
1


( )
( ) [ ]
( )
( )
( ) a b r a x
a b
a x
r
a b
a x
x F
a b
a x
t
a b
x F
dt
a b
dt
a b
x F
x
a
x
a
x
a
+ =

=
(

=

1 1
1 1






( ) a b r a x
b x a
=

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
47
Mtodo De Rechazo

Este mtodo requiere que f(x) sea una distribucin de probabilidad acotada y con rango
finito a a x b.

Los pasos requeridos son:

1. Generar 2 nmeros aleatorios r
1
y r
2

2. Determinar el valor de la variable aleatoria X de acuerdo a la relacin lineal de r
1
:
X = a + (b-a)r
1

3. Evaluar la funcin de probabilidad en x = a + (b-a)r
1
: [x = a+(b-a)r
1
]
4. Determinar si se cumple:
r
2
[a+(b-a)r
1
]/M
M = es cota superior.


f(x)



M





a b X


Si r
2
> f(x)/M entonces r
1
y r
2
se descartan y se seleccionan otros valores de r
1
y r
2


Ejemplo: Se desea generar nmeros aleatorios con la distribucin.

2x 0 x 1
f(x)
0 en otra parte

En este caso:
a = 0 b = 1 M = 2

1. Generar R
1
y R
2

2. Calcular x = r
1

3. f(x) = 2r
1

4. r
2
2r
1
= 2r
1
r
2
r
1
x = r
1

M 2



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
48
f(x) =
Ejemplo: Se desea generar variables aleatorias X para la siguiente densidad de probabilidad.


( )( )
( ) a x
a b a c


2
si a x b



( )( )
( ) c x
b c a c


2
si b x c

M=
) (
2
a c


Como la funcin se compone de 2 partes:

f(x)


M




a b c X

Los pasos para simular esta distribucin son:

1. Generar r
1
y r
2

2. Calcular x = a + (c a)r
1

3. Es x < b si la respuesta es afirmativa

( )
( )( )
( ) [ ] ( )
( ) a b
r
a r a c a
a b a c
x f

= +

=
1
1
2 2


si la respuesta es negativa, entonces f(x) es :

( )
( )( )
( ) ( )
( ) ( )
b c
r
b c
r
c r a c a
b c a c
x f

= +

=
1 1
1
1 2 1 2 2


4. Es
( )( )
2
2

c x f
r

Si la respuesta es afirmativa, entonces se considera como valor x = a + (c a)r
1
Simulada, en
caso contrario regresemos al paso 1.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
49
( )
( ) [ ]
( )
4
3
3
4
4
3
4
3
0 4
3
0
4
3
0 =
=
=
=
=

r r x
r
x F
t x F
dt x F
x
x
x
x
( )
( )
( )
8
15
8
9
4
3
8
9
8
9
8
9
8
9
4
3
3
2
4
3
4
3
3
5
4
3
4
3
1
2 1
2 1
1
1
1
1
0
+ =
+ + =
+ =

=
+ =
x y
x y
x y
x y
x y
x x
x x
y y
y y
b mx y
( ) ( )( )
( )
1
9
1 12 15
1
2
4
2
4
4
3
8
9
2
3
8
15
8
9
4
9
4
9
8
15
8
9
16
36
256
324
64
255
8
15
8
9
16
36
256
324
64
255
8
15
16
9
16
9
16
9
2
8
15
8
15
2


=

=

=

=

=
+
=

=
r
r
x
r
x
r
x
r
x
r
x
r
x
a
ac b b
x
( ) = x f
8
15
8
9
+ x
1 0 x
3
5
1 x
Ejemplo.













Calculando la segunda parte de la funcin 1 parte

















2 parte
( ) ( )
( ) [ ]
( ) ( ) [ ]
( )
( )
0
16
9
8
15
2
16
9
16
9
8
15
2
16
9
16
9
8
15
2
16
9
8
15
16
9
8
15
2
16
9
4
3
8
15
16
9
8
15
2
16
9
4
3
1 8
15
16
9
4
3
1
8
15
8
9
4
3
2
= + +
+ =
+ =
+ + =
+ + + =
+ + =
+ + =

r x x
x x r
x x x F
x x x F
x x x F
t x F
dt t x F
x
t
x



Resolviendo la ecuacin de segundo grado
mediante la frmula general

4
3
4
3
3
5
( )
2 2
, y x
( )
1 1
, y x
1
x
( ) x f
0
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
50
Mtodo De Composicin

En esta tcnica f(x), la funcin de densidad probabilidad de la distribucin que se va
simular, esta expresada como una mezcla de probabilidad de funciones de densidad propiamente
seleccionadas.

Este procedimiento est basado en la definicin de probabilidad condicional o la ley de
probabilidades compuestas.

Matemticamente sea g(x|y) una familia de funciones de densidad de un parmetro donde
y es el parmetro que identifica de manera nica a g(x). Si un valor de y es ahora descrito de una
funcin de distribucin acumulada H(y) y entonces si x es una muestra de g(x), para seleccionar
y, la funcin de densidad para x ser:

( ) ( ) ( ) y dH y x g x f f


= =

Usando este principio, distribuciones ms complicadas pueden ser generadas de
distribuciones ms simples las cuales son en s mismas fcilmente generadas, por la tcnica de la
transformacin inversa o la tcnica de rechazo.

Ejemplo: Generar una varianza aleatoria de ( )



= dy e y n x f
xy n
cuando (sea) ( )
1 +
=
n
y
dy
n y dH
1 , 1 < < n y y ( )
yx
ye x g

=

Una varianza es ahora obtenida desde una funcin de densidad cuya su funcin de
distribucin acumulativa es H(y). Una vez que y es seleccionada, esta determina una particular
g(x) = ye-yx. La varianza deseada de f(x) es entonces una varianza simplemente generada de
g(x) = ye-yx. Para continuar con las siguientes instrucciones, genera dos varianzas uniformes R1
y R2, y cuando:





Entonces x es la varianza deseada de:
( )


=
1
dy e y n x f
yx n


Esta tcnica es apropiada cuando se desea generar distribuciones de tipo mas alto usando
distribuciones La dificultad recae en identificar la H(y) y g(xy) la cul se necesita para
producir una f(x) dada dentro de la relacin.
2
1
1 1
log
1
1
R X
R s
s
n
=
=

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
51
( ) ( ) ( ) y dH y x g x f


=

Afortunadamente, las estadsticas matemticas nos han provisto de varias relaciones
funcionales llamadas convoluciones que pueden ser usadas en la generacin de ciertas
desviaciones aleatorias. Los siguientes ejemplos sirven para ilustrar el procedimiento.

La Distribucin De Poisson

Si los intervalos de eventos similares estn distribuidos exponencialmente, el nmero de
eventos ocurridos en un intervalo unitario de tiempo, tiene la distribucin de Poisson.

Las aplicaciones de las variables aleatorias de Poisson incluyen tantas reas tales como
control de los inventario, teora de colas, control de calidad, flujo de trfico y muchas otras reas
ciencias administrativas.

La funcin de densidad de probabilidad para la distribucin de Poisson esta dada por:

( )
! X
e
x f
x


= = , , 2 , 1 , 0 K x

donde es el nmero esperado de sucesos por unidad de tiempo. Esto implica que el
tiempo entre eventos esta distribuido exponencialmente con media de

1


Podemos utilizar esta relacin entre la distribucin Poisson y la exponencial para generar
desviaciones de la distribucin de Poisson.

Una desviacin x de Poisson puede ser definida de la siguiente manera:


+
= =

1
1 1
1
x
i
i
x
i
i
y y

donde y
1
, y
2
,....,y
x+1
son desviaciones aleatorias de una distribucin exponencial teniendo
como media 1/ y son generadas por (la tcnica de transformada inversa)

i i
R y ln
1

=

donde R
i
est dada por la distribucin uniforme. En conclusin, las sumas acumulativas
son generadas hasta que se obtiene la desigualdad. Cuando esto ocurre, x es la desviacin
aleatoria de Poisson deseada.



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
52
Otra forma de este mismo procedimiento es definir la desviacin x de Poisson cuando:

+
= =

1
1 1
x
i
i
x
i
i
y y

donde y
i
es otra vez las desviaciones de la distribucin exponencial pero con media 1/,
esto es:

i
i
R
y
ln
=
Las 2 tcnicas son esencialmente las mismas, pero la primera parece ser ms apropiada
con la definicin de la distribucin exponencial donde las y
i
s tiene una media de

1
.


Ejemplo.

Sabemos que por la teora de la probabilidad que si el nmero de eventos se puede
describir a travs del flujo de Poisson, el tiempo entre la ocurrencia de eventos debe ser
exponencial. En la distribucin de Poisson el resultado se expresa como el nmero de eventos n
que ocurren en un determinado tiempo t. Por lo tanto para muestrear la distribucin exponencial
con media

1
tantas veces como sea necesario hasta que la suma de las variables aleatorias
generadas exceda a t por vez primera. En este caso, el valor de Poisson muestreado n se toma
igual al nmero de veces que se muestreo la distribucin exponencial -1.

Supngase que se desea muestrear una distribucin de Poisson 3 = durante un periodo
de 1.4 hrs.

( )
i i
x
r t
x
e
x f
ln
1
!


=
=


n 1 2 3 4 5
r
n
0.058962 0.673284 0.479909 0.948578 0.61396
t
n
0.9436 0.1318 0.2447 0.1075 0.1624

=
n
i
i
t
1

0.9436 1.0754 1.3201 1.3376 1.5002

t = 1.4



=
+
=

n
i
n
i
i i
t t t
1
1
1





X = 0, 1, 2,,
= 3 eventos por hora.
X = Variable aleatoria de Poisson
X = 4 nmero de eventos que llegan en 1.4 hrs.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
53
Distribucin Erlang

La distribucin Erlang es una forma de la distribucin gamma con K igual a un entero
positivo. Estadsticos Matemticos han probado que esta distribucin es solo la suma de las
variables exponenciales de K, cada una con un valor esperado 1/k.

Para generar una desviacin Erlang, nosotros solo necesitamos la suma de las
desviaciones exponenciales K, cada una con el valor esperado 1/k. De esta manera la varianza x
de Erlang es esperada como:


= =

= =
k
i
k
i
i i
R y X
1 1
1
ln


donde y
i
es una desviacin exponencial generada por la tcnica de la transformada inversa
R
i
es un nmero aleatorio de la distribucin uniforme.

Distribucin Binomial

Una variable aleatoria x definida como el nmero de eventos exitosos en una secuencia de
n tiradas o intentos independientes de Bernoulli, cada una con probabilidad de xito p, es
conocida como una variable aleatoria binomial. La distribucin binomial es una de las ms
importantes en las distribuciones estadsticas usadas en un rea de ejemplificacin y control de
calidad. La funcin de densidad de probabilidad binomial est dada por:

( )
x n x
q p
x
n
x f

|
|

\
|
=
n x , , 1 , 0 L =
donde

p = probabilidad de xito por tirada
q = 1-p
n = nmero de tiradas
x = nmero de xitos, en entero

Para generar una desviacin binomial con parmetros p y n el procedimiento es el
siguiente:

1. Generar n desviaciones aleatorias uniformes
2. Contar el nmero de varianzas uniformes menor o igual a p
3. El nmero encontrado en el paso 2 es igual al valor de la varianza binomial

Este procedimiento puede entonces ser repetido tantas veces como sea necesario para
generar otras desviaciones binomiales.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
54
Otro procedimiento involucrado que usa la distribucin normal como una aproximacin a
la binomial para casos donde n 20 y np 10. Desde que la varianza binomial es un entero, la
varianza normal usada como una aproximacin debe ser redondeada al valor entero ms cercano.
Este mtodo es ms rpido pero es solo una aproximacin.

Mtodo De Transformacin Inversa Para Distribuciones Discretas

Se utiliza cuando se desea simular variables aleatorias de tipo discreto, como la
distribucin de Bernoulli, binomial, Poisson, discreta general, etc., El procedimiento es similar al
continuo pero el valor de F(x) se encuentra acumulando las probabilidades de los eventos
individuales p(x). Tambin en este caso, F(x) est definida en el intervalo 0 a 1; se genera un
nmero aleatorio r
i
y se determina el valor de la variable aleatoria cuya distribucin acumulada es
igual a r
i
.

La figura nos muestra en forma grfica el procedimiento anterior para una funcin
cualquiera p(x) discreta.

La dificultad de este mtodo radica en que no existe una expresin final sencilla, como en
el caso de la continua.














Metodologa

Paso 1 Calcular todos los valores de p(x) para la distribucin propuesta.

Paso 2 Calcular la probabilidad acumulada F(x) para cada valor de x.

Paso 3 Generar un valor r
i
. Verificar en F(x) a qu intervalo de x pertenece y ese ser el
nmero aleatorio generado por la distribucin propuesta.




f(x)
0
x
F(x)
0
X
i
= F
-1
(R
i
)
x
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
55
Ejemplo.

( )
( )( )
( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( ) 00032 . 0 80 . 0 0.20
5
5
5
0064 . 0 80 . 0 0.20
4
5
4
0512 . 0 80 . 0 0.20
3
5
3
2048 . 0 80 . 0 0.20
2
5
2
4096 . 0 80 . 0 0.20
1
5
1
32768 . 0 80 . 0 0.20
0
5
0
! !
!
! !
1 2 1 - n n

20 . 0
80 . 0 5

0 5
1 4
2 3
3 2
4 1
5 0
=
|
|

\
|
=
=
|
|

\
|
=
=
|
|

\
|
=
=
|
|

\
|
=
=
|
|

\
|
=
=
|
|

\
|
=

=
|
|

\
|
=
= =
|
|

\
|
=

P
P
P
P
P
P
x n x
n
x n x
n
x
n
p
q n
q p
x
n
x P
x n x
K


















0.4
0.3
0.2
0.05
( ) x f
x
0 1 2 3 4 5
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
56





















Nmeros aleatorios

43999 . 0
03991 . 0
82745 . 0
34565 . 0
71997 . 0
72484 . 0
6
5
4
3
2
1
=
=
=
=
=
=
r
r
r
r
r
r

1
0
2
1
1
1
6
5
4
3
2
1
=
=
=
=
=
=
x
x
x
x
x
x











0.25
0.50
0.75
0.90
1
0 1 2 3 4 5


( ) x F
x
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
57
UNIDAD IV

Lenguajes De Simulacin

Introduccin

El GPSS/TM' y el GPSS/H ' son aplicaciones nuevas e interactivas dentro del
ambiente IBM del GPSS, General Purpose Simulating System (en espaol, Simulacin de
Sistemas de propsito General) desarrollado a principios de la dcada de los 60 por Geoffrey
Gordon. El objetivo principal del GPSS es la modelacin de sistemas discretos.

Cualquier sistema por simular en este lenguaje se debe describir mediante un diagrama de
bloques que representan las actividades, unidos mediante lneas que representan la secuencia que
seguirn un grupo de transacciones, que a su vez se mueven a travs de los bloques. Las
transacciones dependen de la naturaleza del sistema, por ejemplo un sistema de comunicaciones
se refiere al movimiento de mensajes; un sistema de transporte se refiere al vehculos
motorizados; un sistema de produccin, al movimiento de piezas.

La simulacin mediante GPSS se realiza con dos elementos bsicos conocidos como
transacciones y bloques. Una transaccin es aquello que fluye a travs del sistema de
manufactura, y que puede ser: informacin, piezas, rdenes de produccin, fallas, operarios,
mecnicos, etctera, mientras que un bloque se define como cualquier operacin que realiza una
transaccin dentro de un sistema; algunas operaciones pueden ser las siguientes: procesamiento,
entrada a un almacn, salida de un almacn, inicio de proceso, fin de proceso, salida del sistema,
ensamble, desensamble, etctera.

En un principio los lenguajes de simulacin se elaboran utilizando algn lenguaje de
propsito general como FORTRAN, ALGOL, PL/1, etc. Esto requera un gran trabajo de
programacin; con el paso del tiempo se fueron identificando diferentes situaciones, hasta llegar
a estandarizarse ciertas instrucciones de programacin en rutinas bien definidas.

De este concepto naci el diseo de lenguaje especfico para programas de simulacin con
los cuales se ha ido facilitando al usuario la programacin de sus modelos.









Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
58
Definicin de funciones FUNCTION
Definicin de nmeros de mquinas STORAGE
Definicin de matrices MATRIX
Asignacin numrica a variables EQU
Inicializacin de variables INITIAL
Definicin de histogramas TABLE
Definicin de operaciones VARIABLE Y FVARIABLE
Estructura Del Lenguaje:

Para usar el GPSS se requiere tener conocimientos de los comandos ms comunes del
sistema DOS. Dentro de un programa de GPSS se pueden distinguir cuatro tipos de
instrucciones, cada una de las cuales se detalla a continuacin:


a) Instrucciones de acceso al sistema GPSS. Estas instrucciones permiten al usuario el acceso
al compilador del GPSS y dependen de cada tipo de versin utilizada; en este punto se
recomienda hacer referencia al manual respectivo.

b) Instrucciones de definicin de variables. Son un tipo de instrucciones especiales de carcter
opcional; su inclusin depende del sistema a modelar. Estas instrucciones siempre se
encuentran relacionadas con las instrucciones de lgica del programa. Dentro de las
instrucciones se encuentran las siguientes: definicin de las funciones a utilizar, definicin de
capacidad de los almacenes, definicin del nmero de operarios o maquinas por estacin,
inicializacin de variables, definicin de las operaciones matemticas por utilizar, etctera. A
continuacin se muestra una lista de las definiciones ms comunes utilizadas en GPSS:





c) Instrucciones de Lgica del programa. Este tipo de instrucciones son las conocidas como
bloques; son las que se ejecutarn durante la simulacin; la lgica depender de cada sistema
que se desee simular. Teniendo en cuenta la funcin que realizan, una clasificacin de los
bloques o instrucciones de lgica es la siguiente:

Simulacin de inicio de proceso y captura de mquina SEIZE
ENTER
PREEMPT
Simulacin de fin de proceso y liberacin de mquina RELEASE
LEAVE
RETURN
Simulacin de entrada de transacciones a un almacn QUEUE
ENTER
LINK
Simulacin de salida de transacciones de un almacn DEPART
ENTER
UNLINK
Simulacin de entrada transacciones al sistema GENERATE
SPLIT
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
59
Simulacin de la salida de transacciones del sistema TERMINATE
Simulacin de diversos tipos de proceso ADVANCE
ASSEMBLE
MATCH
GATHER
Simulacin del control de flujo de transacciones TRANSFER
TEST
GATE
LOGIC
SELECT
LOOP
BUFFER
Bloques de operaciones aritmticas SAVEVALUE
MSAVEVALUE
ASSIGN
INDEX
PRIORITY
Bloque de creacin de estadsticas TABULATE
Las instrucciones de tipo b) y c) se codifican siguiendo un formato general, dentro del
cual se pueden distinguir los siguientes elementos:

2 8 19 31
Loc Bloque Operandos Comentarios
Donde:

Loc: Representa el nombre de una etiqueta o una direccin. La etiqueta es un campo
opcional y su existencia depende de la lgica del programa. Est localizado en la
columna 2. Su funcin es similar a las etiquetas en Fortran.

Bloque: Es la instruccin especfica por ejecutar. Representa la accin que va a llevar a
cabo cada una de las transacciones que cruza por all. Se coloca en la columna 8.

Operandos: Cada bloque representa la accin por ejecutar, sin embargo, es necesario
incluir un complemento, como puede ser la duracin o el lugar de dicha accin. Los
operandos son las caractersticas individuales de cada bloque, y dependern de la lgica
del sistema. Se colocan en la columna 19.

Comentarios: Es el espacio donde el usuario puede colocar cualquier indicacin o
identificacin de la instruccin.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
60
En algunas versiones del GPSS, como en la de GPSS/PC', cada instruccin debe ir precedida de
un nmero de instruccin en forma ascendente de acuerdo con la lgica, pero se utiliza slo como
referencia para la edicin del programa.

d) Instrucciones de control de la simulacin. Estas instrucciones son las que controlan la
ejecucin, edicin y manejo de archivos en GPSS/PC'. Las principales son: END, START,
SIMULATE.

As, una vez dados los lineamientos generales, elementos y estructura del GPSS, a
continuacin se explican de manera ms detallada los principales bloques del GPSS, incluyendo
algunos ejemplos ilustrativos.

Lenguajes Especficos De Simulacin

Ventajas:

1. El tiempo de desarrollo de la programacin es muy corto porque se trata de
lenguajes sintticos basados en programacin por bloques o subrutinas, e incluso
algunos de ellos estn encaminados al usuario de tal forma que ya no es
indispensable programar.
2. Permite realizar anlisis de sensibilidad fcilmente y en un corto tiempo. Tiene
alta flexibilidad para hacer cambios.
3. Integra funciones como generacin de nmeros aleatorios, anlisis estadstico y
grficas.
4. Tiene una alta fiabilidad que conduce a una validacin de resultados sencilla y
rpida.
5. Permite definir y entender el sistema a simular gracias a que se tiene una
visibilidad superior de la estructura general del modelo y se aprecian ms
fcilmente las interrelaciones.

Desventajas

1. Es necesario invertir en adquisicin del software.
2. Se requiere invertir tiempo y costo en la capacitacin de los programadores del
nuevo lenguaje.
3. La computadora de la compaa y el software a adquirir deben ser compatibles.

Caractersticas De Los Lenguajes De Simulacin

En la actualidad los lenguajes que existen en el mercado tienen una serie de caractersticas
propias que los distinguen de otros, entre esas caractersticas estn las siguientes:

1. El procedimiento utilizado para generar los nmeros aleatorios uniformes y las
variables no uniformes conocidas.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
61
2. La forma de adelantar el reloj de simulacin, que puede hacerse con incrementos
de tiempo fijo como DYNAMO o con incrementos al prximo evento como
GPSS.
3. Las estadsticas que se obtienen y el formato en que se representan los resultados.
4. El lenguaje en que esta escrito, lo cual influye en la forma de detectar y reportar
los errores de lgica.
5. Su compatibilidad de comunicacin con determinado tipo de computadoras, con
otro lenguaje o simplemente con el usuario.

Clasificacin De Los Lenguajes De Simulacin

Los lenguajes de simulacin se pueden clasificar de la siguiente forma:

Lenguajes de propsito general
o FORTRAN, ALGOL, ASEMBLER, PL/1, C, PASCAL, BASIC.

Lenguajes de simulacin discreta
o Enfoque de flujo de transacciones: GPSS, BOSS
o Enfoque de eventos: GASPII, SIMSCRIPT, SIMCOM, SIMPAC
o Enfoque de procesos: SIMULA, OPL, SOL, SIMULATE
o Enfoque de actividades: CSL, ESP, FORSIM-IV, MILITRAN

Lenguajes de simulacin discreta y continua
o GASP-IV, C-SIMSCRIPT, SLAM

Lenguajes de simulacin continua
o Ecuaciones discretas: DSL-190, MIMIC, GHSI, DYHYSYS
o Enfoque de bloques: MIDAS, DYNAMO, SCADS, MADBLOC,
COBLOC

Simuladores de aplicacin especifica
o COMNET, NETWORK, PROMODEL. SIMFACTORY, WITNESS,
XCELL

A continuacin se presentan las caractersticas principales de los lenguajes de simulacin
ms usados:

GPSS (General Purpose Simulation System)

Persona que lo desarrollo: Geoffrey Gordon.
Versiones ms conocidas: GPSS I, GPSS II, GPSS III, GPSS/360, GPSS V.
Lenguaje del paquete: Asembler.
Reloj de la simulacin: Incremento al prximo evento.
Computadoras compatibles: Generalmente se adapta a cualquier tipo de computadora.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
62
SIMSCRIPT (No tiene ningn significado)

Personas que lo desarrollaron: H. M. Markowitz, H. W. Karr y B. Hausner.
Versiones ms conocidas: Simscript I, Simscript I.5, Simscript II, Simscript II.5, C-
Simscript.
Lenguajes del paquete: Fortran (las primeras versiones), Asembler (las ltimas).
Reloj de la simulacin: Incrementos al prximo evento para el caso discreto, e
incrementos a tiempo fijo para el caso continuo (C-Simscript).
Computadoras Compatibles: CDC 6000/7000, UNIVAC 1100, IBM 360/370,
HONEYWELL.

GASP (General Activity Simulation Program)

Personas que lo desarrollaron: P.J. Kiviat y A. Colher.
Versiones ms conocidas: GASP II, GASP IV, GASP-PLUS.
Lenguaje del paquete: Fortran, PL/1.
Reloj de la simulacin: Incrementos al prximo evento para el caso discreto, e
incrementos a tiempo fijo para el caso continuo (GASP IV y PLUS).
Computadoras compatibles: Cualquier computadora con compilador de Fortran o PL/1.

SLAM (Simulation Languaje for Alternative Modeling)

Personas que los desarrollaron: A. Alam, B. Pritsker y Asociados.
Versiones ms conocidas: SLAM fue el resultado de la fusin de varios lenguajes como
GASP IV y QGERT.
Lenguaje del paquete: Fortran IV.
Reloj de la simulacin: Incrementos al prximo evento para el caso discreto, e
incrementos a tiempo fijo para el caso continuo.
Computadoras compatibles: Cualquier computadora con compilador de Fortran.

Introduccin A Los Bloques GPPS

Aqu se analizarn los bloques bsicos del GPSS. Estos bloques forman lo que se podra
llamar un elemento bsico de produccin, el cual puede ser representado como una serie de
actividades a travs del tiempo. Por lo general, este elemento bsico de produccin se repite
varias veces dentro de los sistemas complejos de manufactura o servicios. El elemento bsico
puede representarse de acuerdo con la figura 4.1 en la cual se observan seis eventos y una
actividad.








Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
63
















Llegada al elemento. Este evento ocurre en el momento en que una transaccin hace su
entrada al sistema. Esta entrada puede realizarse en dos formas: la primera tiene lugar cuando las
transacciones provienen de un sistema que no se desea incluir dentro del modelo a simular; por
tanto, la entrada de dichas transacciones debe realizarse mediante el bloque GENERATE. La
segunda ocurre cuando la transaccin proviene de otro elemento bsico de produccin; en este
caso, el ltimo bloque del elemento bsico i ser el bloque que simule la llegada al elemento
bsico i+1.

Inicio de un retraso. Esta actividad no planeada se lleva a cabo, al llegar al elemento
bsico, una transaccin no puede iniciar con la actividad por la cual ha entrado a este elemento
bsico. Para empezar a medir este retraso, se utiliza el bloque QUEUE.

Inicio de la actividad. Es el evento en el cual una transaccin pasa de un estado de espera
a uno de actividad. Esta accin se llevar a cabo slo si el recurso con el que se lleva a cabo la
actividad est desocupado o disponible. Los bloques elementales para representar este evento son
el SEIZE y el ENTER.

Fin del retraso. Ocurre en el mismo tiempo que el evento anterior, y representa el punto
en el que una transaccin termina su espera al haberse iniciado una actividad. Para dar por
terminado el retraso, se hace uso del bloque DEPART.

Actividad. Representa la accin primordial por la que una transaccin entr al elemento
bsico de produccin. Esta actividad se mide en unidades de tiempo, y es el bloque que sirve para
modelar tiempos de proceso o transporte. El bloque ADVANCE se utiliza para este fin.

Fin de la actividad. El evento ocurre despus de haber transcurrido el tiempo de proceso
o transporte y su funcin principal es dejar libre el recurso que se utiliz para realizar la
actividad; este recurso puede ser una mquina, un operario o una herramienta. Los bloques ms
simples para modelar este evento son el RELEASE y el LEAVE.
Llegada al
elemento bsico
Inicio de la
actividad
Salida del
elemento bsico
Inicio del
retraso
Fin del
retraso
Fin de la
actividad
Retraso Actividad
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
64
GENERATE A, B, C, D, E
Salida del elemento. As como existen dos formas para entrar al elemento bsico de
produccin, para salir tambin es posible hacerlo de dos maneras: la primera representa un
abandono total del sistema por parte de la transaccin y se realiza mediante el bloque
TERMINATE; la segunda ocurre cuando existen dos elementos bsicos interconectados. En este
ltimo caso no hay bloque de salida sino una conexin lgica como la mencionada en el prrafo
correspondiente a llegada al elemento.

Objetivo. Es la descripcin de la funcin general de la instruccin. Dentro de cada
descripcin se incluye un diagrama que representa la forma de la instruccin en un diagrama de
flujo.

Codificacin y diagrama. Es el formato bajo el cual se debe teclear la instruccin. Las
reglas que se dan en cada instruccin son generales para cualquiera de las versiones del GPSS,
sin embargo, algunas versiones dan la facilidad de romper esas reglas sin que ocurra un error.

Operandos y su significado. Es la informacin que debe llevar cada instruccin, cada
operando(identificando con letras A, B, C, D, X) se acompaa de una breve informacin sobre su
significado y los valores que toman por default al no definir los operandos.

Atributos numricos estndares (SNA). Durante una corrida de simulacin el procesador
de GPSS automticamente guarda y actualiza cierta informacin acerca de varias entidades
utilizadas en el modelo. Esta informacin puede imprimirse al final de la corrida de simulacin.
Muchas de estas propiedades tambin pueden estar disponibles durante una corrida para verificar
un valor deseado o para realizar algn clculo en particular. La informacin disponible durante la
corrida acerca de instalaciones, colas almacenamientos, etctera, se llama atributos estndares
(SNA).

Lenguaje GPSS

Generate Se puede pensar en un bloque GENERATE como una puerta a travs de la cual
entran las transacciones. No existe ningn lmite en cuanto a la cantidad de bloques GENERATE
que puede contener un modelo.





A: Tiempo medio entre llegadas. El operando tiene que ser nombre, nmero, SNA o nulo.
No se pueden utilizar parmetros. Default = 0 (opcional).
B: Desviacin con respecto a la media (en caso de la distribucin uniforme). El operando
tiene que ser nombre, nmero, SNA o nulo. No se pueden utilizar parmetros. Default = 0
(opcional).
C: Tiempo en que se generar la primera transaccin. El operando tiene que ser Nombre,
nmero, SNA o nulo. No se pueden utilizar parmetros.
D: Lmite total de transacciones
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
65
E: Nivel de prioridad. El operando tiene que ser nombre, nmero, SNA o nulo. No se
pueden utilizar parmetros. Default = 0 (opcional).

En GPSS, las distribuciones de tiempos entre llegadas estn divididas en dos categoras:

1. Distribucin Uniforme.
2. Todas las otras distribuciones.

En esta seccin slo se considera la generacin de acuerdo con la distribucin uniforme.

Para la distribucin uniforme, el operando A del bloque GENERATE representa el tiempo
medio entre llegadas, es decir, el tiempo promedio entre llegadas consecutivas de transacciones.
El operando B representa la mitad del ancho del tiempo entre llegadas. El valor del operando B
deber ser menor que el valor del operando A en todos los casos, de lo contrario ocurrira un error
al intentar generar una transaccin en el tiempo negativo.

Por ejemplo, GENERATE 6, 4 significa que el tiempo entre llegadas se distribuye
uniformemente en el rango de 6 4; GENERATE 8 significa que el tiempo entre llegadas se
distribuye uniformemente en el rango de 8 0. Es decir, las llegadas ocurrirn exactamente cada
8 unidades de tiempo. En este caso, los tiempos entre llegadas son determinsticos, no aleatorios.

El operando C se utiliza cuando slo se requiere fijar el tiempo de generacin de la
primera transaccin. Las transacciones subsecuentes se generarn de acuerdo con los operandos
A y B. GENERATE 6, 4, 10 significa que la primera transaccin ser generada al tiempo 10 y las
transacciones subsecuentes cada 6 4 a partir del tiempo 10.

El operando D pone un lmite al total de las transacciones que pueden entrar al modelo a
travs del bloque GENERATE. Al generar el nmero de transacciones indicadas en el operando
D, el bloque GENERATE se vuelve inactivo.

GENERATE 6,4,,100 significa que se generara un mximo de 100 transacciones que se
distribuyen uniformemente con el tiempo entre llegadas de 6 4; GENERATE , , , 100 significa
que se generaran las 100 transacciones juntas (sin ningn tiempo entre ellas) al inicio de la
simulacin (tiempo 0).

El operando E del bloque GENERATE permite dar prioridad a las transacciones
generadas. Entre mayor sea el valor del operando E, mayor es la prioridad. GENERATE 20,5,,,10
significara que se generaran transacciones cada 20 5, uniformemente distribuidas y todas con
una prioridad de 10.

Es importante considerar los siguientes puntos:

1. Se requiere por lo menos un bloque GENERATE en un modelo de simulacin.
2. El tiempo mnimo para la creacin de las transacciones es 1, a excepcin de usar el
operando D en ausencia de los operandos A y B en cuyo caso las transacciones
sern generadas en el tiempo 0.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
66
SNA

No tiene SNA relacionados con l.

SEIZE

El objetivo del bloque SEIZE es simular la captura de un servidor, proceso o instalacin.
Este bloque acta como controlador del flujo de las transacciones y trabaja en conjunto con el
bloque RELEASE. Su funcionamiento general consiste en el manejo de una variable interna
llamada F, la que puede tomar los valores de 0 y 1; cuando una transaccin llega a este bloque y
trata de entrar, lo podr hacer si el atributo numrico estndar (SNA) F tiene un valor de 0
(ocioso) e inmediatamente cambiar al estado del atributo F a 1 (ocupado). As una transaccin
ser enviada a la cadena de eventos actuales en espera de que el valor de F cambie de 1 a 0.



A: Identificador del servidor. Puede ser nombre, nmero, o SNA (requerido)

Una instalacin puede ser capturada por una sola transaccin en un momento dado. Las
transacciones restantes esperaran de acuerdo con la disciplina de primeras entradas primeras
salidas para capturar la instalacin que con otras instrucciones o bloques cambie la disciplina de
captura. Por ejemplo, SEIZE CAJA significa que la transaccin entrante capturar la instalacin
con el nombre de CAJA.

SNA

F: Estatus de la instalacin (1=ocupado, 0=ocioso).
FC: Nmero de veces que la instalacin fue capturada.
FL: Regresa el valor de 1 si la instalacin ha sido prevaciada o en estado disponible, de
otra manera regresa a 0.
FT: Tiempo promedio de utilizacin de la instalacin.
FR: Utilizacin fraccional de la instalacin.

RELEASE

El bloque RELEASE es la contraparte del bloque SEIZE, y permite simular la liberacin
del servidor, proceso o instalacin que haba sido capturada. La funcin de este bloque es
cambiar el valor del atributo numrico estndar F de 1 (ocupado) a 0 (ocioso).





Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
67
A: Identificacin del servidor. Puede ser nombre, nmero, o SNA (requerido).

Cada SEIZE requiere acompaarse por un RELEASE, donde el operando A en ambos
casos es idntico. Una transaccin por medio de SEIZE captura una instalacin y por medio de
RELEASE suelta la misma instalacin al terminar el servicio deseado.

Al utilizar los bloques de SEIZE y RELEASE, saldr un reporte con informacin
relevante acerca de la instalacin. Este reporte incluye informacin tal como la utilizacin
promedio del servidor, el tiempo promedio de servicio por transaccin y el nmero total de
entradas al bloque SEIZE.

SNA

Son los mismos que para el bloque SEIZE.
QUEUE

El bloque QUEUE permite obtener estadsticas de colas que se forman al momento que
las transacciones esperan usar un servidor. El bloque QUEUE debe complementarse con el
bloque DEPART. El bloque QUEUE se puede visualizar como punto de inicio para la toma de
datos estadsticos de las colas que se pueden formar.



A: Identificador del servidor. Puede ser nombre, nmero, o SNA (requerido).
B: Nmero de unidades en que se incrementa el contenido de la entidad de cola.
Default = 1. El operando debe ser nombre, entero positivo o SNA (opcional).

En algunos problemas, una transaccin puede representar una caja o pallet, en cuyo caso
se puede usar el operando B para representar nmero de partes que realmente existe en la cola.
Por ejemplo, QUEUE COLA, 10 indica que cada transaccin (caja) contiene 10 piezas esperando
en COLA.
SNA

Q: Tamao de la cola (contenido actual).
QA: Contenido promedio de la cola.
QC: Nmero total de entradas a la cola.
QT: Tiempo promedio por transaccin en la cola (a base de QC).
QM: Contenido mximo de la cola.
QX: Tiempo promedio por transaccin en la cola (a base de QZ).
QZ: Total de entradas con cero tiempo de espera en la cola.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
68
DEPART

El bloque DEPART registra estadsticas que indican una reduccin en el contenido de la
entidad de cola. El bloque DEPART puede visualizarse como punto de terminacin para la toma
de datos estadsticos de las colas que se formaron.




A: Nombre o nmero de cola. El operando debe ser nombre, entero positivo SNA
(requerido).
B: Nmero de unidades en que se decrementa el contenido de la entidad de cola.
Default = 1 (opcional). El operando debe ser nombre, entero positivo o SNA.

Al utilizar los bloques QUEUE y DEPART en el reporte aparece una serie de datos
estadsticos en el reporte que contienen la siguiente informacin:

1. Nmero de entradas en la lnea de espera (potencial).
2. Contenido actual de la cola (nmero de transacciones esperando.
3. Nmero de transacciones que no tuvieron que esperar en cola (con tiempo cero en
fila).
4. Contenido promedio de transacciones en cola.
5. Tiempo promedio de espera por transaccin.
SNA

Son los mismos que para el bloque QUEUE.
ADVANCE

El objetivo es simular retrasos en el flujo de las transacciones, de manera que puede
visualizarse como el tiempo de proceso, transporte o servicio. Desde un punto de vista de anlisis
de bloques, el ADVANCE permite la entrada a toda transaccin que llegue. En este bloque
pueden existir en un mismo tiempo una o ms transacciones.

El funcionamiento de este bloque se lleva a cabo de la siguiente forma: cuando una
transaccin cruza por el ADVANCE en el tiempo t
1
, se genera en un tiempo de proceso (TP)
dado por las condiciones presentadas en los operandos A,B, y se enva la transaccin a la cadena
de eventos futuros en espera de que el reloj de simulacin avance hasta el tiempo t
2
= t
1
+ TP,
tiempo en el cual la transaccin abandona la cadena de eventos futuros y continua su camino al
siguiente bloque secuencial.

DEPART A, B
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
69
ADVANCE A,B



A: Es el tiempo medio de retardo de la actividad (servicio). El operando debe de ser
nombre, entero positivo o SNA (requerido).
B: Desviacin con respecto a la media para la distribucin uniforme. El operando debe ser
nombre, entero positivo o SNA (opcional).

Para la distribucin uniforme, el operando A del bloque ADVANCE representa el tiempo
medio de servicio. El operando B representa la mitad del ancho del tiempo de servicio. En todos
los casos, el valor del operando B deber ser menor que el valor del operando A, de lo contrario
ocurrira un error al intentar generar una transaccin en un tiempo negativo.

TERMINATE

Solo remueve las transacciones activas que pasen por l, pero no controla el tiempo de
corrida de simulacin.

TERMINATE 1
START 100

En el momento en que una transaccin cruza por el TERMINATE, es destruida y sale del
sistema, pero decrementa el valor START en una unidad; de esta manera, cuando 100
transacciones crucen por el TERMINATE, el valor del START llegar a 0 y el proceso de
simulacin se detendr.

TERMINATE 2
START 100

Cuando una transaccin cruza por el TERMINATE, es destruida y sale del sistema, pero
decrementa el valor START en 2 unidades; de tal manera que cuando 50 transacciones crucen por
el TERMINATE, el valor del START llegar a 0 y el proceso de simulacin se detendr.
SNA

TG1: Contador de terminacin

Tomando en cuenta los bloques vistos hasta el momento, es interesante manejarlos de una
forma integral. Para esto se presentan a continuacin algunos ejemplos de sistemas que se desean
modelar mediante GPSS.



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
70
TIPOS DE BLOQUES DE GPSS


Operacin A B C D
E F

ADVANCE Media Modificador
ASSIGN Param Nm. () Fuente
DEPART Cola Nm. (Unidades)
ENTER Almacenaje Nm. (Unidades)
GATE Artculo Nm. (Sigue bloque B)
GENERATE Media Modificador (Desplazamiento)
(Cuenta) (Prioridad) (Params)
LEAVE Almacenaje Nm. (Unidades)
LINK Cadena Nm. Orden (Siguiente bloque B)
R
LOGIC S Switch
I
MARK (Param. Nf.)
PRIORITY Prioridad
QUEUE Cola Nm. (Unidades)
RELEASE Facilidad Nm.
SAVEVALUE Reservar valor Nm. () SNA
SEIZE Nm. Facilidad
TABULATE Nm. Tabla (Unidades)
TERMINATE (Unidades)
TEST Arg. 1 Arg. 2 (Siguiente bloque B)
TRANSFER Factor selec. Siguiente bloque A Siguiente bloque B
UNLINK Nm. cadena Siguiente bloque A Cuenta
(Nm. Param.) (Arg.) (Siguiente bloque B
















Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
71
SMBOLOS DE LOS DIAGRAMAS DE BLOQUES DEL GPSS

















AVANZA ENLAZA AGARRA
SALE MARCA TERMINA
ASIGNA LOGICA TABULA
ENTRA PRIORIDAD PRUEBA
COMPUERTA COLA TRANSFIERE
GENERA LIBERA
DESENLAZA
ABANDONA RESERVA VALOR
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
72
Ejemplo:

Considere un torno manual que procesa piezas en 5 2 minutos con distribucin
uniforme. El tiempo entre llegadas de las piezas al torno sigue una distribucin uniforme con
parmetro 7 3 minutos. Realice un modelo en GPSS que simule el torneado de 500 piezas.

GENERATE 7,3
QUEUE ALMACEN
SEIZE TORNO
DEPART ALMACEN
ADVANCE 5,2
RELEASE TORNO
TERMINATE 1
*
START 500
END

En este ejemplo se tiene la unidad elemental de produccin en la que entran las piezas al
modelo por el bloque GENERATE, cruzando el sistema y abandonndolo en el bloque
TERMINATE. Cada vez que una pieza abandona el modelo resta 1 del valor del START que
detendr la simulacin cuando llegue a 0


Ejemplo:

Modifique el modelo anterior si desea simular adems un rectificado de las piezas despus
del torneado en otro torno en el que el tiempo de operacin es de 6 1 minuto con distribucin
uniforme.

SIMULATE
*
GENERATE 7.3
QUEUE ALMACEN
SEIZE TORNO
DEPART ALMACEN
ADVANCE 5,2
RELEASE TORNO
QUEUE WIP
SEIZE TORNO2
DEPART WIP
ADVANCE 6,1
RELEASE TORNO2
TERMINATE 1
*
START 500
END
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
73
El nico cambio es la introduccin de un nuevo elemento bsico de produccin que
simula el rectificado entre el torneado y la salida del sistema. En este caso, cada elemento bsico
tiene su propia mquina (TORNO y TORNO2) y estadsticas de espera separadas o dos
almacenes separados (ALMACEN y WIP). El funcionamiento del TERMINATE y el START
es similar al ejemplo anterior.

Ejemplo:

En un puerto se cuenta con una gra destinada a la descarga de barcos. Existe dos tipos
de barcos que entran al puerto a descargar; los tiempos de descarga siguen una distribucin
uniforme con parmetros de 10 2 y 17 5 horas para los barcos de tipo 1 y tipo 2,
respectivamente. El tiempo entre llegadas entre los barcos sigue una distribucin uniforme con
parmetros de 15 2 y 24 5 horas para los de tipo 1 y tipo 2, respectivamente.

a) Simule el sistema portuario hasta que se hayan descargado 90 barcos.

GENERATE 15,2
QUEUE MUELLE
SEIZE GRUA
DEPART MUELLE
ADVANCE 10,2
RELEASE GRUA
TERMINATE 1
*
GENERATE 24,5
QUEUE MUELLE
SEIZE GRUA
DEPART MUELLE
ADVANCE 17,5
RELEASE GRUA
TERMINATE 1
*
START 90
END

Al existir dos tipos de barcos o dos tipos de transacciones con diferentes condiciones de
proceso, es necesario crear dos elementos bsicos para cada uno de ellos. Los barcos tipo 1 se
introducen al modelo en el GENERATE 15,2 y son destruidos en TERMINATE 1 de su propio
elemento, con lo que se evita que entren al segundo elemento. El otro tipo de barco entra al
sistema en el GENERATE 24,5 y despus de cruzar por el segundo elemento es destruido en su
respectivo TERMINATE. Los barcos nunca se cruzan dentro de los segmentos sin embargo,
comparten el recurso GRUA y las estadsticas de la espera tambin se encuentran compartidas en
el mismo MUELLE. Gracias a las cadenas de eventos, el GPSS logra unir internamente los dos
elementos y manejarlos en forma simultnea o paralela, de manera que se pueda pensar que se
mezcla los barcos internamente. Como se desea simular 90 barcos sin importar de que tipo son,
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
74
el control de la simulacin debe ser llevado a cabo por los dos elementos; por eso, ambos
TERMINATE se codifican con el valor 1 para el operando A.

b) Simule el sistema y finalice la simulacin en el momento en que hayan sido
descargados 40 barcos del tipo 2.

GENERATE 15,2
QUEUE MUELLE
SEIZE GRUA
DEPART MUELLE
ADVANCE 10,2
RELEASE GRUA
TERMINATE
GENERATE 24,5
QUEUE MUELLE
SEIZE GRUA
DEPART MUELLE
ADVANCE 17,5
RELEASE GRUA
TERMINATE 1
START 40
END

En este inciso, lo nico que se desea es detener la simulacin mediante el conteo de uno de
los tipos de barcos; en este caso, al controlarlo con barcos tipo 2, se debe eliminar el valor del
operando A del TERMINATE de los barcos tipo 1 y mantener el valor en el TERMINATE de los
barcos tipo 2.

c) Simule el puerto durante una semana, dndole mayor prioridad en la descarga de los
barcos tipo 1.

GENERATE 15,2,,,5
QUEUE MUELLE
SEIZE GRUA
DEPART MUELLE
ADVANCE 10,2
RELEASE GRUA
TERMINATE
GENERATE 24,5
QUEUE MUELLE
SEIZE GRUA
DEPART MUELLE
ADVANCE 17,5
RELEASE GRUA
TERMINATE
GENERATE 168
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
75
TERMINATE 1
START 1
END

Los cambios que deben hacerse para el modelado de la nueva situacin son: 1) dar mayor
prioridad a los barcos tipo 1 generados en el primer segmento utilizando el cuarto operando en
donde se coloca una prioridad mayor que los barcos tipo 2 del segundo segmento, 2) se elimina
el control de la simulacin mediante barcos al colocar el TERMINATE con el valor por omisin
(default) del operando A y 3) se agrega un nuevo segmento, que genera transacciones cada 168,
cruzar el TERMINATE y restar 1 del valor del START, que al llegar a 0, dar por terminada la
simulacin.

ENTER

El bloque ENTER tiene dos funciones; en la primera se utiliza para simular la seleccin y
captura de uno o ms servidores en paralelo; en la segunda se utiliza para simular la entrada, el
inicio de estadsticas y la ocupacin de un espacio dentro de una fila de capacidad finita.


ENTER A,B

A: Nombre o nmero de almacenaje (storage) por utilizar. El operando debe ser nombre,
entero positivo o SNA (requerido)
B: Nmero de unidades por los que se decrementa la capacidad disponible de almacenaje
(storage). Default = 1. El operando debe ser nombre, entero positivo o SNA (opcional)

El operando B se puede definir tambin como el nmero de servidores que captura por
cada transaccin que entra al bloque ENTER. Para definir el nmero (capacidad) de servidores
existentes en paralelo se requiere utilizar la instruccin STORAGE.

La transaccin que entra al bloque ENTER capturar cualquier servidor que est
disponible en ese momento. En caso de no encontrar ningn servidor disponible (segn la
capacidad definida en STORAGE), la transaccin en espera ser puesta a Delay Chain (cadena de
espera).
SNA
R: Capacidad disponible del storage
S: Cantidad del storage que est en uso
SA: Nmero promedio de transacciones que estn siendo atendidas (nmero de servidores
ocupados)
SC: Nmero de transacciones que han entrado al almacenaje
SE: Regresa al valor 1 si el storage est vaco, y 0 de otra manera
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
76
SF: Regresa el valor 1si el storage est lleno, y 0 de otra manera
SR: Utilizacin de la capacidad del almacenaje
SV: Regresa 1 si el storage est en estado disponible, 0 de otra manera

Ejemplo:

Una mquina herramienta de un taller de fabricacin produce piezas a razn de una por
cada 5 minutos. Conforme se terminan, las piezas van a un inspector que necesita
4+3 minutos para examinar cada una y rechaza aproximadamente 10% de las piezas. Cada
pieza queda representada por una operacin y la unidad de tiempo elegida para el problema ser
de 1 minuto.

En la figura se muestra un diagrama de bloques que representa al sistema. La convencin
usual que se utiliza en los diagramas de bloques es colocar la localizacin del bloque (en los
casos necesarios) en la parte superior del bloque; el tiempo de accin se indica en el centro en la
forma T= a,b en que a es la media y b el modificador; y el factor de seleccin se coloca en la
parte inferior de cada bloque.

Se utiliza un bloque GENERATE para representar la salida de la mquina creando un
transaccin cada cinco minutos de tiempo. Se utiliza un bloque ADVANCE con una media de 4
y modificador de 3 para representar la inspeccin. En consecuencia, el tiempo que transcurre en
la inspeccin ser cualquiera de los valores 1,2,3,4,5,6 7, dando igual probabilidad a cada
valor.

Al completar la inspeccin, las transacciones van a un bloque TRANSFER con un factor
de seleccin de 0.1 de manera que 90% de las piezas van a la siguiente localizacin (salida 1)
llamada ACC para representar las piezas aceptadas y 10% van a otra localizacin (salida 2)
llamada REJ para representar los rechazos. Ya que no se tiene inters adicional en seguir la
historia de las piezas en esta simulacin, ambas localizaciones a las que se llega desde el bloque
de TRANSFER son bloques de TERMINATE.
















Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
77

























Asociadas con el sistema que se simula hay muchas entidades permanentes tales como
artculos de equipo, que operan sobre las transacciones. En GPSS se definen dos tipos de
entidades permanentes para representar el equipo del sistema.

Se defina una facilidad como una entidad que puede utilizar una sola transaccin a la vez.
Se define un almacenaje como una entidad que pueden ocupar muchas transacciones a la vez,
hasta cierto lmite predeterminado. Puede haber muchas instancias de cada tipo de entidad hasta
un lmite impuesto por el programa (generalmente 300). Las entidades individuales se identifican
mediante nmero; se utiliza una secuencia numeral distinta para cada tipo. El nmero 0 es ilegal
para stas y las otras entidades del GPSS. El usuario puede asignar los nmeros en cualquier
orden o puede utilizar nombres simblicos y dejar que el programa ensamblador asigne los
nmeros.

Algunos ejemplos de cmo podran interpretarse las entidades del sistema en distintos
sistemas son:

Tipo de Sistema Transaccin Facilidad Almacenaje

Comunicaciones Mensaje Conmutador Troncal
Transportacin Automvil Caseta de peaje Carretera

GENERATE
ADVANCE
TRANSFER
TERMINATE
ACC REJ
1 1
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
78
Una troncal significa un cable que consiste en muchos alambres cada uno de los cuales
puede transportar varios mensajes simultneamente y por tanto se representa como un
almacenaje. En este caso se supone que un interruptor slo pasa un mensaje a la vez, por lo que
se representa como una facilidad.

La figura muestra cuatro tipos de bloques SEIZE, RELEASE, ENTER Y LEAVE, que
se refieren a la utilizacin de facilidades y almacenajes. El campo A de cada caso indica la
facilidad o almacenaje de referencia y, generalmente la seleccin se marca en la bandera que se
anexa a los smbolos de los bloques. El bloque SEIZE permite que una transaccin utilice una
facilidad si est disponible. El bloque RELEASE permite que la transaccin libere la facilidad.
En forma anloga un bloque ENTER permite que una transaccin ocupe espacio en un
almacenaje, de estar disponible el bloque LEAVE permite que ceda el espacio. Si est en blanco
los campos B de los bloques ENTER y LEAVE, el contenido del almacenaje se cambia en 1. Si
hay un nmero (mayor o igual que 1), se cambia el contenido en ese valor.

Se puede colocar cualquier cantidad de bloques entre los puntos en que se toma y libera
una facilidad para simular las acciones que se seguirn mientras una transaccin tiene el control
de una facilidad. Se aplican arreglos semejantes para la utilizacin de los almacenajes.




























Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
79




































Ilustraremos el uso de modos de transferencia tanto condicional como incondicional del
bloque TRANSFER. De nuevo considere el caso de tres inspectores, pero suponga que las
piezas fabricadas se colocan en una banda transportadora, la que lleva las piezas frente a los
inspectores colocados a intervalos a lo largo de la misma banda. Una pieza tarda dos minutos en
llegar al primer inspector, si est libre cuando llega esa pieza, la toma para inspeccionarla, si est
ocupado, la pieza necesita dos minutos adicionales para llegar al segundo inspector, que la toma
si est desocupado. Las piezas que pasan al segundo inspector puede tomarlas el tercero que est
a dos minutos adicionales sobre la banda transportadora; en caso contrario se pierden. Para
mantener pequeo el modelo, se registrar todo el tiempo de trnsito de las piezas y se ignorar
la posibilidad de que los inspectores rechacen las mismas.
GENERATE
SEIZE
ADVANCE
RELEASE
TRANSFER

TERMINATE
ACC REJ
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
80
GENERATE
QUEUE
ENTER
DEPART
MARK
ADVANCE
LEAVE
TABULATE
TRANSFER


TERMINATE
ACC REJ
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
81
Ejemplo: Los usuarios llegan a razn de uno cada 1015 minutos para utilizar un solo telfono.
Si el telfono est ocupado, 50% de las personas regresan 5 minutos despus y lo intentan de
nuevo y el resto lo abandona del todo. Suponiendo que una llamada toma 63 minutos, cuente
cuntas personas habrn abandonado el intento para cuando se hayan terminado 1000 llamadas.





Cdigo GPSS

GENERATE 10,5
INI TRANSFER BOTH,TEL,OCU
TEL SEIZE TELEF
ADVANCE 6,3
RELEASE TELEF
TERMINATE
OCU TRANSFER 0.500,ESP5,BYE
ESP5 ADVANCE 5,0
TRANSFER ,INI
TERMINATE 1
BYE TERMINATE 1

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
82
Ejemplo: La sala de espera del consultorio de un doctor cuenta con 4 sillas. Los pacientes al
llegar al consultorio, se sientan mientras el doctor est ocupado. Si llega un paciente y no
encuentra ninguna silla disponible, se va a otro doctor. El tiempo de consulta est uniformemente
distribuido entre 20 y 30 minutos por paciente. La llegada de los pacientes al consultorio es
uniforme entre 153 minutos.











Cdigo GPSS

paciente STORAGE 4

GENERATE 15,3
TEST E
SF$paciente,0,descartar
ENTER paciente
SEIZE cola
LEAVE paciente
ADVANCE 25,5
RELEASE cola
TERMINATE 1
descartar TERMINATE 1

Start 1
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
83
Simulacin De Sistemas Discretos

Eventos discretos

Se pueden considerar dos puntos generales de vista acerca de cmo se identifiquen los
eventos discretos. En uno de los puntos de vista, al que se refiere como orientado a la partcula,
o basado en el material, la atencin se centra en las entidades del sistema y se considera a la
simulacin como la tarea de seguir los cambios que ocurren conforme a las actividades. En ese
caso se considera a los tiempos en que ocurren los cambios al sistema como atributos a las
entidades. En el otro punto de vista, que se refiere como orientado al evento o basado en la
mquina, la atencin se centra en las actividades y la simulacin sigue la historia de las
actividades conforme se aplican a distintas entidades. En ese caso se considera a los tiempos en
que ocurren los cambios al sistema como caractersticos de las actividades.

La ejecucin de una simulacin se mantiene igual sin importar el punto de vista que se
tome. Es necesario llevar registros de todas las actividades que desarrollan y de las entidades
involucradas, y se deben de cambiar peridicamente para reflejar la secuencia de eventos en el
sistema. Para hacerlo es necesario llevar registros de los tiempos de eventos y los clculos deben
computar los tiempos de eventos futuros conforme se desarrolla la simulacin.

Representacin del tiempo

El paso del tiempo se registra mediante un nmero al que se conoce como tiempo del
reloj. Generalmente se hace igual a cero al principio de una simulacin y posteriormente indica
cuntas unidades de tiempo simulado han transcurrido desde el inicio de la simulacin. A menos
que especficamente se expresa de manera contraria, el trmino tiempo de simulacin significa el
tiempo de reloj indicado y no el tiempo que ha necesitado un computador para realizar la
simulacin. Por regla general no hay conexin directa entre el tiempo simulado y el necesario
para realizar los cmputos. El factor de control en la determinacin del tiempo de cmputo es el
nmero de eventos que ocurren. Dependiendo de la naturaleza del sistema que se simula, y el
detalle con que se modela, puede variar considerablemente la relacin del tiempo simulado al
tiempo real. Si una simulacin estudiara el funcionamiento detallado de un sistema de
computador en que los eventos reales ocurren en intervalos medidos en fracciones de
microsegundos, aunque la simulacin se realizara en un computador digital de alta velocidad,
fcilmente tomara varios miles de veces mas tiempo que la operacin real del sistema.

Existen dos mtodos bsicos de actualizar el tiempo del reloj. Uno consiste en avanzar el
reloj a la hora a que debe ocurrir el siguiente evento. El otro mtodo es avanzar el reloj en
intervalos pequeos (generalmente uniformes) y determinar en cada intervalo si debe de ocurrir
un evento en ese momento. Al primer mtodo se le conoce como orientado al evento y del
segundo se dice que est orientado a intervalos. Por lo general la simulacin de sistemas
discretos se realiza utilizando el mtodo orientado a los eventos en tanto que la simulacin de
sistemas continuos utiliza normalmente el mtodo orientado a los intervalos.


Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
84
Sin embargo, se debe de sealar que no se puede expresar una regla definitiva con
respecto a la manera en que se representa el tiempo en las simulaciones para sistemas discretos y
continuos. Un programa orientado a los intervalos detecta cambios discretos y por tanto puede
simular sistemas discretos, en tanto que se puede hacer que un programa orientado a eventos siga
cambios continuos introduciendo artificialmente eventos que ocurren a intervalos regulares.

Generacin de patrones de llegadas

Un aspecto importante de la simulacin de sistemas discretos es la generacin de llegadas
exgenas. Es posible que se haya especificado una sucesin exacta de llegadas para la
simulacin. Por ejemplo la sucesin puede ser el resultado de ciertas observaciones en el sistema.
Ms an, cuando no hay interaccin en las llegadas exgenas y los eventos endgenos del
sistema, es permisible crear una sucesin de llegadas como preparacin para la simulacin. Sin
embargo, por lo general la simulacin se desarrolla creando nuevas llegadas conforme se
necesitan.

La llegada exgena de una entidad se define como evento y la hora de llegada de la
siguiente entidad se registra como uno de los tiempos del evento. Cuando el tiempo de reloj llega
a este tiempo de evento, se ejecuta el evento de entrar la entidad al sistema y de inmediato se
calcula el tiempo de llegada de la siguiente entidad a partir de la distribucin de tiempos entre
llegadas, con frecuencia se utiliza el trmino boot-strapping (cordn de bota) para describir este
proceso que hace que una entidad cree su sucesora. El mtodo requiere slo llevar cuenta de la
hora de llegada de la siguiente entidad; en consecuencia, es el mtodo preferido de generar
llegadas para los programas de simulacin de computador.

La entidad que llega generalmente requiere que se generen ciertos valores de atributos, en
cuyo caso debe ponerse atencin a la hora en que se generan los valores. Se pueden generar
cuando se calcula el tiempo de llegada o pueden generarse cuando la entidad llega fsicamente. Si
no hay interaccin entre los atributos y los eventos que ocurren dentro del sistema, la generacin
puede hacerse en cualquier momento. Sin embargo, si los valores de los atributos dependen del
sistema, se debe acordar que al tiempo de generar el tiempo de la llegada, la llegada real todava
es un evento en el futuro. Entonces es necesario posponer la generacin de los valores de atributo
hasta que se ejecute el evento de la llegada. Por ejemplo una simulacin en que se generan
llamadas telefnicas. Es necesario generar la longitud de la llamada y su origen. No hay
interaccin entre la distribucin de la longitud de la llamada y el estado del sistema, de manera
que se puede generar la longitud de la llamada al tiempo que se decide la hora de llegada o
cuando llega la llamada. Sin embargo, una llamada no puede provenir de alguna lnea que ya est
ocupada, de manera que la seleccin del origen debe de posponerse hasta que llegue la llamada.
Elegir el origen cuando se decide la hora de llegada implica el riesgo de que otra llamada haya
ocupado el origen propuesto antes de que llegue la llamada en cuestin.

Simulacin de un sistema telefnico

El sistema tiene una cantidad de telfonos (slo se muestran los ocho primeros)
conectados a un conmutador mediante lneas. El conmutador tiene una cantidad de enlace que se
pueden utilizar para conectar cualesquiera dos lneas, sujeto solo a la condicin de que se puede
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
85
FIG. 2 SISTEMA, ESTADO 1.
hacer nicamente una conexin a la vez a cada lnea. Se supondr que el sistema es de llamadas
perdidas, o sea que se abandona de inmediato toda llamada que no se pueda conectar cuando
llega. Una llamada se puede perder debido a que el llamado puede estar ocupado, en cuyo caso se
dice que la llamada est ocupada; o tambin se puede perder debido a que no se disponga de un
enlace, en cuyo caso se dice que es una llamada bloqueada.

El propsito de la simulacin ser procesar un nmero dado de llamadas y determinar la
proporcin de las que se completan exitosamente, se bloquean o son llamadas ocupadas.

1
2
3
4
5
6
7
8

FIG 1 SISTEMA TELEFNICO SIMPLE

El estado actual del sistema, que se muestra en la figura es que la lnea 2 est conectada
ala 5 y que la lnea 4 est conectada a la 7. En la figura 2 aparece una manera de representar el
estado del sistema. Se considera a cada lnea como una entidad que tiene como atributo a su
disponibilidad. Se establece una tabla de nmeros para mostrar el estado actual de cada lnea. Un
cero en la tabla significa que la lnea est libre, en tanto que uno significa que est ocupada.

0
1
0
1
1
0
1
0
1
2
3
4
5
6
7
8
LNEAS
NUM.
MAX.
EN USO
ENLACES
RELOJ
1027
SIGUIENTE
LLAMADA
DE A LONG
3 7 120
HORA DE LLEGADA
1057
3
2
LLAMADAS EN PROCESO
4
7
1075
2 5 1053
DE A FIN
CONTADORESDE LLAMAS
131 98 5 28
PROCESADASCOMPLETADASBLOQUEADASOCUPADAS

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
86
No es necesario llevar una historia detallada de cada enlace individual, ya que cada uno
puede dar servicio a cualquier lnea. Basta con incorporar en el modelo la restriccin impuesta
por el hecho de que hay un nmero fijo de enlaces (en este caso tres). Bajo estas circunstancias,
el grupo de enlaces se representa como una sola entidad en que loa atributos son el nmero
mximo de enlaces y los que actualmente estn en uso. En consecuencia, dos nmeros
representan los enlaces.

Para llevar control de los eventos se concluye un nmero que representa el tiempo de
reloj. De momento se indica que el tiempo de reloj es 1027, en que se considera que la unidad de
tiempo es 1 segundo. El reloj se actualiza en la forma orientada a los eventos segn se desarrolla
la simulacin. Cada llamada es una entidad separada que tiene como atributos a su origen, destino
y longitud. La simulacin se realizar utilizando el concepto orientado a las partculas de los
eventos, de manera que ser necesario generar el tiempo en que termina la llamada, como un
atributo adicional de la misma. Existe una lista de llamadas en proceso que muestra cules lneas
conecta cada llamada y la hora que termina la llamada. Para generar la llega de llamadas se
utiliza el mtodo de cordn de bota, de manera que se lleva un registro de la hora en que debe
llegar la siguiente llegada. Se supondr que la llamada tiene igual probabilidad de provenir de
cualquier lnea que no est ocupada, y que puede dirigirse a cualquier lnea excepto a si misma,
sin importar que la lnea est ocupada o no. La seleccin del origen debe de posponerse hasta que
llegue la llamada. Por conveniencia se generarn en ese momento tanto el origen como el destino
y longitud de la llamada. La generacin de la longitud de la llamada se puede posponer no slo
hasta que haya llegado la llamada sino hasta determinar si se puede conectar.

El conjunto de nmeros dentro del bloque principal de la figura 2 recuerda el estado del
sistema al tiempo 1027. Hay dos actividades que provocan eventos; pueden llegar nuevas
llamadas y pueden terminar las llamadas existentes.

La simulacin se desarrolla ejecutando un ciclo de pasos para simular cada evento. El
primer paso es escudriar los eventos para determinar cual es el siguiente evento potencial. En
este caso el siguiente evento potencial esta en 1053. Se actualiza el reloj y el segundo paso es
seleccionar la actividad que debe provocar el evento. En este caso la actividad es desconectar una
llamada. No hay condiciones que deban de satisfacerse cuando se desconecta una llamada, de
manera que el evento se ejecuta; pero en general el tercer paso es probar si se puede ejecutar el
evento potencial. El cuarto paso es cambiar los registros que se reflejen los efectos del evento. Se
muestra que la llamada se a desconectado haciendo igual a cero los nmeros en la tabla de lneas
para las lneas 2 y 5, reduciendo el nmero de enlaces utilizados en 1 y quitando la llamada
terminada de la tabla de llamadas en desarrollo. Como quinto paso puede ser necesario reunir
ciertas estadsticas para la salida de la simulacin. Se reservan contadores para registrar el
nmero de llamadas procesadas y completadas. Entonces el estado del sistema aparece como se
muestra en la figura 3.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
87
FIG. 4 ESTADO 3 DEL SISTEMA

0
0
0
1
0
0
1
0
1
2
3
4
5
6
7
8
LNEAS
NUM.
MAX.
EN USO
ENLACES
RELOJ
1053
SIGUIENTE
LLAMADA
DE A LONG
3 7 120
HORA DE LLEGADA
1057
3
LLAMADASEN PROCESO
4
7
1075
DE A FIN
CONTADORESDE LLAMAS
132 99 5 28
PROCESADASCOMPLETADASBLOQUEADASOCUPADAS
1


FIG. 3 SISTEMA, ESTADO 2.

Se puede ver que el siguiente evento es la llegada de una llamada el tiempo 1057. Se
actualiza el reloj al tiempo de llegada y se generan los atributos de la nueva llegada. Ya que la
actividad elegida es conectar una llamada, es necesario realizar pruebas; primero para determinar
si hay un enlace disponible, y luego para determinar si est ocupado el que recibir la llamada. En
este caso el que recibe la llamada est ocupado de manera que se pierde la llamada. Se
incrementan en 1 los contadores de llamadas procesadas y de llamadas ocupadas. Se genera una
nueva llegada y entonces el estado del sistema al tiempo de que se perdi la llamada aparece
como se muestra en la figura 4.
0
0
0
1
0
0
1
0
1
2
3
4
5
6
7
8
LNEAS
NUM.
MAX.
EN USO
ENLACES
RELOJ
1057
SIGUIENTE
LLAMADA
DE A LONG
3 6 98
HORA DE LLEGADA
1063
3
LLAMADASEN PROCESO
4
7
1075
DE A FIN
CONTADORESDE LLAMAS
133 99 5 29
PROCESADASCOMPLETADASBLOQUEADASOCUPADAS
1


Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
88
FIG 5 ESTADO 4 DEL SISTEMA
FIG. 6 TAREAS DE PROGRAMACIN DE
SIMULACION
Nuevamente el siguiente evento potencial es una llamada, pero esta vez puede conectar la
llamada llegada de manera que el estado del sistema cambia al que se muestran en la figura 5.

0
0
1
1
0
1
1
0
1
2
3
4
5
6
7
8
LNEAS
NUM.
MAX.
EN USO
ENLACES
RELOJ
1063
SIGUIENTE
LLAMADA
DE A LONG
1 5 132
HORA DE LLEGADA
1082
3
LLAMADASEN PROCESO
4
7
1075
DE A FIN
CONTADORESDE LLAMAS
133 99 5 29
PROCESADASCOMPLETADASBLOQUEADASOCUPADAS
2
3 6 1161




Tareas de programacin de simulacin

ATRIBUTOS DE
LASENTIDADES
ACTIVIDADES
IMAGEN DEL
SISTEMA
RUTINAS
ALGORITMO DESIMULACION
GENERADORDEINFORMES
GENERA
MDELO
SIMULACION
INFORME





Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
89
FIG 7. EJECUCION DE UN ALGORITMO DE SIMULACION
Imagen del sistema: De la descripcin del sistema es necesario crear un conjunto de
nmeros para representar el estado del mismo. A este conjunto de nmero se le conoce como
imagen del sistema ya que su propsito es reflejar el estado del mismo en todo momento. Se debe
representar las actividades del sistema como rutinas que deben realizar los cambios a la imagen
del sistema.

Algoritmo de simulacin: Es programar el procedimiento que ejecuta el ciclo de acciones
que participan en la realizacin de la simulacin.

Generador de informes: Generalmente especifica las estadsticas reunidas durante la
simulacin.

Un diagrama de flujo de programa de simulacin

CREAR MODELO
ENCONTRAR
SIGUIENTE
EVENTO
POTENCIAL
ELEGIR
ACTIVIDAD
DETERMINAR SI
PUEDE HACERSE
CAMBIAR
IMAGEN
RECABAR
ESTADISTICAS
MAS
GENERAR
INFORME
GENERAR
SIMULAR
INFORME
1
2
3
4
5
N
Y
Y
N

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
90
UNIDAD V

Validacin

Clculo Del Nmero ptimo De Simulaciones

Debido a la naturaleza probabilstica de los sistemas donde se utiliza la simulacin, se
hace imprescindible crear modelos cuyos resultados sean estadsticamente iguales a los sistemas
reales. Uno de los factores que afectan en forma directa estos resultados es el tamao de la
corrida de simulacin o bien el nmero de corridas de simulacin realizadas para encontrar
resultados confiables. Al realizar una corrida de simulacin el resultado promedio de las variables
del sistema tienen un perodo de inestabilidad y, conforme transcurre el tiempo, esas variables
tienden a un estado estable y es entonces cuando los valores de las variables de respuesta son
confiables.

Existen, en general, varias formas para lograr la estabilizacin de un modelo de
simulacin, la primera consiste en utilizar corridas lo suficientemente largas para que los datos
del perodo de transicin resulten insignificantes, este planteamiento puede ser adecuado si la
ejecucin del modelo es rpida. Esta situacin no es tan atractiva si la duracin del perodo
transitorio es prolongado, en este caso, se pueden seleccionar condiciones iniciales de arranque
que sean ms representativas de la condicin de estado estable y que por tanto reduzca el perodo
transitorio. El principal problema en este caso es no tener una idea adecuada de las condiciones
iniciales, lo que podra llevar a una polarizacin de los resultados y en consecuencia aumentar la
varianza, ocasionando tamaos de corrida ms grandes. Una tercera opcin es determinar en qu
momento se ha llegado al estado estable en funcin de los resultados obtenidos, una de las
formas ms comunes de determinar este momento se consigue graficando el valor promedio de
la variable de inters contra el tiempo de simulacin, y cuando se observe que ese promedio ya
no cambia a travs del tiempo, detener la corrida de simulacin.

EL tamao de una corrida de simulacin depende principalmente del tipo de distribucin
que se intenta simular y, por decirlo de alguna forma, de la bondad del generador de nmeros
U(0,1) que se esta utilizando y de las condiciones iniciales con que inici la simulacin del
sistema.

En forma general. Para calcular el nmero de simulaciones se tiene la expresin:

( )
2
2
2
2
K
Z
n

=


Donde:
Z = Estadstico normal estndar para cierta .
K = Desviacin absoluta mxima permitida sobre la media de la distribucin a simular.

2
= Variancia de la distribucin a simular.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
91
Cuando la media y la variancia de la distribucin a simular se obtuvieron de una
poblacin n
1
de 30 o menos elementos, entonces, el clculo ptimo de las simulaciones se
modifica de acuerdo con la siguiente ecuacin:

( )
2
2
2 , 1 1
2
K
t s
n
n
=
Donde:

t = Estadstico de la distribucin t student.
K = Desviacin absoluta mxima permitida sobre la media de la distribucin a simular.
S
2
= Estimador de la variancia de la distribucin a simular.

Esta segunda frmula se emplea para calcular n ptima basndose en una corrida
simulada del sistema de tamao n
1
. A esta corrida pequea se le conoce como prueba piloto, y su
funcin es calcular n en funcin de la distribucin general y del generador utilizado en la prueba
piloto.

Pueden usarse ambas frmulas siempre y cuando la informacin de donde se obtienen los
estimadores sigan, estadsticamente, una distribucin normal. En caso de que los datos analizados
sigan otra distribucin se debe hacer uso del teorema de Tchebycheff de tal suerte que el clculo
se ve reducido a:

2
m
n =
Donde:
= Probabilidad de error permitida.
m
2
= Nmero de desviaciones estndar mximo permitido sobre la media de la
distribucin a simular.

El clculo del nmero de corridas ptimo, del modelo de simulacin en donde se tengan
varias variables probabilsticas, se realiza ejecutando el clculo para cada una de ellas y se
selecciona la mayor de todas las n; ste ser el nmero de simulaciones del modelo
computacional.

Ejemplo:

Se desea encontrar el nmero de simulaciones que debe realizar un simulador de
desperdicios de una planta de polister, de tal forma que el promedio diario simulado de
desperdicio no difiera ms de 0.166 de su valor real, con una confiabilidad del 95%.

Si se supone o se sabe que el desperdicio diario en toneladas sigue una distribucin
normal, entonces, el nmero de simulaciones ptimo es:

( )
2
2
2
2
K
Z
n

=


Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
92
Donde:
Z = 1.96 para una confiabilidad del 95%
K = 0.166s = 0.166


Sustituyendo la informacin:

n = 139.4

Ahora bien, si no se tiene idea de la distribucin de probabilidad del desperdicio de la
planta o de que siga otro tipo de distribucin, se utiliza la expresin:

00 . 720
05 . 0
36
2
= = =

m
n

Este clculo del nmero de simulaciones ptimo, es un clculo a priori, sin embargo, no
se asegura del todo que se cumpla con las condiciones de estabilidad.

Una forma ms segura de determinar el momento en que el sistema se estabiliza se
consigue al graficar, a travs del tiempo, cada uno de los valores promedio de aquellas variables
o resultados que se deseen analizar y al observar el comportamiento de las variables deteniendo la
simulacin cuando todas esas variables se encuentren en estado estable.

Clculo Del Nmero De Rplicas

Una vez que se ha corrido un sistema de simulacin hasta llegar a la estabilizacin, existe
el problema de que las observaciones obtenidas en el experimento de simulacin, generalmente,
no son independientes (autocorrelacionadas). Para obtener resultados independientes hay que
repetir r veces la simulacin de tamao n con diferentes nmeros aleatorios.

Se aconseja que el nmero de rplicas o repeticiones sea de 3 a 10.

Teniendo los resultados de cada una de las rplicas, es necesario tomar estos resultados
para calcular los estimadores de media, variancia e intervalo de confianza de acuerdo con el
siguiente procedimiento.

Calcular la media y variancia de las observaciones para cada rplica individual con las
frmulas:

=
=
n
i
ij n j
x x
1
1


( )

=
n
i
j ij n j
x x s
1
2
1
1
2

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
93
Con la media y la variancia de cada una de las rplicas, encuentre la media y variancia
entre rplicas con las frmulas siguientes:

=
=
r
j
j r
x x
1
1


( )

=
n
i
j r
x x s
1
2
1
1
2



Debido a la naturaleza probabilstica de los resultados, es indispensable que para cada
variable de respuesta se calcule el intervalo de confianza de acuerdo con:

( )
x
r
t
r
s
x Ic
2 , 1
=
Reduccin De Varianza

En muchos estudios de simulacin, una gran parte del tiempo se emplea en el desarrollo
del modelo y en la programacin del mismo; pero slo un pequeo esfuerzo se utiliza para
desarrollar un diseo apropiado de las corridas o para analizar correctamente los resultados que
genera la simulacin. Partiendo de que la informacin de entrada es una variable aleatoria, la
informacin de salida es tambin aleatoria. Por lo tanto, un modelo de simulacin slo puede
producir un estadstico estimado de la medida de desempeo.

Existen algunos mtodos, conocidos como tcnicas de reduccin de varianza, que
permiten reducir los valores estimados para la varianza, fijando condiciones a partir de los datos
histricos. Para que el resultado de una simulacin sea estadsticamente preciso y libre de
tendencias, se debe especificar perfectamente la longitud de cada corrida, el nmero de rplicas y
el perodo de estabilizacin.

Ejemplo:

Una pequea fbrica consta de un centro de maquinado y estaciones de inspeccin en
serie. Las partes por procesar arriban a la planta a un ritmo de 1 por minuto. Los tiempos de
procesamiento en las mquinas e inspecciones subsecuentes son aleatorios con medias
respectivas de 0.675 y 0.775 minutos; 90% de las partes inspeccionadas son buenas y se envan
al rea de embarque; el resto son malas y se llevan a mquinas de reproceso. El centro de
maquinado est sujeto a descomposturas de ocurrencia aleatoria y la fbrica esta inicialmente
vaca y desocupada. La tabla siguiente muestra los estimados de las medias de desempeo
analizadas para 5 rplicas independientes, de longitud igual a 16 horas (se usan diferentes
nmeros aleatorios en cada rplica) para una simulacin de la planta.



Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
94
Corrida Salidas
Tiempo de
trnsito
Prom. De piezas
en inspeccin
1
2
3
4
5
797
734
741
772
769
7.41
3.12
4.24
5.85
6.75
11
11
17
14
24

Observe que los resultados para varias corridas pueden ser completamente diferentes. As,
una sola corrida no produce las respuestas. Se presentan aqu algunas tcnicas que ayudarn al
analista a encontrar de forma ms rpida un estimador del resultado.

Las diferentes tcnicas de reduccin de varianza, ocasionan una reduccin en el tiempo de
simulacin mediante la disminucin del tamao de la corrida y son valiosas cuando, por el
tamao de los modelos, la memoria computacional no es capaz de soportar altos tiempos de
simulacin. Estas tcnicas bsicamente pretenden distorsionar o cambiar el modelo original para
obtener estimaciones a bajo costo. A continuacin se da una breve explicacin de cada una de
ellas.

Muestreo antittico

El objetivo de esta tcnica es inducir una correlacin negativa entre los elementos
correspondientes en las series de nmeros aleatorios utilizados para generar variaciones de
entrada en rplicas diferentes. Una forma de generar correlaciones negativas consiste en correr el
modelo, primero, con nmeros aleatorios r
i
para obtener u estimador Y
1
del parmetro estudiado
y despus, con nmeros 1-r
i
, obteniendo un estimador Y
2
del parmetro estudiado.

Corridas comunes

Una prctica til cuando se desarrolla un proceso de simulacin, es emplear datos
histricos, los cuales pueden ser archivados y utilizados posteriormente para definir, por ejemplo,
los programas de produccin de aos anteriores.

El objetivo principal es iniciar nuevas corridas de simulacin utilizando siempre los datos
almacenados; de esta forma, el uso de las corridas comunes afecta a todas las alternativas de igual
forma. Se debe aplicar cuando el problema consiste en la comparacin de dos o ms alternativas.

Muestreo clasificado

Esta tcnica se apoya en un resultado parcial de una corrida, clasificndolo como
interesante o no interesante, en caso de ser interesante se contina con la corrida en caso contrario
se detiene la corrida.




Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
95
Variaciones de control

Este mtodo utiliza aproximaciones de modelos analticos para reducir la varianza. Por
ejemplo, una simulacin puede ser un modelo complejo de colas donde interese conocer la
longitud promedio de la fila, cuyo valor puede estimarse analticamente.

Muestreo estratificado

En esta tcnica la funcin de distribucin se divide en varias partes, lo ms homogneas
posibles que se resuelven o ejecutan por separado; los resultados obtenidos se combinan para
lograr una sola estimacin del parmetro a analizar.

Muestreo sesgado

Consiste en distorsionar las probabilidades fsicas del sistema real, de tal forma que los
eventos de inters ocurran ms frecuentemente. Los resultados obtenidos presentarn tambin
una distorsin que debe corregirse mediante factores probabilsticos de ajuste.

Validacin De Resultados

Al usar la simulacin para estudiar un sistema complejo, encontramos varios tipos de
error como:

a) errores de diseo,
b) errores en la programacin,
c) errores en los datos utilizados,
d) errores en el uso del modelo,
e) errores en la interpretacin de los resultados.

Evaluar un modelo significa desarrollar un nivel aceptable de confianza de modo que las
interferencias obtenidas del comportamiento del modelo sean correctas y aplicables al sistema del
mundo real. La validacin y verificacin es una de las tareas ms importantes y difciles que
enfrenta la persona que desarrolla un modelo de simulacin.


1. Verificacin se refiere a la comparacin del modelo conceptual con el cdigo
computacional que se gener, para lo cual es necesario contestar preguntas como:
est correcta la codificacin?, son correcta la entrada de datos y la estructura
lgica del programa?

2. Validacin es la demostracin de que el modelo es realmente una representacin
fiel de la realidad. La validacin se lleva a cabo, generalmente, a travs de un
proceso comparativo entre ambas partes y usa las diferencias para lograr el
objetivo.

Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
96
En el proceso de validacin usualmente se emplean las pruebas estadsticas siguientes:

a) Prueba de estimaciones de los parmetros de la poblacin asumiendo una
distribucin de probabilidad (pruebas F, t y z).
b) Pruebas de las estimaciones de los parmetros de la poblacin que no son
dependientes de la suposicin de una distribucin de poblacin implcita (prueba
de medias Mann-Whitney).
c) Pruebas para determinar la distribucin de probabilidad de la cual proviene la
muestra (pruebas de bondad de ajuste de Kolmogorov-Smirnov o
2
).

Ejemplo

La situacin real de la empresa FATSA en cuanto a la produccin de carburadores por
da, de acuerdo con los datos de los ltimos 8 das es la siguiente: 115, 105, 97, 96, 108, 104, 99
y 107. El modelo creado para la simulacin de la planta arroja los siguientes 10 resultados de
produccin de carburadores por da: 110, 97, 100, 105, 108, 99, 118, 104, 105 y 103. Son los
resultados del modelo estadsticamente iguales a los reales?

a) Hiptesis sobre la varianza

H
0
: V(modelo) = V(real)
H
1
: V(modelo) V(real)
V(real) = 40.57
V(modelo) = 36.96
96 . 36
57 . 40
2
2
1
= =
S
S
F

F
c
de tablas con 8 y 10 grados de libertad y con un nivel de rechazo de un 5% s 3.07. Ya
que F
0
es menor que F
c
, se acepta que el modelo de simulacin est arrojando resultados con la
misma variancia que el sistema real.

b) Hiptesis sobre la media

H
0
: (modelo) = (real)
H
1
: (modelo) (real)
E(modelo) = 104.90
E(real) = 103.87

El estadstico a utilizar es el correspondiente a variancias iguales y poblacionalmente
desconocidas y con media poblacional desconocida, puesto que solamente se tienen los datos de
dos muestras.
Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
97
2 1
2
2
2 2
2
1 1
1
1 1
2 1
n n
x
n n
n n
x
t
+

+
+
=




( ) ( )
3496 . 0
10
1
8
1
87 . 103
10 8
96 . 36 10 57 . 40 8
9 . 104
=
+

+
+
= t


El estadstico t
c
con 8 + 10 2 = 16 grados de libertad y con un nivel de rechazo del 5% es
1.746.

Ya que t es menor que t
c
, se acepta que los resultados en cuanto a la produccin de
carburadores por da del simulador son estadsticamente iguales, en cuanto a la media, a los de la
produccin real.

En cuanto a la prueba de forma entre ambas muestras no se puede afirmar nada ya que la
cantidad pequea de datos que se est manejando imposibilita la formacin de histogramas para
realizarla.

Optimizacin

La finalidad de cualquier anlisis de sistemas es optimizar la medida de efectividad,
describiendo normas para las variables de decisin a la vista de variables no controlables. As
pues, el tomador de decisiones desea encontrar ese conjunto de variables de decisin.

Una vez que se tiene un modelo de simulacin computacional vlido y que se ha
verificado estadsticamente, entonces, para lograr la optimizacin se necesita empezar a jugar con
las variables de decisin: se busca el mejor valor de la medida de efectividad. Este proceso de
optimizacin tiene que realizarse mediante el proceso de prueba y error, sin embargo, el nmero
de combinaciones de las variables de decisin que pueden ser probadas es infinito, por eso es
indispensable usar tcnicas que permitan analizar sistemticamente las posibilidades
seleccionadas, de tal modo que eventualmente se podr escoger una combinacin cercana del
ptimo.

Estas tcnicas se basan principalmente en el diseo de experimentos y las ms utilizadas
son:

Simplex
Simplex EVOP
Superficies de repuestas


Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
98
Sensibilidad Y Experimentacin

Es el ltimo paso dentro del proceso de simulacin y puede efectuarse antes o durante la
implantacin de las soluciones en el proceso real. Consiste en jugar o experimentar con el
modelo ante situaciones nuevas o imprevistas, que tengan cierta probabilidad de ocurrencia, con
el objeto de encontrar una solucin ptima ante ese posible escenario. Esto es til pues los
sistemas reales son dinmicos y de esta manera podemos adelantarnos y ser capaces de hacerles
frente con anticipacin. El anlisis de sensibilidad se enfoca principalmente a estudiar las
variables no controlables por el tomador de decisiones dentro del proceso real.

Monitoreo

Como se acaba de mencionar, los sistemas reales son dinmicos, esto significa que se
debe llevar un estricto control de los cambios ocurridos en ellos para inmediatamente
implantarlos en el modelo y para que pueda seguir siendo un fiel reflejo de la realidad.




































Instituto Tecnolgico de Acapulco Catedrtico: Ing. Vales Ortiz Gilberto
Ingeniera en Sistemas Computacionales Simulacin
99


Bibliografa




Tcnicas de Simulacin por Computadora
Naylor, Burdick
Editorial Limusa


Simulacin de Sistemas
Geofrey Gordon
Editorial Diana


Simulacin Enfoque prctico
R. Coss Bu
Editorial Limusa


Operations Research: Principles and Practice
John Wiley
Philips


Simulacin y anlisis de Modelos Estocsticos
Mohamad R, Azarang y Eduardo Garca Dunna
Editorial Mc Graw-Hill

You might also like