Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Языки имитационного моделирования



Языки имитационного моделирования (ЯИМ) являются проблемно-ориентированными средствами, позволяющими описывать системы в терминах и категориях, опирающихся на общепринятую методологию и технологию процесса имитации, а также на типовые математические схемы элементов систем и их взаимодействия. Целесообразность использования ЯИМ определяется такими причинами:

- удобство программирования и достаточно «мягкие» требования к подготовке разработчика-пользователя, что играет существенную роль при машинной реализации моделирующих алгоритмов;

- концептуальная направленность языка на исследуемый класс систем, что обеспечивает предоставление необходимого спектра возможностей при построении моделей на основе модульного принципа.

Эти факторы обеспечивают существенное сокращение сроков разработки и эксплуатации ИМ, а также реализацию стандартных форм обработки, интерпретации и документирования результатов моделирования. Одновременно следует отметить, что стандартные рамки специализированного ЯИМ не всегда позволяют исследовать достаточно «тонкие» и индивидуальные особенности сложной системы, что ведет к необходимости некоторого «угрубления» ее описания в рамках разрабатываемой модели.

Обобщенная архитектура ЯИМ реализует концепцию взаимосвязи элементов языка и технологию перехода от системы к ее машинной модели. Ее можно представить следующим образом: объекты моделирования (системы) описываются или отображаются с помощью некоторых атрибутов языка; атрибуты взаимодействуют с процессами, адекватными реально протекающим явлениям в моделируемой системе; процессы требуют конкретных условий, определяющих логическую основу и последовательность их взаимодействия во времени; условия связаны с событиями, имеющими место внутри объекта моделирования; события отображают изменение состояния модели системы в пространстве и во времени.

В настоящее время известно несколько десятков языков имитационного моделирования. Исторически ЯИМ достаточно условно были разбиты на две основные группы, которые соответствовали непрерывному и дискретному подходам к описанию экзогенных и эндогенных переменных, или переменных, описывающих состояния модели. В последнее время все большее внимание уделяется использованию комбинированного подхода. В рамках этих групп дальнейшая классификация проводится по способам описания динамики моделирования объектов и организации квазипараллелизма имитационной модели.

Непрерывный подход к представлению систем сводится к составлению уравнений, с помощью которых устанавливается связь между непрерывными переменными модели. Примером подобных уравнений являются обыкновенные дифференциальные уравнения, т. е. в данном случае в полном объеме используется формализм D -схем. Реализуя имитацию дифференциальных уравнений, подобные средства в ЭВМ используют различные способы численного интегрирования, в том числе и на основе задания разностных уравнений, что означает фактически дискретный во времени характер задания экзогенных и эндогенных переменных. Подобный подход был реализован в наиболее распространенных языках данной группы — DYNAMO и MIMYC.

При реализации дискретного или комбинированного подходов реализуются типовые схемы, в которых используются как непрерывные переменные, так и дискретные переменные. При этом выделяют несколько принципиально различающихся подгрупп ЯИМ.

Первая подгруппа ЯИМ реализует имитацию путем составления списка, или календаря событий, отличающих моменты окончания выполнения различных функциональных действий. Продвижение времени осуществляется по событиям, а программа модели организована в виде совокупности процедур обслуживания событий. Выполнение этих процедур синхронизируется списковым механизмом планирования (расписания) событий. Классическим представителем данной подгруппы является язык SIMSCRIPT.

Вторая подгруппа языков ориентирована на просмотр активностей (работ) с целью проверки выполнения условий их начала или окончания. Просмотр активностей осуществляется непрерывно и определяет очередность появления событий. Завершение выполнения активностей может привести к инициализации новых активностей. Языки данного типа реализуют в своей основе поисковый алгоритм функционирования, а динамика системы описывается в терминах работ. Наиболее известным представителем данной подгруппы ЯИМ является язык FORSIM.

Еще одна подгруппа ЯИМ реализует процессный способ описания систем. Под процессом понимается последовательность событий, связь между которыми устанавливается логикой определенных отношений. Описание каждого класса процесса оформляется в виде процедуры, которая выполняется одновременно для всех представителей данного класса, существующих в системе в текущее время. Программы имитационных моделей, написанные на языке данной подгруппы, отличаются тем, что имеют ту же структуру, что и моделируемый объект. Примерами языков процессов является язык SIMULA, который породил много последующих разработок, используемых в настоящее время, и язык ПЛИС.

Наконец, в отдельную подгруппу следует выделить ЯИМ, реализующие транзактный способ имитации, и ее наиболее известный и широко используемый в настоящее время типопредставитель – язык GPSS (GPSS WORLD, GPSS/PC). Язык моделирования GPSS специально разработан для построения ИМ сложных дискретных систем и представляет собой интерпретирующую языковую систему, применяющуюся для описания пространственно-временного движения объектов. Такие объекты называются транзактами, которые чаще всего являются элементами потока заявок. Функцию каждого из них можно представить как процесс создания, продвижения по системе и уничтожения. Основными схемами, для имитации которых используется язык GPSS, являются, прежде всего, системы массового обслуживания (Q -схемы), автоматы (F-, Р- схемы), сети Петри (TV-схемы) и даже агрегаты (A -схемы).

К числу современных ЯИМ, реализующих комбинированный (непрерывно-дискретный) подход, относятся языки GASP, NEDIS, а из современных версий – язык Modelica, который реализует принципы объектно-ориентированного программирования применительно к моделированию больших, сложных и физически разнородных систем. Их компоненты могут иметь различную физическую природу. Язык поддерживает имитацию гибридного поведения элементов систем и в настоящее время активно развивается. Существенной особенностью данного продукта является его ориентация на реализацию технологий визуального моделирования и создания анимационных ЗD-проектов.

Помимо языков имитационного моделирования в практике решения конкретных проблем исследования и проектирования систем находят свое применение средства автоматизации моделирования: пакеты прикладных программ моделирования; подсистемы визуального моделирования; всевозможные расширения языков программирования. Их главной задачей является обеспечение перевода математической модели объекта на некоторый входной язык моделирования, или язык задания, который является средством общения разработчика системы с базовым языком программирования, расширением которого, по сути, является язык задания. В качестве базового языка пакета может быть выбран любой язык общего назначения. Например, подсистема визуального моделирования Simulink, которая с практической точки зрения подробно рассматривается далее, функционирует на основе языка MATLAB. Интегрированная графическая оболочка системы Model Vision Studium, применяемая для быстрого создания моделей сложных динамических систем и проведения с ними вычислительных экспериментов в форме виртуального лабораторного стенда, основана на использовании специального внутреннего языка моделирования MVL, базирующегося, в свою очередь, на использовании синтаксиса языка Ada.

То же самое можно сказать и о некоторых языках моделирования. Например, язык FORSIM базируется на использовании конструкций языка FORTRAN, а язык ПЛИС опирается на PL.

В настоящее время известно более ста специализированных языков и систем имитационного моделирования, как универсальных, так и ориентированных на конкретные области применения. Достаточно подробные обзоры широкого спектра подобных инструментальных средств приведены в работах.





Дата публикования: 2015-09-17; Прочитано: 3115 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...