LENGUAJES DE SIMULACIÓN
El desarrollo de los lenguajes de Simulación
comenzó afínales de los años cincuenta;
inicialmente los lenguajes que se usaron en fueron
los de propósito general los cuales tenían las
siguientes ventajas:
•La situación a analizarse puede modelar en forma
más o menos sencilla para el programador por el
conocimiento del lenguaje.
•El proceso se puede describir con tanta precisión
como le sea posible en el lenguaje conocido.
•Se pueden realizar todas las depuraciones
posibles.
Cualquier lenguaje de programación puede ser
empleado para trabajar en Simulación, pero
los lenguajes especialmente diseñados
presentan las siguientes propiedades:
 Acaban la tarea de programación.
 Generan una guía conceptual.
 Colaboran en la definición de entidades en el
sistema.
 Manejan la flexibilidad en los cambios.
 Ayudan a analizar y a determinar la relación /
el número de entidades en el sistema.
Emshoff y Sisson consideran que la Simulación
Discreta requiere de ciertas funciones comunes
que diferencian un lenguaje de Simulación de
uno de propósito general, entre las cuales se
encuentran las siguientes:
* Generar números aleatorios.
* Generar variables aleatorias.
* Variar el tiempo hasta la ocurrencia del
siguiente evento.
* Registrar datos para salida.
* Realizar análisis estadístico sobre datos
registrados.
* Construir salidas en formatos determinados.
* Detectar inconsistencias y errores.
Entre estos lenguajes específicos podemos
nombrar los siguientes: MIDAS, DYSAC;
DSL , GASP, MÍMÍC; DYNAMO, GPSS,
SIMULA, CSSL (Continuous System
Simulation Language) , CSMP: ACSL
(Advanced Continuous Simulation
Language),DARE-P and DARE - Interactive,
C-Simscript, SLAM, SIMAN, SIMNON:
SÍMSCRSPT-ll-5, ADA, GASP IV, SDL.
Muchos de estos lenguajes dependen
fuertemente de los lenguajes de propósito
general como es el caso de SLAM o SIMAN
que dependen de “FORTRAN” para las
subrutinas.
Ventajas de los lenguajes de simulación:
 Dan fiabilidad a los resultados
 Permiten ahorrar tiempo
 Permiten concentrarse en el problema y no en
la programación
 Abren el campo a no expertos en informática
Ventajas frente a los lenguajes de propósito
general:
 Programas mas cortos:
 Están preparados para llevar la contabilidad de los
distintos parámetros.
 Tienen módulos para generar números aleatorios de
las distintas distribuciones.
Al tener menos líneas de código:
 Se reduce el tiempo de programación
 Es más fácil detectar posibles errores
 Es más fácil cambiarlo si queremos introducir alguna
variación
Además hay una serie de errores típicos que suelen ser
identificados y chequeados de forma automática.
Desventajas frente a los lenguajes de propósito
general:
Son menos flexibles, y su sintaxis tiende a ser menos
natural
Las ejecuciones son más lentas (pueden tardar hasta 8
veces más), siempre y cuando el programa de
lenguaje general esté diseñado de una forma
eficiente. Esto es debido a que están diseñados para
modelizar una amplia variedad de sistemas con un
conjunto de bloques ya construidos, mientras que los
de propósito general pueden ir directamente al caso
particular que se trate.
Son menos conocidos por analistas y programadores, y
los compiladores son menos accesibles
El lenguaje C es el más utilizado en simulación.
Características De Los Lenguajes De Simulación.
En la actualidad los lenguajes que existen en el mercado tienen una
serie
de características propias que los distinguen de otros, entre esas
características están las siguientes:
I. El procedimiento utilizado para generar los números
aleatorios uniformes y las variables no uniformes conocidas.
II. Los procedimientos o métodos utilizados para generar las
variables aleatorias no-uniformes más conocidas y más
usadas.
III. La forma de adelantar el reloj de simulación, que puede
hacerse con incrementos de tiempo fijo como DYNAMO o con
incrementos al próximo evento como GPSS.
IV. El análisis estadístico de los resultados de simulación.
V. El formato en que los resultados de la simulación son
representados.
VI. La forma en que las inconsistencias y errores de lógica es
reportada.
VII. El lenguaje en el cual el paquete esta escrito, el cual puede
ser: Fortran, Algol, PL;1, Asembler,etc. VIII. Los diferentes
tipos de computadoras cuyo compiladores compatible con el
Factores para elegir un Lenguaje de Simulación.
Cualquiera de los lenguajes de simulación tienen
sus propias ventajas y desventajas y no se puede
decir que un lenguaje es mejor que otro.
Generalmente, entre mas fácil de aprender y de
usar sea un lenguaje, menor será su flexibilidad y
su eficiencia. Por consiguiente, decidir que
lenguaje utilizar en una aplicación, especifica, no
es tarea fácil de realizar.
Clasificación De Los Lenguajes De Simulación.
Simulación Discreta: tiene que ver con el modelado de
un sistema que evoluciona en el tiempo mediante una
representación en la cual las variables de estado
cambian instantáneamente, cuando ocurren eventos.
Aunque la simulación discreta podría conceptualmente
ser realizada mediante cálculos manuales, la cantidad
de datos que deben ser almacenados y manipulados
en la mayoría de los sistemas del mundo real obliga a
que la simulación discreta sea realizada en
computadoras digitales.
Simulación Continua: se aplica cuando las variables de estado
cambian continuamente con respecto al tiempo. Típicamente,
los modelos de simulación continua involucran ecuaciones
diferenciales que dan relaciones para las tasas de cambio de
las variables con el tiempo. Si las ecuaciones diferenciales son
particularmente simples, pueden ser resueltas analíticamente
para dar los valores de las variables de estado para todos los
valores del tiempo como una función de los mismos en el
tiempo 0 o inicial. Sin embargo, para la mayoría de los
modelos continuos, no son posibles soluciones analíticas, y se
usan técnicas de análisis numérico.
Simulación Discreta-Continua Combinada: Como algunos
sistemas no son ni completamente discretos ni completamente
continuos, la necesidad puede llevar a construir un modelo con
aspectos tanto de simulación discreta como continua, resultando
en una simulación combinada discreta-continua. Los tres tipos
fundamentales de interacciones que pueden ocurrir entre
variables de estado cambiando continuamente y discretamente
son:
1. Un evento discreto puede causar un cambio discreto en el valor
de una variable de estado continua.
2. Un evento discreto puede causar que la relación que gobierna
una variable de estado continua cambie en un momento

Lenguajes de simulación

  • 1.
    LENGUAJES DE SIMULACIÓN Eldesarrollo de los lenguajes de Simulación comenzó afínales de los años cincuenta; inicialmente los lenguajes que se usaron en fueron los de propósito general los cuales tenían las siguientes ventajas: •La situación a analizarse puede modelar en forma más o menos sencilla para el programador por el conocimiento del lenguaje. •El proceso se puede describir con tanta precisión como le sea posible en el lenguaje conocido. •Se pueden realizar todas las depuraciones posibles.
  • 2.
    Cualquier lenguaje deprogramación puede ser empleado para trabajar en Simulación, pero los lenguajes especialmente diseñados presentan las siguientes propiedades:  Acaban la tarea de programación.  Generan una guía conceptual.  Colaboran en la definición de entidades en el sistema.  Manejan la flexibilidad en los cambios.  Ayudan a analizar y a determinar la relación / el número de entidades en el sistema.
  • 3.
    Emshoff y Sissonconsideran que la Simulación Discreta requiere de ciertas funciones comunes que diferencian un lenguaje de Simulación de uno de propósito general, entre las cuales se encuentran las siguientes: * Generar números aleatorios. * Generar variables aleatorias. * Variar el tiempo hasta la ocurrencia del siguiente evento. * Registrar datos para salida. * Realizar análisis estadístico sobre datos registrados. * Construir salidas en formatos determinados. * Detectar inconsistencias y errores.
  • 4.
    Entre estos lenguajesespecíficos podemos nombrar los siguientes: MIDAS, DYSAC; DSL , GASP, MÍMÍC; DYNAMO, GPSS, SIMULA, CSSL (Continuous System Simulation Language) , CSMP: ACSL (Advanced Continuous Simulation Language),DARE-P and DARE - Interactive, C-Simscript, SLAM, SIMAN, SIMNON: SÍMSCRSPT-ll-5, ADA, GASP IV, SDL. Muchos de estos lenguajes dependen fuertemente de los lenguajes de propósito general como es el caso de SLAM o SIMAN que dependen de “FORTRAN” para las subrutinas.
  • 5.
    Ventajas de loslenguajes de simulación:  Dan fiabilidad a los resultados  Permiten ahorrar tiempo  Permiten concentrarse en el problema y no en la programación  Abren el campo a no expertos en informática
  • 6.
    Ventajas frente alos lenguajes de propósito general:  Programas mas cortos:  Están preparados para llevar la contabilidad de los distintos parámetros.  Tienen módulos para generar números aleatorios de las distintas distribuciones. Al tener menos líneas de código:  Se reduce el tiempo de programación  Es más fácil detectar posibles errores  Es más fácil cambiarlo si queremos introducir alguna variación Además hay una serie de errores típicos que suelen ser identificados y chequeados de forma automática.
  • 7.
    Desventajas frente alos lenguajes de propósito general: Son menos flexibles, y su sintaxis tiende a ser menos natural Las ejecuciones son más lentas (pueden tardar hasta 8 veces más), siempre y cuando el programa de lenguaje general esté diseñado de una forma eficiente. Esto es debido a que están diseñados para modelizar una amplia variedad de sistemas con un conjunto de bloques ya construidos, mientras que los de propósito general pueden ir directamente al caso particular que se trate. Son menos conocidos por analistas y programadores, y los compiladores son menos accesibles El lenguaje C es el más utilizado en simulación.
  • 8.
    Características De LosLenguajes De Simulación. En la actualidad los lenguajes que existen en el mercado tienen una serie de características propias que los distinguen de otros, entre esas características están las siguientes: I. El procedimiento utilizado para generar los números aleatorios uniformes y las variables no uniformes conocidas. II. Los procedimientos o métodos utilizados para generar las variables aleatorias no-uniformes más conocidas y más usadas. III. La forma de adelantar el reloj de simulación, que puede hacerse con incrementos de tiempo fijo como DYNAMO o con incrementos al próximo evento como GPSS. IV. El análisis estadístico de los resultados de simulación. V. El formato en que los resultados de la simulación son representados. VI. La forma en que las inconsistencias y errores de lógica es reportada. VII. El lenguaje en el cual el paquete esta escrito, el cual puede ser: Fortran, Algol, PL;1, Asembler,etc. VIII. Los diferentes tipos de computadoras cuyo compiladores compatible con el
  • 9.
    Factores para elegirun Lenguaje de Simulación. Cualquiera de los lenguajes de simulación tienen sus propias ventajas y desventajas y no se puede decir que un lenguaje es mejor que otro. Generalmente, entre mas fácil de aprender y de usar sea un lenguaje, menor será su flexibilidad y su eficiencia. Por consiguiente, decidir que lenguaje utilizar en una aplicación, especifica, no es tarea fácil de realizar.
  • 10.
    Clasificación De LosLenguajes De Simulación. Simulación Discreta: tiene que ver con el modelado de un sistema que evoluciona en el tiempo mediante una representación en la cual las variables de estado cambian instantáneamente, cuando ocurren eventos. Aunque la simulación discreta podría conceptualmente ser realizada mediante cálculos manuales, la cantidad de datos que deben ser almacenados y manipulados en la mayoría de los sistemas del mundo real obliga a que la simulación discreta sea realizada en computadoras digitales.
  • 11.
    Simulación Continua: seaplica cuando las variables de estado cambian continuamente con respecto al tiempo. Típicamente, los modelos de simulación continua involucran ecuaciones diferenciales que dan relaciones para las tasas de cambio de las variables con el tiempo. Si las ecuaciones diferenciales son particularmente simples, pueden ser resueltas analíticamente para dar los valores de las variables de estado para todos los valores del tiempo como una función de los mismos en el tiempo 0 o inicial. Sin embargo, para la mayoría de los modelos continuos, no son posibles soluciones analíticas, y se usan técnicas de análisis numérico.
  • 12.
    Simulación Discreta-Continua Combinada:Como algunos sistemas no son ni completamente discretos ni completamente continuos, la necesidad puede llevar a construir un modelo con aspectos tanto de simulación discreta como continua, resultando en una simulación combinada discreta-continua. Los tres tipos fundamentales de interacciones que pueden ocurrir entre variables de estado cambiando continuamente y discretamente son: 1. Un evento discreto puede causar un cambio discreto en el valor de una variable de estado continua. 2. Un evento discreto puede causar que la relación que gobierna una variable de estado continua cambie en un momento