La segunda etapa del modelado es la etapa de algoritmo del modelo y su implementación de la máquina. Esta etapa es una etapa destinada a implementar ideas y esquemas matemáticos en forma de modelo de máquina. METRO proceso de funcionamiento de los sistemas S.

Proceso de operación del sistema S puede considerarse como un cambio secuencial de sus estados en el espacio k-dimensional. La tarea de modelar el proceso de funcionamiento del sistema en estudio. S es la construcción de funciones z, sobre la base de lo cual es posible calcular las características del proceso de funcionamiento del sistema de interés. Para esto, necesitamos relaciones que conecten las funciones z con variables, parámetros y tiempo, así como condiciones iniciales en el momento del tiempo t = t 0 .

Hay dos tipos de estados del sistema:

  • 1) especial, inherente al proceso de funcionamiento del sistema solo en algunos momentos;
  • 2) no singular, en el que el proceso es todo el resto del tiempo. En este caso, la función de estado z I (t) puede cambiar abruptamente, y entre especiales, sin problemas.

Los algoritmos de modelado se pueden construir de acuerdo con el "principio de estados especiales". Denotemos un cambio de estado similar a un salto (relé) z cómo z, y el "principio de estados especiales" - como principio z.

« Principio z " hace posible que varios sistemas reduzcan significativamente el costo del tiempo de la computadora para la implementación de algoritmos de modelado. modelo de modelado matemático estadístico

Una forma conveniente de representación de la estructura lógica de modelos de procesos de funcionamiento de sistemas y programas de máquinas es un diagrama. En varias etapas del modelado, se elaboran los siguientes esquemas de algoritmos y programas de modelado:

Esquema generalizado (ampliado) del algoritmo de modelado establece el procedimiento general para modelar el sistema sin especificar detalles.

Diagrama detallado del algoritmo de modelado contiene aclaraciones que no están disponibles en el esquema genérico.

Diagrama lógico del algoritmo de modelado representa la estructura lógica del modelo de proceso de funcionamiento del sistema S.

Esquema del programa muestra el orden de implementación del software del algoritmo de modelado utilizando un software específico. Un esquema de programa es una interpretación de un esquema lógico de un algoritmo de modelado por un desarrollador de programa basado en un lenguaje algorítmico específico.

Etapas de algoritmización del modelo y su implementación en máquina:

  • 1. Construcción del esquema lógico del modelo.
  • 2. Obtención de razones matemáticas.
  • 3. Validación del modelo del sistema.
  • 4. La elección de herramientas para modelar.
  • 5. Elaboración de un plan para la implementación del trabajo de programación.
  • 6. Especificación y construcción del esquema del programa.
  • 7. Verificación y validación del esquema del programa.
  • 8. Realización de la programación del modelo.
  • 9. Comprobación de la fiabilidad del programa.
  • 10. Elaboración de la documentación técnica de la segunda etapa.
INSTITUTO TECNOLÓGICO DE MOSCÚ
Modelado por computadora
Buzhinsky V.A. ktn
profesor asistente

Moscú
2014

Conceptos básicos de CM
El modelo es un objeto creado artificialmente que se reproduce en un cierto
el objeto real es el original.
Modelo informático: presentación de información sobre el sistema simulado.
por medio de una computadora.
Sistema: un conjunto de elementos interconectados con propiedades,
diferente de las propiedades de los elementos individuales.
Un elemento es un objeto que tiene propiedades que son importantes para el modelado.
En un modelo de computadora, las propiedades de un elemento están representadas por los valores de las características del elemento.
La relación entre elementos se describe mediante cantidades y algoritmos, en particular
fórmulas computacionales.

Actualmente, un modelo de computadora se entiende más a menudo como:
imagen condicional de un objeto o algún sistema de objetos (o procesos),
descrito usando tablas de computadora interconectadas, diagramas de bloques,
diagramas, gráficos, dibujos, fragmentos de animación, hipertexto, etc.
y representar la estructura y las relaciones entre los elementos del objeto.
A los modelos informáticos de este tipo los llamaremos estructurales y funcionales;
un programa separado, un conjunto de programas, un paquete de software,
permitiendo mediante una secuencia de cálculos y un gráfico
mostrar sus resultados reproducir (simular) procesos
el funcionamiento de un objeto, un sistema de objetos, sujeto a impacto sobre el objeto
varios factores (generalmente aleatorios). Continuaremos usando tales modelos.
llamados modelos de simulación.
La simulación por computadora es un método para resolver el problema de análisis o
síntesis de un sistema complejo basado en el uso de su modelo informático.
La esencia del modelado por computadora es obtener datos cuantitativos y
resultados cualitativos según el modelo existente.

Tema número 1. Conceptos básicos de modelado informático.
Tema número 2. Construcción de algoritmos de modelado: formalización y
algoritmización de procesos.
Tema № 3. La versatilidad de los modelos matemáticos.
Tema № 4. Modelos matemáticos de sistemas complejos.
Tema № 5. Modelos continuos deterministas, discretos deterministas, discretos probabilísticos y probabilísticos continuos.

Seminario web número 2
Construcción de algoritmos de modelado:
formalización y algoritmización de procesos
1. Formalización del modelo
2. Algoritmización del proceso

A lo largo de su historia, la humanidad ha utilizado varios
métodos y herramientas para la creación de modelos de información. Estas formas
constantemente mejorado. Entonces, los primeros modelos de información
fueron creados en forma de pinturas rupestres. Actualmente informativo
Los modelos generalmente se construyen e investigan utilizando
tecnologia computacional.
Al estudiar un objeto nuevo, generalmente se construye primero.
modelo de información descriptiva utilizando lenguajes naturales
y dibujos. Dicho modelo puede mostrar objetos, procesos y fenómenos.
cualitativamente, es decir, sin utilizar características cuantitativas. Por ejemplo,
modelo heliocéntrico del mundo de Copérnico en lenguaje natural
fue formulado de la siguiente manera:
La Tierra gira alrededor del Sol y la Luna gira alrededor de la Tierra;
todos los planetas giran alrededor del sol.

Los lenguajes formales se utilizan para construir
modelos de información. Las matemáticas son las más
el lenguaje formal utilizado. Usando matemática
Los conceptos y fórmulas son modelos matemáticos construidos.
En las ciencias naturales (física, química, etc.),
modelos formales de fenómenos y procesos. Usado a menudo para esto
lenguaje matemático universal de fórmulas algebraicas (para la lección No. 3).
Sin embargo, en algunos casos, especializados
lenguajes formales (en química - el lenguaje de fórmulas químicas, en música - musical
diploma, etc.) (?).

1. uch. pregunta. Formalización
modelos
El proceso de construcción de modelos de información utilizando
Los lenguajes formales se llama formalización.
En el proceso de estudiar modelos formales, a menudo se hace
su visualización. (?)
Para la visualización de algoritmos, se utilizan diagramas de bloques,
Relaciones espaciales entre objetos: dibujos, modelos.
circuitos eléctricos - circuitos eléctricos. Al hacer formal
modelos con la ayuda de la animación, se puede mostrar la dinámica del proceso,
trazar gráficos de cambios en los valores, etc.
Hoy en día, generalizado
modelos visuales interactivos por computadora. En tales modelos, el investigador
puede cambiar las condiciones iniciales y los parámetros de los procesos y observar
cambios en el comportamiento del modelo.

La primera etapa de cualquier investigación es la formulación de un problema que
determinado por un objetivo determinado.
El problema está formulado en lenguaje corriente. Por la naturaleza de la producción, todos
las tareas se pueden dividir en dos grupos principales. Al primer grupo puedes
Asignar tareas en las que se requiere investigar cómo cambiar.
características de un objeto con algún impacto en él, "qué sucederá,
¿si?…". El segundo grupo de tareas: qué impacto se debe tener en
objeto de modo que sus parámetros satisfagan algunos
condición, "cómo hacer? ..".
La segunda etapa es el análisis del objeto. El resultado de analizar un objeto es identificarlo
componentes (objetos elementales) y la definición de relaciones entre ellos.
La tercera etapa es el desarrollo de un modelo de información del objeto. Edificio
el modelo debe estar relacionado con el propósito de la simulación. Cada objeto tiene
una gran cantidad de propiedades diferentes. En el proceso de construcción de un modelo.
se destacan las propiedades principales, más esenciales, que
cumplir la meta
Todo lo que se mencionó anteriormente es una formalización, es decir, un reemplazo
un objeto o proceso real por su descripción formal, es decir su
modelo de información.

10.

Habiendo construido un modelo de información, una persona lo usa en lugar de
el objeto original para estudiar las propiedades de este objeto, pronóstico
su comportamiento, etc. Antes de construir cualquier estructura compleja,
por ejemplo, un puente, los diseñadores hacen dibujos de él, realizan cálculos
Resistencia, cargas admisibles. Entonces en lugar de un puente real
se ocupan de la descripción de su modelo en forma de dibujos,
fórmulas matemáticas.
La formalización es un proceso
asignación y traducción
la estructura interna del objeto en
determinadas informaciones
estructura - forma.

11.

12.

Según el grado de formalización, los modelos de información son
figurativamente significativo e icónico.
Los modelos icónicos se pueden dividir en los siguientes grupos:
modelos matemáticos representados por fórmulas matemáticas,
mostrando la relación de varios parámetros de un objeto, sistema o
proceso;
modelos especiales presentados en idiomas especiales (partituras,
fórmulas químicas, etc.);
modelos algorítmicos que representan el proceso en forma de programa,
grabado en un idioma especial.

13.

Una secuencia de comandos para controlar el objeto,
cuya implementación conduce al logro de un predeterminado
El objetivo se llama algoritmo de control.
El origen del concepto de "algoritmo".
La palabra "algoritmo" proviene del nombre del matemático.
el Oriente medieval de Muhammad al-Khwarizmi (787-850). Ellos eran
métodos de realizar cálculos aritméticos con
números de varios dígitos. Más tarde en Europa, estas técnicas se llamaron
algoritmos, de la ortografía latina del nombre al-Khwarizmi. Hoy en día
el concepto de algoritmo no se limita a la aritmética
cálculos.

14.

Algoritmo: instrucción clara y precisa para realizar
una cierta secuencia de acciones,
dirigido a lograr el objetivo especificado o
solución de la tarea.
Algoritmo aplicado a computacional
máquina - una prescripción exacta, es decir, un conjunto de operaciones y
las reglas de su alternancia, con la ayuda de las cuales, comenzando
con algunos datos iniciales, puede resolver cualquier
problema de tipo fijo.

15.

Propiedades del algoritmo:
Discreción: el algoritmo debe dividirse en pasos (separados
acciones completadas).
Certeza: el intérprete no debería tener
ambigüedades en la comprensión de los pasos del algoritmo (el ejecutante no
debe tomar decisiones independientes).
Efectividad (finitud): el algoritmo debe conducir a
el resultado final en un número finito de pasos.
Comprensibilidad: el algoritmo debe ser comprensible para el ejecutante.
Eficiencia: se elige uno de los posibles algoritmos
un algoritmo que contiene menos pasos o para ejecutarlo
toma menos tiempo.

16.

Tipos de algoritmos
Tipos de algoritmos como medios lógicos y matemáticos en
dependiendo del objetivo, condiciones iniciales del problema, formas de solucionarlo,
Las definiciones de las acciones del ejecutor se subdividen de la siguiente manera.
camino:
algoritmos mecánicos, por lo demás deterministas;
algoritmos flexibles, de lo contrario probabilísticos y heurísticos.
Un algoritmo mecánico especifica ciertas acciones,
denotándolos en una secuencia única y confiable,
proporcionando así un inequívoco requerido o deseado
resultado, si se cumplen esas condiciones del proceso o tarea, para
que se ha desarrollado el algoritmo.
Un algoritmo heurístico es aquel en el que
el logro del resultado final del programa de acción definitivamente no es
predefinido, al igual que la secuencia completa no está indicada
acciones del albacea. Estos algoritmos utilizan
procedimientos lógicos universales y métodos de toma de decisiones,
basado en analogías, asociaciones y experiencia, soluciones a similares
Tareas.

17.

En el proceso de algorítmica, el algoritmo original se divide en diferentes
partes relacionadas llamadas pasos o algoritmos privados.
Hay cuatro tipos principales de algoritmos privados:
algoritmo lineal;
algoritmo de ramificación;
algoritmo cíclico;
algoritmo auxiliar o subordinado.
Algoritmo lineal: un conjunto de instrucciones ejecutadas
secuencialmente en el tiempo uno tras otro.
Algoritmo de ramificación: un algoritmo que contiene al menos una
condición, como resultado de la verificación de cuál la computadora asegura la transición a
uno de los dos pasos posibles.
Algoritmo cíclico: un algoritmo que implica repeticiones
la misma acción en nuevos datos de origen. Necesario
Observe que el algoritmo cíclico se implementa fácilmente mediante dos
de los tipos de algoritmos considerados anteriormente.
Algoritmo auxiliar o subordinado: un algoritmo previamente
desarrollado y utilizado íntegramente en la algoritmización de un
Tareas.

18.

En todas las etapas de preparación para la algoritmización del problema, se usa ampliamente
representación estructural del algoritmo en forma de diagramas de bloques.
Diagrama de bloques: una representación gráfica del algoritmo en forma de diagrama.
bloques de símbolos gráficos conectados entre sí mediante flechas (líneas de transición), cada una de las cuales corresponde a un paso
algoritmo. El bloque contiene una descripción de las acciones realizadas en él.

19.

Métodos para describir algoritmos
Elección de herramientas y métodos para registrar el algoritmo.
depende principalmente del propósito (naturaleza) de la
algoritmo, así como sobre quién (qué)
el ejecutor del algoritmo.
Los algoritmos están escritos como:
reglas verbales,
diagramas de bloques,
programas.

20.

La forma verbal de describir algoritmos es esencialmente lenguaje ordinario, pero
con una cuidada selección de palabras y frases que no permitan palabras innecesarias,
ambigüedad y repetición. El lenguaje se complementa con matemática ordinaria.
notación y algunas convenciones especiales.
El algoritmo se describe como una secuencia de pasos. A cada paso
la composición de las acciones realizadas y la dirección de más
cálculos. Además, si el paso actual no indica qué paso debe
ejecutado a continuación, se lleva a cabo la transición al siguiente paso.
Ejemplo. Cree un algoritmo para encontrar el mayor número de tres dados
números a, b, c.
Compara ay b. Si a> b, entonces tome a como el máximo de t, de lo contrario (a<=b) в
tome b como máximo.
Compare t y c. Si t> c, vaya al paso 3. De lo contrario (t máximo c (t = c).
Tome t como resultado.
Desventajas de una forma verbal de describir algoritmos:
falta de claridad,
falta de precisión.

21.

Manera gráfica de describir
algoritmos es una forma
representación del algoritmo con
usando generalmente aceptado
figuras gráficas, cada una de
cual o
varios pasos del algoritmo.
Dentro del bloque está escrito
descripción de comandos o condiciones.
Indicar
secuencia de ejecución
los bloques usan líneas de comunicación
(líneas de conexión).
Hay ciertos
reglas para describir algoritmos en
en forma de diagramas de bloques. (?)

22.

Descripción de algoritmos que utilizan programas: un algoritmo escrito en
El lenguaje de programación se llama programa.
Las formas verbales y gráficas de escribir el algoritmo están destinadas a
persona. Un algoritmo diseñado para ejecutarse en una computadora.
escrito en un lenguaje de programación (lenguaje entendido por una computadora). Ahora
se conocen varios cientos de lenguajes de programación. Más popular:
C, Pascal, BÁSICO, etc.
Ejemplo. Cree un algoritmo para encontrar el mayor número de tres
dados los números a, b, c.
programa MaxFromThree;
var
a, b, c, resultado: Real;
empezar
Escribir ("Introduzca a, b, c");
ReadLn (a, b, c);
si a> b entonces resultado: = a else resultado: = b;
si c> resultado entonces resultado: = c;
WriteLn ("El máximo de tres números es:", resultado: 9: 2)
fin.
(?)

23.

Ejemplo 1
Dada una matriz unidimensional, calcule la media aritmética. (?)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
La solucion del problema
Prueba de programa;
Var i, suma: Entero;
massiv: matriz de Integer;
Empezar
suma: = 0;
para yo: = 1 a 5 hacer
empezar
Write ("Introduzca un elemento de matriz:");
ReadLn (massiv [i]);
suma: = suma + masaiv [i];
fin;
Write ("la media aritmética de la matriz es:", summ / 5);
WriteLn;
Fin.
(?)

24.

Ejemplo 2
Construye un algoritmo para el proceso de lanzar un cuerpo en ángulo hacia el horizonte.
(?)

25.

V.V. Vasiliev, L.A. Simak, A.M. Rybnikov. Matemáticas y
modelado informático de procesos y sistemas en el medio ambiente
MATLAB / SIMULINK. Libro de texto para estudiantes de pregrado y posgrado. 2008
año. 91 páginas
Simulación por computadora de problemas físicos en
Microsoft Visual Basic. Autor del libro de texto: Alekseev D.V.
SOLON-PRESS, 2009
Autor: Orlova I.V., Polovnikov V.A.
Editorial: University textbook
Año: 2008

26.

Anfilatov, V.S. Análisis del sistema en la gestión [Texto]: libro de texto / V.S.
Anfilatov, A. A. Emelyanov, A. A. Kukushkin; ed. A. A. Emelyanova. - M.:
Finanzas y estadísticas, 2002 .-- 368 p.
Venikov, V.A. La teoría de la similitud y el modelado [Texto] / V. A. Venikov, G. V.
Venikov, Moscú: Escuela superior, 1984, 439 p.
Evsyukov, V. N. Análisis de sistemas automáticos [Texto]: metodología educativa
manual de tareas prácticas / V. N. Evsyukov, A. M. Chernousova. -
2ª ed., Isp. - Orenburg: IPK GOU OSU, 2007 .-- 179 p.
Zarubin, V. S. Modelado matemático en tecnología [Texto]: libro de texto. para universidades /
Ed. V. S. Zarubina, A. P. Krishchenko. - M.: Editorial de la Universidad Técnica Estatal de Moscú Bauman, 2001. -
496 s.
Kolesov, Yu.B. Modelado de sistemas. Sistemas dinámicos e híbridos [Texto]:
uch. manual / Yu.B. Kolesov, Yu.B. Senichenkov. - SPb. : BHV-Petersburg, 2006 .-- 224 p.
Kolesov, Yu.B. Modelado de sistemas. Enfoque orientado a objetos [texto]:
Uch. manual / Yu.B. Kolesov, Yu.B. Senichenkov. - SPb. : BHV-Petersburg, 2006 .-- 192 p.
Norenkov, I. P. Conceptos básicos del diseño asistido por computadora [Texto]: libro de texto para
universidades / I.P. Norenkov. - M.: Editorial de MSTU im. N.E.Bauman, 2000.- 360 p.
Skurikhin y V.I. Modelado matemático [Texto] / V. I. Skurikhin, V. V.
Shifrin, V. V. Dubrovsky. - K.: Tekhnika, 1983 .-- 270 p.
Chernousova A.M. Software para sistemas automatizados
diseño y gestión: libro de texto [Texto] / A. M. Chernousova, V.
N. Sherstobitova. - Orenburg: OSU, 2006 .-- 301 p.

En la segunda etapa del modelado, la etapa de algoritmización del modelo y su implementación de la máquina, el modelo matemático formado en la primera etapa se incorpora a un modelo de máquina específico. Esta etapa es una etapa de actividad práctica destinada a la implementación de ideas y esquemas matemáticos en forma de un modelo de máquina del proceso de funcionamiento del sistema S. Antes de considerar los subpasos de algoritmización e implementación de máquina del modelo, detengámonos sobre los principios básicos de la construcción de algoritmos de modelado y las formas de su presentación.

Principios de algoritmos de modelado de edificios.

El proceso de funcionamiento del sistema S puede considerarse como un cambio secuencial de sus estados en el espacio -dimensional. Es obvio que la tarea de modelar el proceso de funcionamiento del sistema S en estudio es construir funciones a partir de las cuales es posible calcular las características del proceso de funcionamiento del sistema de interés. Para ello, deben existir relaciones que conecten funciones con variables, parámetros y tiempo, así como condiciones iniciales en el momento del tiempo.

Consideremos el proceso de funcionamiento de algún sistema determinista en el que no existen factores aleatorios, es decir, el vector de estados de dicho sistema puede determinarse a partir de (2.3) como. Entonces el estado del proceso en el momento del tiempo

puede determinarse sin ambigüedades a partir de las relaciones del modelo matemático mediante las condiciones iniciales conocidas. Esto le permite construir un algoritmo de modelado para el proceso de funcionamiento del sistema. Para ello, transformamos las razones del modelo a tal forma para que sea conveniente el cálculo por valores, donde organizamos un contador de tiempo del sistema, que en el momento inicial muestra el tiempo. Para este momento, sume el intervalo de tiempo luego el contador mostrará Calcule los valores Luego vaya al momento del tiempo Si el paso es lo suficientemente pequeño, entonces de esta manera puede obtener valores aproximados

Consideremos el proceso de funcionamiento de un sistema estocástico, es decir, un sistema que está influenciado por factores aleatorios, es decir, el vector de estados está determinado por la relación (2.3). Para tal sistema, la función de los estados del proceso en el momento en el tiempo, las relaciones del modelo determinan solo la distribución de probabilidad para en el momento en el tiempo. En el caso general, las condiciones iniciales también pueden ser aleatorias, dadas por la distribución de probabilidad correspondiente. En este caso, la estructura del algoritmo de modelado para sistemas estocásticos sigue siendo básicamente la misma. Solo en lugar del estado, ahora es necesario calcular la distribución de probabilidad para los estados posibles. Deje que el contador de tiempo del sistema muestre la hora. De acuerdo con la distribución de probabilidad dada, se selecciona. Además, partiendo de la distribución, se obtiene un estado hasta que se construye una de las posibles realizaciones de un proceso multidimensional aleatorio en un intervalo de tiempo dado.

El principio considerado de construir algoritmos de modelado se llama principio. Este es el principio más universal que permite determinar los estados secuenciales del proceso de funcionamiento del sistema S en intervalos de tiempo especificados.

Al considerar los procesos de funcionamiento de algunos sistemas, se puede encontrar que se caracterizan por dos tipos de estados: 1) especiales, inherentes al proceso de funcionamiento del sistema solo en algunos momentos de tiempo (momentos de llegada de entrada o control acciones, perturbaciones del entorno externo, etc.) el resto del tiempo Los estados especiales también se caracterizan por el hecho de que las funciones de los estados en estos momentos de tiempo cambian abruptamente, y entre los estados especiales el cambio de coordenadas ocurre suavemente y continuamente o no ocurre en absoluto.

estados en esos momentos en el tiempo en que estos estados ocurren, es posible obtener la información necesaria para la construcción de funciones, obviamente, para el tipo de sistemas descritos, los algoritmos de modelado se pueden construir según el “principio de estados especiales”. Designemos un cambio de estado similar a un salto (relé) como y el "principio de estados especiales" - como un principio

Por ejemplo, para un sistema de colas (-esquema), los estados se pueden elegir como estados especiales en los momentos en que las solicitudes de servicio llegan al servidor P y en los momentos en que finaliza el servicio de solicitudes por los canales K, cuando el estado del El sistema, estimado por el número de solicitudes en él, cambia abruptamente.

Tenga en cuenta que las características del proceso de funcionamiento de dichos sistemas con estados especiales se estiman a partir de información sobre estados especiales, y los estados no singulares no se consideran en la simulación. “El principio hace posible que varios sistemas reduzcan significativamente el costo del tiempo de la computadora para la implementación de algoritmos de modelado en comparación con el“ principio. Sistemas S. Para estudiar el proceso de funcionamiento de sistemas grandes, es racional usar el principio combinado de construir algoritmos de modelado, que combina las ventajas de cada uno de los principios considerados.

Formas de representación de algoritmos de modelado.

Una forma conveniente de representación de la estructura lógica de modelos de procesos de funcionamiento de sistemas y programas de máquinas es un diagrama. En varias etapas del modelado, se elaboran diagramas lógicos generalizados y detallados de algoritmos de modelado, así como diagramas de programa.

El esquema generalizado (ampliado) del algoritmo de modelado establece el procedimiento general para modelar el sistema sin especificar detalles. El diagrama generalizado muestra lo que se debe hacer en el siguiente paso de la simulación, por ejemplo, recurrir al generador de números aleatorios.

El esquema detallado del algoritmo de modelado contiene refinamientos que no están en el esquema generalizado. El diagrama detallado muestra no solo lo que se debe hacer en el siguiente paso del modelado del sistema, sino también cómo hacerlo.

El diagrama lógico del algoritmo de modelado es la estructura lógica del modelo del proceso de funcionamiento del sistema S. El diagrama lógico indica una secuencia de operaciones lógicas ordenadas en el tiempo, asociadas a la solución del problema de modelado.

El diagrama del programa muestra el orden de implementación del software del algoritmo de modelado utilizando un software específico. Un esquema de programa es una interpretación de un esquema lógico de un algoritmo de modelado por un desarrollador de programa basado en un lenguaje algorítmico específico. La diferencia entre estos esquemas es que el esquema lógico refleja la estructura lógica del modelo del proceso de funcionamiento del sistema y el esquema del programa: la lógica de la implementación de la máquina del modelo utilizando herramientas de modelado de software y hardware específicas.

El esquema lógico del algoritmo y el esquema del programa se pueden ejecutar tanto en forma ampliada como detallada. Para dibujar estos diagramas, un conjunto de símbolos definidos por GOST 19.701 - 90 (ISO 5807 - 85) “Sistema unificado de documentación del programa.

Diagramas de algoritmos, programas, datos y sistemas.

Símbolos y reglas de ejecución ". Algunos de los símbolos más utilizados en la práctica del modelado por computadora se muestran en la Fig. 3.3, que muestra los símbolos básicos, específicos y especiales del proceso. Estos incluyen: el símbolo principal: a - proceso - el símbolo muestra una función para procesar datos de cualquier tipo (realizar una determinada operación o grupo de operaciones que conducen a un cambio en el significado, forma o ubicación de la información oa una determinación a lo largo de la cual). uno debe moverse desde varias direcciones del flujo); símbolos específicos del proceso: b - solución - el símbolo muestra una solución o una función de tipo interruptor que tiene una entrada y un número de salidas alternativas, una y sólo una de las cuales se puede activar después de calcular las condiciones definidas dentro de este símbolo ( los resultados de cálculo correspondientes se pueden escribir en la vecindad con líneas que representan estos caminos); c - preparación - el símbolo muestra una modificación de un comando o un grupo de comandos para influir en alguna función posterior (establecer un interruptor, modificar un registro de índice o inicializar un programa); d - proceso predefinido - el símbolo muestra un proceso predefinido que consta de una o más operaciones o pasos del programa que están definidos en otra parte (en una subrutina, módulo); d - operación manual - el símbolo muestra cualquier proceso realizado por una persona; Caracteres especiales: e - conector - el símbolo muestra la salida a una parte del circuito y la entrada de otra parte de este circuito y se usa para romper la línea y continuarla en otro lugar (los símbolos de conector correspondientes deben contener el mismo código único designacion); g - terminador: el símbolo representa la salida al entorno externo y la entrada del entorno externo (el principio o el final del diagrama del algoritmo, los usos externos o el destino de los datos).

Arroz. 3.3. Símbolos y esquemas de algoritmos de modelado.

Un ejemplo de una imagen de un esquema de un algoritmo de modelado se muestra en la Fig. 3,3, h.

Normalmente, un esquema es la forma más conveniente de representar la estructura de los algoritmos de modelado. En algunos casos, se utilizan otras formas de representación de algoritmos de modelado, por ejemplo, la forma de esquemas de gráficos (Fig. 3.3, i). Aquí - comienzo, - final, - cálculo, - formación, - verificación de condición, - contador, - resultado de salida ,, donde es el número total de operadores del algoritmo de modelado. Como explicación al esquema gráfico del algoritmo, el texto da la revelación del contenido de los operadores, lo que permite simplificar la presentación del algoritmo, pero complica el trabajo con él.

Los algoritmos de simulación también se pueden representar en forma de esquemas de operador. La notación de operadores en tal esquema corresponde a la notación para esquemas de gráficos. Para el ejemplo considerado, el esquema de operador del algoritmo tiene la forma

Con más detalle, nos familiarizaremos con la forma de representación de la estructura lógica de los algoritmos de modelado y los programas de computadora al considerar modelos de simulación de los procesos de funcionamiento de varios sistemas y métodos de su implementación en una computadora.

Subpasos de la segunda etapa de modelado.

Considere los subpasos realizados en la algoritmización del modelo del sistema y su implementación de la máquina, centrándose en las tareas de cada subpaso y los métodos para su solución.

2.1. Construyendo un diagrama lógico del modelo. Se recomienda construir el modelo de acuerdo con el principio de bloque, es decir, en forma de un conjunto de bloques de construcción. Construcción de un modelo de sistemas S a partir de tales

blocks proporciona la flexibilidad necesaria durante su funcionamiento, especialmente en la etapa de depuración de la máquina. Al construir un modelo de bloques, el proceso de funcionamiento del sistema se divide en subprocesos independientes bastante autónomos. Así, el modelo se subdivide funcionalmente en submodelos, cada uno de los cuales, a su vez, se puede subdividir en elementos aún más pequeños. Los bloques de este modelo son de dos tipos: principal y auxiliar. Cada bloque principal corresponde a algún subproceso real que tiene lugar en el sistema simulado S, y los bloques auxiliares son solo una parte integral del modelo de máquina, no reflejan las funciones del sistema simulado y solo son necesarios para la implementación de la máquina , fijación y procesamiento de resultados de simulación.

2.2. Obtención de relaciones matemáticas. Simultáneamente con la implementación de la sub-etapa de construcción del esquema lógico del modelo, es necesario obtener, si es posible, relaciones matemáticas en forma de funciones explícitas, es decir, construir modelos analíticos. Este subpaso corresponde a la especificación implícita de posibles relaciones matemáticas en la etapa de construcción de un modelo conceptual. Al realizar la primera etapa, todavía no puede haber información sobre la forma específica de tales relaciones matemáticas, y en la segunda etapa ya es necesario obtener estas relaciones. El esquema del modelo de máquina debe ser un reflejo completo del concepto inherente al modelo y tener: a) una descripción de todos los bloques del modelo con sus nombres; b) un sistema unificado de designación y numeración de bloques; c) reflejo de la lógica del modelo del proceso de funcionamiento del sistema; d) establecer relaciones matemáticas de forma explícita.

Así, en el caso general, el modelo de máquina construido del sistema tendrá un carácter combinado, es decir, reflejará el enfoque de simulación analítica, cuando parte del proceso en el sistema se describe analíticamente y la otra parte se imita. mediante algoritmos apropiados.

2.3. Validación del modelo del sistema. Esta verificación es la primera verificación realizada durante la fase de implementación del modelo. Dado que el modelo es una descripción aproximada del proceso de funcionamiento de un sistema real S, entonces hasta que se demuestre la confiabilidad del modelo, no se puede argumentar que con su ayuda se obtendrán resultados que coinciden con los que podrían obtenerse durante una experimento a gran escala con un sistema real S. Por lo tanto, determinar la confiabilidad de un modelo puede considerarse el problema más importante en los sistemas de modelado. El grado de confianza en los resultados obtenidos por el método de modelado depende de la solución de este problema. Verificar el modelo en la sub-etapa considerada debería responder a la pregunta de hasta qué punto el diagrama lógico del modelo del sistema y las relaciones matemáticas utilizadas reflejan la intención del modelo formada en la primera etapa. En este caso, se comprueba lo siguiente: a) la posibilidad

resolviendo el problema; b) la precisión del reflejo de la idea en el esquema lógico; c) integridad del esquema lógico del modelo; d) la exactitud de las relaciones matemáticas utilizadas.

Solo después de que el desarrollador esté convencido de la verificación adecuada de la exactitud de todas estas disposiciones, se puede suponer que existe un diagrama lógico del modelo del sistema 5, adecuado para seguir trabajando en la implementación del modelo en una computadora.

2.4. Selección de herramientas de modelado. En esta sub-etapa, es necesario decidir finalmente qué computadora (computadora, AVM, GVK) y qué software es aconsejable utilizar para implementar el modelo del sistema S. En general, la elección de los medios informáticos se puede realizar en las sub-etapas anteriores, pero la sub-etapa considerada es la última, cuando esta elección debe hacerse finalmente, ya que de lo contrario habrá dificultades para seguir trabajando en la implementación del modelo. La cuestión de elegir una computadora se reduce a garantizar los siguientes requisitos:

a) la disponibilidad del software y hardware necesarios; b) la disponibilidad de la computadora seleccionada para el desarrollador del modelo; c) asegurar todas las etapas de la implementación del modelo; d) la capacidad de obtener resultados de manera oportuna.

2.5. Elaboración de un plan para la implementación del trabajo de programación. Dicho plan debería ayudar a programar el modelo, teniendo en cuenta las estimaciones del tamaño del programa y los costos laborales para su preparación. Cuando se utiliza un mainframe, el plan debe incluir: a) la elección del lenguaje de programación (sistema) del modelo; b) una indicación del tipo de computadora y los dispositivos necesarios para la simulación; c) una estimación de la cantidad aproximada de memoria operativa y externa requerida; d) costos aproximados de tiempo de computadora para modelar; e) el tiempo estimado dedicado a programar y depurar un programa informático.

2.6. Especificación y construcción del esquema del programa. Una especificación de programa es una presentación formalizada de los requisitos de un programa que deben cumplirse durante su desarrollo, así como una descripción de la tarea, las condiciones y el efecto de una acción sin especificar la forma de lograrlo. La presencia de un diagrama de bloques lógico del modelo le permite construir un diagrama de programa, que debe reflejar: a) la división del modelo en bloques, sub-bloques, etc.;

b) las peculiaridades de la programación del modelo; c) realizar los cambios necesarios; d) la capacidad de probar el programa; e) una estimación del costo del tiempo de computadora; f) la forma de presentación de los datos de entrada y salida.

La construcción de un diagrama de programa es una de las principales tareas en la etapa de implementación de la máquina de un modelo. En este caso, se debe prestar especial atención a las características del lenguaje elegido para la implementación del modelo: el lenguaje algorítmico del general

destino o idioma de modelado (por ejemplo, SIMULA, SIMSCRIPT, GPSS).

2.7. Verificación y validación del esquema del programa. La verificación de un programa es una prueba de que el comportamiento de un programa se ajusta a la especificación del programa. Esta verificación es la segunda en la etapa de implementación de la máquina del modelo del sistema. Evidentemente, no tiene sentido seguir trabajando en la implementación del modelo si no hay certeza de que el esquema del programa, según el cual se realizará la programación adicional, contiene errores que lo hacen inadecuado al esquema lógico del modelo, y por lo tanto, inadecuado para el objeto de modelado en sí. En este caso, se verifica la conformidad de cada operación presentada en el diagrama del programa con la operación análoga a ella en el diagrama lógico del modelo.

2.8. Programación de modelos. Con un diagrama de programa suficientemente detallado que refleje todas las operaciones del diagrama lógico del modelo, puede comenzar a programar el modelo. Si se dispone de un diseño de programa adecuado, la programación es solo el trabajo de un programador, sin la participación y asistencia del desarrollador del modelo. Cuando se utilizan paquetes de software para modelar, se lleva a cabo la generación directa de programas de trabajo para modelar un objeto específico, es decir, la programación del modelo se lleva a cabo de forma automatizada.

2.9. Comprobando la validez del programa. Esta es la última verificación en la etapa de implementación de la máquina del modelo, que debe realizarse: a) volviendo a convertir el programa al circuito original; b) comprobar partes individuales del programa al resolver varios problemas de prueba; c) combinar todas las partes del programa y verificarlo como un todo en un ejemplo de prueba de modelado de una versión del sistema S.

En este subpaso, también es necesario verificar las estimaciones del tiempo de la computadora dedicado a la simulación. También es útil obtener una aproximación analítica bastante simple de la dependencia de los costos de tiempo de la computadora con el número de realizaciones, lo que permitirá al desarrollador del modelo (cliente) formular correctamente los requisitos para la precisión y confiabilidad de los resultados de la simulación.

2.10. Elaboración de documentación técnica para la segunda etapa. Para completar la etapa de implementación mecánica del modelo, es necesario elaborar documentación técnica que contenga: a) el diagrama lógico del modelo y su descripción; b) un esquema adecuado del programa y las designaciones adoptadas; c) texto completo del programa; d) una lista de cantidades de entrada y salida con explicaciones; e) instrucciones para trabajar con el programa; f) una estimación del costo del tiempo de computación para modelar con una indicación de los recursos computacionales requeridos.

Así, en esta etapa, se desarrolla el esquema del modelo del sistema S, se lleva a cabo su algoritmización y programación.

utilizando software y hardware específicos, es decir, se está construyendo un modelo de máquina, con el que hay que trabajar para obtener los resultados de modelado necesarios evaluando las características del proceso de funcionamiento del sistema S (problema de análisis) o buscando estructuras óptimas , algoritmos y parámetros del sistema S (problema de síntesis).