0% encontró este documento útil (0 votos)
135 vistas128 páginas

Modelos y Simulación de Sistemas

El documento introduce conceptos clave sobre sistemas y modelos. Explica que un sistema es un conjunto de elementos en interacción que tiende a un objetivo. Define el medio ambiente de un sistema y los estados de un sistema como los valores de los atributos de sus entidades. Finalmente, define un modelo como una descripción abstracta e incompleta de un sistema real que se utiliza para predecir su comportamiento bajo diferentes condiciones.

Cargado por

Sofía Medina
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
135 vistas128 páginas

Modelos y Simulación de Sistemas

El documento introduce conceptos clave sobre sistemas y modelos. Explica que un sistema es un conjunto de elementos en interacción que tiende a un objetivo. Define el medio ambiente de un sistema y los estados de un sistema como los valores de los atributos de sus entidades. Finalmente, define un modelo como una descripción abstracta e incompleta de un sistema real que se utiliza para predecir su comportamiento bajo diferentes condiciones.

Cargado por

Sofía Medina
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

1 Modelos y Simulación

CAPITULO 1

SISTEMAS Y MODELOS

1.1. INTRODUCCIÓN

Con frecuencia existen problemas cuya complejidad no permite enfocarlos mediante un método
analítico. Hay otros en que el objetivo es conocer cómo se comporta un sistema determinado, esto
es, necesitamos analizarlo para conocerlo.

Muchas veces no podemos hacer un estudio para averiguar detalles acerca del comportamiento del
sistema trabajando sobre el propio sistema debido a diversas razones: una de ellas son los costos,
otra la impractibilidad porque se interrumpe la actividad del sistema y otra es la complejidad. En estos
casos puede hacerse uso de una herramienta de mucha utilidad que es la Simulación.

La Simulación es una herramienta de la Investigación de Operaciones que permite estudiar sistemas


y los problemas analizándolos experimentalmente, de forma equivalente a la actividad que se realiza
en un laboratorio.

Los estudios que se hacen mediante simulación se basan en la imitación del comportamiento
dinámico de un sistema haciendo uso de un modelo que representa las propiedades del sistema.

1.2. CONCEPTOS BÁSICOS

Debido a que la Simulación se aplica preferentemente a problemas de cierta complejidad, utiliza el


Enfoque de Sistemas para estudiar tales problemas. Por esta razón presentaremos una revisión de
estos conceptos.

1.2.1 SISTEMA

Según la definición más usual, "un sistema es un conjunto de elementos en interacción". Una ciudad,
una célula, un organismo, son sistemas. Pero también un automóvil, un lavarropas, un perro y una
computadora. De este modo, ninguna definición de la palabra sistema puede resultar satisfactoria.
Sólo es fecunda la noción de sistema. A condición, claro está, de medir su alcance y sus límites.

Existen otras "definiciones" (para nosotros "noción") de la palabra SISTEMA. La más completa es la
siguiente:

Un sistema es un conjunto dinámico de elementos que


interaccionan, organizados en función de un objetivo
2 Modelos y Simulación

Estudiemos brevemente la composición de la misma. Al llamarlo conjunto estamos suponiendo que


contiene elementos que tienen algunas propiedades en común. El hecho de ser dinámico, impone
que presenta cambios en función del tiempo. Agregamos además que interaccionan (o poseen entre
ellos alguna relación), por lo que suponemos que el estado de cada unidad que compone el sistema
depende, está influida, condicionada, restringida por el estado de otra u otras unidades o elementos.

Asimismo, del concepto de sistema se desprende inmediatamente el concepto de pertenencia, ya


que habrá elementos que queden contenidos dentro de los límites del conjunto y otros que no. A su
vez a los elementos que no cumplen con la relación de pertenencia se los reconoce como
pertenecientes al Medio Ambiente. Dentro de ése Medio Ambiente, también existen elementos que
interactúan con los del conjunto y otros que no. Los que interactúan (que influyen) con los del
conjunto se dicen que pertenecen al entorno del sistema.

También se habla de que tiende a un objetivo y no se asegura de que lo alcanza. Es decir, el sistema
trata de alcanzarlo, lo que a su vez permite hablar de una mayor eficiencia en lograrlo o no.

En la naturaleza existen infinidad de sistemas que podemos identificar, tales como los seres humanos,
otros seres vivientes, los sistemas ecológicos, etc. Estos son sistemas naturales.

También tenemos otros sistemas creados por el hombre a los cuales identificamos como sistemas
artificiales, tales como las organizaciones, los sistemas sociales, sistema de transporte, un vehículo,
etc.

1.2.2. MEDIO AMBIENTE DEL SISTEMA

El medio ambiente de un sistema es todo aquello que interactúa con el sistema sin formar parte de
éste. El medio ambiente es en realidad un sistema más grande que contiene al sistema objeto de
nuestro estudio y contiene además otros sistemas. En este sentido decimos que un sistema es un
subsistema de su medio ambiente.

1.2.3. ESTADOS DE UN SISTEMA

Para ir encarando específicamente el enfoque de sistemas como metodología de la Simulación,


consideremos a un sistema como "colección de entidades". Entendemos por entidad algo
distinguible, identificable. Cada entidad tiene atributos, que es lo que "se puede decir" de la entidad.
A su vez cada atributo tiene valores, que es justamente lo que hace distinguible a cada entidad. Los
valores no necesariamente deben ser cantidades numéricas.
3 Modelos y Simulación

Para clarificar estos conceptos, damos un ejemplo que no se refiere específicamente a una
simulación, pero que le es más conocido a cualquier lector: en una empresa existe por ejemplo la
entidad EMPLEADO, de los tantos atributos que se le pueden encontrar, los más comunes son:

a) [Link] legajo, b) Apellido y nombres, c) [Link] documento,


d) Ocupación, e) Sueldo, f) Fecha de ingreso

Cada EMPLEADO, tendrá sus propios valores en cada atributo, que es justamente lo que lo hace
distinguible, identificable.

Cuando se habla de estado de un sistema, se refiere


a los valores de los atributos de sus entidades.

Atributos: Son las propiedades que poseen los componentes del sistema. Los atributos describen a
los componentes.

Ejemplo: Sistema: social

Componente: individuos

Atributos: profesión, edad, sexo.

Analizar un sistema supone estudiar sus cambios de estado conforme transcurre el tiempo. En todo
intervalo de tiempo, arbitrariamente pequeño existe una probabilidad de encontrar al sistema en un
estado determinado y también una probabilidad de que dicho estado cambie a uno de los restantes.
Finalizando decimos que:

Los atributos de una entidad definen su estado. El


estado de las entidades más importantes definen el
estado del sistema

1.3. DEFINICIÓN DE MODELOS

Cuando pensamos en la realidad, ¿qué estamos haciendo realmente?. Como primer paso en la
resolución de cualquier problema del mundo real debemos encontrar la manera de describir, explicar
o aún predecir la parte de la realidad en que reside el problema. Lo que notamos al principio es que
nuestro juicio se va desarrollando dentro de nuestra mente y que no podemos introducir porciones
importantes de la realidad en nuestra cabeza. Y, puesto que la realidad permanece en el exterior, lo
único que podemos hacer es crear en nuestro cerebro ideas o pensamientos acerca de la realidad. Así
pues, nuestros pensamientos son entonces abstracciones de la realidad.
4 Modelos y Simulación

¿Cómo son estas ideas o abstracciones? Son como imágenes o sombras de la parte de la realidad en
la que estamos pensando, como una perfecta correspondencia entre cada una de sus partes? O son
mas bien como una película tridimensional del mundo real? En circunstancias muy limitadas quizá
puedan ser una u otra de las dos, pero la mayoría de las veces nuestras imágenes mentales o modelos
no toman ninguna de estas formas, ya que los aspectos más importantes de la realidad no pueden
trasladarse a un retrato.

De hecho, para nosotros, quizá lo más importante de cualquier imagen mental sean aquellas partes
que no corresponden con aspectos físicos concretos de la cosa real. Si se pidiera a Vd. que formara en
su mente una imagen de su hogar, (o de su Universidad) con lo que está bien familiarizado y después
se le pidiera que describiera sus diez aspectos más importantes, lo más probable es que mencionara
principalmente aspectos conceptuales, antes que concretos.

Si nuestros modelos mentales no son simple fotografías instantáneas de la realidad (como se dice que
es el caso de los animales), ¿cómo se forman? Sabemos que nuestros patrones mentales consisten en
palabras y conceptos. Los combinamos en la mente para formar imágenes de la realidad que tienen
un significado para nosotros. Además como nuestros patrones mentales pueden expresarse por
medio del lenguaje, es posible comunicar a otros nuestras imágenes.

Pero ¿cuán "completos" pueden ser tales modelos mentales? ¿Podemos captar todos los detalles del
complicado mundo que nos rodea? Desde luego que no, porque eso sería impracticable; pero si
actuáramos sólo hasta que nuestras imágenes fueran completas, nunca haríamos nada. Casi siempre
nuestras imágenes mentales consisten en unos pocos conceptos, representados por unas cuantas
palabras, que corresponden a los pocos aspectos que consideramos pertinentes para el problema
que afrontamos. Tenemos una idealización abstracta, incompleta, vaga de la situación real, y es por
medio de esa construcción abstracta (nuestro modelo mental) con la que resolvemos el problema. Y,
por fortuna, nuestros modelos mentales son más sencillos que la realidad, pues de otra manera no
podríamos discurrir nuestro modo de tratar ningún problema aparte de los más triviales. El valor de
un modelo para la resolución de problemas se deriva precisamente de que no corresponde a la
realidad, excepto en aquellos detalles que son pertinentes para el problema que se nos presenta. Para
concretar lo dicho, definimos ahora formalmente, el concepto de modelo.

MODELO: es una descripción de algún sistema real, que intenta predecir qué
ocurrirá si se llevan a cabo determinadas acciones. Por lo general todos los
modelos utilizables simplifican y aún idealizan la realidad.

Volviendo sobre nuestra exposición sobre el modelo como auxilio en la resolución de problemas, en
el sentido más estricto, encontramos la solución:
5 Modelos y Simulación

• observando la realidad donde está inserto el problema


• haciendo la abstracción del mismo, mediante el pensamiento
• investigando, también por medio del pensamiento, cuál será la solución al problema en nuestro
modelo mental abstracto
• aplicando luego el mismo método de resolución, a la realidad

Lo antedicho no es, ni remotamente, una verdad absoluta. Y además no siempre da resultado. Por
ejemplo, considere el caso de que se requiere cambiar la distribución de una planta fabril. Hay
maquinarias, dispositivos, grúas, moto-elevadores, personas y restricciones para considerar. No se
puede llevar una cuadrilla de obreros para probar cuatro o cinco distribuciones diferentes y ver que
resulta. Si su modelo mental es insuficiente para resolver el problema por experimentación mental, y
si no se puede (o es insensato) mover y empujar el mundo real en una serie de experimentos físicos,
¿cómo resolver el problema? ¿hay otras maneras? Desde luego que sí y todos conocemos algunas. Se
podría usar:

1 Un modelo analógico que consiste en miniaturas de máquinas, muebles, grúas, vagones de


ferrocarril, que pueden moverse y acomodarse sobre el piso de una fábrica, o una playa de
ferrocarril en miniatura.
2 Un modelo icónico o iconográfico que no funciona como la cosa real (como en el modelo
analógico), sino que únicamente se le parece. Un modelo tridimensional a escala, o sea, un dibujo
de la distribución de la planta, cuando menos para darse cuenta de la situación relativa de los
diferentes elementos a medida que se va pensando acerca de los posibles reordenamientos.
3 Un modelo verbal, el cual es casi una versión escrita de sus ideas y para el que usa las palabras
de un idioma que le sea bien conocido. Esto permite tener las relaciones y restricciones a la vista
mientras piensa sobre su problema.
4 Un modelo matemático es la versión simbólica de la planta fabril y su contenido con las
limitaciones sobre su colocación, expresada en el idioma de las matemáticas. Este modelo puede
manejarse como una simulación mediante el computador.

Todos estos modelos son diferentes y cada uno facilita la resolución de los problemas, en que es muy
difícil de discurrir, todo el procedimiento para llegar a su solución, o que no se prestan a la
experimentación en tamaño natural del mundo real.

1.3.1. CLASIFICACIÓN DE LOS MODELOS

En la anterior exposición sobre modelos, deliberadamente se ha tratado de distinguir entre los


modelos abstractos que formamos en nuestras mentes, los modelos simbólicos que usamos para
tener un registro de los modelos abstractos y los modelos físicos o materiales que empleamos algunas
veces como sustitutos de situaciones del mundo real que nos interesan. De aquí en más no nos vamos
a ocupar de los modelos físicos, y en cambio, los modelos simbólicos ocuparán toda nuestra atención.
Con el objeto de preparar una clasificación más detallada de los modelos matemáticos, vamos a
sintetizar por medio del siguiente diagrama, los modelos que antes clasificamos. En la última hilera
de este diagrama, de derecha a izquierda, los modelos se van haciendo cada vez más abstractos,
6 Modelos y Simulación

siendo el modelo mental la más pura abstracción. Uno de los inconvenientes que presenta esta
clasificación se debe a nuestra tendencia a confundir los modelos en sí con nuestra percepción mental
de los mismos.

TODOS LOS
MODELOS

MODELOS MODELOS
SIMBÓLICOS FÍSICOS

MODELOS MODELOS MODELOS MODELOS MODELOS


MENTALES MATEMATICOS VERBALES ICONICOS ANALOGICOS

El cuadro denominado "modelos verbales" debe comprender todos los casos registrados en un
lenguaje, ya sea que el registro se haya hecho sobre un papel o en la memoria de una computadora.
Sin embargo, cuando pensamos en un modelo verbal, formamos uno mental del modelo verbal y
con frecuencia no nos damos cuenta de la diferencia.

Así pues, el hecho de separar los modelos mentales de todos los demás, puede crear confusión sobre
refinamientos de esta clase, pero tiene la virtud de establecer la distinción entre lo que sucede dentro
de nuestra mente y lo que pasa afuera.

Los filósofos tienen un nombre especial para designar esta confusión entre la realidad y nuestros
pensamientos acerca de esa realidad: la llaman hipostatización, confusión de nuestros conceptos
y la realidad. Estos errores proporcionan a los semánticos mucho de qué hablar, pues
continuamente estamos cometiéndolos de manera inconsciente. Puesto que el lenguaje es nuestro
modelo básico colectivo de la realidad, y el que empleamos más a menudo, estos errores pueden
conducirnos a paradojas de tipo semántico con demasiada frecuencia, porque nuestro idioma tiene
sus defectos.

Una manera de evitar la caída en tales paradojas es el empleo del lenguaje o idioma de las
matemáticas en el registro de nuestros modelos. ¿Cómo nos ayudará esto? En primer lugar, cuando
usamos el símbolo "x" para representar algo, no introducimos una serie de ideas perturbadoras y que
quizá no vengan al caso, lo cual podría suceder cuando se emplea alguna palabra. Una vez que el
7 Modelos y Simulación

matemático ha definido x como la cantidad de cerdos que enviaron al mercado, puede olvidarse de
los cerdos por un rato.

Cuando él o alguien más mira el modelo o trabaja con el mismo, no encuentra su mente alborotada
con ideas sobre cerdos cada vez que ve la x. En otras palabras, el lenguaje de las matemáticas despeja
el campo del problema, de manera que podamos dedicarnos directamente a encontrar su solución,
en lugar de andar cavilando o discurriendo entre imágenes que, aún cuando contienen ciertos
aspectos de la realidad, no se refieren para nada al problema que estamos resolviendo.

Otra ventaja de utilizar el lenguaje matemático en algunos de nuestros trabajos con modelos es que,
en dicho lenguaje los modelos pueden manejarse mucho más fácilmente que los verbales. Después
de plantear la ecuación matemática de un problema que se ha enunciado con palabras, resolvemos
la ecuación de acuerdo con las reglas del álgebra, sin pensar en la interpretación de los pasos
intermedios. Al pasar un elemento x de un término a otro de la ecuación, no hay necesidad de
detenerse a pensar sobre el significado de la operación.

Ciertamente, no hay que hacer una pausa para considerar si la x que hemos pasado de miembro es
terca, resbaladiza o demasiado pesada. En lo que se quiere insistir es en que, el lenguaje de las
matemáticas está hecho a la medida para usarse en operaciones analíticas; es mucho más fácil mover
de un lado para otro las x y las y que las palabras, y desde luego todavía más que mover fresadoras,
grúas, cerdos o cualquier cosa por el estilo.

1.3.2. TIPOS DE MODELOS MATEMÁTICOS

Ahora que hemos llegado al punto de concentrar nuestra atención en los modelos matemáticos, ¿Qué
variedad existe de ellos? Cualquier persona que haya explorado la extensa literatura que hay sobre
matemáticas debe haberse asombrado de la enorme cantidad de temas particulares que se han
tratado y de la variedad de sistemas matemáticos designados por medio de la palabra "modelo". En
los siguientes párrafos, todo este vasto espectro de modelos matemáticos será dicotomizado
repetidas veces con el fin de aclarar qué clases de modelos hay y como pueden clasificarse
ventajosamente de acuerdo a las diferentes dicotomías.

- Distinción entre modelos cuantitativos y cualitativos

En primer lugar, dividiremos nuestros modelos matemáticos entre aquellos en los cuales los
principales símbolos representan números y los que representan otra cosa. En muchas situaciones de
los problemas, los aspectos numéricos o cuantitativos de los diferentes componentes de los mismos
son más importantes. Cuando construimos un modelo matemático y asignamos símbolos a las
constantes y variables, las cuales, en su mayor parte representan números, llamamos al resultado un
modelo cuantitativo. Estos son, con mucho, al presente, los más comunes y útiles en los negocios. Sin
embargo, algunos problemas tratan de cualidades de componentes de manera que cuando se
8 Modelos y Simulación

construyen modelos matemáticos cuyos símbolos representan en su mayor parte cualidades no


numéricas, se denominan modelos cualitativos. La Teoría de Conjuntos, es una fuente importante
de modelos cualitativos.

- Distinción entre modelos probabilísticos y determinísticos

Se llaman modelos probabilísticos los que están basados en las matemáticas de Estadística y
Probabilidad, en los cuales introducimos las incertidumbres que por lo general acompañan nuestras
observaciones de acontecimientos o eventos reales. Un modelo cuantitativo que no contenga
consideraciones probabilísticas se llama modelo determinístico.

Los modelos que trata la SIMULACION son esencialmente modelos matemáticos, cuantitativos, y
probabilísticos.

- Distinción entre modelos de acuerdo con el método de resolución.

Resulta de suma importancia la separación de los modelos de acuerdo con el método empleado para
su resolución. Cuando se construye un modelo matemático queda en forma simbólica y con él se
pueden efectuar operaciones empleando los mecanismos de las matemáticas. Es lo que se hace
cuando se resuelve una ecuación por medio del álgebra, por ejemplo. Se dice que un modelo opera
de modo analítico cuando su utilidad se deriva de la aplicación del mecanismo analítico de las
matemáticas a su estructura simbólica. La difusión del computador, ha permitido la construcción de
modelos específicos, que utilizando la alta velocidad de cálculos, evitando de este modo, el uso de los
poderosos, pero a veces también engorrosos, métodos matemáticos del análisis. Estos modelos
operan de modo numérico y las soluciones que proporcionan son numéricas y no en forma de
ecuaciones, fórmulas o símbolos matemáticos de cualquier clase.

El modo numérico se enfoca sobre el proceso de computación y esto debe establecerse


explícitamente para aprovechar el tremendo poder de la computadora digital.

BIBLIOGRAFÍA CONSULTADA

- ….
-
9 Modelos y Simulación

CAPITULO 2

SIMULACIÓN

2.1. DEFINICIÓN DE SIMULACION

Dado un modelo matemático de un sistema, a veces es posible obtener información relativa al mismo
por medios analíticos. Cuando esto no resulta posible, por lo engorroso de la tarea y/o el tiempo que
insumiría, es necesario utilizar métodos de cómputos numéricos para resolver las ecuaciones.
Asociado a esta idea es que se pone de moda, a fines de 1940 el verbo simular, para describir el viejo
arte de la construcción de modelos para la resolución de problemas. Aunque la palabra simulación se
aplica a diversas formas de construcción de modelos, como los de la pintura y esculturas del
Renacimiento, por ejemplo, los modelos a escala de aviones supersónicos y los modelos en
computadoras de los procesos cognoscitivos, tiene ahora un significado específico en las ciencias
físicas y las del comportamiento.

[Link], [Link], [Link] y [Link], en "Tecnicas de Simulación en Computadoras" (Limusa - 1977)


expresa: "...Para los que prefieren una definición estrictamente formal, la propuesta de
[Link] Churchman puede resultar satisfactoria, y define la simulación como sigue:

“x simula a y” si y solo si: (a) x e y son sistemas formales; (b) y


se considera como el sistema real; (c) x se toma como una
aproximación al sistema real; (d) las reglas de validez de x no están
exentas de error.

Además, la siguiente será la definición que se usará a través de este libro:

SIMULACION, es una técnica numérica para conducir experimentos en una computadora


digital, los cuales requieren ciertos tipos de modelos lógicos y matemáticos, que describen el
comportamiento de un negocio o un sistema económico (o algún componente de ellos) en
períodos extensos de tiempo real.

2.2. FUNDAMENTOS RACIONALES DE LA SIMULACION EN COMPUTADORAS

El fundamento racional para usar la simulación en cualquier disciplina (sea económica o


investigación operativa) es la búsqueda constante del hombre por adquirir conocimientos
relativos a la predicción del futuro.
10 Modelos y Simulación

Estos fundamentos son:

1) Puede ser imposible o extremadamente costoso observar ciertos procesos en el


mundo real. Por ejemplo, antes de los primeros vuelos espaciales tripulados,
realizados por USA o la ex- URSS, la NASA no poseía información de los efectos que
tales vuelos tendrían sobre los seres humanos, pues nadie lo había experimentado
antes. Resulta claro, que una alternativa para obtener información inicial acerca de
los efectos de vuelos espaciales en los seres humanos, era la realización de un gran
número de vuelos experimentales utilizando pilotos de prueba. Este método fue
rechazado debido al alto valor que se da a la vida humana.
Sin embargo, la NASA implantó con éxito un método: la simulación en computadora
de los vuelos y sus efectos en los pilotos de prueba.

2) En segundo lugar, el sistema observado puede ser tan complejo que sea imposible
describirlo en términos de un sistema de ecuaciones matemáticas, del cual se puedan
tener soluciones analíticas para ser usadas con propósitos predictivos. La mayoría de
los sistemas económicos se encuentran en esta categoría. Por ejemplo, es casi
imposible describir la operación de un negocio, una industria, o una economía en
términos de unas cuantas ecuaciones simples. Se ha encontrado que la simulación
constituye un instrumento extremadamente efectivo para trabajar con problemas de
este tipo.

3) Aún cuando un modelo matemático logre formularse para describir algún sistema de
interés, puede no obtenerse una solución del modelo por medio de técnicas analíticas
directas y, consecuentemente, tampoco se podrán realizar predicciones acerca del
comportamiento futuro del sistema.

4) Resultaría casi imposible o muy costoso, realizar experimentos de validación en los


modelos matemáticos que describen al sistema.

2.3. RAZONES PARA SU EMPLEO

Aunque la razón fundamental para elegir la simulación en computadoras puede ser la facilidad
para vencer las dificultades que presenta el método científico, hay otras razones para su
empleo, que no son excluyente de las cuatro ya expuestas.

1) La simulación hace posible estudiar y experimentar con las complejas interacciones


que ocurren en el interior de un sistema dado, ya sea una empresa, industria,
economía o subsistema de cualquiera de ellas.
2) A través de la simulación se pueden estudiar los efectos de ciertos cambios
informativos, de organización y ambientales, en la operación de un sistema, al hacer
11 Modelos y Simulación

alteraciones en su modelo y observar los efectos de éstas en el comportamiento del


sistema.
3) La observación detallada del sistema que se está simulando, conduce a un mejor
entendimiento del mismo y proporciona sugerencias para mejorarlo, que de otro
modo no podrían obtenerse.
4) La simulación puede ser usada como recurso pedagógico para estudiantes y
practicantes, al enseñarles los conocimientos básicos en el análisis teórico, el análisis
estadístico y en la toma de decisiones. Entre las disciplinas en las que la simulación
ha sido utilizada con éxito para el mencionado propósito, pueden incluirse la
administración de empresas, la economía, la medicina y el derecho.
5) La experiencia que se adquiere al diseñar un modelo de simulación en una
computadora, puede ser más valiosa que la simulación en sí misma. El conocimiento
que se obtiene al diseñar un estudio de simulación sugiere, frecuentemente, cambios
en el sistema en cuestión. Los efectos de estos cambios pueden probarse, entonces,
a través de la simulación, antes de implantarlos en el sistema real.
6) La simulación puede emplearse para experimentar con situaciones nuevas acerca de
las cuales tenemos muy poca o ninguna información, con el objeto de estar
preparados para alguna eventualidad.
7) La simulación de sistemas complejos puede producir un valioso y profundo
conocimiento acerca de cuáles variables son más importantes que otras en el sistema
y cómo ellas obran entre sí.
8) La simulación puede servir como prueba de 'preservicio' para ensayar nuevas políticas
y reglas de decisión en la operación de un sistema, antes de tomar el riesgo de
experimentar con el sistema real.
9) La simulación puede utilizarse para verificar soluciones analíticas.
10) Cuando se presentan nuevos componentes de un sistema, la simulación puede
emplearse para ayudar a descubrir los obstáculos y otros problemas que resulten de
la operación del sistema.

Por último digamos que la simulación es una poderosa herramienta, no siempre fácil de
aplicar, en forma correcta y efectiva. Muchos autores, sobre todo los de la Investigación
Operativa, relegan el tema de la simulación "al fondo" del libro y se refieren a ella como el
método a usar en el "último de los casos".

2.4. ETAPAS DE UNA SIMULACIÓN

En el desarrollo de una simulación se pueden distinguir las siguientes etapas (Banks et al., 1996):

1) Formulación del problema: En este paso debe quedar perfectamente establecido el objeto
de la simulación. El cliente y el desarrollador deben acordar lo más detalladamente posible
los siguientes factores: los resultados que se esperan del simulador, el plan de
12 Modelos y Simulación

experimentación, el tiempo disponible, las variables de interés, el tipo de perturbaciones a


estudiar, el tratamiento estadístico de los resultados, la complejidad de la interfaz del
simulador, etc. Se debe establecer si el simulador será operado por el usuario o si el usuario
sólo recibirá los resultados. Finalmente, se debe establecer si el usuario solicita un trabajo de
simulación o un trabajo de optimización.

2) Definición del sistema: El sistema a simular debe estar perfectamente definido. El cliente y el
desarrollador deben acordar dónde estará la frontera del sistema a estudiar y las
interacciones con el medioambiente que serán consideradas.

3) Formulación del modelo: Esta etapa es un arte y será discutida más adelante. La misma
comienza con el desarrollo de un modelo simple que captura los aspectos relevantes del
sistema real. Los aspectos relevantes del sistema real dependen de la formulación del
problema; para un ingeniero de seguridad los aspectos relevantes de un automóvil son
diferentes de los aspectos considerados por un ingeniero mecánico para el mismo sistema.
Este modelo simple se irá enriqueciendo como resultado de varias iteraciones.

4) Recolección de datos: La naturaleza y cantidad de datos necesarios están determinadas por


la formulación del problema y del modelo. Los datos pueden ser provistos por registros
históricos, experimentos de laboratorios o mediciones realizadas en el sistema real. Los
mismos deberán ser procesados adecuadamente para darles el formato exigido por el
modelo.

5) Implementación del modelo en la computadora: El modelo es implementado utilizando


algún lenguaje de computación. Existen lenguajes específicos de simulación que facilitan esta
tarea; también, existen programas que ya cuentan con modelos implementados para casos
especiales.

6) Verificación: En esta etapa se comprueba que no se hayan cometidos errores durante la


implementación del modelo. Para ello, se utilizan las herramientas de debugging provistas por
el entorno de programación.

7) Validación: En esta etapa se comprueba la exactitud del modelo desarrollado. Esto se lleva a
cabo comparando las predicciones del modelo con: mediciones realizadas en el sistema real,
datos históricos o datos de sistemas similares. Como resultado de esta etapa puede surgir la
necesidad de modificar el modelo o recolectar datos adicionales.

8) Diseño de experimentos: En esta etapa se decide las características de los experimentos a


realizar: el tiempo de arranque, el tiempo de simulación y el número de simulaciones. No se
debe incluir aquí la elaboración del conjunto de alternativas a probar para seleccionar la
mejor, la elaboración de esta lista y su manejo es tarea de la optimización y no de la
13 Modelos y Simulación

simulación. Debe quedar claro cuando se formula el problema si lo que el cliente desea es un
estudio de simulación o de optimización.

9) Experimentación: En esta etapa se realizan las simulaciones de acuerdo el diseño previo. Los
resultados obtenidos son debidamente recolectados y procesados.

10) Interpretación: Se analiza la sensibilidad del modelo con respecto a los parámetros que tienen
asociados la mayor incertidumbre. Si es necesario, se deberán recolectar datos adicionales
para refinar la estimación de los parámetros críticos.

11) Implementación: Conviene acompañar al cliente en la etapa de implementación para evitar


el mal manejo del simulador o el mal empleo de los resultados del mismo.

12) Documentación: Incluye la elaboración de la documentación técnica y manuales de uso. La


documentación técnica debe contar con una descripción detallada del modelo y de los datos;
también, se debe incluir la evolución histórica de las distintas etapas del desarrollo. Esta
documentación será de utilidad para el posterior perfeccionamiento del simulador.

2.5. MÉTODO DE REDUCCIÓN DE VARIANZA

2.5.1. REVISIÓN DE LOS CONCEPTOS DE VARIANZA Y DESVIACIÓN ESTÁNDAR

Dos medidas de dispersión que se utilizan con frecuencia y que sí toman en consideración la forma en
que se distribuyen los valores son la varianza y su raíz cuadrada, la desviación estándar. Estas medidas
establecen la forma en que los valores fluctúan con respecto a la media.

Varianza: La varianza se define como el promedio aritmético de las diferencias entre cada uno
de los valores del conjunto de datos y la media aritmética del conjunto elevadas al cuadrado.

Su símbolo es S2 si estamos trabajando con una muestra y 2 si estamos trabajando con una población.

a) Varianza para datos no agrupados


14 Modelos y Simulación

b) Varianza para datos agrupados


15 Modelos y Simulación

2.5.2. ¿QUÉ INDICAN LA VARIANZA Y LA DESVIACIÓN ESTÁNDAR? - REVISIÓN

La varianza y la desviación estándar miden la dispersión "promedio" en torno a la media aritmética,


es decir, cómo fluctúan las observaciones mayores por encima de la media aritmética y cómo se
distribuyen las observaciones menores por debajo de ella.

La varianza tiene ciertas propiedades matemáticas útiles. Sin embargo, al calcularla se obtienen
unidades al cuadrado cm2, pulgadas2, mm2, (edades)2, (horas)2, etc. por ello, en la práctica, la principal
medida de dispersión que se utiliza es la desviación estándar, cuyo valor está dado en las unidades
originales cm, pulgadas, mm, edades, horas, etc.

En los ejemplos anteriores:

a) Para la muestra de datos 25, 12, 23, 28, 17, y 15 se obtuvo por desviación estándar: S = 6,26
(Unidades). Esto indica que la mayor parte de los datos de esta muestra se agrupan dentro de
6,26 unidades por encima y por debajo de la media aritmética, es decir, entre 20 – 6,26 =
13,74 y 20 + 6,26 = 26,26

b) Para el caso de los datos tabulados correspondientes a las edades de 26 personas, se obtuvo
una desviación estándar de S = 7,18 años. Esto indica que la mayor parte de los datos están
agrupados entre 29,96 – 7,18 = 22,78 años y 29,96 + 7,18 = 37,14 años

2.5.3. REDUCCIÓN DE LA VARIANZA

En muchos estudios de simulación, una gran parte del tiempo se emplea en el desarrollo del modelo
y en la programación del mismo; pero sólo un pequeño esfuerzo se utiliza para desarrollar un diseño
apropiado de las corridas o para analizar correctamente los resultados que genera la simulación.
Partiendo de que la información de entrada es una variable aleatoria, la información de salida es
16 Modelos y Simulación

también aleatoria. Por lo tanto, un modelo de simulación sólo puede producir un estadístico estimado
de la medida de desempeño.

Existen algunos métodos, conocidos como técnicas de reducción de varianza, que permiten reducir
los valores estimados para la varianza, fijando condiciones a partir de los datos históricos. Para que el
resultado de una simulación sea estadísticamente precisa y libre de tendencias, se debe especificar
perfectamente la longitud de cada corrida, el número de réplicas y el período de estabilización.

Ejemplo: Una pequeña fábrica consta de un centro de maquinado y estaciones de inspección en serie.
Las partes por procesar arriban a la planta a un ritmo de 1 por minuto. Los tiempos de procesamiento
en las máquinas e inspecciones subsecuentes son aleatorios en medias respectivas de 0,675 y 0,775
minutos; 90% de las partes inspeccionadas son “buenas” y se envían al área de embarque; el resto
son “malas” y se llevan a máquinas de reproceso. El centro de maquinado está sujeto a
descomposturas de ocurrencia aleatoria y la fábrica está inicialmente vacía y desocupada. La tabla
siguiente muestra los estimados de las medidas de desempeño analizadas para 5 réplicas
independientes, de longitud igual a 16 horas (se usan diferentes números aleatorios en cada réplica)
para una simulación en una planta.

Observe que los resultados para variar corridas pueden ser completamente diferentes. Así, una sola
corrida no produce respuestas. Se presentan aquí algunas técnicas que ayudarán al analista a
encontrar más rápida un estimador del resultado.

Las diferentes técnicas de reducción de la varianza, ocasionan una reducción en el tiempo de


simulación mediante la disminución del tamaño de la corrida y son valiosas cuando, por el tamaño de
los modelos, la memoria computacional no es capaz de soportar altos tiempos de simulación. Estas
técnicas básicamente pretenden distorsionar o cambiar el modelo original para obtener estimaciones
a bajo costo. A continuación se da una breve explicación de cada una de ellas.

Muestreo antitético

El objetivo de esta técnica es inducir a una correlación negativa entre los elementos correspondientes
en las series de números aleatorios utilizados para generar variaciones de entrada en réplicas
diferentes. Una forma de generar correlaciones negativas consiste en correr el modelo primero, con
17 Modelos y Simulación

números aleatorios ri para obtener un estimador Y1 del parámetro estudiado y después, con números
1 – ri, obteniendo un estimador Y2 del parámetro estudiado.

Corridas comunes

Una práctica útil cuando se desarrolla un proceso de simulación, es emplear datos históricos, los
cuales pueden ser archivados y utilizados posteriormente para definir, por ejemplo, los programas de
producción de años anteriores. El objetivo principal es iniciar nuevas corridas de simulación utilizando
siempre 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 comparación de dos o
más alternativas.

Muestreo clasificado

Esta técnica se apoya en un resultado parcial de una corrida, clasificándolo como interesante o no
interesante. En caso de ser interesante se continúa con la corrida; en caso contrario se detiene la
corrida.

Variaciones de control

Este método utiliza aproximaciones de modelos analíticos para reducir la varianza. Por ejemplo, una
simulación puede ser un modelo complejo de colas donde interese conocer la longitud promedio de
la fila, cuyo valor puede estimarse analíticamente.

Muestreo estratificado

En esta técnica la función de distribución se divide en varias partes, lo más homogéneas posibles que
se resuelven o ejecutan por separado; los resultados obtenidos se combinan para lograr una sola
estimación del parámetro a analizar.

Muestreo sesgado

Consiste en distorsionar las probabilidades físicas del sistema real, de tal forma que los eventos de
interés ocurran más frecuentemente. Los resultados obtenidos presentarán también una distorsión
que debe corregirse mediante factores probabilísticos de ajuste.
18 Modelos y Simulación

2.6. LENGUAJES DE SIMULACIÓN

La ejecución de modelos de simulación implica dos clases distintas de cálculos: 1) manipulaciones de


archivo que tienen que ver con el almacenamiento y procesamiento cronológico de los eventos del
modelo, y 2) cálculos aritméticos y de registro relacionados con la generación de muestras aleatorias
y la recolección de los estadísticos del modelo. La primera clase de cálculos implica un desarrollo
lógico extenso en procesamiento de listas, y el segundo tipo implica cálculos tediosos y tardados. La
naturaleza de esos cálculos hace que la computadora sea un medio esencial para ejecutar modelos
de simulación y que, a su vez, estimule el desarrollo de lenguajes especiales de cómputo de
simulación, para efectuar esos cálculos en forma cómoda y eficiente.

Los lenguajes disponibles de simulación discreta caen en dos categorías amplias:

1. Programación de eventos
2. Orientación a proceso

En los lenguajes de programación de eventos, el usuario detalla las acciones asociadas con la
ocurrencia de cada evento. El papel principal del lenguaje en este caso es 1) automatizar el muestreo
de distribuciones, 2) almacenar y recuperar elementos en orden cronológico y 3) recolectar medidas
estadísticas del modelo.

Los lenguajes orientados a proceso usan bloques o nodos que se pueden vincular entre sí formando
una red que describe los movimientos de transacciones o entidades (es decir, clientes) en el sistema.
Por ejemplo, en cualquier lenguaje de simulación de proceso los tres bloques o nodos más
prominentes son una fuente de donde se crean transacciones, una cola donde pueden esperar si es
necesario y una instalación donde se efectúa el servicio. Cada uno de esos bloques/nodos se define
con toda la información necesaria para hacer funcionar la simulación en forma automática.

Por ejemplo, una vez especificado el tiempo entre llegadas, un lenguaje orientado a proceso “sabe”
en forma automática cuándo sucederán los eventos de llegada. En efecto, cada bloque o nodo del
modelo tiene instrucciones vigentes que definen cómo y cuándo se mueven las transacciones en la
red de simulación.

Los lenguajes orientados a proceso se activan internamente con las mismas acciones que se usan en
los de programación de eventos. La diferencia es que se automatizan esas acciones para liberar al
usuario de los tediosos detalles de cómputo y lógicos. En cierto sentido, se puede considerar que los
lenguajes orientados a proceso se basan en el concepto de entrada y salida con una “caja negra”. Esto
significa, esencialmente, que los lenguajes orientados a proceso sacrifican la flexibilidad del modelado
en aras de la simplicidad y la facilidad de uso.

Entre los lenguajes importantes de programación de eventos están SIMSCRIPT, SLAM y SIMAN. Al paso de los
años estos lenguajes han evolucionado e incluyen posibilidades orientadas a procesos. Los tres lenguajes
19 Modelos y Simulación

permiten que el usuario escriba (una parte de) el modelo en lenguaje de nivel elevado como FORTRAN o C. Esta
posibilidad es necesaria para permitir al usuario modelar operaciones lógicas complicadas, que de otra manera
no se podrían lograr con las posibilidades normales de los lenguajes de programación de eventos. Una razón
principal de esta limitación es la forma restrictiva y quizás convulsionada con que esos lenguajes hacen las
transacciones (o entidades) entre las colas y las instalaciones del modelo.

El lenguaje orientado a proceso más antiguo es GPSS. Este, que fue el primero desarrollado a principios de la
década de 1960, ha evolucionado desde entonces para admitir nuevas necesidades de modelado de sistemas
complejos. Para usarlo con eficiencia el usuario debe dominar los “funcionamientos internos” de unos 80
bloques distintos. A pesar de su larga historia, GPSS todavía tiene algunas peculiaridades de modelado que son
difíciles de justificar. Un ejemplo de ellas es la necesidad de aproximar distribuciones continuas mediante otras
distribuciones seccionalmente lineales. Es cierto que ciertas versiones recientes del lenguaje han proporcionado
posibilidades directas para algunas de las distribuciones continuas (como la exponencial y la normal). Sin
embargo, con las tremendas posibilidades actuales de la computadora, es difícil comprender por qué ha
persistido tanto tiempo este obstáculo.

Algunos paquetes comerciales modernos dominan en la actualidad el mercado de la simulación, como Arena,
AweSim y GPSS/H, para mencionar sólo unos pocos. En estos paquetes se hace un uso intenso de interfaz con
el usuario para simplificar el proceso de creación del modelo de simulación. También proporcionan funciones
de animación, donde se pueden observar visualmente los cambios en el sistema. Sin embargo, al usuario con
experiencia le podrá parecer que esas interfaces reducen el desarrollo de un modelo de simulación hasta un
ritmo de “cámara lenta”. No es de sorprender que algunos usuarios prefieran escribir modelos de simulación en
lenguajes de programación tan generales como C, Basic y FORTRAN.

BIBLIOGRAFÍA

- Simulación y análisis de Modelos estocásticos – Mohammed Azarang – Eduardo García Dunna – Ed Mac
Graw – Hill
- Investigación de operaciones – Hamdy Taha

PÁGINAS WEB

• [Link]
[Link] (Accedida 16/12/2015)
20 Modelos y Simulación

CAPITULO 3

NÚMEROS PSEUDO ALEATORIOS Y PRUEBAS ESTADÍSTICAS

3.1 INTRODUCCIÓN

Un fenómeno aleatorio se caracteriza por la imposibilidad de predecir con certeza absoluta el resultado, a
diferencia de lo que ocurre con los fenómenos determinísticos. Sin embargo, es posible escribir una sucesión
de números tal que, mientras no conozcamos el algoritmo que los genera, aparezcan ante nosotros, como una
sucesión de números aleatorios o random.

Aquellos números que son elegidos como aleatorios son útiles en una amplia variedad de aplicaciones:

-SIMULACIÓN: cuando un computador se utiliza para simular fenómenos de la realidad o ideales, los números
aleatorios se requieren para brindar mayor veracidad.

-EJEMPLOS: a menudo no resulta práctico examinar todos los casos posibles, pero un ejemplo al azar nos
permitirá discernir acerca de diversas opciones.

-ANÁLISIS NUMÉRICO: las técnicas ingeniosas para resolver los complicados problemas numéricos han sido
diseñadas utilizando números aleatorios. Muchos libros se han escrito sobre este particular.

-TOMA DE DECISIONES: hay rumores de que algunos ejecutivos toman sus decisiones arrojando un dado.
Algunas veces es importante tomar una decisión completamente imparcial. Esto es útil, por ejemplo en los
algoritmos de computación, en las situaciones donde una toma de decisión prefijada hace que el algoritmo
trabaje cada vez más lentamente.

-TEORÍA DE JUEGOS: se usan los números aleatorios en juegos de cartas, ruleta, etc., es decir en pasatiempos
fascinantes para las personas. Este tradicional uso de los números aleatorios, ha sugerido el nombre de TÉCNICA
DE MONTE CARLO, el cual actualmente es un nombre general para describir cualquier algoritmo que emplee
números aleatorios.

Es costumbre en el estudio de estos números, que cuando se llega a este punto, surja la tentación de filosofar
acerca del significado de “aleatorio” (ó “random”). En este sentido debemos decir que no existe algo definido
como “NÚMEROS ALEATORIOS”. Por ejemplo, supongamos que disponemos de un generador que produce
números enteros uniformemente distribuidos sobre el intervalo 0 a 999.999. En un momento dado se le pide al
generador un número y produce el 999.999. Muchas personas considerarán que el 999.999 no es un número
verdaderamente aleatorio y si aceptarán, por ejemplo el número 951.473. Sin embargo, para cualquier buen
generador, será tan aleatorio el 951.473 como el 999.999. LO IMPORTANTE ES QUE CUALQUIER NUMERO ENTRE
0 Y 999.999 TENGAN IGUAL PROBABILIDAD DE APARICIÓN.
21 Modelos y Simulación

Nosotros hablaremos de una SECUENCIA DE NÚMEROS ALEATORIOS INDEPENDIENTES y esto significará que
cada número se obtuvo sencillamente por casualidad. Asimismo todos los generadores de números solo
producen una secuencia finita de números que luego se repite, por lo tanto esa secuencia no es aleatoria.

Una distribución UNIFORME es aquella en la cual cada número tiene la misma probabilidad de aparecer que
cualquiera de los otros. Cada uno de los 10 dígitos del 0 al 9 debe aparecer una de cada diez veces. Cada par de
dos dígitos sucesivos debe ocurrir una entre 100 veces, y así sucesivamente.- O dicho de otro modo:

1) cuando los números son tratados como punto sobre un segmento, entre el 0 y el 1, se presentan
uniformemente distribuidos.

2) cuando pares sucesivos de números, no solapados, se tratan como puntos sobre el cuadra-do unitario, se
presentan uniformemente distribuidos.

. .

. .

. .

n) cuando n-uplas de números, no solapados, se tratan como puntos sobre el hypercubo unitario n-dimensional,
se presentan uniformemente distribuidos.

Antes, cuando las personas necesitaron una secuencia de números aleatorios, para sus trabajos científicos
debieron construir sus propios generadores, tales como tirar un dado, hacer un juego de tarjetas y elegirlas al
azar, etc. En 1927 se construyó una tabla tomando valores que fueron obtenidos de un censo. Luego se
construyeron algunos mecanismos, y en 1939 se publicó una tabla conteniendo 100.000 números. En 1950
aparece la famosa tabla de la RAND CORPORATION.

Más tarde, cuando aparecen los computadores, las personas comienzan a buscar métodos más eficientes para
obtener tales números, mediante programas de computadoras.

Una tabla puede usarse pero, por su tamaño, resulta inadecuada, tanto en lo relativo a su almacenamiento,
como al ingreso de la misma. Los mecanismos que puedan acoplarse al computador, tales como un contador de
rayos cósmicos, o tomar algunos dígitos del reloj del computador, nunca se hicieron populares, pues no
permiten repetir una secuencia de números para una siguiente corrida, a menos que se los almacene. Es muy
importante poder repetir una secuencia de números por dos razones:

1) para la depuración de un programa,

2) estadísticamente, la comparación de dos controles alternativos hechos bajo las mismas condiciones, puede
resultar muy efectivo.

Lo inadecuado de los métodos existentes, llevó a los estudiosos a buscar métodos matemáticos para la
obtención de los números aleatorios.
22 Modelos y Simulación

3.2 GENERADORES DE NÚMEROS PSEUDO ALEATORIOS

John Von Neumann fue el primero en sugerir estos métodos, alrededor de 1946, utilizando un método de su
creación denominado "la parte central del cuadrado", que estudiaremos más adelante.

Los métodos matemáticos, es decir el disponer de fórmulas para calcular cada término de la sucesión de
números aleatorios, tienen una objeción obvia: en qué medida puede considerarse "aleatoria" una secuencia
donde cada número es generado por su antecesor. Esto es evidentemente un método determinístico, debido a
que los procesos aritméticos que se incluyen en los cálculos, determinan unívocamente cada término de la
sucesión.

La respuesta al interrogante anterior es la aparición de término PSEUDO ALEATORIO, para denominar a los
números generados con métodos matemáticos. Este término ha sido definido por Lehmer como "una noción
vaga que encierra la idea de una sucesión en la cual: i) cada término es impredecible para la persona ajena al
problema, ii) si sometemos dicha sucesión cierto número de pruebas tradicionales de la estadística, las aprueba
satisfactoriamente, y iii) todo depende del uso que se dará a la sucesión obtenida. Por último, un generador se
acepta como suficientemente aleatorio, para propósitos prácticos, si posee las siguientes características:
 tiene distribución uniforme
 es estadísticamente independiente
 es reproducible
 tiene un ciclo suficientemente largo
 trabaja a alta velocidad
 ocupa poca memoria.

3.2.1 - GENERADORES CON VALOR HISTÓRICO

En este punto veremos algunos generadores, que tienen como única virtud haber sido los primeros que se
propusieron, para ser calculados por una computadora, evitando de este modo el trabajo manual. Pese a la
jerarquía de los nombres de quienes fueron sus autores, ninguno de ellos resulta realmente adecuado para su
uso. A tal fin, es interesante leer lo que dice al respecto, Knuth, como conclusión sobre este tipo de algoritmos,
y que se incluye al final de este punto de generadores con valor histórico. Aquí los estudiaremos con el fin de
que el alumno “agilice su mano”, en este tipo de cálculos.

[Link] - MÉTODO DE LA PARTE CENTRAL DEL CUADRADO

Este método es, aparentemente, el primer método propuesto para usarse sobre un computador digital. Una de
las razones de la fama del método es que fue propuesto por John von Neumann. El algoritmo es el siguiente:

PROC.P.C.C. (N,M,TOT) // N:número de dígitos deseados, M:semilla


// TOT: total de números a generar //
j=1
While j<=TOT do
X = M^2
Si (el [Link] dígitos de X) - N es par then M = los N dígitos centrales de X
else M = los N dígitos centrales de (X * 10)
uj = 0, M
23 Modelos y Simulación

j =j+1
endwhile
endprocedure

Ejemplo: N = 3, M = 123, TOT = 4

j= 1 M=123 entonces X = 15129 tiene 5 dígitos

5 - 3 = 2 PAR entonces

M = 512

u1 = 0,512

j= 2 M= 512 entonces X = 262144 tiene 6 dígitos

6 - 3 = 3 IMPAR entonces

M = 214

u2 = 0,214

j= 3 M= 214 entonces X = 55796 tiene 5 dígitos

5 - 3 = 2 PAR entonces

M = 579

u3 = 0,579

j= 4 M= 579 entonces X = 317871 tiene 6 dígitos

6 - 3 = 3 IMPAR entonces

M = 787

u4 = 0,787

Este método fue probado y resultó ser una pobre fuente de números pseudo-aleatorios. El peligro es que la
secuencia tiende a tomar una ruta y repite un ciclo corto de elementos. El mayor problema es si llega a aparecer
un cero dentro de la secuencia. Veamos el siguiente ejemplo:

N=4 M = 3708 TOT = 50

j=1 M = 3708 entonces X = 13749264 tiene 8 dígitos

8 - 4 = 4 PAR
24 Modelos y Simulación

entonces M = 7492

u1 = 0,7492

j=2 M = 7492 entonces X = 56130064 tiene 8 dígitos

8 - 4 = 4 PAR

entonces M = 1300

u2 = 0,1300

j= 3 M = 1300 entonces X = 1690000 tiene 7 dígitos

7 - 4 = 3 IMPAR

entonces M = 9000

u3 = 0,9000

j= 4 M = 9000 entonces X = 81000000 tiene 8 dígitos

8-4=4 PAR

entonces M = 0000

u4 = 0,0000

y no se puede continuar.

[Link] - MÉTODO DE LEHMER

Datos de entrada:

no= semilla, un número entero de n dígitos

t = un número entero de k dígitos, con k<n

Procedimiento: - Se hace el producto de ni * t, con lo que se obtiene un número de n+k dígitos del se separan
los k dígitos de la izquierda. Queda entonces un número de n dígitos, del cual se resta los k dígitos separados.
Aclaremos esto con un ejemplo:

Datos de entrada:

n=4 k=2 n0 (semilla) = 4122 t = 76

n0 = 4122 entonces 4122 * 76 = 313272


25 Modelos y Simulación

3272 - 31 = 3241

n1 = 3241 entonces 3241 * 76 = 246316

6316 - 24 = 6292

n2 = 6292 entonces 6292 * 76 = 478192

8192 - 47 = 8145

n3 = 8145 entonces 8145 * 76 = 619020

9020 - 61 = 8959

n4 = 8959 ....... y así sucesivamente

Ni este último algoritmo, ni el de la parte central del cuadrado, ni otros del mismo tipo, es decir, que buscaron
de modo aleatorio hacer diversos cálculos, extraer dígitos y operaciones varias, produjeron resultados
satisfactorios.

3.2.2 - GENERADORES CONGRUENCIALES LINEALES

Todos los métodos que consideraremos a continuación se basan en la definición de congruencia lineal para
números enteros que dice:

Dado tres números enteros, a, b y m se dice que

a es congruente con b módulo m, si y solo si:

(b-a) es divisible por m, o lo que es lo mismo a/m y b/m producen el mismo resto

Como ya hemos indicado previamente, los métodos de congruencia para generar números aleatorios son
completamente determinísticos, y se dispone de fórmulas que permiten calcular de antemano el valor exacto
del i-ésimo número de una sucesión {n0, n1, n2, .............., ni,.......} sin que necesariamente se haya generado
toda la sucesión.

Aunque estos procesos no son del todo aleatorios, hay fundamentos pragmáticos que nos permiten
considerarlos como si en efecto los fueran, si las sucesiones que resultan, se someten consistentemente con
éxito, a cierto conjunto de pruebas estadísticas diseñadas para probar varias propiedades de los números.
26 Modelos y Simulación

Por ejemplo, si se puede mostrar que los números en una sucesión aparecen distribuidos en forma uniforme y
son estadísticamente independientes, entonces se puede suponer que el proceso es aleatorio, pese a su
carácter determinístico.

Los métodos de congruencia lineal se basan en la relación fundamental de congruencia que dimos más arriba.
Estos métodos presentan diversas variaciones en el cálculo, que dan lugar a sub-métodos, pero todos están
basados en la siguiente fórmula recursiva:

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

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

Al desarrollar la ecuación (I) obtenemos, para i = 0, 1, 2, ...........

n1  ( a * no + c ) mod m

2
n2  ( a * n1 + c ) mod m = [ a * no + (a + 1) c ] mod m

3 2 3 3
n3  [ a * no + ( a + a + 1 ) c ] mod m = [ a * no + c ( a -1 ) mod m ]

(a-1)

. . .

i i
ni  [ a * no + c ( a -1 ) ] mod m para i <= m ( II )

(a-1)

Una vez dados un valor inicial no (semilla), un factor constante a y una constante aditiva c, las ecuaciones
dadas conducen a una relación de congruencia (módulo m), para todo valor de i, en la sucesión {n 1, n2, n3,
..., ni, ....}

Los términos subsecuentes de la serie son todos enteros tal como lo determina la ecuación final (II) y forman
una sucesión de residuos módulo m. Esto a su vez implica que n i < m, para todo i. A partir de los números
enteros de la sucesión {ni}, se pueden obtener números racionales en el intervalo ( 0,1 ), con solo formar la
sucesión {ui } = { ni / m }
27 Modelos y Simulación

Respecto de la pregunta de si existe un mínimo valor positivo para i, i = h, tal que n h = no, donde h será el
PERIODO de la sucesión { ni }, si tal h existe cabe preguntarse, qué condiciones se puede imponer sobre n o, a, c
y m a fin de que el periodo de la sucesión sea lo más largo posible?

Sin duda entonces, los parámetros n0, a, c y m determinarán la calidad estadística del generador.

Existen teoremas del álgebra para probar que h siempre existe y que además su valor mínimo depende de m.
Esto significa que es imposible obtener sucesiones que no se repiten, utilizando métodos de congruencia.

Se han desarrollado tres métodos básicos de congruencia para generar números pseudo-aleatorios:

- MÉTODO ADITIVO

- MÉTODO MULTIPLICATIVO

- MÉTODO CONGRUENCIAL MIXTO

Los números obtenidos con el método que responde a la ecuación (I), de la página anterior, se dice que son
generados por el último de los tres métodos mencionados, esto es el METODO CONGRUENCIAL MIXTO.

[Link] - METODO CONGRUENCIAL MIXTO

Ya hemos dicho que los generadores congruenciales lineales generan una secuencia de números pseudo
aleatorios, en la cual el próximo número es determinado a partir del último número generado, es decir el
número pseudo aleatorio ni+1, es derivado a partir del número pseudo aleatorio n i. En la ecuación (I), de la
relación de recurrencia es la siguiente:

ni+1  ( a * ni + c ) mod m (2.1)

donde: n0 es la semilla
28 Modelos y Simulación

a es la constante multiplicativa (a>0)

c es la constante aditiva (c>0)

m es el módulo (m>no, m>a y m>0)

Esta relación de recurrencia nos dice que ni+1 es el residuo de dividir a * ni + c entre el módulo. Lo anterior
significa que los valores posibles de ni+1 son 0, 1, 2, 3, ......., m-1; es decir m representa el mayor número posible
de valores diferentes que pueden ser generados.

Con el propósito de ilustrar la generación de números pseudo aleatorios a través de este método, suponga que
se tiene un generador en el cual los valores de los parámetros son:

a=5 c=7 n0 = 4 y m=8

Para estos valores, se puede comprobar que la secuencia generada es:

3, 6, 5, 0, 7, 2, 1, 4

Con lo cual los ui que pertenecen al intervalo unitario (0,1) son

3/8, 6/8, 5/8, 0, 7/8, 2/8, 1/8, 4/8

Después de analizado este ejemplo, podría pensarse que el período de todo generador es siempre igual a m. Sin
embargo, esto es falso porque el período depende de los valores asignados a los parámetros a, c, n0 y m; es
decir, se requiere seleccionar valores adecuados para estos parámetros con el fin de que el generador tenga el
período completo.

Para ilustrar el caso que se presenta cuando el período es menor que m, suponga que tiene un generador en el
cual los valores de sus parámetros son:

a=7 c=7 no = 7 y m = 10

Para este generador el largo h del período es igual a 4 (compruébelo).

De los ejemplos anteriores, se advierte la necesidad de establecer algunas reglas que puedan ser utilizadas en
la selección de los valores de los parámetros, para que el generador resultante tenga el mayor período posible.
Algunas de estas reglas se dan a continuación.
29 Modelos y Simulación

SELECCION DE m (módulo):
Existen dos opciones para seleccionar el valor apropiado del módulo:
1 - Seleccionar m de modo que sea el número primo más grande posible y que a su vez sea menor que pd,
donde p es la base del sistema que se utiliza (binario, decimal, hexadecimal, etc.) y d es el número de dígitos
que tiene una palabra del sistema en el que se trabaja. Por ejemplo, si se tiene una computadora que trabaja
en sistema binario, con palabra de 32 bits, entonces p = 2 y d = 32.
2 - Seleccionar m como pd. Cuando m toma este valor se facilitan en grado sumo los cálculos para obtener el
número pseudo aleatorio ui, ya que solo se corre el punto binario (o decimal) a la izquierda del número. Sin
embargo se ha comprobado que cuando el módulo toma este valor, los últimos dígitos del número pseudo
aleatorio generado no se comportan en forma aleatoria.

Para ilustrar el problema que se presenta cuando se utiliza el criterio 2 de selección de m, supongamos que se
tiene un generador cuyos parámetros son: a = 81 c = 89 n o = 5 y m = 102

Para estos valores, la secuencia de números pseudo aleatorios se muestran en la tabla. En esta tabla se puede
apreciar que el último dígito del número tiene un periodo de 10. Esto significa que el último dígito puede ser
determinado mediante la siguiente relación de recurrencia:

Yi+1 = (Yi + 9) mod.10

i ni i ni i ni i ni i ni

1 94 21 74 41 54 61 34 81 14
2 03 22 83 42 63 62 43 82 23
3 32 23 12 43 92 63 72 83 52
4 81 24 61 44 41 64 21 84 01
5 50 25 30 45 10 65 90 85 70
6 39 26 19 46 99 66 79 86 59
7 48 27 28 47 08 67 88 87 68
8 77 28 57 48 37 68 17 88 97
9 26 29 06 49 86 69 66 89 46
10 95 30 75 50 55 70 35 90 15
11 84 31 64 51 44 71 24 91 04
12 93 32 73 52 53 72 33 92 13
13 22 33 02 53 82 73 62 93 42
14 71 34 51 54 31 74 11 94 91
15 40 35 20 55 00 75 80 95 60
16 29 36 09 56 89 76 69 96 49
17 38 37 18 57 98 77 78 97 58
18 67 38 47 58 27 78 07 98 87
19 16 39 96 59 76 79 56 99 36
20 85 40 65 60 45 80 25 100 05
30 Modelos y Simulación

Tabla de números pseudo aleatorios del generador n i+1 = (81 ni + 89) mod. 100

Del ejemplo anterior, es posible generalizar una relación de recurrencia que se relacione con los últimos dígitos
del número generado.

Si m = p2, se ha encontrado que la relación de recurrencia de los últimos dígitos, es la siguiente:

Yi+1,j = ni+1 mod pj , tal que j<d (2.2)

donde:

Yi+1,j son los últimos j dígitos del número ni+1, y el valor de j puede ser 1, 2, 3, ..., d-1

Por ejemplo, si j=1, la expresión (2.2) permite determinar el valor del último dígito del nro. pseudo aleatorio
ni+1. Si j = 2 se determinará el valor de los dos últimos dígitos, y así sucesivamente.

A la expresión (2.2) puede expresársela en función de los últimos dígitos del número pseudo aleatorio anterior,
para demostrar que:

Yi+1,j = (aYi,j + c) mod pj

Expresamos entonces la fórmula (2.2) en función de sus últimos dígitos

Yi+1,j = ni+1 mod pj

sustituyendo en esta última expresión , con la ecuación (2.1), se obtiene

Yi+1,j = [(ani + c ) mod pd ] mod pj

pero si llamamos q a la parte entera que resulta de dividir (an i + c) por pd, entonces la expresión anterior
resulta:

Yi+1,j = (ani + c - qpd) mod pj

como qpd mod pj = 0:

Yi+1,j = (ani + c ) mod pj

Yi+1,j = (ani) mod pj + c mod pj

y como X mod m = (X mod m) mod m, entonces la expresión anterior se transforma en:

Yi+1,j = (ani mod pj) mod pj + c mod pj


31 Modelos y Simulación

Yi+1,j = [ (ani mod pj) + c ] mod pj

y como, de (2.2)

Yi,j = ni mod pj

nos queda:

Yi+1,j = (aYi,j + c ) mod pj (2.3)

Esta última expresión tendrá un período completo p j, si el generador tiene período pd.

SELECCION DE a y c

La ventaja del método mixto respecto al método multiplicativo es que, si se hace una buena selección de a y c,
se pueden obtener secuencias con un período que cubre el grupo completo de m números diferentes. Desde el
punto de vista computacional el método exige una operación de suma adicional que no requiere el método
multiplicativo.

Otra ventaja que se menciona en relación a este método es que, si selecciona debidamente c, se puede
minimizar la correlación serial. Los resultados empíricos con este método no han llegado a demostrar en forma
terminante su superioridad sobre el multiplicativo, desde el punto de vista de la aleatoriedad y la ausencia de
correlación serial.

Las condiciones impuestas en a y c, con el fin de lograr un período completo (h = m), se resumen en la siguiente
forma:

- c debe ser primo relativo de m

- (a - 1) mod 4 = 0 si 4 es un factor de m

- (a - 1) mod b = 0 si b es un factor primo de m.

La interpretación práctica de estas condiciones se explican a continuación:

- En Sistema Binario: para lograr un período completo h = m, el parámetro c debe ser un número primo y a
debe satisfacer la relación de congruencia: a mod 4= 1, lo que se puede lograr haciendo que

a = 2k + 1 para k>=2.

- En Sistema Decimal: la constante c debe ser un entero impar no divisible entre 5 y el multiplicador a debe
satisfacer la relación de congruencia a mod 20 = 1 o, lo que es lo mismo, a = 10k + 1 para k>1.
32 Modelos y Simulación

SELECCIÓN DE no

Para este método se ha encontrado que el valor de la semilla es irrelevante, es decir tiene poca influencia sobre
las bondades estadísticas de las secuencias generadas.

[Link] - MÉTODO CONGRUENCIAL MULTIPLICATIVO

El método multiplicativo de congruencias computa una secuencia {ni} de enteros no negativos menores que m,
mediante la relación de congruencia:

ni+1  (a * ni ) mod m

Este método es simplemente un caso especial de la relación de congruencia expresada en (i), donde c = 0. El
método multiplicativo ha demostrado un comportamiento estadístico aceptable. Es decir, si se hace una
selección adecuada de los parámetros a y del valor inicial n0, se pueden generar secuencias de números que no
estén correlacionadas y tengan una distribución uniforme. Más aún, si se aplican ciertas condiciones a a y n0,
se puede asegurar un período máximo para las secuencias generadas mediante este método. Dado que el
procedimiento es totalmente determinístico, las secuencias pueden reproducirse con suma facilidad. La
elección de los valores para los parámetros dependerá del sistema en que se trabaja, es decir, existen distintas
recomendaciones según se trabaja en decimal o binario.

- SISTEMA DECIMAL:

1) el valor se la semilla n0 puede ser cualquier entero impar no divisible entre 5.

2) el valor seleccionado para a debe ser obtenido de acuerdo a la siguiente identidad:

a = 200 t + p

donde t es cualquier entero y p es cualquiera de los siguientes valores: 3, 11, 13, 19, 21, 27, 29, 37, 53, 59,
61, 69, 77, 83, 91.

3) el valor seleccionado para m puede ser 10d, o el número primo más grande menor que el
mayor valor que pueda almacenar una palabra.

- SISTEMA BINARIO

1) el valor de la semilla puede ser cualquier entero impar.

2) el valor seleccionado para a debe ser obtenido a partir de la siguiente expresión:


33 Modelos y Simulación

a=8t+3

siendo t cualquier entero positivo, es decir que el valor seleccionado para a se encuentra en
una clase residual representada por la relación de congruencia:

a = + 3 mod 8

Asimismo se puede demostrar que los valores de a próximos a 2 minimizan la correlación


entre los números generados.

3) Para la selección del módulo m, valen las mismas consideraciones expresadas en los méto-
dos anteriores.

Ejemplo de una generación de números aleatorios, con el método multiplicativo, en Sistema Binario y m = 2d.

1 - Se elige cualquier número impar como valor inicial de n0

2 - Se selecciona un entero a = 8t+3, donde t es cualquier entero positivo.

3 - Se computa a*n0 utilizando aritmética de enteros de punto fijo. Este producto se compone de 2 d bits, de
los cuales se desechan los d bits de alto orden y los d bits de bajo orden representan a n1.

4 - Se calcula u1 = n1 / 2d para obtener una variable aleatoria uniformemente distribuida en el intervalo


unitario.

5 - Cada número aleatorio sucesivo ni+1 se obtiene a partir de los bits de bajo orden del producto a * ni.

En el siguiente caso práctico, para aplicar el procedimiento anterior, se supone d = 4 (es decir el largo de la
palabra es de 4 bits).

En este caso el largo h del ciclo será de 4 ó en forma genérica se obtiene un período de 2 d-2.

1) se elige n0 = 7. Esto equivale a 0111 en forma binaria

2) para t = 1, a es igual a 11 ó 5. Se elige a = 5, o bien a = 0101 en su forma binaria.

3) an0 = (0101) (0111) = 00100011. Entonces n1 = 0011 y u1 = 3/16 = 0,1875

an1= (0101) (0011) = 00001111. Entonces n2 = 1111 y u2 = 15/16 = 0,9375

an2 = (0101) (1111) = 01001011. Entonces n3 = 1011 y u3 = 11/16 = 0,6875

an3 = (0101) (1011) = 00110111. Entonces n4 = 0111 y u4 = 7/16 = 0,4375

Como se puede observar n4 = n0, con lo cual se ha cumplido el ciclo del generador.
34 Modelos y Simulación

[Link] - MÉTODO CONGRUENCIAL ADITIVO

Este método si bien se basa en la relación fundamental de congruencia, tiene en realidad mayor valor histórico,
que bondades estadísticas.

Para generar números enteros pseudoaleatorios suma dos valores anteriores de una sucesión, respondiendo a
la siguiente fórmula:

n i+1  ( n i + n i-k ) mod m

En el caso particular que k = 1 , entonces el método se denomina de Fibonacci, ya que es similar a la recursión
definida para las series del mismo nombre.

Como se dijo más arriba es un método cuyo único valor es histórico, pues al igual que el método de la "parte
central del cuadrado” ha recibido refutaciones lapidarias. Por ejemplo, las permutaciones:

n i-1 < n i+1 < n i y n i < n i+1 < n i-1 nunca aparecen.

Otra gran desventaja es la tendencia a la correlación serial. Por ejemplo, supongamos que m = 1000, n0 = 1,
n1 = 1, la secuencia será:

2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 597, 584, 181,....

La conclusión es: a números pequeños tienden a seguirle números pequeños.

3.3 - PRUEBAS ESTADÍSTICAS PARA LOS NÚMEROS PSEUDO-ALEATORIOS

Las propiedades estadísticas de los números pseudo-aleatorios generados por los métodos que se han delineado
en la sección previa, deben coincidir con las propiedades estadísticas de los generados por un instrumento
aleatorio idealizado, que selecciona los números dentro del intervalo unitario [0, 1) en forma independiente y
de igual manera para todos ellos. En este sentido, es claro que los números pseudo-aleatorios producidos
mediante programas de computación no son aleatorios, lo cual se debe a que tales números están
completamente determinados por los datos iniciales y tienen una precisión limitada. Sin embargo, en la medida
en que nuestros números pseudo-aleatorios puedan pasar las pruebas estadísticas, estos números pueden
tratarse como verdaderos números aleatorios aunque no lo sean.

Existen muchas pruebas estadísticas diseñadas para revelar los alejamientos del carácter aleatorio de los
números. Knuth describe diez de ellas con algoritmos de cálculo. El propósito aquí es que el lector conozca los
propósitos principales de muchas de estas pruebas y no tanto proporcionar una explicación detallada de las
bases estadísticas de las pruebas.

3.3.1- PRUEBA DE LOS PROMEDIOS


35 Modelos y Simulación

Se plantea una prueba de hipótesis de promedios, con lo cual se trata de probar que los números pseudo-
aleatorios generados provienen de un universo uniforme con media 0.5. De antemano conocemos los
parámetros de la distribución uniforme que son:

Función de densidad f(x) =  1 si 0 <= x <= 1

0 si 0 > x > 1

Función [Link] F(x) =  1dt


0
= x

Valor esperado de la variable aleatoria uniformemente distribuida en E(x) = 1/2

el (0,1)

Varianza VAR(x) = 1/12

En base a esto, una prueba de hipótesis de promedios puede ser plateada de la siguiente forma:

Hipótesis nula H0 : u = 1/2

Hipótesis alternativa H : u  1/2


1

La realización de la prueba requiere los siguientes pasos:

P1) generar una muestra de n números pseudo aleatorios u i.

P2) calcular el promedio aritmético de los números generados:

X = (u1 + u2 + . . . + u n) / n

P3) determinar el valor del estadístico Zo, utilizando la siguiente fórmula:

( X  1 / 2) n
Z0 
1 / 12

P4) Si |Zo| < Zc, entonces no se puede rechazar la hipótesis de que los números pseudo aleatorios generados
provienen de un universo uniforme con media 0.5

Si se supone un nivel de significación c = 0.05 que tiene un valor de 1.96, entonces no se podrá rechazar la
hipótesis de que estos números tienen una media de 0.5, si se obtiene |Z c| < 1.96.
36 Modelos y Simulación

3.3.2 - PRUEBA DE LA FRECUENCIA

Esta es una de las tantas pruebas que veremos basada en el estadístico denominado "chi-cuadrado", 2 , que
es tal vez el mejor de los test estadísticos conocidos.

La prueba de frecuencia se usa para comprobar la uniformidad de una sucesión de n números pseudo aleatorios
u1, u2 , . . . , un y requiere los siguientes pasos:

P1) generar una muestra de n números pseudo aleatorios u i

P2) dividir al intervalo (0,1) en x sub-intervalos. Luego la frecuencia esperada de variables u en cada uno de los
sub-intervalos será n/x.

P3) determinar la frecuencia observada en cada sub-intervalo. Se denota como fj la frecuencia observada en el
sub-intervalo (j - 1 ) / x <= ui < j / x (con j = 1, 2, ..., x)

P4) calcular el estadístico

2
 n
x
x
    fj  
2
1
n j 1
 x

P5) si 12 < 


2
entonces no se puede rechazar la hipótesis de que los números generados provienen de un
universo uniformemente distribuido.

El estadístico generado se compara con un valor que representa una variable aleatoria chi-cuadrado, con x -1
grados de libertad y un nivel de significación  (que se obtiene consultando la tabla respectiva).

3.3.3 - PRUEBA DE SERIE

Las pruebas de serie se utilizan para comprobar el grado de aleatoriedad entre números sucesivos de una
sucesión.

Sean W1 = ( u1, u2,. . . ,uk ), W2 = ( u k+1, . . ., u2k ) , . . ., Wn = ( u(n-1)k+1, . . . ,u nk )

una secuencia de n k-tuplas. Se debe probar la hipótesis de que los W1, W2, . . . , Wn son puntos independientes
y uniformemente distribuidos en el cubo unitario k.

Vamos a desarrollar a continuación el caso particular de una secuencia de n duplas (pares) de números pseudo-
aleatorios. En términos generales podemos decir que la prueba consiste en formar parejas de números, los
cuales pueden ser considerados como coordenadas de un punto en el cuadrado unitario. Se recomienda, para
evitar la correlación, que los pares de números sean no solapados.
37 Modelos y Simulación

P1) generar n pares de números pseudo-aleatorios (ui, u i+1 )

P2) dividir el cuadrado unitario en x2 celdas. Luego la frecuencia esperada en cada una de las celdas será n/ x2

P3) determinar la frecuencia observada en cada una de las x2 celdas. Se denota como fjk la frecuencia
observada del par de números que satisface:

( j - 1 ) / x <= ui < j / x y ( k - 1 ) / x <= ui+1 < k / x

donde j, k = 1, 2, ......, x


2
P4) calcular el estadístico 2 mediante la siguiente fórmula:

2
x2 x x
 n
 2
2
n

j 1 k 1
 f jk  x 2 
 

P5) Si 2 
2 2
< no se puede rechazar la hipótesis de que los números provienen de un universo
uniformemente distribuido. Aquí también se compara el estadístico calculado, con una variable aleatoria con
distribución chi-cuadrado, con nivel de significación  y x2 - x grados de libertad.

3.3.4 - PRUEBA DE KOLMOGOROV-SMIRNOV (K-S)

Este procedimiento prueba la hipótesis de que la distribución acumulada de una variable aleatoria x es F 0(x).

Para probar esta hipótesis se obtiene una muestra de tamaño N. A continuación, se determina la distribución
acumulada de la muestra, la cual se denota por Fn ( x ). Posteriormente, Fn ( x ) es comparada con la distribución
acumulada hipotética de F0(x). Si Fn ( x ) difiere demasiado de F0 ( x ) entonces ésto es una evidencia de que
Fn(x) no es igual a F0 ( x ). Esta prueba puede ser descripta en los siguientes pasos:

P1) Generar N números pseudo-aleatorios ui.

P2) Ordenar dichos números en orden ascendente, i = 1, 2, 3, ..., n.

P3) Calcular la distribución acumulada de los números generados con la fórmula:

Fn(x) = i / n

donde i es la posición que ocupa el número ui en el vector x, obtenido en el paso P2).


38 Modelos y Simulación

P4) Calcular el estadístico K-S del siguiente modo:

Dn = MAX | Fn ( xi ) - ui | i

P5) Si Dn < d,n, entonces no se puede rechazar la hipótesis de que los números generados provienen de una
distribución uniforme.

La distribución Dn ha sido tabulada como una función de n y  para cuando Fn ( x ) = Fo ( x ), y se muestra en la


siguiente página.

3.3.5 - PRUEBA DE CORRIDA ARRIBA Y ABAJO DE LA MEDIA

Se genera una secuencia de números pseudo-aleatorios u1, u2, ..., un. A continuación se genera una secuencia


binaria S, tal que:
0 si ui < 0.5
Si =
1 si ui > 0.5

Una vez obtenida la secuencia binaria S, el siguiente paso es determinar la cantidad de veces que una misma
longitud de corrida se repite (frecuencia observada de longitud i). Una sucesión de i ceros (unos), enmarcada
por unos (ceros) en los extremos, representa una corrida de longitud i. El número total esperado de corridas y
el número esperado para cada tamaño de corrida, se obtienen de las siguientes expresiones:

n+1
E (total de corridas) =
2

n-i+3
Fe: (frecuencia esperada para la i-ésima longitud) =
2i+1

Estas frecuencias esperadas son comparadas con las observadas, a través de una prueba de chi-cuadrado.

Tabla para la prueba de K.S.


39 Modelos y Simulación

Tamaño de la d
muestra

a=10% a=5% a=1%


1 0,950 0,975 0,995

2 0,776 0,842 0,929

3 0,642 0,708 0,829

4 0,564 0,624 0,734

5 0,510 0,563 0,669

6 0,470 0,521 0,618

7 0,438 0,486 0,577

8 0,411 0,457 0,543

9 0,388 0,432 0,514

10 0,368 0,409 0,486

11 0,352 0,391 0,468

12 0,338 0,375 0,450

13 0,352 0,361 0,433

14 0,314 0,349 0,418

15 0,304 0,338 0,404

16 0,295 0,328 0,392

17 0,286 0,318 0,381

18 0,278 0,309 0,371

19 0,272 0,301 0,363

20 0,264 0,294 0,352

25 0,240 0,264 0,317

30 0,220 0,242 0,290

35 0,210 0,230 0,270

40 0,210 0,252

50 0,188 0,226

60 0,172 0,207

70 0,160 0,192

80 0,150 0,180
40 Modelos y Simulación

90 0,141

100 0,134

Fórmula aproximada 1.22 1.36 1.63


para n>100
n n n

BIBLIOGRAFIA CONSULTADA

Naylor, Balintfy, Burdick, Donal y Chu : Técnicas de Simulación en Computadoras -Ed. John Wiley

Gordon, G. : Simulación de Sistemas. Editorial Diana

Fishman, G. : Conceptos y métodos en la simulación digital de eventos discretos. Editorial Limusa.

Bu, C. : Simulación, un enfoque práctico - Editorial El Ateneo.

Bratley y otros.: A guide to Simulation. Editorial Addison Wesley

Hillier/Lieberman. : Introducción a la Investigación de Operaciones. - Editorial Mc Graw Hill.

Shamblin, J y Stevens, G.T. : Investigacion de Operaciones - Editorial Mc Graw Hill

Gottfried, B. : Elements of stochastic process simulation - Editorial Prentice Hall.

Watson, H. y Blackstone, J.: Computer Simulation - Editorial Wiley.


41 Modelos y Simulación

CAPITULO 4

MÉTODOS PARA LA GENERACIÓN DE VARIABLES ALEATORIAS

UTILIZADAS EN SIMULACIÓN

El objetivo de este capítulo es: proveer al alumno de ciertos métodos generales para generar valores
de las variables aleatorias, tomando como base cualquier distribución empírica que se configure al
intentar la solución de problemas estocásticos. Esto se verá complementado en el siguiente capítulo,
donde los objetivos serán: mostrar un conjunto de técnicas específicas (en algunos casos las mismas
que aquí se expondrán) para generar valores de variables aleatorias a partir de distribuciones teóricas
conocidas (o también llamadas "con nombre propio").

4.1. MÉTODOS PARA LA GENERACIÓN DE VALORES DE LAS VARIABLES ALEATORIAS UTILIZADAS EN


SIMULACIÓN

La generación de estadísticas simuladas, o sea de valores de las variables aleatorias, tiene una
naturaleza totalmente numérica y debe configurarse mediante la aportación de números pseudo-
aleatorios, los cuales han sido generados por algunos de los métodos mencionados en el capítulo
anterior.

Estos números se introducen a sistema bajo estudio (donde dicho sistema se representa por un
modelo probabilístico) a fin de obtener ciertas cifras (o valores de las variables aleatorias), de las
cuales se espera obtener una respuesta. Como regla general, el proceso de simulación estocástica
comprende una actividad de reemplazo del universo estadístico de elementos que se emplean en el
sistema, por su contraparte teórica, un universo descrito por alguna distribución probabilística
supuesta (por ejemplo, una distribución normal), seguida de un muestro efectuado sobre esta
población teórica, con la ayuda de algún tipo de generador de números pseudo aleatorios.

De esta forma, una vez generada una sucesión de números pseudo aleatorios (nuestras variables de
tipo u) uniformemente distribuidos en el [0,1), necesitamos para simular la realidad, que esas
variables tengas sus "propias" propiedades estadísticas. Es decir al modelo de la realidad le generamos
a su vez estadísticas simuladas, mediante la asignación de valores a las variables aleatorias.

Resulta aconsejable el empleo, en primer lugar, de las distribuciones teóricas de probabilidad (que se
verán en el próximo capítulo) y si ninguna de ellas describe adecuadamente el comportamiento del
sistema, entonces deberemos necesariamente, recurrir a distribuciones empíricas.
42 Modelos y Simulación

4.2. COMO LLEVAR LA ALEATORIEDAD UNIFORMEMENTE DISTRIBUIDA DESDE EL INTERVALO [0,


1), A CUALQUIER INTERVALO [a, b]

En el capítulo anterior, aprendimos a generar las variables que denominamos de tipo u, es decir
uniformemente distribuidas entre 0 y 1. Pero los hechos de la vida real, generalmente no se presentan
uniformemente distribuidos, y tampoco con valores excluyentemente en el intervalo [0,1]. Esto
significa que tenemos dos problemas para encarar:

a) expandir la aleatoriedad desde el intervalo [0, 1) a algún intervalo dado [a, b]

b) hacer que los valores aleatorios generados respondan a alguna distribución de


probabilidad, no necesariamente la distribución uniforme.

Consideremos entonces la situación de querer simular la tirada de un dado honesto. En otras palabras
se desea llevar la uniformidad desde el intervalo [0, 1) al intervalo [1, 6], pero tomando únicamente
los valores discretos de éste último intervalo, es decir: 1, 2, 3, 4, 5 y 6.

Trabajando de un modo intuitivo, podríamos considerar que dado el intervalo [0,1], dividimos al
mismo en seis partes iguales:

0 0.16 0.33 0.5 0,66 0,83 1

Figura 4.1 - División del intervalo en 6 partes iguales

(Evidentemente se requiere trabajar con una mayor precisión en la cantidad de dígitos decimales,
pero obviemos este paso, a fin de facilitar la comprensión del ejemplo.)

Supondremos que si al generar una variable de tipo u, resulta un valor tal que 0 <= u <= 0,16 entonces
diremos "salió el 1", en la tirada del dado. Si en cambio aparece un valor de u, tal que 0,17<= u <=
0,33 entonces el resultado de arrojar el dado será "salió el 2", y así sucesivamente. Quedará así
determinada una función que se puede representar como indica la figura 4.1. Consideramos la
función que determina la recta que toma los extremos de cada "escalón".

Esta es: f(x) = a + (b - a)u.


43 Modelos y Simulación

Pero como la función es "escalonada", ya que la variable aleatoria que pretendemos generar es
discreta, redefinimos f(x) tal que resulta:

f(x) = INT[ a + (b - a) u ] (4.1)

Supongamos ahora que generamos una variable de tipo u, por ejemplo:

u1 = 0,02

x1 = INT[ 1 + 5 * 0,02 ]

x1 = INT[1,1]

x1 = 1

Esto nos lleva a la respuesta: SALIÓ EL 1 AL TIRAR EL DADO

Si el siguiente número generado resulta:

u2 = 0,74

x2 = INT[ 1 + 5 * 0,74 ]
44 Modelos y Simulación

x2 = INT[ 4,7 ]

x2 = 4 ?

lo que no es cierto, pues si observamos la gráfica comprobamos que 0,74 se encuentra dentro del
intervalo (4/6, 5/6) y los números comprendidos dentro del mismo "rebotan" en el escalón del "5".

Debemos entonces redefinir la función f(x), a fin de que sean tomados todos los valores del conjunto
[1, 6]:

f(x) = INT[ a + (b - a + 1) u ] (4.2)

la que particularizada para este ejemplo resulta:

f(x) = INT[ a + 6 * u ] y comprobamos que:

u1 = 0,02 u2 = 0,74

x1 = INT[ 1 + 6 * 0,02 ] x2 = INT[ 1 + 6 * 0,74 ]

x1 = INT [ 1,12 ] x2 = INT[ 5,44 ]

x1 = 1 x2 = 5

siendo las dos respuestas correctas. Podemos decir que en la primera tirada "SALIÓ EL 1" y en la
segunda tirada el resultado fue:"SALIÓ EL 2".

4.3. MÉTODO DE LA TRANSFORMACIÓN INVERSA (MTI)

Dejemos ahora el tratamiento de este problema desde un punto de vista meramente práctico e
intuitivo y busquemos su real fundamento teórico.
45 Modelos y Simulación

4.3.1 - MÉTODO DE LA TRANSFORMACIÓN INVERSA PARA VARIABLES DISCRETAS

El enunciado formal del ejercicio del dado, expuesto en los puntos anteriores, nos sería presentado
como: "generar variables aleatorias discretas equiprobables, que se correspondan con los números
enteros del intervalo [1,6]. Esto nos llevaría a la siguiente tabla de probabilidades:

xi f(xi) F(xi)

1 1/6 1/6
2 1/6 2/6
3 1/6 3/6
4 1/6 4/6
5 1/6 5/6
6 1/6 1

Como se comprueba, en la columna de la derecha, se ha calcula la FUNCIÓN DE DISTRIBUCIÓN


ACUMULADA, F(x), una de cuyas propiedades, como ya hemos estudiados es: 0<= F(x) <= 1, es decir
similar a las variables de tipo u, 0<= u <= 1. En definitiva entonces, lo que hemos hecho en nuestro
estudio intuitivo es u = F(x), que es el fundamento básico del método. La gráfica de F(x) es la que se
muestra a continuación:
46 Modelos y Simulación

Si observamos la gráfica de la Fig.4.4, comprobamos que es exactamente como haber "dado vuelta"
la gráfica de la Fig. 4.3. De ahí el nombre de este “Método Transformación Inversa", cuya metodología
podemos resumirla entonces como:

si F(x) = u ==== = F-1 (u) = x (4.3)

si F permite calcular su inversa.

Algorítmicamente la resolución de estos problemas no resulta difícil, ya que en definitiva se construye


la tabla con los valores de la FDA, a partir de las probabilidades dadas, y se iguala F(x) = u. Cabe
preguntarse qué ocurre si la variable aleatoria no es equiprobable. Para nuestro ejemplo, resultaría
considerar que el dado es "deshonesto"; y las probabilidades son las de la siguiente tabla y la función
correspondiente se muestra en la figura 4.5:

xi f(xi) F(xi)

1 0,25 0,25
2 0,10 0,35
3 0,15 0,50
4 0,20 0,70
5 0,25 0,95
6 0,05 1

En definitiva, la conclusión es que se trabaja del mismo modo, construyendo la FDA, y en base a ella
se asignan los valores proporcionales a cada valor de la variable aleatoria X ( x = 1, 2, 3, 4, 5 y 6). Esto
nos permite utilizar la misma metodología expuesta para el dado honesto, es decir que:

Si F(x) = u ===== F-1 (u) = x

si F permite calcular su inversa.


47 Modelos y Simulación

Luego de toda la formulación empírica que anteriormente presentamos podemos resumir la forma
de generar variables aleatorias discretas, utilizando el Método de la Transformación Inversa.

El primer paso es establecer la función de distribución acumulativa (FDA).

El segundo paso es formar la tabla correspondiente (ver fig.4.4) a fin de establecer los NÚMEROS
ÍNDICES. Los números índices se asignan de manera tal que puedan reflejar la probabilidad de los
diversos valores que asume la variable aleatoria.

El tercer paso es obtener las variables de tipo u y realizar la simulación.

Aquí son necesarios algunos comentarios e información adicionales. En primer lugar se recuerda que
trabajamos sobre ejemplos muy sencillos y rudimentarios de la simulación de Monte Carlo. Una
pregunta que ordinariamente se presenta es qué significa establecer los NÚMEROS ÍNDICE. Estos
números deben reflejar la probabilidad de los diferentes valores de la variable aleatoria y la secuencia
de los mismos debe ser cerrada. Por ejemplo 0-9, 00-99, 000-999, etc. El número de dígitos
empleados en los números índices debe ser igual a la cantidad de dígitos decimales empleados en las
probabilidades de los diferentes valores de la variable.
48 Modelos y Simulación

F-1 (u) = x

u
0 0.25 0.35 0.5 0,70 0,95 1
Figura 4.4 - Función Inversa para la tirada del dado no
honesto -

Ejemplo:

La siguiente tabla muestra la distribución de probabilidad de la demanda diaria de un producto. Se


desea simular la demanda para 10 días. Se utilizarán los siguientes números aleatorios obtenidos de
una tabla: 14 - 74 - 24 - 87 - 07 - 45 - 26 - 66 - 26 - 94

Demanda/día p(x)
0 0,05
(x)
1 0,10
2 0,15
3 0,30
4 0,25
5 0,15

De acuerdo a lo expuesto en el punto anterior procedemos a formar la tabla de la FDA y la asignación


de los números índices:
49 Modelos y Simulación

NÚMEROS
Demanda/día p(x) F(x) ÍNDICES

0 0.05 0.05 00 - 04

1 0.10 0.15 05 - 14

2 0.15 0.30 15 - 29

3 0.30 0.60 30 - 59

4 0.25 0.85 60 - 84

5 0.15 1.0 85 - 99

Figura 4.5 - Tabla preparatoria para la simulación de una demanda.

La tabla que muestra un patrón de demanda simulada para 10 días, utilizando los números aleatorios
que se nos dio en el enunciado del problema es la siguiente:

Día Demanda simulada

1 1
2 4
3 2
4 5
5 1
6 3
7 2
8 4
9 2
10 5

Figura 4.6 - Resultado de la simulación para 10 días de demanda.


50 Modelos y Simulación

4.3.2 - MÉTODO DE LA TRANSFORMACIÓN INVERSA PARA VARIABLE CONTINUA

En los ejemplos anteriores todas las variables fueron descriptas mediante distribuciones empíricas
discretas. Esta clase de distribución no es requisito para la simulación de Monte Carlo. Cualquier
variable puede representarse por medio de una distribución empírica o teórica, siempre y cuando la
distribución describa adecuadamente la variable.

Trataremos ahora el caso en que la variable aleatoria X, es continua, es decir F(X) es continua en el
dominio de X. En esencia la situación es la misma que la ya vista cuando X es discreta y F(X) resulta
escalonada. Se debe construir F(x) = P(X <= x), donde X es la variable aleatoria que interviene).

F(x) = u

uo

x
xo

Figura 4.7 - Una función de distribución acumulada


(FDA)

Recordamos que habíamos definido:


𝑥
F(x) = ∫−∞ 𝑓(𝑡)𝑑𝑡

para el caso de X variable continua, y donde 0 <= F(x) <= 1, y f(t) representa el valor de la función de
densidad de probabilidad de la variable aleatoria X, cuando X = t.

Puesto que F(x) se define en el rango de 0 a 1, podemos generar números aleatorios u, uniformemente
distribuidos y hacer F(x) = u. Sigue por lo tanto que, para cualquier valor particular de u que
generemos, por ejemplo uo, siempre es posible encontrar el valor de x, en este caso xo, utilizando la
función inversa de F, si es conocida, Esto es:
51 Modelos y Simulación

xo = F-1 (uo)

donde f-1(x) es la transformación inversa (o mapeo) de u sobre el intervalo unitario en el dominio de


x. Si generamos números aleatorios correspondientes a una F(x) dada, podemos resumir
matemáticamente este método como sigue:
𝑥
u = F(X) = ∫−∞ 𝑓(𝑡)𝑑𝑡 (4.4)

entonces:

P(X < = x) = F(x) = P(u < = F(x)) = P(F-1(u) < = x) y

consecuentemente F-1(u) es una variable aleatoria que tiene a f(x) como fdp.

EJEMPLO DE LA APLICACIÓN DEL MÉTODO DE LA TRANSFORMACIÓN INVERSA PARA VARIABLE


CONTINUA.

Caso 1: (se indica expresamente la f.d.p.)

Generar los valores de la variable aleatoria X, que tiene una función de densidad de probabilidad dada
por:

f(x) = 2x cuando 0 < = x < = 1.

Luego genere tres muestras utilizando u1 = 0.843, u2 = 0.458 y u3 = 0.956


𝑥
Solución: por el M.T.I. tenemos que u = F(x) = ∫0 𝑓(𝑡)𝑑𝑡

𝑥
entonces u = ∫0 2𝑡 𝑑𝑡 = x2 con 0 < = x < = 1

Si u = x2 entonces F-1 (u) = √𝑥 entonces x = √𝑢

Muestras: u1 = 0.843 entonces x1 = √0.843 x1 = 0.918

u2 = 0.458 entonces x2 = √0.458 x2 = 0.676

u3 = 0.956 entonces x3 = √0.956 x3 = 0.977


52 Modelos y Simulación

Caso 2: (no se indica la f.d.p., se da la gráfica de la función).

La siguiente gráfica define una función de densidad de probabilidad. Simular cuatro muestras
utilizando los siguientes números aleatorios: 0.23 - 0.57 - 0.85 y 0.08.

Para aplicar el Método de la Transformación Inversa es


necesario calcular la FDA, la función de distribución acumulada,
que se obtiene mediante la integral de la f(x).
h

Como se desconoce la ecuación de f(x) primero hay que obtener


S
la misma. Para ello, de acuerdo a la gráfica, sabemos en
10 12 principio, que f(x) es la recta que pasa por los puntos (10, 0) y
(12, h). Es necesario entonces como primer paso encontrar el
valor de h y luego la ecuación de la recta.

SOLUCIÓN:

Paso 1: encontrar el valor de h.

Sabemos que, si f(x) es una función de densidad de probabilidad, el área bajo la misma (que se
muestra en rayado), que hemos llamado S, resulta ser S = 1. Dado que la figura que conforma S, en
este caso, es un triángulo, tenemos que:
𝑏∗ℎ 2ℎ
S = 1 y S = 2
entonces 2
=1

de donde resulta que h = 1

Conclusión de este paso: f(x) es la recta que pasa por (10, 0) y (12, 1)

Paso 2: determinar la ecuación de f(x)

La ecuación para esta recta la obtenemos mediante:


y2 - y1 1 - 0 ( x - 10 )
y - y1 = x2 - x1 (x - x1 ) entonces y - 0 =
12 - 10
53 Modelos y Simulación

1 x
y = ( x - 10 ) entonces f (x) = - 5 con 10 < = x < = 12
2 2

x
Conclusión de este paso: la función de densidad de probabilidad está dada por: f (x) = - 5
2

Paso 3: calcular la F(x), la función de distribución acumulada

x2
F(x)= ( x
- 5 ) dx entonces F ( x ) = - 5x + C con 10 < = x < = 12
2 4

Conclusión de este paso: la función de distribución acumulada está dada por:


x2
F(x) = - 5x + C
con lo cual tenemos una nueva incógnita que es el valor de C.
4

Paso 4: determinar el valor de la constante C.

Para determinar el valor de la constante C utilizamos una de las propiedades de la función de


distribución acumulada (ecuación 4.5). Si X es una variable aleatoria tal que a < = X < = b, entonces
F(a) = 0 y F(b) = 1. Para nuestro ejemplo F(10) = 0 y F(12) = 1.
102
- 5 * 10 + C = 0 por lo cual C = 25
4

Si F(10 ) = 0 entonces

en el otro extremo debe dar el mismo valor, caso contrario existe algún error en los cálculos previos.

122
- 5 * 12 + C = 1 por lo cual C = 25
4

Si F(12 ) = 1 entonces
54 Modelos y Simulación

x2
Conclusión de este paso: la función de distribución acumulada está dada por: F ( x ) = - 5x + 25
4

Paso 5: Determinar la inversa de F, es decir F-1 (u) = x

Partimos de la base teórica de este método, por lo que si F (x) = u, entonces F (x) - u = 0

Particularizando para nuestro ejemplo: x2


- 5x + ( 25 - u ) = 0
4

Bajo estas condiciones resolvemos esta ecuación cuadrática con: a = 1/4, b = -5 y c = ( 25 - u )

5  25  [4(1 / 4)(25  u )]
x x  10  2 u para 0 <= u < = 1
2(1 / 4)

Paso 6: Determinar el signo de la ecuación. Nuestro razonamiento para este caso es el siguiente:

F(x) = u La figura de la izquierda representa la función de


1
distribución acumulada, la F (x).

En la misma podemos observar que


0
10 12
Si u = 0 entonces x debe ser igual a 10

Si u = 1 entonces x debe ser igual a 12


Hacemos la comprobación correspondiente y vemos que:

x = 10 + 2 √0 = 10 esto no nos permite comprobar, por lo que


probamos en el otro extremo
Si u = 0 entonces x =

x = 10 - 2 √0 = 10
55 Modelos y Simulación

x = 10 + 2 √1 = 12

Si u = 1 entonces x = que es el resultado correcto

x = 10 - 2 √1 = 8
no corresponde

Conclusión de este paso: la fórmula para obtener variables aleatorias con la distribución de
probabilidad dada en el enunciado es:

X = 10 + 2 √𝑢 con 0 < = u < = 1

GENERACIÓN DE MUESTRAS

Muestra 1: u1 = 0.23 x1 = 10 + 2 √0.23


x1 = 10.95

Muestra 2: u2 = 0.57 x2 = 10 + 2 √0.57


x2 = 11.50

Muestra 3: u3 = 0.85 x3 = 10 + 2 √0.85


x3 = 11.84

Muestra 4: u4 = 0.08 x4 = 10 + 2 √0.08


x4 = 10.56

4.4. MÉTODO DEL RECHAZO O DE LA ELIMINACIÓN

Desafortunadamente para muchas distribuciones de probabilidad, resulta imposible o


extremadamente difícil expresar a la variable aleatoria X, en términos de la transformación inversa F-
1(x), por ello es posible acudir a este otro método que requiere dos condiciones para su aplicación:

- f(x) es una función acotada, esto es tiene máximo

- x tiene rango finito, es decir existen a y b tal que a < = x < = b


56 Modelos y Simulación

Antes de enunciar el método para la generación de variables aleatorias, es importante hacer dos
definiciones:

i) M = máx { f(x) / a <= x <= b }

ii) PRA = Probabilidad Relativa de Aceptación

Probabilidad del x propuesto

PRA = f(x) / M ó (4.5)

Probabilidad máxima

M f(x)

a b
Figura 4.8 - Una función de densidad de probabilidad

El método consiste en generar primeramente un valor para la variable aleatoria x que denominamos
el "x propuesto", y luego probar que ése valor proviene de la distribución de probabilidad que se está
analizando. La aplicación del método requiere los siguientes pasos:

1. Generar dos números aleatorios uniformemente distribuidos en el intervalo (0, 1), llamados u1 y
u2.

2. Definir x como función lineal de u1, esto es:

x = a + (b - a) u1 este es el "x postulado".

3. Evaluar la función f en x, es decir hacer:


57 Modelos y Simulación

f(x) = f(a + (b - a) u1)

4. Si u2 < = PRA entonces se acepta el x postulado en el paso 2; caso contrario, se vuelve al paso 1.

La teoría sobre la que se apoya este método se basa en el hecho que la probabilidad de que u2 = fx/M,
es exactamente f(x)/M. Por consiguiente, si un número es elegido al azar de acuerdo a x = a + (b - a)
u1 y rechazado si u2 > f(x)/M, entonces la distribución de probabilidad de las x aceptadas será
exactamente f(x). Conviene señalar que si todas las x fueran aceptadas, entonces x estaría
uniformemente distribuida entre a y b.

-EJEMPLO DEL MÉTODO DEL RECHAZO PARA VARIABLE DISCRETA

Un equipo de fútbol juega alternativamente un partido como local y otro como visitante. Como local
convierte goles a favor y le hacen goles en contra, según la distribución de probabilidad que se
muestra en la tabla. Cuando el equipo juega de visitante la tabla de probabilidades se invierte. Genere
5 partidos de este equipo, iniciando como local, y con los siguientes números aleatorios:0,71; 0,97;
0,87; 0,61; 0,52; 0,93; 0,48; 0,40; 0,05; 0,46 y 0,01; 0,6; 0,21; 0,22; 0,97; 0,48; 0,81; 0,93; 0,34; 0,76,
según la tabla que corresponda utilizar.

Goles a favor Goles en Goles en contra Goles a favor


LOCAL contra LOCAL
VISITANTE
VISITANTE

x p(x) x p(x)

0 0.1 0 0.2

1 0.2 1 0.3

2 0.3 2 0.4

3 0.2 3 0.1

4 0.15

5 0.05
58 Modelos y Simulación

-EJEMPLO DEL MÉTODO DEL RECHAZO PARA VARIABLE CONTINUA

f(x)

10 12

SOLUCIÓN

1. Determinar el valor de h.

Por un ejercicio anterior, sabemos que h = 1

2. Determinar f(x), la recta que pasa por (10,0) y (12,1)

f(x) = x / 2 - 5

3. Verificar si es aplicable el Método del Rechazo:

i) f(x) tiene máximo, es decir M = 1

ii) existen a y b, tal que a<= x <= b, ya que a = 10 y b = 12

4. Definir en forma genérica x como combinación lineal de u1

x = 10 + 2 u1

5. Generación de muestras, utilizando 0.35, 0.86, 0.70, 0.70, 0.43, 0.07, 0.99 y 0.74

Bibliografía consultada:

- Gordon, G: Simulaciión de sistemas – Ed. Diana 1981


- Naylos, T., Balinfty, Burdick y Chu, K: técnicas de simulacón por computadoras – [Link] – 1970
- Naylor, Thomas: Experimentos de simulación en computadoras con modelos de sistemas
eonómicos – Ed. Limusa – 1977
- Ross, Sheldon: Simulación, 2da Edición – Prentice Hall – 1999
- Watson, H, Blackstone, J.H.: Computer Simulation (Second Edición) - 1996
59 Modelos y Simulación

CAPITULO 5

GENERACIÓN DE VARIABLES ALEATORIAS A PARTIR DE

DISTRIBUCIONES TEÓRICAS DE PROBABILIDAD

5.1. DISTRIBUCIONES CONTINUAS DE PROBABILIDAD

Como ya se expresara en el capítulo anterior, resulta aconsejable el empleo, en primer lugar, de las
distribuciones teóricas de probabilidad, ya que en ellas todo está demostrado: su media, su varianza,
etc., y, si ninguna de ellas describe adecuadamente el comportamiento del sistema, entonces
deberemos necesariamente, recurrir a distribuciones empíricas. A modo de ejemplo se describen a
continuación, la generación de variables aleatorias para cinco distribuciones de probabilidad, tres
continuas y dos discretas.

5.1.1 - DISTRIBUCIÓN UNIFORME

Es una distribución de probabilidad muy simple, que se caracteriza por ser constante, en el intervalo
(a, b) y cero fuera de él. Esta función de densidad de probabilidad define la distribución conocida
como uniforme o rectangular. La distribución uniforme surge cuando se estudian las características
de errores por redondeo al registrar un conjunto de medidas sujetas a cierto nivel de precisión. Por
ejemplo, si se registran medidas de peso con una aproximación determinada en gramos, puede
suponerse que la diferencia en gramos entre el peso real y el peso registrado corresponde a un cierto
número entre -0.5 y +0.5, y que el error está distribuido uniformemente en este intervalo. El valor
más sobresaliente que puede tener la distribución uniforme respecto a las técnicas de simulación
radica en su simplicidad.

Matemáticamente, la función de densidad de probabilidad uniforme se define como sigue:


1 si a < x < b
b-a
f(x) = 0 fuera del (a,b)
60 Modelos y Simulación

En esta expresión, X es una variable aleatoria definida en el intervalo (a, b). La gráfica de la distribución
uniforme se ilustra en la siguiente figura:

f(x)

1
b-a
x
a b

La función de distribución acumulada F(x), para una variable aleatoria X uniformemente distribuida,
se puede representar por:

xa
x
1
F ( x)   dt = 0 < = F(x) < = 1
a
ba ba

dada la sencillez de la aplicación, es posible utilizar el Método de la Transformación Inversa, para la


generación de la variable aleatoria con distribución uniforme. Entonces, si

x-a
F(x) = u, luego u = de donde resulta (5.1)
b-a

x = a+(b-a)*u con 0 < = u < = 1

En consecuencia para simular una distribución uniforme sobre cierto intervalo conocido (a, b)
debemos, en primer lugar, obtener la transformación inversa de la ecuación dada por (5.1) .

Luego generamos un conjunto de valores de variables de tipo u, uniformemente distribuidas sobre el


rango 0 a 1. Cada número aleatorio u determina, de manera única, un valor de la variable aleatoria x,
uniformemente distribuida, en el intervalo (a,b).
61 Modelos y Simulación

Para aclarar estas afirmaciones es mejor presentar una explicación gráfica. La siguiente figura ilustra
cómo cada valor generado de u está asociado con uno y solo un valor de x. Por ejemplo, el valor
específico de la función de distribución acumulada en uo determina el valor de x en xo.

Obviamente, este procedimiento se puede repetir tantas veces como se desee y en cada repetición
se generará un nuevo valor de x.

F(x)

u0
x
0
a x0 b

El siguiente procedimiento, en un sencillo pseudo-código, genera valores aleatorios uniformemente


distribuidos:

[Link] (a, b, x)

Call GU(u) //GU es un procedimiento que genera variables tipo u//

x = a + (b - a) * u

endprocedure

5.1.2 - DISTRIBUCIÓN EXPONENCIAL

La variable aleatoria con distribución exponencial indica en forma general "CUANTO CONTINUO
HASTA EL PRIMER ÉXITO". Por ejemplificar esta aseveración, supongamos que hacemos un control
de los automóviles que pasan por una avenida, y establecemos como éxito: "que pase un auto rojo".
La variable aleatoria exponencial indicará cuanto tiempo transcurre (continuo), desde el inicio del
experimento hasta que aparezca el primer auto rojo en nuestro punto de observación.
62 Modelos y Simulación

Durante nuestra experiencia diaria, observamos como transcurren los intervalos de tiempo definidos
entre las ocurrencias de los eventos aleatorios distintos, y sobre la base de un plan de tiempos
completamente independientes, recibimos información sobre numerosos eventos que ocurren a
nuestro alrededor. Bastaría con citar los nacimientos, defunciones, accidentes, arribo de aviones, etc.
Si es muy pequeña la probabilidad de que ocurra un evento en un intervalo corto, y si la ocurrencia
de tal evento es, estadísticamente independiente respecto a la ocurrencia de otros eventos, entonces
el intervalo de tiempo entre ocurrencias de eventos de este tipo estará distribuido en forma
exponencial.

Específicamente, para los valores de variables aleatorias de tipo exponencial se deben satisfacer las
siguientes suposiciones:

1. La probabilidad de que ocurra un evento en el intervalo [t, (t +  t)] es t.

2.  es una constante que no depende de t ni de algún otro factor.

3. La probabilidad de que durante un intervalo [t, (t +  t)] ocurra más un evento, tiende a 0 a
medida que t tiende a 0.

Curiosamente se ha encontrado que el comportamiento de un considerable número de procesos


dependientes del tiempo satisfacen las anteriores suposiciones un tanto fuertes. Por ejemplo, el
intervalo entre los accidentes de una fábrica, la llegada de pedidos a una compañía, el registro de
pacientes en un hospital, el aterrizaje de aviones en un aeropuerto, la vida de los componentes
electrónicos, se supone que satisfacen una distribución exponencial. Tal suposición tiene la
importante implicancia de que la variable aleatoria exponencial no "envejece" con el tiempo. Esto
es, la probabilidad de que un transistor sobreviva 800 hs. habiendo ya sobrevivido 700 horas (o sea,
que dure 100 horas más), es igual a la probabilidad de que un transistor nuevo dure 100 horas. Dicho
en otras palabras, un transistor totalmente nuevo no es "mejor", que uno que ya ha trabajado 700
horas.

Esta implicancia exponencial es sumamente importante, aunque a veces no se la tenga en cuenta en


la práctica. Se debe suponer que componentes electrónicos cuyas características mensurables tienen
distribuciones exponenciales no deben reemplazarse antes que fallen, siempre que se reemplacen
por componentes que tienen distribuciones exponenciales idénticas.
63 Modelos y Simulación

Se dice que una variable aleatoria X tiene una distribución exponencial, si se puede definir su función
de densidad de probabilidad (fdp) como:

f(x) =  e - x (5.2)

con  > 0 y x > = 0.

La distribución exponencial es una función de un único parámetro , donde  es cualquier constante


positiva. Concretamente  es el mismo parámetro de la distribución de Poisson que veremos más
adelante, y lo podemos definir como "cantidad de eventos por continuo". Por ejemplo si
consideramos la llegadas de clientes podemos decir que  = 5 clientes por hora.-

El valor esperado para la variable aleatoria exponencial resulta ser:

E(X) = 1 / 

En consecuencia, volviendo sobre el último ejemplo, si la cantidad de clientes que llegan en una hora
es de alrededor de 5 por hora, el tiempo medio entre llegadas, o el intervalo entre llegadas, será: 1/5
= 0,2 (de hora) o lo que es lo mismo 0,2 * 60 (minutos) = 12 minutos. Concretamente, si se esperan
en promedio 5 clientes por hora, el intervalo medio entre clientes será de 12 minutos.

Existen muchas formas de lograr variables aleatorias exponenciales, pero puesto que F(x) existe
explícitamente, la técnica de la transformación inversa nos permite desarrollar una fórmula sencilla y
directa.

La función de distribución acumulada está dada por:

 e
 x
F ( x)  dt  1  e x (5.3)
0
64 Modelos y Simulación

Utilizando el método de la transformación inversa resulta que F(x) = u, por lo que, de acuerdo a (5.3):

u = 1 - e -x

e -x = 1-u

ln (e -x) = ln (1 - u)

ln (e -x) = ln (u) (*)

- x = ln (u)

x = -  1 /   ln (u) (5.4)

o lo que es lo mismo:

x = - EX ln (u)

(*) se reemplaza 1-u por u, debido a la simetría que existe en las variables distribuidas uniformemente.

Se da a continuación el procedimiento para la distribución exponencial:

[Link] (ex, x)

Call GU(u)

x = -ex * log(u)
65 Modelos y Simulación

endprocedure

5.1.3 - DISTRIBUCIÓN NORMAL

La distribución normal es, sin duda alguna, la más conocida y más ampliamente utilizada distribución
de probabilidad, y su popularidad se debe cuando menos a dos razones que presentan sus
propiedades generales. Las pruebas matemáticas nos señalan que, bajo ciertas condiciones de
calidad, resulta justificado que esperemos una distribución normal mientras que la experiencia
estadística muestre que, de hecho, muy a menudo las distribuciones se aproximan a la normal.

La variable aleatoria X, que toma todos los valores reales -  < x < +  tiene una distribución normal
(o Gaussiana) si su función de densidad de probabilidad es de la forma:

1  x 
2

1   
 
f ( x)  e 2 (5.5)
2

Los parámetros µ y  deben satisfacer las condiciones: -∞ < µ < ∞ y  > 0. Simplificando la notación,
cuando la variable aleatoria X tiene la distribución de la ecuación (5.5), se la escribe como N ( µ,  2).

f(x)

x
- µ +

Ante la necesidad de generar variables aleatorias con distribución normal, nos encontramos que, no
es posible aplicar ninguno de los dos métodos generales que hemos visto con anterioridad: el método
del rechazo y el método de la transformación inversa.
66 Modelos y Simulación

-Método del Rechazo: el solo observar la figura anterior, donde se gráfica la fdp normal, muestra en
forma evidente que no existen a y b, tal que a < = x < = b. En consecuencia no cumple una de las
dos condiciones necesaria para la aplicación del rechazo.

-Método de la Transformación Inversa: en este caso es necesario que sea posible calcular F(x), es
decir la FDA. Supongamos que X tiene distribución N(0, 1), luego:

a x2
1 
P ( a  X  b) 
2 e
b
2
dx

Esta integral no puede evaluarse por métodos ordinarios. La dificultad proviene del hecho que no
podemos encontrar una función cuya derivada sea igual a:

x2

2
e
En consecuencia, mediante "trucos", ha sido posible tabular la función F(x).

Dado lo expuesto, se requiere la concurrencia de algún método alternativo, para la generación de


variables aleatorias con distribución normal. Afortunadamente, como se dijo al principio, esta
distribución tiene importantes propiedades, que la hacen de suma utilidad y aplicación.

La Distribución Normal basa su utilidad en el Teorema del Límite Central. Este teorema postula, que
la distribución de probabilidad de la suma de N valores de variable aleatoria xi independientes pero
idénticamente distribuidos, se aproxima asintóticamente a una distribución normal, a medida que N
se hace grande.

No podemos demostrar este teorema aquí, porque excede el marco de nuestra asignatura. Sin embargo, hay
un caso especialmente importante de este teorema que es necesario mencionar, como fundamento teórico
para nuestro trabajo, y que es un Teorema Complementario del Teorema del Limite Central. A continuación
y para justificar el método para la generación de variables aleatorias con distribución Normal, vamos a realizar
una equiparación entre los dos teoremas antes mencionados y el método aquí propuesto.
67 Modelos y Simulación

Teorema del límite central. Teorema Complementario Método para generar variables
con distribución normal utilizando
el Teorema Complementario del
TLC

Sea X1, X2, ........, Xn una Sean X1, ....., Xn variables Sean u1, ....., un variables

sucesión de variables aleatorias aleatorias independientes que aleatorias independientes


independientes con: tienen la misma distribución de todas uniformemente
probabilidad. Sean distribuidas, es decir que tienen
la misma distribución de
probabilidad. Sean

E(Xi) = µi y E(ui) = 1/2 y


E(Xi) = µ y
V(Xi) = 2. V(ui) = 1/12 la esperanza y la

V(Xi) = 2 la esperanza y la varianza de la distribución


Sea X = X1 + X2 + ..... + Xn.
varianza común. uniforme de las variables ui.

Luego bajo ciertas condiciones n


generales (que no se indicarán
Sea S =  ui .
explícitamente aquí): n

Sea S =  Xi . i=1

Entonces
i=1

Entonces E(S) = n/2 y

E(S) = nµ y V(S) = n/12 y


n
X   i
Zn  i 1
para un n suficientemente
n

 2
i
V(S) = n2 y
i 1
grande tenemos que:
para un n suficientemente
1
n
grande tenemos que: u i 
2
Z  n

n
S  n
Tn  12
n
68 Modelos y Simulación

tiene aproximadamente la tiene aproximadamente una


distribución N(0, 1). distribución N(0, 1).
tiene aproximadamente una (5.6)
distribución N(0, 1).

Si los parámetros de la distribución normal tiene los valores µ = 0 y  =1 la función recibe el nombre
de distribución normal standard. Cualquier distribución normal puede convertirse a la forma
standard, mediante la tipificación de la variable, con la fórmula:

X - M
Z= (5.7)
D
donde M es la media de la muestra estudiada y D el desvío de la misma.

Pero por definición Z, es un valor de variable aleatoria con distribución normal standard que se puede
escribir en la forma sugerida en la ecuación (5.7), donde X es un valor de variable aleatoria distribuido
en forma normal que se va a simular, con una media M y un desvío D. Igualando las ecuaciones
obtenemos:
n
n
X  M u i 
2
 I 1
D n
12

y resolviendo esta ecuación para X, se obtiene:

 12   n n
X  D*   *   ui    M (5.8)
 n  i 1 2

Por lo tanto, mediante la ecuación (5.8) podemos proporcionar una formulación muy simple para
generar valores de la variable aleatoria normal, cuya media sea M y su desvío D.

Queda solo por considerar que valor de n debe aplicarse, tratando de que se de un balance entre la
precisión y la rapidez computacional. Se ha comprobado que con n = 12 se logran buenos resultados
desde el punto de vista operativo, ya que se simplifica en mucho los cálculos de la ecuación (5.11).

 12 
X  D *   ui  6  M (5.9)
 i 1 
69 Modelos y Simulación

No obstante, este valor no es lo suficientemente grande para tener una buena aceptación
matemática. Con el fin de obtener mayor precisión se deben considerar valores mayores de n (por
ejemplo n = 24)

A continuación se da el procedimiento para la generación de variables aleatorias normalmente


distribuidas, con una media M y un desvío D.

[Link] (m, d, x)

sum = 0

for i = 1 to 12 do

Call GU(u)

sum = sum + u

endfor

x = d * (sum - 6) + m

endprocedure.

5.2 - DISTRIBUCIONES DISCRETAS DE PROBABILIDAD

Se encuentra definido un número muy significativo de distribuciones de probabilidad para variables


aleatorias que solamente toman valores discretos, esto es, enteros no negativos. La distribución
acumulada para una variable aleatoria discreta X, ya hemos visto que se define como:

x
F(x) = P ( X < = x ) =  p(x) (5.10)
X=0

donde p(x) es la función de probabilidad de X, definida por valores enteros x tales que:

p(x) = P ( X = x ) para x = 0, 1, 2, ...... (5.11)


70 Modelos y Simulación

Las distribuciones discretas de probabilidad son muy útiles cuando se las emplea como modelos
estocásticos para ciertos procesos de conteo, ya sea sobre muestras finitas o no finitas, donde la
presencia o ausencia de un atributo dicotómico está gobernada por el azar. Desde un punto de vista
empírico las distribuciones discretas pueden ocurrir también como resultado de redondear medidas
continuas sobre una escala discreta. Sin embargo, estrictamente hablando, las distribuciones
discretas de probabilidad resultan ser los modelos más apropiados para fenómenos aleatorios cuando
los valores de las variables aleatorias se pueden determinar por medio de procesos de conteo.

Entre las primeras y probablemente más simples de las formulaciones matemáticas de procesos
estocásticos, se encuentra la llamada: ensayos de Bernoulli. Una variable aleatoria X, se dice de
Bernoulli, si toma únicamente valores 0 y 1, con probabilidades p y 1-p respectivamente. Esta variable
aleatoria es el reflejo de una multitud de situaciones reales, así por ejemplo, si una máquina produce
piezas defectuosas con probabilidad p y no defectuosas con probabilidad 1-p, y definimos a la variable
aleatoria de modo tal que asigna valor 1 cuando la pieza es defectuosa y 0 cuando la pieza es no
defectuosa, nos encontramos ante una variable aleatoria de Bernoulli o prueba de Bernoulli.

Observamos que, una vez determinado el valor de p, queda perfectamente determinada la variable
aleatoria, y en lo sucesivo se lo denominará el PARÁMETRO de la distribución.

La simulación de esta variable aleatoria es muy sencilla, ya que únicamente habrá que dividir el
intervalo (0,1), en dos partes: una de amplitud p y la otra restante quedará de 1-p. Luego, una vez
simulados los valores de la variable aleatoria de tipo u, se le asigna el valor 1 ó 0 según caigan en la
parte de p ó de 1-p.

Una sucesión de ensayos de Bernoulli, combinada con cierto proceso de conteo, viene a constituir la
base conceptual para una gran familia de distribuciones discretas de probabilidad, incluyendo la
geométrica, binomial, binomial negativa, Poisson, y otras distribuciones binomiales. El valor de la
variable aleatoria se genera al contar el número de fracasos en una sucesión de ensayos (o eventos)
antes de que ocurra un número determinado de éxitos.

5.2.1 - DISTRIBUCIÓN BINOMIAL

Las variables aleatorias definidas por el NUMERO DE EVENTOS EXITOSOS EN UNA SUCESIÓN DE n
ENSAYOS INDEPENDIENTES DE BERNOULLI, para los cuales la probabilidad de éxito es p en cada y
ensayo, y la probabilidad del fracaso es q = 1 - p, sigue una distribución binomial.
71 Modelos y Simulación

Si insistimos con nuestro ejemplo de los "autos rojos que pasan por una avenida", y hacemos el
experimento para los próximos 100 autos que pasen (n = 100), entonces la variable aleatoria binomial,
nos dará un valor X = "nro. de autos rojos que se observaron en el total de los 100 autos que pasaron".
Dicho sencillamente: CANTIDAD DE ÉXITOS EN N ENSAYOS. Por supuesto que consideramos éxito:
"que pase un auto rojo". El modelo aleatorio binomial, también se puede aplicar al proceso de
muestreo aleatorio con reemplazo, cuando los elementos muestreados tienen sólo dos tipos de
atributos (por ejemplo respuestas como si y no ó defectuoso y no defectuoso).

La función de probabilidad de la distribución binomial se puede expresar de la manera siguiente:

 n
p( x)    p x q n  x
 x

donde x se toma como un entero definido en el intervalo finito 0, 1, 2, ....

Los valores de la variable aleatoria discreta binomial, se pueden generar de muy diversos modos. Por
ejemplo, la distribución normal proporciona, cuando n es muy grande, una buena aproximación para
la distribución binomial. Sin embargo, en el caso de que n sea moderado, una de los métodos más
eficientes y de sencillez computacional, es el basado en la reproducción de ensayos de Bernoulli,
siguiendo el método de rechazos.

Este método empieza con valores conocidos de p y de n y consiste en generar n variables aleatorias
de tipo u. Para cada variable ui (1 <= i <= n) se efectúa una prueba y se incrementa la variable x con
el siguiente criterio:

x =x+1 si ui < = p

x no varía si ui > p

Después de haber generado n valores aleatorios u, el valor de x será el valor de la variable aleatoria
binomial. A continuación damos el procedimiento para ello:

[Link] ( n, p, x )

x=0

for i = 1 to n do

Call GU(U)
72 Modelos y Simulación

if u<=p then x = x + 1

endif

endfor

enprocedure.

5.2.2. DISTRIBUCIÓN DE POISSON

Si en la función de distribución de probabilidad de una variable aleatoria binomial X, de parámetros n


y p, se verifica que n es muy grande y p muy pequeño, entonces se puede probar que :

n (n p) x
P( X  x)    p x q n  x  e n p

q x

De forma más precisa, si n oo y np  (lo que da lugar a que p 0 ), tenemos que:

e   x
P (X  x ) 
x

donde  es una constante positiva (llamado el parámetro de la distribución).

Generalmente la distribución de Poisson es más cómoda de evaluar y manipular matemáticamente


que la binomial, Por ello parece lógico preguntarse: bajo qué condiciones prácticas se pueden
reemplazar? La respuesta es: siempre que p sea pequeño (p < 0,1) y n grande (n > 50) se puede utilizar
la distribución de Poisson en lugar de la binomial.

A menudo se utiliza la distribución de Poisson, resultando apropiada en muchas situaciones en las que
ocurre un "evento", en un intervalo, donde es tan probable que ocurra este evento en un intervalo
como en cualquier otro, y asimismo la ocurrencia de un evento no tiene ningún efecto en la ocurrencia
de cualquier otro evento. En otras palabras, decimos que esta distribución es usada en situaciones
probabilísticas, donde el área de oportunidad para la ocurrencia de un evento es grande, pero la
probabilidad de ocurrencia en un intervalo en particular, o en un punto en particular, es muy pequeña.
Algunos ejemplos de lo dicho sería: determinar el nro. de defectos en una longitud determinada de
alambre, los errores de tipeo que comete una dactilógrafa, las fallas de calidad en una plancha de
vidrio, etc. En todos los casos el área de oportunidad para la ocurrencia de un evento es grande, pero
la probabilidad de que se produzca en un lugar determinado, es sumamente pequeña.
73 Modelos y Simulación

En párrafos anteriores se mencionó a la distribución de Poisson como un medio para aproximar a la


distribución binomial. Sin embargo, la distribución de Poisson desempeña un papel muy importante
por derecho propio , puesto que representa un modelo probabilístico apropiado para un gran número
de fenómenos observables. Esta distribución tiene la particularidad que:

E(X) =  y V(X) =

Asimismo la variable aleatoria X de Poisson nos indicará: “la cantidad de eventos que se producen
en un continuo dado". Entonces insistiendo con el ejemplo de los autos rojos que pasan por una
avenida (y siempre bajo la condición :"éxito”: que pase un auto rojo), la variable aleatoria de Poisson
nos indicaría: “cuántos autos rojos pasan en una hora" (considerando en este caso una hora el
continúo en estudio).

EJEMPLO: consideremos un período de tiempo (continuo) que se inicia en 0 y se ha dividido en


intervalos de tiempo de longitud t. Supongamos que los eventos (llegada de un cliente) ocurren a lo
largo del tiempo y lo denotamos con el símbolo (+). Cada sub-intervalo ti entre eventos, suponemos
que obedece a una distribución exponencial cuyo valor esperado es igual a 1/. Con estos
antecedentes se implica que el número de eventos x que ocurren durante un tiempo unitario seguirán
una distribución de Poisson cuyo valor esperado estará dado por . Un método para generar valores
de variable aleatoria con distribución de Poisson deberá considerar la generación de intervalos t1, t2,
t3, ...., distribuidos en forma exponencial con un valor esperado igual a 1/. Una vez generados estos
intervalos aleatorios, se acumulan hasta que su suma exceda el valor de .
74 Modelos y Simulación

Si el número de sucesos que ocurren en un determinado continuo (intervalo de tiempo dado) [0, t]
sigue una distribución de Poisson con parámetros t (si t = 1 entonces el parámetro es ), la variable
aleatoria que representa el tiempo entre dos sucesos (el valor del subintervalo ti ) tiene una
distribución exponencial, esto es:

ti = - 1/ * ln (ui) (5.12)

Entonces, si ocurren x sucesos en el intervalo de tiempo [0, t], la suma de los tiempos transcurridos
entre los x sucesos (la suma de los ti ) debe ser menor, a lo suma igual que t, y el suceso x+1 ocurre
después de t.

En términos matemáticos el valor poissoniano de x se determina haciendo uso de la siguiente


desigualdad:

x x 1

t
i0
i  t  t
i0
i (5.13)

Si t es el intervalo unitario, entonces t = 1, se tiene que la ecuación (5.13) se puede reescribir :

t
i0
i  1

 1 
x
entonces por (5.12)    *ln(u )  1
i0
i

operando matemáticamente

 ln(u )  
i0
i

por propiedad de logaritmo

 x 
ln  ui   
 i0 

y finalmente por definición de logaritmo


75 Modelos y Simulación

u
i0
i  e-

Se da a continuación, el procedimiento para generar variables aleatorias con distribución de Poisson,


de acuerdo al desarrollo anterior.

PROC. POISSON (a,x)

// a es la cantidad de eventos por continuo//

b = exp(-a)

x=0

p=1

While p > b do

Call GU (u)

p=p*u

x=x+1

endwhile

ENDPROC

BIBLIOGRAFÍA CONSULTADA

Naylor, Balintfy, Burdick, Donald y Chu : Técnicas de Simulación en Computadoras - Ed. John Wiley

Gordon, G. : Simulación de Sistemas. - Editorial Diana

Fishman, G. : Conceptos y métodos en la simulación digital de eventos discretos. Editorial Limusa.

Bu, C. : Simulación, un enfoque práctico. - Editorial El Ateneo

Bratley y otros : A guide to Simulation - Editorial Addison Wesley

Hillier/Lieberman : Introducción a la Investigación de Operaciones - Editorial Mc Graw Hill.

Shamblin, J y Stevens, G.T. : Investigacion de Operaciones - Editorial Mc Graw Hill

Gottfried, B. : Elements of stochastic process simulation - Editorial Prentice Hall.


76 Modelos y Simulación

Watson, H. y Blackstone, J.: Computer Simulation - Editorial Wiley.

Bowker, A.H. y Lieberman G.L. : Estadística para Ingenieros - Editorial Prentice Hall
77 Modelos y Simulación

CAPITULO 6

TEORÍA DE COLAS O LÍNEAS DE ESPERA

6.1. INTRODUCCIÓN

Muchas industrias de productos y servicios tienen un sistema de colas, en el que los “productos”
(o clientes) llegan a una “unidad de servicio”, esperan en la “fila” (o cola), obtienen algún tipo de
“servicio” y luego salen del sistema.

Figura 6.1 – Elementos principales de un sistema de colas

Considere los siguientes ejemplos:

• Los clientes que llegan a un banco, esperan en una fila para obtener un servicio de uno de los
cajeros, y después salen del banco.
• Después de hacer compras, los clientes eligen una fila en las cajas, esperan a que el cajero les
cobre, y luego salen de la tienda.
• Las llamadas telefónicas llegan a un centro de reservaciones de una aerolínea, esperan al agente
de ventas disponible, son atendidas por ese agente y dejan el sistema cuando el cliente cuelga.

Figura 6.2 – Modelo de una sola cola y un único servidor


78 Modelos y Simulación

Los problemas administrativos relacionados con tales sistemas de colas se clasifican en dos
grupos básicos:

1) Problemas de análisis: usted podría estar interesado en saber si un sistema dado está
funcionando satisfactoriamente. Necesita responder una o más de las siguientes preguntas:
a. ¿Cuál es el tiempo promedio que un cliente tiene que esperar en la fila antes de ser
atendido?
b. ¿Qué fracción de tiempo ocupan los servidores en atender a un cliente o en procesar
un producto?
c. ¿Cuáles son el número promedio y el máximo de clientes que esperan en la fila?

2) Problemas de diseño: Usted desea diseñar las características de un sistema que logre un
objetivo general. Esto puede implicar el planteamiento de preguntas como las siguientes:
a. ¿Cuántas personas o estaciones deben emplearse para proporcionar un servicio
aceptable?
b. ¿Deberán los clientes esperar en una sola fila (como se hace en muchos bancos) o en
diferentes filas (como en el caso de los supermercados)?
c. ¿Debería haber una estación de trabajo separada que maneje las cuestiones
“especiales” (caso primera clase en el mostrador de una aerolínea)?

6.2. CARACTERÍSTICAS DE UN SISTEMA DE COLAS

Para analizar un sistema de colas, es mejor primero identificar las características importantes que
aparecen en la siguiente sección:

Clientes que esperan

Figura 6.3. Múltiples canales

CARACETRÍSITICAS CLAVE

Las siguientes características se aplican a los sistemas de colas:

✓ Una población de clientes, que es el conjunto de todos los clientes posibles.


79 Modelos y Simulación

✓ Un proceso de llegada, que es la forma en que llegan los clientes de esa


población.
✓ Un proceso de colas, que está conformado por: (a) la manera en que los clientes
esperan para ser atendidos y (b) la disciplina de colas, que es la forma en que
son elegidos para proporcionarles el servicio.
✓ Un proceso de servicio, que es la forma y la rapidez con la que es atendido el
cliente.
✓ Procesos de salida, que son de los siguientes dos tipos:

a) Los elementos abandonan completamente el sistema después de ser


atendidos, lo que tiene como resultado un sistema de colas de un paso.
Por ejemplo, como se muestra en la figura 6.4., los clientes de un banco
esperan en una sola fila, son atendidos por uno de los tres cajeros y, después
de ser atendidos, abandonan el sistema.

Clientes que esperan

Figura 6.4. – Múltiples canales

b) Los productos, ya que son procesados en una estación de trabajo, son


trasladados a alguna otra parte para someterlos a otro tipo de proceso, lo
que tiene como resultado una red de colas. Por ejemplo, los productos que
se muestran en la figura 6.5., primero son procesados en la estación de
trabajo A y después enviados a la estación B o C. Los productos terminados,
B y C, luego son procesados en la estación D, antes de abandonar el sistema.

A D

Figura 6.5. – Red de colas

Se necesitan diferentes análisis matemáticos para cada uno de estos dos tipos de
procesos de salida. Solo se considerarán sistema de un paso.
80 Modelos y Simulación

6.2.1. LA POBLACIÓN DE CLIENTES

Al tomar en cuenta la base de clientes, la principal preocupación es el tamaño de la población. Para


problemas como los de un banco o de un supermercado, en donde el número de clientes potenciales
es bastante grande (cientos o miles), el tamaño de la población se considera, para fines prácticos,
como si fuera infinita.

Al contrario, considere una fábrica que tiene cuatro máquinas, que a menudo se descomponen y
requieren servicio de reparación en un taller especializado. En este caso, las máquinas están en lugar
de los clientes y el taller es el centro de servicio. El tamaño de la población de clientes, en este caso,
es de solamente cuatro (Población finita)

6.2.2. EL PROCESO DE LLEGADAS

El proceso de llegadas es la forma en que los clientes llegan a solicitar un servicio. La característica
más importante es el tiempo entre llegadas, que es la cantidad de tiempo entre dos llegadas
sucesivas. Este lapso es importante porque mientras menor sea el intervalo de tiempo, con más
frecuencia llegan los clientes, lo cual aumenta la demanda de servidores disponibles.

CARACTERÍSTICAS CLAVE

Existen dos clases básicas de tiempos entre llegadas:

✓ Determinístico, en el cual clientes sucesivos llegan en un mismo


intervalo de tiempo, fijo y conocido. Ejemplo: en una línea de
ensamblaje los artículos llegan a una estación en intervalos invariables
de tiempo

✓ Probabilístico, en el cual el tiempo entre llegadas sucesivas es incierto


y variable. Los tiempos entre llegadas probabilísticos se describen
mediante una distribución de probabilidad.

En el caso probabilístico, la determinación de la distribución real, a menudo, resulta difícil. Sin


embargo, una distribución, la distribución exponencial, ha probado ser confiable en muchos
problemas prácticos.

6.2.3. EL PROCESO DE COLAS

Parte del proceso de colas tiene que ver con la forma en que los clientes esperan para ser atendidos.
Los clientes pueden esperar en una sola fila, como en un banco (Figura 6.6), éste es un sistema de
cola de una sola línea. Al contrario, los clientes pueden elegir una de varias filas en la que deber
81 Modelos y Simulación

esperar a ser atendidos, como en las cajas cobradoras de un supermercado; observe la figura 6.7.,
éste es un sistema de colas de líneas múltiples.

Clientes que esperan

Figura 6.6. – Sistema de cola de una sola fila.

Figura 6.7. – Sistema de cola de múltiples filas

CARACTERÍSTICAS CLAVE

Otra característica del proceso de colas es la disciplina de colas, es decir, la


forma en que los clientes que esperan son seleccionados para ser atendidos.
✓ Primero en entrar, primero en salir (PEPS). Los clientes son atendidos
en el orden en que van llegando a la fila. Ejemplo: clientes de un banco
y supermercado.
✓ Último en entrar, primero en salir (UEPS). El cliente que ha llegado más
recientemente es el primero en ser atendido. Un ejemplo de esta
disciplina se da en un proceso de producción en el que los productos
llegan a una estación de trabajo y son apilados uno encima del otro. El
trabajador elige, para su procesamiento, el producto que está en la
cima de la pila, que fue el último que llegó, para ser procesado o para
brindarle un servicio.
✓ Selección de prioridad. A cada cliente que llega se le da una prioridad
y se elige según ésta para brindarle el servicio. Un ejemplo son los
pacientes que llegan a la sala de urgencias de un hospital. Mientras más
severo sea el caso, mayor será la prioridad del “cliente”.
82 Modelos y Simulación

En el presente capítulo, sólo se analizará la selección PEPS, que es la disciplina de colas más
comúnmente utilizadas.

6.2.4. EL PROCESO DE SERVICIO

El proceso de servicio define cómo son atendidos los clientes. En algunos casos, puede existir más de
una estación en el sistema en la cual se proporcione el servicio requerido. Ejemplo: los bancos y los
supermercados. Cada ventanilla y cada caja registradora son estaciones que proporcionan el mismo
servicio. A tales estructuras se les conoce como sistemas de colas de canal múltiple. En dichos
sistemas, los servidores pueden ser idénticos, en el sentido que proporcionan la misma clase de
servicio con igual rapidez, o pueden ser no idénticos. Por ejemplo, si todos los cajeros de un banco
tienen la misma experiencia, pueden considerarse como idénticos. En este capítulo, se tomarán en
cuenta solamente servidores idénticos.

Al contrario de un sistema de canal múltiple, considere un proceso de producción con una estación
de trabajo que proporciona el servicio requerido. Todos los productos deben pasar por esa estación
de trabajo; en este caso se trata de un sistema de colas de canal sencillo. Es importante hacer notar
que incluso en un sistema de canal sencillo pueden existir muchos servidores que, juntos, llevan a
cabo la tarea necesaria. Por ejemplo, un negocio de lavado a mano de automóviles, que es una sola
estación, puede tener dos empleados que trabajan en un auto de manera simultánea.

Otra característica más de un proceso de servicio es si se permite o no la prioridad, esto es, ¿puede
un servidor detener el proceso con el cliente que está atendiendo para dar lugar a un cliente que
acaba de llegar? Por ejemplo, en una sala de emergencias.

Cualquiera que sea el servicio, es necesario tener una idea de cuánto tiempo se requiere para llevar
a cabo el servicio. Esta cantidad es importante debido a que cuanto más dure el servicio, más tendrán
que esperar los clientes que llegan. Como en el caso del proceso de llegada, este tiempo puede ser
determinístico o probabilístico. Con un tiempo de servicio determinístico, cada cliente requiere
precisamente la misma cantidad conocida de tiempo para ser atendido. Con un tiempo de servicio
probabilístico, cada cliente requiere una cantidad distinta e incierta de tiempo de servicio.

Los tiempos de servicio probabilísticos se describen matemáticamente mediante una distribución de


probabilidad. En la práctica resulta difícil determinar cuál es la distribución real. Sin embargo, una
distribución que ha resultado confiable en muchas aplicaciones, como cuando se trata de bancos y
supermercados, es la distribución exponencial.

µ = número promedio de clientes atendidos por unidad de tiempo

1/µ = tiempo promedio invertido en atender a un cliente


83 Modelos y Simulación

6.2.5. CLASIFICACIÓN DE LOS MODELOS DE COLAS

El método de clasificación presentado aquí pertenece a un sistema de colas en el que el tamaño de la


población de clientes es infinita, los clientes que llegan esperan en una sola fila y el espacio de espera
en cada línea es efectivamente infinito.

CARACTERÍSTICAS CLAVE

En este método, los símbolos describen las características del sistema.

✓ El proceso de llegada. Este símbolo describe la distribución de tiempo


entre llegadas, que es uno de los siguientes:
a) D para denotar que el tiempo entre llegadas es determinístico.
b) M para denotar que los tiempos entre llegadas son probabilísticos
y siguen una distribución exponencial.
c) G para denotar que los tiempos entre llegadas son probabilísticos
y siguen una distribución general diferente a la exponencial.

✓ El proceso de servicio. Este símbolo describe la distribución de tiempos


de servicio, que es uno de los siguientes:
a) D para describir un tiempo de servicio determinístico.
b) M para denotar que los tiempos de servicio son probabilísticos y
siguen una distribución exponencial.
c) G para denotar que los tiempos de servicio son probabilísticos y
siguen una distribución general diferente a la exponencial.

✓ El proceso de colas. Este número, c, representa cuántas estaciones o


canales paralelos existen en el sistema.

Considere un sistema etiquetado como M/M/3. La primera M indica que el tiempo entre llegadas es
probabilístico y sigue una distribución exponencial. La segunda M denota que el tiempo de servicio es
probabilístico y sigue, también, una distribución exponencial. El 3 significa que el sistema tiene tres
estaciones paralelas, cada una dando un servicio con la misma rapidez.

CARACTERÍSTICAS CLAVE

Cuando el espacio de espera y/o el tamaño de la población de clientes es finito,


los dos siguientes símbolos adicionales se incluyen para indicar estas
limitaciones:

✓ Un número K que representa el número máximo de clientes que


pueden estar en el sistema en cualquier momento (es decir, en servicio
o en espera en la fila). Este número es igual al número de estaciones
84 Modelos y Simulación

paralelas más el número total de clientes que pueden esperar para ser
atendidos.

✓ Un número L que representa el número total de clientes de la


población.

Cuando se omite cualquiera de los símbolos, se supone que el valor correspondiente es infinito. Por
ejemplo, M/M/3/10 indica que el sistema tiene espacio para un número infinito de clientes, el número
K no se ha puesto, y que solamente 10 posibles clientes existen.

6.3. MEDIDAS DE RENDIMIENTO PARA EVALUAR UN SISTEMA DE COLAS

Cualquier sistema de colas pasa por dos fases básicas. Por ejemplo, considere la cantidad de tiempo
que los clientes tienen que esperar en un banco durante el curso del día, como se muestra en la figura
6.8.

Figura 6.8. – Las fases de estado transitorio y estado estable.

Cuando el banco abre en la mañana, no hay nadie en el sistema, de modo que el primer cliente es
atendido de manera inmediata. Conforme van llegando más clientes, lentamente se va formando la
cola y la cantidad de tiempo que tienen que esperar empieza a aumentar. A medida que avanza el día,
el sistema llega a una condición en la que el efecto de la falta inicial de clientes ha sido eliminado y el
tiempo de espera de cada cliente ha alcanzado un nivel bastante estable. Como se indica en la figura
6.8. , la fase inicial, que conserva los efectos de las condiciones iniciales, se conoce como fase
transitoria.

Fase transitoria: período inicial de un sistema de colas en que se


conservan los efectos de las condiciones iniciales.
85 Modelos y Simulación

Después de que los efectos de las condiciones iniciales son eliminados, el sistema entra en un estado
estable.

Estado estable: Condición del sistema después de que se han


eliminado las condiciones iniciales.

Relaciones entre medidas de rendimiento:

El cálculo de muchas medidas de rendimiento depende de los procesos de llegada y de servicio del
sistema de colas específico. Los siguientes son los parámetros de los procesos antes mendionados:

 = número promedio de llegadas por unidad de tiempo

µ = número promedio de clientes atendidos por unidad de tiempo en una estación

Las siguientes ecuaciones son válidas cuando    < 1

 = Probabilidad de encontrar el sistema ocupado = Utilización = Intensidad de tráfico

 = /

Po =Probabilidad de que no haya clientes en el sistema

Po = 1 - ( / )

L = Número promedio de clientes en el en el sistema



L = µ− 

Lq = Número promedio de clientes en la cola

2
Lq = µ(µ− )

W = Tiempo promedio del cliente en el sistema


1
W = µ−

Wq = Tiempo promedio del cliente en la cola


Wq =
µ(µ−)

Pn = Probabilidad de que haya n clientes en el sistema

Pn = n * P0
86 Modelos y Simulación

6.1. ANÁLISIS DE UN SISTEMA DE COLAS DE UN SOLO CANAL DE UNA SOLA LÍNEA CON LLEGADA
EXPONENCIAL Y PROCESOS DE SERVICIO (M/M/1)

En la presente sección usted verá cómo calcular las diferentes medidas de rendimiento y cómo
interpretar el resultado de computación asociado al análisis de un sistema de colas M/M/1 que
consiste en lo siguiente:

1. Una población de clientes infinita


2. Un proceso de llegada en el que los clientes se presentan de acuerdo con un proceso de
Poisson con una tasa promedio de  clientes por unidad de tiempo.
3. Un proceso de colas que consiste en una sola línea de espera de capacidad infinita, con una
disciplina de colas primero en entrar primero en salir.
4. Un proceso de servicio que consiste en un solo servidor que atiende a los clientes de acuerdo
con una distribución exponencial con un promedio de µ clientes por unidad de tiempo.

Para que este sistema alcance una condición de estado estable, la tasa de servicio promedio, µ, debe
ser mayor que la tasa de llegadas promedio, . Si este no fuera el caso, la cola del sistema continuaría
creciendo debido a que, en promedio llegarían más clientes que los que pueden ser atendidos por
unidad de tiempo.

Ejemplo sencillo (1ra parte): EL PROBLEMA DE COLAS DE LA OHIO TURNPIKE COMMISION (OTC).

Figura 6.8. – Sistema de colas para la estación de pesado en la autopista de Ohio

La comisión de la Autopista de Ohio (OTC) tiene un número de estaciones para el pesado de camiones
a lo largo de la autopista de cuota en Ohio, para verificar que el peso de los vehículos cumple con las
regulaciones federales. La administración de OTC está considerando mejorar la calidad del servicio en
sus estaciones de pesado y ha seleccionado una de las instalaciones como modelo a estudiar, antes
de instrumentar los cambios. La administración desea analizar y entender el desempeño del sistema
actual durante las horas pico, cuando llega a la báscula el mayor número de camiones, suponiendo
87 Modelos y Simulación

que el sistema puede desempeñarse bien durante este período, el servicio en cualquier otro momento
será aún mejor.

El gerente general siente que el sistema actual cumple con las cuatro condiciones presentadas
anteriormente. Su siguiente paso es estimar las tasas promedio de llegada y de servicio en dicha
estación. De los datos disponibles, suponga que la gerencia determina que los valores son:

 = número promedio de camiones que llegan por hora = 60

µ = número promedio de camiones que pueden ser pesados por hora = 66

El valor de µ = 66 es mayor que el de  = 60, de modo que es posible hacer el análisis de estado
estable de este sistema.

La intensidad de tráfico es:

 = /

 =60/66 = 0,90

Mientras más cerca esté  de 1, más cargado estará el sistema, lo cual tiene como resultado colas más
largas y tiempos de espera más grandes.

Las medidas de rendimiento para el problema de OTC se calculan de la siguiente manera:

1. Probabilidad de que no haya clientes en el sistema (P0):

P0 = 1 - 
P0 = 1 – 0,9
P0 = 0,10

Este valor indica que aproximadamente 10% del tiempo un camión que llega no tiene que esperar
a que se le proporcione el servicio porque la estación de pesado está vacía. Dicho de otra manera,
aproximadamente el 90% del tiempo un camión que llega tiene que esperar.

2. Número promedio en la fila (Lq):

2
Lq =
µ(µ− )

602 3600
Lq = 66(66− 60) = 66∗6 = 9
88 Modelos y Simulación

En otras palabras, en estado estable, en promedio, la estación de pesado puede esperar tener
aproximadamente 9 camiones esperando para obtener el servicio (sin incluir al que se está
pesando).

3. Tiempo promedio de espera en la cola (Wq):



Wq = µ(µ−)

60 60
Wq = = = 0,1515
66(66−60) 66∗6

Este valor indica que, en promedio, un camión tiene que esperar 0,1515 horas, aproximadamente
9 minutos, en la fila antes de que empiece el proceso de pesado.

4. Tiempo promedio de espera en el sistema (W):


1
W = µ−

1
W = 66−60 = 0,166

Este valor indica que, en promedio, un camión invierte 0,166 horas, 10 minutos, desde que llega
hasta que sale.

5. Número promedio en el sistema (L):


L = µ− 

60
L= = 10
66− 60

Este valor indica que, en promedio, existe un total de 10 camiones en la estación de pesado, ya
sea en la báscula o esperando a ser atendidos.

6. Probabilidad de que un cliente que llega tenga que esperar (Pw):

Pw = 1 – P0
Pw = 0,90

7. Probabilidad de que haya n clientes en el sistema (Pn):

Pn = n * P0

Al utilizar esta fórmula, se obtienen las siguientes probabilidades:


89 Modelos y Simulación

n Pn
0 0,0909
1 0,0825
2 0,0751
3 0,0683
.
.
.

8. Utilización:

U=

U = 0,90

Este valor indica que aproximadamente el 90% del tiempo las instalaciones de pesado están en
uso (un camión está siendo pesado). De manera equivalente, aproximadamente el 10% del tiempo
la estación está sin funcionar, sin que haya camiones que se están pesando.

Ejemplo (2da parte): EL PROBLEMA DE COLAS DE LA OHIO TURNPIKE COMMISION (OTC).

Al evaluar el sistema actual, la gerencia de OTC encuentra que muchas medidas de rendimiento están
dentro de los intervalos aceptables. Pero la gerencia está preocupada pues hay ocasiones en que la
cola llega hasta la autopista.

Para calcular la probabilidad de que esto suceda, usted debe calcular la probabilidad de que el número
de camiones en el sistema sea 17 o más (uno siendo atendido y 16 o más esperando en la rampa).
Este número se obtiene sumando las probabilidades Pn, de que n camiones se encuentren en el
sistema, para n = 17, 18, … Esto tiene como resultado un valor de 0,20, es decir, aproximadamente
20% del tiempo los camiones sobrepasarán la rampa completa y legarán hasta la autopista. Como
éste no es un nivel aceptable de desempeño, la gerencia desea mejorar la eficiencia global del sistema,
no solamente por la razón anterior, sino porque prevé un aumento en el tráfico de camiones sobre la
autopista en el futuro cercano. Un informe reciente indica que OTC debería planear una tasa de
llegada pico de aproximadamente 70 camiones por hora, en vez del actual valor de 60.

Para atender estas cuestiones, la gerencia de OTC ha propuesto contratar un trabajador adicional, lo
cual daría como resultado un aumento en la eficiencia de aproximadamente 10%. Es decir, con esta
persona extra, aproximadamente 73 camiones por hora pueden ser pesados en lugar de los 66
originales. Como gerente de operaciones se le ha pedido a usted que evalúe el impacto de la
propuesta.
90 Modelos y Simulación

Figura 6.9. – Resultado obtenido con STORM para el problema de colas M/M/1 de OTC con  = 70 y µ = 73

Figura 6.10.- Resultado obtenido con QSB para el problema de colas M/M/1 de OTC con  = 70 y µ = 73

Basándose en los resultados obtenidos, la gerencia de OTC encuentra que tal nivel de rendimiento es
inaceptable, no sólo porque los conductores se quejarán del hecho de tener que tardar 20 minutos
en el sistema, sino también por la longitud de la cola esperada de 22 camiones excede con mucho a
la capacidad disponible de 15, lo cual podría tener como consecuencia un posible accidente de tráfico
en la autopista.

Para obtener niveles de rendimiento aceptables, se ha propuesto otra alternativa, a saber, la


construcción de una segunda báscula del otro lado de la estación de pesado. Utilizando el personal
91 Modelos y Simulación

actual para que opere ambas básculas, las estimaciones de la gerencia tendrán como resultado una
capacidad de peso de aproximadamente 40 camiones por hora en cada báscula.

6.2. ANÁLISIS DE UN SISTEMA DE COLAS DE CANAL MÚLTIPLES DE UNA SOLA LÍNEA CON LLEGADA
EXPONENCIAL Y PROCESOS DE SERVICIO (M/M/C)

Un sistema de colas M/M/c consiste en lo siguiente:

1. Una población de clientes infinita.


2. Un proceso de llegada en el que los clientes se presentan de acuerdo a un proceso de Poisson
con una tasa promedio de  clientes por unidad de tiempo.
3. Un proceso de colas que consiste en una sola fila de espera de capacidad infinita, con una
disciplina de colas primero en entrar, primero en salir
4. Un proceso de servicio que consiste en c servidores idénticos, cada uno de los cuales atiende
a los clientes de acuerdo con una distribución exponencial, con una cantidad promedio, µ, de
clientes por unidad de tiempo.

Figura 6.12. – Sistema de colas con dos básculas, para el problema de OTC

Las fórmulas para un sistema de colas M/M/c no serán consideradas en este libro. La figura 6.13
muestra los resultados obtenidos con STORM.
92 Modelos y Simulación

Figura 6.12. – Medidas de rendimiento obtenidas con STORM para el problema de dos servidores de OTC

6.3. ANÁLISIS ECONÓMICO DE LOS SISTEMAS DE COLAS

Vimos en la sección anterior que la ventaja de tener más de un servidor es la reducción del tiempo de
espera y del número de clientes que esperan a ser atendidos. Claramente, mientras más servidores
se tengan, mejor será el servicio a los clientes. Sin embargo, cada servidor implica costos de operación.
¿De qué manera evalúa usted este equilibrio entre nivel de servicio y costo?

En algunos problemas, es posible utilizar información sobre costos para llevar a cabo un análisis
económico del equilibrio entre el número de servidores y el nivel de servicio al cliente.

Ejemplo: PROBLEMA DE COLAS DE AMERICAN WEAVERS, INC.

American Weaver, Inc tiene una planta de manufactura de tela en Georgia. La planta tiene un gran
número de máquinas tejedoras que con frecuencia se atascan. Estas máquinas son reparadas
basándose en el procedimiento de la primera en entrar, la primera en ser revisada, por uno de los
siente miembros del personal de reparación. Durante varios recorridos, la gerente de producción ha
observado que, en promedio, aproximadamente de 10 a 12 máquinas están fuera de operación en
cualquier momento debido a que están atascadas. Ella sabe que contratar personal de reparaciones
adicional bajaría el número de máquinas sin funcionar, lo cual traería como consecuencia un aumento
en la producción, pero no sabe a cuántas personas más debería contratar. Como asesor
administrativo, se le ha mandado llamar a usted para que ayude a determinar dicho número.
93 Modelos y Simulación

Modelo y análisis del sistema de colas actual

El primer paso que debe dar consiste en analizar las condiciones de operación actuales. Debe
reconocer que las máquinas tejedoras conforman un modelo de colas. Los clientes están constituidos
por las máquinas que se atascan de vez en cuando. Existe un gran número de tales máquinas, de modo
que podría suponer, razonablemente, que la población de clientes es infinita. Se tiene siete servidores
independientes e idénticos que reparan las máquinas basándose en una estrategia de primero en
entrar, primera en darle el servicio. Usted puede pensar en estas máquinas formando una sola fila en
espera de pasar con el siguiente servidor que esté disponible.

Para modelar esta operación, el siguiente paso consiste en reunir y analizar los datos
correspondientes a los procesos de llegada y de servicio. Suponga que se tiene que:

1. La aparición de máquinas atascadas pueden ser aproximada a un proceso de llegada de


Poisson con una tasa promedio de 25 por hora.
2. Cada máquina atascada requiere una cantidad aleatoria de tiempo para su reparación, que
puede ser aproximada por una distribución exponencial con un tiempo promedio de servicio
de 15 minutos, lo cual, para cada servidor, significa una tasa promedio de cuatro máquinas
por hora.

Con estas observaciones, el sistema actual puede modelarse como un sistema de colas M/M/7, con 
= 25, µ = 4 y una población y un área de espera infinitas.

Figura 6.13. – Medidas de rendimiento obtenidas con STORM para el problema de American
Weavers, Inc, con siete reparadores.
94 Modelos y Simulación

Los resultados obtenidos con el paquete STORM con respecto a las medidas de rendimiento se
presentan en la figura 6.13. Como puede ver, el gerente había estimado con bastante precisión el
hecho de que entre 10 y 12 máquinas están atascadas, en promedio; en cualquier momento. La última
línea del reporte indica que las máquinas atascadas están fuera de operación durante un tiempo
promedio de 0,4839 horas, aproximadamente 29 minutos.

Como asesor, se le ha pedido a usted que recomiende el número de reparadores adicionales que se
necesitarían contratar. Usted conoce las medidas de rendimiento de un total de 7 trabajadores. ¿De
qué manera cambian las medidas de rendimiento si se aumenta el personal de reparación? Las
medidas de rendimiento asociadas para un número entre 7 y 11 reparadores se muestran en la tabla
6.1.

Tabla 6.1. – Medidas de rendimiento para el problema de American Weavers, Inc. con
diferentes tamaños de personal de reparación.

A medida que aumenta el tamaño del personal de 7 a 11, el número promedio de máquinas fuera de
operación disminuye de aproximadamente 12 a 6,333. Similarmente, la cantidad promedio de tiempo
que una máquina está fuera de operación disminuye de 0,4839 horas (aproximadamente 29 minutos)
a 0,2533 horas (aproximadamente 15 minutos). Ahora necesita información sobre los costos para
determinar cuántos reparadores adicionales, si se requieren, deben contratarse.

Análisis de costos del sistema de colas

Al analizar los méritos de contratar personal de reparación adicional en American Weavers, Inc., usted
debería identificar dos componentes importantes:

1. Un costo por hora basado en el tamaño del personal:

Costo total de Costo por hora para Número de


= *
personal por hora cada reparador reparadores
95 Modelos y Simulación

2. Un costo por hora basado en el número de máquinas fuera de operación:

Costo por hora para Número promedio


Costo total por
= cada máquina fuera * de máquinas fuera
la espera
de operación de operación

Para seguir adelante, necesita ahora conocer el costo por hora de cada miembro del personal de
reparación (denotado Cs) y el costo por hora de una máquina fuera de operación (denotado por Cw),
que es el costo de una hora de producción perdida. Suponga que el departamento de contabilidad le
informa que cada reparador le cuesta a la compañía $50 por hora, incluyendo impuestos,
prestaciones, etc. El costo de una hora de producción perdida debe incluir costos explícitos, como la
cantidad de ganancias no obtenidas, y costos implícitos, como la pérdida de voluntad por parte del
cliente si no se cumple con la fecha límite de entrega. Estos costos implícitos son difíciles de estimar.
Sin embargo, suponga que el departamento de contabilidad estima que la compañía pierde $100 por
cada hora que una máquina esté fuera de operación. Ahora ya puede calcular un costo total para cada
uno de los tamaños de personal. Para un personal de siete reparadores, el número esperado de
máquinas en el sistema es 12,0973 (ver tabla 6.1)

Costo total = (costo del personal) + (costo de la espera)

Costo total = {(costo por hora por persona) * (número de reparadores)} +

{(costo por hora por cada máquina fuera de operación)} * {(número esperado de
máquinas fuera de operación)}

Costo total = (50 * 7) + (100 * 12,0973)

Costo total = $1559,73 por hora

Realizando cálculos parecidos para cada uno de los tamaños de personal restantes se tiene como
resultado los costos por hora de cada alternativa que presentamos en la tabla 6.2.

Tabla 6.2. – Costo por hora para diferentes tamaños de personal de reparación de American Weavers, Inc.
Número esperado
Tamaño de personal Costo por hora ($)
en el sistema
7 12,0973 (50*7) + (100 * 12,0973) = 1559,7
8 7,7436 (50*8) + (100 * 7,7436) = 1174,36
9 6,7863 (50*9) + (100 * 6,7863) = 1128,63
10 6,4594 (50*10) + (100 * 6,4594) = 1145,94
11 6,3330 (50*11) + (100 * 6,3330) = 1183,30
96 Modelos y Simulación

De los resultados, usted puede ver que la alternativa que tiene menor costo por hora, $1128,63, es
tener un total de nueve reparadores. En consecuencia, su recomendación a la gerencia de producción
de American Weavers, Inc., es contratar a dos reparadores adicionales. Estos dos nuevos empleados
tendrán un costo de $100 por hora, pero este costo adicional está más que justificado por los ahorros
que se tendrán con menos máquinas fuera de operación. La recomendación reducirá el costo por hora
de $1559, 73 a $1128,63, un ahorro de aproximadamente $430 por hora, mayor que la cantidad que
cubre sus honorarios.

CARACTERÍSTICAS CLAVE

En resumen, para evaluar un sistema de colas en el que usted controla el número de servidores o su
tasa de servicio, se necesitan las siguientes estimaciones de costo y medidas de rendimiento:

✓ El costo por servidor por unidad de tiempo (Cs)


✓ El costo por unidad de tiempo por cliente esperando en el sistema (Cw)
✓ El número promedio de clientes en el sistema (L)

Por cada alternativa que implique S servidores, calcule el siguiente costo total por unidad de tiempo:
CT = (Costo de los servidores) + (Costo de la espera)
CT = (CS * S) + (Cw * L)

CT = Costo total por unidad de tiempo con S servidores


Cs = Costo por servidor por unidad de tiempo
S = Número de servidores
Cw = Costo por cliente por unidad de tiempo
L = Número esperado de clientes en el sistema

Por último, seleccione la alternativa que ofrezca el costo total mínimo por unidad de tiempo.

BIBLIOGRAFÍA CONSULTADA

- Mathur y Solow, Investigación de Operaciones

PÁGINAS WEB

IMÁGENES – PÁGINAS WEB

• [Link] (Accedido
17/12/2015)
• [Link] (Accedido 17/12/2015)
97 Modelos y Simulación

CAPITULO 7

DINÁMICA DE SISTEMAS

7.1 - INTRODUCCIÓN

En la década de los años 30 se desarrolló la teoría de los servomecanismos, ingenios cuya característica
fundamental es la existencia en ellos de una realimentación de información. Se entiende por realimentación el
proceso por el cual, cuando se actúa sobre un determinado sistema, se obtiene continuamente información
sobre los resultados de las decisiones tomadas, información que servirá para tomar las decisiones sucesivas. La
teoría de los servomecanismos tiene dos características interesantes:

▪ el estudio del concepto de realimentación y


▪ el estudio del comportamiento dinámico de los sistemas.

Las ideas desarrolladas inicialmente para el estudio de los servomecanismos se aplicaron a otro tipo de
problemas, como por ejemplo la regulación de procesos químicos, pero se trataba de aplicaciones en procesos
cuyos componentes eran tecnológicos, de tipo mecánico, eléctrico, químico, etc. Un intento importante de
utilizar estas ideas en las Ciencias Sociales lo constituye la DINÁMICA DE SISTEMAS, una metodología para la
aplicación de la noción de SISTEMAS DINÁMICOS. La Dinámica de Sistemas está íntimamente ligada a :

• Teoría General de Sistemas


• Teoría de la Automática
• Cibernética

El origen de la Dinámica de Sistemas se encuentra ligado al desarrollo de una aplicación práctica para una
fábrica de componentes electrónicos, en la que se observó que los pedidos sufrían fuertes oscilaciones. Esto
sucedió durante la década de los años 50. Se encargó a un equipo del M.I.T., bajo la dirección de Jay [Link],
el estudio de este problema. Inicialmente se emplearon las técnicas clásicas de la Investigación Operativa. Sin
embargo, Forrester advirtió pronto que este tipo de estudios no conducían a resultados satisfactorios, al tiempo
que comprendía el importante papel que jugaban en el funcionamiento del proceso las estructuras de
realimentación de información que se presentaban en el mismo.

A partir de este trabajo, Forrester sistematizó sus ideas y su metodología dando lugar a la DINÁMICA
INDUSTRIAL. Cuando se inició la extensión de la metodología a otros tipos de sistemas, se cambió la
denominación de Dinámica Industrial por la de DINÁMICA DE SISTEMAS.

La Dinámica de Sistemas es el estudio de cómo la estructura de


realimentación de un sistema produce su comportamiento dinámico.
98 Modelos y Simulación

La Dinámica de Sistemas es una técnica que permite describir de forma particular, las fuerzas
que surgen en el interior del sistema en estudio para producir sus cambios a través del
tiempo, y cómo se interrelacionan estas fuerzas entre sí en un modelo unitario.

Un estudio como los que realiza la Dinámica de Sistemas se desarrolla en distintos pasos:

1. En primer lugar se observan los modos de comportamiento del sistema real para tratar de identificar los
elementos fundamentales del mismo.

2. En segundo lugar, se buscan las estructuras de realimentación que puedan producir el comportamiento
observado.

3. En tercer lugar, a partir de la estructura identificada, se construye el modelo matemático de comportamiento


del sistema en forma idónea para ser tratado por una computadora.

4. En cuarto lugar, el modelo se emplea para simular, como en un laboratorio, el comportamiento dinámico
implícito en la estructura identificada.

5. En quinto lugar, la estructura se modifica hasta que sus componentes y el comportamiento resultante
coincidan con el comportamiento observado en el sistema real.

6. Por último, se modifican las decisiones que pueden ser introducidas en el modelo de simulación hasta
encontrar decisiones aceptables y utilizables que den lugar a un comportamiento real mejorado.

La idea de emplear modelos para representar sistemas reales no tiene nada esencialmente nuevo. Todo el
mundo emplea instintivamente modelos cuando toma decisiones. Al tomar una decisión se elige entre varias
alternativas posibles, en función del efecto que vaya a producir cada una de las acciones. La relación que liga a
las posibles acciones con sus efectos es, precisamente, el modelo del sistema.

Sistema Dinámico: Un modelo constituye una representación abstracta de un cierto aspecto


de la realidad y tiene una estructura que está formada por los elementos que caracterizan el aspecto
modelado de la realidad, y por las relaciones entre éstos elementos. Un modelo es la representación
de un "sistema" que, como es sabido, no es sino un conjunto de partes entre las que se producen
interacciones, y cuyo comportamiento persigue, normalmente, un determinado objetivo. Si se
consideran como elementos constitutivos de un modelo las evoluciones en el tiempo de las
magnitudes que lo constituyen, entonces se emplea para su representación lo que se denomina
"Sistema Dinámico".

Todo modelo debe omitir algunos detalles del mundo real que trata de modelar. La esencia de la construcción
de modelos reside en la "simplificación”. Un modelo se construye para mejorar la comprensión de un cierto
aspecto de la realidad, así como para hacer explícitas las implicaciones de las complejas relaciones que existen
en el mundo real. Si el modelo fuese exactamente idéntico a la realidad, en todos sus aspectos, sería tan difícil
de comprender como el propio mundo real y, en consecuencia, podría llegar a ser inútil. Los modelos que se
construyen mediante la utilización de la Dinámica de Sistemas son modelos abstractos (simbólicos),
cuantitativos e inductivos (de simulación).
99 Modelos y Simulación

7.2 - FUNDAMENTOS DE LA DINÁMICA DE SISTEMAS

La dinámica de sistema, surge de un contexto histórico definido en el que se desarrollan movimientos


intelectuales, de tipo científico y técnico, que determinan sus características esenciales. En este sentido cabe
decir que en la dinámica de sistemas se combinan tres líneas de desarrollo científico-técnico: 1) las técnicas
tradicionales de gestión de sistemas sociales (privados y públicos), 2) la teoría de sistemas realimentados y 3) la
simulación por computadora. En la siguiente figura se pretende mostrar de forma esquemática las
interrelaciones entre estos conceptos en la génesis de la dinámica de sistemas. En primer lugar, y en dicha figura,
se han indicado las técnicas tradicionales de gestión privada y pública. La gestión implica una serie de toma de
decisiones que se pretende sean óptimamente racionales y consistentes. Ello determina el empleo de modelos.
Aquí interesa solamente recordar que en los procesos normales de toma de decisión, empleados en la gestión
pública o privada, se hace uso de factores tales como la intuición, la experiencia y la información de base,
factores que se integran en los modelos mentales. Los modelos mentales han servido de base tradicional para
la toma de decisiones.

GESTION
TRADICIONAL TEORIA DE
DE SISTEMAS SISTEMAS Y SIMULACION EN
SOCIALES CIBERNETICA COMPUTADORAS

Procesamiento
Estructura
a bajo costo
de modelos
dinámicos
COMPARTAMIENTO
DINAMICO
Organización de la in- MODELO
formación en modelos

Experiencia, intuición, información de base

7.3 - LIMITE, ELEMENTOS Y RELACIONES EN LOS MODELOS

Al considerar un sistema dinámico como una unidad, tácitamente se asume que existe un límite que separa a
esta unidad del medio en el que está inserta.
100 Modelos y Simulación

El límite del sistema debe


elegirse de manera que se
incluyan en su interior
aquellos componentes necesarios para generar los modos de comportamiento de interés.

Al construir un modelo de simulación de un sistema, se debe, en primer lugar, estimar qué componentes
interactúan para producir el comportamiento que se está investigando. La elección implica la selección de
aquellos componentes situados en el interior de los límites del sistema que tengan interés para el estudio
concreto que se esté realizando, y excluye todos aquellos componentes potenciales que son irrelevantes al caso
y que, por consiguiente, se sitúan fuera de los limites considerados. Los elementos que se encuentran fuera de
los límites del sistema están relacionados con aquellos que se encuentran dentro de manera muy diferente a
cómo los elementos que se encuentran dentro están interrelacionados entre sí. Las relaciones de causa a efecto
entre el medio y el sistema son unidireccionales, mientras que los elementos en el interior del sistema están
estructurados por medio de bucles de realimentación que determinan una fuerte interacción entre ellos.

En la figura anterior se observa cómo el limite separa al sistema del medio. El sistema está formado
por una serie de elementos entre los que se producen fuertes interacciones. Por otra parte, en el
medio se encuentran elementos que pueden actuar sobre determinados elementos situados en el
interior del sistema, pero esta acción es simple, es decir no comporta cadenas cerradas de acciones.
Un modelo, en tanto que representación abstracta de un sistema real está compuesto por:
* un conjunto de definiciones que permiten identificar los elementos que

constituyen el modelo;

* un conjunto de relaciones que especifican las interacciones entre los

elementos que aparecen en el modelo.

Al iniciar el proceso de modelado de un sistema se deben elegir las distintas variables que intervendrán en el
modelo. Ante todo se debe hacer la separación de variables "incluidas" y "excluidas" de acuerdo a su relevancia
con respecto al objetivo. Los distintos elementos, o variables, que intervienen en el modelo (variables incluidas)
pueden clasificarse en "exógenos" y "endógenos". Las variables exógenas sirven para describir aquellos efectos
sobre el sistema que son susceptibles de sufrir modificaciones desde el exterior del mismo. Representan, en
cierta forma, el medio en el que está inmerso el sistema. Las variables endógenas sirven para caracterizar
101 Modelos y Simulación

aquellos elementos cuyo funcionamiento está completamente determinado por la estructura del sistema, sin
posibilidad de modificación directa desde el exterior. La Dinámica de Sistemas utiliza:

- el ENFOQUE DE SISTEMAS para hacer la "abstracción" de la realidad;

- el MÉTODO ANALÍTICO para representar las relaciones entre los elementos del sistema en estudio,
por medio de ecuaciones.

Supóngase un sistema representado como sigue:

Del enfoque de sistemas se pasa al método analítico para expresar formalmente las relaciones entre los
elementos. Las funciones que así se obtienen se denominan "cadena causal", que es la sucesión de causas y
efectos que se dan entre las variables.

7.4 - DIAGRAMAS DE CAUSALIDAD

Entre los elementos que constituyen el sistema se establece un bosquejo esquemático de aquellos que están
relacionados entre sí, lo cual se hace por medio de un diagrama en el que los nombres de los distintos elementos
están unidos entre sí por flechas. El diagrama que así se obtiene recibe las denominaciones de "diagrama de
causalidad" o "diagrama de influencias". El diagrama causal permite conocer la estructura de un sistema
dinámico. Esta estructura está dada por la especificación de las variables que aparecen en el mismo, y por el
establecimiento de la existencia, o no existencia, de una relación entre cada par de variables. A este nivel de
análisis de la estructura, lo único que interesa es si existen relaciones o no; la naturaleza de la relación
corresponde a una etapa posterior del estudio. Supónganse dos elementos variables del sistema denotados por
A y B. Pueden presentarse las siguientes situaciones:

A· · B A y B no están relacionados

A· . B A y B están relacionados

A· · B A y B están relacionados y, además, A influye en B (hay un sentido en la relación)


102 Modelos y Simulación

A · +. B Relación positiva: a un aumento (disminución) de A corresponde un aumento


(disminución) de B.

Relación negativa: a un aumento (disminución) de A corresponde una disminución


A. - .B
(aumento) de B.
Existen dos tipos básicos de estructuras causales: la estructura causal simple y la estructura causal compleja.

Diagrama causal simple: Se indica solamente la influencia de una A variable sobre otra. Las variables B y D
actúan sobre las variables A, C y E sin que se produzca ningún tipo de interacción entre ellas.

A.
B.
C.
D.
E.

Diagrama causal complejo: La característica esencial de este tipo de diagrama es que se establecen cadenas
cerradas de relaciones causales. En un diagrama causal complejo se pueden distinguir "bucles realimentados".
Un bucle realimentado es una cadena cerrada de relaciones causales. Por ejemplo, en la figura se tiene un
bucle cerrado formado por A, B y C; en efecto, una variación de A determina una variación (aumento) de B, la
que a su vez determina una disminución de C, que por último determina una disminución de A. Por lo tanto,
una variación de A determina, por medio de un bucle cerrado de relaciones causales, una acción sobre sí misma.
En la figura se tienen otros bucles de realimentación: el formado por A y B, y el formado por A y C.

+ .
+ A

- + -

Existen dos clases de bucles realimentados:

1. Bucles de realimentación positiva: Son aquellos en los que la variación de un elemento se propaga a lo largo
del bucle de manera que se refuerza la variación inicial. En la figura se tiene el diagrama causal de un bucle
de esta naturaleza. En efecto, si se produce un aumento de uno cualquiera de los elementos, por ejemplo
el A, éste determina un aumento de B, que a su vez determina un aumento de C, lo que por último determina
un nuevo aumento de A, que reiniciará el proceso. Se tiene un comportamiento explosivo caracterizado por un
103 Modelos y Simulación

autoreforzamiento de las variaciones. Un bucle realimentado es positivo si contiene un número par de


relaciones negativas.

+ B

A
+
+

+
Un ejemplo elemental de bucle de realimentación positiva lo suministra el crecimiento de una población de
C
acuerdo con el diagrama causal de la siguiente figura:

+
Población + Nacimiento / Año
Nacimientos / Año

2. Bucles de realimentación negativa: Son aquellos en los que una variación en un elemento se transmite a
lo largo del bucle de manera que determina una variación de signo contrario en el mismo elemento. En la
figura se tiene el diagrama causal de un bucle de esta naturaleza. En el mismo, un aumento de A determina
un aumento de B, que a su vez determina un aumento de C, que por último determina una disminución de A.

El comportamiento de éstos bucles está, por tanto, caracterizado por una acción autocorrectora. Cualquier
variación que se produzca en uno de los elementos del bucle tiende a anularse. Un bucle de realimentación
negativa tiende a crear equilibrio. Un bucle realimentado es negativo si contiene un número impar de relaciones
negativas.
+ B

A
-
-

+
C

Un ejemplo elemental de bucle de realimentación negativa lo suministra el diagrama causal de la figura


siguiente, que representa la limitación de una población por efecto de la escasez de alimentos.

+ . Población

. Comida per cápita


Nacimientos / Año . -
+ -

Tasa Nacimientos . +
104 Modelos y Simulación

El bucle controla la población por medio del alimento per cápita. El crecimiento de la población se limita por la
disminución de la tasa de nacimientos cuando disminuye la alimentación per cápita. El bucle es negativo por ser
negativa la relación que liga a la población con la comida per cápita. En todo diagrama causal coexisten
normalmente bucles de realimentación positiva con bucles de realimentación negativa. Las interacciones entre
ambos tipos de bucles determinan el comportamiento global del sistema. Por ejemplo, combinando los
diagramas causales anteriores referidos a la población se obtiene el siguiente diagrama:

+ . Población

+ . Comida per cápita


Nacimientos / Año . - -
+ +
Tasa Nacimientos . +

El comportamiento del conjunto dependerá de cuál de ambos bucles domine al otro en cada momento.
Normalmente sucederá que en las etapas iniciales del desarrollo de una población, el bucle que limita su
crecimiento por agotamiento del territorio disponible, y por lo tanto por disminución del alimento per- cápita,
tendrá un efecto prácticamente nulo debido a que no se ha llegado a niveles de saturación.

En consecuencia, en estas primeras etapas el bucle de crecimiento de la población será el que domine y se
registrará un crecimiento de la misma tal como se indica en la figura. Sin embargo, según vaya aumentando la
población se producirán problemas de agotamiento de recursos por lo que el bucle negativo empezará a
dominar sobre el bucle positivo, dando como resultado una tendencia al estancamiento en el TIEMPO del
crecimiento (crecimiento en S).

Pobla-
La construcción de un diagrama causal se concluye
ción
cuando, para cada una de las variables que
intervienen, se ha especificado lo siguiente:

* con cuáles otras variables está relacionada;


* cuál es el sentido de la relación;
* cuál es el signo de la relación

Tiempo

La construcción de un diagrama causal es, una labor sencilla. Sin embargo, debe procederse con gran cuidado a
fin de evitar posibles errores. Para obtener diagramas causales satisfactorios deben tenerse en cuenta las
siguientes reglas:

1 - Evitar bucles ficticios.


2 - Emplear elementos que sean fácilmente caracterizables por números, es decir, cuantificables.
105 Modelos y Simulación

3 - No emplear dos veces la misma relación en un modelo.


4 - Evitar bucles redundantes.
5 - No emplear el tiempo como un factor causal.

- . Población
- . Población
- .
Tasa
Tasa Mortalidad
Mortalidad +
+
. Frecuencia
epidemias . Frecuencia
INCORRECTO CORRECTO
epidemias

EJEMPLO 1: Construir un diagrama causal teniendo en cuenta los siguientes elementos: población, nacimientos,
tasa de natalidad, muertes, tasa de mortalidad, alimentos, producción y consumo, donde las tasas de natalidad
y mortalidad dependen de la cantidad de alimentos disponibles.

7.5 - DIAGRAMAS DE FORRESTER

La principal aportación de Forrester al modelado del comportamiento dinámico de un sistema consiste en haber
asociado al diagrama de causalidad (o influencias) una estructura funcional, clasificando las distintas variables
que conforman el diagrama causal de acuerdo a la función que desempeñan con el fin de generar el
comportamiento dinámico del sistema.
106 Modelos y Simulación

Conviene aclarar que la determinación del tipo de variable para un elemento del sistema depende del problema
específico que se esté considerando. Es innegable que en la elección de las variables juega un papel primordial
la experiencia del modelista. Como dijimos antes, los distintos elementos que constituyen el diagrama causal se
representan por variables, entre las cuales se reconocen dos tipos principales:

▪ Variables primitivas: indican el estado de una cosa en un momento determinado; existen por sí mismas;
miden el "hoy"; son instantáneas. Por ejemplo: el espacio, el nivel de un río, el stock, la población.

▪ Variables derivativas: muestran las variaciones producidas con el correr del tiempo; se derivan de las
primitivas; miden cómo se llegó al "hoy"; son no instantáneas. Por ejemplo: la velocidad, la aceleración, el
caudal de un río, la producción, las ventas, los nacimientos, las muertes.
▪ Las variables primitivas se denominan: "niveles" o "variables de estado"
▪ Las variables derivativas se denominan: "flujo" o "variables de flujo"

Para distinguir una variable primitiva de una variable derivativa se emplea la técnica del "DETENTE PLANETA"
que consiste en suponer que el tiempo se detiene; las variables que siguen existiendo son las primitivas, y las
que dejan de existir son derivativas. Es decir, cuando se detiene el dinamismo del sistema hay variables que
inmediatamente toman el valor cero, mientras que otras mantienen su valor.
107 Modelos y Simulación

Ejemplo: cuando en una fábrica termina el horario de trabajo y los empleados dejan de realizar sus respectivas
tareas, el STOCK (primitiva) sigue existiendo pero no hay VENTAS ni PRODUCCIÓN (derivativas). Las variables
que definen la estructura del sistema son las primitivas, y las que hacen que sea un sistema dinámico son las
derivativas. Para ayudar a comprender el significado de estas clases de variables se puede concebir un símil
hidrodinámico tal como el representado en la figura anterior.

En esta figura se representan tres depósitos en los que se acumulan tres niveles: N1, N2 y N3. Las variaciones
de los niveles están determinadas por las acciones sobre unas válvulas que regulan los caudales que alimentan
a cada uno de los depósitos.

La decisión sobre la apertura de estas válvulas se toma teniendo como única información los valores alcanzados
por los niveles en cada uno de los depósitos, en el instante de tiempo considerado. En la figura esto se
representa con ayuda de un observador que teniendo como única información el conocimiento de los niveles
en cada uno de los depósitos determina la apertura de las válvulas que correspondan.

Se observa cómo el valor tomado por las variables de flujo (tasas) en cada instante depende, exclusivamente,
de todos los valores alcanzados por los niveles en dicho instante; de forma análoga, los valores alcanzados por
los niveles depende de los valores tomados por las variables de flujo que alimentan dichos niveles.

La "fuente" puede interpretarse como un nivel que no tiene interés y contiene material en cantidad
prácticamente inagotable; mientras que el "sumidero", que puede interpretarse también como un nivel sin
interés, es el pozo en el que finalmente se deposita el material y su capacidad es infinita.

7.5.1 NIVELES

Los niveles constituyen aquel conjunto de variables cuya evolución es significativa para el estudio del sistema.
Los niveles representan magnitudes que acumulan los resultados de acciones tomadas en el pasado. Esta
función de acumulación puede asimilarse a la del nivel alcanzado por un líquido en un depósito; de ahí proviene
la denominación de nivel, siguiendo el símil hidrodinámico.

Las variables de nivel, o simplemente niveles, equivalen a las variables de estado en la Teoría de Sistemas. Es
decir, el estado de un sistema se representa por medio de los niveles. Observése cómo, de acuerdo con símil
hidrodinámico, los niveles determinan la futura evolución del sistema, a partir de un instante determinado, en
la medida en que determinan los valores tomados por las tasas (flujos),es decir por las variaciones de los propios
niveles.

La elección de los elementos que se representan por niveles, en un modelo determinado, depende del
problema específico que se esté considerando. En la elección de estas variables juega un papel primordial la
experiencia del diseñador del modelo.
108 Modelos y Simulación

7.5.2 - FLUJO (VARIABLES DE FLUJO)

Las variables de flujo determinan las variaciones en los niveles del sistema. Estas variables caracterizan las
acciones que se toman en el sistema, las cuales quedan acumuladas en los correspondientes niveles. Las
variables de flujo determinan cómo se convierte la información disponible en una acción. Debido a su
naturaleza, se trata de variables que no son modificables en sí, sino por los efectos que producen en los niveles
con los que están relacionadas. Según el símil hidrodinámico las variables de flujo se pueden asociar a válvulas
que regulan los caudales que alimentan determinados depósitos, cuyos niveles materializan el estado del
sistema.

7.5.3 - VARIABLES AUXILIARES

Las variables auxiliares representan pasos o etapas en que se descomponen el cálculo de una variable de flujo
a partir de los valores tomados por los niveles. Las variables auxiliares unen los canales de información entre
las variables de nivel y de flujo; en realidad son parte de las variables de flujo. Sin embargo, se distinguen de
ellas en la medida en que tengan un significado real por sí mismas, o sencillamente porque hacen más fácil la
comprensión de las ecuaciones de las tasas.

SIMBOLOGÍA UTILIZADA EN LOS DIAGRAMAS DE FORRESTER

FUENTE O SUMIDERO: emite o recibe el material que fluye por el sistema.

CANAL DE MATERIAL: canal de transmisión del material que circula por el sistema.

CANAL DE INFORMACIÓN: canal de transmisión de una cierta información, que no


es necesario que se conserve.

NIVEL: representa una acumulación de material; puede recibir material a través


de m canales y enviarlo por n canales, con 0<=m<=∞ y 0<=n<=∞. Los niveles
pueden brindar información pero no pueden recibirla.
109 Modelos y Simulación

FLUJO: controla el flujo de material desde la fuente a un nivel, desde un nivel a


otro nivel, o desde un nivel al sumidero. No contienen material, sólo controlan su
circulación. Una tasa puede recibir información pero no brindarla.

VARIABLE AUXILIAR: una cantidad de cierto significado físico en el mundo real y


con un tiempo de respuesta instantáneo. Las variables auxiliares reciben y brindan
información, no pueden recibir ni brindar material.

CONSTANTE: es un elemento del modelo que no cambia de valor. Las constantes


brindan información únicamente.

NIVEL DE DEMORA: un elemento que simula demoras o retrasos en la transmisión


de información o de material.

VARIABLE EXÓGENA: variable cuya evolución es independiente de las del resto del
sistema. Representa una acción del medio sobre el sistema y sólo puede brindar
información.

EJEMPLO 2 : Supongamos una población con tasa de natalidad y tasa de mortalidad constantes. Mediante la
construcción de un diagrama causal relacionemos las variables: POBLACIÓN, NACIMIENTOS Y MUERTES, y las
constantes TASA DE NATALIDAD Y TASA DE MORTALIDAD. Luego confeccionar el El diagrama de Forrester
correspondiente.

TNAT
Nacimientos
+
+ + +. Tasa Natalidad NACIM
.
Población . + Tasa
- -
. + Mortalidad
POBLAC

Muertes

MUER
TMORT
La realimentación positiva del bucle
(POBLACIÓN, NACIMIENTOS) significa que
NACIMIENTOS aumenta pobladores a la
POBLACIÓN; mientras que la realimentación
negativa del bucle (POBLACIÓN, MUERTES) trae
aparejada el significado de que MUERTES
disminuye POBLACIÓN.
110 Modelos y Simulación

EJEMPLO 3: Teniendo en cuenta el diagrama causal del ejemplo 1, el diagrama de Forrester correspondiente,
es el siguiente:
TNAT

NACIM PROD

POBLAC ALIM

MUER CONS

TMORT

Existen dos materiales diferentes: alimentos y pobladores; por lo tanto, tendrán fuentes y sumideros distintos.
Si detenemos el tiempo vemos que los alimentos y los pobladores siguen existiendo; entonces, ALIM y POBLAC
son niveles. Las válvulas reguladoras (flujos) de la cantidad de alimentos son la producción y el consumo, PROD
aumenta la cantidad de ALIM, mientras que CONS la disminuye. Las válvulas que controlan la cantidad de
pobladores son los nacimientos y las muertes. NACIM incrementa a POBLAC, mientras que MUER la decrementa.
En este caso, la tasa de natalidad TNAT y la tasa de mortalidad TMORT son variables auxiliares que dependen
de la cantidad de alimentos que contiene el nivel ALIM.

7.6 - MECÁNICA DE LA DINÁMICA DE SISTEMAS

Se trata de analizar el comportamiento del nivel POBLAC en una serie de unidades iguales de tiempo (en este
caso una unidad es 1 año). Supóngase que las tasas de natalidad y mortalidad dependen del Ingreso per cápita.
Considere también que el Ingreso Nacional Total es anual y constante.

- El instante J es el instante "anterior" del modelo.

- El instante K es el instante "presente" del modelo.

- El instante L es el instante "posterior" del modelo.


111 Modelos y Simulación

Supóngase el siguiente diagrama de Forrester:

POBLAC ........ población


TNAT
INT NACIM.......... nacimientos

MUER............. muertes
NACIM
TNAT............. tasa de natalidad

TMORT .......... tasa mortalidad


POBLAC IPC
IPC .................. ingreso per cápita

INT................. ingreso nacional total


MUER

TMORT TNAT, TMORT, IPC


e INT son anuales

Conocido el valor de Po (anterior) se trata de conocer el valor de P1 que es el valor del nivel de POBLAC en el
instante presente K = t1, es decir, POBLAC (K)

Se tiene que:

BC
 P0,1
tg  = es decir tg  =

AC t
112 Modelos y Simulación

Luego

 Po,1 = tg  .  t donde  Po,1 = P1 - Po

entonces P1 - Po = tg  .  t entonces P1 = Po + tg  .  t

Como cualquier Pi es función de ti , se tiene que : Po = P ( to ) y P1 = P ( to +  t )

Así P (to +  t) = P ( to ) + tg  .  t

Considerando que to = J, to +  t = K, tg  = flujo y  t = DT

P ( K ) = P ( J ) + flujo . DT

Pero el "flujo" está determinado por los "nacimientos" y las "muertes" que se han producido desde el instante
J hasta el instante K. Así

P ( K ) = P ( J ) + [ NACIM ( J K ) - MUER ( J K ) ] * DT con DT = 1 año

Generalizando, cualquier nivel en un instante K es

NIVEL ( K ) = NIVEL ( J ) + [ INGRESOS ( J K ) - EGRESOS ( J K ) ] * DT

Si se tiene en cuenta que un nivel puede recibir m ingresos y enviar n egresos, será

M N

NIVEL ( K ) = NIVEL ( J ) +  INGRESOS (JK) -  EGRESOS (JK) * DT
 I 0 J=0
113 Modelos y Simulación

Esta ecuación recibe la denominación de "ecuación conservativa de nivel". Es conservativa en el sentido de que
en el tiempo transcurrido desde J hasta K recibe y envía material; por consiguiente, transcurrido el DT, se tendrá
la cantidad de material que se tenía en el nivel en el instante J, más los m ingresos y menos los n egresos que se
hayan producido. Los valores de los niveles se calculan siempre en el instante presente K, y una vez obtenidos,
se calculan los valores de las variables auxiliares también en K. Así como:

NIVEL ( K ) = f ( NIVEL ( J ) , FLUJO ( JK ) )

las variables auxiliares serán:

AUXILIAR ( K ) = f ( NIVEL ( K ), AUXILIAR ( K ), CONSTANTE )

Por último, se calculan los valores de las variables de flujo para el próximo período que va desde el instante
presente K hasta el posterior L. Esto es:

FLUJO ( K L ) = f ( NIVEL ( K ), AUXILIAR ( K ), CONSTANTE )

Los flujos no pueden ser función de flujos.

Luego se reacomodan los subíndices:

J
K
K
L } esto es JK <======= KL

y esto se hace para pasar al siguiente instante del modelo. Siguiendo con el ejemplo, las ecuaciones serán:

- Ecuaciones de NIVELES:

POBLAC ( K ) = POBLAC ( J ) + [ NACIM ( J K ) - MUER ( J K ) ] * DT

- Ecuaciones de AUXILIARES:

IPC ( K ) = INT / POBLAC ( K)

TNAT(K) = f1 ( IPC ( K ) )

TMORT(K) = f1 ( IPC ( K ) ) } Las funciones se determinan


más adelante
114 Modelos y Simulación

- Ecuaciones de FLUJOS:

NACIM ( K L ) = TNAT ( K ) * POBLAC ( K )

MUER ( K L ) = TMORT ( K ) * POBLAC ( K )

7.7 - DIAGRAMA GENERAL DE LA DINAMICA DE SISTEMAS

CICLO ITERATIVO Se calculan los


valores de los
CALCULO DE niveles en el
NIVELES instante K.
Se calculan los
valores de las
CALCULO DE
variables auxiliares
AUXILIARES
en K.
Se calculan los
CALCULO DE valores de las tasas
FLUJOS en el intervalo KL.

J = K
K = L

RETURN

El cálculo de niveles no necesita efectuarse en una determinada secuencia. Mientras que el cálculo de auxiliares,
muchas veces, necesita seguir un orden establecido. Por ejemplo, supóngase un flujo cuya ecuación es la
siguiente:

T1 ( K L ) = LOG ( SEN ( COS ( TG ( NIV1 ( K ) ) ) ) )

Para hacer más comprensible la expresión se utilizan auxiliares

AUX1 ( K ) = TG ( NIV1( K )

AUX2 ( K ) = COS ( AUX1 ( K) )

AUX3 ( K ) = SEN ( AUX2 ( K ) )


115 Modelos y Simulación

Finalmente, se calcula la tasa: T1 ( K L ) = LOG ( AUX3 ( K ) ), lo que hace evidente que se debe respetar el
orden de cálculo.

FORMAS DE LAS ECUACIONES

- EXPLICACIÓN PARA EL CALCULO DE AUXILIARES

En algunos casos, encontrar la ecuación que representa a una variable auxiliar no es tan sencillo. En
el ejemplo anterior no se determinaron las ecuaciones de las variables auxiliares TNAT y TMORT. TNAT
es una función de la variable IPC. En un gráfico cartesiano será: SI NO HAY EXTINCIÓN

TNAT

MAX1

MIN1
IPC

1 - Esto ocurre si se considera que la tasa de natalidad TNAT nunca será cero. Aunque el ingreso per cápita
IPC sea muy pequeño o cero, TNAT tendrá un valor mayor que cero. En el caso extremo, si IPC = 0 =====>
TNAT = MIN1, (el mínimo posible).

De igual forma, aunque el IPC sea muy elevado, TNAT no crecerá indefinidamente, sino que se
aproximará en forma asintótica a un valor máximo MAX1. Así, la ecuación para TNAT es
TNAT ( K ) = ( MAX1 - MIN1 ) * ( 1 - e ^ ( - IPC ( K ) ) ) + MIN1

donde MAX1 y MIN1 son constantes.

2 - Si en cambio consideramos que la tasa de natalidad puede ser igual a cero

SI HAY EXTINCIÓN

TNAT

MAX1
TNAT ( K ) = MAX1 * ( 1 - e ^ ( - IPC ( K ) ) )

IPC
116 Modelos y Simulación

Si IPC = 0 entonces e IPC (K) = 1 de lo que resulta MAX1 * ( 1 - 1 ) = 0, la TNAT = 0

La tasa de mortalidad TMORT también es una función de la variable IPC. Su gráfica será una curva
como muestra la siguiente figura. La ecuación para TMORT es

TMORT ( K ) = ( MAX2 - MIN2 ) * ( e^ ( - IPC ( K ) ) ) ) + MIN2

TMORT

MAX1

MIN1
IPC

Estudiemos ahora el comportamiento de estas curvas, los valores que asume. Tomemos la curva de TNAT. Si la
ecuación para TNAT fuera:

TNAT ( K ) = MAX1 * ( 1 - e ^ ( - IPC ( K ) ) )


si IPC (K) = 0 entonces TNAT ( K) = 0

si IPC (K)  entonces TNAT ( K) MAX1

Cuando IPC tiende a , TNAT tiende a MAX1, que es el comportamiento que deseamos. pero cuando
TNAT es 0, TNAT debería ser igual a MIN1, por lo tanto, esta ecuación no es correcta para la curva.

Si sumamos MIN1 tenemos que:

TNAT ( K ) = MAX1 * ( 1 - e ^ ( - IPC ( K ) ) ) + MIN1

si IPC (K) = 0 entonces TNAT ( K) = MIN1

si IPC (K)  entonces TNAT ( K) MAX1 + MIN1

Cuando IPC tiende a , TNAT debería tender a MAX1, pero no es así. Tampoco esta ecuación es la que
corresponde. Probamos entonces con la siguiente:

TNAT ( K ) = MAX1 - MIN1 ) * ( 1 - e ^ ( - IPC ( K ) ) ) + MIN1


117 Modelos y Simulación

si IPC (K) = 0 entonces TNAT ( K) = MIN1

si IPC (K)  entonces TNAT ( K) MAX1

Este es el valor correcto para TNAT. Empleando un razonamiento similar se puede obtener la ecuación de
TMORT.

En general, las ecuaciones utilizadas para TNAT y TMORT son válidas para el cálculo de auxiliares cuyo
comportamiento es similar al representado por las curvas. Pero existen otras funciones:
y = ln ( x ), y = arctg ( x ) , etc

que, en cierto casos se asemejan más al comportamiento deseado. Su investigación y posterior utilización
quedan libradas a las inquietudes propias de cada uno.

EJEMPLO 4: Se trata de estudiar la conservación de una determinada población de ballenas sometida a un


proceso de extinción importante por acción de la caza. La evolución de dicha población de ballenas depende de
los nacimientos, las muertes naturales y las muertes por caza. Confeccionar el diagrama de causalidad, el
diagrama de Forrester y definir las ecuaciones de cálculo.

Diagrama de Causalidad:

. MUERTES
+ NATURALES

NACIMIENTOS .
+ -
- +

POBLACION
-
-
+ +
. MUERTES
POR CAZA

.
118 Modelos y Simulación

Diagrama de Forrester:

TN
POBLAC ... población - NIVEL

NACIM NACIM...... nacimientos - FLUJO

MUER-N.... muertes naturales - FLUJO


POBLAC
MUER-C ... muertes por caza - FLUJO

TNAT......... tasa de natalidad - AUXILIAR


MUER-C MUER-N
TM-N ........ tasa [Link] - AUXILIAR
TM-N
TM-C ........ tasa [Link] - EXOGENA

TM-C

ECUACIONES DE CÁLCULO:

- Ecuaciones de NIVELES:

POBLAC ( K ) = POBLAC ( J ) + [ NAC ( J K ) - MUER-N ( J K ) - MUER-C ( J K )] * DT

- Ecuaciones de AUXILIARES:

TN ( K ) = MAX1 * (1 - E ^ ( - POBLAC ( K ) ) )

TM-N ( K ) = MAX2 * (1 - e ^ ( - POBLAC ( K ) ) )

- Ecuaciones de FLUJOS:

NACIM ( KL ) = POBLAC ( K ) * TN ( K )

MUER-N ( K L ) = POBLAC ( K ) * TM-N ( K )

MUER-C ( K L ) = POBLAC ( K ) * TM-C


119 Modelos y Simulación

TN TM-N

MAX1 MAX2

POBLAC. POBLAC.

7.8 - DEMORAS

En el estudio de los sistemas dinámicos la consideración del tiempo esencial; la evolución de los sistemas
dinámicos discurre en el tiempo. Una característica importante que debe considerarse en el estudio de los
sistemas dinámicos es la demora que se produce en la transmisión de la información o de los materiales.

Es decir, al construir el diagrama causal de un sistema debe considerarse que la relación causal que liga a dos
variables puede implicar una transmisión para la que se requiera el transcurso de un cierto tiempo. Se está
entonces en presencia de una demora.

De hecho, los retrasos se producen en cualquier caracterización del mundo real. Por ejemplo, la gente basa
normalmente sus decisiones en la percepción que tiene del mundo, y no en el estado real del mismo. Por otra
parte, una vez tomada una decisión, debe transcurrir algún tiempo hasta que se observen los efectos de dicha
decisión.

Precio de las manzanas

Número de man-
zanas vendidas

Supóngase que en un instante determinado desciende de una forma significativa el precio de un producto del
mercado, las manzanas por ejemplo. Como resultado de esta disminución de precio el número de manzanas
vendidas aumenta, sin embargo, el número de manzanas vendidas no responde de una manera instantánea a
la variación del precio, sino que más bien sucede algo parecido a lo que se indica en la figura.
120 Modelos y Simulación
se remiten
500 cartas

envío de una
carta recepción de recepción de
la carta las cartas

t
t

(a)-Demora de un acontecimiento aislado (b)-Demora de acontecimientos agregados

Se justifica la forma de la curva considerando que la percepción por parte de los compradores de la disminución
del precio de las manzanas requiere un cierto tiempo, que hace que haya una demora entre la disminución del
precio de las manzanas y el aumento de las ventas de las mismas.

TIEMPO MEDIO
EN LOS
ENVIO DE BUZONES
CARTAS

CARTAS EN
BUZONES
DEL CORREO TIEMPO MEDIO

EN TRANSPORTE
TRANSPORTE

CARTAS EN
TRANSPORTE TIEMPO MEDIO
EN REPARTO

REPARTO

CARTAS EN
REPARTO

ENTREGA
121 Modelos y Simulación

Para un comprador aislado en el mercado, la demora consiste en el tiempo que tarda en llegarle la noticia de la
reducción del precio de las manzanas. Sin embargo, para variables agregadas, que son las que aquí interesan,
las demoras producen ajustes graduales entre las variables relacionadas.

Por ejemplo, la figura (a) muestra la demora que se presenta en la recepción de una carta aislada, mientras que
en la figura (b) se tiene la demora que se produce en la distribución de un número elevado de cartas. Se muestra
así el efecto de agregación de distintas demoras que da lugar a una demora común, global.

Un proceso como el de distribución de cartas puede ser modelado, con ayuda de TASAS y de NIVELES, tal como
se indica en el siguiente diagrama. Se tiene así un ejemplo del bloque operacional que se denomina " demora
" (DELAY), en dinámica de sistemas.

Estos ejemplos muestran que una demora implica siempre la realización de una acumulación del material o de
la información que se demora; por ejemplo, las cartas se acumulan en alguna parte entre el instante en que son
depositadas en el buzan del correo y el momento en que llegan a manos del destinatario.

Por consiguiente, las demoras implican la aparición de niveles adicionales en la construcción del modelo. Según
se trate de flujo de transmisión de materiales o de información, las demoras pueden ser también de materiales
o de información.

7.8.1 - DEMORAS EN LAS TRANSMISIONES DE MATERIALES

Las demoras en la transmisión de materiales, o simplemente demoras de materiales, se producen cuando


existen elementos en el sistema que almacenan el material que fluye por el mismo. Así, el "nivel de demora" se
utiliza cuando se requiere que transcurra un determinado periodo de tiempo para que el material pase de un
nivel a otro, o de un nivel al sumidero.

Por ejemplo, en una fábrica la materia prima


se transforma los productos en stock a través
de un proceso de producción. Pero, para que
esto suceda es necesario que transcurra un DT
MATERIA
cierto intervalo de tiempo DT.
PRIMA

PRODUCC

STOCK
122 Modelos y Simulación

DT = 1 AÑO
Este diagrama puede simplificarse de la siguiente forma:

INGRESO

DT
[Link]
INGRESO

1RO. a 2DO.

DT
ESCUELA
[Link]
PRIMARIA

2DO. a 3RO
EGRESO

3ER..GRADO

DT
7MO. GRADO DEM

EGRESO

El diagrama representa una demora de material de "primer orden". El orden de la demora viene dado por el
número de niveles necesarios para la simulación. La demora se produce mediante la acción combinada del nivel
y de la tasa situados en el interior del recuadro. Supóngase que ingresan 100 alumnos, al hacer el análisis de
un impulso se obtienen los siguientes valores:

DT INGR ESCPRIM EGR  EGR


0 -- 0 -- --
100 -- 0 0
1 -- 100 -- --
0 -- 14,29 14,29
2 -- 85,71 -- --
0 -- 12,24 26,53
3 -- 73,47 -- --
0 -- 10,50 37,03
123 Modelos y Simulación

4 -- 62,97 -- --
0 -- 9 46,03
5 -- 53,97 -- --
0 -- 7,71 53,74
6 -- 46,26 -- --
0 -- 6,61 60,35
7 -- 39,65 -- --
0 -- 5,66 66,01
8 -- 33,99 -- --
0 -- 4,86 70,87

Analicemos ahora qué sucede con una demora de “tercer orden”. El diagrama correspondiente y sus ecuaciones
se muestran a continuación. Las ecuaciones son:

Diagrama de Forrester:

INGRESO

ESCPRIM1
DEM

3
X1

ESCPRIM2
DEM

3
X2

ESCPRIM3
DEM

EGRESO 3
124 Modelos y Simulación

El símbolo que se utiliza para las demoras de material es el "nivel de demora", y es el siguiente:

FLUJO DE
INGRESO

NIVEL DE
D = Demora DEMORA

D FLUJO DE DEMORA
EGRESO TOTAL
cantidad real de
DT de la demora

La ecuación para el flujo de EGRESO de un NIVEL DE DEMORA se expresa de la siguiente forma:

EGR(KL) = DELAY...(NIVDEM, DEMTOT)

Volviendo a los diagramas de Forrester anteriores para el ejemplo de la ESCUELA PRIMARIA se grafica como
sigue:

INGRESO

ESCUELA
PRIMARIA

D EGRESO 7

7.8.2 - DEMORAS EN LA TRANSMISIÓN DE LA INFORMACIÓN

Las demoras en la transmisión de la información resultan de la necesidad de conservar y almacenar información


del sistema antes de proceder a una toma de decisión. De esta naturaleza es la demora considerada más arriba
en el problema del precio de las manzanas. De hecho, las demoras en la transmisión de información actúan
como filtros "alisadores" (smoothing) que son capaces de alisar los picos que presentan la evolución de una
125 Modelos y Simulación

variable tomando un valor promedio de la misma. En el proceso de promediar se ponderan los datos disponibles
de manera que los más recientes influyan en el promedio de forma más significativa que los más antiguos.

Existen diferentes tipos de promedios:

x i
- Promedio simple o media: X  i 1

que se utiliza cuando la distribución es “monomodal”

x i * fi
- Promedio ponderado: X  i 1
n

- Otros.

Forrester desarrolló otro tipo de promedio y es el siguiente:

- PROMEDIO EXPONENCIALMENTE PONDERADO:

Para una variable V con valores Vi ( i = 0, 1, 2, . . . , n) se tiene

Sea Vi el valor que realmente se obtuvo en el tiempo i

Sea Ei + 1 el valor estimado para el tiempo i + 1.

Entonces para  tal que 0      1 , se tiene que

E i+1 =  V i + ( 1 - ) E i
De esta forma se calcula el nuevo promedio a partir del nuevo valor de la variable V y el promedio anterior.

El valor  se elige entre 0 y 1 de acuerdo con lo siguiente:

si  = 0 ==> todo presente es absurdo.

 < 1/2 ==> mayor peso al pasado que al presente.

 = 1/2 ==> se pondera de igual forma al pasado y al presente.

 > 1/2 ==> mayor peso al presente que al pasado.


126 Modelos y Simulación

 = 1 ==> todo pasado es absurdo.

Considérese el siguiente ejemplo, donde para mantener el stock se hacen compras teniendo en cuenta el stock
de los últimos 6 meses y las ventas de los últimos 6 meses.

DEMORA

COMPRAS

VTAS-PROM STOCK STOCK-PROM

VENTAS

Para calcular el nivel de demora de información tendremos dos opciones según provenga de un nivel o de un
flujo, de este modo serán:

Si proviene de un nivel:

NIVEL PROMEDIO (K) = ALFA * NIVEL (J) + (1 - ALFA) * NIVEL PROMEDIO (J)

Si proviene de un flujo:

FLUJO PROMEDIO (K) = ALFA * FLUJO (J K) + (1 - ALFA) * FLUJO PROMEDIO (J)

Para nuestro ejemplo, las compras son función del stock promedio que es:

STOCK-PROM ( K ) = ALFA * STOCK ( J ) + ( 1 - ALFA ) * STOCK-PROM ( J )

Las ventas promedios están en función de las ventas anteriores; así, teniendo en cuenta la historia, las ventas
promedio son:

VTAS-PROM ( K ) = ALFA * VENTAS ( J K ) + ( 1 - ALFA ) * VTAS-PROM ( J )

Tanto VTAS-PROM como STOCK-PROM son niveles que reciben y brindan información.

En general, cualquier promedio de valores ser :

VPROM (K) = ALFA *   V(J)


V ( JK )
+ ( 1 - ALFA ) * VPROM ( J )

(Según sea V un nivel o un flujo)


127 Modelos y Simulación

Consideraciones a tener en cuenta:

1. Las demoras de información reciben el nombre de promedios.


2. Los promedios son niveles por lo tanto se calculan en K
3. Se puede promediar información proveniente de niveles o de flujos.
4. Los promedios son niveles que reciben y brinda información.
5. A pesar de ser niveles no se pueden expresar con ecuaciones conservativas de nivel, porque no existen
ingresos ni egresos de material, por lo que las definimos como auxiliares del sistema.

Supóngase una variable V que sigue el comportamiento indicado en el gráfico siguiente:

45 V

DT V
40
0 37
1 25
2 12
35
3 43
4 8
5 38
6 14
30
7 22
8 26
DT 9 16
25
0 1 2 3 4 5 6 7 8 9 10 10 31

Los promedios, obtenidos a partir de esos valores de V, para distintos valores de à se muestran en la tabla
siguiente:

+ pasado + pasado pasado = presente + presente + presente

 = 0.1  = 0.25  = 0.1  = 0.75  = 0.9


DT V V1 V2 V3 V4 V5

0 37 37 37 37 37 37

1 25 35.8 34 31 28 26.2

2 12 33.4 28.5 21.5 16 13.4

3 43 34.4 32.1 32.2 36.2 40


128 Modelos y Simulación

4 8 31.8 26.1 20.1 15 11.2

5 38 32.4 29.1 29 32.2 35.3

6 14 30.6 25.3 21.5 18.6 16.1

7 22 29.7 24.5 21.8 21.2 21.4

8 26 29.3 24.9 23.9 24.8 25.5

9 16 28 22.7 20 18.2 17

10 31 28.3 24.8 25.5 27.8 29.6

La información empleada normalmente para tomar decisiones conlleva irregularidades debidos a errores,
comportamientos individuales o en grupo, períodos no uniformes, intermitencias, etc. estas irregularidades
deben filtrarse para determinar las variaciones significativas subyacentes. El proceso se denomina proceso de
promedio o alisado. Un proceso de alisado elimina el ruido de alta frecuencia e introduce demoras en la
transmisión de información. En todo proceso de alisado debe establecerse un compromiso entre un alisado
intenso para reducir el ruido no significativo, a costo de una demora importante, o un alisado menor, con lo que
se arrastra aún un cierto ruido, pero un tiempo de demora menor.

BIBLIOGRAFIA CONSULTADA

- Javier Arancil, Dinámica de Sistemas


- Javier Arancil, Máquinas y modelos

También podría gustarte