Автор работы: Пользователь скрыл имя, 14 Марта 2013 в 11:06, реферат
Имитационное моделирование на цифровых вычислительных машинах является одним из наиболее мощных средств исследования, в частности, сложных динамических систем. Как и любое компьютерное моделирование, оно дает возможность проводить вычислительные эксперименты с еще только проектируемыми системами и изучать системы, натурные эксперименты с которыми, из-за соображений безопасности или дороговизны, не целесообразны. В тоже время, благодаря своей близости по форме к физическому моделированию, это метод исследования доступен более широкому кругу пользователей.
Введение……………………………………………………………………..……2
1.Определение понятия «имитационное моделирование»……………………..3
2. Классификационные признаки моделирования……………………………...3
2.1 По характеру процессов…………………………………………………….4
2.2 По форме представления………………………………………………….…5
3. Классификации языков моделирования……………………………………10
4. Достоинства и недостатки языков имитационного моделирования……..12
5. Языки имитационного моделирования………………………………….…13
5.1 Язык моделирования Симула………………………………………………14
5.2 Язык моделирования SIMSCRIPT………………………………………….15
5.3 Унифицированный язык моделирования UML…………………………..16
5.4 Язык моделирования DYNAMO…………………………………………..19
Заключение……………………………………………………………………...22
Список литературы……………………………………………………………..23
В язык Симула-67 введено
понятие объект, которое возникло
из понятия процесс языка Симула-
Установление в языке таких понятий, как класс, подкласс и некоторых других, позволяет использовать его в качестве основы для построения специализированных языков, ориентированных на различные предметные области (проблемно-ориентированных языков). Одним из преимуществ языка по сравнению с базовым предшественником является наличие удобных средств ввода и вывода.
Идеи, заложенные в языке Симула-67, оказали существенное влияние на языки программирования, которые появились позже. В частности, понятие класс нашло свое воплощение в понятии абстрактные типы данных, а понятие объект в объектно-ориентированном программировании, хотя при разработке Симулы не ставилась цель создать объектно-ориентированный язык. Средствами Симулы-67, помимо языков моделирования, описаны языки работы с базами данных, машинной графики и некоторые другие.
5.2 Язык моделирования SIMSCRIPT
Примером языка событий является язык SIMSCRIPT. Модель состоит из элементов, с которыми происходят события, представляющие собой последовательность предложений, изменяющих состояния моделируемой системы в различные моменты времени. Моделирование с помощью языка SIMSCRIPT включает в себя следующие этапы:
Команды языка SIMSCRIPT группируются следующим образом:
К центральным понятиям языка SIMSCRIPT относятся обработка списков с компонентами, определяемыми пользователем, и последовательность событий в системном времени. При этом имеются специальные языковые средства для работы с множествами.
5.3 Унифицированный язык моделирования UML
Язык UML представляет собой общецелевой язык визуального моделирования, который разработан для спецификации, визуализации, проектирования и документирования компонентов программного обеспечения, бизнес-процессов и других систем. Язык UML одновременно является простым и мощным средством моделирования, который может быть эффективно использован для построения концептуальных, логических и графических моделей сложных систем самого различного целевого назначения.
Конструктивное использование языка UML основывается на понимании общих принципов моделирования сложных систем и особенностей процесса объектно-ориентированного проектирования (ООП) в частности. Выбор выразительных средств для построения моделей сложных систем предопределяет те задачи, которые могут быть решены с использованием данных моделей. При этом одним из основных принципов построения моделей сложных систем является принцип абстрагирования, который предписывает включать в модель только те аспекты проектируемой системы, которые имеют непосредственное отношение к выполнению системой своих функций или своего целевого предназначения. При этом все второстепенные детали опускаются, чтобы чрезмерно не усложнять процесс анализа и исследования полученной модели.
Другим принципом построения моделей сложных систем является принцип многомодельности. Этот принцип представляет собой утверждение о том, что никакая единственная модель не может с достаточной степенью адекватности описывать различные аспекты сложной системы. Применительно к методологии ООП это означает, что достаточно полная модель сложной системы допускает некоторое число взаимосвязанных представлений (views), каждое из которых адекватно отражает некоторый аспект поведения или структуры системы. При этом наиболее общими представлениями сложной системы принято считать статическое и динамическое представления, которые в свою очередь могут подразделяться на другие более частные представления. Феномен сложной системы как раз и состоит в том, что никакое ее единственное представление не является достаточным для адекватного выражения всех особенностей моделируемой системы.
Еще одним принципом
прикладного системного анализа
является принцип иерархического построения
моделей сложных систем. Этот принцип
предписывает рассматривать процесс
построения модели на разных уровнях
абстрагирования или
Главными в разработке UML были следующие цели:
UML содержит стандартный
набор диаграмм и нотаций
Диаграмма в UML – это графическое представление набора элементов, изображаемое чаще всего в виде связанного графа с вершинами (сущностями) и ребрами (отношениями). Диаграммы рисуют для визуализации системы с разных точек зрения.
Диаграмма – в некотором смысле одна из проекций системы. Как правило, за исключением наиболее тривиальных случаев, диаграммы дают свернутое представление элементов, из которых составлена система. Один и тот же элемент может присутствовать во всех диаграммах, или только в нескольких (самый распространенный вариант), или не присутствовать ни в одной (очень редко).
Теоретически диаграммы
могут содержать любые
В UML выделяют следующие типы диаграмм:
5.4 Язык моделирования DYNAMO
Языки имитационного моделирования непрерывных систем предназначены для моделирования динамических объектов с непрерывным фазовым пространством и непрерывным временем. Как правило, такие объекты описываются с помощью систем дифференциальных (интегро-дифференциальных) уравнений. Системы уравнений могут быть детерминированными или стохастическими, причем в последнем случае в имитационную систему встраиваются средства статистического моделирования и обработки. Классическим языком первого типа является язык DYNAMO, разработанный Дж. Форрестером.
Особенности языка DYNAMO:
При использовании языка DYNAMO исследование начинается с построения концептуальной диаграммы. После этого строится диаграмма потоков, в которой происходит конкретизация концептуальной модели, производится классификация переменных и связей между ними. Диаграмма потоков оказывает помощь при переходе от концептуальной диаграммы к программе на языке DYNAMO.
Переменные языка DYNAMO разбиваются на четыре типа:
В качестве уровней берутся те переменные, которые описывают состояние системы. Относительно таких переменных необходимо знать начальное состояние для того, чтобы было возможно промоделировать развитие системы во времени.
Скорости изменения уровней называются темпами. С одним уровнем может быть связано несколько темпов, причем каждый из них приводит к уменьшению или к увеличению значения уровня. Изменение уровня определяется только связанными с ним темпами, сами же темпы могут зависеть от любых уровней, других темпов, а также вспомогательных переменных.
Вспомогательные переменные служат для описания воздействия уровней на темпы, а также на некоторые величины, интересующие исследователя.
Дополнительные переменные служат для описания величин, которые интересуют исследователя, но не являются ни уровнями, ни темпами, ни вспомогательными переменными.
Программа на языке DYNAMO – совокупность уравнений, описывающих взаимную зависимость переменных. Для каждого из видов переменных уравнение имеет специальный вид. Для уровней оно имеет следующую форму:
L K.K = K.J+(DT)(I.JK)
Это уравнение означает, что величина K в момент K равна значению величины в момент J, предшествующий моменту K, сложенному с изменениями, которые внес в нее поток, управляемый величиной I. Здесь момент J соответствует моменту t в математической модели, момент K – моменту t+1.
Поскольку величина I является потоком, она связана с двумя моментами времени J и K, и показывает, что под ней имеется в виду величина потока между моментами J и K (т.е. между моментами t и t+1).
Уравнения для темпов имеют следующий характерный вид:
R I.JK = (S1.J)(Y.J)
Здесь две переменные в скобках означают умножение.
Кроме того, встречаются уравнения типа A - для вспомогательных переменных, типа C – для постоянных, типа N – для начальных условий, типа T – для таблиц.
В программе также
задаются три особые переменные: постоянная
DT – шаг моделирования, постоянная LENGTH
– период моделирования и переменная
TIME, которая является текущим системным
временем и для нее необходимо задать
начальное значение.
Заключение
Стремительное развитие компьютерного моделирования оказывает существенное влияние на все сферы жизнедеятельности человека, во многом упрощая и улучшая его жизненные условия. В мире информационных технологий имитационное моделирование переживает второе рождение. Интерес к этому виду компьютерного моделирования оживился в связи с существенным технологическим развитием систем моделирования, которые на сегодняшний день являются мощным аналитическим средством, вобравшим в себя весь арсенал новейших информационных технологий, включая развитые графические оболочки для целей конструирования моделей и интерпретации выходных результатов моделирования, мультимедийные средства и видео, поддерживающие анимацию в реальном масштабе времени, объектно-ориентированное программирование, Internet – решения и др. Модели системной динамики применяются совместно с дифференциальными уравнениями балансового типа, а также в сочетании с принципами и методами логистики, основанными на оптимизации, управлении, интеграции потоков в сложных системах. Перспективно применение компьютерного моделирования в сочетании с другими методами принятия решений, интеллектуальными технологиями, экспертными процедурами, реализация имитационно-оптимизационных вычислительных процедур на основе компенсационных подходов.