ДИАЛОГОВЫЕ ВОЗМОЖНОСТИ GPSS WORLD
Взаимодействие пользователя c системой GPSS World осуществляется c помощью оконного интерфейса в режиме активного диалога. Для этого в системе предусмотрены диалоговые окна, которые позволяют отображать информацию о состоянии отдельных объектов на экране дисплея. Эта информация может быть как статической, так и динамической. [2, 6, 7] Вид главного окна, появляющегося при запуске системы GPSS World, показан на рис. П.1.1.
Рис. П.1.1. Вид главного окна системы GPSS World
Пункт меню File/Newпозволяет создать новую GPSS-модель или текстовый файл. Для удобства создания модели можно воспользоваться пунктом меню Edit/Insert GPSS Block...,позволяющим выбрать из специального окна блоков и вставить в модель любой GPSS-Block (рис. П.1.2). При выборе блока открывается окно c его параметрами (см. рис. П.1.2). Использование этого средства GPSS World гарантирует правильность формирования строки модели c выбранным блоком.
Текстовый файл обычно содержит последовательность команд, которые могут быть подключены к модели c помощью команды INCLUDE.
Пункт меню Edit/Insert Experimentпозволяет вставить в модель блок, написанный на языке PLUS.
Пункт меню Edit/Expression Window... предназначен для редактирования информации в окне выражений, если это окно использовалось в модели. Пункт меню Edit/Plot Window... предназначен для редактирования информации в окне графиков.
Пункт меню Edit/Settings... позволяет задавать параметры имитации, отчетов, генераторов случайных чисел, функциональных клавиш и выражений.
П р о д о л ж е н и е п р и л. 1
Пункт главного меню Search помогает передвигаться внутри текстового объекта, его первый пункт – Find/Replace (найти/заменить) – открывает обычный диалог для поиска и замены текстовой информации.
а б
Рис. П.1.2. Вид окна блоков (а) и окна задания параметров блока (б)
Последующий набор пунктов меню используется для работы c закладками и позволяет размещать невидимые маркировочные знаки, которые сохраняются c объектом. Закладки составляют циклический список, который можно просматривать c помощью соответствующих команд меню или c помощью клавиш.
Пункт меню Search/Next Book mark переводит к позиции следующей закладки в тексте, Search/Mark вводит закладку в текущую позицию курсора, Search/Unmark снимает выделение, удаляя текущую закладку, a Search/Unmark All снимает все закладки. Пункт меню Search/Select to Bookmark выделяет текст от текущей позиции курсора до текущей позиции закладки. Последние два пункта меню Search связаны c сообщениями об ошибках, которые возникают при трансляции GPSS-модели. Ошибки трансляции заносятся в циклический список, который хранится вместе c GPSS-моделью и модифицируется при повторной трансляции. Для поиска ошибок используются пункты меню Search/Next Error (следующая ошибка) и Search/Previous Error (предыдущая ошибка). Для быстрого поиска ошибок c помощью клавиатуры применяются комбинации клавиш [b + a + N] и [b + a + P]. Курсор останавливается перед ошибкой.
П р о д о л ж е н и е п р и л. 1
Пункт главного меню View (вид) управляет отображением информации в окнах. Первый пункт меню View/Notices (заметки) выводит информацию о текущей версии GPSS World и ее особенностях. Второй пункт меню View/Toolbar позволяет отображать или не отображать панель инструментов в главном окне. Третий пункт меню View/Entity Details управляет выдачей детальной информации для некоторых динамических окон. Например, в окне блоков может быть показано только их графическое представление (рис. П.1.3) или отображаться детальная информация по всем блокам модели (рис. П.1.4).
Рис. П.1.3. Вид окна блоков с их графическим отображением
Последний пункт меню View/Simulation Clock позволяет отображать часы модельного времени в нижнем правом углу главного окна.
Пункт главного меню Command (команда) используется для создания и управления объектами имитации. Пункт меню Command/Create Simulation (создать имитацию) вызывает транслятор для создания объекта имитации, который включает в себя GPSS-модель и файлы, связанные c ней. Ошибки трансляции должны быть исправлены (см. пункт меню Search/Next Error). Команда меню Command/Retranslate доступна для выполнения повторной трансляции после исправления ошибок.
Команда Command/Repeat Last Command (повторить последнюю команду) повторяет последнее действие. Остальные пункты меню Command выполняют команды.
П р о д о л ж е н и е п р и л. 1
Рис. П.1.4. Детальная информация по всем блокам модели
При работе c GPSS World пользователю доступны двадцать различных окон для наблюдения и взаимодействия c моделью в процессе имитации. Окна, отображающие визуальное состояние имитации, могут быть сохранены и распечатаны. Некоторые окна могут производить мгновенный снимок состояния различных объектов имитации в отдельный момент модельного времени. Изображения в окнах изменяются динамически в интерактивном режиме взаимодействия c моделью. Следует отметить, что открытые динамические окна существенно замедляют скорость прогона модели.
Пользователю доступны следующие окна, позволяющие отображать мгновенное состояние системы:
Current Events Chain (список текущих событий);
Future Events Chain (список будущих событий);
Individual Transactions (отдельные транзакты);
Numeric Groups (числовые группы);
Transaction Groups (группы транзактов).
При моделировании может быть открыто любое число динамических окон для следующих объектов: блоков, устройств, МКУ, очередей, логических ключей, сохраняемых величин, матриц, таблиц. Кроме того, можно воспользоваться окнами для графиков и выражений, что позволяет проследить изменения значений переменных во время имитации.
П р о д о л ж е н и е п р и л. 1
Каждое окно графиков может отображать значения до восьми переменных, в том числе и переменные интегрирования. Окна графиков имеют вертикальный и горизонтальный скроллинги для просмотра. Окно выражений может быть открыто в любой момент моделирования и позволяет просматривать значения любого числа PLUS-выражений.
В окне Future Events Chain отображается содержимое списка будущих событий, в котором записаны транзакты c содержимым их параметров в порядке расположения транзактов в таблице модельных событий.
Содержимое окна Future Events Chain представлено на рис. П.1.5.
Рис. П.1.5. Вид окна окна Future Events Chain
Содержание информации, которая выводится в стандартном отчете, для транзактов из списков будущих и текущих событий приведена в прил. 2.
Окно графиков используется для графического отображения изменений значений СЧА, выбранных пользователем в процессе моделирования. Применяя пункт меню Window/Simulation Window/ Plot Window...,можно построить до восьми таких графиков. Для организации вывода информации в графическом виде в GPSS World необходимо выполнить следующие действия:
1) создать модель, выбрав пункт меню Command/Create Simulation;
2) выбрать пункт меню Window/Simulation Window/ Plot Window...;
3) заполнить поля в диалоговом окне Edit Plot Window (рис. П.1.6) и нажать кнопку «ОК»;
4) запустить процесс имитации, выбрав пункт меню Command/STARТ.
Рассмотрим назначение полей диалогового окна Edit Plot Window (см. рис. П.1.6).
Группа New Expression (новое выражение) предназначена для добавления нового выражения в список отображаемых выражений.
О к о н ч а н и е п р и л. 1
После заполнения полей этой группы пользователю нужно нажать кнопку Plot для добавления введенного выражения в список выражений и кнопку Memorize (запомнить) для сохранения выражения c целью дальнейшего использования. В поле Label задается имя выражения, а в поле Expression – выражение пользователя.
Рис. П.1.6. Вид окна задания графиков
В группе Window Contents (содержимое окна) отображается список выражений и задаются глобальные настройки графика. В поле Title задается заголовок графика, а в поле Time Range – длительность временного интервала, отображаемого на графике. Поля Min Value и Max Value определяют минимальное и максимальное значения отображаемой величины. Кнопка Remove используется для удаления выражения.
Группа Memorized Expressions (сохраненные выражения) содержит перечень сохраненных выражений пользователя.
Если значения отображаемого выражения выходят за пределы, указанные в параметрах Min Value и Max Value, либо длительность времени имитации превышает Time Range, топользователь может просмотреть интересующие его значения выражений, прокрутив изображение c помощью горизонтальных и вертикальных полос прокрутки.
ПРИЛОЖЕНИЕ 2
СТАТИСТИЧЕСКАЯ ИНФОРМАЦИЯ
В СТАНДАРТНОМ ОТЧЕТЕ GPSS WORLD
Система GPSS World предоставляет стандартный отчет, содержащий в себе статистику по результатам моделирования.
Пример стандартного отчета:
GPSS World Simulation Report - Untitled Model 1.2.1
Saturday, April 24, 2010 10:19:21
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 406.311 12 1 1
NAME VALUE
DEVICE 10000.000
QP 10002.000
STANOK 10003.000
TABLE1 10001.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 406 0 0
2 QUEUE 406 203 0
3 SEIZE 203 0 0
4 ADVANCE 203 1 0
5 RELEASE 202 0 0
6 ENTER 202 0 0
7 ASSIGN 202 0 0
8 TABULATE 202 0 0
9 DEPART 202 0 0
10 ADVANCE 202 2 0
11 LEAVE 200 0 0
12 TERMINATE 200 0 0
FACILITY ENTRIES UTIL. AVE.TIME AVAIL.OWNER PEND NTER RETRY DELAY
STANOK 203 0.998 1.997 1 203 0 0 0 203
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
QP 204 204 406 0 102.076 102.154 102.154 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY
DEVICE 5 3 0 5 202 1 2.442 0.488 0 0
TABLE MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.%
TABLE1 2.975 0.807 0
- 1.000 7 3.47
1.000 - 2.000 43 24.75
2.000 - 3.000 104 6.24
3.000 - 4.000 44 98.02
4.000 - _ 4 100.00
П р о д о л ж е н и е п р и л. 2
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
203 0 407.000 203 4 5
407 0 407.000 407 0 1
200 0 409.953 200 10 11 7 4.000
201 0 411.966 201 10 11 7 3.000
Статистическая информация об устройствах
FACILITY – номер или имя устройства.
ENTRIES – количество входов.
UTIL – коэффициент использования.
AVE. TIME – среднее время пребывания транзакта в устройстве.
AVAIL. – состояние готовности.
OWNER – номер последнего транзакта, занявшего устройство.
PEND – количество прерванных в устройстве транзактов.
INTER – количество прерывающих работу устройства транзактов.
RETRY – количество транзактов, ожидающих специальных условий.
DELAY – количество транзактов, ожидающих занятия устройства.
Статистическая информация об ожидании
QUEUE – номер или имя очереди.
MAX – максимальная длина очереди.
ENTRY – текущая длина очереди.
ENTRY(0) – количество «нулевых входов».
AVE. СONT. – средняя длина очереди.
AVE. TIME – среднее время пребывания транзактов в очереди.
AVE.(0) – среднее время пребывания транзактов в очереди без учета «нулевых входов».
RETRY – количество транзактов, ожидающих специальных условий.
Статистическая информация об МКУ
STORAGE – имя или номер МКУ.
CAP. – емкость МКУ, заданная оператором STORAGE.
REMAIN – количество единиц свободной емкости МКУ в конце периода моделирования.
MIN / MAX – минимальное/максимальное число единиц используемой емкости МКУ за период моделирования.
О к о н ч а н и е п р и л. 2
ENTRIES – максимальное количество используемой емкости МКУ за период моделирования.
AVL. – состояние готовности МКУ в конце периода моделирования: 1 – МКУ готов, 0 – не готов.
AVE.C. – среднее значение числа единиц занятий емкости за период моделирования.
UTIL – средний коэффициент использования всех устройств МКУ.
RETRY – количество транзактов, ожидающих специальных условий, зависящих от состояния МКУ.
DELAY – количество транзактов, ожидающих возможности входа в блок ENTER.
Статистическая информация о таблицах
TABLE – имя или номер таблицы или Q-таблицы.
MEAN – средневзвешенное значение табулируемого аргумента.
STD.DEV. – взвешенное среднеквадратическое отклонение.
RANGE – нижний и верхний пределы частотного класса.
RETRY – количество транзактов, ожидающих выполнения специального условия, зависящего от состояния данной таблицы.
FREQUENCY – суммарная величина, формируемая при попадании табулируемого аргумента в указанные границы.
CUM/% – величина частоты в процентах к общему количеству значений табулируемого аргумента.
Информация о списках текущих и будущих событий
FEC – список будущих событий.
SEC – список текущих событий.
XN – номер каждого транзакта, находящегося в списке FEC / SEC.
PRI – приоритет транзакта.
М1 – время входа транзакта в модель или время его самого раннего предка.
ASSEM – номер семейства данного транзакта.
CURRENT – номер блока, в котором находится транзакт в конце моделирования.
NEXT – номер следующего блока, в который должен войти транзакт.
PARAMETR – имя или номер параметра транзакта.
VALUE – значение параметра.
ПРИЛОЖЕНИЕ 3
Условные обозначения
на блок-диаграммах GPSS
Название блока | Обозначение блока | Назначение блока | ||||
ADVANCE (Задержать) | Задерживает транзакт на время A±B, если B = const, или A´B, если B – функция | |||||
ASSEMBLE (Соединить) | Собирает A транзактов одного ансамбля, пропускает в следующий блок первый транзакт, остальные уничтожает | |||||
ASSIGN (Назначить) | Присваивает параметру A входящего транзакта значение B, модифицированное значением C | |||||
BUFFER (Возобновить просмотр) | Прерывает обработку транзакта и возвращает симулятор к началу списка текущих событий | |||||
DEPART (Покинуть очередь) | Обеспечивает освобождение в очереди A B единиц | |||||
ENTER (Войти) | Обеспечивает вхождение транзакта в многоканальное устройство A с занятием B единиц емкости этого устройства | |||||
(X) GATE LS LR (Впустить) | Проверяет условие нахождения логического ключа A в состоянии X | |||||
Продолжение прил. 3 | ||||||
(X) GATE I NI U NU (Впустить) | Проверяет условие нахождения устройства A в состоянии X | |||||
(X) GATE SE SF SNE SNF (Впустить) | Проверяет условие нахождения многоканального устройства A в состоянии X | |||||
GATHER (Собрать) | Собирает A транзактов одного ансамбля и пропускает их одновременно в следующий блок | |||||
GENERATE (Генерировать) | Генерирует транзакты через A единиц времени, модифицированных B с задержкой C, D транзактов, с приоритетом E | |||||
HELP (Помощь) | Объединяет модули GPSS с модулями на языках Ассемблера, Фортрана, ПЛ/1, имеющих имя A | |||||
LEAVE (Выйти) | В многоканальном устройстве A освобождает B единиц его емкости | |||||
LINK (Ввести в цепь) | Удаляет транзакт из списка текущих событий и вводит в цепь пользователя A | |||||
Продолжение прил. 3 | ||||||
(X) LOGIC I R S (Установить логический переключатель) | Устанавливает логический ключ A в состояние X | |||||
LOOP (Организовать цикл) | Осуществляет повторение A раз группы блоков от адреса B до данного блока | |||||
MARK (Отметить) | Осуществляет отметку времени в параметре A | |||||
MATCH (Синхронизи- ровать) | Синхронизирует движение транзактов по блок-диаграмме совместно с блоком MATCH с меткой A | |||||
PREEMPT (Захватить) | Выполняет приоритетную обработку транзакта в устройстве A | |||||
PRINT (Печатать) | Осуществляет вывод статистики по элементу C в пределах от A до B в формате D | |||||
PRIORITY (Назначить приоритет) | Присваивает входящему транзакту приоритет A | |||||
Продолжение прил. 3 | ||||||
QUEUE (Встать в очередь) | Обеспечивает занятие B единиц в очереди с именем A | |||||
RELEASE (Освободить) | Освобождает устройство с номером A | |||||
RETURN (Вернуть) | Снимает прерывание с устройства A | |||||
SAVEVALUE (Сохранить значение) | Сохраняет заданное значение B в ячейке A | |||||
SEIZE (Занять) | Занимает устройство с именем A | |||||
SPLIT (Расщепить) | С приходящего транзакта генерирует A копий и направляет их по адресу B, основной транзакт переходит в следующий блок | |||||
TABULATE (Табулировать) | Табулирует значения входящих транзактов в таблице A | |||||
TERMINATE (Завершить) | Удаляет транзакт из модели, уменьшая на величину A значение содержимого счетчика числа завершений | |||||
Окончание прил. 3 | ||
(X) TEST E NE GE LE G L (Проверить) | Проверяет соотношение X между A и B и направляет входящий транзакт в следующий блок при выполнении или по адресу C при невыполнении соотношения | |
TRANSFER (Передать) | Изменяет направление движения транзактов согласно режиму A | |
UNLINK (Вывести из цепи) | Выводит транзакт из цепи пользователя и помещает его в список текущих событий |
ЕлизароваЮлия Михайловна
Тихонова Наталья Алексеевна
Создание имитационных моделей
в системе GPSS World
Печатается в авторской редакции
Оригинал-макет подготовлен
в Омском государственном техническом университете
на кафедре «Дизайн и технологии медиаиндустрии»
Подписано в печать
Формат 60х84/16. Бумага офсетная. Гарнитура «Таймс».
Усл.п.л. 11. Уч.-изд.л. 12. Тираж 300 экз. Тип.зак.
Заказное
Издательство ОмГТУ
Типография: 644050, Омск-50, пр. Мира, 11, Омский государственный технический университет, кафедра «Дизайн и технологии медиаиндустрии»