
- •Глава 1 2
- •Глава 2 32
- •Глава 1 Основные понятия имитационного моделирования
- •1.1Модели
- •1.2Структура имитационной модели
- •1.3Построение имитационной модели
- •1.4Методологические подходы в имитационном моделировании
- •1.4.1Дискретное моделирование
- •1.4.2Событийный подход
- •1.4.3Подход сканирования активностей
- •1.4.4Процессно - ориентированный подход
- •1.4.5Непрерывное имитационное моделирование
- •1.4.6Комбинированные дискретно - непрерывные модели
- •1.5Языки имитационного моделирования
- •Глава 2 Моделирование на языке Симула - 67
- •1.6Понятие объекта в языке Симула-67
- •2.1.1 Объекты и классы объектов
- •2.1.2 Создание объектов и их наименование
- •2.1.3 Иерархическое описание классов объектов
- •2.2 Средства доступа к атрибутам объектов
- •2.2.1 Дистанционные идентификаторы
- •2.2.2 Присоединяющие операторы.
- •2.2.3 Виртуальные атрибуты
- •2.3 Ввод - вывод в Симула-67
- •2.4 Средства имитационного моделирования
- •2.5 0 Средствах для сбора статистики и стохастического моделирования
- •2.6 Программа моделирования работы магазина
- •2.6.1 Постановка задачи
- •2.6.2 Описание программы моделирования
1.4Методологические подходы в имитационном моделировании
В случае, когда разработчик имитационной модели использует какой-либо язык имитационного моделирования, методологический подход описания модели неявно задается этим языком. Но если разработчик использует универсальный язык программирования, то он сам должен разработать такой подход.
Модели систем подразделяются на дискретные и непрерывно изменяющиеся. Одну и ту же систему можно представить как дискретно, так и непрерывно изменяющейся моделью.
При дискретной имитации зависимые переменные меняются дискретно в определенные моменты имитационного времени, называемые моментами совершения событий, хотя само время может быть непрерывным.
При непрерывной имитации зависимые переменные изменяются непрерывно, хотя само время может изменяться и дискретно.
При комбинированной имитации зависимые переменные могут изменяться дискретно, непрерывно или непрерывно с дискретными скачками. Время может меняться как непрерывно, так и дискретно.
1.4.1Дискретное моделирование
Элементы дискретных систем, такие как люди, оборудование, заказы и т.д. включающиеся в имитационную модель, называются компонентами. Эти компоненты различаются своими типами, описываемыми различными характеристиками - атрибутами. Компоненты могут иметь одну или несколько общих характеристик, что позволяет объединить их в группы.
Целью дискретного моделирования является воспроизведение взаимодействий, в которых участвуют компоненты, и изучение поведения исследуемой системы. Для этого выделяются состояния системы и описываются действия, которые переводят ее из одного состояния в другое.
При дискретной имитации состояние системы может меняться только в моменты совершения событий. В большинстве языков моделирования дискретной имитации используется механизм продвижения времени, основанный на поиске следующего ближайшего события.
Функционирование дискретной имитационной модели можно задать следующим образом:
определяя изменения состояния системы, происходящие в моменты совершения событий:
описывая действия, в которых принимают участие элементы системы, или процесс, в котором они задействованы.
Событие происходит в тот момент времени, когда принимается решение о начале или окончании действия. Процесс - это ориентированная во времени последовательность событий, которая может состоять из нескольких действий. Эти понятия или представления лежат в основе трех методологических подходов к построению дискретных имитационных моделей, называемых обычно событийным подходом, подходом сканирования активностей (ориентирован на описание действий ) и пронесено - ориентированным подходом.
1.4.2Событийный подход
При событийном подходе система моделируется посредством идентификации изменений, происходящих в ней в моменты совершения событий. Имитация работы системы осуществляется путем выполнения упорядоченной во времени последовательности логически взаимосвязанных событий. При этом имитационное время продвигается от одного события к другому.
Для работы модели необходимо воспроизвести хронологию событий и причины* вызывающие их появление в соответствующие моменты времени. Все это обеспечивает календарь событий, который первоначально содержит только отметку о первом событии. В ходе имитации системы возникновение других событий должно быть запланировано в календаре событий в соответствии с логикой функционирования системы.
Такие языки моделирования как GASP [5], [12], SIMSCRIPT [5], [14], [6] обладают встроенными средствами для ведения календаря событий.