Upload
vannhan
View
227
Download
0
Embed Size (px)
Citation preview
UNIVERSIDAD SALESIANA DE BOLIVIA CARRERA DE INGENIERIA DE SISTEMAS
DOSSIER SIMULACION Y MODELOS
Miguel Angel Flores Chumacero
Gestión II 2012
La Paz – Bolivia
La Simulación consiste básicamente en construir modelos informáticos que describen la
parte esencial del comportamiento de un sistema de interés, así como en diseñar y
realizar experimentos con el modelo y extraer conclusiones de sus resultados para apoyar
la toma de decisiones. Típicamente, se utiliza en el análisis de sistemas tan complejos que
no es posible su tratamiento analítico o mediante métodos del análisis numérico.
La Simulación ha crecido como una metodología de experimentación fundamental en
campos tan diversos como la Economía, la Estadística, la Informática o la Física, y con
enormes aplicaciones industriales y comerciales, como los simuladores de vuelo, los
juegos de simulación, o la predicción bursátil o meteorológica.
En este texto, se describen los principales métodos y aplicaciones de la Simulación.
Contenido
I. Principios y Propiedades de Los Modelos y de Simulación ............................................ 1
A. Definición De Modelo .................................................................................................. 1
B. Funciones Del Modelo ................................................................................................. 1
C. Estructura Del Modelo................................................................................................. 2
D. Propiedades De Los Modelos ...................................................................................... 2
E. Clasificación De Los Modelos ...................................................................................... 5
F. Clasificación De Los Modelos De Simulación .............................................................. 5
G. Ventajas Y Desventajas De La Simulación ................................................................... 7
H. Criterios Para Que Un Modelo De Simulación Sea Bueno .......................................... 8
I. Pasos Para La Construcción De Modelos De Simulación En Computadora ................ 9
II. Generación de números pseudo aleatorios .................................................................. 11
A. Los números pseudo aleatorios ................................................................................ 11
B. Generación de números pseudo aleatorios .............................................................. 12
C. Pruebas estadísticas para los números pseudo aleatorios ....................................... 17
III. Generación de Variables Aleatorias .......................................................................... 25
A. Definición de variable aleatoria................................................................................. 25
B. Tipos de variables aleatorias ..................................................................................... 26
C. Determinación del tipo de distribución de un conjunto de datos ............................ 29
IV. Autómatas Celulares.................................................................................................. 34
A. Definición ................................................................................................................... 34
B. Descripción ................................................................................................................ 34
C. Aplicaciones ............................................................................................................... 37
D. Autómata celular unidimensional ............................................................................. 37
E. Autómata celular bidimensional ............................................................................... 38
V. Simulación de sucesos discretos ................................................................................... 45
A. Verificación y validación de los modelos de simulación ........................................... 45
B. Modelos de simulación .............................................................................................. 48
VI. Bibliografía ................................................................................................................. 70
VII. Glosario ...................................................................................................................... 71
Competencia
Al final del curso el estudiante debe lograr:
- Construir un modelo.
- Generar números y variables pseudo aleatorias.
- Comprobar la validez de números y variables pseudo aleatorias.
- Simular sucesos y modelos discretos.
- Simular con promodel.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
1 Dossier de Simulación y Modelos
I. Principios y Propiedades de Los Modelos y de Simulación
A. Definición De Modelo
Modelo es una representación de un objeto, sistema o idea de forma diferente a la de la
identidad misma.
Por lo general el modelo nos ayuda a entender un sistema.
El modelo de un objeto puede ser una réplica exacta de este. Con la diferencia del
material que lo compone o de su escala, inclusive puede ser una abstracción de las
propiedades dominantes del objeto.
B. Funciones Del Modelo
- Comparar
- Predecir
- Entrenar
- Experimentar
- Comunicar
Ej:
- La pintura es una réplica de algo que existe
- Un carro de madera es la réplica de un original.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
2 Dossier de Simulación y Modelos
C. Estructura Del Modelo
El modelo se puede escribir de tal forma
E = F(Xi, Yi)
Donde
E: Es el efecto del comportamiento del sistema
Xi: Son las variables y parámetros que nosotros podemos controlar
Yi: Las variables y los parámetros que nosotros no podemos controlar
F: Es la función con la cual relacionamos Xi con Yi con el fin de modificar o dar origen a E
D. Propiedades De Los Modelos
1. COMPONENTES:
Son las partes de un conjunto que forman el sistema
2. VARIABLES:
Pueden ser de dos tipos (Exógenos, Endógenos)
- Exógenas: Entradas son originadas por causas externas al sistema
- Endógenas: Son producidas dentro del sistema que resultan de causas internas,
las cuales pueden ser de Estado o de Salida
i. Estado: Muestran las condiciones iniciales del sistema
ii. Salida: Son aquellas variables que resultan del sistema
Estadísticamente a las variables exógenas se las denomina como variables
independientes
Universidad Salesiana de Bolivia Ingeniería de Sistemas
3 Dossier de Simulación y Modelos
3. PARAMETROS:
Son cantidades a las cuales el operador del modelo puede asignarle valores arbitrarios lo
cual se diferencia de las variables.
Los parámetros una vez establecidos se convierten en constantes.
4. RELACIONES FUNCIONALES:
Describen a los parámetros de tal manera que muestran su comportamiento dentro de un
componente o entre componentes de un sistema.
Las relaciones funcionales pueden ser de tipo determinísticos o estocásticos.
- Determinísticas: Sus definiciones que relacionan ciertas variables o
parámetros donde una salida del proceso es singularmente determinada
por una estrada dada.
- Estocásticas: Cuando el proceso tiene una salida indefinida, para una
entrada determinada las relaciones funcionales se representan por
ecuaciones matemáticas y salen del análisis estadístico matemático.
5. RESTRICCIONES:
Estas son limitaciones impuestas a valores de las variables las cuales pueden ser de dos
formas:
- Autoimpuestas: Asignadas por el mismo operador.
- Impuestas: Cuando son asignadas manualmente por el mismo sistema.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
4 Dossier de Simulación y Modelos
6. FUNCIONES DE OBJETIVO:
Son las metas del sistema o el cómo evaluar al sistema, existen retentivas por ejemplo: la
conservación de tiempo, energía y adquisitivas ejemplo: Ganancia en algo.
Ejemplo de aplicación:
Determinar las propiedades de un colegio.
- PROPIEDADES DE UN COLEGIO:
Componentes: profesores, estudiantes
Variables: Exógenas: libros, enfermedades, transporte
Endógenas: Número de alumnos, costos
Parámetros: notas
Relaciones Funcionales: libros-estudiantes (buenos libros, buenos resultados)
Restricciones: cantidad de profesores
Función Objetivo: prueba anual de estado
Universidad Salesiana de Bolivia Ingeniería de Sistemas
5 Dossier de Simulación y Modelos
E. Clasificación De Los Modelos
Los modelos se pueden clasificar en forma general, pero los modelos de simulación se
pueden clasificar en forma más específica.
- MODELOS FISICOS:
Son los que más se asemejan a la realidad, se encargan de modelar procesos
- MODELOS ANALOGICOS:
Se encargan de representar una propiedad determinada de un objeto o sistema
- MODELOS DENOMINADOS JUEGOS ADMINISTRATIVOS:
Ya empieza a involucrarse al ser humano el comportamiento del ser humano
Ej: modelos de planeación, estrategias militares
- MODELOS ABSTRACTOS (simulación):
Viene hacer una herramienta ya que se convierte en algo abstracto
- MODELOS MATEMATICOS:
Se tiene en cuenta las expresiones materia y lógicas ejemplo: representar un
objeto.
Aquí se debe hacer muchas suposiciones
F. Clasificación De Los Modelos De Simulación
Dentro de los modelos de simulación están:
Universidad Salesiana de Bolivia Ingeniería de Sistemas
6 Dossier de Simulación y Modelos
1. MODELOS DETERMINISTICOS
Ni las variables endógenas y exógenas se pueden tomar como datos al azar. Aquí se
permite que las relaciones entre estas variables sean exactas o sea que no entren en
ellas funciones de probabilidad. Este tipo determinístico quita menos de cómputo
que otros modelos.
2. MODELOS ESTOCASTICOS
Cuando por lo menos una variable es tomada como un dato al azar las relaciones
entre variables se toman por medio de funciones probabilísticas, sirven por lo
general para realizar grandes series de muestreos, quitan mucho tiempo en el
computador son muy utilizados en investigaciones científicas.
3. MODELOS ESTATICOS
Es que en ellos no se toma en cuenta el tiempo dentro del proceso, por ejemplo: los
modelos de juegos, modelos donde se observa las ganancias de una empresa.
Ejemplo: Arquitectónicos: líneas de teléfono, tubos de agua
4. MODELOS DINAMICOS
Si se toma en cuenta la variación del tiempo, ejemplo: la variación de la
temperatura, del aire durante un día, movimiento anual de las finanzas de una
empresa. Ejemplo: Laboratorio de química: reacción entre elementos
En estos modelos físicos podemos realizar modelos a escala o en forma natural, a
escala menor, e escala mayor, sirven para hacer demostraciones de procesos como
para hacer experimentos nuevos.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
7 Dossier de Simulación y Modelos
5. MODELOS A ESCALA
Son los modelos sencillos de maquetas -> casa -> baño, cuartos, etc. También se
pueden tener a tamaño natural a menor o mayor escala, bidimensional,
tridimensional.
G. Ventajas Y Desventajas De La Simulación
DESVENTAJAS
1. Al empezar a simular podemos interferir en las operaciones del sistema.
2. En los sistemas entran a jugar las personas, cambiar el comportamiento natural de
las personas que se relacionan con el sistema.
3. No todas las condiciones son continuas para el sistema.
4. Difícil obtener siempre el mismo tamaño de muestra, estos sistemas toman
muestras tan grandes que pueden ser mucho más costosos
5. Explorar todas las alternativas o todas las variantes que pueden existir dentro del
sistema.
6. Los modelos de simulación no generan soluciones ni respuestas a ciertas preguntas
¿CUÁNDO SE DEBE UTILIZAR LA SIMULACIÓN?
1. Cuando no se tiene el modelo matemático definido.
2. Formulación exacta del sistema.
3. Cuando se tienen las fórmulas analíticas y se necesita un modelo para ponerlas a
funcionar.
4. El costo o la corrida de un modelo no es costosa.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
8 Dossier de Simulación y Modelos
5. Cuando al ver un proceso físico, el cual nosotros queremos conocer, la simulación es
la única forma (posibilidad) que tenemos para conocer el comportamiento de un
proceso real, ejemplo: fenómeno climático.
6. Cuando se requiere acelerar o retrasar el tiempo de los procesos dentro de un
sistema.
7. cuando se quiere por medio de la simulación encontrar o hacer estudios y/o
experimentos.
H. Criterios Para Que Un Modelo De Simulación Sea Bueno
1. Fácil de entender por el usuario
2. Tenga el modelo metas y objetivos
3. Modelo no me dé respuestas absurdas
4. Que sea fácil de manipular, la comunicación entre el usuario y la computadora
debe ser sencilla
5. Que sea completa, tenga por lo menos las partes o funciones más importantes del
sistema
6. Sea adaptable que podamos modificar, adaptarlo, actualizarlo
7. Que sea evolutiva. Al principio sea simple y poco a poco empezamos a volverla
compleja dependiendo de las necesidades de los usuarios
Universidad Salesiana de Bolivia Ingeniería de Sistemas
9 Dossier de Simulación y Modelos
I. Pasos Para La Construcción De Modelos De Simulación En Computadora
FORMULACION
DEL PROBLEMA
DEFINICION DEL
SISTEMA
USO DE LA
SIMULACION
FORMULACION DEL
MODELO
PREPARACION DE
DATOS
Observamos que tipo de sistema
estamos viendo
1
2
NO
Se toma al sistema real, lo analizamos y
hacemos abstracción
Encontrar algunas de las desventajas
SI
Universidad Salesiana de Bolivia Ingeniería de Sistemas
10 Dossier de Simulación y Modelos
Buena
VALIDACIÓN
DEL MODELO
EXPERIMENTACION
INTERPRETACION
2
DOCUMENTACION
Tomar esos resultados y buscar la
Sensibilidad del modelo como afecto al
cambio de una determinada variable o
condición al modelo
Empezar a inferir con la base en los datos
generados a qué clase de sistema diferido
podemos atribuir lo que pasa con este
Combinar a unas con otras situaciones,
se va a explicar para que sirve, datos
entrada, etc.
1
2
Malo
UTIL
Universidad Salesiana de Bolivia Ingeniería de Sistemas
11 Dossier de Simulación y Modelos
II. Generación de números pseudo aleatorios
A. Los números pseudo aleatorios
Para poder realizar una simulación que incluya variabilidad dentro de sus eventos, es
preciso generar una serie de números que sean aleatorios por sí mismos, y que su
aleatoriedad se extrapole al modelo de simulación que se está construyendo. Como puede
comprender, en la construcción del modelo los números aleatorios juegan un papel
relevante.
Así, una de las primeras tareas que es necesario llevar a cabo Consiste en determinar si los
números que utilizaremos para “correr” o ejecutar la simulación son realmente aleatorios
o no; por desgracia, precisar lo anterior con absoluta certidumbre resulta muy
complicado, ya que para ello tendríamos que generar un número infinito de valores que
nos permitiera comprobar la inexistencia de correlaciones entre ellos. Esto sería muy
costoso, volviendo impráctico el uso de la simulación aun con las computadoras más
avanzadas.
A pesar de lo anterior, podemos asegurar con altos niveles de confiabilidad que el
conjunto de números que utilizaremos en una simulación se comportan de manera muy
similar a un conjunto de números totalmente aleatorios; por ello es que se les denomina
números pseudo aleatorios. Casi todas las aplicaciones comerciales tienen varios
generadores de números pseudo aleatorios que pueden generar un conjunto muy grande
de números sin mostrar correlación entre ellos. En el presente capítulo discutiremos
algunos de los métodos de generación de números pseudo aleatorios, y precisaremos qué
características deben tener para emplearlos como una fuente confiable de variabilidad
dentro de los modelos. Asimismo se mostrarán algunas de las pruebas más comunes para
comprobar qué tan aleatorios son los números obtenidos con dichos generadores.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
12 Dossier de Simulación y Modelos
B. Generación de números pseudo aleatorios
Para realizar una simulación se requieren números aleatorios en el intervalo (0,1), a los
cuales se hará referencia como ri, es decir, una secuencia ri = { r1, r2, r3,….. rn} que contiene
n números, todos ellos diferentes; n recibe el nombre de periodo o ciclo de vida del
generador que creó la secuencia ri.
Los ri constituyen la parte medular de la simulación de procesos estocásticos, y
generalmente se usan para generar el comportamiento de variables aleatorias, tanto
continúas como discretas. Debido a que no es posible generar números realmente
aleatorios, consideramos los ri como números pseudo aleatorios, generados por medio de
algoritmos determinísticos que requieren parámetros de arranque.
Para simular el comportamiento de una o más variables aleatorias es necesario contar con
un conjunto suficientemente grande de ri que permita, por ejemplo, que la secuencia
tenga al menos un periodo de vida de n=231 = 2 147 483 648. De acuerdo con L’Ecuyert[4]
una secuencia de ri con periodo de vida de n=231 es relativamente pequeña; de hecho,
incluso una secuencia de ri que contenga un ciclo de vida de n=264 se considera pequeña.
En la actualidad contamos ya con generadores y procesadores capaces de construir una
secuencia de ri con periodo de vida de n=2200.
Probablemente el lector se preguntará por qué debe interesarnos construir una secuencia
de números ri suficientemente grande. A continuación ilustraremos la razón mediante un
ejemplo. Suponga que queremos simular el tiempo de atención a clientes en un banco que
tiene 5 cajeros en paralelo, cada uno de los cuales atiende aproximadamente 50 clientes
diarios. Para simular el tiempo de atención se requiere un generador de variable aleatoria
en función de ri, por ejemplo Ti= 5 + 2ri, expresado minutos para toda i =1,2,3, ..., n. Si
simulamos el tiempo de atención de manera aislada, es decir, sin considerar el tiempo
transcurrido desde la llegada de éstos, serán necesarios 5 x 50 = 250 números ri para
Universidad Salesiana de Bolivia Ingeniería de Sistemas
13 Dossier de Simulación y Modelos
simular un día; si deseáramos simular 5 días se necesitarían 250 x 5= 1250 ri. Ahora bien, si
consideramos el tiempo desde la llegada de los clientes, precisaríamos de 250 ri para
simular el tiempo transcurrido desde la llegada al banco de los 250 clientes por día, y 250
x 5 = 1250 ri para simular el correspondiente al total de clientes atendidos durante 5 días.
Por lo tanto, se requerirán 2500 números pseudo aleatorios ri para simular la operación
del banco durante 5 días.
Como se mencionó antes, los resultados no pueden basarse en una sola simulación del
sistema; por el contrario, es necesario realizar varias réplicas de la misma, corriendo cada
una de ellas con números pseudo aleatorios diferentes. Retomando el ejemplo del banco,
simular 5 días otra vez significa que necesitamos otros 2500 números pseudo aleatorios
en el intervalo (0,1). En consecuencia, se requieren 5000 ri para realizar la simulación del
sistema de atención a clientes con dos réplicas.
Imagine cuántos números serán necesarios para simular la operación del banco durante
un año con 9 réplicas, o cuántos números ri se requieren para simular un sistema
productivo durante un año, con varias líneas de producción, y cada línea de producción
con varias estaciones, y cada estación con uno o más procesos.
Dada la importancia de contar con un conjunto de ri suficientemente grande, en esta
sección se presentan diferentes algoritmos determinísticos para obtenerlo. Por otra parte,
es conveniente señalar que el conjunto de ri debe ser sometido a una variedad de pruebas
para verificar si los números que lo conforman son realmente independientes y
uniformes. Una vez generado el conjunto ri mediante un algoritmo determinístico, es
necesario someterlo a las pruebas, si las supera, podrá utilizarse en la simulación; de lo
contrario, simplemente deberemos desecharlo.
Un conjunto de ri debe seguir una distribución uniforme continua, la cual está definida
por:
Universidad Salesiana de Bolivia Ingeniería de Sistemas
14 Dossier de Simulación y Modelos
( ) {
Generar un conjunto de ri es una tarea relativamente sencilla; para ello tiene que diseñar
su propio algoritmo de generación. Lo que resulta difícil es diseñar un algoritmo que
genere un conjunto de ri con periodo de vida suficientemente grande (N), y que además
pase sin problema las pruebas de uniformidad e independencia, lo cual implica evitar
problemas como estos:
Que los números del conjunto ri no estén uniformemente distribuidos, es
decir, que haya demasiados ri en un subintervalo y en otro muy pocos o
ninguno.
Que los números ri generados sean discretos en lugar de continuos.
Que la media del conjunto sea muy alta o muy baja, es decir, que esté por
arriba o por debajo de 1/2.
Que la varianza del conjunto sea muy alta o muy baja, es decir, que se localice
por arriba o por debajo del 1/12.
En ocasiones se presentan también anomalías como números ri seguidos por arriba o por
debajo de la media; secuencia de ri por arriba de la media, seguida de una secuencia por
debajo de la media, y viceversa, o varios ri seguidos en forma ascendente o descendente.
A continuación se presentan diferentes algoritmos determinísticos para generar los ri, los
cuales se clasifican en algoritmos no congruenciales y congruenciales. Los algoritmos no
congruenciales son cuadrados medios, productos medios y multiplicador constante. Entre
los algoritmos congruenciales se encuentran los algoritmos congruenciales lineales y los
no lineales. Abordaremos los algoritmos congruenciales lineales —tales como algoritmo
Universidad Salesiana de Bolivia Ingeniería de Sistemas
15 Dossier de Simulación y Modelos
congruencial lineal, multiplicativo y aditivo—, y los algoritmos no lineales, como el
algoritmo de Blum, Blum y Shub, y el congruencial cuadrático.
Algoritmo de cuadrados medios
Este algoritmo no congruencial fue propuesto en la década de los cuarenta del siglo XX por
Von Neumanny Metropolis. Requiere un número entero detonador (llamado semilla) con
D dígitos, el cual es elevado al cuadrado para seleccionar del resultado los D dígitos del
centro; el primer número ri se determina simplemente anteponiendo el “0” a esos dígitos.
Para obtener el segundo ri se sigue el mismo procedimiento, sólo que ahora se elevan al
cuadrado los D dígitos del centro que se seleccionaron para obtener el primer ri. Este
método se repite hasta obtener n números ri. A continuación se presentan con más
detalle los pasos para generar números con el algoritmo de cuadrados medios.
1. Seleccionar una semilla (X0) con D dígitos (D> 3).
2. Sea X0 = resultado de elevar X0 al cuadrado; sea X₁= los D dígitos del centro, y sea ri = 0.D
dígitos del centro.
3. Sea Yᵢ= resultado de elevar Xᵢ al cuadrado; sea Xᵢ₊₁= los D dígitos del centro, y sea =
0.D dígitos del centro para toda i = 1, 2, 3, …..n.
4. Repetir el paso 3 hasta obtener los n números deseados.
Algoritmo de productos medios
La mecánica de generación de números pseudo aleatorios de este algoritmo no
congruencial es similar a la del algoritmo de cuadrados medios. La diferencia entre ambos
radica en que el algoritmo de productos medios requiere dos semillas, ambas con D
dígitos; además, en lugar de elevarlas al cuadrado, las semillas se multiplican y del
producto se seleccionan los D dígitos del centro, los cuales formarán el primer número
Universidad Salesiana de Bolivia Ingeniería de Sistemas
16 Dossier de Simulación y Modelos
pseudo aleatorio = 0.D dígitos. Después se elimina una semilla, y la otra se multiplica
por el primer número de D dígitos, para luego seleccionar del producto los D dígitos que
conformarán un segundo número . Entonces se elimina la segunda semilla y se
multiplican el primer número de D dígitos por el segundo número de D dígitos; del
producto se obtiene el tercer número . Siempre se irá eliminando el número más
antiguo, y el procedimiento se repetirá hasta generar los n números pseudo aleatorios. A
continuación se presentan con más detalle los pasos del método para generar números
con el algoritmo de productos medios.
1. Seleccionar una semilla (X0) con D dígitos (D > 3).
2. Seleccionar una semilla (X₁) con D dígitos (D > 3).
3. Sea Y0 = X0 * X₁; sea X₂ = los D dígitos del centro, y sea r1= 0.D dígitos del centro.
4. Sea Yᵢ=Xᵢ* Xᵢ₊₁; sea Xᵢ₊₂= los D dígitos del centro, y sea ₊₁ = 0.D dígitos del centro para
toda i =1, 2, 3, …, n.
5. Repetir el paso 4 hasta obtener los n números sea deseados.
Algoritmo congruencial multiplicativo
El algoritmo congruencial multiplicativo surge del algoritmo congruencial lineal cuando c =
0. Entonces la ecuación recursiva es:
( ) ( )
En comparación con el algoritmo congruencial lineal, la ventaja del algoritmo
multiplicativo es que implica una operación menos a realizar. Los parámetros de arranque
de este algoritmo son X0, a y m, todos los cuales deben ser números enteros y mayores
que cero. Para transformar los números Xᵢ en el intervalo (0,1) se usa la ecuación
( ). De acuerdo con Banks, Carson, Nelsony Nicol[1], las condiciones que
Universidad Salesiana de Bolivia Ingeniería de Sistemas
17 Dossier de Simulación y Modelos
deben cumplir los parámetros para que el algoritmo congruencial multiplicativo alcance su
máximo periodo son:
m= 2g
a = 3 + 8k o a = 5 + 8k
k = 0, 1, 2, 3,...
X0 debe ser un número impar
g debe ser entero
A partir de estas condiciones se logra un periodo de vida máximo
Algoritmo congruencial aditivo
Este algoritmo requiere una secuencia previa de n números enteros ,
para generar una nueva secuencia de números enteros que empieza en
Su ecuación recursiva es:
( ) ( )
Los números pueden ser generados mediante la ecuación
( )
C. Pruebas estadísticas para los números pseudo aleatorios
A continuación se analizarán las pruebas estadísticas básicas que se emplean
generalmente para determinar si un conjunto de números pseudo aleatorios entre 0 y 1
cumplen con las propiedades básicas de independencia y uniformidad. El objetivo, en
Universidad Salesiana de Bolivia Ingeniería de Sistemas
18 Dossier de Simulación y Modelos
otras palabras, es validar que el conjunto realmente está conformado por números
aleatorios. Es importante mencionar que las pruebas que se discutirán no son las únicas.
Prueba de medias
Una de las propiedades que deben cumplir los números del conjunto ri, es que el valor
esperado sea igual a 0.5. La prueba que busca determinar lo anterior es la llamada prueba
de medias, en la cual se plantean las siguientes hipótesis:
La prueba de medias consiste en determinar el promedio de los n números que contiene
el conjunto mediante la ecuación siguiente:
∑
Posteriormente se calculan los límites de aceptación inferior y superior con las ecuaciones
siguientes:
(
√ )
(
√ )
Si el valor de encuentra entre los límites de aceptación, concluimos que no se puede
rechazar que el conjunto tiene un valor esperado de 0.5 con un nivel de aceptación de
. En caso contrario se rechaza que el conjunto tiene un valor esperado de 0.5.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
19 Dossier de Simulación y Modelos
Para el cálculo de los límites de aceptación se utiliza el estadístico , el cual se
determina por medio de la tabla de la distribución normal estándar.
Prueba de varianza
Otra de las propiedades que debe satisfacer el conjunto es que sus números tengan una
varianza de 1/12. La prueba que busca determinar lo anterior es la prueba de varianza,
que establece las siguientes hipótesis:
La prueba de varianza consiste en determinar la varianza de los n números que contiene el
conjunto mediante la ecuación siguiente:
( ) ∑ ( )
Después se calculan los límites de aceptación inferior y superior con las ecuaciones
siguientes:
( )
( )
( )
( )
Universidad Salesiana de Bolivia Ingeniería de Sistemas
20 Dossier de Simulación y Modelos
Si el valor de ( ) se encuentra entre los límites de aceptación, decimos que no se puede
rechazar que el conjunto tiene una varianza de 1/12, con un nivel de aceptación de
; de lo contrario, se rechaza que el conjunto tiene una varianza de 1/12.
Pruebas de uniformidad
Una de las propiedades más importantes que debe cumplir un conjunto de números es
la uniformidad. Para comprobar su acatamiento se han desarrollado pruebas estadísticas
tales como las pruebas Chi-cuadrada y de Kolmogorov-Smirnov. En cualquiera de ambos
casos, para probar la uniformidad de los números de un conjunto es necesario formular
las siguientes hipótesis:
( )
no son uniformes
Veamos a continuación cómo funciona cada una de estas pruebas.
Prueba Chi-cuadrada
La prueba Chi-cuadrada busca determinar si los números del conjunto se distribuyen
uniformemente en el intervalo (0,1). Para llevar a cabo esta prueba es necesario dividir el
intervalo (0,1) en m subintervalos, en donde es recomendable √ . Posteriormente se
clasifica cada número pseudo aleatorio del conjunto en los m intervalos. A la cantidad
de números que se clasifican en cada intervalo se le denomina frecuencia observada
( ), y a la cantidad de números que se espera encontrar en cada intervalo se le llama
frecuencia esperada ( ); teóricamente, la es igual. A partir de los valores de y se
determina el estadístico mediante la ecuación
Universidad Salesiana de Bolivia Ingeniería de Sistemas
21 Dossier de Simulación y Modelos
∑
( )
Si el valor del estadístico es menor al valor de tablas de entonces no se puede rechazar
que el conjunto de números sigue una distribución uniforme. En caso contrario, se
rechaza que sigue una distribución uniforme.
Prueba Kolmogorov-Smirnov
Propuesta por Kolmogorov y Smirnov, ésta es una prueba estadística que también nos
sirve para determinar si un conjunto cumple la propiedad de uniformidad. Es
recomendable aplicarla en conjuntos pequeños por ejemplo, . El procedimiento
es el siguiente:
1. Ordenar de menor a mayor los números del conjunto .
2. Determinar los valores de: D, D y O con las siguientes ecuaciones:
{
}
{
}
* +
Universidad Salesiana de Bolivia Ingeniería de Sistemas
22 Dossier de Simulación y Modelos
3. Determinar el valor crítico de acuerdo con la tabla de valores críticos
de Kolmogorov-Smirnov para un grado de confianza α y según el tamaño
de la muestra n.
4. Si el valor D es mayor que el valor crítico , se concluye que los
números del conjunto no siguen una distribución uniforme; de lo
contrario se dice que no se ha detectado diferencia significativa entre la
distribución de los números del conjunto y la distribución uniforme.
Pruebas de independencia
Recuerde que las dos propiedades más importantes que deben satisfacer los números de
un conjunto son uniformidad e independencia. A continuación hablaremos de las
pruebas estadísticas que tratan de corroborar si los números en el intervalo (0,1) son
independientes o, en otras palabras, si son pseudo aleatorios.
Para probar la independencia de los números de un conjunto primero es preciso formular
las siguientes hipótesis:
Prueba de corridas arriba y abajo
El procedimiento de esta prueba consiste en determinar una secuencia de números (S)
que sólo contiene unos y ceros, de acuerdo con una comparación entre y .
Posteriormente se determina el número de corridas observadas, (una corrida se
identifica como la cantidad de unos o ceros consecutivos). Luego se calcula el valor
esperado, la varianza del número de corridas y el estadístico , mediante las ecuaciones:
Universidad Salesiana de Bolivia Ingeniería de Sistemas
23 Dossier de Simulación y Modelos
|
|
Si el estadístico es mayor que el valor crítico de se concluye que los números del
conjunto no son independientes. De lo contrario no se puede rechazar que el conjunto
de sea independiente.
Considere el siguiente conjunto de 21 números:
={0.89,0.26,0.01,0.98,0.13,0.12,0.69,0.11,0.05,0.65,0.21,0.04,0.03,0.11,0.
07,0.97,0.27,0.12,0.95,0.02,0.06}
La secuencia de unos y ceros se construye de esta manera: se coloca un cero si el número
es menor que o igual al número anterior; en caso de ser mayor que el número
anterior, se pone un uno. Considerando la secuencia de los 21 números del conjunto
que se dio arriba, la secuencia de unos y ceros es:
= {0,0,1,0,0,1,0,0,1,0,0,0,1,0,1,0,0,1,0,1}
Observe que la secuencia S contiene n - 1 números, en este caso 20. Esto se debe a que el
primer número no tiene número anterior con el cual compararlo. Recuerde que
una corrida se forma con unos consecutivos o ceros consecutivos. Por ejemplo los
primeros dos ceros de la secuencia forman la primer corrida, la cual se dice que tiene una
longitud de dos; el tercer número de la secuencia, uno, forma la segunda corrida con
Universidad Salesiana de Bolivia Ingeniería de Sistemas
24 Dossier de Simulación y Modelos
longitud de uno; después siguen dos ceros, los cuales forman la tercera corrida con
longitud de dos; después sigue un uno, el cual forma la cuarta corrida con longitud de uno,
etc. Siguiendo el proceso anterior se determina que el número de corridas de la secuencia
es
Universidad Salesiana de Bolivia Ingeniería de Sistemas
25 Dossier de Simulación y Modelos
III. Generación de Variables Aleatorias
A. Definición de variable aleatoria
A lo largo de los capítulos anteriores hemos mencionado que un modelo de simulación
permite lograr un mejor entendimiento de prácticamente cualquier sistema. Para ello
resulta indispensable obtener la mejor aproximación a la realidad, lo cual se consigue
componiendo el modelo a base de variables aleatorias que interactúen entre sí. Pero,
¿Cómo podemos determinar qué tipo de distribución tiene una variable aleatoria? ¿Cómo
podemos usarla en el modelo, una vez que conocemos su distribución asociada? En este
capítulo comentaremos los métodos y herramientas que pueden dar contestación a estas
interrogantes clave para la generación del modelo.
Podemos decir que las variables aleatorias son aquellas que tienen un comportamiento
probabilístico en la realidad. Por ejemplo, el número de clientes que llegan cada hora a un
banco depende del momento del día, del día de la semana y de otros factores: por lo
general, la afluencia de clientes será mayor al mediodía que muy temprano por la
mañana; la demanda será más alta el viernes que el miércoles; habrá más clientes un día
de pago que un día normal, etc. Dadas estas características, las variables aleatorias deben
cumplir reglas de distribución de probabilidad como éstas:
La suma de las probabilidades asociadas a todos los valores posibles de la
variable aleatoria x es uno.
La probabilidad de que un posible valor de la variables x se presente siempre
es mayor que o igual a cero.
El valor esperado de la distribución de la variable aleatoria es la media de la
misma, la cual a su vez estima la verdadera media de la población.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
26 Dossier de Simulación y Modelos
Si la distribución de probabilidad asociada a una variable aleatoria está
definida por más de un parámetro, dichos parámetros pueden obtenerse
mediante un estimador no sesgado. Por ejemplo, la varianza de la población
puede ser estimada usando la varianza de una muestra que es . De la
misma manera, la desviación estándar de la población , puede estimarse
mediante la desviación estándar de la muestra .
B. Tipos de variables aleatorias
Podemos diferenciar las variables aleatorias de acuerdo con el tipo de valores
aleatorios que representan. Por ejemplo, si habláramos del número de clientes que
solicitan cierto servicio en un periodo de tiempo determinado, podríamos encontrar
valores tales como 0, 1, 2,..., n, es decir, un comportamiento como el que presentan
las distribuciones de probabilidad discretas. Por otro lado, si habláramos del tiempo
que tarda en ser atendida una persona, nuestra investigación tal vez arrojaría
resultados como 1.54 minutos, 0.028 horas o 1.37 días, es decir, un comportamiento
similar al de las distribuciones de probabilidad continuas. Considerando lo anterior
podemos diferenciar entre variables aleatorias discretas y variables aleatorias
continuas.
Variables aleatorias discretas. Este tipo de variables deben cumplir con estos
parámetros:
( )
∑
Universidad Salesiana de Bolivia Ingeniería de Sistemas
27 Dossier de Simulación y Modelos
( ) ∑
Algunas distribuciones discretas de probabilidad son la uniforme discreta, la de
Bernoulli, la hipergeométrica, la de Poisson y la binomial (vea la figura). Podemos
asociar a estas u otras distribuciones de probabilidad el comportamiento de una
variable aleatoria. Por ejemplo, si nuestro propósito al analizar un muestreo de
calidad consiste en decidir si la pieza bajo inspección es buena o no, estamos
realizando un experimento con dos posibles resultados: la pieza es buena o la pieza
es mala. Este tipo de comportamiento está asociado a una distribución de Bernoulli.
Por otro lado, si lo que queremos es modelar el número de usuarios que llamarán a
un teléfono de atención a clientes, el tipo de comportamiento puede llegar a
parecerse a una distribución de Poisson. Incluso podría ocurrir que el
comportamiento de la variable no se pareciera a otras distribuciones de
probabilidad conocidas. Si éste fuera el caso, es perfectamente válido usar una
distribución empírica que se ajuste a las condiciones reales de probabilidad. Esta
distribución puede ser una ecuación o una suma de términos que cumplan con las
condiciones necesarias para ser consideradas una distribución de probabilidad.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
28 Dossier de Simulación y Modelos
Variables aleatorias continuas. Este tipo de variables se representan mediante una
ecuación que se conoce como función de densidad de probabilidad. Dada esta
condición, cambiamos el uso de la sumatoria por la de una integral para conocer la
función acumulada de la variable aleatoria, Por lo tanto, las variables aleatorias
continuas deben cumplir los siguientes parámetros:
( )
( )
∫ ( )
( ) ( ) ∫ ( )
Entre las distribuciones de probabilidad tenemos la uniforme continua, la
exponencial, la normal, la de Weibull, la Chi-cuadrada y la de Erlang (vea la figura).
Al igual que en el caso de las distribuciones discretas, algunos procesos pueden ser
asociados a ciertas distribuciones.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
29 Dossier de Simulación y Modelos
Por ejemplo, es posible que el tiempo de llegada de cada cliente a un sistema tenga
una distribución de probabilidad muy semejante a una exponencial, o que el tiempo
que le toma a un operario realizar una serie de tareas se comporte de manera muy
similar a la dispersión que presenta una distribución normal. Sin embargo, debemos
hacer notar que este tipo de distribuciones tienen sus desventajas, dado que el
rango de valores posibles implica que existe la posibilidad de tener tiempos infinitos
de llegada de clientes o tiempos de ensamble infinitos, situaciones lejanas a la
realidad. Por fortuna, es muy poco probable de se presenten este tipo de eventos,
aunque el analista de la simulación debe estar consciente de cómo pueden impactar
valores como los descritos en los resultados del modelo. En las siguientes secciones
revisaremos algunas herramientas útiles para lograr ese objetivo.
C. Determinación del tipo de distribución de un conjunto de datos
La distribución de probabilidad de los datos históricos puede determinarse mediante las
pruebas Chi-cuadrada, de Kolmogorov-Smirnov y de Anderson-Darling. En esta sección se
revisarán los procedimientos de cada una de estas pruebas, así como la forma de
realizarlas a través de Stat: :Fit, una herramienta complementaria de ProModel.
Prueba Chi-cuadrada
Se trata de una prueba de hipótesis a partir de datos, basada en el cálculo de un valor
llamado estadístico de prueba, al cual suele comparársele con un valor conocido como
valor crítico, mismo que se obtiene, generalmente, de tablas estadísticas. El
procedimiento general de la prueba es:
1. Obtener al menos 30 datos de la variable aleatoria a analizar.
2. Calcular la media y varianza de los datos.
3. Crear un histograma de √ intervalos, y obtener la frecuencia observada
en cada intervalo .
Universidad Salesiana de Bolivia Ingeniería de Sistemas
30 Dossier de Simulación y Modelos
4. Establecer explícitamente la hipótesis nula, proponiendo una distribución de
probabilidad que se ajuste a la forma del histograma.
5. Calcular la frecuencia esperada, , a partir de la función de probabilidad
propuesta.
6. Calcular el estadístico de prueba:
∑( )
7. Definir el nivel de significancia de la prueba, , y determinar el valor crítico de
la prueba, (k es el número de parámetros estimados en la
distribución propuesta).
8. Comparar el estadístico de prueba con el valor crítico. Si el estadístico de
prueba es menor que el valor crítico no se puede rechazar la hipótesis nula.
Prueba de Kolmogorov-Smirnov
Esta prueba permite —al igual que la prueba Chi-cuadrada— determinar la distribución de
probabilidad de una serie de datos. Una limitante de la prueba de Kolmogorov-Smirnov
estriba en que solamente se puede aplicar al análisis de variables continuas. El
procedimiento general de la prueba es:
1. Obtener al menos 30 datos de la variable aleatoria a analizar.
2. Calcular la media y la varianza de los datos.
3. Crear un histograma de √ intervalos, y obtener la frecuencia observada
en cada intervalo .
4. Calcular la probabilidad observada en cada intervalo , esto es,
dividir la frecuencia observada entre el número total de datos, n.
5. Acumular las probabilidades para obtener la probabilidad observada hasta
el i-ésimo intervalo, .
6. Establecer explícitamente la hipótesis nula, proponiendo una distribución de
probabilidad que se ajuste a la forma del histograma.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
31 Dossier de Simulación y Modelos
7. Calcular la probabilidad esperada acumulada para cada intervalo, , a partir
de la función de probabilidad propuesta.
8. Calcular el estadístico de prueba:
| |
9. Definir el nivel de significancia de la prueba α, y determinar el valor crítico de la
prueba, (consulte la tabla de valores críticos de la prueba de Kolmogorov-
Smirnov en la sección de apéndices).
10. Comparar el estadístico de prueba con el valor crítico. Si el estadístico de
prueba es menor que el valor crítico no se puede rechazar la hipótesis nula.
Prueba de Anderson-Darling
Esta prueba tiene como propósito corroborar si una muestra de variables aleatorias
proviene de una población con una distribución de probabilidad específica. En realidad se
trata de una modificación de la prueba de Kolmogorov-Smirnov, aunque tiene la virtud de
detectar las discrepancias en los extremos de las distribuciones. La principal desventaja de
la prueba de Anderson-Darling estriba en que es necesario calcular los valores críticos
para cada distribución. La prueba es muy sensible en los extremos de la distribución, por
lo que debe ser usada con mucho cuidado en distribuciones con límite inferior acotado, y
no es confiable para distribuciones de tipo de discreto. Actualmente es posible encontrar
tablas de valores críticos para las distribuciones normal, lognormal, exponencial, log-
logística, de Weibull y valor extremo tipo I. El procedimiento general de la prueba es:
1. Obtener n datos de la variable aleatoria a analizar.
2. Calcular la media y la varianza de los datos.
3. Organizar los datos en forma ascendente:
4. Ordenar los datos en forma descendente:
Universidad Salesiana de Bolivia Ingeniería de Sistemas
32 Dossier de Simulación y Modelos
5. Establecer explícitamente la hipótesis nula, proponiendo una distribución de
probabilidad.
6. Calcular la probabilidad esperada acumulada para cada número , ( ), y
la probabilidad esperada acumulada para cada número, ( ), a partir
de la función de probabilidad propuesta.
7. Calcular el estadístico de prueba:
8. Ajustar el estadístico de prueba de acuerdo con la distribución de probabilidad
propuesta.
[
∑( )[ ( ) ( ( ))]
]
9. Definir el nivel de significancia de la prueba α, y determinar su valor crítico,
(vea la tabla).
10. Comparar el estadístico de prueba con el valor crítico, Si el estadístico de
prueba es menor que el valor crítico no se puede rechazar la hipótesis nula.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
33 Dossier de Simulación y Modelos
Universidad Salesiana de Bolivia Ingeniería de Sistemas
34 Dossier de Simulación y Modelos
IV. Autómatas Celulares
A. Definición
Un autómata celular (A.C.) es un modelo matemático para un sistema dinámico que
evoluciona en pasos discretos. Es adecuado para modelar sistemas naturales que puedan
ser descritos como una colección masiva de objetos simples que interactúen localmente
unos con otros.
Son sistemas descubiertos dentro del campo de la física computacional por John von
Neumann en la década de 1950. La teoría de los autómatas celulares se inicia con su
precursor John von Neumann a finales de los década de 1940 con su libro Theory of Self-
reproducing Automata (editado y completado por A. W. Burks).
Aunque John von Neumann puso en práctica los AA.CC., estos fueron concebidos en los
años 40 por Konrad Zuse y StanislawUlam. Zuse pensó en los “espacios de cómputo”
(computingspaces), como modelos discretos de sistemas físicos. Las contribuciones de
Ulam vinieron al final de los 40, poco después de haber inventado con Nicholas Metropolis
el Método de Montecarlo.
B. Descripción
No existe una definición formal y matemática aceptada de Autómata Celular; sin embargo,
se puede describir a un A.C. como una tupla, es decir, un conjunto ordenado de objetos
caracterizado por los siguientes componentes:
Una rejilla o cuadriculado (lattice) de enteros (conjunto) infinitamente extendida, y
con dimensión. Cada celda de la cuadrícula se conoce como célula.
Cada célula puede tomar un valor en a partir de un conjunto finito de estados k.
Cada célula, además, se caracteriza por su vecindad, un conjunto finito de células en
las cercanías de la misma.
De acuerdo con esto, se aplica a todas las células de la cuadrícula una función de
transición ( f ) que toma como argumentos los valores de la célula en cuestión y los
Universidad Salesiana de Bolivia Ingeniería de Sistemas
35 Dossier de Simulación y Modelos
valores de sus vecinos, y regresa el nuevo valor que la célula tendrá en la siguiente
etapa de tiempo. Esta función f se aplica, como ya se dijo, de forma homogénea a
todas las células, por cada paso discreto de tiempo.
Condiciones de frontera
Topología del autómata celular de 2D plegado en 3D para el caso de frontera periódica.
Por definición, un A.C. consiste de una retícula infinita de enteros. Sin embargo, para
cuestiones prácticas (como en modelos de sistemas físicos llevados a cabo en ordenadores
de memoria finita), se requiere tomar ciertas consideraciones a la hora de implementar un
A.C. Por ello, la definición original se modifica para dar cabida a retículas finitas en las que
las células del A.C. interactúen. Esto conlleva la consideración extra de lo que debe de
suceder con aquellas células que se encuentren en los bordes de la retícula. A la
implementación de una o varias consideraciones específicas se le conoce como condición
de frontera.
Dentro del ámbito de los A.C., se pueden implementar numerosas condiciones de
frontera, en función de lo que el problema real requiera para su modelado. Por ejemplo:
Frontera abierta. Se considera que fuera de la lattice residen células, todas con un
valor fijo. En el caso particular del juego de la vida y de otros A.C. con dos estados
en su conjunto k, una frontera se dice fría si las células fuera de la frontera se
consideran muertas, y caliente si se consideran vivas.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
36 Dossier de Simulación y Modelos
Frontera periódica. Se considera a la lattice como si sus extremos se tocaran. En
una lattice de dimensión 1, esto puede visualizarse en dos dimensiones como una
circunferencia. En dimensión 2, la lattice podría visualizarse en tres dimensiones
como un toroide.
Frontera reflectora. Se considera que las células fuera de la lattice "reflejan" los
valores de aquellas dentro de la lattice. Así, una célula que estuviera junto al borde
de la lattice (fuera de ella) tomaría como valor el de la célula que esté junto al
borde de la lattice, dentro de ella.
Sin frontera. Haciendo uso de implementaciones que hagan crecer dinámicamente
el uso de memoria de la lattice implementada, se puede asumir que cada vez que
las células deben interactuar con células fuera de la lattice, esta se hace más
grande para dar cabida a estas interacciones. Obviamente, existe un límite
(impuesto por la memoria disponible) para esta condición. Es muy importante no
confundir esta condición de frontera con la definición original de A.C. cuya lattice
es inicialmente infinita. En el caso de un A.C. sin frontera, la lattice comienza con
un tamaño definido y finito, y conforme se requiera va creciendo en el tiempo, lo
cual no lo hace necesariamente un modelo más cercano a la realidad, pues si se
inicializara la lattice aleatoriamente, con esta condición sólo se pueden inicializar
las células dentro de la lattice inicial finita, mientras que en el caso de la definición
original, en teoría todas las células de la lattice infinita deberían ser inicializadas.
[editar] Variaciones
Los A.C. pueden variar en alguna de las características antes mencionadas, derivando en
autómatas celulares no estándar.
Por ejemplo, un A.C. estándar tiene una cuadrícula donde se asume que las células son
cuadros; es decir, que la retícula tiene una geometría cuadrada. Esto no es
necesariamente un requisito, y se puede variar el A.C. para presentar una geometría
triangular o hexagonal (en A.C. de 2 dimensiones, el cuadrado, el triángulo y el hexágono
son las únicas figuras geométricas que llenan el plano).
Universidad Salesiana de Bolivia Ingeniería de Sistemas
37 Dossier de Simulación y Modelos
También puede variarse el conjunto de estados k que cada célula puede tomar, la función
de transición f de forma que ya no sea homogénea, utilizar elementos estocásticos
(aleatoriedad) en f (lo que se conoce como A.C. probabilístico), variar las vecindades de
cada célula, etc.
C. Aplicaciones
El caparazón de Conustextile muestra un patrón caracterizable en términos de autómatas
celulares.
Los autómatas celulares pueden ser usados para modelar numerosos sistemas físicos que
se caractericen por un gran número de componentes homogéneos y que interactúen
localmente entre sí. De hecho, cualquier sistema real al que se le puedan analogar los
conceptos de "vecindad", "estados de los componentes" y "función de transición" es
candidato para ser modelado por un A.C.
Las características de los autómatas celulares harán que dichos modelos sean discretos en
tiempo, espacio o ambos (dependiendo de la variante de la definición de A.C. que se use).
Algunos ejemplos de áreas en donde se utilizan los autómatas celulares son:
Modelado del flujo de tráfico y de peatones.
Modelado de fluidos (gases o líquidos).
Modelado de la evolución de células o virus como el VIH.
Modelado de procesos de percolación.
D. Autómata celular unidimensional
El AC no trivial más simple consiste en una retícula unidimensional de células que sólo
pueden tener dos estados (« 0 » o « 1 »), con un vecindario constituido, para cada célula,
de ella misma y de las dos células adyacentes (23=8 configuraciones posibles). Existen
Universidad Salesiana de Bolivia Ingeniería de Sistemas
38 Dossier de Simulación y Modelos
28=256 modos de definir cuál ha de ser el estado de una célula en la generación siguiente
para cada una de estas configuraciones, luego existen 256 AC diferentes de este tipo.
Consideremos el AC definido por la tabla siguiente, que nos da la regla de evolución:
Motivo inicial 111 110 101 100 011 010 001 000
Valor siguiente de la célula central 0 0 0 1 1 1 1 0
E. Autómata celular bidimensional
El juego de la vida
El juego de la vida es el mejor ejemplo de un autómata celular, diseñado por el
matemático británico John HortonConway en 1970.
Hizo su primera aparición pública en el número de octubre de 1970 de la revista Scientific
American, en la columna de juegos matemáticos de Martin Gardner. Desde un punto de
vista teórico, es interesante porque es equivalente a una máquina universal de Turing, es
decir, todo lo que se puede computar algorítmicamente se puede computar en el juego de
la vida.
Desde su publicación, ha atraído mucho interés debido a la gran variabilidad de la
evolución de los patrones. Se considera que la vida es un buen ejemplo de emergencia y
autoorganización. Es interesante para los científicos, matemáticos, economistas y otros
observar cómo patrones complejos pueden provenir de la implementación de reglas muy
sencillas.
La vida tiene una variedad de patrones reconocidos que provienen de determinadas
posiciones iniciales. Poco después de la publicación, se descubrieron el pentaminó R, el
planeador o caminador (en inglés glider, conjunto de células que se desplazan) y el
explosionador (células que parecen formar la onda expansiva de una explosión), lo que
atrajo un mayor interés hacia el juego. Contribuyó a su popularidad el hecho de que se
publicó justo cuando se estaba lanzando al mercado una nueva generación de
Universidad Salesiana de Bolivia Ingeniería de Sistemas
39 Dossier de Simulación y Modelos
miniordenadores baratos, lo que significaba que se podía jugar durante horas en
máquinas que, por otro lado, no se utilizarían por la noche.
Para muchos aficionados, el juego de la vida sólo era un desafío de programación y una
manera divertida de usar ciclos de la CPU. Para otros, sin embargo, el juego adquirió más
connotaciones filosóficas. Desarrolló un seguimiento casi fanático a lo largo de los años
1970 hasta mediados de los 80.
El juego de la vida es en realidad un juego de cero jugadores, lo que quiere decir que su
evolución está determinada por el estado inicial y no necesita ninguna entrada de datos
posterior. El "tablero de juego" es una malla formada por cuadrados ("células") que se
extiende por el infinito en todas las direcciones. Cada célula tiene 8 células vecinas, que
son las que están próximas a ella, incluso en las diagonales. Las células tienen dos estados:
están "vivas" o "muertas" (o "encendidas" y "apagadas"). El estado de la malla evoluciona
a lo largo de unidades de tiempo discretas (se podría decir que por turnos). El estado de
todas las células se tiene en cuenta para calcular el estado de las mismas al turno
siguiente. Todas las células se actualizan simultáneamente.
Las transiciones dependen del número de células vecinas vivas:
Una célula muerta con exactamente 3 células vecinas vivas "nace" (al turno
siguiente estará viva).
Una célula viva con 2 ó 3 células vecinas vivas sigue viva, en otro caso muere o
permanece muerta (por "soledad" o "superpoblación").
Ejemplos de patrones
Existen numerosos tipos de patrones que pueden tener lugar en el juego de la vida, como
patrones estáticos ("vidas estáticas", en inglés stilllifes), patrones recurrentes
("osciladores", oscillators, un conjunto de vidas estáticas) y patrones que se trasladan por
el tablero ("naves espaciales", spaceships). Los ejemplos más simples de estas tres clases
de patrones se muestran abajo. Las células vivas se muestran en negro y las muertas en
Universidad Salesiana de Bolivia Ingeniería de Sistemas
40 Dossier de Simulación y Modelos
blanco. Los nombres son más conocidos en inglés, por lo que también se muestra el
nombre de estas estructuras en dicho idioma.
El bloque y el barco son vidas estáticas, el parpadeador y el sapo son osciladores y el
planeador y la nave espacial ligera (LWSS, lightweightspaceship) son naves espaciales que
recorren el tablero a lo largo del tiempo.
Los patrones llamados "Matusalenes" (Methuselahs) pueden evolucionar a lo largo de
muchos turnos, o generaciones, antes de estabilizarse. El patrón "Diehard" desaparece
después de 130 turnos, mientras que "Acorn" tarda 5206 turnos en estabilizarse en forma
de muchos osciladores, y en ese tiempo genera 13 planeadores.
En la aparición original del juego en la revista, Conway ofreció un premio de 50 dólares
por el descubrimiento de patrones que crecieran indefinidamente. El primero fue
descubierto por Bill Gosper en noviembre de 1970. Entre los patrones que crecen
indefinidamente se encuentran las "pistolas" (guns), que son estructuras fijas en el
espacio que generan planeadores u otras naves espaciales; "locomotoras" (puffers), que
se mueven y dejan un rastro de basura y "rastrillos" (rakes), que se mueven y emiten
naves espaciales. Gosper descubrió posteriormente un patrón que crece cuadráticamente
Universidad Salesiana de Bolivia Ingeniería de Sistemas
41 Dossier de Simulación y Modelos
llamado "criadero" (breeder), que deja atrás un rastro de pistolas. Desde entonces se han
creado construcciones más complicadas, como puertas lógicas de planeadores, un
sumador, un generador de números primos y una célula unidad que emula el juego de la
vida a una escala mucho mayor y una velocidad menor.
El primer planeador que se ha descubierto sigue siendo el más pequeño que se conoce:
Pistola de planeadores de Gosper (GosperGliderGun)
Se han hallado posteriormente patrones más simples que también crecen
indefinidamente. Los tres patrones siguientes crecen indefinidamente. Los dos primeros
generan un motor interruptor que deja bloques, mientras que el tercero genera dos. El
primero tiene una población mínima de 10 células vivas, el segundo cabe en un cuadrado
5 × 5 y el tercero sólo tiene un cuadrado de altura:
Universidad Salesiana de Bolivia Ingeniería de Sistemas
42 Dossier de Simulación y Modelos
Es posible que los planeadores interactúen con otros objetos de forma interesante. Por
ejemplo, si se disparan dos planeadores hacia un bloque contra el que chocan de la forma
correcta, el bloque se acercará al origen de los planeadores, pero si se disparan tres
planeadores de forma correcta el bloque se alejará. Esta "memoria del bloque deslizante"
se puede emplear para simular un contador. Es posible construir puertas lógicas AND (y,
conjunción), OR (o, disyunción) y NOT (no, negación) mediante el uso de planeadores.
También se puede construir una estructura que actúe como una máquina de estados
finitos conectada a dos contadores. Esto tiene la misma potencia computacional que una
máquina universal de Turing, así que el juego de la vida es tan potente como un
ordenador con memoria ilimitada: por ello es Turing-completo.
Además, una estructura puede contener un conjunto de pistolas que se combinen para
construir nuevos objetos, incluso copias de la estructura original. Se puede construir un
"constructor universal" que contenga un ordenador Turing-completo y que pueda generar
muchos tipos de objetos complejos, incluso nuevas copias de sí mismo. (Vienen
descripciones de estas construcciones en Winning Ways for your Mathematical Plays de
Conway, Elwyn Berlekamp y Richard Guy)
Universidad Salesiana de Bolivia Ingeniería de Sistemas
43 Dossier de Simulación y Modelos
Variantes
Desde la creación del juego se han desarrollado nuevas reglas. El juego estándar, en que
nace una célula si tiene 3 células vecinas vivas, sigue viva si tiene 2 o 3 células vecinas
vivas y muere en otro caso, se simboliza como "23/3". El primer número o lista de
números es lo que requiere una célula para que siga viva, y el segundo es el requisito para
su nacimiento.
Así, "16/6" significa que "una célula nace si tiene 6 vecinas y vive siempre que haya 1 o 6
vecinas". HighLife ("Alta Vida") es 23/36, porque es similar al juego original 23/3 sólo que
también nace una célula si tiene 6 vecinas vivas. HighLife es conocida sobre todo por sus
replicantes. Se conocen muchas variaciones del juego de la vida, aunque casi todas son
demasiado caóticas o demasiado desoladas.
/3 (estable) casi todo es una chispa
5678/35678 (caótico) diamantes, catástrofes
1357/1357 (crece) todo son replicantes
1358/357 (caótico) un reino equilibrado de amebas
23/3 (caótico) "Juego de la Vida de Conway"
23/36 (caótico) "HighLife" (tiene replicante)
235678/3678 (estable) mancha de tinta que se seca rápidamente
245/368 (estable) muerte, locomotoras y naves
34/34 (crece) "Vida 34"
51/346 (estable) "Larga vida" casi todo son osciladores
Parte de la lista que hay en Life32
Se han desarrollado variantes adicionales mediante la modificación de otros elementos
del universo. Las variantes anteriores son para un universo bidimensional formado por
cuadrados, pero también se han desarrollado variantes unidimensionales y
Universidad Salesiana de Bolivia Ingeniería de Sistemas
44 Dossier de Simulación y Modelos
tridimensionales, así como variantes 2-D donde la malla es hexagonal o triangular en lugar
de cuadrada.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
45 Dossier de Simulación y Modelos
V. Simulación de sucesos discretos
A. Verificación y validación de los modelos de simulación
Gracias al avance tecnológico, en la actualidad existen en el mercado aplicaciones con
interfaces gráficas tan poderosas que permiten a muchos usuarios con inclinaciones
técnicas desarrollar modelos en el área de la simulación. Por desgracia, en general dichos
usuarios aprenden a usar el lenguaje relacionado y manejan algunos de los conceptos
básicos, pero ponen muy poca atención al análisis correcto de los resultados. Así, muchos
estudios son interpretados de manera errónea y es muy probable que conduzcan, en
consecuencia, a malas decisiones.
Entre otras, el fenómeno que acabamos de describir ocurre por razones como éstas:
en primer lugar, el falso sentido de seguridad que desarrolla el usuario por el simple
hecho de conocer el lenguaje utilizado en el área; la facilidad de uso del software de
simulación actual y su capacidad para desarrollar gráficos y animaciones y, sobre todo, la
dificultad implícita en el análisis estadístico de la información. Es muy común encontrar
personas que después de simular un sistema estocástico aseguran de manera bastante
ingenua que el resultado de la variable de respuesta es un valor único —por ejemplo, que
el número de piezas que se acumulan ante una máquina es tan sólo el promedio de la
variable—, dejando de lado un completo análisis estadístico de dicha variable. Para evitar
que el lector se convierta en uno de esos usuarios, a continuación se discutirán los
aspectos mínimos que deben cuidarse en el análisis de las variables de salida.
Para empezar debemos distinguir dos categorías entre los modelos de simulación:
modelos de categoría terminal y modelos no terminales o de estado estable. A
continuación se explica esta clasificación con más detalle.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
46 Dossier de Simulación y Modelos
Simulaciones terminales
Los modelos de tipo terminal tienen como característica principal la ocurrencia de un
evento que da por terminada la simulación. Un ejemplo sería el siguiente: digamos que
nos interesa conocer el tiempo que llevaría procesar un lote de 10 piezas, el tiempo
requerido para vender 100 periódicos, o el número de clientes que se atiende en una
cafetería entre las 8:00 y 9:00 a.m. El análisis estadístico recomendado para este tipo de
simulaciones involucra la utilización de intervalos de confianza y la determinación de la
distribución de probabilidad de la variable de salida.
- Intervalos de confianza
Debido a la naturaleza aleatoria de los resultados de este tipo de modelos, es
necesario determinar su distribución de probabilidad y su intervalo de confianza en
las diferentes réplicas. En la sección del capítulo anterior se discute cómo obtener
la distribución de probabilidad de una variable aleatoria; por lo tanto, aquí nos
ocuparemos de los intervalos de confianza.
Si la variable aleatoria sigue una distribución normal, el intervalo de confianza está
dado por:
[
√ ( )
√ ( )]
En caso de que la variable aleatoria siga otro tipo de distribución, el intervalo de
confianza es relativamente más amplio, y se calcula como:
[
√
√ ]
Universidad Salesiana de Bolivia Ingeniería de Sistemas
47 Dossier de Simulación y Modelos
En ambas ecuaciones:
r = Número de réplicas
α = Nivel de rechazo
∑
(
∑( )
)
Simulaciones no terminales o de estado estable
A diferencia de los modelos anteriores, las simulaciones no terminales o de estado estable
no involucran una ocurrencia en el tiempo en que tengan que finalizar. Por ejemplo, si
deseáramos conocer el número de máquinas que deben instalarse en un sistema de
producción cuya operación tiene que mantenerse activa continuamente durante todo el
año, podríamos modelar el sistema hasta que la variable de interés llegara a un estado
estable. En este caso surge la necesidad de determinar la longitud de la corrida para
asegurar la estabilización de los resultados del modelo. Veamos cómo satisfacer dicho
requisito.
- Longitud de las réplicas
Para que el resultado de una variable aleatoria llegue al estado estable en una
simulación no terminal, es necesario garantizar que la longitud de la réplica, n, sea
lo suficientemente grande para que la variación entre réplicas no difiera de cierta
exactitud, ϵ, el ( ) de las veces.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
48 Dossier de Simulación y Modelos
En caso de normalidad el tamaño de corrida de la simulación se calcula como:
(
)
B. Modelos de simulación
Con el propósito de dar una idea de cómo desarrollar un modelo de simulación y
de qué manera emplear los conceptos expuestos a lo largo del presente capítulo, a
continuación se presentan algunos ejemplos programados en un programa de hoja
de cálculo.
- Modelo de una línea de espera con un servidor
Ejemplo
El tiempo que transcurre entre la llegada de ciertas piezas a una estación de
inspección sigue una distribución exponencial con media de 5 minutos/pieza. El
proceso está a cargo de un operario, y la duración de la inspección sigue una
distribución normal con media de 4.0 y desviación estándar de 0.5 minutos/pieza.
Calcular el tiempo promedio de permanencia de las piezas en el proceso de
inspección.
Para solucionar el problema anterior se debe:
1. Construir una tabla de eventos en la que se describa la relación entre las
variables involucradas en el proceso. Para la construcción de dicha tabla es
preciso identificar los elementos que se listan a continuación.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
49 Dossier de Simulación y Modelos
Los números entre paréntesis indican la columna que ocupa cada elemento en las tablas
siguientes
2. Definir las relaciones lógico-matemáticas entre los elementos; de la
siguiente tabla se describen, por ejemplo, las siguientes relaciones:
a. El tiempo entre llegadas es una variable aleatoria, simulada utilizando el
generador RAND( ) o ALEATORIO( ) de la hoja de cálculo de Excel y la
función generadora de variables exponenciales ( ).
b. El evento tiempo de llegada de la pieza corresponde al valor acumulado
de la columna (1).
c. Tomando en cuenta que solamente existe un operario encargado de la
tarea, el inicio de la inspección puede ocurrir cuando la pieza entra al
sistema, en caso de que el operario esté ocioso (2), o bien cuando
termina de inspeccionar la pieza anterior (5).
d. El tiempo de inspección es una variable aleatoria normal con media 4 y
desviación estándar 0.5, generada mediante la función interna normal
Universidad Salesiana de Bolivia Ingeniería de Sistemas
50 Dossier de Simulación y Modelos
acumulada inversa (NORMINV o DISTNORMINV) y como probabilidad el
generador de números aleatorios RAND( ) o ALEATORIO( ).
e. El fin de la inspección se calcula sumando el tiempo de inspección (4) al
tiempo de inicio de la inspección (3).
f. La variable tiempo en inspección se calcula, finalmente, como la
diferencia entre el tiempo de llegada (2) y el fin de la inspección (5).
g. Si bien no forma parte del objetivo del ejemplo, también es posible
determinar el tiempo de espera de una pieza antes de ser inspeccionada,
ya que es igual a la diferencia entre el tiempo de inicio de inspección (3)
y el tiempo de llegada de la pieza (2).
h. Esta última columna permite calcular el tiempo promedio de inspección
como promedio móvil: cada vez que una nueva pieza es simulada, el
tiempo promedio de inspección se recalcula.
Tabla a. Relación entre los eventos y actividades involucradas en el proceso
Universidad Salesiana de Bolivia Ingeniería de Sistemas
51 Dossier de Simulación y Modelos
3. Una vez definidas las relaciones se simula el proceso, teniendo cuidado de que el
tamaño de la réplica o experimento sea lo suficientemente grande para asegurar la
estabilidad del resultado final. La réplica cuyos resultados se ilustran en la tabla 4.2
se realizó con 1500 piezas; la información nos indica que el tiempo promedio de
espera es de 15.05 minutos/pieza. Además de este resultado, la columna 8 permite
visualizar la estabilización del sistema mediante una gráfica de líneas.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
52 Dossier de Simulación y Modelos
Tabla b. Simulación del proceso de inspección (en una hoja de cálculo de Excel)
Universidad Salesiana de Bolivia Ingeniería de Sistemas
53 Dossier de Simulación y Modelos
La gráfica de estabilización que se obtuvo a partir de la columna 8 (Tiempo
promedio en inspección) se muestra en la gráfica. Dicha gráfica nos indica que
el tamaño de la réplica es lo suficientemente grande para asegurar la
convergencia del resultado. Cabe señalar que esta gráfica de estabilización
corresponde a una réplica diferente a la de la tabla de eventos.
Al trabajar con procesos donde se involucran variables, actividades y eventos
aleatorios, las variables de estado o variables de respuesta serán, en
consecuencia, aleatorias. La gráfica siguiente muestra las gráficas de
estabilización de 5 diferentes réplicas del mismo modelo. Si bien la
estabilización está asegurada, el resultado final nunca es el mismo; es evidente
que replicar el experimento debe ser una práctica común en cualquier
simulación.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
54 Dossier de Simulación y Modelos
Al replicar el experimento 50 veces se obtienen los resultados que se listan en
la siguiente tabla. Para comprender el comportamiento de la variable es
necesario analizar estadísticamente esta información.
Tabla Resultados de 50 réplicas del experimento
Universidad Salesiana de Bolivia Ingeniería de Sistemas
55 Dossier de Simulación y Modelos
El análisis estadístico de la réplicas —realizado en este caso con la herramienta Stat: :Fit
de ProModel— permite concluir, a través de una prueba de bondad de ajuste, que el
tiempo promedio de espera en el proceso de inspección sigue una distribución de Erlang
con los siguientes parámetros: localización 9, forma 3 y escala 1.06; además tenemos los
siguientes estadísticos básicos:
Media: 12.18 minutos/pieza.
Desviación estándar: 1.76 minutos/pieza.
Intervalo de confianza con , - minutos/pieza.
Valor mínimo en la muestra: 9.69 minutos/pieza.
Valor máximo en la muestra: 17.09 minutos/pieza.
Coeficiente de asimetría (skewness):0.08177.
Curtosis: -0.071.
- Modelo de un proceso de ensamble e inspección
Ejemplo
Dos barras metálicas de diferente longitud son unidas mediante un proceso de
soldadura para formar una barra de mayor longitud. La longitud del primer tipo de
barra sigue una distribución uniforme entre 45 y55 cm. La longitud del segundo tipo
Universidad Salesiana de Bolivia Ingeniería de Sistemas
56 Dossier de Simulación y Modelos
de barra sigue una distribución 4-Erlang con media de 30 cm. Las especificaciones
del producto final son de 80±10 cm. Determinar el porcentaje de barras fuera de
especificación.
Para la solución del ejemplo se requiere:
Identificación de los elementos:
Variable de
estado
Cantidad de barras fuera de
especificación
Entidades Barras
Evento Comparación contra
especificaciones
0: Dentro de especificaciones
1: Fuera de especificaciones
Actividades Medición de la longitud de la barra
1
Medición de la longitud de la barra
2
Soldadura de las barras 1 y 2
Construcción de la tabla de eventos.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
57 Dossier de Simulación y Modelos
Tabla Inicial: Relación entre los elementos
C D E F G H I K
Ensamble Longitud
barra 1
(cm) (1)
Longitud
barra 2 (cm)
(2)
Longitud
total
(cm) (3)
Ei
(4)
Es (5) Estado de la
barra (6)
Probabilidad
de estar fuera
de
especificacion
es (7)
1 =(55-
45)*RAN
D ( )+45
= -
(30/4)*LN(RA
ND( )
=D5+E5 70 90 =IF(F5<G5,1,IF(F
5>H5,1,0))
=SUM($I$5:I5)
/C5
2 =(55-
45)*RAN
D (
)+45
= -
(30/4)*LN(RA
ND(
)
=D6+E6 70 90 =IF(F6<G6,1,IF(F
6>H6,1,0))
=SUM($I$5:I6)
/C6
3 =(55-
45)*RAN
D ( )+45
= -
(30/4)*LN(RA
ND( )
=D7+E7 70 90 =IF(F7<G7,1,IF(F
7>H7,1,0))
=SUM($I$5:I7)
/C7
4 =(55-
45)*RAN
D (
)+45
= -
(30/4)*LN(RA
ND(
)
=D8+E8 70 90 =IF(F8<G8,1,IF(F
8>H8,1,0))
=SUM($I$5:I8)
/C8
La tabla anterior muestra la relación matemática entre las diferentes variables o
elementos del sistema; fue desarrollada en una hoja de cálculo y el significado de cada
columna es el siguiente: 1.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
58 Dossier de Simulación y Modelos
1. La longitud de la barra 1 es una variable aleatoria con distribución uniforme entre
45 y 50 cm. Fue simulada con el generador RAND( ) o ALEATORIO( ) de la hoja de
cálculo, y CON la ecuación generadora de variables uniformes Ui = α + (b – α)ri.
2. La longitud de la barra 2 es una variable aleatoria simulada con la función RAND( )
o ALEATORIO( ), y CON la ecuación generadora de eventos Erlang:
(∏
)
3. Longitud total: Esta columna representa el proceso de soldadura, y se obtiene
sumando las longitudes de las barras pequeñas de las columnas (1) y (2).
4. La variable Ei simula el límite inferior de las especificaciones.
5. La variable Es simula el límite superior de las especificaciones.
6. Se asigna el atributo de calidad a cada pieza, denominado Estado de la barra,
mediante la comparación de la longitud total de la barra y los límites de
especificación.
7. Para determinar la Probabilidad de estar fuera de especificaciones se divide el
número de piezas defectuosas entre el número de piezas totales. Esto permite
obtener la probabilidad como promedio móvil, de manera que cada vez que es
simulado un nuevo ensamble la probabilidad se recalcula.
Simulación de sistema.
Una réplica con los resultados numéricos de las ecuaciones se muestra en la tabla
siguiente.
A partir de la información de la variable aleatoria Estado de la barra (columna 6) y
mediante una prueba de bondad de ajuste, es posible demostrar que esa variable
sigue una distribución de probabilidad de Bernoulli con media 0.5.
Tabla resultante: Simulación del proceso (en Excel)
Universidad Salesiana de Bolivia Ingeniería de Sistemas
59 Dossier de Simulación y Modelos
Construcción de la gráfica de estabilización.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
60 Dossier de Simulación y Modelos
La gráfica de estabilización siguiente de la información de la Probabilidad (columna 7) de
la tabla resultante permite visualizar que la réplica entra a la zona de estado estable
después de 200 ensambles, y se mantiene oscilando alrededor de 0.5 hasta el final de la
simulación, Ésta nos permite comprobar visualmente que el experimento tiene las
dimensiones suficientes para asegurar la convergencia del resultado.
Réplicas.
Al replicar el experimento 42 veces, modificando sólo la secuencia de números pseudo
aleatorios, se obtienen los resultados de la tabla siguiente.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
61 Dossier de Simulación y Modelos
Tabla Resultados de 42 réplicas del experimento
Análisis estadístico de la variable de estado:
El análisis del resultado de las réplicas de la tabla —realizado con ayuda de la herramienta
Stat: :Fit de ProModel— permite concluir, a través de una prueba de bondad de ajuste,
que la Probabilidad de que un ensamble esté fuera de especificaciones sigue una
distribución de Erlang con estos parámetros: localización, 0, forma 31.5, y escala, 0.517.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
62 Dossier de Simulación y Modelos
Además, la variable de respuesta tiene los siguientes estadísticos:
Media: 0.509.
Desviación estándar: 0.0175.
Intervalo de confianza con 1 – α [0.504,0.514] minutos/pieza.
Valor mínimo en la muestra: 0.46.
Valor máximo en la muestra: 0.54.
Coeficiente de asimetría: -0.124.
Curtosis: 0.014.
- Modelo de un sistema de inventarios
Ejemplo
La demanda de azúcar en una tienda sigue una distribución exponencial con media de
100 kg/día. El dueño de la tienda revisa el inventario cada 7 días, y hace un pedido a la
planta igual a la capacidad de la bodega menos la cantidad de azúcar que tiene
disponible en ese momento; la entrega es inmediata. La demanda no surtida por falta
de existencias representa ventas perdidas. La capacidad de almacenamiento de la
bodega es de 700 kg. El costo de ordenar es de $1000/orden. El costo de faltante es
de $6/kg, y el costo de llevar el inventario es de $1/kg. Determinar el
comportamiento del inventario a lo largo del tiempo y el costo promedio/día para un
horizonte de dos meses. Para la solución del ejemplo se requiere:
Universidad Salesiana de Bolivia Ingeniería de Sistemas
63 Dossier de Simulación y Modelos
Identificación de los elementos:
Variable de estado Cantidad de barras fuera de
especificación
Entidades Clientes
Evento Demanda
Ventas
Entrega de material por parte del
proveedor
Actividades Cálculo de los costos
Construcción de la tabla de eventos.
Tablas de eventos para el ejemplo
9 B C D E F G
1
0 Día
Entregas del
proveedor
Inventa
rio
inicial
Demanda Ventas Inventario
Final
1
1 0 700 =C11
= -100*LN(1-
RAND( ))
=IF(D11>=E11,
E1 1,D11)
=MAX(0,$D11-
$E11)
1
2
=B11
+1
=IF(MOD(B12,7)=0,7
0 0-G11,0)
=G11+C
12
= -100*LN(1-
RAND( ))
=IF(D12>=E12,
E1 2,D12)
=MAX(0,$D12-
$E12)
1
3
=B12
+1
=IF(MOD(B13,7)=0,7
0 0-G12,0)
=G12+C
13
= -100*LN(1-
RAND( ))
=IF(D13>=E13,
E1 3,D13)
=MAX(0,$D13-
$E13)
1
4
=B13
+1
=IF(MOD(B14,7)=0,7
0 0-G13,0)
=G13+C
14
= -100*LN(1-
RAND( ))
=IF(D14>=E14,
E1 4,D14)
=MAX(0,$D14-
$E14)
Universidad Salesiana de Bolivia Ingeniería de Sistemas
64 Dossier de Simulación y Modelos
1
5
=B14
+1
=IF(MOD(B15,7)=0,7
0 0-G14,0)
=G14+C
15
= -100*LN(1-
RAND( ))
=IF(D15>=E15,
E1 5,D15)
=MAX(0,$D15-
$E15)
(a) Relación entre los elementos
9 H I J K L
1
0 Costo de ordenar
Costo de
llevar
inventario
Costo faltante Costo total Costo Promedio
1
1
=IF(MOD(B11,7)=
0
,1000,0)
=1*(D11+
G
11)/2
=IF(D11<=E11,6*(E1
1
-D11),0)
=SUM(J11:
L11)
=AVERAGE($M$1
1 :M11)
1
2
=IF(MOD(B12,7)=
0 ,1000,0)
=1*(D12+
G 11)/2
=IF(D12<=E12,6*(E1
2 -D12),0)
=SUM(J12:
L12)
=AVERAGE($M$1
1 :M12)
1
3
=IF(MOD(B13,7)=
0 ,1000,0)
=1*(D13+
G 11)/2
=IF(D13<=E13,6*(E1
3 -D13),0)
=SUM(J13:
L13)
=AVERAGE($M$1
1 :M13)
1
4
=IF(MOD(B14,7)=
0 ,1000,0)
=1*(D14+
G 11)/2
=IF(D14<=E14,6*(E1
4 -D14),0)
=SUM(J14:
L14)
=AVERAGE($M$1
1 :M14)
1
5
=IF(MOD(B15,7)=
0 ,1000,0)
=1*(D15+
G 11)/2
=IF(D15<=E15,6*(E1
5 -D15),0)
=SUM(J15:
L15)
=AVERAGE($M$1
1 :M15)
Universidad Salesiana de Bolivia Ingeniería de Sistemas
65 Dossier de Simulación y Modelos
(b) Relación entre los costos
Las tablas (a) y (b) muestran la relación matemática entre las diferentes variables o
elementos del sistema; la tabla está desarrollada en un programa de hoja de
cálculo, y el significado de cada columna es el siguiente:
B: Contador de los Días transcurridos.
C: En esta columna se simulan las Entregas de material: cada siete días se
restablece el inventario en un nivel de 700 kg. Los valores se calculan como
la diferencia entre la Capacidad del almacén y el Inventario final del día
anterior. El uso de la función residuo o módulo (MOD) permite controlar
que la entrega se realice cada vez que el Día (columna B) sea múltiplo de
siete.
D: El Inventario al inicio del día se calcula sumando el Inventario final del
día anterior y las Entregas de material por parte del proveedor.
E: La Demanda es una variable aleatoria con distribución exponencial y
media de 100 kg. Se simula mediante el generador RAND( ) o ALEATORIO( )
de la hoja de cálculo y la ecuación generadora
F: Las Ventas representan la cantidad que le fue entregada al cliente, y se
calcula como el valor mínimo entre el Inventario al inicio del día y la
Demanda.
G: El Inventario al final del día se calcula restando las Ventas (columna F)
del Inventario inicial del día (columna D), verificando previamente que no
exista faltante.
H: En esta columna la función residuo o módulo (MOD) permite
incrementar en $ 1000 el Costo de ordenar cada vez que llegue una orden a
la tienda.
I: Se calcula el inventario promedio durante el día, y el resultado se
multiplica por $1/kg. J: En caso de no cubrir la Demanda, el Costo de
faltante se calcula multiplicando la demanda no surtida en ese día por el
costo de faltante por unidad, que en el ejemplo es de $6/kg.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
66 Dossier de Simulación y Modelos
K: El Costo total se determina mediante la suma de las columnas Costos de
inventario, Faltante y Ordenar.
L: La forma de calcular esta columna permite tener el Costo total como
promedio móvil: cada vez que se simula un nuevo día, el costo se recalcula.
Con esta columna se analiza la estabilidad de la variable inventario
promedio.
Simulación de sistema:
La tabla 4.8 muestra que los resultados es una réplica de 14 días de la simulación del
sistema, utilizando las ecuaciones de las tablas (a) y (b).
Universidad Salesiana de Bolivia Ingeniería de Sistemas
67 Dossier de Simulación y Modelos
Tabla de eventos del sistema de inventarios
Universidad Salesiana de Bolivia Ingeniería de Sistemas
68 Dossier de Simulación y Modelos
Resultados:
La figura 4.11 muestra el comportamiento del inventario al inicio del día (columna C) a lo
largo del tiempo, para el periodo simulado de 60 días.
El análisis del costo promedio de operación de la tienda incluye primeramente las gráficas
de estado estable de cinco réplicas independientes de los resultados de la tabla anterior.
El resultado nos permite observar la convergencia del costo respecto del tiempo.
Los valores finales del costo de operación de estas cinco réplicas son 592.55, 527.45,
506.13, 605.59 y 597.85. Con esta información calculamos un valor promedio de 565.9 y
Universidad Salesiana de Bolivia Ingeniería de Sistemas
69 Dossier de Simulación y Modelos
una desviación estándar de 45.7. Debido a que esta información es insuficiente para
demostrar la normalidad de los datos, el cálculo del intervalo de confianza con un nivel de
significancia de 90% se realiza mediante el teorema de Tchebycheff:
[
√
√ ]
[
√( )( )
√( )( )]
, -
Universidad Salesiana de Bolivia Ingeniería de Sistemas
70 Dossier de Simulación y Modelos
VI. Bibliografía
- Ríos Insua David – Ríos Insua Sixto – Martin Jacinto, “Simulación Métodos y
aplicaciones”, Alfaomega, primera edición, 2000.
- García Dunna Eduardo – García Reyes Heliberto – Cárdenas Barrón Leopoldo,
“Simulación y análisis de sistemas - Promodel”, Pearson Prentice Hall, primera
edición, 2006.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
71 Dossier de Simulación y Modelos
VII. Glosario
Distribución de probabilidad, es una función que asigna a cada suceso definido sobre la
variable aleatoria la probabilidad de que dicho suceso ocurra.
Discretos, un modelo en el cuál las variables de estado cambian en un número entero de
puntos en el tiempo.
Continuos, las variables de estado cambian continuamente en el tiempo.
Estáticos, representación de un Sistema en un instante particular de tiempo.
Dinámica, representación de un Sistema que se desarrolla a lo largo del tiempo.
Determinístico, simulación que no usa variables aleatorias.
Estocástica, simulación que contiene una ó más variables aleatorias.
Variable Aleatoria Discreta, variable aleatoria que puede asumir un número finito o a lo
más una cantidad numerable de valores posibles.
Locaciones, representan lugares fijos en el sistema, las Entidades son ruteadas a estas
locaciones para el procesamiento, almacenamiento ó cualquier actividad ó toma de
decisiones.
Entidades, cualquier cosa que el Modelo procesa es llamada Entidad.
Procesamiento, describe las operaciones que toman lugar en una locación.
Universidad Salesiana de Bolivia Ingeniería de Sistemas
72 Dossier de Simulación y Modelos
Llegadas, cada vez que una nueva Entidad es introducida en el Sistema, se le conoce como
llegada.
Contador, despliega los contenidos numéricos de la locación.
Calibrador, despliega gráficamente los contenidos de la locación.
Atributos, son entes similares a las variables, pero estas están ligadas a las entidades
específicas y usualmente contiene información acerca de esa entidad.
Recurso, es una persona , pieza de equipó algún otro dispositivo que es utilizado para
hacer una ó más actividades.
Interfaces, le dicen a PROMODEL donde interactúa un recurso con una locación, las
entidades también pueden viajar en las redes.