Структура типовой имитационной модели с календарем событий


Составление расписания событий как способ организации квазипараллелизма получило широкое распространение, прежде всего в силу простоты и наглядности реализации.

На рис. 4 представлена структура типовой имитационной модели с календарем событий.

Такая имитационная модель состоит из трех частей:

· управляющей;

· функциональной, состоящей из функциональных модулей (ФМ);

· информационной, включающей базу (базы) данных (БД).

В свою очередь, управляющая часть содержит:

· блок управления (БУ) моделированием;

· блок диалога;

· блок обработки результатов моделирования;

· календарь событий.

 

Рис. 4. Структура типовой имитационной модели с календарем событий.

 

Блок управления предназначен для реализации принятого плана имитационного эксперимента. В соответствии с назначением в его состав обычно включают управляющий модуль (УМ), определяющий основные временные установки – моменты начала, остановки, продолжения, окончания моделирования, а также моменты изменения режимов моделирования, и модуль реализации плана эксперимента, устанавливающий для каждого прогона модели необходимые значения (уровни) управляемых факторов.

Блок диалога предназначен для обеспечения комфортной работы пользователя с интерактивной моделью (в автоматических моделях этого блока нет). Отметим, что кроме понятных процедур ввода вывода информации в требуемых форматах различным потребителям, во многих ("больших") имитационных моделях блок диалога включает систему интерактивной многоуровневой помощи пользователю.

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

Календарь событий является важнейшим элементом имитационной модели, предназначенным для управления процессом появления событий в системе с целью обеспечения необходимой причинно-следственной связи между ними.

Календарем событий решаются следующие основные задачи:

· ранжирование по времени плановых событий, т.е. составление упорядоченной временной последовательности плановых событий с учетом вида возможного события и модуля, в котором оно может наступить (для отработки этой задачи в календаре содержится важнейший элемент — каталог плановых событий, (рис. 5);

· вызов необходимых функциональных модулей в моменты наступления соответствующих событий;

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

Перед началом моделирования в первую строку каталога плановых событий (см. рис. 5) заносится время инициализации первого прогона модели, а в последнюю — время его окончания, после чего управление передается на тот ФМ, в котором может наступить ближайшее к начальному по времени событие (если на каждом шаге моделирования проводить ранжирование событий по времени, соответствующая этому событию строка каталога будет первой, поскольку для всех уже наступивших (отработанных, обслуженных) событий устанавливается и записывается в третий столбец каталога фиктивное время, заведомо превышающее время окончания моделирования).

Наименование модуля Вид событий Планируемое время наступления
УМ    
ФМ1    
ФМ2    
. . .    
ФМN    

Рис. 5. Каталог плановых событий.

 

 

№ п/п Адресат Содержание сигнала Признак передачи
     
     
. . .      
М      

Рис. 6. Таблица сигналов.

 

Таким образом, если в результате работы очередного ФМ через таблицу сигналов появляется информация о возможном времени наступления в этом или любом другом модуле какого-либо события, это время, а также вид события и модуль, в котором оно может произойти, заносятся в каталог плановых событий, после чего осуществляется новое ранжирование событий по времени. Затем управление передается ФМ (или УМ), информация о котором находится в первой строке каталога и т.д. до тех пор, пока в первой строке не окажется событие, соответствующее окончанию моделирования.

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

Функциональная часть имитационной модели состоит из функциональных модулей, являющихся основными ее элементами. Именно в них описываются и реализуются все процессы в моделируемой системе. Обычно один ФМ описывает либо отдельный процесс в системе, либо ее отдельный элемент (подсистему) — в зависимости от выбранной схемы моделирования. Обобщенная структурная схема работы ФМ представлена на рис. 7.

Рис. 7. Обобщенная структурная схема работы типового ФМ.

 

На рисунке обозначены: ВС — входной сигнал; ИС — информационный сигнал.

В ФМ могут поступать пять видов входных сигналов:

· стартовый сигнал (сигнал о начале моделирования);

· сигнал о наступлении планового события;

· информационный сигнал;

· сигнал о прерывании моделирования;

· сигнал об окончании моделирования.

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

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

База (базы) данных представляет собой совокупность специальным образом организованных (структурированных) данных о моделируемой системе (операции), а также программных средств работы с этими данными. Как правило, информация из БД выдается в другие части имитационной модели в автоматическом режиме (в этом смысле можно говорить, что потребителями информации из БД являются пользователи-задачи). Наличие БД в имитационной модели не является обязательным и полностью определяется масштабами модели, объемами необходимой информации и требованиями по оперативности получения результатов моделирования и их достоверности. Если принято решение о включении БД в состав имитационной модели, проектирование БД не имеет каких-либо специфических особенностей и проводится по стандартной методике.