Está en la página 1de 7

Lenguaje de simulación

1. 1. REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR


PARA LA DEFENSA UNIVERSIDAD NACIONAL EXPERIMENTAL POLITECNICA DE
LA FUERZA ARMADA BOLIVARIANA NÚCLEO MIRANDA EXTENSIÓN SANTA
TERESA DEL TUY CARRERA: ING. SISTEMA SECCIÓN: SIS08-01 I-2013 Lenguaje de
Simulación PROF. BACHILLER: ING. H. Rojas. JESÚS M. MORALES S. SANTA TERESA
DEL TUY, ENERO DE 2014
2. 2. Introducción En la vida real se presentan situaciones o sucesos que requieren tomar
decisiones para planificar, predecir, invertir, proyectar posibles soluciones a problemáticas
planteadas al momento de efectuar una simulación. Para eso es importante el conocimiento del
problema o de la situación y de las posibles soluciones, donde juegan un papel de importancia
herramientas que permiten la obtención de información, como la modelización y la simulación.
Los datos que se obtienen permiten predecir el comportamiento actual y futuro en distintos
escenarios mediante una serie de experiencias realizadas con un programa informático.
Cualquiera sea la aplicación para simular, sea un programa comercial específico o una
aplicación con lenguaje de propósitos generales, requieren conocer y manejar una serie de
procedimientos y criterios para obtener datos y para analizarlos para tomar decisiones que
permitan optimizar los procesos.
3. 3. Lenguaje de Simulación El desarrollo de los lenguajes de Simulación comenzó a finales 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 analizar se 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 y 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, MIMIC, DYNAMO, GPSS, SIMULA,
CSSL( Continuous System Simulation Language) , CSMP, ACSL ( Advanced Conrinuous
Simulation Language), DARE-P and DARE-Interactive, C-Simscript, SLAM, SIMAN,
SIMNON, SIMSCRIPT-II-5, ADA, GASP IV, SDL.
4. 4. 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. Por otro lado, el
GPSS es un caso especial de un lenguaje de simulación de propósito especial, altamente
estructurado que esta orientado a la transacción, un caso especial de una orientación basada en
procesos más general. El GPSS fue diseñado para la simulación simple de sistemas de colas
tales como trabajos de taller. A diferencia de los otros lenguajes de simulación, GPSS tiene
varias implementaciones incluyendo GPSS/H y GPSS/PC, ambos de los cuales serán discutidos
mas adelante. El SIMAN V, SIMSCRIPT II.5, y el SLAM son lenguajes de simulación de alto
nivel que tienen constructor especialmente diseñados para facilitar la construcción de modelos.
Estos lenguajes proveen al analista de simulación con una opción orientación basada en
procesos o basada en eventos, o un modelo usando una mezcla de las dos orientaciones. A
diferencia del FORTRAN, estos tres lenguajes proveen la administración de la lista de eventos
futuros, generador interno de variables aleatorias, y rutinas internas para la obtención de
estadísticas (estas características para las implementaciones del GPSS mencionadas
previamente.) Se pueden lograr calculo complejos en ambas implementaciones del GPSS y
estos tres lenguajes. El SIMAN, SIMSCRIPT II.5, y el SLAMSYSTEM proveen la capacidad
de realizar simulación continua ( esto es, para modelar sistemas que tengan continuamente
cambios en sus variables de estado) pero este tema no esta dentro del alance de este libro. El
SIMAN esta escrito en C, aunque las primeras versiones del lenguaje fue escrito en FORTRAN.
El SIMAN V puede ser acezado directamente, o a través del medio ambiente del ARENA. El
SLAMSYSTEM contiene al lenguaje de simulación SLAM II. El SLAM II esta basado en el
FORTRAN y contiene al lenguaje GASP como un subconjunto. El GASP es un conjunto de
subrutinas en FORTRAN para facilitar las simulaciones orientadas al objeto escritas en
FORTRAN. El SIMSCRIPT II.5 por otro lado, contiene un subconjunto de un completo
lenguaje científico de simulación comparable con el FORTRAN, C o C++. El MODSIM III es
un descendiente del lenguaje que la compañía de productos CACI originalmente diseñado por la
armada de los Estados Unidos. Hereda mucha de su sintaxis del MODULA-2 y del ADA,
ciertas características del ADA y sus conceptos de simulación del SIMSCRIPT y el SIMULA.
Algunas de las características de la
5. 5. simulación orientada al objeto fueron originalmente vistas en el SIMULA y el SMALLTALK.
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 Estructura Del Lenguaje. Dentro de un programa de GPSS se pueden
distinguir cuatro tipos de instrucciones, cada una de las cuales se detalla a continuación: •
Instrucciones de acceso al sistema GPSS Estas instrucciones permiten al usuario el acceso al
compilador del GPSS y dependen de cada tipo de versión utilizada: en este punto se recomienda
hacer referencia al manual respectivo. • Instrucciones de definido de variables Estas
instrucciones siempre se encuentran relacionadas con las instrucciones de lógica del programa.
Dentro de las instrucciones se encuentran las siguientes: definición de las funciones a utilizar,
definición de la capacidad de los almacenes, definición del número de operarios o maquinas por
estación, inicialización de variables, definición de las operaciones matemáticas por utilizar,
etcétera. A continuación de muestra una lista de las definiciones más comunes utilizadas en
GPSS:        |Definición de funciones | FUNCTION | |Definición del número de
máquinas | STORAGE | |Definición de matrices | MATRIX | |Asignación numérica a variables |
EQU | |Inicialización de variables | INITIAL | |Definición de histograma | TABLE | |Definición
de operaciones | VARIABLE y FVARIABLE | • Instrucciones de lógica del programa
6. 6. Este tipo de instrucciones son las conocidas como bloques; son las que se ejecutaran durante
la simulación; la lógica dependerá de cada sistema que se desee simular. Teniendo en cuenta la
función que realizan, una clasificación de los bloques o instrucciones de lógica es la siguiente:
Simulación de inicio de proceso y captura de máquina SEIZE ENTER PREEMPT Simulación
de fin de proceso y liberación de máquina RELEASE LEAVE RETURN Simulación de
entradas de transacciones a un almacén QUEUE ENTER LINK Simulación de salidas de
transacciones a un almacén DEPART ENTER UNLINK Simulación de entrada de transacción
del sistema GENERATE SPLIT Simulación de salidas de transacciones del sistema
TERMINATE Simulación de diversos tipos de procesos ADVANCE ASEEMBLE MATCH
7. 7. GATHER Simulación de control de flujo de transacciones TRANSFER TEST GATE LOGIC
SELECT LOOP BUFFER Bloques de operaciones aritméticas SAVEVALUE MSAVEVALUE
ASSIGN INDEX PRIORITY Bloques de creación de estadísticas TABULATE Las
instrucciones de tipo b) y c) se codifican siguiendo un formato general, dentro del cual se
pueden distinguir los siguientes elementos: |2 |8 |19 |31 | |Loc |Bloque |Operandos |Comentarios |
Donde: Loc: Representa el nombre de una etiqueta o una dirección. La etiqueta es un campo
opcional y su existencia depende de la lógica del programa. Esta localizado en la columna 2. Su
función es simular a las etiquetas en Fortran o Basic.
8. 8. Bloque: Es la instrucción específica por ejecutar. Operandos: Cada bloque representa la
acción por ejecutar, sin embargo, es necesario incluir un documento, como puede ser la
duración o el lugar de dicha acción. Comentarios: Es el espacio donde el usuario puede colocar
cualquier indicación o identificación de la instrucción. • Instrucciones de control de la
simulación. Estas instrucciones son las que controlan la ejecución, edición, y manejo de
archivos en GPSS/PC. Las principales son: END, START, SIMULATE. Lenguajes Específicos
De Simulación. La razón por la que se han desarrollado lenguajes específicos para simulación
es porque la mayoría de las simulaciones de eventos discretos tienen bastantes elementos en
común como por ej. Generar números aleatorios, avanzar el reloj de simulación, determinar el
próximo suceso de la lista de sucesos,... Ventajas frente a los lenguajes de propósito general: 
      Programas más 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. Inconvenientes 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,
9. 9.  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. II. III. IV. V. VI. VII. VIII. El procedimiento utilizado para generar los números aleatorios
uniformes y las variables no uniformes conocidas. Los procedimientos o métodos utilizados
para generar las variables aleatorias no-uniformes mas conocidas y mas usadas. 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. El análisis estadístico de los
resultados de simulación. El formato en que los resultados de la simulación son representados.
La forma en que las inconsistencias y errores de lógica es reportada. El lenguaje en el cual el
paquete esta escrito, el cual puede ser: Fortran, Algol, PL/1, Asembler, etc. Los diferentes tipos
de computadoras cuyo compilador es compatible con el del paquete en cuestió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. Existen distintos tipos de simulación de modelos: 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
10.10. 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, por ejemplo, la
integración Runge-Kutta, para resolver las ecuaciones diferenciales numéricamente, dados
valores específicos para las variables de estado en el tiempo 0. 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 particular. Etapas en el
desarrollo de un Modelo de Simulación En el siguiente diagrama se muestran las etapas en el
desarrollo de un modelo de simulación: a) Formulación del problema y planificación del
estudio: cada estudio debe comenzar con una sentencia clara de los objetivos globales del
estudio y las cuestiones específicas a ser atendidas; sin esta sentencia hay poca esperanza de
éxito. El estudio completo debe ser planeado en términos del número de personas, los costos, y
el tiempo requerido para cada aspecto del estudio.
11.11. b) Recolección de datos y definición de un modelo: la información y los datos deben ser
tomados sobre el sistema de interés (si existe) y usado para especificar los procedimientos
operativos y distribuciones de probabilidad para las variables aleatorias usadas en el modelo.
Por ejemplo, en el modelado de un banco, se podrían recolectar los tiempos entre arribos y los
tiempos de servicio y usar esos datos para especificar distribuciones de tiempos inter-arribos y
de servicios para usarlas en el modelo. Si es posible, los datos sobre el rendimiento del sistema,
por ejemplo, demoras en la cola de clientes de un banco, deben ser recolectados para propósitos
de validación en etapas posteriores. c) Validación: aunque la validación es algo que debe ser
hecho a lo largo de todo el estudio de simulación, hay varios puntos en el estudio donde la
validación es particularmente apropiada. d) En la construcción del modelo es útil incorporar
personas que estén íntimamente familiarizados con las operaciones del sistema actual y los que
deben tomar decisiones regularmente. Así se incrementará la validez del modelo y la
credibilidad (o validez percibida) por parte de los responsables de decisiones también crecerá.
Otro punto para validar es en la adecuación de las distribuciones de probabilidad especificadas
para la generación de variables aleatorias de entrada, que debe ser testeadas usando pruebas de
bondad de ajuste. e) Construcción de un programa de computación y verificación: el modelador
debe decidir si programar el modelo en un lenguaje de propósito general, o en un lenguaje de
simulación diseñado especialmente o simulador. Un lenguaje de programación de propósito
general probablemente ya será conocido y estará disponible. Un lenguaje de simulación puede
reducir el tiempo de programación requerido significativamente. La verificación de un modelo
programado significa que en las corridas no se produzcan errores. f) Realización de corridas de
prueba: las primeras corridas con el modelo verificado se hacen con propósitos de validación.
Son pruebas de corridas con resultados conocidos para verificar si el modelo está bien
programado y para validar las salidas de simulación con datos reales. g) Validación: las corridas
de prueba pueden ser utilizadas para chequear la sensibilidad de la salida del modelo a pequeños
cambios en un parámetro de entrada. Si la salida varía mucho, se debe obtener una mejor
estimación del parámetro de entrada. Si existe un sistema similar al de interés, los datos de
salida pueden ser comparadas con aquellas del sistema existente actual. Si el acuerdo es bueno,
el modelo validado es modificado de manera que represente el sistema de interés, siempre que
esta modificación no sea demasiado costosa.
12.12. h) Diseño de experimentos: consiste en organizar las corridas de simulación con cambios en
los valores de las variables de entrada. Se debe seleccionar el o los diseño/s de sistema y realizar
las corridas. Por cada diseño de sistema a ser simulado se deben tomar decisiones sobre las
condiciones iniciales para las corridas, la longitud de tiempo de puesta en marcha (si hubiera),
la longitud de la o las corrida/s, y el número de corridas de simulación independientes a realizar
para cada grupo de datos de entrada. i) Realización de las corridas de producción: Las corridas
de producción se hacen para proveer datos de rendimiento de los diseños del sistema de interés.
j) Análisis de los datos de salida: Se utilizan técnicas estadísticas para analizar los datos de
salida de las corridas de producción. Los objetivos típicos son construir un intervalo de
confianza para una medida de performance para un diseño de sistema particular o decidir cual
sistema simulado es el mejor relativo a alguna medida específica de performance. k)
Documentación, presentación, e implementación de resultados: Como los modelos de
simulación son comúnmente usados para más de una aplicación, es importante documentar las
suposiciones que se hicieron en el modelo como así también el programa de computadora
mismo. Finalmente, un estudio de simulación cuyos resultados nunca son implementados es
probablemente una falla. Además, los resultados de modelos altamente creíbles serán
probablemente usados. Tendencias Actuales de la Simulación. Generadores de simuladores,
entornos de simulación y animación gráfica. Los lenguajes de simulación presentan una serie de
limitaciones en lo que se refiere a la comunicación con el usuario, por lo que se propone una
metodología donde se incorpore de manera directa los conceptos fundamentales de la teoría de
sistemas donde se incluye: La modelización: El modelizador debería tener la posibilidad de
elegir diversos formalismos de modelización según las características del sistema que pueden
ser entre otros continuos y discretos; pudiéndose concebir también modelos de sistemas cuya
estructura varíe con el tiempo, es decir habría la posibilidad de especificar cambios controlados
por el modelo en su estructura estática y dinámica. Por lo cual la modelización debe constar de:
 Selección del formalismo de modelización.
13.13.   Manipulación del modelo. Descomposición del modelo en sub modelos. Construcción
modular del modelo. Construir macro modelos acoplando e integrando modelos de subsistemas.
Marcos Experimentales Posibilidad de su manipulación interactiva. Programas de Simulación
Especificación algorítmica de los programas de simulación que permita un tratamiento
automático de los pares modelo – marco experimental, lo que supone una especificación del
lenguaje de simulación que haga posible: •Una expresión modular de los modelos y sus
acoplamientos e interacciones de acuerdo con los diferentes formalismos de modelización. •Una
especificación modular de los marcos experimentales. La consecuencia de todos los requisitos y
especificaciones mencionados es una metodología de simulación, y un lenguaje que la
materialice, lo cual haría posible un proceso de modelización asistida por computador.
Simulación Visual Interactiva. La simulación visual interactiva puede definirse como aquella
que posibilita la creación gráfica de modelos de simulación, permite mostrar por pantalla
dinámicamente el sistema simulado, así como la interacción entre el usuario y el programa en
ejecución. La interacción implica que la simulación se detiene y solicita información al usuario,
o bien que puede parar la simulación a su voluntad e interaccionar con el mencionado programa.
Actualmente hay varios paquetes comerciales que incorporan plenamente estos conceptos como
por ejemplo: Simfactory, Witness, FACTOR/AIM. Todos estos productos están orientados
primordialmente a la utilización de la simulación para la resolución de problemas en el ámbito
de la producción
14.14. Conclusion Para el presente trabajo se ha llegado a la siguiente conclusión, sea determinado
que es necesario el llevar acabo la planificación de la simulación ya que esta nos permite
analizar sucesos de la vida real permitiendo predecir lo que podría ocurrir en determinados
procesos. La simulación de sistema nos permitirá optimizar el tiempo de respuesta para el
momento de realizar o diseñar algún proyecto ya que este nos ayuda a planificar como vamos a
elaborar este, obteniendo este como resultado una mayor eficacia, rapidez y fiabilidad en las
actividades realizadas durante cada paso a seguir.

Qué es el balanceo en química?

Balanceo químico: es la operación que permite representar en una ecuación en número exacto de
átomos, moléculas o moles que participan en una reacción, ya sea como reactantes o productos. ... El
método funciona para reacciones sencillas. Se recomienda balancear primero los átomos diferentes a
oxígeno e hidrógeno.

También podría gustarte