Vous êtes sur la page 1sur 137

UNIVERSIDAD NACIONAL ABIERTA

VICERRECTORADO ACADÉMICO
AREA: INGENIERÍA / CARRERA: INGENIERÍA DE SISTEMAS

MATERIAL INSTRUCCIONAL DE APOYO

ASIGNATURA: SIMULACIÓN DE SISTEMAS


Código: 337
U.C.: 4
CARRERA: Ingeniería de Sistemas
Código: 236

SEMESTRE: VII

AUTOR: Lic María Eugenia Mazzei (Especialista en contenido)


Ing. Javier Torrealba (Especialista en contenido)

ASESORES: Ing. Judit Carvallo (Coordinadora de la carrera)

DISEÑO ACADÉMICO Dra. Egleé Arellano (Diseñadora de Instrucción)

Caracas, Marzo 2006


Simulación de Sistemas - 337

Tabla de Contenido
Página
II. Introducción……………………………………………………………………. 4
III. Objetivo del curso……………………………………………………………... 6
IV. Contenido………………………………………………………………………... 6
Módulo I: Fundamentos de Modelos Matemáticos………………………….. 6
Objetivo…………………………………………………………………………… 6
Estructura………………………………………………………………………… 6
Unidad 1: Modelos Matemáticos…………………………………………….. 7
Objetivo…………………………………………………………………….. 7
Contenido…………………………………………………………………... 7
Recomendaciones para el estudio del contenido de la Unidad……… 8
Sistema…………………………………………………………………….. 9
Modelo……………………………………………………………………… 10
Modelo Matemático……………………………………………………….. 15
Variable de estado………………………………………………………... 15
Formulación de un modelo matemático………………………………... 17
Ejercicios de autoevaluación…………………………………………….. 20
Respuestas a los ejercicios de autoevaluación……………………….. 22
Unidad 2: Ecuaciones de Diferencias Finitas……………………………..... 24
Objetivo……………………………………………………………………. 24
Contenido…………………………………………………………………. 24
Recomendaciones para el estudio del contenido de la Unidad……… 25
Diferencias Finitas……………………………………………………….... 26
Ecuaciones de diferencias finitas de primer orden……………………. 27
Ecuaciones de diferencia lineal de primer orden ……………………... 29
Sucesiones aritméticas y geométricas………………………………….. 30
Soluciones de las ecuaciones diferenciales de primer orden………... 31
Estabilidad…………………………………………………………………. 36
Ejercicios de autoevaluación…………………………………………….. 38
Respuestas a los ejercicios de autoevaluación……………………….. 38
Módulo II: Aplicación de Métodos Numéricos en Sistemas Continuos….. 41
Objetivo………………………………………………………………………….. 41
Estructura……………………………………………………………………...... 41
Unidad 3: Método Numérico de Euler para Resolución de Ecuaciones 42
Diferenciales………………………………………………………..
Objetivo……………………………………………………………………. 42
Contenido…………………………………………………………………. 42
Recomendaciones para el estudio del contenido de la Unidad…….. 43
Método de Euler………………………………………………………….. 44
Ejercicios de autoevaluación……………………………………………. 48
Respuestas a ejercicios de autoevaluación…………………………… 48
Unidad 4: Método Numérico de Runge-Kutta para la Resolución de 50
Ecuaciones Diferenciales…………………………………………

2
Simulación de Sistemas - 337

Objetivo……………………………………………………………………. 50
Contenido…………………………………………………………………. 50
Recomendaciones para el estudio del contenido de la Unidad ……. 51
Método de Runge-Kutta de Cuarto Orden……………………………… 52
Ejercicios de autoevaluación……….……………………………………. 56
Respuestas a ejercicios de autoevaluación…………………………… 56
Unidad 5: Método Numéricos de Varios Pasos para la Resolución de 58
Ecuaciones Diferenciales
Objetivo…………………………………………………………………….. 58
Contenido…………………………………………………………………... 58
Recomendaciones para el estudio del contenido de la Unidad……… 59
Métodos Numéricos de Varios Pasos …………………………………. 60
Ejercicios de autoevaluación…………………………………………….. 64
Respuestas a Ejercicios de autoevaluación…………………………... 65
Módulo III: Simulación de Sistemas Estocásticos………………............... 73
Objetivo…………………………………………………………………………. 73
Estructura………………………………………………………………………. 73
Unidad 6: Introducción a la Simulación……………………………………. 74
Objetivo……………………………………………………………………. 74
Contenido…………………………………………………………………... 74
Recomendaciones para el estudio del contenido de la Unidad …...... 75
Modelo de Simulación………………………………………………….... 76
El Método de Monte Carlo……………………………….………………. 77
Métodos de Generación de números seudoaleatorios……………….. 83
Pruebas Estadísticas……………………………………………………... 86
Generación de Variables Aleatorias Discretas y Continuas…………. 86
Ejercicios de autoevaluación…………………………………………….. 100
Respuestas a Ejercicios de autoevaluación…………………………... 102
Unidad 7 Desarrollo del Modelo de Simulación………………………….. 107
Objetivo……………………………………………………………………. 107
Contenido………………………………………………………………….. 107
Recomendaciones para el estudio del contenido de la Unidad……… 108
Simulación Estocástica …………………………………………………... 110
Tipos de Simulación………………………………………………………. 111
Tipificación de Datos y Variables ……………………………………….. 115
Selección del Lenguaje de Simulación…………………………………. 124
Modelo de Simulación…………………………………………………….. 128
Validación………………………………………………………………….. 130
Ejercicios de autoevaluación……………………………………………. 131
Respuestas a Ejercicios de autoevaluación………………………….. 132
V.Bibliografía…………………………………………………………………….... 135
Selección de Lecturas 136

3
Simulación de Sistemas - 337

II. Introducción

El presente material ha sido diseñado con el propósito de reforzar los conocimientos


aprendidos a través del texto. Contiene aspectos fundamentales ilustrados con
ejemplos que refuerzan los conocimientos, además de actividades complementarias
como ejercicios de autoevaluación, ampliación de conocimientos y búsqueda en la
Web. Al final de este material se adjunta una selección de lecturas de varios
autores, relacionadas con la simulación estocástica, con el fin de apoyar en la
consolidación de los conocimientos en este tema.

El contenido está organizado siguiendo la estructura del curso, de la siguiente


manera:

Módulo I Fundamentos de Modelos Matemáticos


Módulo II Aplicación de Métodos Numéricos en Sistemas Continuos
Módulo III Simulación de Sistemas Estocásticos

Para el buen uso de este material se sugiere tener a mano el Plan de Curso y el
libro UNA, así como seguir fielmente las recomendaciones aquí expuestas.

4
Simulación de Sistemas - 337

Iconos empleados en el material instruccional

A lo largo de la lectura de este material encontrará diversos íconos, cuyo significado


se explica a continuación.

Ampliación de conocimientos: Está dirigido al estudiante que


desea profundizar más en sus conocimientos en determinado
tema.

Atención: Se presenta cuando se quiere hacer una aclaratoria,


una advertencia o una reflexión sobre algún aspecto del
contenido.

Caso de estudio: Es la exposición de una situación muy similar a


la realidad a la cual se le dará solución.

Consulta en la Web: Indica referencias a páginas Web



Consulta en otros libros: Se refiere a un llamado a consulta en
libros que no figuran como textos de carácter obligatorio para el
curso.

Ejercicios y actividades propuestas: son ejercicios o


actividades sugeridas a manera de práctica sobre algún tema
de la unidad.

Ejercicios de autoevaluación: Ejercicios que debe realizar el


estudiante y posteriormente verificar contra los resultados aquí
presentados.

Ejemplo: Es la exposición de un caso alusivo al tema en


cuestión y su resolución.

Recordatorio: Indica algún aspecto a enfatizar, relacionado con


los conocimientos adquiridos previamente por el estudiante.

5
Simulación de Sistemas - 337

III. Objetivo del Curso

Formular modelos de simulación de sistemas utilizando un enfoque lógico y

crítico.

IV. Contenido

MÓDULO I

Fundamentos de Modelos Matemáticos

En este primer módulo se desarrollará el concepto de modelo, su uso y en


particular el problema de síntesis de modelos matemáticos y de sistemas
dinámicos en función de variables de estado. También se abordará el tema
sobre ecuaciones de diferencias finitas a partir de el cual se introduce el método
numérico de representación de modelos.

Objetivo del Módulo I:

Resolver problemas relacionados con el comportamiento de sistemas descritos


en términos de ecuaciones de estado, bajo un enfoque lógico y crítico.

Estructura del Módulo I

Unidad 1: Modelos Matemáticos.

Unidad 2: Ecuaciones de Diferencias Finitas.

6
Simulación de Sistemas - 337

UNIDAD 1

Modelos Matemáticos

Los modelos matemáticos son una descripción, desde el punto de vista de las
matemáticas, de un hecho o fenómeno del mundo real.

Con el contenido de esta primera Unidad se pretende que el estudiante adquiera


conocimientos y técnicas básicas para la modelación de sistemas.

Esta unidad se inicia con la definición de sistema, seguido de un marco teórico


compuesto de: concepto de modelo, características deseables en los modelos,
circunstancias en las que debemos modelar, limitaciones de los modelos y tipos de
modelos. Donde se pretende obtener las técnicas para la descripción de los
sistemas a través de los modelos. Seguidamente, como punto final, nos
enfocaremos en los modelos matemáticos y las variables de estado, con el objeto
de orientarnos hacia la formulación de los modelos matemáticos.

Se sugiere leer las recomendaciones para el estudio del contenido de la unidad, y


de esta forma obtener una mejor comprensión del mismo.

Objetivo de la Unidad 1
Resolver problemas inherentes a sistemas cuyo comportamiento se describe a
través de ecuaciones de estado.

Contenido de la Unidad 1: Sistemas. Modelos. Tipos. Modelos matemáticos


y variables de estado. Determinación de los estados de un sistema.
Formulación del modelo matemático

7
Simulación de Sistemas - 337

Para llevar a cabo el estudio de esta unidad, presentaremos algunas


recomendaciones que incluyen un conjunto de actividades cuya realización se
recomienda hacer antes de proseguir a analizar los ejemplos aquí presentados.

Recomendaciones para el estudio del contenido de la unidad.

• Repasar la teoría y conceptos sobre sistema y modelo.


• Repasar la teoría sobre ecuaciones diferenciales.
• Estudiar la Unidad 1 del libro.
• Estudiar el Capítulo I titulado “Generalidades del Modelo” de la selección
de lecturas anexa.
• Resolver los problemas propuestos y los ejercicios de autoevaluación del
libro.
• Consultar otras fuentes bibliográficas.

Al concluir el estudio de esta unidad en el libro, el estudiante deberá estar


capacitado para responder las siguientes preguntas:

• ¿Qué es un sistema?
• ¿Qué es un modelo?
• ¿Cuáles son los tipos de modelos?
• ¿Para qué sirve un modelo?
• ¿Qué es un experimento?

8
Simulación de Sistemas - 337

Sistema

A continuación se mencionan algunos conceptos de sistema:

• Conjunto de elementos interrelacionados entre sí que actúan juntos


para lograr un objetivo común

• Porción de la realidad que aislamos para “estudiarla”.

• Un sistema es una estructura dinámica de personas, objetos y


procedimientos organizados con el propósito de lograr ciertas
funciones.

Una clase particular de los sistemas, son los sistemas dinámicos, los cuales son
aquellos que evolucionan a lo largo del tiempo. Este cambio del sistema implica la
existencia de variables del sistema que cambian en el tiempo. Algunas de estas
variables pueden ser “observadas” desde su entorno, y a su vez, los cambios en las
variables del sistema son producto de la influencia de cambios ejercidos por su
entorno al sistema.

Esto da lugar a la propiedad de los sistemas (en particular de los sistemas


dinámicos) de relacionarse con su entorno. La relación con el entorno recae
naturalmente dentro de las siguientes dos categorías:

- Hay variables que son generadas por el entorno y pueden influir en el


comportamiento del sistema. Éstas son llamadas entradas del sistema.
- Hay otras variables que son determinadas por el sistema y que a su vez
influyen en el comportamiento de su entorno. Éstas son llamadas las
salidas del sistema.

En general, debemos ser capaces de asignar valores al menos a algunas de las


entradas del sistema, y observar el comportamiento del sistema mediante el
registro de las salidas resultantes (ver Figura 1.1).

Entorno

Entradas Sistema Salidas

Figura 1.1. Representación de sistema y su entorno

9
Simulación de Sistemas - 337

Otro concepto que se consideró importante es el siguiente: “un sistema es una


fuente potencial de dato”. A partir de este concepto se genera la interrogante:
¿cómo se obtienen los datos? , éstos se obtienen a través de experimentos.

Un experimento es el proceso de extracción de datos del sistema, influyendo sobre


el sistema a través de cambios en sus entradas.

También se puede mencionar que un experimento es la realización de ensayos


sobre el sistema, en la observación de las reacciones del mismo, y en la obtención
de leyes de su comportamiento, expresadas por lo general mediante lenguaje
matemático.

Algunos ejemplos de sistemas que podemos citar son los siguientes:

ƒ Sistema Social
ƒ Sistema Nervioso Central
ƒ Sistema Solar
ƒ Sistema Económico
ƒ Sistema Financiero
ƒ Sistema Ecológico

Ejercicios y actividades propuestas:

1. Sobre la base de la teoría estudiada, realice una lista de al menos 5 sistemas


que se encuentren en su entorno (comunidad, trabajo, etc.) que usted pueda
identificar.

El primer paso a dar para estudiar un sistema es elaborar un modelo.

Modelo

Al igual que sistema, podemos encontrar diferentes conceptos de modelo.


Aquí mencionamos algunos de ellos:

• Representación en pequeño de alguna cosa.

• Esquema teórico, generalmente en forma matemática, de un sistema o de


una realidad compleja, que se elabora para facilitar su comprensión y el
estudio de su comportamiento.

• Un modelo es una idealización de la realidad utilizado para plantear un


problema, normalmente desde un punto de vista matemático. Es una

10
Simulación de Sistemas - 337

representación conceptual de un proceso o sistema, con el fin de analizar


su naturaleza, desarrollar o comprobar hipótesis o supuestos y permitir
una mejor comprensión del fenómeno real al cual el modelo representa.
Otro concepto que tomaremos en cuenta es el siguiente:

• Herramienta utilizada para responder preguntas respecto al sistema sin


tener que experimentar de forma real (representación de la realidad).

A continuación un esquema que permite visualizar de donde se obtiene un


modelo:

PROCESO Objeto formal no generalizado

Porción de la realidad que


SISTEMA aislamos para estudiarla

MODELO Simplificación de la realidad


que contiene una
representación matemática de
lo que existe en el sistema

Figura 1.2. Visualización de donde se obtiene un modelo

Características deseables en los modelos:

9 Exacto (tiene pequeños errores).


9 Realista (está basado en suposiciones correctas).
9 Robusto (inmune a errores de entrada, buen desempeño).
9 Generalizable.
9 Útil.

Circunstancias en las que debemos modelar:

• El sistema real no existe.


• La realización del sistema es costosa.
• La experimentación (real) es peligrosa.
• Existe necesidad de simular.
• No hay soluciones analíticas.

11
Simulación de Sistemas - 337

Limitaciones de los modelos:

• Modelos complicados involucran muchas horas de trabajo


• Se generan resultados sub-óptimos.

Tipos de Modelos:

Existen tres tipos de modelos:

• Modelos Icónicos
• Modelos Análogos
• Modelos Simbólicos

Los Modelos Icónicos: son los modelos físicos que se asemejan al sistema real,
generalmente manejados en otra escala. Por ejemplo: Los modelos de aviones que
construyen los ingenieros y los modelos de ciudades que construyen los urbanistas.

Los Modelos Análogos: son los modelos en los que una propiedad del sistema real
se puede sustituir por una propiedad diferente que se comporta de manera similar.
Ejemplo: El mapa de carreteras es un modelo análogo del terreno correspondiente,
el velocímetro de un vehículo representa la velocidad mediante el desplazamiento
análogo de una aguja sobre una escala graduada.

Los Modelos Simbólicos: Son aquellos en los que se utiliza un conjunto de


símbolos en lugar de una entidad física para representar la realidad. Por ejemplo,
los físicos construyen modelos cuantitativos del universo y los economistas crean
modelos cuantitativos de la economía. Por el hecho de que se utilizan variables
cuantitativamente definidas e interrelacionadas por medio de ecuaciones, es
frecuente que los modelos simbólicos sean conocidos como modelos matemáticos.

La tabla que se presenta a continuación resume las características mas relevante


de cada uno de estos modelos, así como algunos ejemplos.

Tipo de Modelo Características Ejemplos

Modelo físico Tangible Modelo de un aeroplano,


Comprensión y posibilidad de modelado de una casa,
compartirlo: difícil modelo de una ciudad
Modificación y manipulación: difícil
Alcance de utilización: la más baja
Modelo análogo Intangible Mapa de carreteras,
Comprensión: más difícil velocímetro, gráfica de
Duplicación y posibilidad de compartirlo: rebanadas de pastel
más fácil
Modificación y manipulación: más fácil

12
Simulación de Sistemas - 337

Alcance de su utilización. más amplio

Modelo simbólico Intangible Modelo de simulación, modelo


Comprensión: la más difícil algebraico, modelo de hoja de
Duplicación y posibilidad de compartirlo: cálculo electrónica.
las más fáciles
Modificación y manipulación: las más
fáciles
Alcance de su utilización: el más amplio
Tabla 1.1 Tipos de Modelos

Los Modelos Simbólicos se clasifican a su vez en:

• Modelos determinísticos
• Modelos estocásticos o probabilísticos
• Modelos dinámicos
• Modelos estáticos
• Modelos continuos
• Modelos discretos

En el Capítulo I “Generalidades del Modelado”, de la selección de lecturas anexa,


encontrará los conceptos de cada uno de los tipos de modelos.

A continuación se presentan algunos ejemplos de los Modelos Simbólicos:

Ejemplo 1.1. (Modelo Estocástico)

ƒ Cuando las variables tienen valores probables: la cantidad de lluvia que


podrá caer el próximo año.

Ejemplo 1.2. (Modelos Estáticos )

ƒ Modelo Eléctrico (ley de ohm): v=R*i

ƒ Modelo Mecánico (Resorte): F=k*x

Ejemplo 1.3. (Modelo Discreto)

ƒ Modelo de producción de piezas en una empresa metal-mecánica

Ejemplo 1.4. (Modelos Dinámicos)

13
Simulación de Sistemas - 337

ƒ Si se toma en cuenta la variación del tiempo: la variación de la temperatura,


del aire durante un día.
ƒ Movimiento anual de las finanzas de una empresa.
ƒ Laboratorio de química: reacción entre elementos

Cabe destacar que además de los modelos antes mencionados, existen otros
modelos, los cuales son la combinación de dos o más modelos (modelos mixtos).
Por ejemplo los modelos dinámicos discretos y los modelos dinámicos continuos,
donde el tiempo puede ser una variable discreta o continua respectivamente.

Estos últimos modelos, los modelos dinámicos, son de mayor interés en el


estudio de esta unidad, por tal razón nos enfocaremos más en ellos.
Una de las características principales de los modelos dinámicos, es el cambio que
presentan las variables en función del tiempo.

Perturbaciones

Variables de Variables de
entrada MODELO salida

Figura 1.3. Representación del modelo y su entorno


Donde:
Variables de entrada: son las variables del entorno que influyen sobre el
comportamiento del sistema.

Variables de salida: son las variables del sistema que son observadas o modifican
el entorno.

Perturbaciones: tienen inferencia sobre el sistema pero no pueden ser


manipuladas. (Ejemplo: La lluvia).

A continuación se expone lo que representa básicamente la estructura de un


modelo dinámico.

Estructura del Modelo


El modelo se puede escribir de tal forma

E = f(xi, yi) (1.1)

14
Simulación de Sistemas - 337

Donde:
E: Es el efecto del comportamiento del sistema
xi: Son las variables y parámetros que nosotros podemos controlar
yi: Las variables y los parámetros que nosotros no podemos controlar
f: Es la función con la cual relacionamos xi con yi con el fin de modificar o
dar origen a E

Un modelo siempre es una simplificación de la realidad.


Debe incorporar al modelo suficientes detalles para que:
- El resultado satisfaga sus necesidades
- Sea consistente con los datos que tiene usted a su alcance, y
- Pueda ser analizado en el tiempo con el que usted cuenta para ese
propósito

Modelos Matemáticos

Para efectuar el análisis de un sistema, es necesario obtener un modelo


matemático que lo represente. El modelo matemático equivale a una ecuación
matemática o un conjunto de ellas sobre la base de las cuales podemos conocer el
comportamiento del sistema.

Es necesario comentar que el modelo matemático que se desarrolla a partir de un


sistema no es único, debido a lo cual se pueden lograr representaciones diferentes
del mismo proceso.

Estas diferentes representaciones no contradicen una a la otra. Ambas contienen


información complementaria por lo que se debe encontrar aquella que proporcione
la información de interés para cada problema en particular.
Dentro de este contexto, por lo general se emplea la representación en "variables de
estado" .

Variables de Estado

Son variables matemáticas auxiliares que permiten representar el comportamiento


del sistema mediante ecuaciones.

También suelen definirse las variables de estado como cualquier conjunto de


variables que describa el comportamiento del sistema, siempre y cuando ese
conjunto sea del menor tamaño posible.

Cualquiera que sea la interpretación que se adopte debe tenerse presente que:

ƒ Las variables de estado pueden tener o no sentido físico


ƒ Las variables de estado pueden o no ser medibles

15
Simulación de Sistemas - 337

ƒ Para un mismo sistema dinámico las variables de estado no son únicas; de


hecho, se pueden definir conjuntos de variables que sirvan como variable de
estado.

Como se pudo observar en la figura1.1., la relación entre el sistema y su entorno,


posee dos tipos de interacciones: la influencia del entorno al sistema, dada por las
variables de entrada cada una de las cuales son funciones temporales
(generalmente denominadas con la letra u); y cómo el sistema influye sobre su
entorno, dada por las variables de salida, que también serán funciones temporales
(y generalmente denominadas con la letra y). Los sistemas así representados con
sus entradas y salidas se denominan tradicionalmente modelos de “caja negra”:

entradas salidas
Sistema
u1 y1
u2 y2
:
um yp

Figura 1.4. Representación en “caja negra” del sistema


Existe una relación causa-efecto entre las salidas y las entradas del sistema. Para
calcular cualquiera de las salidas para todo tiempo t ≥ t0 debemos conocer las
entradas para t ≥ t0, y también el efecto acumulado de cualquier entrada anterior. Un
enfoque para construir un modelo matemático es encontrar ecuaciones que
relacionen las salidas directamente a sus entradas mediante la eliminación de todas
las variables que son internas al sistema. De esta manera, tal vez, estemos
potencialmente borrando del modelo aspectos importantes del comportamiento del
sistema

Otra técnica de modelado es introducir un conjunto de variables de estado. los


cuales generalmente difieren del conjunto de salidas, pero que pueden incluir una o
varias de ellas. Las variables de estado deben ser elegidas de manera tal que el
conocimiento de sus valores a cualquier tiempo de referencia t0 en conjunto con el
conocimiento de las entradas para todo t ≥ t0 son suficientes para determinar las
salidas y las variables de estado del sistema para todo t ≥ t0. Un requerimiento
adicional sobre estas variables de estado es que las mismas deben ser
independientes entre sí; esto es, no puede ser posible expresar una variable de
estado como una función algebraica de las restantes. Esta representación es
particularmente conveniente para trabajar con sistemas MIMO (multiple-input,
multiple-output = sistemas de múltiples variables de entradas y múltiples variables

16
Simulación de Sistemas - 337

de salida), y además para obtener soluciones a través del computador. La figura


siguiente representa al sistema incluyendo las variables de estado denominadas
x1(t), x2(t), ... xn(t).

entradas salidas
Sistema
u1 x1 y1
u2 x2 y2
: :
um xn yp

Figura 1.5. Representación general del sistema mostrando

Formulación de un modelo matemático

El modelo matemático está constituido por relaciones matemáticas (ecuaciones y


desigualdades) establecidas en términos de variables, que representan la esencia
del problema que se pretende solucionar.

Veamos algunos ejemplos sencillos que nos permitirá ilustrar la formulación de un


modela matemático.

Ejemplo 1.5. (Modelo Matemático)

Si se encuentra usted actualmente durante las horas de la mañana en Caracas,


Dtto Capital, y desea estar en Maracaibo, Edo. Zulia, a la hora de la cena, tal vez
le interese estimar el tiempo que tendrá que viajar en su automóvil desde Caracas
hasta Maracaibo. Para eso podría consultar la distancia en kilómetros en un mapa o
por Internet, la cual dividiría después entre su velocidad promedio típica. En este
caso, su modelo sería:

T=D/S (1.2)

donde T= tiempo, D= distancia, y S=velocidad

Sin duda este modelo es útil. No obstante, advierte que es una simplificación de la
realidad. Por que se han pasado por alto muchos factores que podrían influir en la
duración de su viaje. No se ha molestado usted en incluir retrasos por posibles
reparaciones en el camino, las condiciones del tiempo, escalas para abastecerse de
gasolina o para ir al sanitario, y así sucesivamente. Sin embargo, si planea salir a

17
Simulación de Sistemas - 337

las 9 a.m. y T= 8 horas, entonces el modelo es bastante bueno para sus


propósitos. Es decir, podrá sentirse seguro que llegará a Maracaibo a tiempo para
la cena.

Sin embargo, supongamos que usted no podrá salir sino hasta el mediodía y tiene
una reservación en un restaurante de lujo para reunirse con una persona muy
importante a las 07:30 p.m. En ese caso podría considerar que este modelo es
demasiado simple y sentiría más confianza si lo refinara un poco para incluir otros
detalles que lo acercaran más a la realidad. Por ejemplo, podría añadir una
expresión que representara sus escalas a lo largo del camino. Entonces el modelo
sería:

T= D/S + (R*N) (1.3)

donde R es el tiempo promedio que permanecen en cada escala de su viaje, y N


es el número de veces que piensa detenerse.

Usted puede seguir mejorando su modelo si le incorpora más factores. Algunos de


esos factores podrían ser estimaciones o aproximaciones.

Ejemplo 1.5. (Modelo Matemático Lotka- Volterra)

Modelo matemático Lotka-Volterra.

El siguiente ejemplo está enmarcado en el modelo del matemático italiano Volterra,


interesado por la ecología matemática y creador de la teoría determinista
sistematizada de la dinámica de poblaciones.

• Oscilaciones en las relaciones presa-depredador de Volterra.

Para iniciar su investigación matemática estableció ciertas premisas:


ƒ Que la especie depredadora se alimentaba exclusivamente de la especie
presa, mientras que ésta se alimentaba de un recurso que se encontraba en
el hábitat en grandes cantidades.
ƒ Que ambas poblaciones eran homogéneas, es decir, no intervenían factores
como la edad o el sexo.
ƒ Que, así mismo, el medio era homogéneo, es decir, que las características
físicas, biológicas entre otras, eran las mismas en el hábitat.
ƒ Y que los encuentros de la especie depredadora con las especie presa eran
igualmente probables.

Siendo así, se encontró con que solo existían dos variables: el tamaño poblacional
de la especie depredadora y el de la especie presa. Así mismo, supuso que ambos

18
Simulación de Sistemas - 337

tamaños poblacionales dependían exclusivamente del tiempo y no de alguna otra


variable especial.

Determinó que si no existiesen depredadores, la población de presas crecería


malthusianamente , es decir:

x& (t ) = ax (t ) (1.4)
mientras que si no hubiese presas, la especie depredadora decrecería, también
siguiendo un modelo malthusiano, es decir:

y& (t ) = −cy (t ) (1.5)

Ahora bien, dado que la interacción beneficia a la especie depredadora y perjudica a


la presa, él supuso que seria necesario modificar a los depredadores en un término
que diera cuenta del perjuicio para una y del beneficio para la otra, lo que tendría
que ser lo siguiente:

x& (t ) = ax (t ) − [término de interacción] (1.6)

y& (t ) = −cy (t ) + [término de interacción] (1.7)

Luego, Volterra se enfrenta al problema de encontrar una forma analítica para cada
termino que aparece entre corchetes y, basándose en el siguiente argumento:
mientras más encuentros por unidad de tiempo haya entre individuos de la especie
presa con la especie depredadora, mayor ha de ser el perjuicio de unos y el
beneficio de otros; bajo este argumento, Volterra llegó a la conclusión de que el
numero de encuentros por unidad de tiempo entre presas y depredadores, es
proporcional al producto algebraico de sus respectivas densidades poblacionales,
incorporándose esto en las dos ecuaciones anteriores:

x& (t ) = ax (t ) − bx (t ) y (t ) (1.8)

y& (t ) = −cy (t ) + dx (t ) y (t ) (1.9)

[Número de encuentros por u. de t.] x(t)y(t)

donde a es la tasa instantánea de aumento de presas en ausencia de


depredadores; mientras que c es la tasa instantánea per capita de disminución de
depredadores en el caso de ausencia de presas. Originalmente Volterra interpreto
esto diciendo que:

19
Simulación de Sistemas - 337

Los parámetros constantes a y c representan la razón de nacimiento y muerte de


las dos especies; mientras que b mide la susceptibilidad de la especie presa a la
depredación y d mide la habilidad de depredación de esta especie. Las constantes b
y d son la proporción de encuentros perjudiciales para las presas y la
correspondiente de encuentros benéficos para los depredadores, respectivamente.

Y así logró afirmar que en una interacción presa-depredador descrita en las


ecuaciones anteriores, el tamaño de la especie presa y el de la especie
depredadora, cambian periódicamente al aumentar el tiempo.

Usted puede continuar modificando este modelo si le incorpora más factores.


Algunos de esos factores podrían ser estimaciones o aproximaciones.

Ejercicios y actividades propuestas:

1. Sobre la base de la teoría estudiada, identifique y describa un sistema que se


pueda representar a través de un modelo estocástico.

2. Sobre la base de la teoría estudiada, identifique y describa un sistema que se


pueda representar a través de un modelo determinístico.

3. Un modelo económico puede ser incluido dentro de los modelos dinámicos,


basándose en esta afirmación, dado el sistema del Producto Interno Bruto (PIB)
de un país, formule el un modelo, tomando en consideración las siguientes
variables:

y(t) = PIB en el año t


c(t) = Consumo total en el año t
i(t) = Inversiones totales en el año t
g(t) = Gastos del Gobierno en el año t

Ejercicios de Autoevaluación:

1. Considere un circuito RLC simple como se muestra en la siguiente figura:

20
Simulación de Sistemas - 337

Figura 1.6. Circuito RLC

Tomando en cuenta que, por regla general, el número de variables de estado es


igual al número de almacenadores de energía del sistema, en circuitos eléctricos
estos son la cantidad de inductores o capacitores que tiene el circuito. Describa
para este sistema un modelo representado por variables de estado.

2. El Modelo de Richardson, que toma el nombre del meteorólogo británico que lo


generó, tiene su nacimiento en la explicación de la carrera de armamentos, y
consiste en un modelo dinámico. El modelo parte de los siguientes factores:
a. La nación X se siente amenazada por las armas de su adversario, la nación
Y, por lo tanto, sigue de cerca la evolución armamentística de éste.
b. Cuanto mayor sea el número de armas que posee Y, mayor será el número
de armas que X querrá conseguir.
c. Ahora bien, la nación X también tiene que dedicar su presupuesto a las
necesidades sociales básicas.
d. Cuanto mayor sea el gasto en armas de X, menos armas suplementarias
podrá adquirir, ya que no puede extender indefinidamente los gastos en
esta partida.
e. La misma lógica que es aplicable a la nación X es aplicable a la nación Y.

Los elementos del modelo de Richardson, se visualizan en la siguiente tabla (tabla


1.2).

21
Simulación de Sistemas - 337

Elementos Nación X Nación Y

Cantidad de armamentos en el momento t+1 Xt+1 Yt+1

Amenaza kYt mXt

Gastos aXt bYt

Los agravios anteriores o previos g h

Tabla 1.2. Elementos del Modelo de Richardson

Las variables Xt e Yt son los valores de la cantidad de armamento en el tiempo t,


y Xt+1 e Yt+1 son los valores para el momento t+1. Las constantes (k, m, a, b, g, h)
son coeficientes, pudiendo ser positivos y negativos g y h, mientras que el resto
sólo positivos.
Basado en lo anterior formule el modelo matemático del sistema.

Respuestas a los Ejercicios de Autoevaluación:

1. La elección común de variables de estado en estos casos son la tensión en el


capacitor: vc y la corriente eléctrica a través del inductor i2. Entonces, sea

x1 = vc, x2 = i2, u = u(t), y1 = i1, e y2 = i2.

Las ecuaciones necesarias para los estados pueden ser obtenidas mediante las
leyes de Kirchhoff:

u = R ⋅ i1 + v c


C ⋅ v c = i1 − i2

di2
vc = L ⋅
dt
Luego, eliminando i1 de las dos primeras ecuaciones, y utilizando los nombres de
las definiciones de variables de entrada, salida y de estados, obtenemos:

• 1 1 1
x1 = − ⋅ x1 − ⋅ x 2 + ⋅u
R ⋅C C R ⋅C

22
Simulación de Sistemas - 337

• 1
x2 = ⋅ x1
L
Quedando las ecuaciones de salida definidas como:

1 1
y1 = i1 = ⋅ u − ⋅ x1
R R
y 2 = i2 = x2

2. La representación del modelo de Richardson, en términos matemáticos, se


puede exponer a través de las siguientes ecuaciones:

Xt+1=kYt - aXt + g

Yt+1=mXt - bYt + h

23
Simulación de Sistemas - 337

UNIDAD 2

Ecuaciones de Diferencias Finitas

Con está unidad se pretende exponer en forma sencilla y didáctica el cuerpo teórico
que rodea la formulación, resolución y aplicación de las ecuaciones de diferencias
finitas. La solución de ecuaciones de diferencias tiene incidencia en la solución de
ecuaciones diferenciales, específicamente en los métodos numéricos aplicados a la
resolución de las mismas.

Se sugiere leer las recomendaciones para el estudio del contenido de la unidad, y


de esta forma obtener una mejor comprensión del mismo.

Objetivo de la Unidad 2
Resolver problemas de ecuaciones de estado en diferencias finitas

Contenido de la Unidad 2: Ecuaciones de diferencias finitas. Solución de


ecuaciones de diferencias finitas. Funciones forzantes constantes.
Estabilidad de ecuaciones de diferencias finitas.

24
Simulación de Sistemas - 337

Para llevar a cabo el estudio de esta unidad, presentaremos algunas


recomendaciones que incluyen un conjunto de actividades cuya realización se
recomienda hacer antes de proseguir a analizar los ejemplos aquí presentados.

Recomendaciones para el estudio del contenido de la unidad.

• Repasar la teoría sobre ecuaciones diferenciales.


• Estudiar la Unidad 2 del libro.
• Resolver los problemas propuestos y los ejercicios de autoevaluación del
libro.
• Consultar otras fuentes bibliográficas.

Al concluir el estudio de esta unidad en el libro, el estudiante deberá estar


capacitado para responder las siguientes preguntas:

• ¿Qué es una diferencia finita?


• ¿Qué es una ecuación de diferencias?
• ¿Cuál es el uso de una ecuación de diferencias?
• ¿En qué ámbito se pueden usar las ecuaciones de diferencias?
• ¿A que se refiere la estabilidad de un sistema?

25
Simulación de Sistemas - 337

En esta unidad se tratarán los siguientes puntos: Diferencias finitas, ecuaciones de


diferencias finitas de primer orden, las ecuaciones de diferencia lineal de primer
orden. Se expondrá un repaso de las sucesiones aritméticas y geométricas, para
luego presentar las soluciones de la ecuación de diferencia de primer orden, y por
ultimo la estabilidad. Por cada uno de los puntos discutidos en esta unidad, se
expondrá un ejemplo que ayude a comprender mejor el tema tratado. Al final de la
unidad encontrará los ejercicios y actividades propuestas, así como la sección de
autoevaluación.

Diferencias finitas

Sea y=f(t) una función para valores enteros no negativos de t, o sea para
t=0,1,2,3,..., Se llama primera diferencia, o diferencia finita de primer grado de
y=f(x), a la expresión dada por

∆f (t ) = f (t + 1) − f (t ) (2.1)

donde f(t) representa el valor de la función f en el punto t y f(t+1) el valor de la


función f en el punto t+1.
Con frecuencia se utilizan otras notaciones como:

yt o ft en lugar de f(t) y yt+1 o ft+1 en vez de f(t+1)

La interpretación gráfica que tiene la primera diferencia de una función y=f(t), se


aprecia en la figura 2.1.

y=f(t)

f(t+1)

f(t) ∆(t+1)

t (t+1)

Figura 2.1 Representación gráfica de ∆f(t)

26
Simulación de Sistemas - 337

De esta manera, ∆f(t) corresponde al incremento que sufre y=f(t) cuando la


variable t se incrementa en una unidad.
Seguidamente se presentan dos ejemplos que ilustran este punto.

Ejemplo 2.1.

Si y = f(t) = 4t2 - 6, hallar la diferencia de primer orden.

Solución

Como yt = f(t) = 4t2 - 6, entonces yt+1 = f(t+1) = 4(t+1)2 - 6 = 4t2 + 8t - 2

Como puede observar del resultado del ejemplo anterior, ∆f(t) es una función que
depende de nuevo de la variable t ; por tanto, puede hablarse de la primera
diferencia de ∆f(t). La segunda diferencia de f(t) se denota por ∆2f(t), y así
sucesivamente.

Ejemplo 2.2.

Sea la sucesión xn = 3n2 + 5n + 2, hallar su diferencia finita

Solución

Se tiene :

∆xn = xn+1 - xn = {3(n+1)2 + 5(n+1) + 2} – {3n2 + 5n + 2}

por lo tanto ∆xn = 6n + 8

Ecuaciones de diferencias finitas de primer orden

Una ecuación que relacione los valores de una función y = f(t) con una o varias de
sus diferencias finitas, se llama ecuación en diferencias finitas en f(t).

En adelante las llamaremos simplemente ecuaciones de diferencia. El orden de


estas ecuaciones está determinado por la diferencia de mayor grado que se
encuentre en la ecuación.

Por ejemplo, son ecuaciones de diferencia de primer orden:

a) yt+1 + 3yt = 0

27
Simulación de Sistemas - 337

b) yt+1 = 2y + 5t
c) yt+1- yt = 8
d) yt+1-3yt+1 = 2t

Una función yt = f(t) es una solución de la ecuación de diferencia finita, si está


definida para valores enteros no negativos y satisface la ecuación dada.
A continuación se presenta un ejemplo, donde se comprueba si una función yt es
una solución de una ecuación de diferencia.

Ejemplo 2.3.

t (t + 1)
Comprobar que la función y t = f (t ) = es una solución de la ecuación de
2
diferencia y t +1 − y t = t para t = 0, 1, 2, 3...

Solución

A partir de la función yt dada obtenemos:

(t + 1)[(t + 1) − 1] (t + 1)t
yt = =
2 2

Reemplazando los valores de yt y yt+1 en la ecuación, tenemos:

(t + 1)t t (t + 1) (t + 1)t − t (t − 1) t 2 + t − t 2 + t 2t
− = = = =t
2 2 2 2 2

o sea que la función yt = f(t) cumple la ecuación de diferencia.

Existen dos clases de soluciones para una ecuación de diferencia finita: general y
particular. Se llama solución general aquella función que al tener una o varias
constantes arbitrarias está definida para valores enteros no negativos y satisface la
ecuación dada. Se llama solución particular aquella función que al no tener
constantes arbitrarias está definida para valores enteros no negativos y satisface la
ecuación dada.

Una solución de una ecuación de diferencias es una sucesión de valores para los
cuales se satisface la ecuación.

Ecuación de diferencia lineal de primer orden

28
Simulación de Sistemas - 337

Se llama ecuación de diferencia lineal de primer orden con coeficiente constante en


yt a toda expresión de la forma:

a1 yt+1 +a0 yt = g(t) (2.2)

donde a1 y a0 son constantes, y g(t) es una función que depende de t siendo t=


0,1,2,3,...
Debe tenerse en cuenta que una función polinomial es toda expresión que tenga la

forma:

g(t) = Cn tn +Cn-1 tn-1+...+C1 t+C0

donde Cn, Cn+1,…,C1,C0 son constantes y n es un entero no negativo.

A continuación se presenta un ejemplo sencillo de cómo plantear una ecuación de


diferencia, a partir del enunciado del problema.

Ejemplo 2.3.

Una compañía recibe un ingreso mensualmente que cumple la siguiente condición:


el ingreso recibido en un mes cualquiera es igual a las tres cuartas partes del
ingreso recibido en el mes inmediatamente anterior, aumentando en U.M. 2.000,
donde U.M. denota Unidades Monetarias. Plantear una ecuación de diferencia que
relaciones los ingresos de dos meses consecutivos.

Solución

En este caso el ingreso depende del tiempo. Sea Yt el ingreso recibido al final del
mes t, entonces yt+1 será el ingreso recibido al final del mes siguiente, es decir, en
el mes t+1, como se observa en la figura siguiente:

yt yt+1
• •
t t+1

Figura 2.2

29
Simulación de Sistemas - 337

Según la condición dada en el problema, tenemos:

yt+1 = 3/4 yt + 2.000

Y esta es la ecuación de diferencia que, según el enunciado del problema,


relaciona los ingresos de los meses consecutivos t y t+1.

Antes de continuar con las soluciones de ecuaciones de diferencias de primer


orden, se consideró importante repasar los conceptos de sucesiones aritméticas y
geométricas, los cuales se exponen a continuación

Sucesiones aritméticas y geométricas

Una sucesión se llama progresión aritmética si un término cualquiera es igual al


anterior más una constante, llamada diferencia de la progresión.

En símbolos: x n +1 = x n + d , ∀n ≥ 0

Una sucesión se llama progresión geométrica si un término cualquiera es igual al


anterior multiplicado por una constante llamada razón.

En símbolos: x n +1 = rx n ∀n ≥ 0

En forma recurrente, podemos expresar a un cierto término de una sucesión


aritmética o geométrica en función del primer término x0 = C.

En efecto, se considera primero una sucesión aritmética:

x 1 = x0 + b
x2 = x1+b=x0+2b
x3 = x2+b= x0 +3b
… …………..

En forma análoga para una sucesión geométrica resulta:

x1 = ax0
x2 = ax1 =a2x0
x3 = ax2 =a3x0

Para el (n+1) –ésimo término se tiene: xn = an x0

30
Simulación de Sistemas - 337

Luego las sucesiones pueden expresarse para un término arbitrario en función del
primero según la siguiente notación, donde C es el término inicial x0 :

Sucesión aritmética: {C + bn}

Sucesión geométrica: {C an}

Así los términos xn de estos tipos de sucesiones son soluciones de dos ecuaciones
de diferencias muy particulares, donde la diferencia y la razón de las progresiones
se representarán por a y b, respectivamente.

Ecuaciones de Diferencias Solución


xn+1 = xn + b, n = 0,1,2,... sucesión aritmética

xn+1 = axn , n = 0,1,2,...; a ≠ 0 sucesión geométrica

La solución general de la ecuación de diferencias lineal de primer orden,


homogénea con coeficiente constante xn+1 - axn = 0, n = 0,1,2,..., está dada por xn=
C. an donde a y C son constantes, con a ≠ 0.

La solución general de la ecuación en diferencias lineal de primer orden, con


coeficiente constante xn+1 – xn = b , n = 0,1,2,... está dada por xn = C +bn, donde b y
C son constantes.
Si b = 0, la sucesión solución es constante.

Seguidamente se expone el punto de las soluciones de diferencias de primer orden.

Soluciones de la ecuación de diferencia de primer orden

Para hallar la solución de la ecuación de diferencia de primer orden dada en la


expresión (2.2), se debe tener en cuenta dos casos respecto a la función g(t):

i) Cuando g(t) sea constante


ii) Cuando g(t) sea variable

Para cada uno de estos casos se utilizan métodos diferentes que originan
soluciones diferentes.

Caso i

Sea g(t) = k = constante. Entonces, la ecuación (2.2) se convierte en

31
Simulación de Sistemas - 337

a1 yt+1 + a0 yt = k

La cual puede llevarse a la forma

yt+1 = Ayt + B (2.3)

donde
− a0 k
A= y B=
a1 a1

Para hallar una solución particular de la ecuación (2.3) es preciso conocer y0, o un
valor yk, para k = 0.
Si conocemos y0, el problema se reduce a resolver la ecuación

yt+1 = Ayt + B, dado y0

Entonces, la ecuación (2.3) va tomando las formas siguientes según el valor de t

Para t = 0, y1 = Ay0 + B
Para t = 1, y2 = Ay1 + B = A2y0 + B(1 + A)
Para t = 2, y3 = Ay2 + B = A3y0 + B(1 + A + A2)
Para t = cualquiera, yt = Aty0 + B(1 + A + A2 + k + At-1)

⎡1 − At ⎤
= A y0 + B ⎢
t
⎥, si A ≠ 1
⎣ 1 − A ⎦
Pero si A=1, se obtiene que yt= y0 + Bt

En resumen, la solución particular de la ecuación (2.3), conociendo el valor de y0,


está dada por:

⎡1 − A t ⎤
A y0 + B ⎢
t
⎥, si A ≠1
⎣ 1 − A ⎦ (2.4)
yt =
y0 + Bt, si A = 1

32
Simulación de Sistemas - 337

Si conocemos el valor de yk para k=0, entonces basta considerar y0 =C, donde C


es una constante arbitraria. Siguiendo el mismo procedimiento anterior, se llega a la
solución general:

⎡1 − A t ⎤
At C + B ⎢ ⎥, si A ≠1 (2.5)
⎣ 1− A ⎦
yt =
y0 + Bt, si A = 1

En la expresión (2.5), al remplazar t por k, y yk por su valor, se halla el valor de


C, el cual al sustituirlo en la expresión (2.5), nos da la solución particular
correspondiente.

A continuación un ejemplo donde se ilustra el caso (i).

Ejemplo 2.4

Resolver la ecuación de diferencia yt+1 – 3yt = 2, si y2 = 17

Solución

La ecuación se puede escribir como yt+1 – 3yt = 2 en la cual A = 3 y B = 2; como A


≠ 1, aplicando la parte correspondiente de la formula (2.5) y se tiene:

⎡1− 3t ⎤ t
yt = 3t C + 2⎢ [t
]
⎥ = 3 C − 1− 3 = 3 [C +1] −1
t

⎣ 1− 3 ⎦

donde C es una constante arbitraria. Su valor puede calcularse mediante la


condición y2 = 17; sustituyendo t por 2 en la solución anterior y y2 por 17 llegamos
a:

17 = y2 = 32 [C + 1] – 1

o sea, 18 = 9[C + 1]; y de aquí se obtiene que C = 1. Remplazando este valor de C,


en la solución anterior, se obtiene:

yt = 2(3)t – 1

y esta es la solución de la ecuación del problema, según la condición dada.

33
Simulación de Sistemas - 337

Caso ii

Cuando g(t) sea variable, se consideran solamente las dos situaciones siguientes

a) g(t) una función polinomial


b) g(t) una función exponencial.

Para ambas situaciones, la solución general de la ecuación (2.2) tiene la forma


siguiente:
yt = yh(t) + yp(t)

donde yh(t) representa la ecuación general de la ecuación homogénea asociada a la


ecuación (2.2) es decir, la solución de la siguiente ecuación:

a1yt+1 + a0yt = 0

puede hallarse aplicando el método visto en el caso (i) y más exactamente


utilizando la solución dada en la formula (2.5), así no se conozca el valor de yo. La
función yp(t) representa una solución particular de la ecuación (2.2). Esta solución
particular será de la misma clase de la función g(t). Es decir, si g(t) es un polinomio,
entonces yp(t) también será un polinomio y del mismo grado de g(t), y si g(t) es una
función exponencial, entonces yp(t) también será una función exponencial, en la
mismo base de g(t). Esta solución particular no debe tener constantes arbitrarias y
para hallar esta función se utiliza el método de los coeficientes indeterminados.
La solución yt debe contener una constante arbitraria en la parte correspondiente a
la solución yh(t), y esta constante quedará determinada si conocemos y0 ó yk , por
su correspondiente valor, solamente debe hacerse una vez estén sumadas las dos
soluciones, es decir, una vez se tenga la expresión (2.6).
A continuación un ejemplo cuando la función g(t) es un polinomio

Ejemplo 2.5

Hallar la solución para la siguiente ecuación de diferencias:

2yt+1 – 3y = 4t2 + 1, si y0 = 5
Solución

Primero se halla la ecuación homogénea asociada a la ecuación del problema; esta


ecuación es:

2yt+1 – 3y = 0

A partir de esta ecuación, se obtiene su solución que es yh(t). Utilizando la fórmula


(2.5) del caso (i), se llega a:

34
Simulación de Sistemas - 337

yh(t) = (3/2)t C

donde C es una constante arbitraria.


En segundo lugar, se debe hallar la solución yp(t). En este caso la función g(t) =
2
4t + 1 es un polinomio de segundo grado, por lo tanto y p (t) también será un
polinomio de segundo grado en la variable t y tendrá la forma:

yp(t) = at2 + bt + c

donde a, b y c son constantes. Éstas se determinan hallando yp(t+1), de la siguiente


manera:

yp(t+1) = a(t+1)2 + b(t+1) + c

y remplazando en el problema original yt por yp(t) y yt+1 por yp(t+1) se obtiene:

2[a(t+1)2 + b(t+1) + c] – 3[at2 + bt + c] = 4t2 +1

O sea:
(-a)t2 +(4a - b)t + (2a + 2b – c) = 4t2 + 1

Igualando los coeficientes de las respectivas potencias de t, se tiene:

-a=4
4a – b = 0
2a + 2b – c = 1
Resolviendo este sistema de ecuaciones lineales, se obtiene:

a = -4, b = -16, c = -41

De tal manera que la solución particular es:

yp(t) = -4t2 – 16t - 41

y aplicando la expresión (2.6) se tiene que la solución general es:

yt = (3/2)t C – 4t2 – 16t -41

Como el problema tiene una condición inicial que es y0 = 5, entonces sustituyendo t


por 0 y y0 por 5, en la solución general, se tiene:

5 = y0 = (3/2)0 C – 4(0)2 – 16(0) – 41

De donde C = 46

35
Simulación de Sistemas - 337

Remplazando C en la solución general se obtiene la solución del problema original:

yt = 46(3/2)t – 4t2 – 16t – 41

Estabilidad

Un sistema es estable si a pequeñas distorsiones responde haciendo pequeñas


incursiones alrededor del espacio de equilibrio.

Suponga que se tiene una ecuación de diferencias cuya respuesta es dada por

yn = C1B1n + C2 B2n + ...+ Ck Bkn

En donde todas las raíces son diferentes. Entonces note que si Bi ≤ 1 para
cualquier i∈1 (1, 2,...,k) entonces la respuesta homogénea del sistema no crece sin
control cuando n→∞. Si el valor absoluto de las raíces es menor que 1, entonces
la respuesta homogénea del sistema decae a cero en el estado continuo, en el
estado transitorio desaparece y sólo permanece la solución particular. Cuando esto
sucede decimos que el sistema representado por la ecuación de diferencias es
estable.

Ejemplo 2.6

Determine la solución de la siguiente ecuación de diferencias e indique si es estable


o inestable.

yn+2 - 7yn+1 + 10yn = 12(4)n

Solución

Se asume que se tiene un sistema representado por la siguiente ecuación

yn+2 - 7yn+1 + 10yn = 12(4)n

de lo que se obtiene

Bn(B2 – 7B + 10) = 0

y los valores de de B son los siguientes:

36
Simulación de Sistemas - 337

B1 = 2, B2 = 5

Se obtine la solución homogénea

ykh =C1 (2)n + C2 (5)n

Se obtiene la solución particular


ykp =C3 (4)n

Se obtiene el valor de la constante C

C3 (4)n (4n − 7(4) +10) = 12(4)n

C3 = −6

Solución general

yn =C1 (2)n + C2 (5)n − 6(4)n

Como se puede observar los valores de Bi nos permiten concluir que el sistema es
inestable, debido a que para ser estable Bi ≤ 1 para todo i = {1,2...k}.

Ejercicios y actividades propuestas:

1. Hallar la solución de las siguientes ecuaciones de diferencias:

a) xn+1– 5xn =0 b) xn+1 + 3xn = 0 c) 4xn+1– 5xn = 0

2. Resolver la ecuación 3yt+1 – 6yt = 1, sabiendo que y0 = 2/3

3. El saldo en una cuenta de ahorros al final de cualquier mes es igual al saldo del
mes inmediatamente anterior más una cantidad constante. Escriba una ecuación
de diferencia representativa de la situación anterior.

4. Hallar la solución de la siguiente ecuación de diferencia de la siguiente ecuación


xn+2 -7xn+1 +10xn=5n

5. Hallar la solución de la siguiente ecuación de diferencia según la condición dada:

37
Simulación de Sistemas - 337

yt+1 - 3yt = 12(3)t, si y0 = 2

Ejercicios de Autoevaluación:

1. Resolver la ecuación en diferencia


xn+1-2xn = 3n+1

2. Hallar la solución a la siguiente ecuación de diferencia de diferencia según la


condición dada:
yn+1 - 3yn = 5 ; y0 = 0

3. Hallar la solución a la siguiente ecuación de diferencia de diferencia según la


condición dada:
yt+1 – yt = 2t - 3, si y0 = 4

Respuestas a los Ejercicios de Autoevaluación:

1. Solución

La sucesión solución xn se expresa como la suma de la ecuación homogénea


asociada, xn+1 -2xn = 0, cuya solución es x nh = C 2 n , más la solución particular x np que
se sugiere mediante el método de los coeficientes indeterminados como un
polinomio lineal x np = k1 n + k 2 , según el segundo miembro de la ecuación. Entonces

x np+1 − 2 x np = k1 (n + 1) + k 2 − 2(k1 n + k 2 )

= k1 n + k 1 + k 2 − 2 k 1 n − 2 k 2

= k1 n + k 1 − k 2

Comparando el coeficiente de n y el término independiente de esta expresión con


los correspondientes de 3n+1, se tiene

-k1 = 3

k1 – k2 = 1

38
Simulación de Sistemas - 337

Con lo cual se tiene k1 = -3 y k2 = -4. Por lo tanto x np = −3n − 4 es solución


particular. Una solución general es xn = C2n – 3n – 4

2. Solución

Suponga que quiere obtener una solución a la siguiente ecuación:

yn+1 - 3yn = 5 ; y0 = 0

se obtiene primero la solución homogénea

Bn+1 – 3Bn = 0

Bn (B – 3) = 0
lo que implica que B = 3.

La solución homogénea es entonces

y nh = C (3) n

luego se encuentra la solución particular

5 5
y np = =−
1− 3 2

añadiendo la solución homogénea y particular se obtiene la solución general

5
y n = C (3) n −
2
para encontrar el valor de C se utiliza la condición inicial

5
0 = C (3) 0 −
2

Lo que implica que la solución general es:

5 5
y n = (3) n − =
2 2
5
2
((3) n − 1)

3. Solución

La solución de la homogénea es yh(t) = C

39
Simulación de Sistemas - 337

La solución particular debe tener la forma siguiente:

yp(t) = t(at+b)

El lector debe comprobar por qué la solución no puede ser de la forma:

yp(t) = at+b

A partir de la solución particular, tenemos:

yp(t+1) =(t+1)[a(t+1)+b]

Sustituyendo estas funciones en la ecuación original, llegamos a:

2at + (a+b) = 2t – 3

Igualando coeficientes tenemos que a = 1, b = - 4 y así la solución particular es:

yp(t) = t(t-4)
y la solución general será:

yt = C + t(2t -5)

con la condición inicial de y0 = 4, se obtiene que C=4, y, por tanto, la solución al


problema es:
yt = 4 + t(t-4)

MODULO II

40
Simulación de Sistemas - 337

Aplicación de Métodos Numéricos en Sistemas Continuos

En este módulo se prosigue con la búsqueda de la solución de modelos


matemáticos basados en ecuaciones de estado, específicamente se trata de
ecuaciones diferenciales ordinarias, con valores iniciales. Se presentan tres tipos de
métodos numéricos iterativos y programables como son: el método de Euler,
método de Runge Kutta y los métodos de varios pasos. Estos métodos son fáciles
de implementar a través de lenguajes de programación de propósito general y de
hojas de cálculo. Por otra parte existen paquetes de software como el Maple™ y
MatLab™, que contemplan funciones elaboradas para implementar dichos
métodos.

Objetivos del Módulo II

Resolver numéricamente modelos matemáticos empleando los métodos: Euler,


Runge-Kutta y Varios Pasos.

Estructura del Módulo II

Unidad 3: Método Numérico de Euler para la resolución de Ecuaciones


Diferenciales

Unidad 4: Método Numérico de Runge-Kutta para la resolución de Ecuaciones


Diferenciales

Unidad 5: Métodos Numéricos de Varios Pasos para la resolución de Ecuaciones


Diferenciales

41
Simulación de Sistemas - 337

UNIDAD 3

Método Numérico de Euler para la Resolución de


Ecuaciones Diferenciales

Con esta unidad se pretende exponer en forma sencilla y didáctica, el objetivo de


uno de los métodos numéricos más sencillo como es el método de Euler. Para ello
se presentarán ejemplos donde se muestra su uso en la obtención de
aproximaciones soluciones de ecuaciones diferenciales ordinarias de primer orden.

Se sugiere leer las recomendaciones para el estudio del contenido de la unidad, y


de esta forma obtener una mejor comprensión del mismo.

Objetivo de la Unidad 3
Resolver numéricamente un modelo matemático descrito en términos de
ecuaciones de estado, empleando el Método de Euler.

Contenido de la Unidad 3: Método de Euler

42
Simulación de Sistemas - 337

Para llevar a cabo el estudio de esta unidad, presentaremos algunas


recomendaciones que incluyen un conjunto de actividades cuya realización se
recomienda hacer antes de proseguir a analizar los ejemplos aquí presentados.

Recomendaciones para el estudio del contenido de la unidad

• Repasar la teoría sobre ecuaciones diferenciales.

• Estudiar la Unidad 4 del libro.

• Resolver los problemas propuestos y los ejercicios de autoevaluación del


libro.

• Consultar otras fuentes bibliográficas.

Al concluir el estudio de esta unidad en el libro, el estudiante deberá estar


capacitado para responder las siguientes preguntas:

• ¿En que consiste el método de Euler?


• ¿Cuál es la utilidad del método de Euler?
• ¿Cómo se calcula el error de truncamiento local?

43
Simulación de Sistemas - 337

Se inicia está unidad, citando brevemente como recordatorio, el concepto de


ecuación diferencial y sus tipos, para luego continuar con el contenido propio de la
unidad que es la explicación del método de Euler. Por cada uno de los puntos
discutidos en esta unidad, se expondrá un ejemplo que ayude a comprender mejor
el tema tratado. Al final de la unidad encontrará los ejercicios y actividades
propuestas, así como la sección de autoevaluación.

Si una ecuación contiene las derivadas o diferenciales de una o más variables


independientes con respecto a una o más variables independientes, se dice que es
una ecuación diferencial.
Si una ecuación contiene sólo derivadas ordinarias de una o más variables
dependientes con respecto a una sola variable independiente, se dice que es una
ecuación diferencial ordinaria.
Una ecuación que contiene las derivadas parciales de una o más variables
dependientes con respecto a dos o más variables independientes se llama
ecuación diferencial parcial.

Zill Denis, Ecuaciones Diferenciales Con Aplicaciones. Ed. Wadsworth Internacional/Iberoamérica,


1982, California EEUU.

Método de Euler

Existen escasos tipos de ecuaciones diferenciales resolubles de primer orden, y se


ha comprobado que las técnicas de dibujo aproximado fallan si la expresión de la
ecuación no es especialmente sencilla. Pero aunque la f(t,y) sea complicada
siempre se podrá acudir a los métodos numéricos (iterativos y fácilmente
programables), uno de ellos el método de Euler, el cual se explica a continuación a
partir de un problema de valores iniciales.

Se quiere calcular aproximadamente la solución del siguiente problema de valor


inicial:
y ′(t ) = f (t , y (t )) t ≥ t 0

y (t 0 ) = y 0

Donde f(y,t) es una función de y en tanto que t y la segunda ecuación es una


condición inicial.

En el método que vamos a describir se van hallando valores w0, w1, w2,…,wn,…
cercanos a los de la solución y(t) en una serie de puntos t0 < t1 < t2 <…< tn <;
separados entre sí una distancia (paso) h, es decir,
t1 = t0 + h, t2 = t1 + h,…, tn = tn-1 + h.

Por lo tanto el método de Euler consiste en aproximar la solución desconocida por


su tangente conocida. Es decir, si h es pequeño es de esperar que el valor de la
solución y(t0+h) = y(t1) sea próxima al valor de la recta tangente en ese mismo

44
Simulación de Sistemas - 337

punto: w0 + hf(t0,w0), que llamamos w1. Puesto que (t1, w1) se parece al desconocido
(t1,w(t1) podemos aproximar w(t2) por el w2 que obtendremos de (t1,w1) de la misma
forma que obtuvimos el w1 a partir del (t0,w0) inicial. Prosiguiendo así, vamos
obteniendo los wn aproximados (más inexactos según nos alejamos de t0) dados
por:

wn +1 = wn + hf (t n , wn ) t n +1 = t n + h (3.1)

A continuación se presenta la forma algorítmica del método de Euler, para


aproximar la solución del problema de valor inicial:

y' = f(t,y) a ≤ t ≤ b, y(a)=α, en (N+1)

números uniformemente espaciados en el intervalo [a,b]:

ENTRADAS: puntos extremos a,b; entero N; condición inicial α,

SALIDA: aproximación w de y en los (N+1) valores de t.

Paso 1 Hacer h=(b-a)/N;


t= a;
w= α
SALIDA: (t,w)

Paso 2 Para i=1,2,.., N seguir los Pasos 3 y 4.

Paso 3 Hacer w=w+hf(t,w); (Calcular wi)


t= a + ih. (Calcular ti)
Paso 4 SALIDA (t,w)

Paso 5 PARAR

Para tener una idea de la interpretación geométrica del método de Euler


introducimos primero la notación yi = y(ti) para cada i=1,2,…,N y observamos que,
cuando wi es una buena aproximación de yi la suposición de que el problema está
bien planteado implica que

f(tiwi) ≈ y’(ti) = f(ti, y(ti))

Consecuentemente, un paso en el método aparece como se muestra en la figura


3.1.

45
Simulación de Sistemas - 337

y(t)
y(t1) (t1,y(t1))
w1
(t1,w1)=(a+h,α+hf(a,α))
w0
y(t0)=y(a
)
(t0,w0)=(a,α)

t
t0=a t1

Figura 3.1
En la figura se muestra cómo y1 es evaluado, siguiendo la tangente a la curva en t0
(Cuya pendiente está dada por f(t0,y0)). El punto (t1, y1) hallado es distinto en general
de (t1, y(t1))

Seguidamente se muestra un ejemplo donde se hace uso de una hoja de cálculo en


Excel, para aplicar el método de Euler.

Ejemplo 3.1. (Aplicación del algoritmo de Euler)

Use el método de Euler con h=0.1, para calcular el valor aproximado de y(0.5), del
problema de valor inicial:

y' = -3t2y ; con y(0)= 3 ; 0 ≤ t ≤ 0.5

Solución

Sustituyendo en (3.1) se obtienen los primeros términos de la sucesión:

y1 = 3 + (0.1).(0) = 3

y2 = 3 + (0.1).(-0.09) = 2.991

46
Simulación de Sistemas - 337

Hasta ahora se han calculado dos términos, el resto de las aproximaciones se


obtendrán a través de una demostración en una hoja de cálculo de Excel.

A B C D E
1
2 h= 0.1
3
4 n tn yn f(t,y) yn+1
5 0 0 3 =-3B5^2*C5 =C5+C$2*D5
6 =A5+1 =B$5+C$2*A6 =E5
7 Copia el
8 contenido de la
celda
9
10

La utilización de la hoja de cálculo, permite construir la siguiente tabla:

A B C D E
1
2 h= 0.1
3
4 n tn yn f(t,y) yn+1
5 0 0 3 0 3
6 1 0.1 3 -0.09 2.991
7 2 0.2 2.991 -0.35895 2.955108
8 3 0.3 2.955108 -0.79787916 2.875320084
9 4 0.4 2.875320084 -1.38015364 2.7370472
10 5 0.5 2.73730472 -2.05297854 2.532006866
Última
aproximación
obtenida

Ejercicios y actividades propuestas:

1) Aplique el método de Euler con h=0.5 al problema de valor inicial

y’ = 2y2 + x, y(0) = -1 y determine y(1.5)

47
Simulación de Sistemas - 337

2) Aplique el método de Euler con h=0.2 al problema de valor inicial

5y
y′ = , y (1) = −0.5; determine y(0.6)
1 + xy

Ejercicios de Autoevaluación:

1) Use el método de Euler con h=0.025, para los siguientes problemas de valor
inicial:
1 y
a) y ′ = 2 − , 1 ≤ t ≤ 2, y (1) = −1;
t t
b) y ′ = t + y, 0 ≤ t ≤ 2, y (0) = −1;

2) Use el método de Euler para aproximar la solución del siguiente problema de


valor inicial:

2
y ⎛ y⎞
y′ = − ⎜ ⎟ , con y(1)= 1 y h=0.2 en el intervalo 1≤ t ≤ 2
t ⎝t⎠

3) Dado el problema de valor inicial y’ = y2 – t, aplique el método de Euler y halle


numéricamente entre -1 y 3 la solución con y(-1)=0.

m Respuestas a los Ejercicios de Autoevaluación:

1) a)
i t wi
1 1.5 -0.3832803
2 2.0 -0.1395250

b)

i t wi
1 1 -0.3832803
2 -0.1395250

2)

48
Simulación de Sistemas - 337

2
y ⎛ y⎞
Se tiene y′ = − ⎜ ⎟ , 1 ≤ t ≤ 2, y(1)= 1, con h=0.2
t ⎝t⎠

Aplicando el método de Euler

⎛ y ⎛ y ⎞2 ⎞
yi +1 = yi + h ⎜ − ⎜ ⎟ ⎟
⎜t ⎝t⎠ ⎟
⎝ ⎠

y 2 = 1 + 0,2 (0,8333 − 0,6944 ) y 2 = 1,0278 el mismo procedimiento para las


iteraciones restantes resulta:

i ti yi
0 1 1
1 1,2 1
2 1,4 1,02778
3 1,6 1,06681
4 1,8 1,11125
5 2 1,15850
3)

i t wi
1 -1 0
2 -0.9 0.1
3 -0.8 0.191
4 -0.7 0.2746481
5 -0.6 0.3521912579
6 -0.5 0.4245951261
7 -0.4 0.4926232282
8 -0.3 0.5568909927
9 -0.2 0.6179037505
10 -0.1 0.6760842550
11 0 0.7317932469

20 1 1.2141975534

30 2 1.988550160

40 3 272.5279419

49
Simulación de Sistemas - 337

UNIDAD 4

Método Numérico de Runge Kutta para la Resolución


de Ecuaciones Diferenciales

Con está unidad se pretende exponer en forma sencilla y didáctica, el objetivo de


uno de los métodos numéricos más exacto en la obtención de aproximaciones de
soluciones de ecuaciones diferenciales ordinarias de primer orden, como es el
método de Runge Kutta de cuarto orden. Para ello se presentarán ejemplos donde
se muestra su uso.

Se sugiere leer las recomendaciones para el estudio del contenido de la unidad, y


de esta forma obtener una mejor comprensión del mismo.

Objetivo de la Unidad 4
Resolver numéricamente un modelo matemático descrito en términos de
ecuaciones de estado, empleando el Método de Runge-Kutta

Contenido de la Unidad 4: Método de Runge Kutta

50
Simulación de Sistemas - 337

Para llevar a cabo el estudio de esta unidad, presentaremos algunas


recomendaciones que incluyen un conjunto de actividades cuya realización se
recomienda hacer antes de proseguir a analizar los ejemplos aquí presentados.

Recomendaciones para el estudio del contenido de la unidad

• Repasar la teoría sobre ecuaciones diferenciales.


• Estudiar la Unidad 5 del libro.
• Resolver los problemas propuestos y los ejercicios de autoevaluación del
libro.
• Consultar otras fuentes bibliográficas.

Al concluir el estudio de esta unidad en el libro, el estudiante deberá estar


capacitado para responder las siguientes preguntas:

• ¿En que consiste el método de Runge Kutta de cuarto orden?


• ¿Cuál es la utilidad del método de Runge Kutta de cuarto orden?
• ¿Cómo se calcula el error de truncamiento local?

51
Simulación de Sistemas - 337

En los métodos de Runge-Kutta, el orden de precisión aumenta al utilizar puntos


intermedios en cada intervalo. Una mayor precisión implica además que los errores
decrecen más rápido al reducir h, en comparación con los métodos con precisión
baja.

Fundamentalmente se consideran tres métodos de Runge-Kutta: Runge-Kutta de


segundo, tercero y cuarto orden. En esta sección se analizará el método de Runge
Kutta de cuarto orden.

Método de Runge- Kutta de Cuarto Orden

Uno de los métodos más utilizados y exactos, es el método de Runge Kutta, de


cuarto orden, que exige un mayor número de operaciones y que en cada paso toma
el promedio ponderado de cuatro pendientes.

En el método de Runge-Kutta de cuarto orden hay que evaluar en cada intervalo lo


siguiente:
1
y n +1 = y n + h (k1 + 2k 2 + 2k 3 + k 4 )
6 (4.1)
donde
k1 = f ( x n , y n )

⎛ h 1 ⎞
k 2 = f ⎜ x n + , y n + h.k1 ⎟
⎝ 2 2 ⎠

⎛ h 1 ⎞
k 3 = f ⎜ x n + , y n + h.k 2 ⎟
⎝ 2 2 ⎠

k 4 = f ( x n +1 , y n + h.k 3 )

A continuación se presenta la forma algorítmica del método de Runge-Kutta de


cuarto orden, para aproximar la solución del problema de valor inicial

y'= f(t,y), a ≤ t ≤ b, y(a) = α,

en (N+1) números igualmente espaciados en el intervalo [a,b]:

52
Simulación de Sistemas - 337

ENTRADA puntos extremos a,b; enteros N; condición inicial α.


SALIDA aproximación w de y en los (N+1) valores de t.
Paso 1 Tomar h=(b-a)/N;
t= a;
w= α;
SALIDA (t,w);
Paso 2 Para i=1,2,…, N seguir los pasos 3-5
Paso 3 Tomar k1 = hf(t,w);
k2 = hf(t + h/2, w+ k1/2);
k3 = hf(t + h/2, w+ k2/2);
k4 = hf(t + h, w + k3)
Paso 4 Tomar w = w+(k1 + 2k2 + 2k3 + k4) / 6; (Calcular w).
t = a + ih. (Calcular ti).
Paso 5 SALIDA (t,w).
Paso 6 PARAR.

Ejemplo 4.1. (Aplicación del Algoritmo de Runge-Kutta de 4º orden)

1
Calcule y(1) resolviendo el problema de valor inicial y′ = − aplicando el
1+ y2
método de Runge Kutta de orden 4, con la condición inicial y(0) = 1, con h=1.

Solución

1
Hacemos f ( y, t ) = −
1+ y2

y y0 = 1 , t0 = 0. Puesto que sólo tenemos un intervalo, los cálculos son:

1 1
k1 = hf ( y 0 , t 0 ) = − =−
1+1 2

53
Simulación de Sistemas - 337

⎛ k h⎞ 1
k 2 = hf ⎜ y 0 + 1 , t 0 + ⎟ = − = −0.64
⎝ 2 2⎠ (1 + (0.75) 2 )

⎛ k h⎞ 1
k 3 = hf ⎜ y 0 + 2 , t 0 + ⎟ = − = −0.6838
⎝ 2 2⎠ (1 + (0.68) 2 )

1
k 4 = hf ( y 0 + k 3 , t 0 + h) = − = −0.9091
(1 + (0.3161) 2 )

1 1
y1 = y 0 + h (k1 + 2k 2 + 2k 3 + k 4 ) = 1 + [− 0.5 − 2(0.64) − 2(0.6838) − 0.9091] = 0.3238
6 6

Seguidamente se muestra un ejemplo donde se hace uso de una hoja de cálculo en


Excel, para ayudar a aplicar el método de Runge Kutta de cuarto orden .

Ejemplo 4.2.

Resuelva la siguiente ecuación diferencial y’= x2 + y2, con la condición inicial y(0) =
0, tomando el paso de integración h=0.1

Solución:
Haciendo uso de la hoja de cálculo en Excel se obtine:

A B C D E
1
2 h= 0.1
3
4 n tn yn k1 k2
5 0 0 0 =B5^2+C5^2 =(B5+0.5*C$2)^2+(C5+0.5*C$2*D5)^2
6 =A5+1 =B$5+(C$2)*A6 =I5

54
Simulación de Sistemas - 337

F G H I
1
2
3
4 k3 k4 k yn+1
5 =(B5+0.5*C$2)^2+(C5+C$2*E5)^2 =(B6)^2+(C5+C$2*F5)^2 =(1/6)*(D5+2*E5+2*F5+G5 =C5+(C$2)*H5

La utilización de la hoja de cálculo, permite construir la siguiente tabla:

A B C D E F G H I
1
2 h= 0.1
3
4 n tn yn k1 k2 k3 k4 k yn+1
5 0 0 0 0 0.0025 0.00250002 0.01000006 0.00333335 0.000333335

6 1 0.1 0.00033333 0.01000011 0.02250069 0.02250213 0.04000667 0.0233354 0.002666875

7 2 0.2 0.00266688 0.04000711 0.06252178 0.0653356 0.09007957 0.06336623 0.009003498

8 3 0.3 0.0090035 0.09008106 0.12268245 0.12272915 0.16045269 0.12355949 0.021359447

9 4 0.4 0.02135945 0.16045623 0.20336332 0.20349399 0.25173963 0.20431841 0.041791288

10 5 0.5 0.04179129 0.25174651 0.30545703 0.30575632 0.36523697 0.30656836 0.072448125

Última
aproximación
obtenida

Ejercicios y actividades propuestas:

1) Dado el problema de valor inicial:

1 y
y′ = 2
− − y 2 , 1 ≤ t ≤ 2, y (1) = −1
t t

Use el método de Runge-Kutta de orden cuatro con h=0.05 para aproximar la


solución.

2) Resuelva el problema de valor inicial y ′ = t − 2 y aplicando el método de Runge


Kutta de orden 4, con la condición inicial y(0) = 1, y tomando un paso de
integración h=0.1, en el intervalo 0 ≤ t ≤ 1

55
Simulación de Sistemas - 337

Ejercicios de Autoevaluación:

1) Resuelva el problema de valor inicial y ′ = t + y aplicando el método de Runge


Kutta de orden 4, con la condición inicial y(1) = 3, y tomando un paso de
integración h=0.1, en el intervalo 1 ≤ t ≤ 2

2) Dado el problema de valor inicial y’ = y2 – t, aplique el método de Runge Kutta


de orden 4 y halle numéricamente entre -1 y 3 la solución con y(-1)=0 y
h=0.1

3) Dado el problema de valor inicial y’ = t-2y, aplique el método de Runge Kutta de


orden 4 y halle numéricamente entre 0 y 1 la solución con y(-1)=0 y
h=0.1

Respuestas a los Ejercicios de Autoevaluación:

1)
t yi
1.0 3
1.1 3.2037347
1.2 3.4148802
1.3 3.6333537
1.4 3.8590787
1.5 4.0919845
1.6 4.3320051
1.7 4.5790788
1.8 4.8331483
1.9 5.0941594
2.0 5.3620613

2)

t yi
-1 0
-0.9 0.0953100
-0.8 0.1823176
-0.7 0.2623378
-0.6 0.3363726
-0.5 0.4051902
-0.4 0.4693783
-0.3 0.5293796

56
Simulación de Sistemas - 337

-0.2 0.5855155
-0.1 0.6379997
0 0.6869456

1 0.9176486

2 -0.1884460

3 -1.5412582

3)
t wi
0 1
0.1 0.82341666
0.2 0.68790533
0.3 0.58602103
0.4 0.51166828
0.5 0.45985654
0.6 0.42649988
0.7 0.40825300
0.8 0.40237701
0.9 0.40662947
1 0.41917443

Consulta en la Web:

Se recomienda acceder a la siguiente dirección electrónica para ampliar sus
conocimientos en relación a la representación gráfica de la solución de las
ecuaciones diferenciales ordinarias.

http://www.ucm.es/info/metodos/pdf/Apuntes/mii-pepe/EDO1.PDF

57
Simulación de Sistemas - 337

UNIDAD 5

Métodos numéricos de varios pasos para la resolución de ecuaciones


diferenciales

Con el estudio de esta unidad se concluye lo referente a la resolución numérica


de modelos matemáticos de sistemas dinámicos cuyo comportamiento es
descrito mediante ecuaciones de estado. Se trata de ecuaciones diferenciales
ordinarias con valores iniciales, a las cuales se les halla la solución aproximada
empleando métodos numéricos de varios pasos. Se pretende a través de la
aplicación de estos métodos obtener mejores aproximaciones a la solución.

Objetivo de la Unidad 5

Resolver numéricamente un modelo matemático descrito en términos de


ecuaciones de estado, empleando un Método de Varios Pasos.

Contenido de la Unidad 5: Método de varios pasos. Errores de los


algoritmos. Método del Predictor-Corrector. Método de Adams-Moulton.

58
Simulación de Sistemas - 337

Para llevar a cabo el estudio de esta unidad, presentaremos algunas


recomendaciones que incluyen un conjunto de actividades cuya realización se
recomienda hacer antes de proseguir a analizar los ejemplos aquí presentados.

Recomendaciones para el estudio del contenido de la unidad

• Repasar las unidades 3 y 4

• Estudiar en el libro UNA la unidad 6, titulada “Métodos Numéricos de


Varios Pasos para la Solución de Ecuaciones Diferenciales”. Puede
omitir la sección que presenta el código de programación.

• Resolver los ejercicios del libro relacionados con los Métodos de


Varios Pasos para resolver numéricamente Ecuaciones Diferenciales
Ordinarias (EDO). Utilice la hoja de cálculo, o algún lenguaje de
programación, para hallar la solución numérica. Analice la solución
aproximada. Si tiene a su alcance un paquete de resolución de
ecuaciones diferenciales (el Maple, de Maplesoft™,permite resolverlas)
puede hallar la solución del problema de valor inicial, para así analizar
los resultados numéricos.

• Consultar otras fuentes bibliográficas.

• Consultar los temas estudiados en sitios de Internet que aborden el


tema.

• Ante cualquier duda, consultar a su asesor en el centro local.

• Si desea hacer algún comentario o sugerencia acerca del curso o de


este material instruccional, comuníquese con el profesor que lo
administra a través de la dirección de correo electrónico suministrada
por la carrera. Recuerde que su comentario puede ser útil para
fortalecer y enriquecer dicho material instruccional.

Al concluir el estudio de esta unidad en el libro, el estudiante deberá estar


capacitado para responder las siguientes preguntas:

• ¿Qué son Métodos Numéricos de Varios Pasos? ¿Puede describirlos?


• ¿Qué ventajas conlleva la aplicación de este tipo de método?
• ¿Qué son métodos abiertos? ¿Qué son métodos cerrados?
• ¿En qué consisten los métodos predictor-corrector? ¿Cómo se aplican?
• ¿Cómo se determina el error de truncamiento local?

59
Simulación de Sistemas - 337

Métodos de Varios Pasos

Los métodos vistos en las unidades 3 y 4 se llaman métodos de un solo paso ya


que la aproximación de la solución en el punto ti+1, de la red de puntos, involucra
información sólo de un punto previo ti, de dicha red. Los Métodos de Varios
Pasos para obtener una aproximación emplean más de un punto previo de la
red de puntos.

Sea la Ecuación Diferencial de primer orden:

y ’(t) = f(y(t),t) (5.1)

Se pretende hallar una solución aproximada a (5.1) en el intervalo: a ≤ t ≤ b,


dado que y(a) = α (valor inicial de la solución en el intervalo). Se obtendrán
aproximaciones a la solución en cada punto de la red: t0, t1,…, ti, empleando
valores previos de la misma cuando se obtiene su aproximación en ti+1.

La forma general para obtener la integral de una ecuación de estado puede


ser aproximada por una serie truncada de manera siguiente:

p −1
h i f n( i ) h p f n( p )
wn +1 = wn + h∑ + (5.2)
i =0 i! p!

De aquí se obtiene la fórmula general:

k k

∑a w
i =0
i n +i = h∑ Bi f n +i
i =0
(5.3)

Donde h = (b-a)/N, N entero positivo


wi = w(ti), ti = a + ih ( i = 0,…,N)

Cuando Bi = 0 el método es llamado explícito o abierto y cuando Bi ≠ 0 se dice


que el método es implícito o cerrado.

Error de truncamiento Local

60
Simulación de Sistemas - 337

El error de truncamiento local es una medida que se hace para determinar en


cuánto falla la solución de la ecuación diferencial cuando se emplea una
aproximación por diferencias (5.3)

El error de truncamiento local en el paso i+1 de un método de multipaso es:

y (t i +1 ) − a m −1 wi −1 + ... + a 0 wi − m
τ i +1 = − [bm +1 f (t i +1 , y (t i +1 )) + ... + b0 f (t i − m , y (t i − m ))]
h

i = m, m+1,…, N-1

Entre los métodos de varios pasos están:

• Adams-Bashforth
• Adams-Moulton
• Milne
• Hamming

A la combinación de un método explícito con uno implícito se le denomina


Método Predictor- Corrector, el método predictor se usa para obtener los
valores iniciales, que se usarán en el método corrector. Los métodos predictor-
corrector necesitan para su arranque el empleo de un método de un solo paso,
ya que requieren información de varios puntos previos. Generalmente se emplea
el Método de Runge-Kutta como arranque.

El algoritmo que se obtiene del Método de Adams-Moulton de cuarto orden,


Predictor – Corrector es el siguiente:

Problema:
y ’(t) = f(y(t),t), a ≤ t ≤ b, dado que y(a) = α
para N + 1 puntos igualmente espaciados en el
intervalo [a, b]

Algoritmo 5.1 Método de Adams-Moulton de cuarto orden, con paso


fijo

• Leer a, b, N, condición inicial α


• Paso 1: h = (b-a)/N
t0 = a
w0 = α

61
Simulación de Sistemas - 337

Salida: (t0, w0)


• Paso 2: Para i = 1,2,3 hacer { (Calcular los valores iniciales
usando Runge-Kutta)
Paso 3: k1 = h f(ti -1, wi -1)
k2 = h f(ti -1+ h/2, wi -1+ k1/2)
k3 = h f(ti -1+ h/2, wi -1+ k2/2)
k4 = h f(ti -1+ h/2, wi -1+ k3)
Paso 4: Hacer wi = wyi -1 + (k1+ 2 k2+ 2 k3 + k4)/6
ti = a + ih
Paso 5: Salida : (ti, wi) }
• Paso 6: Para i = 4,…,N hacer {
Paso 7: Hacer t = a + ih
w = w3 + h [55 f(t3,w3) – 59 f(t2,w2) + 37 f(t1,w1)
-9 f(t0,w0)]/24; Predictor
w = w3 + h [9 f(t,w) +19 f(t3,w3) - 5 f(t2,w2)
+ f(t1,w1)]/24; Corrector
Paso 8: Salida: (t,w)
Paso 9: Para j = 0,1, 2
Hacer tj = tj+1
wj = wj +1

Paso 10: Hacer t3 = t


y3 = w}
• Paso 11: Finalizar

Fuente: Análisis Numérico, Burden y Faires

Ejemplo 5.1 ( Aplicación de un Método Predictor-Corrector)

Resuelva numéricamente la siguiente ecuación diferencial ordinaria:

y’ = 1 - y, 0 ≤ t ≤ 1; y(0) = 1 , con h = 0,1

Para resolver el problema emplearemos como método predictor, el Método de


Adams-Moulton abierto de 4 pasos y como corrector el Método de Adams -
Moulton cerrado de 3 pasos. Las fórmulas a emplear son las siguientes:

Predictor

h
wn + 4 = wn +3 + (55 f n +3 − 59 f n + 2 + 37 f n +1 − 9 f n )
24

62
Simulación de Sistemas - 337

Corrector

h
wn + 3 = wn + 2 + (9 f n + 3 + 19 f n + 2 − 5 f n +1 + f n )
24

Al hacer el cambio de variable: i + 1 ← n + 4, en los subíndices en la fórmula del


Método Predictor, obtenemos:

Predictor
h
wi +1 = wi + (55 f i − 59 f i −1 + 37 f i − 2 − 9 f i − 3 )
24

Al hacer el cambio de variable: i + 1 ← n + 3, en los subíndices en la fórmula del


Método Corrector, obtenemos:

Corrector

h
y i +1 = y i + (9 f i +1 + 19 fi − 5 f i −1 + f i − 2 )
24

Al emplear inicialmente el método predictor se requiere obtener los valores de fi, fi-
1, fi-2 y fi-3, los cuales no han sido calculados; para resolver este problema se
aplica el Método Runge Kutta de cuarto orden ( tres iteraciones).

En las tablas 5.1 y 5.2 aparecen los resultados al aplicar estos métodos. Los
cálculos fueron realizados empleando la hoja de Cálculo Microsoft Excel™.

f(t,w) =-y+t+1 Solución exacta: e-t + t


a=0
b=1
N = 10
h = 0,1
w0 = y(a) = 1

i Valores exactos K1 K2 K3 K4 wi ti
0 1 1 0
1 1,0048374180 0 0,005 0,00475 0,009525 1,0048375 0,1
0,0181348
2 1,0187307531 0,00951625 0,014040438 0,01381423 3 1,0187309 0,2
0,0259253 1,0408184
3 1,0408182207 0,01812691 0,022220564 0,02201588 2 2 0,3
Valores que se
emplearán en la
siguiente iteración
Tabla 5.1 Obtención de aproximaciones empleando Runge-Kutta (Predictor-
(iteraciones 1 a 3) Corrector)

63
Simulación de Sistemas - 337

I t Predecir w Corregir w t0 t1 t2 w0 w1 w2
4 0,4 1,07032310 1,07031991824 0,1 0,2 0,3 1,0048375 1,0187309 1,040818422
1,0408184 1,0703199182
5 0,5 1,10653319 1,10653026841 0,2 0,3 0,4 1,0187309 2 4
1,0703199 1,1065302684
6 0,6 1,14881363 1,14881103255 0,3 0,4 0,5 1,04081842 2 1
1,1065302 1,1488110325
7 0,7 1,19658690 1,19658453138 0,4 0,5 0,6 1,07031992 7 5
1,1488110 1,1965845313
8 0,8 1,24933020 1,24932806045 0,5 0,6 0,7 1,10653027 3 8
1,1965845 1,2493280604
9 0,9 1,30657059 1,30656865679 0,6 0,7 0,8 1,14881103 3 5
1,2493280 1,3065686567
10 1 1,36788012 1,36787836602 0,7 0,8 0,9 1,19658453 6 9

(Continuación)

t3 w3
0,4 1,07031991824
0,5 1,10653026841
0,6 1,14881103255
0,7 1,19658453138
0,8 1,24932806045
0,9 1,30656865679
1 1,36787836602

Aproximaciones

Tabla 5.2 Obtención de aproximaciones empleando el Método de Adams-


Moulton (Predictor-Corrector)
(iteraciones 4 a 10)

Ejercicios de autoevaluación

64
Simulación de Sistemas - 337

1. Emplee el algoritmo 5.1 para aproximar la solución de:

y’ = 1 - y, 0 ≤ t ≤ 2; y(0) = 1, con h = 0,05

2. Emplee el algoritmo 5.1 para aproximar la solución de:

2y’ + y = 0; 0 ≤ t ≤ 1 ; y(0) = 1, con h = 0,025

La solución general de la ecuación diferencial es: Ce-1/2 t

3. Ecuación diferencial de primer orden con condiciones iniciales:

3x 2
y' = , con y(1)=0
x3 + y +1

Calcule:

a) Con el método del Predictor-Corrector una aproximación para y(1.5) y


considere los incrementos h= 0.1

b) El error absoluto de la aproximación y(1.5) comparada con el valor real


igual a 0.706666.

4. Dada la siguiente ecuación diferencial con condiciones iniciales:

4t
y ' = − ty + , con y(0)=1 y h=0,25
y

Calcule con el método del Predictor-Corrector una aproximación para y(1).

Respuestas a los ejercicios de autoevaluación

1. Ecuación diferencial

f(t,w) = 1-y

65
Simulación de Sistemas - 337

a=0
b=2
N = 40
h = 0,05
w = y(a) = 1

Runge- Kutta (iteraciones 1 a 3)

i K1 K2 K3 K4 wi ti
0 0 0
1 0 0 0 0 1 0,025
2 0 0 0 0 1 0,05
3 0 0 0 0 1 0,075

Adams- Moulton ( iteraciones 4 a 40)

i t Predecir w Corregir w t0 t1 t2
4 0,2 0,98125000 1,00035156250 0,025 0,05 0,075
5 0,25 1,00031128 1,00033181000 0,05 0,075 0,2
6 0,3 1,00033700 1,00031601916 0,075 0,2 0,25
7 0,35 1,00029349 1,00030073098 0,2 0,25 0,3
8 0,4 1,00028613 1,00028606269 0,25 0,3 0,35
9 0,45 1,00027211 1,00027211153 0,3 0,35 0,4
10 0,5 1,0002588380 1,00025884053 0,35 0,4 0,45
11 0,55 1,0002462168 1,00024621673 0,4 0,45 0,5
12 0,6 1,0002342086 1,00023420859 0,45 0,5 0,55
13 0,65 1,0002227861 1,00022278610 0,5 0,55 0,6
14 0,7 1,0002119207 1,00021192070 0,55 0,6 0,65
15 0,75 1,0002015852 1,00020158520 0,6 0,65 0,7
16 0,8 1,0001917538 1,00019175377 0,65 0,7 0,75
17 0,85 1,0001824019 1,00018240183 0,7 0,75 0,8
18 0,9 1,0001735060 1,00017350598 0,75 0,8 0,85
19 0,95 1,0001650440 1,00016504399 0,8 0,85 0,9
20 1 1,0001569947 1,00015699470 0,85 0,9 0,95
21 1,05 1,0001493380 1,00014933798 0,9 0,95 1
22 1,1 1,0001420547 1,00014205468 0,95 1 1,05
23 1,15 1,0001351266 1,00013512659 1 1,05 1,1
24 1,2 1,0001285364 1,00012853638 1,05 1,1 1,15
25 1,25 1,0001222676 1,00012226759 1,1 1,15 1,2
26 1,3 1,0001163045 1,00011630453 1,15 1,2 1,25
27 1,35 1,0001106323 1,00011063229 1,2 1,25 1,3
28 1,4 1,0001052367 1,00010523669 1,25 1,3 1,35
29 1,45 1,0001001042 1,00010010423 1,3 1,35 1,4
30 1,5 1,0000952221 1,00009522209 1,35 1,4 1,45

66
Simulación de Sistemas - 337

31 1,55 1,0000905781 1,00009057805 1,4 1,45 1,5


32 1,6 1,0000861605 1,00008616051 1,45 1,5 1,55
33 1,65 1,0000819584 1,00008195841 1,5 1,55 1,6
34 1,7 1,0000779613 1,00007796125 1,55 1,6 1,65
35 1,75 1,0000741590 1,00007415903 1,6 1,65 1,7
36 1,8 1,0000705423 1,00007054225 1,65 1,7 1,75
37 1,85 1,0000671019 1,00006710187 1,7 1,75 1,8
w0 w1 w2 t3 w3

38 1,9 1,0000638293 1,00006382927 1,75 1,8 1,85


39 1,95 1,0000607163 1,00006071628 1,8 1,85 1,9
40 2 1,0000577551 1,00005775511 1,85 1,9 1,95

Continuación

67
Simulación de Sistemas - 337

1 1 1 0,2 1,00035156250
1 1 1,00035156250 0,25 1,00033181000
1 1,00035156 1,00033181000 0,3 1,00031601916
1,00035156 1,00033181 1,00031601916 0,35 1,00030073098
1,00033181 1,00031602 1,00030073098 0,4 1,00028606269
1,00031602 1,00030073 1,00028606269 0,45 1,00027211153
1,00030073 1,00028606 1,00027211153 0,5 1,00025884053
1,00028606 1,00027211 1,00025884053 0,55 1,00024621673
1,00027211 1,00025884 1,00024621673 0,6 1,00023420859
1,00025884 1,00024622 1,00023420859 0,65 1,00022278610
1,00024622 1,00023421 1,00022278610 0,7 1,00021192070
1,00023421 1,00022279 1,00021192070 0,75 1,00020158520
1,00022279 1,00021192 1,00020158520 0,8 1,00019175377
1,00021192 1,00020159 1,00019175377 0,85 1,00018240183
1,00020159 1,00019175 1,00018240183 0,9 1,00017350598
1,00019175 1,0001824 1,00017350598 0,95 1,00016504399
1,0001824 1,00017351 1,00016504399 1 1,00015699470
1,00017351 1,00016504 1,00015699470 1,05 1,00014933798
1,00016504 1,00015699 1,00014933798 1,1 1,00014205468
1,00015699 1,00014934 1,00014205468 1,15 1,00013512659
1,00014934 1,00014205 1,00013512659 1,2 1,00012853638
1,00014205 1,00013513 1,00012853638 1,25 1,00012226759
1,00013513 1,00012854 1,00012226759 1,3 1,00011630453
1,00012854 1,00012227 1,00011630453 1,35 1,00011063229
1,00012227 1,0001163 1,00011063229 1,4 1,00010523669
1,0001163 1,00011063 1,00010523669 1,45 1,00010010423
1,00011063 1,00010524 1,00010010423 1,5 1,00009522209
1,00010524 1,0001001 1,00009522209 1,55 1,00009057805
1,0001001 1,00009522 1,00009057805 1,6 1,00008616051
1,00009522 1,00009058 1,00008616051 1,65 1,00008195841
1,00009058 1,00008616 1,00008195841 1,7 1,00007796125
1,00008616 1,00008196 1,00007796125 1,75 1,00007415903
1,00008196 1,00007796 1,00007415903 1,8 1,00007054225
1,00007796 1,00007416 1,00007054225 1,85 1,00006710187
1,00007416 1,00007054 1,00006710187 1,9 1,00006382927
1,00007054 1,0000671 1,00006382927 1,95 1,00006071628
1,0000671 1,00006383 1,00006071628 2 1,00005775511

Aproximaciones

Se puede visualizar que la solución se aproxima a: y(t) = 1

2. Ecuación diferencial:

68
Simulación de Sistemas - 337

f(t,w) = 2y’ + y = 0;
a=0
b=1
N = 40
h = 0,025
w = y(a) = 1

Solución: e-1/2t

Runge- Kutta (iteraciones 1 a 3)

Valores
i Ti exactos K1 K2 K3 K4 wi ti
0 0 1 1 0
0,987577800 0,9873424
1 0,025 5 -0,0125 -0,01265625 -0,0126582 -0,01281646 4 0,025
0,975309912 0,9748450
2 0,05 0 -0,01234178 -0,01249605 -0,01249798 -0,01265423 9 0,05
0,963194417 0,9625059
3 0,075 7 -0,012185564 -0,01233788 -0,01233979 -0,01249406 3 0,075

Adams-Moulton ( iteraciones 4 a 40)

i t Predecir w Corregir w t0 t1 t2
0,9505498454
4 0,1 0,95055091 5 0,025 0,05 0,075
0,9387418145
5 0,125 0,93873965 5 0,05 0,075 0,1
0,9270805717
6 0,15 0,92708167 2 0,075 0,1 0,125
0,9155641918
7 0,175 0,91556419 6 0,1 0,125 0,15
0,9041908707
8 0,2 0,90419087 9 0,125 0,15 0,175
0,8929588314
9 0,225 0,89295883 0 0,15 0,175 0,2
0,8818663186
10 0,25 0,88186632 3 0,175 0,2 0,225
0,8709115992
11 0,275 0,87091160 8 0,2 0,225 0,25
0,8600929616
12 0,3 0,86009296 3 0,225 0,25 0,275
0,8494087152
13 0,325 0,84940872 6 0,25 0,275 0,3

69
Simulación de Sistemas - 337

0,8388571907
14 0,35 0,83885719 3 0,275 0,3 0,325
0,8284367393
15 0,375 0,82843674 4 0,3 0,325 0,35
0,8181457328
16 0,4 0,81814573 8 0,325 0,35 0,375
0,8079825633
17 0,425 0,80798256 6 0,35 0,375 0,4
0,7979456427
18 0,45 0,79794564 5 0,375 0,4 0,425
0,7880334027
19 0,475 0,78803340 7 0,4 0,425 0,45
0,7782442946
20 0,5 0,77824429 2 0,425 0,45 0,475
0,7685767887
21 0,525 0,76857679 2 0,45 0,475 0,5
0,7590293745
22 0,55 0,75902937 1 0,475 0,5 0,525
0,7496005601
23 0,575 0,74960056 8 0,5 0,525 0,55
0,7402888724
24 0,6 0,74028887 7 0,525 0,55 0,575
0,7310928564
25 0,625 0,73109286 0 0,55 0,575 0,6
0,7220110750
26 0,65 0,72201108 7 0,575 0,6 0,625
0,7130421094
27 0,675 0,71304211 4 0,6 0,625 0,65
0,7041845581
28 0,7 0,70418456 0 0,625 0,65 0,675
0,6954370370
29 0,725 0,69543704 2 0,65 0,675 0,7
0,6867981794
30 0,75 0,68679818 0 0,675 0,7 0,725
0,6782666353
31 0,775 0,67826664 9 0,7 0,725 0,75
0,6698410719
32 0,8 0,66984107 2 0,725 0,75 0,775
0,6615201724
33 0,825 0,66152017 8 0,75 0,775 0,8
0,6533026369
34 0,85 0,65330264 1 0,775 0,8 0,825
0,6451871812
35 0,875 0,64518718 1 0,8 0,825 0,85
0,6371725373
36 0,9 0,63717254 3 0,825 0,85 0,875
0,6292574529
37 0,925 0,62925745 4 0,85 0,875 0,9
0,6214406913
38 0,95 0,62144069 1 0,875 0,9 0,925
0,6137210310
39 0,975 0,61372103 6 0,9 0,925 0,95
0,6060972659
40 1 0,60609727 7 0,925 0,95 0,975

70
Simulación de Sistemas - 337

Continuación
Solución
w0 w1 w2 t3 w3 Exacta
0,98734244 0,97484509 0,962505933 0,1 0,95054984545 0,95122942
0,97484509 0,96250593 0,95054984545 0,125 0,93874181455 0,93941306
0,96250593 0,95054985 0,93874181455 0,15 0,92708057172 0,92774349
0,95054985 0,93874181 0,92708057172 0,175 0,91556419186 0,91621887
0,93874181 0,92708057 0,91556419186 0,2 0,90419087079 0,90483742
0,92708057 0,91556419 0,90419087079 0,225 0,89295883140 0,89359735
0,91556419 0,90419087 0,89295883140 0,25 0,88186631863 0,8824969
0,90419087 0,89295883 0,88186631863 0,275 0,87091159928 0,87153435
0,89295883 0,88186632 0,87091159928 0,3 0,86009296163 0,86070798
0,88186632 0,8709116 0,86009296163 0,325 0,84940871526 0,85001609
0,8709116 0,86009296 0,84940871526 0,35 0,83885719073 0,83945702
0,86009296 0,84940872 0,83885719073 0,375 0,82843673934 0,82902912
0,84940872 0,83885719 0,82843673934 0,4 0,81814573288 0,81873075
0,83885719 0,82843674 0,81814573288 0,425 0,80798256336 0,80856032
0,82843674 0,81814573 0,80798256336 0,45 0,79794564275 0,79851622
0,81814573 0,80798256 0,79794564275 0,475 0,78803340277 0,78859689
0,80798256 0,79794564 0,78803340277 0,5 0,77824429462 0,77880078
0,79794564 0,7880334 0,77824429462 0,525 0,76857678872 0,76912636
0,7880334 0,77824429 0,76857678872 0,55 0,75902937451 0,75957212
0,77824429 0,76857679 0,75902937451 0,575 0,74960056018 0,75013657
0,76857679 0,75902937 0,74960056018 0,6 0,74028887247 0,74081822
0,75902937 0,74960056 0,74028887247 0,625 0,73109285640 0,73161563
0,74960056 0,74028887 0,73109285640 0,65 0,72201107507 0,72252735
0,74028887 0,73109286 0,72201107507 0,675 0,71304210944 0,71355197
0,73109286 0,72201108 0,71304210944 0,7 0,70418455810 0,70468809
0,72201108 0,71304211 0,70418455810 0,725 0,69543703702 0,69593431
0,71304211 0,70418456 0,69543703702 0,75 0,68679817940 0,68728928
0,70418456 0,69543704 0,68679817940 0,775 0,67826663539 0,67875163
0,69543704 0,68679818 0,67826663539 0,8 0,66984107192 0,67032005
0,68679818 0,67826664 0,66984107192 0,825 0,66152017248 0,6619932
0,67826664 0,66984107 0,66152017248 0,85 0,65330263691 0,65376979
0,66984107 0,66152017 0,65330263691 0,875 0,64518718121 0,64564853
0,66152017 0,65330264 0,64518718121 0,9 0,63717253733 0,63762815
0,65330264 0,64518718 0,63717253733 0,925 0,62925745294 0,62970741
0,64518718 0,63717254 0,62925745294 0,95 0,62144069131 0,62188506
0,63717254 0,62925745 0,62144069131 0,975 0,61372103106 0,61415988
0,62925745 0,62144069 0,61372103106 1 0,60609726597 0,60653066

Aproximaciones

3. a) Empleando las fórmulas del método Predictor-Corrector con h=0.1,


y0=0 y

71
Simulación de Sistemas - 337

3x 2
y' =
x 3 + y +1

tendremos:
⎛ 3 × 12 ⎞
y1, p = y 0 + hf ( x 0 , y 0 ) = 0 + 0.1× ⎜⎜ 3 ⎟⎟ = 0.15
⎝1 + 0 +1⎠

h 0.10 ⎡⎛ 3 × 12 ⎞ ⎛ 3 × (1.1) 2 ⎞⎤
y1,c = y 0 + ( f ( x 0 , y 0 ) + f ( x1 , y1, p ) = 0 + ⎢⎜⎜ 3 ⎟⎟ + ⎜⎜ ⎟⎥ = 0.148156
2 2 ⎣⎢⎝ 1 + 0 + 1 ⎠ ⎝ (1.1) 3 + 0.15 + 1 ⎟⎠⎦⎥

Ahora calcularemos la segunda iteración:

⎛ 3 × (1.1) 2 ⎞
y 2, p = y1,c + hf ( x1 , y1,c ) = 0.148156 + 0.1× ⎜⎜ ⎟⎟ = 0.294577
⎝ (1.1) + 0.148156 + 1 ⎠
3

h 0.10 ⎡⎛ 3 × (1.1)2 ⎞ ⎛ 3 × (1.2)2 ⎞⎤


y2,c = y1 + ( f ( x1, y,c1) + f ( x2 , y1. p ) = 0.148156+ ⎢⎜⎜ ⎟ + ⎜ ⎟⎥ = 0.292829
2 3 ⎟ ⎜
2 ⎣⎝ (1.1) + 0.148156+ 1⎠ ⎝ (1.2) + 0.294577+ 1⎟⎠⎦
3

Así, sucesivamente, tendremos la siguiente tabla de aproximaciones:

Valor de x Valor aproximado Valor aproximado


predictor de y corrector de y
1.1 0.15 0.148156
1.2 0.294577 0.292829
1.3 0.435836 0.434113
1.4 0.573740 0.572017
1.5 0.708254 0.706530

b) Para calcular el error absoluto tenemos:

ε = y (1.5) − 0.706530 = 0.706666 − 0.706530 = 0.000136

4. Empleando las fórmulas del método Predictor-Corrector con h = 0,25,


y(0) = 1 y

72
Simulación de Sistemas - 337

4t
y ' = −ty +
y

tenemos:
⎛ 4(0) ⎞
y1, p = y0 + hf ( x0 , y0 ) = 1 + 0.25 × ⎜ − 0(1) + ⎟ =1
⎝ 1 ⎠

h 0.25 ⎡⎛ 4(0) ⎞ ⎛ 4(0.25) ⎞⎤


y1,c = y0 + ( f ( x0 , y0 ) + f ( x1 , y1, p ) = 1 + ⎢⎜⎜ − 0(1) ⎟⎟ + ⎜ − 0.25(1) ⎟⎥ = 1.09375
2 2 ⎣⎝ 1 ⎠ ⎝ 1 ⎠⎦

Así, sucesivamente, obtenemos la siguiente tabla de aproximaciones:

Valor de t Valor aproximado Valor aproximado


predictor de y corrector de y
0.25 1.000000 1.093750
0.50 1.253962 1.470936
0.75 1.626989 1.817943
1 1.889633 1.986706

Ampliación de conocimientos

• Los problemas de ecuaciones diferenciales que hemos resuelto numéricamente


son problemas de valores iniciales, se trata de ecuaciones a las cuales se les
agregan restricciones que se imponen a un mismo valor de la variable
independiente generalmente al inicio llamado valor inicial. Cuando las
restricciones se imponen en diferentes valores de la variable independiente el
problema se llama “de valor en la frontera”. Al lector interesado se le
recomienda investigar sobre este tipo de problemas y los métodos de solución
empleados.
• Existe otro tipo de métodos multipaso, en los que el paso empleado es de
tamaño variable, una de las ventajas de esta variante es la de permitir el control
del error de truncamiento local. Al lector interesado en profundizar en el tema se
le recomienda investigar sobre los algoritmos aplicables en esta modalidad y las
ventajas de su aplicación.

73
Simulación de Sistemas - 337

Consulta en la Web:

Se recomienda consultar la siguiente dirección, la cual ofrece una visión general
sobre la solución numérica de ecuaciones diferenciales ordinarias.

http://maestros.its.mx/~sescobedo/metnum/apuntesmn/solecdif.pdf

MÓDULO III

Simulación de Sistemas estocásticos

Introducción

La simulación es una técnica muy poderosa que se emplea para el análisis y el


estudio de sistemas complejos. En los cursos de investigación de operaciones se
analizan y estudian modelos típicos que pueden ser resueltos analíticamente y en la
mayoría de ellos el objetivo consiste en hallar una solución óptima. En simulación se
opera con variables y relaciones estocásticas, que hacen las situaciones más
complejas, y por ello dificultan su representación como modelos únicos. Lo que se
pretende con la simulación es imitar las operaciones del mundo real, el cual
evoluciona a través del tiempo.

El proceso de la simulación involucra la corrida o ejecución del modelo a través del


tiempo, en el computador, con el fin de generar muestras representativas de las
medidas de gestión o comportamiento del sistema. Para estimar el comportamiento

74
Simulación de Sistemas - 337

del sistema a través del modelo se deberán tomar en consideración algunos


factores como: las condiciones iniciales y la duración del período a ser simulado.
Toda simulación requiere de algún sustento teórico que conducirá el funcionamiento
del sistema.

En este módulo se tratan los fundamentos teóricos y las técnicas que se emplean
en simulación estocástica, los cuales servirán de base para llevar a cabo la
formulación del modelo de simulación.

Objetivo del Módulo III:

Formular un modelo de simulación, bajo un enfoque lógico y crítico.

Estructura del Módulo III

Unidad 6: Introducción a la simulación

Unidad 7: Formular un modelo de simulación dada una situación.

UNIDAD 6

Introducción a la simulación

En el inicio de todo proceso de simulación usualmente se recogen datos que


permitirán el estudio del comportamiento del sistema. En algunos casos es fácil
verificar que las variables a medir en un sistema siguen una distribución
conocida. En otros casos es necesario interpretar la noción de la frecuencia para
construir la función de distribución de probabilidad. En ambos casos se
requerirá el empleo de herramientas para generar números aleatorios, bajo una
distribución específica.
En esta unidad se enfoca el proceso de generación de muestras de variables
aleatorias, con una distribución específica. Inicialmente se trata el método de
muestreo de Monte Carlo, luego los métodos más comunes para generar
números aleatorios y finalmente la generación de muestras aleatorias a partir de
distribuciones de probabilidad conocidas, tanto en el caso continuo como en el
caso discreto.

Objetivo de la Unidad 6

75
Simulación de Sistemas - 337

Obtener los eventos y/o los números seudoaleatorios y/o las variables
aleatorias discretas y continuas

Contenido de la Unidad 6: Simulación de Monte Carlo. Método de


generación de números seudoaleatorios. Generación de variables aleatorias
discretas y continuas. Elementos de simulación de evento discreto.

Para llevar a cabo el estudio de esta unidad, presentaremos algunas


recomendaciones que incluyen un conjunto de actividades cuya realización se
recomienda hacer antes de proseguir a analizar los ejemplos aquí presentados.

Recomendaciones para el estudio del contenido de la unidad

• Repasar la teoría sobre variable aleatoria, media, varianza y


distribuciones discretas y continuas.

• Estudiar las unidades 7, 8 y 9 del módulo titulado “Simulación de


Procesos Estocásticos”. Puede omitir las secciones que contienen
códigos de programas, así como el desarrollo del experimento de
simulación.

• Estudiar en la selección de lecturas 6.1, lo relacionado con


generalidades de modelado, generación de números aleatorios,
generación de variables aleatorias y pruebas estadísticas.

• Diseñar algoritmos que implementen métodos de generación de


números seudoaleatorios uniformes en (0,1). Codifíquelos en un

76
Simulación de Sistemas - 337

lenguaje de programación de su dominio o emplee la hoja de cálculo


Excel.

• Diseñar algoritmos que implementen métodos de generación de


valores de una variable aleatoria con distribución conocida (continuas y
discretas). Codifíquelos en un lenguaje de programación de su dominio
o emplee la hoja de cálculo Excel.

• Resolver los problemas propuestos y los ejercicios de autoevaluación.

• Realizar los ejercicios del libro y de la selección de lecturas


concernientes al tema en cuestión, empleando la hoja de cálculo.

• Consultar otras fuentes bibliográficas.

• Consultar los temas estudiados en sitios de Internet que aborden el


tema.

• Ante cualquier duda, consultar a su asesor en el centro local.

• Si desea hacer algún comentario o sugerencia acerca del curso o de


este material instruccional, comuníquese con el profesor que lo
administra a través de la dirección de correo electrónico suministrada
por la carrera. Recuerde que su comentario puede ser útil para
fortalecer y enriquecer dicho material instruccional.

Al concluir el estudio de esta unidad en el libro, el estudiante deberá estar


capacitado para responder las siguientes preguntas:

• ¿Cuáles son las actividades fundamentales que se deben llevar a cabo para
realizar un modelo de simulación?
• ¿En qué consiste cada método para la obtención de números
seudoaleatorios?
• ¿En qué consisten las pruebas estadísticas para los generadores de números
seudoaleatorios?
• ¿En qué consiste la simulación estocástica discreta?
• ¿Cómo se generan muestras de una variable aleatoria con distribución
continua? ¿Cuáles son los métodos más usados?
• ¿Cómo se generan muestras de una variable aleatoria con distribución
discreta? ¿Cuáles son los métodos más usados?

77
Simulación de Sistemas - 337

Modelo de simulación

Un modelo de simulación es la representación del comportamiento de un sistema,


expresado en relaciones lógicas o matemáticas. Los sistemas pueden ser
clasificados en discretos y continuos. Los sistemas discretos son aquellos en los
que los cambios de estado ocurren en puntos contables o discretos a través del
tiempo. Un ejemplo de un sistema discreto es la atención de clientes en un cajero
automático, el sistema cambia bien sea cuando un cliente finaliza su operación con
el cajero y se retira o bien cuando llega un nuevo cliente. Estos cambios de estado
en el sistema ocurren en puntos discretos en el tiempo. Los sistemas continuos
son aquellos en los que los cambios de estado ocurren continuamente en el tiempo.
Un ejemplo de un sistema continuo es un proceso químico. Los sistemas continuos
se modelan empleando ecuaciones diferenciales.
La simulación puede ser determinística o estocástica. La primera no contiene
variables aleatorias y la segunda tiene al menos una variable aleatoria. Sólo
trataremos modelos estocásticos discretos.

Iniciaremos el estudio con el Método de Monte Carlo, como un recurso de muestreo


aleatorio para estimar la salida de un experimento.

El Método de Monte Carlo

El Método de Monte Carlo es un método numérico empleado en la resolución de


problemas en los que se requiere emplear números aleatorios. Fue creado en el año
1949 por Von Neumann y Ulam y permanece vigente en la actualidad. El nombre
del método proviene de la ciudad de Monte Carlo, muy famosa por su casino.
El método de Monte Carlo es un método muy versátil que se emplea entre muchas
aplicaciones, para hallar aproximaciones de áreas de figuras, aproximaciones de
integrales, determinación de intervalos de confianza y en métodos de remuestreo
estadístico. Variantes del MC se usan para resolver problemas muy diversos. Entre
ellas el caso de los cálculos computacionales relacionados con sistemas
moleculares.
La importancia actual del método Monte Carlo se basa en varios hechos:

9 La existencia de problemas numéricos de muy difícil solución por métodos


exclusivamente analíticos.

9 El desarrollo de las aplicaciones en los computadores, que permite que los


experimentos no se tengan que realizar físicamente sino mediante
simulaciones de números aleatorios o de números determinísticos
pseudoaleatorios.

78
Simulación de Sistemas - 337

9 Las aplicaciones posibles, que han trascendido a las propias Matemáticas


(ecuaciones diferenciales parciales de Laplace o de Schrödinger, integrales,
matrices, distribuciones de Student, redondeos aleatorios, etcétera).

Debido a las múltiples aplicaciones de este método, cuando hablemos del mismo,
nos referiremos en plural, como Métodos de Monte Carlo.

Fuente: http://canales.laverdad.es/cienciaysalud/6_1_8.html

Ejemplo 6.1 (Aplicación del Método de Monte Carlo en la aproximación


del área de una figura en el plano)

Suponga que queremos calcular el área de una región arbitraria F, que está dentro
del cuadrado unitario, como se muestra en la figura 6.1. Si seleccionamos N puntos
al azar dentro del cuadrado y N’ puntos de estos caen en la región F, el área de la
región F será aproximadamente: N’/N. Mientras mayor sea N, mejor es la
estimación del área del cuadrado. Se puede concebir este método como una serie
de intentos o experimentos independientes uno del otro, en donde se promedian las
salidas para obtener un resultado. Se realizan N intentos, en donde cada uno de
ellos consiste en la obtención de un número aleatorio dentro de los límites del
cuadrado.
Los resultados son los siguientes:
Sea N’, el número de puntos que caen en F y N, el número de puntos en el
cuadrado unitario. Se tiene:

N’ = 14
N = 37

Área aproximada de F = N’/N = 0,37837838


Area de F: 0,40798611

79
Simulación de Sistemas - 337

y
1

0 0,5 1 x

Figura 6.1
Es fácil observar que el método utilizado para calcular el área tendrá validez sólo si
los puntos aleatorios son desplegados uniformemente en el cuadrado unitario.

En la práctica este método no se utiliza para aproximar áreas, ya que existen


métodos numéricos que proveen de mayor exactitud.

Hechos acerca del método: No ayuda a ganar al jugar con la ruleta

En resumen, los métodos de Monte Carlo abarcan una colección de técnicas que
permiten obtener soluciones de problemas matemáticos o físicos por medio de
pruebas aleatorias repetidas. A continuación se presenta una aplicación del método
en distribuciones de probabilidades, esta será de gran utilidad al momento de
diseñar el modelo de simulación.
El procedimiento más usado para generar los tiempos de ocurrencia de los eventos,
dada una distribución de probabilidad es el muestreo de Monte Carlo. Este método
se basa en el concepto de probabilidad como la frecuencia de ocurrencia de los
eventos.

80
Simulación de Sistemas - 337

Ejemplo 6.2 (Muestreo de Monte Carlo)

Suponga que la duración de cierto evento es una variable aleatoria con la siguiente
distribución de probabilidad:

Duración del evento


(minutos) Probabilidad
1 35%
2 40%
3 25%

Tabla 6.1

Para obtener resultados que se correspondan con la distribución dada, el muestreo


debe ser independiente, esto significa que cada duración del evento obtenida a
través de él, es independiente de la precedente y de la que le sigue.
Mostraremos cómo se realiza la generación, arreglando la distribución en una
ruleta, como se muestra en la figura 6.2

puntero

S1
25 %
giro
35 %
S3 x=3
x=1

40 %
S2
x=2

Figura 6.2 Ruleta para la distribución

Si hacemos girar la ruleta y el puntero marca el sector S2, significa que el evento a
representar durará 2 minutos; si el puntero marca el sector S1, el evento durará 1
minuto y si marca el sector S3 , el evento durará 3 minutos. Suponiendo que la ruleta
no presenta desperfectos, al efectuar el muestreo, ocurrirá con más frecuencia el
evento cuya duración es: 2 minutos.

En la práctica no es fácil contar con una ruleta apropiada a cada distribución.


Además la simulación se realiza en el computador y se emplean funciones

81
Simulación de Sistemas - 337

generadoras de números aleatorios. Para llevar a cabo el proceso de muestreo en


el ejemplo presentado, se supone que la ruleta posee 100 números, desde el 00
hasta el 99 inclusive. Los números del 00 hasta el 34 inclusive, se asocian con la
duración del evento de 1 minuto, los números comprendidos entre 35 y 74 se
corresponden con la duración de 2 minutos y los que van desde el 75 hasta el 99,
con el de 3 minutos. Se emplea un procedimiento generador de números aleatorios
desde 00 hasta 99 y se realiza la asignación correspondiente, como se muestra en
la tabla 6.2

Números aleatorios Duración


(minutos)
00-34 1
35-74 2
75-99 3

Tabla 6.2

En la tabla 6.3, se presentan una serie de números aleatorios obtenidos empleando


la hoja Microsoft Excel™. La función aleatorio() genera números aleatorios entre 0
y 1. Se multiplican por 100, se redondean a números enteros (también es posible
truncarlos) y se aplica la asignación expresada en la tabla 6.2

NA
Número aleatorio multiplicado Redondeado Tiempo de
(NA) por 100 a entero duración
0.893568313 89.35683126 89 3
0.468962656 46.89626557 47 2
0.238698466 23.86984661 24 1
0.044702919 4.47029194 4 1
0.65887724 65.88772402 66 2
0.713923995 71.39239945 71 2
0.737959739 73.7959739 74 2
0.714950273 71.49502732 71 2
0.489308993 48.93089933 49 2
0.832835555 83.28355546 83 3
Tabla 6.3

Ejemplo 6.3 (Muestreo de Monte Carlo)

En una empresa distribuidora de refrescos, se reciben pedidos cuya magnitud oscila


entre 3.000 y 18.000 cajas. De acuerdo al archivo histórico de datos, la distribución
de probabilidad es la siguiente:

82
Simulación de Sistemas - 337

Magnitud de los pedidos Probabilidad


(en cajas)
3.000 - 8.000 0,3
8.000 - 13.000 0,2
13.000 – 18.000 0,5

Tabla 6.4

La función continua de distribución acumulada es la siguiente:

F(x)
1

0,5

U0
0,3

0,0 x
3 8 O1 13 18 (en miles de cajas)

Figura 6.3
Función de distribución acumulada de la magnitud de los pedidos

La relación y = F(x) expresa el valor de la función acumulada F, dado un valor U0.


Para hallar el valor de o1, debemos saber en qué intervalo se encuentra U0,
En la figura, U está en el intervalo [0,3 , 0,5]. Calculamos la ecuación de la recta
que pasa por los puntos (8, 0,3) y (13, 0,5), y la expresamos en función de x:

5U
x= + 0,5 (6.1)
0,2

83
Simulación de Sistemas - 337

• Si asignamos a U0 el valor de 0,4, entonces de acuerdo a la ecuación 6.1, x


(magnitud de los pedidos), U = 0,4, será igual a 10,5 cajas.

• Si asignamos a U0 el valor de 0,46, entonces de acuerdo a la ecuación, x


(magnitud de los pedidos) será igual a 11 cajas.

• Por cada intervalo debe obtenerse una ecuación similar a la 6.1

Ampliación de conocimientos

Al lector interesado se le recomienda investigar sobre las diferentes aplicaciones


del método de Monte Carlo.

En la siguiente sección se presentan métodos para generar números aleatorios

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

En todo experimento de simulación estocástica se requiere el empleo de números


aleatorios. En el computador y en las calculadoras existen limitaciones para la
representación de los números, además las técnicas de producción de estos
números en estos dispositivos son deterministas, es por ello que a estos números
aleatorios se les denomina números seudoaleatorios. Los métodos de generación
de números aleatorios se utilizan para obtener números aleatorios entre 0 y 1. Los
números a obtener, cualquiera sea el método deben tener las siguientes
características:

9 Uniformemente distribuidos
9 Estadísticamente independientes
9 La media debe ser estadísticamente igual a ½
9 La varianza debe ser igual a 1/12

Los métodos más conocidos para generar números aleatorios son:

• Métodos congruenciales
• Método de cuadrados medios

Métodos congruenciales: Se basan en operaciones del siguiente tipo:

ri+1 = (a + c. ri) mod m (6.2)

84
Simulación de Sistemas - 337

En donde a, c y m son constantes y r0 es denominado la semilla del generador.

En algunos lenguajes de programación existen funciones para la generación de


números aleatorios, entre 0 y 1, ó entre 0 y un número positivo mayor que 1.
También existen funciones que permiten asignar valores a la semilla.

Recordatorio

La operación módulo (mod) se efectúa entre números enteros y consiste en hallar


el resto de la división entera de x entre y. Así la operación 5 mod 3 = 2; 15 mod 3 =
0.

Ejemplo 6.4 (Generación de números aleatorios empleando un método


congruencial)

Genere 10 números aleatorios, utilizando como semilla r0 = 29, y como constantes:


a = 117, c = 11 y m = 311
De acuerdo a la relación (6.2) se tiene:

Número obtenido según Número Aleatorio


Recurrencia (NA)
125 0,40322581
248 0,8
46 0,1483871
1 0,00322581
128 0,41290323
281 0,90645161
98 0,31612903
262 0,84516129
200 0,64516129
140 0,4516129
Tabla 6.5

Nota: Estos resultados se obtuvieron en una hoja de cálculo Excel. La función


equivalente a módulo es la función residuo.

Si m tiene un valor pequeño, ocurrirá un ciclo de repetición de los números, por ello
se recomienda escoger a m como el entero más grande que se pueda aceptar el
computador.

85
Simulación de Sistemas - 337

Existen reglas para la selección de los valores de a y c, estas son:

• El número c debe ser un entero impar, no divisible entre 3 ni entre 5.

• El número a debe ser escogido tal que a mod 8 = 5, para el caso en que se
emplee una computadora binaria y a mod 200 = 21, para el caso en que se
emplee una computadora decimal

Ejercicios y actividades propuestas:

• Utilizando la hoja de cálculo Excel o alguna calculadora, genere 20


números aleatorios con valores de m menores a 311. Examine los
números obtenidos. Observe que cuando el valor de m es pequeño, por
ejemplo m = 7, se repiten los números obtenidos.

• Utilizando la hoja de cálculo, genere 30 números aleatorios. Calcule la


media aritmética y la varianza de estos números generados. Verifique si
estos estimadores tienen las características deseadas.

Método de cuadrados medios: El procedimiento para obtener los números


aleatorios de acuerdo a este método, es el siguiente:

• Suministrar una semilla


• Elevar al cuadrado la semilla
• Tomar el k dígitos centrales, para formar el número aleatorio.
• Los k dígitos pasarán a ser la nueva semilla para obtener el nuevo número
aleatorio

Número Cuadrado NA Ejemplo 6.5 (Generación de


3567 12723489 0,7234 números aleatorios empleando
7234 52330756 0,3307 el método de cuadrados
3307 10936249 0,9362 medios)

Dada la semilla 3567, obtener 6 números


aleatorios de 4 dígitos.

86
Simulación de Sistemas - 337

9362 87647044 0,647


6470 41860900 0,8609
8609 74114881 0,1148

Tabla 6.6

Dada la semilla 3567, obtener 6 números aleatorios de 4 dígitos

• La selección de los parámetros a, b y m en los métodos para la


obtención de los números aleatorios, no es arbitraria. Su determinación
está fundamentada en la teoría de los números. Se recomienda al lector
interesado investigar sobre los criterios y las bases que sustentan la
selección de estos parámetros.

Pruebas estadísticas

Al emplear un generador de números aleatorios, es importante constatar si la


secuencia de números obtenidos cumple con las características deseadas. Existen
ciertas pruebas estadísticas, las cuales se mencionan a continuación:

• Pruebas de medias
• Pruebas de variancia o varianza
• Pruebas de forma
• Pruebas de independencia

Para profundizar en las pruebas estadísticas referidas se recomienda realizar los


ejemplos que aparecen en la selección de lecturas, capítulo “Simulación”

Generación de variables aleatorias discretas y continuas

En toda simulación probabilística se maneja la ocurrencia de eventos. La


ocurrencia de eventos debe estar regida por una distribución de probabilidad. Para
obtener estos eventos empleando una función de distribución de probabilidad se
emplean los generadores de eventos.
Los generadores de eventos de poblaciones aleatorias son muy útiles para modelar
situaciones específicas al hacer una simulación.

87
Simulación de Sistemas - 337

Existen varios métodos para la generación de eventos a partir de distribuciones de


probabilidad conocidas. Todos ellos se basan en el uso de números aleatorios (0,1)
uniformes, independientes e igualmente distribuidos. Consideraremos el muestreo
en primer lugar para el caso en que la variable aleatoria tiene una distribución
continua y en segundo lugar cuando tiene distribución discreta.

Caso: variable aleatoria continua

Las funciones de distribución para variables aleatorias continuas más conocidas


son:

• Exponencial
• Uniforme
• Triangular
• Normal
• Gamma
• Chi Cuadrado
• Weibull
• Erlang

A continuación se presentan los métodos genéricos: Transformación Inversa o


Método Inverso y el Método de Aceptación-Rechazo y los métodos específicos:
Convolución y Directo. La exposición sobre cada método se ilustra con ejemplos
referidos a distribuciones conocidas.

Método de Inversión: Suponga que se requiere hallar una muestra aleatoria x, de


la función de densidad de probabilidad f(x). La función acumulativa de probabilidad,
si la variable aleatoria es de distribución continua está dada por:

F ( x ) = ∫ f (t )dt = P ( x < x )
−∞

Como se conoce la función de densidad de la variable aleatoria y se requiere hallar


la muestra aleatoria, la misma se obtendrá a partir de la inversa de la función
acumulativa, como se expresa a continuación :

x = F-1(r), en donde r ∈ (0,1) (6.3)

Por lo cual el método consiste en hallar un número aleatorio uniformemente


distribuido entre 0 y 1 y aplicando la función acumulativa inversa se obtiene la
muestra aleatoria x. Cabe destacar que existen funciones de distribución para las
cuales resulta muy costosa la obtención de la función inversa.

88
Simulación de Sistemas - 337

Ejemplo 6.6 (Generación de muestras aleatorias con distribución


uniforme, empleando el método de Inversión)

Sea una variable aleatoria uniformemente distribuida: U(2,8).


La función de distribución uniforme es la siguiente:

⎧0 x<2
⎪x − a

F(x) = ⎨ 2≤ x ≤8
⎪b − a
⎪⎩1 x≥8

El valor de x se obtiene, empleando la relación 6.3, así

x = F-1(U) = 2 + (8-2)U

Si se obtienen números aleatorios a partir de un generador de números aleatorios


en (0,1), los resultados son:

NA a+(b-a)*U
0,07100566 2,42603398
0,15760714 2,94564281
0,46562939 4,79377637
0,61228534 5,67371203
0,94271469 7,65628813
0,62618179 5,75709076
0,3896156 4,33769363
0,61604503 5,69627021
0,23677881 3,42067288
0,71815757 6,30894539

Tabla 6.7

Los valores obtenidos son válidos siempre que los números aleatorios empleados
sean uniformemente distribuidos en (0,1)

89
Simulación de Sistemas - 337

Generación de muestras aleatorias con distribución Exponencial

Para hallar muestras aleatorias con esta distribución, empleamos el Método de


Inversión. La función de distribución acumulativa (ver figura 6.5) es:

F(x) = 1- e-ax

Como deseamos obtener valor de x, debemos despejar x en la expresión:

r = 1- e-ax en donde r ∈ (0,1)

De aquí se obtiene:

1
x=− Ln(r ) (6.4)
a

Figura 6.4 Función de densidad para números aleatorios con distribución


exponencial

90
Simulación de Sistemas - 337

1.0

0.0
Figura 6.5 Función de distribución acumulativa para números aleatorios con
distribución exponencial

A continuación se presenta un ejemplo en donde emplea el Método de Inversión,


para obtener muestras aleatorias con distribución exponencial.

Ejemplo 6.7 (Generación de muestras aleatorias con Distribución


Exponencial, Método de Inversión)

Genere números aleatorios para la distribución Exponencial, con α = 15.

Como x = -1/α Ln r, donde r es un número aleatorio uniformemente distribuido en


(0,1)

r x
0.00404103 0.36741707
0.95884255 0.00280189
0.86271739 0.00984454
0.9153499 0.00589659
0.30126301 0.07998477
0.0893076 0.16104458
0.94775257 0.00357745
0.18997418 0.11072447
0.57723029 0.03663427
0.35977659 0.06815147

91
Simulación de Sistemas - 337

Tabla 6.8

El método de inversión no se puede aplicar siempre, ya que en algunos casos no


es fácil obtener la inversa de una función. Existen otros métodos que pueden ser
útiles para obtener muestras aleatorias con distribuciones conocidas como el
método de Aceptación y Rechazo y el de Convolución.

Método de Aceptación -Rechazo

Este método es empleado cuando no existe la distribución acumulativa en forma


cerrada. Para este tipo de distribuciones se empleará el método que se especifica a
continuación:
Sea f(x) una función de distribución de una variable aleatoria, definida en un
intervalo finito a ≤ x ≤ b. Se seguirán los siguientes pasos para hallar una muestra
aleatoria x:

Paso 1: Seleccionar una constante M tal que M es el mayor valor de f(x), sobre
el intervalo [a, b]

Paso 2: Obtener dos números aleatorios en (0,1), r1 y r2.

Paso 3: Calcular x* = a + (b-a) r1

Paso 4: Evaluar f en x*, sea f(x*)

Paso 5: Si f(x*)/M ≥ r2, entonces x* es aceptada como una muestra aleatoria


cuya distribución es f(x). Terminar.
En caso contrario se rechaza x* y se repite el paso 2

En ele ejemplo siguiente se aplica el Método de Aceptación-Rechazo

Ejemplo 6.8 (Generación de muestras aleatorias con Distribución


Triangular, empleando el Método de Aceptación-
Rechazo)

Sea la variable aleatoria x, cuya función de distribución es la siguiente:

⎧3 x 0 ≤ x ≤ 1
f ( x) = ⎨
⎩0 en otro caso

Como primer paso se debe obtener el valor de M, para el ejemplo M = 3

92
Simulación de Sistemas - 337

M= 3
a= 0
b= 1

Al obtener dos números aleatorios r1 y r2, se tienen los siguientes resultados:

r1= 0,346736653
r2= 0,512154324

Los resultados son:

r1 x* f(x*) f(x*)/M Prueba


0,34673665 0,346736653 1,04020996 0,34673665 Se acepta x*

Entonces, se acepta el valor x* como una muestra aleatoria con la función de


distribución f(x)
Si para este ejemplo, los valores de r1 y r2 hubiesen sido:

r1= 0,325386011
r2= 0,196939764

Resultados:

r1 x* f(x*) f(x*)/M Prueba


Se rechaza
0,32538601 0,325386011 0,97615803 0,32538601 x*

Se rechaza el valor x*.


En este caso es necesario generar dos nuevos números aleatorios y repetir el
proceso

Método de Convolución

La generación de valores para las variables aleatorias con distribución normal no es


posible empleando alguno de los métodos anteriores. Para ello se utiliza el Método
de convolución el cual consiste en la suma de variables aleatorias independientes,
con distribuciones más sencillas y se apoya en el Teorema del Límite Central.
La suma Y de n variables aleatorias independientes e idénticamente distribuidas:
Y1, Y2,…, Yn, cada una con media µ y varianza finita σ2 es aproximadamente normal

93
Simulación de Sistemas - 337

distribuida con media nµ y varianza nσ2. Si aplicamos esto a variables aleatorias


uniformes U(0,1), con media µ = ½ y varianza σ2= 1/12, entonces:
n

∑R i − 0.5n
Z= i =1
1/ 2
(Transformada z)
⎛n⎞
⎜ ⎟
⎝ 12 ⎠

Es aproximadamente normal con media 0 y varianza 1. Si n = 12 entonces


tenemos:

12
Z = ∑ Ri − 6
i =1
Si deseamos generar un valor para una variable aleatoria con distribución normal,
media µ y varianza σ2, obtenemos Z y luego la estandarizamos empleando la
relación:

X = µ + σZ (6.5)

El método de convolución presentado aquí sólo se aplica a la distribución normal y


no puede emplearse en otras distribuciones. Sin embargo se pueden generar
muestras aleatorias para variables con distribución Erlang, con parámetro kλ,
partiendo del hecho que una variable con distribución Erlang puede obtenerse como
la suma de k variables independientes e idénticamente distribuidas.

Existe otro método aplicable a la distribución normal denominado método directo,


que se explica a continuación.

Método Directo

Consiste en generar dos números aleatorios U(0,1), r1 y r2, los cuales serán
transformados en valores con distribución normal, media 0 y varianza 1 a través
de lo siguiente:

Z1 = (-2lnr1)½ sen 2π r2 (6.6)

Z2 = (-2lnr1)½ cos 2π r2

Al estandarizar se tiene

X1 = µ + σZ1 (6.7)

94
Simulación de Sistemas - 337

X2 = µ + σZ2

El método de Convolución genera valores aleatorios aproximados a la normal. El


método Directo produce valores normales exactos.

Ejemplo 6.9 (Generación de muestras aleatorias con Distribución Normal,


aplicando el Método de Convolución y el Método
Directo)

La demanda de litros de leche en una distribuidora de alimentos es una variable


aleatoria con distribución normal, media de 1.200 litros y desviación estándar de 200
litros. Se requiere obtener una muestra aleatoria para la demanda.

Empleando el Método de Convolución, en una hoja Excel se obtuvo lo siguiente:

n Ri Función: ALEATORIO ()
1 0,971674663
2 0,145035063
º3 0,911982646
4 0,866916748
5 0,38829355
6 0,789381701
7 0,069327368
8 0,41857793
9 0,685858561
10 0,25603001
11 0,206697919
12 0,371481898

Tabla 6.9

12

∑R
i =1
i =6,081258059

12

Z= ∑R i =1
i −6 = 0,081258059

95
Simulación de Sistemas - 337

Media: 1200
Desviación Estándar: 200
X : 920,6681866 ≈ 921 litros

Función: DISTR.NORM.INV(probabilidad; media; desv_estándar)

Empleando el método directo se obtuvieron dos muestras aleatorias:

ri zi xi (estándar)
1 0,96277541 -0,179082687 1164,18346 ≈ 1.164 litros
2 0,61264834 -0,209283594 1158,14328 ≈1.158 litros

Ampliación de conocimientos

• Los métodos de la inversión y Aceptación-Rechazo son los más utilizados


para la generación de muestras de variables aleatorias de distribuciones
continuas conocidas. Existen otros métodos como el de Composición y el
de Cocientes de Uniformes, que se pueden emplear para el mismo fin. Al
lector interesado se recomienda investigar sobre estos métodos.

Caso: variable aleatoria discreta

En algunas situaciones se presentan funciones de distribución que no se


corresponden con funciones de distribución conocidas, generalmente se cuenta
con un conjunto de datos, relacionados con la ocurrencia de los eventos. A este tipo
de distribuciones discretas se les denomina empíricas y su tratamiento se hace
empleando el Método de monte Carlo.
Las funciones de distribución para variables aleatorias discretas más conocidas
son:

• Bernoulli
• Binomial
• Hipergeométrica
• Poisson
• Binomial negativa

96
Simulación de Sistemas - 337

Igualmente como en el caso discreto, existen métodos genéricos y específicos.


Describiremos los métodos de Inversión y Aceptación – Rechazo.

Método de inversión

Este método se basa en el siguiente resultado: sea F (u ) = min { x : F ( x ) ≤ x } . Si U


es una variable aleatoria con distribución uniforme, U(0,1), entonces la variable
X = F (U ) tiene una función de distribución F.
Si queremos obtener valores de una variable aleatoria discreta, con función de
probabilidad:

P{ X = xj } = pj, j = 0,1,…, (6.8)

En donde ∑p j =1
j

Se debe generar un número aleatorio U, con distribución uniforme, U(0,1), tal que:


⎪ x0 si U < p0

⎪ x1 si p0 ≤ U < p0 + p1

X = ⎨M
⎪ j −1 j
(6.9)
⎪x j

si ∑p
i =1
i ≤ U < ∑ pi
i =1
⎪M

Como P{ a ≤ U < b} = b-a

Para 0< a < b < 1, se tiene que:

P {X = x j } = P ⎧⎨∑ pi ≤ U < ∑ pi ⎫⎬ = p j
j −1 j
(6.10)
⎩ i =1 i =1 ⎭

97
Simulación de Sistemas - 337

Por lo que X tiene la distribución deseada

Lo aquí presentado se puede expresar en el siguiente algoritmo:

• Generar un número aleatorio U


• Si U < p0 entonces hacer
X = x0
Terminar
• Si U < p0 + p1 entonces hacer
X = x1
Terminar
• Si U < p0 + p1+ p2 entonces hacer
X = x1
Terminar


Si los xi, i ≥ 0, están ordenados de manera que x0 < x1 < x2 <… y si F denota la
función de distribución acumulativa de X, entonces:

j
F ( x j ) = ∑ pi y X = xj si F(xj-1) ≤ U ≤ F(xj) (6.11)
i =0

Ejemplo 6.10 (Generación de muestras aleatorias con Distribución


Bernoulli, aplicando el Método de Inversión)

Obtenga 10 muestras aleatorias con distribución Bernoulli, dado que p = 0,45

Sea X una variable aleatoria con distribución Bernoulli (1, p)

Se empleará la siguiente función inversa:

98
Simulación de Sistemas - 337

⎧1 si u ≥ 1 − p
F (u ) = I ( u ≥1− p ) = ⎨
⎩0 si u < 1 − p (6.12)

Se generan 10 números aleatorios uniformes en (0,1). Por cada número aleatorio


obtenido se emplea la relación (6.12) para hallar las muestras.

Número aleatorio Muestra


0,04541273 0
0,9401114 1
0,74745227 1
0,31183547 0
0,76602184 1
0,66241266 1
0,10665422 0
0,01882653 0
0,76090088 1
0,83887074 1
Tabla 6.10

Método de Aceptación-Rechazo

Es similar al caso continuo. Dada una variable aleatoria discreta con una función de
masa de probabilidad { pj, j ≥ 0}, simulamos una variable aleatoria Y, con función de
masa { qi } y luego se acepta este valor si se cumple que es menor o igual que pY
/qY (probabilidad proporcional)
Se seguirán los siguientes pasos para hallar una muestra aleatoria x:

Paso 1: Generar un valor Y con su función de masa qj

Paso 2: Obtener un número aleatorio U, en (0,1)

Paso 3: Calcular C = pY/(cqY) c es una constante tal que c ≥ pj /qj para


todo j

Paso 4: Si U < C, hacer X = Y . Terminar. Se acepta el valor de Y


En caso contrario Y es rechazado, ir al paso 1

99
Simulación de Sistemas - 337

Ejemplo 6.10 (Generación de muestras aleatorias, aplicando el Método de


Aceptación-Rechazo )

Dada una variable aleatoria X, la cual puede tomar los valores con su
respectiva probabilidad mostrados en la tabla (6.11)

xi p(xi)
1 0,02
2 0,12
3 0,13
4 0,05
5 0,07
6 0,12
7 0,12
8 0,25
9 0,08
10 0,04
Tabla 6.11

Se quiere obtener una muestra aleatoria, empleando el Método de Aceptación-


Rechazo. Se tomará q (la variable simulada) con una función de densidad uniforme
discreta en 1, …, 10. Entonces qj = 1/10, j = 1,…,10

C = Max { pj/qj} = 2,5

Para esta situación dada, con el fin de obtener un valor para py, se modifica el
algoritmo presentado, al siguiente:

Paso 1: Generar un número aleatorio U1 en (0,1) y hacer:


Y = Entero (10.U1) + 1
Paso 2: Obtener otro número aleatorio U2, en (0,1)

Paso 3: Calcular C = pY/(cqY) c es una constante tal que c ≥ pj /qj para


todo j. Para este caso c*qY = 0,25

Paso 4: Si U2 < C, hacer X = Y . Terminar. Se acepta el valor de Y

100
Simulación de Sistemas - 337

En caso contrario Y es rechazado, ir al paso 1

Resultados al aplicar el algoritmo:

Prueba
U1 Y qY cqY pY pY/cqY U2 (U2<pY/(cqY)?)
0,33472058 4 0,1 0,25 0,05 0,2 0,11486849 Se acepta

Luego Y = 4 es una muestra aleatoria

Ampliación de conocimientos

• Los métodos de la inversión y Aceptación-Rechazo son los más utilizados


para la generación de muestras de variables aleatorias de distribuciones
discretas conocidas. Existen otros métodos como el de Composición y el
de Alias, así como métodos específicos. Al lector interesado se recomienda
investigar sobre estos métodos.

Ejercicios de autoevaluación

6.1 En un quiosco de ventas de periódicos y revistas, se desea hacer un estudio


sobre el comportamiento de la venta de la revista Al Día. De acuerdo a datos
almacenados sobre la conducta de la demanda de dicha revista, se estiman
las siguientes categorías:

Categoría de la demanda de la Porcentaje de ocurrencia


revista
Alta 25%
Media 40%
Baja 35%

Tabla 6.10

101
Simulación de Sistemas - 337

Además se obtuvo la siguiente distribución, dentro de cada categoría:

Distribución de probabilidad

Demanda Alta Media Baja

25 0,05 0,05 0,25


32 0,05 0,05 0,15
38 0,05 0,2 0,15
45 0,05 0,2 0,15
58 0,1 0,3 0,1
65 0,2 0,1 0,1
72 0,2 0,05 0,05
85 0,3 0,05 0,05

Tabla 6.11

En donde la demanda se cuantifica en número de unidades vendidas a la


semana.

Sobre la base de la distribución dada, realice un procedimiento para hallar


valores de la demanda. Genere 10 valores de la demanda empleando
números aleatorios.

6.2 Obtenga una ecuación similar a la ecuación 6.1, en el ejemplo 6.3, para el
caso de los intervalos [0 , 0,3] y [0,5 , 1], en función de x

6.3 Genere una secuencia de 30 números aleatorios entre 0 y 1 empleando el


método congruencial, para a = 40, c = 13 y m = 1231 y una semilla de 4571.

6.4 Dada la siguiente función de distribución para la variable aleatoria x:

⎧x
⎪ 0≤ x≤2
f ( x) = ⎨ 3 ,
⎪⎩0 en otro caso

102
Simulación de Sistemas - 337

utilice el Método de Inversión para obtener muestras aleatorias con esta


función de distribución, empleando números aleatorios uniformes en (0,1).

6.5 El proceso de las llegadas en un sistema de reclamos se rige por una


distribución de Poisson. Dado que el parámetro de la distribución es de 5
reclamos por hora. Obtenga una muestra aleatoria Poisson.

Respuestas a los ejercicios de autoevaluación

6.1 Para poder generar valores para la demanda, se obtienen las funciones de
distribución acumulativas y la asignación de números aleatorios

Categoría de la frecuencias Acumula Asignación de


demanda tiva números
aleatorios
Alta 0,25 0,25 0-24
Media 0,4 0,65 25-63
Baja 0,35 1 64-99

Tabla 6.12

Distribución Acumulativa por categoría

Alta Media Baja


0,05 0,05 0,25
0,1 0,1 0,4
0,15 0,3 0,55
0,2 0,5 0,7
0,3 0,8 0,8
0,5 0,9 0,9
0,7 0,95 0,95
1 1 1

Tabla 6.13

103
Simulación de Sistemas - 337

Asignación de números aleatorios por categoría

Alta Media Baja Demanda


(Unidades)
0 4 0 4 0 24 25
5 9 5 9 25 39 32
10 14 10 29 40 54 38
15 19 30 49 55 69 45
20 29 50 79 70 79 58
30 49 80 89 80 89 65
50 69 90 94 90 94 72
70 99 95 99 95 99 85

Tabla 6.14

Para hallar valores para la demanda, se genera un número aleatorio y se determina


la categoría de la misma (alta, media, baja), según la asignación presentada en la
tabla 6.12. Luego se genera otro número aleatorio que permitirá determinar la
demanda dentro de la categoría, de acuerdo a la asignación de números aleatorios
de la tabla 6.14.

NA Transformación Categoría NA Transformación


0,43471486 43 MEDIA 0,58340409 58
0,5380535 53 MEDIA 0,22211303 22
0,43624139 43 MEDIA 0,95469003 95
0,19328224 19 ALTA 0,41520653 41
0,68068241 68 BAJA 0,64048507 64
0,49755314 49 MEDIA 0,54377652 54
0,37300542 37 MEDIA 0,09707081 9
0,35008265 35 MEDIA 0,45258993 45
0,79972903 79 BAJA 0,54487743 54
0,82288855 82 BAJA 0,5001867 50

Tabla 6.15

Nota: NA se refiere al número aleatorio generado

104
Simulación de Sistemas - 337

La demanda semanal de la revista Al Día se muestra en la tabla 6.16

NA
transformado Categoría Demanda (unidades)
58 MEDIA 58
22 MEDIA 38
95 MEDIA 85
41 ALTA 65
64 BAJA 45
54 MEDIA 58
9 MEDIA 32
45 MEDIA 45
54 BAJA 38
50 BAJA 38

Tabla 6.16

6.2 Ecuaciones:

• Para el intervalo [3,8] : al asignar valores de U comprendidos entre [0 ,


0,3], se obtienen los valores de x de acuerdo a la relación:

5U
x= +3
0,3
• Para el intervalo [13,18] : al asignar valores de U comprendidos entre [0,5 ,
1], se obtienen los valores de x de acuerdo a la relación:

U
x= +8
0,1

6.3 Método congruencial

a = 40
c =13
m =1231
semilla = 4571

105
Simulación de Sistemas - 337

Números seudoaleatorios

375 513 1133


1222 554 1228
1154 1087 1
270 630 53
1088 844 729
643 1164 900
1013 400 661
899 316 16
648 455 248
1078 1031 802
Tabla 6.17

6.4 Función acumulativa:

⎧0 x<0
⎪ 2
⎪x
F ( x) = ⎨ 0≤ x≤2
⎪ 6
⎪⎩1 x ≥ 2

Al resolver para x se obtiene:

x2
= r; por lo tanto: x = 6r
6

6.5 Para obtener una muestra con distribución Poisson, λ = 5, se parte de lo


siguiente:

Una variable aleatoria X es Poisson, con tasa λ si

λi
pi = P {X = i } = e −λ
i!

En este caso consiste en el número de reclamos que llegan en un intervalo de


tiempo dado.

106
Simulación de Sistemas - 337

Para calcular las probabilidades de Poisson, se emplea la siguiente fórmula:


λ
pi +1 = pi , i ≥0 (6.13)
i +1

Se aplicará el siguiente algoritmo, el cual se basa en el resultado (6.13) para


obtener la muestra:

Paso 1: Generar un número aleatorio U , U(0,1),

Paso 2: i= 0, p = e-λ , F = p

Paso 3: Si U< F , X = N, terminar

Paso 4: p=λp/(i+1), F = F +p, i = i+1

Paso 5: Ir al paso 3

En la siguiente tabla se muestran los resultados, al aplicar el algoritmo:

i P F U Observaciones

0 e-λ= 0,006737947 0,006737947 0,82574706 No se satisface la condición

1 0,03368973 0,04042768 0,48204587 No se satisface la condición

2 0,08422434 0,12465202 0,62895448 No se satisface la condición

3 0,1403739 0,26502592 0,73075022 No se satisface la condición

4 0,17546737 0,44049329 0,01386511 Se satisface la condición

Tabla 6.18

La muestra corresponde a X = 4

107
Simulación de Sistemas - 337

UNIDAD 7

Desarrollo del modelo de simulación

En los módulos anteriores se ha acentuado la necesidad de estudiar un sistema


empleando un modelo, así como también se ha manejado el concepto de
simulación, como técnica para analizar el comportamiento de un sistema. Cuando
se realiza la simulación se experimenta con diferentes entradas y condiciones con
el objeto de estudiar las salidas. En esta unidad se abordará el desarrollo de un
modelo de simulación, contemplando todas sus fases, desde la conceptualización
del mismo hasta el análisis de los resultados. Reiteramos que nuestro enfoque
estará centralizado sólo en el modelo de simulación de eventos discretos o
simulación discreta. Bajo esta técnica se tratan los sistemas que evolucionan en
forma discreta, lo cual significa que su estado cambia sólo en ciertos instantes de
tiempo y no en forma continua. En todo momento se estimula a la utilización del
computador como medio indispensable para la realización del modelo de
simulación.

Objetivo de la Unidad 7

Formular un modelo de simulación dada una situación.

Contenido de la Unidad 7: Formulación del modelo de simulación. Selección


de Lenguajes de simulación. Pruebas estadísticas. Validación y
Estabilización.

108
Simulación de Sistemas - 337

Para llevar a cabo el estudio de esta unidad, presentaremos algunas


recomendaciones que incluyen un conjunto de actividades cuya realización se
recomienda hacer antes de proseguir a analizar los ejemplos aquí presentados.

Recomendaciones para el estudio del contenido de la unidad

• Repasar en la selección de lecturas 6.2, la cual se titula “Líneas de


espera” el capítulo relacionado con los modelos de colas o líneas de
espera y su solución.

• Estudiar en las unidades 8 y 9 del módulo titulado “Simulación de


Procesos Estocásticos”, lo relacionado con los experimentos de
simulación. Puede omitir las secciones que contienen códigos de
programas.

• Estudiar en la selección de lecturas 6.3, lo relacionado con el


desarrollo del modelo de simulación, lenguajes de simulación,
validación y estabilización del modelo.

• Leer la selección de lecturas 7.1, titulada: “Simulación por


computadora: Aplicaciones y Análisis Estadístico”, esta selección
presenta casos en los cuales se aplica el proceso de simulación
discreta y para su implementación se emplea un paquete de simulación.

• Resolver los ejercicios propuestos en la selección de lecturas. Utilice


la hoja de cálculo o algún lenguaje de simulación.

• Resolver los ejercicios del libro relacionados con los experimentos de


simulación. Utilice la hoja de cálculo, algún lenguaje de simulación o
programación de propósito general, para realizar sus experimentos.

• Consultar otras fuentes bibliográficas.

• Consultar los temas estudiados en sitios de Internet que aborden el


tema.

• Ante cualquier duda, consultar a su asesor en el centro local.

• Si desea hacer algún comentario o sugerencia acerca del curso o de


este material instruccional, comuníquese con el profesor que lo
administra a través de la dirección de correo electrónico suministrada
por la carrera. Recuerde que su comentario puede ser útil para
fortalecer y enriquecer dicho material instruccional.

109
Simulación de Sistemas - 337

Al concluir el estudio de esta unidad en el libro, el estudiante deberá estar


capacitado para responder las siguientes preguntas:

• ¿En qué consiste la simulación estocástica discreta? ¿Cuáles tipos existen?


• ¿Cómo se elabora un modelo de simulación?
• ¿Qué son lenguajes de simulación? ¿Cuáles son los lenguajes más
utilizados?
• ¿Qué son simuladores? ¿Cuáles son los simuladores más utilizados?
• ¿En qué consiste la validación y la estabilización del modelo de simulación?
• ¿Cómo se deben analizar los resultados de una simulación?

110
Simulación de Sistemas - 337

Simulación estocástica

La realización de una simulación comprende un conjunto de actividades, que se


describen a continuación:

Formulación del problema: Consiste en la definición de las variables de estado,


parámetros, medidas y criterios a considerar. En general, en el proceso de
formulación del problema se establecen las relaciones entre las entidades
importantes que conforman el sistema en estudio.

Elaboración del modelo: Previamente a la elaboración del modelo se recolectan


los datos, provenientes de la observación del sistema y/o datos históricos. Se
recomienda diseñar un modelo simple y progresivamente incorporar los nuevos
elementos o relaciones que sean necesarias. Se establecen las restricciones,
limitaciones, criterios de ejecución y parada. Esta etapa incluye: el tipo de
simulación a emplear, la lista de los eventos y la tipificación de los datos.

Correr el modelo: Consiste en seleccionar el lenguaje de simulación o herramienta


computacional o bien elaborar el programa a implantar en el computador y
ejecutarlo.

Verificar el modelo: En esta etapa se determina si los resultados obtenidos al


ejecutar el programa, se corresponden con lo que se quería obtener, en pocas
palabras, si el programa funciona de manera apropiada.

Validar el modelo: Es una etapa fundamental en ella se evalúa si representa al


sistema real y los resultados son confiables. Si se logra comprobar que el modelo es
válido, se procede al diseño del experimento. En caso contrario es preciso revisar el
modelo, para hacer los ajustes que se requieran.

Diseñar el experimento: Consiste en realizar diferentes corridas de la simulación,


empleando diferentes criterios.

Analizar los resultados obtenidos: Incluye la recolección de los resultados y la


realización de análisis estadísticos.

El proceso descrito se puede visualizar en la siguiente figura (Figura 7.1)

Elaboración del modelo de simulación

Los sistemas que serán estudiados son aquellos que al evolucionar en el tiempo
presentan cambios en algún atributo de alguna entidad, cada atributo se asocia a
una variable. Cada vez que ocurre un evento, los valores de estas variables
cambian, por lo tanto cambia el estado del sistema. Los eventos ocurren en distintos

111
Simulación de Sistemas - 337

instantes de tiempo y el paso del tiempo se controla con un reloj de simulación. Una
de las actividades a realizar cuando se quiere elaborar un modelo de simulación,
dependiendo de la implantación en el computador es definir el tipo de modelo que
se realizará.

Tipos de simulación

Existen dos tipos de simulación discreta, cuando se emplea el mecanismo del reloj:

• Orientada a intervalos
• Orientada a sucesos

A continuación se describen ambos tipos

Simulación orientada a intervalos

También se le conoce como síncrona. En este tipo de simulación se mantiene un


reloj que se incrementa en pasos fijos de tiempo ∆t. Así la medición del tiempo se
hace en los puntos: t, t + ∆t, t + 2∆t y así sucesivamente. El diagrama de flujo de
este tipo de simulación se muestra en la figura 7.2.

112
Simulación de Sistemas - 337

Formulación

Elaboración del modelo

Correr el modelo

no
Verificado
?

si

no
Validado
?

Diseñar el experimento

Analizar los resultados

Completa
?
si

Documentar

Figura 7.1 Pasos en el proceso de simulación

113
Simulación de Sistemas - 337

Figura 7.2 Simulación con incremento uniforme de tiempo


Fuente: Ríos D., Ríos S. y Martín J.

Características del método de Simulación orientada a intervalos: Es de


implementación sencilla. Sólo se detectan los eventos que ocurren en intervalos de
tiempo t + j∆t, t + (j +1)∆t, lo cual ocasiona mediciones innecesarias. Es muy
empleado en simulaciones de sistemas continuos.

114
Simulación de Sistemas - 337

Simulación orientada a eventos

Este tipo de simulación también se le conoce como asíncrona, en ella el tiempo


avanza de acuerdo a la ocurrencia de un evento, es decir del instante t al instante t’.
El diagrama de flujo se muestra en la figura 7.3

Figura 7.3 Simulación con incremento variable


Fuente: Ríos D., Ríos S. y Martín J.

115
Simulación de Sistemas - 337

Características del método de Simulación orientada a intervalos: Sólo se


representan los eventos. Se invierte más eficientemente el tiempo de computación.
Es la estrategia más usada en los lenguajes de simulación.

Lista de eventos

En toda simulación es importante elaborar una lista de los eventos que podrían
ocurrir en la misma. Son ejemplos de eventos los siguientes:

• Inicio
• Una llegada de un elemento al sistema.
• Ocurrencia de una falla
• Una salida de un elemento
• Fin

En algunas simulaciones se les asigna un código a cada evento, a efectos de llevar


a cabo un conteo de sus ocurrencias. En general podría haber diferencias en cuanto
a la tipificación que se emplea en un lenguaje de simulación y a la que se realiza
empleando un programa o una hoja de cálculo.

Tipificación de datos y variables

Los datos y variables a utilizar en la simulación, de acuerdo a su naturaleza son de


los siguientes tipos:

• iniciales: condiciones iniciales. Se refieren a los datos previos a la


simulación, ejemplo: en los problemas de inventario, podría ser el
inventario inicial de un artículo o un pedido del artículo.

• Determinísticos: Son aquellos cuyo valor se conoce con certeza. Por


ejemplo la duración del envío de una orden es de 2 semanas.

• Estocásticos: Son aquellos de cuyo valor se tiene incertidumbre y se le


asignan funciones de probabilidades empíricas o conocidas.

Las variables de acuerdo a su uso son de los siguientes tipos:

• Conteo: Se emplean para contar el número de ocurrencias de eventos.

• Tiempo: Llevan la cuenta del tiempo de la simulación.

• Estado del sistema: Describen el estado del sistema en el tiempo t.

Existen otras variables que miden otros valores como ganancias esperadas,
pérdidas, etc.

116
Simulación de Sistemas - 337

Observaciones acerca de la simulación numérica: no simule cuando…

9 El problema puede resolverse analíticamente.


9 No hay información o ni siquiera datos estimados.
9 El comportamiento del sistema es demasiado complejo o no puede ser definido.
9 Las expectativas del modelo no pueden ser alcanzadas
9 El problema puede resolverse usando “análisis de sentido común”.
9 Es más fácil cambiar o ejecutar experimentos directamente en el sistema real.
9 El modelo no puede ser verificado o validado

En el siguiente ejemplo: se muestra un caso muy sencillo de simulación en donde


no se requiere llevar un conteo de reloj.

Ejemplo 7.1 ( Simulación de una venta de pólizas )

Juan Pérez es un corredor de seguros, que trabaja para la empresa Seguros


Saturno. Su dinámica de trabajo consiste en visitar a clientes potenciales de casa en
casa para venderles pólizas de seguros. Basado en datos históricos que posee
debido a su amplia experiencia en el ramo, ha determinado que de todas las visitas
que hace el 50 % de las veces la persona no está dispuesta a adquirir una póliza.
Si la persona está dispuesta a adquirir una póliza, esto no significa que se asegure
la venta, se estima que 1/3 de esas personas compran la póliza A, cuyo costo es de
1.000 UM, un 1/6 de ellas adquiere la póliza B, cuyo costo es de 2.000 UM y ½
definitivamente no adquiere póliza alguna.
Sobre la base de la situación planteada realiza una simulación de 20 visitas.
A continuación se presenta la simulación de 20 visitas. Para la determinación de
disposición o no disposición de adquirir la póliza se emplean números aleatorios
uniformes en (0,1), si resultan menores que 0,5, se considera que no hay
disposición de adquirir la póliza, en caso contrario están dispuestos a hacerlo.
Para determinar el tipo de póliza, se utiliza la distribución presentada en la siguiente
tabla:

X p(x) P(x) Asignación de NA Tipo de póliza


1 0,5 0,5 0 - 49 No adquiere
2 0,33333333 0,83333333 50 -82 A
3 0,16666667 1 83 - 1 B
Tabla 7.1 Distribución de probabilidades y asignación de NA

117
Simulación de Sistemas - 337

En la siguiente tabla se expone la simulación de la situación. En ella se genera un


número aleatorio que en caso de resultar menor que 0,5, se interpreta que la
persona no está interesada en adquirir la póliza. Si la persona está dispuesta a
adquirirla (NA1 ≥ 0,5), se generará otro número aleatorio NA2, que una vez
multiplicado por 100 y truncado a dos dígitos se asigna según la tabla 7.2

No
Visita NA1 Dispuesto dispuesto NA2 Tipo de póliza Valor
1 0,24605947 X
2 0,14316615 X
3 0,25190223 X
4 0,03533658 X
5 0,23081397 X
6 0,44853065 X
7 0,41604419 X
8 0,91658076 X 0,95094565 B 2.000,00
9 0,29484831 X
10 0,95449848 X 0,34091065 − 0,00
11 0,73105903 X 0,94203678 B 2.000,00
12 0,2605152 X
13 0,7223643 X 0,55106905 A 1.000,00
14 0,39583658 X
15 0,32177828 X
16 0,91111876 X 0,30863562 − 0,00
17 0,89633796 X 0,14639037 − 0,00
18 0,26063385 X
19 0,03757757 X
20 0,56235785 X 0,1277856 − 0,00

Tabla 7.2 Simulación realizada en la hoja de cálculo MS. Excel.


(Un guión indica que aún cuando existía disposición, de adquirir la póliza, no se hizo)

Además se incluye una columna en donde se especifica el valor de la póliza, si


acaso se adquiere. Es posible realizar varias simulaciones, para estudiar el
comportamiento del modelo y determinar por ejemplo las ganancias esperadas.
La simulación que mostramos en el ejemplo anterior es muy fácil de realizar, en
cada línea o fila de ella, se simula la visita a un cliente.

Los eventos son los siguientes:

• El cliente no está dispuesto a adquirir la póliza


• El cliente está dispuesto a adquirirla
• El cliente adquiere una póliza A
• El cliente adquiere una póliza B.
• El cliente definitivamente no adquiere la póliza

118
Simulación de Sistemas - 337

En el siguiente ejemplo se realiza una simulación, en donde se presenta una


situación de líneas de espera o colas.

Ejemplo 7.2 (Simulación orientada a eventos, sistema de colas)

Los clientes llegan a una taquilla de reclamos de una empresa de telefonía móvil.
Se ha observado el sistema y se han realizado mediciones de los tiempos entre
llegadas y de servicio. Los clientes llegan uno a uno, no lo hacen en grupos y el
primero que llega es el primero en ser atendido. En los modelos de colas estudiados
se suponía que tanto los tiempos entre llegadas como los de servicio eran
exponenciales, pero en este caso hemos obtenido a partir de las observaciones
distribuciones empíricas tanto de las llegadas como del servicio. Se puede decir que
los clientes que llegan a la taquilla provienen de una fuente infinita además no hay
limitaciones de espacio que podrían truncar la cola. Las llegadas ocurren en forma
aleatoria, de acuerdo a la siguiente función de distribución:

Tiempo entre llegadas


(minutos) Probabilidad
1 0,2
2 0,15
3 0,35
4 0,3

Tabla 7.3 Distribución del tiempo entre llegadas

Los tiempos de servicio son aleatorios y su distribución es la siguiente:

Tiempo de servicio
(minutos) Probabilidad
1 0,4
2 0,35
3 0,25

Tabla 7.4 Distribución del tiempo de servicio

Sobre la base de la situación planteada se requiere realizar una simulación, de 27


minutos.

Gráficamente se puede representar el sistema como se muestra en la figura 7.4

119
Simulación de Sistemas - 337

Taquilla
Población de
infinita atención

salida

Figura 7.4 Gráfico que representa el sistema

Para realizar una simulación discreta del comportamiento de este sistema,


definiremos los siguientes estados:

1. Número de clientes en el sistema.


2. Estado del servidor: libre u ocupado
3. El tiempo de la próxima llegada

Los eventos están relacionados con los estados, son aquellos que cambian el
estado del sistema y son los siguientes:

E1: La llegada de un cliente al sistema


E2 : La salida de un cliente del sistema una vez que es atendido

En la simulación estos eventos ocurrirán en ciertos puntos del tiempo.

Se tiene una variable de tiempo de reloj. La simulación se puede comenzar en un


tiempo cero, cuando el sistema estará vacío. El tiempo final de la simulación es 27
minutos, esto significa que el evento ficticio “fin” ocurrirá en el tiempo 27.

Al llegar el primer cliente, encuentra la taquilla libre y es atendido inmediatamente.


Si llega un nuevo cliente y encuentra el servidor ocupado se une a la línea de
espera. La determinación de la próxima llegada así como la duración del servicio se

120
Simulación de Sistemas - 337

hace empleando números aleatorios y la asignación apropiada según las


distribuciones presentadas en las tablas 7.2 y 7.3 respectivamente.
Ajuste de la variable reloj cuando ocurre una llegada al sistema:

tiempo de reloj + tiempo generado entre llegadas

Ajuste de la variable reloj cuando ocurre una salida del sistema:

tiempo de reloj + tiempo generado de servicio

Antes de realizar la simulación, estableceremos que ocurre una llegada al sistema


en el tiempo 1(evento inicial)
Las asignaciones de los números aleatorios a los tiempos entre llegadas y de
servicio se exponen en las siguientes tablas:

Asignación
Tiempo p(x) P(x) de NA
1 0,2 0,2 0 19
2 0,15 0,35 20 34
3 0,35 0,7 35 69
4 0,3 1 70 100

Tabla 7.5 Asignación de los NA1 según la distribución de los tiempos entre
llegadas (tabla 7.3)

Asignación de
Tiempo p(x) P(x) NA
1 0,4 0,4 0 39
2 0,35 0,75 40 74
3 0,25 1 75 100

Tabla 7.6 Asignación de los NA2 según la distribución de los tiempos de servicio
(tabla 7.4)

Para realizar la simulación aplicaremos el Método del Próximo Evento, cuyo


algoritmo está esbozado en un diagrama de flujo (Figura 7.5). Este método consiste
en mantener una lista de eventos y en cada iteración (línea de simulación) se
selecciona el evento más próximo a ocurrir.

121
Simulación de Sistemas - 337

Además de los eventos E1 y E2 ya descritos para la situación actual,


consideraremos el evento fin de la simulación, E3. Las variables utilizadas se
describen en la siguiente tabla:

Variable Descripción

Reloj Lleva el conteo del tiempo

LLE Próxima llegada programada (*)

SAL Próxima salida programada (*)

COLA Tamaño de la cola

Servidor Podrá indicar: libre u ocupado

Lista de Está constituida por todos los eventos generados,


eventos ordenados crecientemente por tiempo. En ella se
almacena el tipo de evento y el tiempo asignado (LLE
ó SAL) según sea el tipo; si se trata del evento final
se le asigna el tiempo que durará la simulación. El
evento que tenga el menor tiempo de reloj asignado,
será el próximo a ocurrir.

Tabla 7.7 Descripción de las variables empleadas


(*) Su valor se determina, generando un número aleatorio, uniforme en (0,1) y empleando las
asignaciones presentadas en las tablas 5.5 y 7.6 según corresponda a tiempo entre llegadas o
salida.

122
Simulación de Sistemas - 337

Iniciar variables de
estado, evento inicial,
evento final, lista de
eventos

Llegada (E1) Próximo Salida (E2)


Evento X
?
Reloj = Reloj + LLE Reloj = Reloj + SAL

Fin (E3)
Servidor Terminar
ocupado
No Si
Servidor No COLA >0 Si
libre ?
?
Cola =0

COLA = COLA Servidor ocupado Servidor libre COLA = COLA


+1 -1

Generar E2 Generar E2

Generar E1

Actualizar
Lista de eventos

Figura 7.5. Diagrama de flujo, Método del Próximo


Evento, para un servidor

123
Simulación de Sistemas - 337

A continuación se muestra la tabla de la simulación resultante al aplicar el método.

Núm. Estado Long. Prox. Prox.


Reloj Tipo de evento de cte. servidor cola NA1 Lleg. NA2 Sal. Lista de eventos

0 Inicial ____ libre 0 ____ ____ ____ ____ E3/27


1 Llegada 1 ocupado 0 0,660721 3 0,56794769 2 E2/2;E1/3; E3/27
2 Salida 1 libre 0 E1/3;E3/27
3 Llegada 2 ocupado 0 0,311413 2 0,6791305 2 E2/5; E1/5;E3/27
5 Salida 2 libre 0 0,110182 1 E1/5;E3/27
5 Llegada 3 ocupado 0 0,768063983 4 0,4103644 2 E2/7;E1/9;E3/27
7 Salida 3 libre 0 E1/9;E3/27
9 Llegada 4 ocupado 0 0,114317289 1 0,807430103 3 E1/10;E2/12;E3/27
10 Llegada 5 ocupado 1 0,873871 4 E2/12;E1/14;E3/27
12 Salida 4 ocupado 0 0,32696152 1 E2/13;E1/14;E3/27
13 Salida 5 libre 0 E1/14;E3/27
14 Llegada 6 ocupado 0 0,065577 1 0,90555342 3 E1/15;E2/17;E3/27
15 Llegada 7 ocupado 1 0,965361 4 E2/17;E1/19;E3/27
17 Salida 6 ocupado 0 0,89005008 3 E1/19;E2/20;E3/27
19 Llegada 8 ocupado 1 0,665767448 3 E2/20;E1/22;E3/27
20 Salida 7 ocupado 0 0,31608744 1 E2/21;E1/22;E3/27
21 Salida 8 libre 0 E1/22; E3/27
22 Llegada 9 ocupado 0 0,45019032 3 0,633220502 2 E2/24;E1/25;E3/27
24 Salida 9 libre 0 1 E1/25;E3/27
25 Llegada 10 ocupado 0 0,64901154 3 0,55763054 2 E2/27;E1/28;E3/27
27 Salida 10 libre 0 E1/28
27 Fin E1/28

Tabla 7.8 Simulación

Un evento resaltado en negrilla, en la lista de eventos, corresponde al próximo evento a


ocurrir.
Gráficamente se puede representar la simulación señalando las ocurrencias de las
llegadas y las salidas, a través de los 27 minutos, como se muestra en la figura 7.6.

Llegada
Salida

minutos
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

Figura 7.6 Gráfico de las ocurrencias de llegadas y salidas

124
Simulación de Sistemas - 337

Una vez obtenida la simulación se puede recolectar información sobre las medidas
de efectividad de este sistema de colas, tales como los tiempos de espera, el número
de elementos en la cola, el número de elementos en todo el sistema, etc.

Atención:

El algoritmo que se aplicó es específico para el caso en que ocurren tres tipos
de evento (tomando en cuenta el evento fin de la simulación). Al aplicar el
método para un mayor número de eventos, se debe ampliar la sección de
determinación del próximo evento, señalada con X, según sea la situación.

Ejercicios y actividades propuestas

• Un ejercicio interesante es realizar una simulación de colas, con servidores


paralelos y ocurrencia de eventos de acuerdo a ciertas distribuciones de
probabilidades, empleando estructuras de datos tipo cola. El programa
emitiría reportes de estadísticas de la simulación: conteo de las colas,
ocupación de los servidores, número de llegadas en un período de tiempo,
etc.

Selección de Lenguajes de simulación.

En los ejemplos analizados hemos visto que ha sido fácil elaborar una simulación.
En situaciones más complejas, en donde se maneja un mayor número de eventos,
resulta más difícil de hacerlo. Cualquier simulación puede realizarse empleando
lenguajes de programación de propósito general, como: C, Pascal y Fortran, los
cuales proveen facilidades para elaborar instrucciones relacionadas con:
condiciones, asignaciones, bucles (loops), secuencias de acciones y procesos.
Además poseen funciones para la generación de números seudoaleatorios.
Comercialmente se han desarrollado muchos paquetes de software. Dentro de la
gama de software de simulación existente se pueden distinguir dos tipos: lenguajes
de simulación y simuladores. Cabe destacar que cuando no se posee un
software especializado, un recurso muy útil para hacer simulaciones numéricas es la
hoja de cálculo(1). Las ventajas que posee la hoja de cálculo son: simplicidad de
manejo, facilidad de inclusión de funciones matemáticas, lógicas, estadísticas y
otras. Otra de las ventajas que ofrece esta (1) herramienta es la de facilitar la
visualización integral de la data y resultados. Existen además complementos para la
hoja de cálculo que simplifican la tarea de simulación. Una de los problemas que
presenta la hoja de cálculo es cuando se manejan muchos eventos, en algunos

(1)Cuando mencionemos la hoja de cálculo siempre nos referiremos a la Microsoft Excel™, que es la
más usada.

125
Simulación de Sistemas - 337

casos se dificulta llevar el control de los sucesos.

Algunos autores han determinado ciertas funciones que requiere la simulación


discreta, que hacen la diferencia entre un lenguaje de simulación y uno de propósito
general, las cuales son:

• Generar números aleatorios.


• Variar el tiempo hasta la ocurrencia del siguiente evento.
• Generar variables aleatorias.
• Representar gráficamente el modelo y la simulación
• Realizar análisis estadístico sobre datos registrados.
• Construir salidas en formatos determinados.
• Detectar inconsistencias y errores.

Cuando se emplea un lenguaje de simulación algunas cosas que debíamos tomar


en cuenta para el modelaje del problema resultan transparentes para el diseñador

Lenguajes de simulación

Son paquetes de software desarrollados con el propósito de facilitar la realización


de la simulación, en general suelen proveer facilidades para la modelización. Un
lenguaje de este tipo proporcionará mecanismos de reloj, métodos para llevar a
cabo la ocurrencia de eventos dadas las distribuciones de probabilidades,
generadores de números aleatorios, herramientas para recolección y manipulación
de la data, análisis estadístico y herramientas para la validación del modelo.
Algunos lenguajes de simulación son:

• GPSS
• GASP
• R
• SIMAN
• SIMSCRIPT
• SIMULA
• SIMULINK
• SLAN
• TOOL KIT
• VENSIM

126
Simulación de Sistemas - 337

Los lenguajes disponibles en el mercado, para simulación discreta pueden ser de


dos categorías:

1- Orientados a eventos
2- Orientados a procesos

Lenguajes orientados a eventos

Para operar con estos lenguajes, el usuario debe detallar los eventos y todas las
acciones a seguir con las ocurrencias de cada uno de ellos. El lenguaje permite
incluir la data sobre distribuciones de probabilidad, realizan el muestreo automático
y generan medidas estadísticas.

Lenguajes orientados a procesos

Se basan en el concepto de la caja negra, con el efecto de simplificar los detalles de


cálculo. Operan con bloques o nodos que se vinculan entre sí formando una red. Si
empleamos un lenguaje de simulación de esta categoría para resolver el problema
planteado en el ejemplo 7.2, tendríamos que considerar un bloque para representar
los clientes que provienen de una fuente infinita, un bloque para la cola y otro para
el servidor.

Simuladores

Los simuladores son paquetes de software que se desarrollan para tratar


situaciones específicas. Son de fácil uso, pero limitados a usos determinados.
Muchos de ellos se construyen a partir de lenguajes de simulación, son ejemplos de
ellos los siguientes:

• SIMFACTORY: Se utiliza para la simulación de sistemas de


manufacturación
• LANNET: Se utiliza para simulación de redes de área local
• NETWORK: Se emplea en la simulación de redes de
comunicación
• XCELL: Sistemas de proceso

127
Simulación de Sistemas - 337

Caso de estudio: Simulación de un problema de colas, en una


estación de cobro de peaje

Simulación de un sistema de colas en una estación de cobro de peaje (ejemplo


15.3, expuesto en el capítulo 15 de Mathur y Solow, el cual ha sido incluido en las
lecturas complementarias)

El organismo de tránsito encargado del mantenimiento de la Autopista de Nueva


Jersey, desea mejorar el flujo de tráfico a través de sus casetas de cobro. Uno
de los administradores ha sugerido que se favorezca el paso de vehículos teniendo
en servicio casetas especiales para automóviles que lleven dos o más pasajeros. A
los canales que conducen a las casetas especiales se les denomina carriles
rápidos. Actualmente la estación posee 3 casetas para el cobro de peaje, la
comisión ha seleccionado una de ellas para evaluar el impacto de la propuesta.
Como analista de operaciones Ud. ha sido designado para determinar el impacto
que tendría en el flujo actual el hecho de convertir una de las tres casetas en
atención del carril rápido. El esquema de la situación se muestra en la figura 7.7.
La comisión luego de estudiar la situación y recolectar datos sobre el número de
vehículos, la frecuencia y el número de personas en la cola y otros hechos, ha
determinado que la caseta de cobro seleccionada actualmente atiende 20 vehículos
por minuto, durante las horas pico. De estos vehículos sólo 1/3 lleva dos o más
pasajeros. Los datos también muestran que el tiempo entre llegadas de dos
vehículos pueden ser aproximados por una distribución exponencial, con una tasa
promedio λ = 20 vehículos por minuto.
Los datos registrados además indican que las casetas que atienden al tráfico en
general requieren un tiempo de atención por vehículo que obedece a la siguiente
distribución:

Tiempo Probabilidad
(segundos)
3-8 0,6
8 -13 0,3
13 -16 0,1

Tabla 7.9

128
Simulación de Sistemas - 337

Figura 7.7

No existen datos similares para la caseta rápida propuesta. Además no se espera


que el tiempo de servicio en ésta siga la distribución anterior debido a que dicha
distribución pertenece a automóviles, camiones y otros tipos de vehículos, mientras
que la caseta rápida es sólo para la atención de automóviles.
De la experiencia con casetas rápidas se estima que el tiempo de servicio puede ser
estimado bastante bien por una distribución exponencial, con una tasa media de 10
autos por minuto.

Sobre la base de la situación planteada desarrolle un modelo de simulación, a partir


del cual se podrá emitir estimaciones del tiempo de espera por vehículo, el número
esperado de vehículos y la fracción de tiempo que tarda el empleado en atender a
un vehículo.

Modelo de Simulación

Condiciones iniciales: Número de vehículos en el sistema, al iniciarse la


simulación, por ejemplo hay un vehículo en la caseta rápida y uno en cada caseta
general. Como la simulación se hará en un período lo suficientemente largo, las
condiciones iniciales no deberán influir en los resultados.

Datos Determinísticos: Duración de la simulación, número de casetas( 2 puestos


con idéntica distribución y uno rápido).

129
Simulación de Sistemas - 337

Datos Estocásticos: Llegadas de los vehículos(entre llegadas con distribución


exponencial, λ = 20 vehículos/minuto). Servicio según el tipo de caseta, como 1/3 de
los vehículos llevan dos personas, el 33% podrá circular por el carril rápido. El
tiempo de servicio en canales generales (distribución empírica dada). El tiempo de
servicio en la caseta rápida (exponencial, λ = 10 vehículos/minuto).

Generación de eventos:

Para la generación de eventos se deberá contar con un generador de números


aleatorios uniformes (0,1)

Los eventos son:

• Duración del tiempo entre llegadas de los vehículos


• Número de personas en el vehículo
• Duración del servicio en las dos casetas generales
• Duración del servicio en la caseta rápida
• Fin de la simulación ( será predeterminado)

La formación de la cola, surge a la llegada de un vehículo cuando la estación


está ocupada y puede haber otros vehículos en espera, así las colas son:

• Cola en los canales generales ( 2 canales) si están ocupados


• Cola en canal rápido, si está ocupado

Para ver en detalle la realización de la simulación, se recomienda leer en la


selección de lecturas: Simulación por computadora: Aplicaciones y Análisis
Estadístico de Mathur K. y Solow D., el ejemplo 15.3. En la solución del mismo se
aplica primero una simulación, empleando un esquema de contabilidad manual y
luego se emplea el paquete de simulación SIMAN. Al final se analizan los
resultados.

Atención:

Gran parte de los problemas que son objeto de estudio en simulación están
relacionados con sistemas de colas. Esto no significa que sólo trataremos
problemas de este tipo.

Una vez elaborado el modelo de simulación es preciso considerar aspectos como


validar el modelo, cuál es el tamaño de la simulación y cuál el número de corridas a
realizar. Lo que sigue corresponde analizar el comportamiento del sistema a través

130
Simulación de Sistemas - 337

de los resultados obtenidos en la simulación y aplicar correctivos si acaso fuese


necesario en pro del buen funcionamiento del sistema.

Validación

Una de las preguntas que se hacen quienes desarrollan modelos de simulación es


cuántas simulaciones hacer para obtener resultados confiables?, esto significa que
los resultados obtenidos puedan ayudar a inferir sobre el comportamiento real del
sistema. Validar un modelo consiste en comprobar las hipótesis planteadas al
modelar; al respecto cabe hacerse la siguiente pregunta ¿el modelo se comporta
como se esperaba?

Diseño de experimentos

Otra pregunta frecuente es cuál debe ser el tamaño de la simulación, recordando el


ejemplo de las pólizas, ¿cuántas visitas simular?, en el ejemplo de las colas
¿cuántos minutos simular?. El resultado de las variables en el modelo tiende a
estabilizarse a medida que transcurre el tiempo de la simulación o el número de
intentos, es entonces cuando los valores de las variables serán confiables; en este
caso se dice que los resultados presentan una condición de equilibrio.

El diseño del experimento se hace de acuerdo a los objetivos del estudio. En el se


consideran esencialmente los siguientes aspectos:

1. Longitud de las corridas


2. Longitud del periodo de calentamiento, si es necesario.
3. Numero de replicaciones independientes (réplicas)

Otro de los aspectos no menos importante, es la selección de las condiciones


iniciales. Una inadecuada selección de las condiciones iniciales podría distorsionar
los resultados de la simulación e incrementar el valor de la varianza.

Longitud de las corridas: En general el tamaño de la corrida depende de la eficacia


del generador de números aleatorios uniformes (0,1) y de las condiciones iniciales
establecidas.

Cálculo de réplicas: Algunos autores recomiendan que el número de réplicas sea de


3 a 10. Para realizar el análisis estadístico es necesario calcular los estimadores de
media, varianza e intervalo de confianza de cada réplica.

131
Simulación de Sistemas - 337

Análisis de los resultados

Una vez efectuadas las corridas planificadas se procede analizar e interpretar los
resultados. Si el estudio fue bien planificado, se habrá planteado un conjunto bien
definido de preguntas y el análisis tratará de responderlas. Es muy importante
también, cuidar la validez estadística de los resultados.
Antes de implantar las soluciones en el sistema, algunos autores consideran
conveniente experimentar con algunas variables del modelo, con el fin de hallar
mejores soluciones, esto se asocia al análisis de sensibilidad de la solución.

Ejercicios de autoevaluación

7.1 A un supermercado llegan los clientes, estimándose que el tiempo entre llegadas
sigue una distribución uniforme (1, 3) minutos. Estos emplean en promedio 1
minuto por la compra de cada artículo; el número de artículos adquiridos sigue
una distribución exponencial, con una tasa de 1/12. Se dispone de seis cajas
estándar que admiten a los clientes, cualquiera sea el número de artículos a
adquirir, dos cajas rápidas que admiten compras de hasta 10 artículos y una caja
especial para minusválidos y ancianos. El número promedio de clientes que
utilizan la caja especial es del 4%. Sin tomar en cuenta el tiempo invertido en la
cola, cada cliente que pasa por una caja estándar emplea 6 segundos por artículo
seleccionado, a través de la caja rápida, 5 segundos; cuando se trata de un
minusválido se emplean 2 minutos por artículo.
Sobre la base de la situación planteada, determine cuáles son los eventos a
considerar y las distribuciones de probabilidades correspondientes.

7.2 Una papelería emplea tres cajeras para servir a sus clientes, los cuales llegan de
acuerdo con un proceso de Poisson, con una tasa media de dos por minuto. Si un
cliente encuentra todas las cajas ocupadas, se ubica al final de una fila a la que
dan servicio todas las cajeras; es decir, no hay colas frente a cada caja, sino que
esperan formados hasta que una cajera se desocupa. El tiempo para realizar las
transacciones entre la cajera y el cliente tiene una distribución exponencial con
media de tres por minutos.

Con base a lo anterior obtenga los valores de las siguientes medidas de


efectividad:

a) Promedio de Clientes en el sistema


b) Promedio de clientes en la cola

132
Simulación de Sistemas - 337

c) Tiempo promedio en la cola


d) Tiempo promedio en el sistema
e) Fracción de tiempo en que las 3 cajeras permanecen ociosas
f) Fracción de tiempo en que las 3 cajeras estarán ocupadas.

Respuestas a los ejercicios de autoevaluación

7.1 Eventos:

Evento Distribución
Cliente llega al supermercado. Tiempo entre llegadas U(1,3)

Cliente escoge un número de artículos. Exponencial negativa con parámetro 1/12 (*)

Cliente escoge una caja estándar o 96/100


rápida. Hay 6 cajas estándar y 2
rápidas. (+). Sólo podrá unirse a la cola
rápida si tiene un número de artículos
entre 1 y 10.

Cliente escoge una caja especial .Hay 4/100


2 cajas especiales. (+)
Cliente ingresa en alguna cola (hay 10 Tiempo transcurrido antes de unirse a la
colas) (+) cola:
Se corresponde con el número de artículos,
obtenido en (*), en minutos.
Cliente es atendido en la caja Tiempo de atención:
correspondiente (salida), hay cajas 10 Según la caja y el número de artículos
cajas escogidos(*). Caja estándar (6 segundos por
artículo). Caja rápida(5 segundos por artículo).
Caja especial ( 2 minutos por artículo)

(+)
Se podrá suponer que el cliente se unirá a la cola que tenga menos personas, según la
categoría que le corresponda

7.2 La situación presentada se ajusta perfectamente a un modelo abierto de colas


de Poisson, con 3 puestos de servicio. Este modelo tiene una solución analítica,
es por ello que para obtener las medidas solicitadas no se requiere realizar una
simulación.

133
Simulación de Sistemas - 337

Los resultados son:

a)

⎡ ⎛λ⎞
2

⎢ λµ ⎜⎜ ⎟⎟ ⎥
⎢ ⎝ µ⎠ ⎥ Po + λ
L=⎢ 2 ⎥
( s − 1)!( sµ − λ ) µ
⎢ ⎥
⎢⎣ ⎥⎦

−1
⎡⎛ λ ⎞s ⎛ ⎞ ⎛λ ⎞
n

⎢⎜ ⎟ ⎜ ⎟ s −1 ⎜ ⎟ ⎥
µ ⎜ 1 ⎟+ ∑⎝µ⎠
P0 = ⎢ ⎝ ⎠ ⎥
⎢ s! ⎜ λ ⎟ n = 0 n! ⎥
⎢ ⎜ 1 − sµ ⎟ ⎥
⎢⎣ ⎝ ⎠ ⎥⎦

L = 0,68060395 clientes en el sistema


b)

⎡ ⎛ λ ⎞
s ⎤
⎢ λµ ⎜ ⎟ ⎥
⎢ ⎜µ⎟ ⎥
Lq = ⎢ ⎝ ⎠ P
2 ⎥ 0
⎢ ( s − 1)! ( s µ − λ ) ⎥
⎢ ⎥
⎣ ⎦

Lq = 0,009291521

c) Wq = C P0
s
⎛λ⎞
µ⎜ ⎟
C= ⎝µ⎠
(s − 1)! (sµ − λ )2

Wq = 0,004645761 minutos

1
d) W = Wq +
µ
W = 0,337979094 minutos

134
Simulación de Sistemas - 337

e) Es la fracción de tiempo en que las tres cajeras están


desocupadas y equivale a calcular Po
Po = 0,512195122, esto significa que aproximadamente el 52% del
tiempo las cajeras estarán libres.

f) Fracción de tiempo en que las 3 cajeras estarán ocupadas es


F = 1- Po – P1 – P2

⎧ 1 ⎛ λ ⎞n
Como: ⎪ ⎜⎜ ⎟⎟ Po si 0 ≤ n ≤ s
⎪ n! ⎝ µ ⎠

Pn = ⎨ n
⎛λ⎞
⎪ ⎜⎜ ⎟⎟
⎪⎝ µ ⎠
⎪⎩ s! s n− s Po sin > s

Entonces F = 0,03252033, esto significa que aproximadamente el


3,25% del tiempo las 3 cajeras estarán ocupadas.

Ampliación de conocimientos

La simulación multivariada es aquella en la que las variables aleatorias son


vectores, por lo cual las distribuciones de probabilidad son multivariadas.
En las últimas décadas se han desarrollado técnicas para generar muestras
con estas características. Al estudiante interesado en ampliar sus
conocimientos en este campo, se le recomienda indagar sobre el tema y sus
aplicaciones.

Consulta en la Web:

Se recomienda consultar la siguiente dirección, la cual ofrece un resumen
del proceso de simulación
http://www.fing.edu.uy/inco/cursos/io/archivos/teorico/simulac.pdf

Ã
V. Bibliografía

135
Simulación de Sistemas - 337

Azarang, M., García, E. (1996). Simulación y Análisis de Modelos Estocásticos.


México. Mc. Graw Hill.

Burden, R., Faires, J. (1985). Análisis Numérico. México. Iberoamericana.

Chapra, S., Canale, R. (1990). Método numéricos para ingenieros. México. Mc


Graw Hill.

Eppen, G., Gould, F., Schmidt, C., Moore, J., Weatherford, L. (2000). Investigación
de Operaciones en la Ciencia Administrativa. México. Pearson Educación.

García, J., (1983). Matemáticas Financieras con Ecuaciones de Diferencia Finita.


Barcelona, España. Planeta.

Gerald, C., Wheatley, P. (2000). Análisis Numérico con aplicaciones. México.


Pearson Educación.

Gutiérrez, M., (1983). Simulación de Sistemas. Caracas. UNA.

Mathur, K.,Solow, D. (1996). Investigación de Operaciones. México. Prentice Hall.

Nakamura, S.,(1992). Métodos Numéricos Aplicados con Software. México. Prentice


Hall.

Phillips, D., Ravindran, A., Solberg, J. (1976). Operations research Principles and
Practice. Canada. Wiley and Sons.

Ríos, I., Ríos I., Martín, J. (2000). Simulación, Métodos y aplicaciones. México.
Alfaomega Grupo Editor.

Ross, S. M.(1990). Simulación. México. Prentice Hall

136
Simulación de Sistemas - 337

Taha, Hamdy A. (1998) Investigación de Operaciones, una introducción. 7ma edición.


México. Pearson Educación.

The Open University. (1971). Diferencias Finitas. Cali, Colombia. Mc Graw Hill.

The Open University. (1971). Ecuaciones Diferenciales I. Cali, Colombia. Mc Graw


Hill.

Winston W., (2005). Investigación de Operaciones, Aplicaciones y Algoritmos.


México. Thomson.

Zill, D. (1982). Ecuaciones Diferenciales con Aplicaciones. EUA. Iberoamericana.

137