Понятие и виды имитационного моделирования. Роль языков имитационного моделирования в решении задач компьютерного моделирования
Как отмечалось ранее, под имитационным моделированием понимается вид моделирования, при котором логико-математическая модель исследуемого объекта представляет собой алгоритм его функционирования, реализованный в виде программного комплекса для компьютера. В соответствии с этим определением, имитационной моделью называется логико-математическое описание системы, которое может быть исследовано в ходе проведения экспериментов с использованием средств вычислительной техники.
Имитационные модели могут применяться для:
– исследования границ и структур систем,
– определения и анализа критических элементов, компонентов и точек в исследуемых системах и процессах,
– синтеза и оценки предполагаемых решений,
– прогнозирования и планирования будущего развития исследуемых систем.
В имитационном моделировании предполагается, что систему можно описать в терминах, понятных вычислительной системе. Ключевым моментом при этом является выделение и описание состояний системы. Система характеризуется набором переменных, каждая комбинация значений которых описывает ее конкретное состояние. Следовательно, путем изменения значений переменных можно имитировать переход системы из одного состояния в другое. Таким образом, имитационное моделирование – это представление динамического поведения системы посредством продвижения ее от одного состояния к другому в соответствии с хорошо определенными операционными правилами.
Изменения состояний системы могут происходить либо непрерывно, либо в дискретные моменты времени. Хотя процедуры описания динамического поведения дискретно и непрерывно изменяющихся моделей различны, основная концепция имитации системы – отображение изменений ее состояния с течением времени – остается той же.
Как правило, основной независимой переменной в имитационном моделировании является время. Другие переменные, включенные в имитационную модель, являются функциями времени, т.е. зависимыми переменными.
При дискретной имитации зависимые переменные изменяются дискретно в определенные моменты времени, называемые моментами совершения событий. Переменная времени может быть либо непрерывной, либо дискретной, в зависимости от того, могут ли дискретные изменения зависимых переменных происходить в любые моменты времени, или только в определенные моменты. Как правило, в дискретных моделях значения зависимых переменных не изменяются в промежутках между моментами совершения событий.
При непрерывной имитации зависимые переменные модели изменяются непрерывно в течение имитационного времени. Непрерывная модель может быть либо непрерывной, либо дискретной по времени, в зависимости от того, будут ли значения зависимых переменных доступны в любой точке, или только в определенные моменты имитационного времени.
При комбинированной имитации зависимые переменные модели могут изменяться дискретно, непрерывно, или непрерывно с наложенными дискретными скачками. Время изменяется либо дискретно, либо непрерывно. Наиболее важный аспект комбинированной имитации заключается в возможности взаимодействия между дискретно и непрерывно изменяющимися переменными.
Дискретное имитационное моделирование. Элементы дискретных систем, такие как люди, оборудование, заказы и т.п., включенные в имитационную модель, называют ее компонентами. Каждый компонент описывается различными характеристиками (атрибутами). Компоненты, участвующие в действиях различного типа, могут иметь одну или несколько общих характеристик, что позволяет объединять их в группы. Группы компонентов называются файлами. Включение компонента в файл означает, что он логически связан с другими компонентами этого файла.
Целью дискретного имитационного моделирования является воспроизведение взаимодействий, в которых участвуют компоненты, и изучение поведения и функциональных возможностей исследуемой системы. Для этого выделяются состояния системы и описываются действия, которые переводят ее из одного состояния в другое. Говорят, что система находится в определенном состоянии, когда все ее компоненты находятся в состояниях, совместимых с областью значений, описывающих это состояние характеристик. Таким образом, имитация – это «динамический портрет» состояний системы во времени, т.е. воспроизведение поведения системы во времени.
При дискретной имитации состояние системы может меняться только в моменты совершения событий. Так как состояние системы не изменяется между этими моментами, полный динамический портрет состояний системы может быть получен путем продвижения имитационного времени от одного события к другому.
Функционирование дискретной имитационной модели можно задать одним из следующих способов:
– определяя изменения состояний системы, происходящие в моменты свершения событий;
– описывая действия, в которых принимают участие элементы системы;
– описывая процесс[2], через который проходят элементы.
Взаимосвязь между понятиями «событие», «действие» и «процесс» отражена на рис. 32.
Рис. 32. Взаимосвязь между понятиями «событие», «действие» и «процесс»
Эти представления лежат в основе трех альтернативных методологических подходов к построению дискретных имитационных моделей, называемых обычно событийным подходом, подходом сканирования активностей (обозначает подход, ориентированный на действия) и процессно-ориентированным подходом.
Событийный подход. При событийном подходе система моделируется путем идентификации изменений, происходящих в ней в моменты совершения событий. Задача исследователя заключается в описании событий, которые могут изменить состояние системы, и определении логических взаимосвязей между ними. Имитация функционирования системы осуществляется путем выполнения упорядоченной во времени последовательности логически взаимосвязанных событий.
Подход сканирования активностей. При использовании подхода сканирования активностей разработчик модели описывает действия, в которых принимают участие элементы системы, и задает условия, определяющие начало и окончание этих действий. События, которые начинают или завершают действие, не планируются разработчиком модели, а инициируются по условиям, определенным для данного действия. Условия начала или окончания действия проверяются после очередного продвижения имитационного времени. Если заданные условия удовлетворяются, происходит соответствующее действие. Чтобы было выполнено каждое действие в модели, сканирование условий производится для всего множества действий при каждом продвижении имитационного времени.
Подход сканирования активностей наиболее эффективен для ситуаций, в которых продолжительность действия определяется в зависимости от того, насколько состояние системы удовлетворяет заданным условиям. Тем не менее, в силу необходимости сканирования условий для каждого действия, подход сканирования активностей менее эффективен по сравнению с событийным подходом, и поэтому находит ограниченное применение в дискретной имитации.
Процессно-ориентированный подход. Многие имитационные модели содержат последовательности компонентов, которые возникают в них по определенной схеме. Процессно-ориентированный подход, сочетая в себе черты событийного подхода и подхода сканирования активностей, обеспечивает описание прохождения компонентов через процесс, содержащий ресурсы. Простота этого подхода в том, что, как правило, логика событий закладывается в инструментарий разработки имитационной модели. Однако, этот подход является менее гибким, чем событийный. Кроме того, требуется постоянный анализ состояния ресурсов после их использования.
Непрерывное имитационное моделирование. В непрерывной имитационной модели состояние системы представляется с помощью непрерывно изменяющихся зависимых переменных, которые в отличие от дискретно изменяющихся переменных называются переменными состояния. Непрерывная имитационная модель создается путем задания уравнений для совокупности переменных состояния, динамическое поведение которых имитирует реальную систему. Модели непрерывных систем часто определяются в терминах производных переменных состояния.
Комбинированные дискретно-непрерывные модели. В комбинированных дискретно-непрерывных моделях независимые переменные могут изменяться как дискретно, так и непрерывно. В рамках методологии комбинированного моделирования исследуемая система описывается с помощью элементов, их атрибутов и переменных состояния. Поведение системы имитируется путем вычисления значений переменных состояния через небольшие отрезки времени и значений атрибутов элементов в моменты совершения событий.
В комбинированном моделировании применяется два типа событий: временные события (события, совершение которых планируется в определенные моменты времени) и события состояния (эти события не планируются, но происходят тогда, когда система достигает определенного состояния).
Понятие «событие состояния» аналогично понятию «сканирование активностей», в котором событие также не планируется, а инициируется определенным состоянием системы. Возможность возникновения события состояния должна проверяться при каждом продвижении имитационного времени.