- •Список вопросов к зачету в группах рк9-81/82 по курсу "Моделирование тп и пп" по номерам
- •1 Система. Основные понятия
- •3. Дискретное моделирование
- •Вопрос 5. Система массового обслуживания. Основные элементы и собираемые показатели.
- •Generate a,b,c,d,e
- •Terminate а
- •12. Язык gpss. Блоки группировки и разделения транзактов. Примеры использования.
- •14. Язык gpss. Остановка модели. Два варианта описания. Примеры использования
- •17. Язык Arena. Блок проверки и ветвления. Примеры использования
- •Decide — ветвление
- •Вопрос 18
- •Отчет о сущностях (Entity)
- •20. Блок изменения параметров транзакта (Assign — назначить)
- •21 Язык Arena. Блоки группировки и разделения транзактов.
- •22. Модуль синхронизации(Match)
- •5.4. Методы разработки валидных и надежных моделей
- •5.4.1. Точное формулирование задачи [шаг 1]
- •5.4.2. Проведение интервью с экспертом в данной предметной
- •5.4.3. Постоянное взаимодействие с лицом, принимающим
- •5.4.4. Использование количественных методов для валидации
- •5.4.5. Документирование концептуальной модели [2]
- •5.4.6. Структурированный просмотр концептуальной модели [3]
- •5.4.7. Использование анализа чувствительности для
- •5.4.8. Валидация результатов общей имитационной модели [5]
- •5.4.9. Использование графиков и анимаций выходных данных
- •5.5. Статистические методы сравнения выходных данных
- •5.6. Основные принципы получения хороших данных
- •5.6.1. Основные принципы
- •5.6.2. Препятствия для получения хороших данных
- •28. Адекватность имитационных моделей. Валидация выходных данных всей имитационной модели.
14. Язык gpss. Остановка модели. Два варианта описания. Примеры использования
В языке GPSS продолжительностью процесса моделирования можно управлять двумя способами:
1) завершать моделирование после того, как модель покинет заданное число транзактов определенного типа;
2) завершать моделирование по истечению заданного интервала времени.
Первый способ:
1. В команде START операнду А присваивается значение заданного числа транзактов.
2. Во всех блоках TERMINATE, через которые транзакты заданного типа покидают модель, операнду А присваивается значение «1» или другое, отличное от нуля (соответственно содержательному значению транзактов).
3. Во все других блоках TERMINATE используется значение операнда А по умолчанию (A = 0). Значение счетчика завершения не будет зависеть от этих блоков.
Первый способ позволяет закончить моделирование, когда через модель пройдет заданное количество транзактов, например 1000:
Второй способ:
Пусть разработчик выбрал за единицу модельного времени 1 мин и хочет смоделировать поведение системы на протяжении 8 часов. Это можно сделать таким образом:
1. Ввести в модель таймер-сегмент, состоящий из двух блоков:
15. Arena – система имитационного моделирования, которая позво-
ляет создавать динамические модели разнородных процессов и систем,
оптимизировать построенную модель. Программа Arena снабжена
удобным объектно-ориентированным интерфейсом, обладает широки-
ми функциональными возможностями по адаптации к различным
предметным областям.
Основой технологии моделирования Arena являются язык моде-
лирования SIMAN и анимационная система Cinema Animation. Отли-
чается гибкими и выразительными средствами моделирования. Ото-
бражение результатов моделирования в Arena выполняется с исполь-
зованием Cinema Animation. Процесс моделирования организован
следующим образом. Сначала пользователь шаг за шагом строит в ви-
зуальном редакторе программы Arena модель. Затем система генери-
рует по ней соответствующий код на SIMAN, после чего автоматиче-
ски запускается Cinema Animation.
Arena состоит из блоков моделирования (модули) и операций
(сущности). Сущности двигаются между модулями по мере их обслу-
живания.
Arena – система имитационного моделирования, которая позво-
ляет создавать динамические модели разнородных процессов и систем,
оптимизировать построенную модель. Программа Arena снабжена
удобным объектно-ориентированным интерфейсом, обладает широки-
ми функциональными возможностями по адаптации к различным
предметным областям.
Основой технологии моделирования Arena являются язык моде-
лирования SIMAN и анимационная система Cinema Animation. Отли-
чается гибкими и выразительными средствами моделирования. Ото-
бражение результатов моделирования в Arena выполняется с исполь-
зованием Cinema Animation. Процесс моделирования организован
следующим образом. Сначала пользователь шаг за шагом строит в ви-
зуальном редакторе программы Arena модель. Затем система генери-
рует по ней соответствующий код на SIMAN, после чего автоматиче-
ски запускается Cinema Animation.
Arena состоит из блоков моделирования (модули) и операций
(сущности). Сущности двигаются между модулями по мере их обслу-
живания. Используется сеть блоков для моделирования системы. Сети блоков которые создаются в процессе построения модели линейные и описывают поток сущностей через систему. Эти сущности аналогичны транзактам в GPSS. Каждая сущность может обладать собственными атрибутами, которые характеризуют ее особенности. В языке СИМАН имеются 10 различных типов базовых блоков: QUEUE, STATION,BRANCH, PICKQ, Operation, HOLD, QPICK,SELECT, MATCH, TRANSFER. Причем блоки OPERATION HOLD TRANSFER выделяют как функциональные, в которых тип связанного с блоком действия определяется первым операндом блока. C помощью блоков STATION можно организовывать подсистемы(участки цехов и производственные ячейки). Тогда сущности будут поступать в них из блокаTRANSFER,а направляются в другие подмодели с помощью блока ROUTE.
16. Язык Arena. Блоки создания и удаления транзактов. Примеры использования.
Блок Create отвечает за генерацию транзактов и введение их в систему обслуживания. Блок имеет следующие настройки:
Name — имя блока;
Entity Type — тип сущности, позволяет задать, к какому типу будут относиться создаваемые транзакты.
Time Between Arrivals — время между поступлениями, задает длительность временных интервалов между моментами, в которые создаются транзакты.
Type — тип распределения длительности интервала:
Random (Expo) — экспоненциальное распределение с плотностью распределения p(x) = λ e–λ x;
Schedule — заданные расписанием длительности интервалов;
Constant — постоянная длительность интервала;
Expression — позволяет задать выражение для длительности интервала.
Value — параметр распределения длительности интервалов. При различных типах распределения имеет разный смысл:
В случае, когда тип распределения — Random (Expo) — имеет смысл математического ожидания длительности интервала, равного λ–1 из формулы распределения;
В случае постоянной длительности интервала является непосредственно этой константой;
При остальных типах распределения это поле недоступно.
Schedule Name — имя расписания (поле доступно, если тип распределения — Schedule);
Expression — выражение (поле доступно, если тип распределения — Expression).
Units — единицы измерения времени, в которых измеряется временной интервал.
Entities per Arrival — количество транзактов, которое создается за одно поступление.
Max Arrivals — ограничение на максимальное число поступлений за симуляцию. По достижении указанного значения симуляция автоматически останавливается, и среда предлагает просмотреть отчеты.
First Creation — временной интервал между началом симуляции и самым первым поступлением.
Все числовые значения могут задаваться как константами, так и выражениями.
Блок Dispose отвечает за утилизацию транзактов, то есть за выведение их из модели. Блок имеет следующие настройки:
Name — имя блока;
Record Entity Statistics — если данный флажок установлен, то данные обо всех выводимых транзактах попадают в статистику и учитываются при построении отчетов, в противном случае все данные об утилизируемых сущностях теряются.
Пример будет включать в себя три блока — создание транзакта (Create), операция над ним (Process), и утилизация транзакта (Dispose).
В качестве операции в примере работает простая задержка без каких-либо условий или ограничений. Любой транзакт, поступающий в блок, задерживается на определенное время, независимо от того, сколько транзактов уже находится в блоке, и сколько еще поступит в дальнейшем. Такая схема является моделью какого-нибудь процесса, где детали подвергаются какому-либо пассивному действию без занятия ресурсов, например, сушка заготовок в помещении, площадь которого несравнимо больше размеров изделий. В терминах теории массового обслуживания данная система имеет бесконечное число обслуживающих приборов.
После соединения всех блоков, запустите симуляцию модели (Run — Go). Во время симуляции рядом с Create отображается количество созданных транзактов, рядом с Process — число транзактов, находящихся в блоке в данный момент, рядом с Dispose — количество блоков, выведенных из модели к данному моменту времени. Приостановить (Pause) и прекратить (Stop) симуляцию можно, также воспользовавшись меню Run. Во время паузы симуляции можно просмотреть отчеты (вкладка Reports), содержащие разнообразную статистическую информацию о модели. Смысл этих отчетов мы подробно рассмотрим далее.