You are on page 1of 5

Introducción

¿Qué es simulación?. A pesar de ser una palabra utilizada con una relativa fre-
cuencia, no existe un criterio unánime a la hora de definir el término simulación. El
diccionario de la RAE proporciona la acepción Representar algo, fingiendo o imitando lo
que no es para simular, indicando que simulación es la acción o el efecto de simular. El
dicionario de María Moliner proporciona varias acepciones para dicha palabra, entre
otras Hacer parecer que existe u ocurre una cosa que no existe o no ocurre. Esta acepción
contiene el fondo del concepto, pero hay que considerar el término desde un punto de
vista más concreto.
Uno de los primeros conceptos que aparece es el de sistema. Gaines proporciona
una extensa definición de sistema de la que puede extraerse: Un sistema es lo que se
distingue como tal. El sistema más grande que se conoce es el Universo. Si se separa una
parte del Universo de forma que se pueda conocer perfectamente lo que está dentro
de ella y lo que está fuera, entonces esa parte es un nuevo sistema. Una característica
fundamental de un sistema es que se puede establecer perfectamente lo que pertenece
a él y lo que no, también se puede especificar cómo interacciona con el entorno. El
planteamiento es jerárquico, ya que si se separa una nueva parte se estará ante un
nuevo sistema.
Ashby1 plantea que un sistema no significa otra cosa que un conjunto de variables. De
esta forma, obtener un sibsistema, no implica necesariamente tomar una parte del
sistema inicial, sino un subconjunto de las variables del mismo. Es decir, la división
tiene lugar a nivel de abstracción matemática y en el contexto del modelado.
Otra propiedad de un sistema es el hecho que puede ser controlado y observado,
sin que estos términos tengan el mismo significado que el que se aplica en teoría de
control. Las interacciones del mismo con el mundo natural se pueden dividir en dos
categorías:

Variables generadas por el entorno y que tienen influencia en el comportamiento


del sistema. Normalmente se las referencia como entradas.

Variables que están determinadas por el sistema y que, a su vez, pueden tener
influencia en el comportamiento del entorno. Se llaman salidas.

Bajo esta forma de actuar, se pueden asignar valores a alguna de las entradas al sis-
tema y observar el comportamiento del mismo considerando los valores de las salidas.
Esto lleva a una nueva definición de sistema atribuida a Zeigler que dice Un sistema es
una fuente potencial de datos.
De una manera muy general, y en un contexto científico, se puede considerar la
simulación como una forma de adquisición de conocimiento. Existen tres métodos
1
W. Ross Asby (1956), An introduction to Cybernetics, Chapman&Hall, 1957

1
básicos de obtener conocimiento sobre una realidad objetiva: Experimentación, Análi-
sis y Simulación. Consideremos el siguiente ejemplo práctico para presentar la natu-
raleza de estos tres métodos. El sistema considerado es una gasolinera con un oper-
ario. La pregunta que se plantea es: “cuál es el promedio de tiempo consumido por un
coche en dicha gasolinera”. Para obtener la respuesta se dispone de tres posibilidades:

Experimentación. Se toman cronómetros y se mide el tiempo que gasta cada


coche en la gasolinera. Se cuentan los coches y, al final, se suman todos los tiem-
pos y se divide entre el número de ellos.

Análisis. Se utiliza una fórmula de la teoría de colas para calcular el tiempo


promedio gastado en el sistema directamente. Para poder utilizar dicha forma
se deben hacer bastantes simplificaciones sobre el sistema real y se necesitan
además algunos parámetros cuantitativos (en este caso número de coches que
llegan por unidad de tiempo y número de coches servidos por unidad de tiem-
po).

Simulación. Se escribe un modelo de simulación que genera llegadas aleatorias


de los coches y también la duración de los servicios. Se deben secuenciar las
actividades de un forma que coincida exactamente con lo que ocurre en la reali-
dad. La observación y recogida de los datos estadísticos, así como su evaluación
deben ser programados (para cada coche hay que calcular el tiempo gastado, el
total de tiempo acumulado, el número de coches servidos y calcular el prome-
dio).

Cada método tiene sus ventajas e inconvenientes, por lo que no se puede establecer
un orden de prioridad entre ellos. Solo se pueden comparar en el contexto de ciertos
casos particulares teniendo en cuenta varios criterios. A pesar de todo, hay algunas
apreciaciones que son obvias:
La experimentación es siempre el método más exacto, que debe ser usado siempre
que sea posible. Lamentablemente la experimentación muchas veces es:

Demasiado peligrosa (por ejemplo el comportamiento de un reactor nuclear en


situaciones críticas, el aterrizaje de un avión con un reactor apagado, etc.).

Demasiado cara (En todos los casos que pueden producir daño, en experimen-
tos largos para estudiar el throughput de una red de datos, líneas de telefono
contratadas, etc.).

Imposible si se trata de un sistema que no está disponible (evaluación de varias


alternativas en la etapa de diseño).

El análisis (principalmente matemático) está basado normalmente en suposiciones


muy estrictas que son difícilmente verdaderas en la vida real. Otra desventaja de los

2
métodos analíticos es que utilizan un planteamiento muy complicado o los cálculos
realizados precisan mucho tiempo de proceso. Un ejemplo de esto es el análisis de
las Redes de Colas. Por otro lado, la utilización de fórmulas proporciona los resulta-
dos más rápidos y es posible comprobar un gran número de alternativas cambiando
los valores numéricos de los parámetros utilizados. Los métodos experimentales con-
sumen mucho más tiempo.
Otro problema del análisis es la disponibilidad de los parámetros necesarios. Su
medida exacta no es siempre posible o es imposible en la etapa de diseño. Utilizando
datos estimados o datos tomados de otros sistemas similares disminuye la credibilidad
de los resultados.
La simulación es también un método experimental, Korn y Wait indican que una
simulación es un experimento realizado sobre un modelo2 . En lugar de realizar experimen-
tos con el sistema real, éstos se realizan con un modelo de simulación (el diseño es,
por tanto, fundamental en los estudios de simulación). Muchos autores han planteado
definiciones de modelado y simulación considerando cada uno aspectos importantes a
destacar en ambos términos, Bernard Zeigler, autor de varios libros sobre modelado y
simulación indica en uno de ellos que Modelado es el proceso de organizar el conocimiento
del sistema. Al realizar experimentos se va aumentando el conocimiento que tenemos
sobre un sistema. Al principio el conocimiento está desorganizado, pero a medida que
se trabaja sobre el modelo se van comprendiendo cuáles son las causas y los efectos.
Aunque el modelado es la actividad fundamental de muchos científicos e ingenieros,
los objetivos de su uso son diferentes. Mientras el científico crea un modelo para obser-
var y comprender su funcionamiento, el ingeniero quiere cambiarlo para mejorar su
funcionamiento. Mientras que para la ciencia lo fundamental es el análisis, la esencia
de la ingeniería es el diseño.
La simulación también tiene desventajas. Las más importantes son:

La creación de modelos de simulación exige mucho esfuerzo. La programación


de modelos de simulación en algunos lenguajes de programación es bastante
difícil. Existen lenguajes específicos de simulación pero requieren mucho esfuer-
zo inicial, no siempre justificado. Existen herramientas de simulación, basadas
casi siempre en alguna técnica gráfica, que simplifican, o incluso automatizan, el
proceso de creación de modelos de simulación para cierta clase de sistemas.

El conocimiento limitado del sistema que se está estudiando. Inicialmente se


deben conocer algunos parámetros cuantitativos. En ele ejemplo anterior es nece-
sario generar intervalos aleatorios entre llegadas y tiempos de servicio aleato-
rios. En este caso los lenguajes de simulación son mucho mas flexibles que el
análisis puesto que permiten la generación de números aleatorios de una gran
variedad de distribuciones. En el ejemplo antes reseñado se pueden utilizar una
2
Korn, G. A. and J. V. Wait (1978). Digital continuous-system simulation. Englewood Cliffs, NJ, Prentice-
Hall.

3
o varias distribuciones obtenidas experimentalmente. A pesar de todo cualquier
distribución necesita uno o varios parámetros, si es teórica, o la función de dis-
tribución si se obtiene la distribución mediante medidas. Puede que en el sistema
existan cosas no cuantificables y hay que aceptar el hecho que añlgunos aspectos
no pueden ser contemplados.

Consumo de demasiado tiempo de cómputo. Es el caso de análisis de grandes


sistemas con muchos componentes trabajando en paralelo. Como la utilización
del paralelismo todavía no está muy extendida, casi siempre dichos sistemas se
simulan en máquinas con un solo procesador. El resultado es que la simulación
puede ser más lenta que la evolución del sistema en la realidad (1 segundo de
modelo puede necesitar 10 minutos de CPU). Esta situación no alienta la uti-
lización de la simulación en sistemas de control en tiempo real.

Una regla básica puede ser: “Si el experimento es posible, realícese. Es siempre el
mejor método porque se consideran todos los aspectos de interés. Incluso si se utilizan
otros métodos durante la etapa de diseño, la experimentación puede servir como una
evaluación final del sistema. Si no es posible realizar experimentos debe intentarse
obtener un método analítico apropiado. Si tampoco es posible, utilícese la simulación”.
A partir de las ideas expresadas sobre sistema y experimento se puede abordar de
una forma más conceptual la idea de modelo. Según Misnsky, Un modelo (M) para un
sistema (S) y un experimento (E) es cualquier cosa para la que pueda aplicarse E con el fin de
responder a preguntas sobre S.
Si centramos nuestra consideración en los modelos matemáticos, se pueden distin-
guir diversas categorías o tipos de modelos:

Modelos continuos en el tiempo. En esta categoría se considera el conjunto de


modelos cuyas variables de estado varían de forma continua con el tiempo. Las
ecuaciones que definen el modelo, sean algebraicas o diferenciales se pueden
resolver numéricamente. En el caso de las ecuaciones diferenciales en algunos
casos son diferenciales ordinarias y en otros en derivadas parciales.

Modelos discretos en el tiempo. Son aquellos en los que las variables de estado
cambian a intervalos fijos. El tiempo está, por tanto, discretizado en intervalos y
su representación se realiza mediante ecuaciones en diferencias del tipo:

xk+1 = f (xk , uk , tk )

Existen gran cantidad de situaciones reales que responden a este tipo de situación,
como los modelos de población de insectos, ya que estos solo se reproducen una
vez al año, o los modelos de población de personas.
Se pueden obtener sistemas discretos a partir de discretizaciones de sistemas
continuos. Por ejemplo, si el modelo:

4
ẋ = f (xk , uk , tk )

se discretiza en intervalos fijos se obtiene:


xk+1 −xk
4t ≈ f (xk , uk , tk )

o lo que es igual:

xk+1 = xk + 4t.f (xk , uk , tk )

que es un modelo discreto. Cuando se realizan simulaciones de un sistema con-


tinuo normalmente se utiliza esta técnica de discretización.

Modelos discretos orientados a eventos3 . En este tipo de modelos las variables


de estado pueden ser continuas, pero los cambios en ellas solo se producen en
determinados ininstantes de tiempo (eventos).
Existe una gran cantidad de situaciones reales a las que se pueden aplicar este
tipo de modelos, en general casi todas aquellas que se representan mediante
colas de espera (usuarios en una gasolinera, procesos en una computadora, etc.),
aunque existen modelos que se pueden calsificar en este tipo aunque no sean
colas de espera.

Referencias

Las referencias básicas para este punto son:

Jerry Banks, John S. Carson, Barry L. Nelson Discrete-Event System Simulation


Prentice-Hall, 1996. (Existe una tercera edición de 2001)

Averill M. Law, W. David Kelton Simulation Modeling and Analysis McGraw-Hill,


1991. (Existe una tercera edición de 2000)

Goerge S. Fishman Discrete-Event Simulation Springer-Verlag, 2001.

3
Se utiliza orientados a eventos como traducción del término inglés discrete-event, aunque se podría
utilizar orientados a sucesos