Общие принципы визуализации результатов имитационного моделирования
Для вывода результатов имитационного моделирования в различных формах и представлениях используются следующие инструменты:
· Журнал 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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!