Имитационное моднлирование

Автор работы: Пользователь скрыл имя, 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

Вложенные файлы: 1 файл

ИМ.doc

— 212.00 Кб (Скачать файл)

Натурным моделированием называют проведение исследования на реальном объекте с последующей  обработкой результатов эксперимента на основе теории подобия.

С развитием техники и проникновением вглубь процессов, протекающих в реальных системах, возрастает техническая оснащенность современного научного эксперимента. Он характеризуется широким использованием средств автоматизации проведения, применением весьма разнообразных средств обработки информации, возможностью вмешательства человека в процесс проведения эксперимента. И в соответствии с этим появилось новое научное направление — автоматизация научных экспериментов.

Отличие эксперимента от реального протекания процесса заключается  в том, что в нем могут появиться  отдельные критические  ситуации и определяться границы устойчивости процесса.

Другим видом реального  моделирования является физическое, отличающееся от натурного тем, что исследование проводится на установках, которые сохраняют природу явлений и обладают физическим подобием. В процессе физического моделирования задаются некоторые характеристики внешней среды, и исследуется поведение либо реального объекта, либо его модели при заданных или создаваемых искусственно воздействиях внешней среды. Физическое моделирование может протекать в реальном и нереальном (псевдореальном) масштабах времени, а также может рассматриваться без учета времени. В последнем случае изучению подлежат так называемые «замороженные» процессы, которые фиксируются в некоторый момент времени. Наибольшие сложность и интерес с точки зрения верности получаемых результатов представляет физическое моделирование в реальном масштабе времени.

С точки зрения математического  описания объекта и в зависимости  от его характера модели можно  разделить на:

  • аналоговые (непрерывные);
  • цифровые (дискретные);
  • аналого-цифровые (комбинированные).

Под аналоговой моделью  понимается модель, которая описывается уравнениями, связывающими непрерывные величины.

Под цифровой понимают модель, которая описывается уравнениями, связывающими дискретные величины, представленные в цифровом виде.

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

Особое место в моделировании  занимает кибернетическое моделирование, в котором отсутствует непосредственное подобие физических процессов, происходящих в моделях, реальным процессам. В  этом случае стремятся отобразить лишь некоторую функцию и рассматривают реальный объект как «черный ящик», имеющий ряд входов и выходов, и моделируют некоторые связи между выходами и входами. Чаще всего при использовании кибернетических моделей проводят анализ поведенческой стороны объекта при различных воздействиях внешней среды. Таким образом, в основе кибернетических моделей лежит отражение некоторых информационных процессов управления, что позволяет оценить поведение реального объекта. Для построения имитационной модели в этом случае необходимо выделить исследуемую функцию реального объекта, попытаться формализовать эту функцию в виде некоторых операторов связи между входом и выходом и воспроизвести на имитационной модели данную функцию, причем на базе совершенно иных математических соотношений и, естественно, иной физической реализации процесса.

 

 

  1. классификации языков моделирования

 

Для машинного моделирования системы S пригодны три способа проведения вычислений, в основе которых лежит применение цифровой, аналоговой и гибридной вычислительной техники рис. 1.

 

Рис. 1. Классификация языков моделирования

 

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

Имеющиеся ЯИМ можно  разбить на три основные группы, соответствующие трем типам математических схем:

  • непрерывные;
  • дискретные;
  • комбинированные.

Языки каждой группы предназначены  для соответствующего представления системы S при создании ее машинной модели .

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

Непрерывное представление системы S сводится к составлению уравнений, с помощью которых устанавливается связь между зависимыми и независимыми переменными модели. Примером такого непрерывного подхода является использование дифференциальных уравнений. Причем в дальнейшем дифференциальные уравнения могут быть применены для непосредственного получения характеристик системы.

Представление системы S в виде типовой схемы, в которой  участвуют как непрерывные, так  и дискретные величины, называется комбинированным. Состояние модели системы М(S) описывается набором переменных, некоторые из которых меняются во времени непрерывно. Законы изменения непрерывных компонент заложены в структуру, объединяющую дифференциальные уравнения и условия относительно переменных. Предполагается, что в системе могут наступать события двух типов:

  • события, зависящие от состояния системы;
  • события, зависящие от времени.

События первого типа наступают в результате выполнения условий, относящихся к законам  изменения непрерывных переменных.

Для событий второго типа процесс моделирования состоит в продвижении системного времени от момента наступления события до следующего аналогичного момента.

В рамках дискретного  подхода можно выделить несколько  принципиально различных групп  ЯИМ.

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

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

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

 

  1. Достоинства и недостатки языков имитационного моделирования

 

Преимущества языков имитационного моделирования (ЯИМ) по сравнению с универсальными языками  общего назначения (ЯОН) следующие:

  1. язык моделирования содержит абстрактные конструкции, непосредственно отражающие понятия, в которых представлена формализованная модель, и близкие концептуальному уровню описания моделируемой системы. Это упрощает программирование имитатора, позволяет автоматизировать выявление многих ошибок в программах;
  2. языки моделирования имеют эффективный встроенный механизм продвижения модельного времени (календарь событий, методы интегрирования и др.), средства разрешения временных узлов;
  3. языки моделирования, как правило, содержат встроенные датчики случайных чисел, генераторы других типовых воздействий;
  4. в языках моделирования автоматизирован сбор стандартной статистики и других результатов моделирования, имеются средства автоматизации выдачи этих результатов в табличной или графической форме;
  5. языки моделирования имеют средства, упрощающие программирование имитационных экспериментов, в частности, автоматизирующие установку начального состояния и перезапуск модели.

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

  1. используются только стандартные формы вывода результатов моделирования;
  2. недостаточная распространенность языков моделирования, которые, как правило, не входят в штатное программное обеспечение операционных систем;
  3. необходимость дополнительного обучения языкам моделирования и, как следствие, недостаток программистов, хорошо владеющих языками моделирования;
  4. отсутствие гибкости и широких возможностей, присущих универсальным языкам программирования.

 

 

 

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

 

Разработан ряд моделирующих языков высокого уровня для моделирования дискретных систем, систем массового обслуживания. Таких, как SIMULA, SIMSCRIPT, GPSS, CSL и др.

SIMULA представляет собой расширение языка АЛГОЛ, SIMSCRIPT — расширение Фортрана. Наибольшее распространение из этих языков получил язык GPSS. В GPSS важное место занимает обработка таких объектов, как транзакты (сообщения, заявки, запросы).

Языки моделирования  цифровых систем в основном обеспечивают задачи разработки цифровой аппаратуры. Их называют HDL или на русском языке  — языки описания аппаратуры (ЯОА). Наиболее известным и эффективным  ЯОА сегодня является язык VHDL. 
VHDL является единым, общим языком описания моделей и проектирования электронных устройств, начиная с вентильного, регистрового уровней и кончая уровнем описания вычислительных систем. Но основное назначением языка VHDL — описание заданий на моделирование.

Для моделирования непрерывных динамических систем получил распространение язык CSMP, который реализует пакетный режим взаимодействия с пользователем. Появились и другие языки и системы моделирования непрерывных процессов, такие как MIDAS, PACTOLUS, CSSL. К отечественным языкам и системам моделирования непрерывных динамических систем относятся МАСЛИН и МАСС (разработанные сотрудниками МЭИ). Примерами языков, реализующих комбинированное моделирование являются GASP, НЕДИС и МИКС.

GASP является расширением языка ФОРТРАН. Здесь непрерывные алгоритмы моделируются дифференциальными уравнениями, а дискретные процессы представляются в виде событий, наступление которых зависит от процесса функционирования системы. Событие — переход системы из одного состояния в другое в соответствии с принятыми правилами.

НЕДИС — язык моделирования непрерывно-дискретных систем разработан сотрудниками Института кибернетики Академии наук Украины. НЕДИС создан на основе алгоритмических языков высокого уровня и относится к системам программирования универсального типа, т.е. языки GASP и НЕДИС относятся к процедурным языкам программирования.

МИКС (моделирование имитационное комбинированных систем) представляет собой удобное средство моделирования. Как и язык МАСЛИН, МАСС система МИКС имеет в своей основе блочно-ориентированный язык с непроцедурной технологией программирования, позволяющей легко и быстро моделировать исследуемую систему, осуществлять быстрое преобразование модели, воспроизводить реально действующие сигналы и организовать вычислительный эксперимент. Блочные языки и соответствующие программные модули позволяют легко реализовать динамическое распределение памяти посредством размещения во внешнее запоминающее устройство (ВЗУ) больших библиотек модулей, извлекать их по мере необходимости, пересылать их в оперативную память.

 

5.1 Язык моделирования Симула

 

Cимула (от SIMUIation LAnguage, т.е. язык моделирования, специальный язык программирования, облегчающий доведение модели реальной системы до готовой компьютерной программы)  семейство языков программирования, разработанных в Норвегии. Широкую известность и распространение получили языки Симула-1 и Симула-67. Они базируются на Алголе-60 и содержат его в качестве своего подмножества.

Язык Симула-1, появившийся  в 1964 году, создан У. Далом и К. Нюгордом. Предназначен для моделирования систем с так называемыми дискретными событиями (например, систем массового обслуживания).

Цели, которые ставили  перед собой разработчики, сводились к следующим:

  • предоставить в распоряжение исследователя, строящего модель системы, концептуальную основу для ясного и четкого мышления;
  • предоставить средства для описания динамических моделей;
  • облегчить процесс программирования.

Фундаментальным понятием языка Симула-1 является процесс, а  главную роль играют параллельно  функционирующие процессы, которые выступают в качестве компонентов моделируемой системы. Они имеют свои атрибуты (структуру данных) и программу действий (алгоритм). В каждый момент времени активен только один процесс. Исполняя свою программу, он может использовать свои и чужие атрибуты, порождать новые процессы, планировать для себя и других процессов события новые фазы активности (употребляя "встроенное" в язык понятие дискретного времени), приостановить себя. Для всего этого в языке имеются планирующие и управляющие операторы.

В 1967-1968 годах авторы Симулы-1 и присоединившийся к ним Б. Мюрхауг создали Симулу-67. Как утверждает Е. Киндлер, данный язык по своей "универсальности" ближе к таким языкам, как Алгол-68 и Ада, чем к языкам моделирования. Однако следует отметить, что все средства Симулы-1 являются частью языка Симула-67 и их можно использовать при помощи так называемого стандартного класса SIMULATION (моделирование).

Информация о работе Имитационное моднлирование