Общие принципы визуализации результатов имитационного моделирования



Для вывода результатов имитационного моделирования в различных формах и представлениях используются следующие инструменты:

· Журнал Journal;

· Стандартный отчёт Standard Report;

· Окна моделирования Simulation Windows;

· Снимки моделирования Simulation Snapshot.

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

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

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

Снимки моделирования предназначены для фиксации в заданные моменты времени состояния программы с целью последующего анализа или её отладки. Фиксируются состояния Цепи текущих событий, Цепи будущих событий, Цепи пользователя, групп однородных транзактов, положение конкретного транзакта.

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

В целом эти инструменты визуализации результатов гармонично сочетаются между собой и создают основу технологии имитационного моделирования с помощью программы GPSS World.

Журнал Journal

Журнал формируется автоматически (если его формирование не отменено) и всегда появляется в отдельном окне. К нему можно перейти с помощью команды меню Window → имя_файла — JOURNAL. После трансляции программы в журнале появляется первая запись, например (Рисунок 4.1):

Рисунок 4.1 — Фрагмент Журнала сразу после трансляции
при отсутствии в тексте программы команды START

Эти записи означают:

10 апреля 2005 года в 13 часов 44 минуты 55 секунд Началась трансляция модели.

10 апреля 2005 года в 13 часов 44 минуты 55 секунд Готово.

Если задать команду START и ввести цифру 100, то в Журнале будет получена следующая запись (Рисунок 4.2).

Рисунок 4.2 — Фрагмент Журнала после команды START

Она содержит следующую информацию (после данных о дате и времени):

· В Счётчик завершения записано 100 циклов до окончания работы программы

· Моделирование идёт

· Моделирование окончилось. Время 353.895450 ед. модельного времени.

Если вместо задания команды START нажать клавишу пошаговой работы F5, то в Журнале будет отражаться каждый шаг программы (Рисунок 4.3):

Рисунок 4.3 — Фрагмент Журнала после первого шага
при пошаговой работе с помощью клавиши F5

После первого шага (начиная с третьей строки) информация имеет следующий смысл:

· Шаг 1

· Моделирование идёт.

· Остановка. Активный транзакт (XN) имеет № 1. Следующий блок № 2.

· Модельное время 4,504044 ед. времени. Следующий блок: TEST. Строка 9 (в ней располагается оператор TEST).

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

При следующем нажатии клавиши пошагового моделирования F5 Журнал записывает следующую информацию (Рисунок 4.4):

· Шаг 1

· Моделирование идёт.

· Остановка. Активный транзакт (XN) имеет № 1. Следующий блок № 3.

· Модельное время 4,504044 ед. времени. Следующий блок: SAVEVALUE. Строка 11.

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

Рисунок 4.4 — Фрагмент Журнала после второго шага
при пошаговой работе с помощью клавиши F5

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

При следующем нажатии клавиши пошагового моделирования F5 журнал записывает аналогичную информацию.

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

4.3 Стандартный отчёт Standard Report

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

Вид Стандартного отчёта можно настраивать с помощью специального окна настройки Стандартного отчёта: Edit → Settings → Report. Тогда открывается окно настройки Стандартного отчёта (Рисунок 4.5).

Рисунок 4.5 — Диалоговое окно настройки
Стандартного отчёта Standard Report

Настраиваемые параметры на вкладке (Рисунок 4.5) имеют следующий смысл:

Blocks — блоки (вывод имён блоков и соответствующей им статистики);

Queues — очереди (вывод имён Очередей и соответствующей им статистики — очереди есть не во всякой программе и выводить их не всегда надо);

Tables — таблицы (вывод имён Таблиц и соответствующей им статистики — Таблицы используются для накапливания данных в процессе моделирования и построения в последующем гистограмм, они не всегда присутствуют в программе и поэтому загромождать ими Стандартный отчёт при их отсутствии не нужно);

Names — имена (вывод имён всех переменных программы и соответствующих им значений);

XN Groups — XN-группы (при наличии Групп транзактов можно вывести значения отдельных транзактов из этих групп);

Num Groups — числовые группы (при наличии Числовых групп можно вывести имена этих групп и соответствующую им статистику);

Facilities — обслуживающие устройства (Обслуживающие устройства есть в любой реальной программе);

Storages — многоканальные устройства (Многоканальные устройства — есть не во всех программах);

CEC (Current Events Chain) — цепь текущих событий (содержит информацию о транзактах, помещённых в Цепь текущих событий);

FEC (Future Events Chain) — цепь будущих событий (содержит информацию о транзактах, помещённых в Цепь будущих событий);

Six Places — шесть знакомест (точность представления чисел). При отсутствии флажка точность — три знака.

Procedures — процедуры (информация об использованных процедурах, вводимых программистом);

Savevalues — сохраняемые величины (Сохраняемые величины — обычные переменные, которые записываются в память и могут использоваться затем в программе; они отличаются от других объектов GPSS — блоков, Обслуживающих устройств, Многоканальных устройств, Очередей, которые не являются переменными, а некими объектами, содержащими много параметров; Сохраняемые величины имеются не во всех программах, в случае их наличия выводится таблица с перечнем Сохраняемых величин и их значениями на момент конца моделирования);

Logicswitches — логические ключи (приводятся данные о Логических ключах, которые есть не во всех программах; при их наличии выводится список Логических ключей и их значения (0 – выключен или 1 – включен) на момент окончания моделирования);

Userchain — цепь пользователя (приводится информация о наличии транзактов в Цепи пользователя, в которую транзакты помещаются принудительно при выполнении определённых условий, заданных программистом);

Matrices — матрицы (приводится информация о Матрицах, которые есть не во всех программах);

Scientific — научный (представление чисел с мантиссой в виде десятичной экспоненты);

Experiments — эксперименты (выводится информация об экспериментах).

Дополнительные параметры вверху:

Create Standard Window — создавать или нет Стандартный отчёт;

In Window — выводить или нет Стандартный отчёт на экран. Создание Стандартного отчёта предусматривает его обязательную запись в файл, но вывод на экран при этом не обязателен. Если создание Стандартного отчёта отменено, то вывод на экран также невозможен.

Дополнительные параметры внизу:

Saved Plot Points — число сохраняемых точек для построения графика;

Suppress Page Numbers — простановка номеров страниц в Стандартном отчёте вверху;

PLUS Trace — осуществлять или нет трассировку программ на языке PLUS;

Silence — выключение звукового сигнала, сообщающего об ошибке при работе программы.

Внешний вид Стандартного отчёта приведён на серии рисунков (Рисунок 4.6 — Рисунок 4.9). Стандартный отчёт обычно имеет сравнительно большие размеры и не всегда вмещается в окно экрана.

Рисунок 4.6 — Стандартный отчёт. Начало. Часть 1

В первой строке начальной части Стандартного отчёта (Рисунок 4.6) приводится название использованной программы (GPSS World), окна (Simulation Report) и программной модели (Sample9-Rus.1.1). В последнем случае имеется ввиду программа Sample9-Rus.gps.

Во второй строке — дата и время моделирования (Saturday, May 08, 2004 00:36:40).

Ниже приводятся таблицы с различными данными.

Первой идёт таблица с наиболее общими данными о программе и закончившемся процессе моделирования:

START TIME —время начала сеанса моделирования (в данном случае, как это часто и бывает, оно равно 0, но в случае нескольких последовательных сеансов моделирования может быть и другим);

END TIME — время окончания сеанса моделирования (в данном случае 10684,478 единиц внутреннего модельного времени — физический смысл его для каждой программы — свой);

BLOCKS — количество блоков в программе (в данном случае их 32);

FACILITIES — количество Обслуживающих устройств в программе (в данном случае их 3);

STORAGES — количество Многоканальных устройств (в данном случае их 1).

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

Во второй части окна Стандартного отчёта (Рисунок 4.7) приведена таблица, отражающая структуру программы.

Рисунок 4.7 — Стандартный отчёт. Продолжение. Часть 2

При этом указываются метки (LABEL; в данном случае их две — NXTBLK и FINIS), номера блоков (LOC; нумерация их выполняется автоматически транслятором GPSS — на эти номера можно ссылаться в программе: в данном случае их 32), имена всех блоков (BLOCK TYPE), количество вошедших в эти блоки транзактов (ENTRY COUNT), количество имеющихся в данный момент в блоках транзактов (CURRENT COUNT), повторные входы транзактов в каждый блок (RETRY).

В третьей части окна Стандартного отчёта (Рисунок 4.8) имеется 4 таблицы:

· для Обслуживающих устройств (FACILITY, в программе было 3 Обслуживающих устройства c именами FACILITY1, FACILITY2 и FACILITY3),

· для Очередей (QUEUE, в программе было 2 очереди с именами TOT_PROCESS и PROCESS_TIME),

· для Многоканальных устройств (STORAGE, в программе было одно Многоканальное устройство с именем POOL),

· для Таблиц (TABLE, в программе была одна Таблица с именем TRANSIT).

Рисунок 4.8 — Стандартный отчёт. Продолжение. Часть 3

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

Для Обслуживающих устройств Facility это:

ENTRIES — число входов транзактов в Обслуживающее устройство;

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

AVE. TIME [average time] — среднее время обслуживания транзактов;

AVAIL. [available] — доступность устройства для транзактов на момент вывода Стандартного отчёта;

OWNER — номер транзакта, находящегося в Обслуживающем устройстве;

PEND — состояние Цепи

INTER — состояние Цепи

RETRY — состояние Цепи

DELAY — состояние Цепи

Рисунок 4.9 — Стандартный отчёт. Окончание. Часть 4

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

Окна GPSS World


Дата добавления: 2015-12-17; просмотров: 44; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!