Федеральное государственное образовательное учреждение высшего профессионального образования Ставропольский государственный аграрный университет Экономический факультет Кафедра прикладной информатики Лабораторная работа № 3 по дисциплине «Имитационное моделирование экономических процессов» ТЕМА «Изучение блоков копирования, уничтожения, безусловной и условной адресации в GPSS WORLD: блоки SPLIT, ASSEMBLE, TRANSFER» г. Ставрополь 2015 г. Тема: Изучение блоков копирования, уничтожения, безусловной и условной адресации в GPSS WORLD: блоки SPLIT, ASSEMBLE, TRANSFER. Цель занятия: изучить блоки SPLIT, ASSEMBLE, TRANSFER, оператор CLEAR. Приобрести дальнейшие навыки моделирования систем с равномерным законом обслуживания с условной и безусловной адресацией. 2 I. Практическая часть Записать и запустить на выполнение программу для решения примера 1. Пример 1. Рассмотрим пример, когда в систему массового обслуживания поступает и обрабатывается фиксированное число требований. Примем, что требования поступают в систему по равномерному закону из интервала времени, равного от 3 до 7 мин. Обработка требований осуществляется также по равномерному закону в интервале времени от 5 до 9 мин. Смоделировать работу системы при поступлении и обработке 100 требований. Решение примера 1 приводится как программа 1. GENERATE 5,2,,100; Генерация 100 транзактов SEIZE 1 ADVANCE 7,2 RELEASE 1 TERMINATE 1; Уничтожение транзактов (вывод из системы) START 100; Задание числа счетчика завершений Программа 1. Решение поставленной задачи с фиксированным числом входящих и обрабатываемых требований здесь достигается с помощью дополнительного поля блока GENERATE. В данном случае он имеет следующий формат записи: GENERATE <A>,<B>,<>,<D> В блоке GENERATE используются поля <A>,<B>,<С>,<D>, среди которых поля <С>,<D> новые. Поле <С> назначает временную задержку начала моделирования. Если оно пусто, то это означает, что задержка нулевая (как в нашей программе). В поле <D> указывается число генерируемых транзактов. В данном случае это число равно 100 и совпадает с числом счетчика завершений, указанным в операторе START. Время работы системы зависит только от времени генерации требований (транзактов) и от времени их обработки. Моделирование системы будет происходить до тех пор, пока не сгенерируются и не выведутся 100 транзактов. Изменить количество обрабатываемых транзактов с фиксацией поступления и вывода в соответствии с заданным рядом чисел: 150, 200, 250, 300, 333, 678. В файле стандартного отчета (нажатием клавиши F7) приводятся следующие статистики (результаты моделирования) (см. приложение 1): Файл стандартного отчета программы 1. GPSS World Simulation Report - Untitled Model 1.1.1 Friday, January 07.08. 2004 13:04:58 START TIME END TIME BLOCKS FACILITIES STORAGES 0.000 715.916 5 1 0 LABEL 1 2 3 4 5 FACILITY LAY 1 LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY GENERATE 100 0 0 SEIZE 100 0 0 ADVANCE 100 0 0 RELEASE 100 0 0 TERMINATE 100 0 0 ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DE100 0.991 7.095 1 0 3 0 0 0 0 Сначала идет информационная строка системы GPSS World с указанием номера версии (V 2), серийного номера, даты, времени и страницы. Затем идет строка стандартного сообщения о начале моделирования (START_TIME), его окончании (END_TIME), количества используемых в программе блоков (BLOCKS), количества установленных устройств (FACILITIES), количества многоканальных устройств, для которых определяется заданная емкость накопителя (STORAGES). Далее приводятся назначенные номера блоков, которые определяются системой (под обозначением LOC), названия блоков (BLOCK_TIPE), количество транзактов. проходящих через соответствующий блок программы (ENTRY_COUNT), текущее количество транзактов, задержанных в блоке на момент окончания моделирования (CURRENT_COUNT), количество транзактов, ожидающих специальных условий для прохождения через данный блок (RETRY). Как видно, для данной программы количество транзактов, проходящих через блоки, равно 100. Все 100 транзактов, которые были сгенерированы блоком GENERATE, прошли через все блоки программы. Работа устройства (FACILITY) под номером 1 оценивается следующими стандартными атрибутами: количество транзактов, прошедших через устройство, указывается в поле ENTRIES (в нашем случае это число 100), коэффициент использования в относительных единицах указывается в поле UTIL. (в нашем случае число 0.991, которое показывает ту часть периода моделирования, в течение которого устройство было занято), среднее время обработки или задержки одного транзакта в устройстве указывается в поле AVE._TIME (в нашем случае равно 7,095, которое также можно определять как среднее время занятости устройства), поле AVAILABLE определяет состояние готовности устройства в конце периода моделирования (оно равно 1, если устройство готово и равно 0 — если не готово), поле OWNER (прямой перевод — владелец) определяет номер последнего транзакта, занимавшего устройство (если устройство не занималось, то устанавливается 0), поле PEND (от английского PENDENT — ожидающий решения) определяет количество транзактов, ожидающих устройство, находящееся в "режиме прерывания", поле INTER определяет количество транзактов, прерывающих устройство в данный момент, поле RETRY определяет количество транзактов, ожидающих специальных условий, зависящих от состояния объекта типа "устройство", поле DELAY (задержка) определяет количество транзактов, ожидающих занятия или освобождения устройства. В рассматриваемом примере последние пять полей равны нулю, так как система работает без каких-либо специальных условий и прерываний. В системе GPSS World могут быть объекты типа "группа сообщений". Для сбора статистики таких объектов в файле стандартного отчета присутствуют следующие поля: поле XACT_GROUP определяет имя или номер группы сообщений, поле GROUP_SIZE определяет число транзактов, которое насчитывается в группе в конце моделирования, поле RETRY для группы сообщений определяет число транзактов, ожидающих наступления специальных условий, связанных с состоянием данной группы. В рассматриваемом примере какая-либо группа сообщений отсутствует и поэтому все поля нулевые. Записать и запустить на выполнение программу для решения примера 2. Изучение блоков SPLIT, ASSEMBLE, TRANSFER. Блок SPLIT создает заданное количество копий от входящего в него транзакта. При этом входящий транзакт называют часто транзактом родителем, а копию — транзактом потомком. Блок ASSEMBLE объединяет определенное количество транзактов, после чего из него выходит один транзакт. а все остальные уничтожаются. В то же время этот блок выполняет скорее собирательную функцию, которая, бывает, необходима при моделировании процесса сбора деталей, сообщений, отдельных частей информации для полного представления объекта моделирования. 4 Блок TRANSFER относится к блокам, которые изменяют маршруты транзактов. Он является основным средством моделирующего алгоритма, позволяющим направить сообщение к любому блоку модели. Блок TRANSFER имеет несколько режимов работы. Сначала рассмотрим режим безусловного перехода. Пример 2. В систему поступают пакеты требований по равномерному закону в интервале 52 мин. Обработка на первую сортировку поступивших требований производится также по равномерному закону в интервале 62 мин. Далее рассортированные требования проходят параллельную обработку с еще одним этапом сортировки. После обработки происходит сборка требований в один пакет, и выводятся из системы. Смоделировать работу системы по обработке 100 пакетов. Решение примера 2 приводится как программа 2. GENERATE 5,3,,100 SPLIT 1,CHAN1 SEIZE 1 ADVANCE 6,2 RELEASE 1 TRANSFER ,OUT3 CHAN1 SPLIT 1,CHAN2 SEIZE 2 ADVANCE 6,2 RELEASE 2 TRANSFER ,OUT3 CHAN2 SEIZE 3 ADVANCE 6,2 RELEASE 3 OUT3 ASSEMBLE 3 TERMINATE 1 START 100 Программа 2. В приведенной программе блок TRANSFER используется в режиме безусловного перехода по метке к заданному блоку ASSEMBLE, который производит сборку трех компонент пакета требований и выводит один пакет. Таким образом осуществляется обработка и формирование 100 пакетов. Первый блок программы SPLIT создает одну копию и отправляет по метке chan1 на другой блок SPLIT, который также создает одну копию и отправляет на сборку в блок ASSEMBLE. Такое копирование транзактов моделирует сортировку информации каждого пакета. Входящий пакет рассортировывается на три части, которые проходят обработку в 3-х устройствах с одной и той же временной задержкой и потом вновь из них формируется один пакет. Формально в блоке ASSEMBLE собираются 300 частей, из которых собирается 100 пакетов. Рассматриваемые блоки в программе имеют следующие форматы записи: — блоки SPLIT: SPLIT 1, CHAN1 CHAN1 SPLIT 1,CHAN2 — блоки TRANSFER: TRANSFER ,OUT3 TRANSFER ,OUT3 — блок ASSEMBLE: OUT3 ASSEMBLE 3 5 Блок SPLIT копирует один транзакт, отправляет его по метке CHAN1 на второй блок SPLIT. При этом через первый блок SPLIT проходит транзакт-родитель на следующий по номеру блок (SEIZE 1). Второй блок SPLIT также копирует один транзакт, отправляет его по метке на 3-е устройство (120 chan2 seize 3), и пропускает транзакт на второе устройство. В блоке ASSEMBLE собираются транзакты после блоков TRANSFER (60 transfer ,out3 и 110 transfer ,out3) и блока RELEASE (140 release 3). За полный цикл моделирования в блоке ASSEMBLE собираются 300 транзактов и выходят из него 100 транзактов. Формально блок ASSEMBLE уничтожает 200 транзактов. Блоки TRANSFER используются в режиме безусловного перехода: поле <A> пусто, в поле <B> задается имя блока, к которому отправляются транзакты. Задание к примеру 2: изменить в программе количество копий, создаваемых блоком SPLIT, в соответствии со следующим рядом чисел: 2, 3, 4, 5. Записать и запустить на выполнение программу для решения примера 3. Изучение блока TRANSFER в режиме статистического выбора. Повторный прогон программ с помощью оператора CLEAR. Пример 3. В систему поступают требования по равномерному закону через 52 мин. Обработка требований осуществляется двумя приборами. Поступление требований на тот или иной прибор происходит с вероятностью 0.3 для одного прибора и 0.7 для другого прибора. Обслуживание требований каждым прибором происходит по равномерному закону со временем 72 мин. Произвести обработку 100 требований при одном и двух прогонах программы. Решение примера 3 приводится как программа 3. GENERATE 5,2,,100 TRANSFER .7,CHAN1,CHAN2 CHAN1 SEIZE 1 ADVANCE 7,2 RELEASE 1 TRANSFER ,EXIT CHAN2 SEIZE 2 ADVANCE 7,2 RELEASE 2 EXIT TERMINATE 1 START 100 CLEAR START 100 Программа 3. Формат записи блока TRANSFER в режиме статистического выбора для данной программы следующий: TRANSFER .7,CHAN1,CHAN2 В поле <A> записано число 0.7. Это означает, что из общего числа транзактов, входящих в блок TRANSFER, в среднем 0.7 будут пытаться войти в блок chan2. Остальные 0.3 от 100 будут пытаться войти в блок chan1. Числа 0.3 и 0.7 интерпретируются как вероятности. Передача транзактов в блоки происходит по меткам, которые записываются в поля <B> и <C>, соответственно. Блок TRANSFER осуществляет безусловную передачу транзактов в блок TERMINATE. Оператор CLEAR записывается в формате без параметров, т.е. без каких-либо полей с данными. Применение оператора CLEAR в имитационном моделировании позволяет проводить параллельные машинные эксперименты с моделями систем. Проведение параллельных 6 экспериментов становится обязательным, если в системе присутствуют стохастические (вероятностные) процессы, для которых, как правило, требуется вычисление или определение средних операционных характеристик. После выполнения оператора CLEAR следует предусмотреть еще оператор задания счетчика завершений START (START 100). В приводимой программе первый прогон происходит при закомментированных операторах CLEAR и START 100. Для выполнения двух прогонах программы используются два оператора START 100 и один оператор CLEAR между ними. Задание к примеру 3: задать равновероятное распределение транзактов по устройствам, а также: 0.4 на 1-е устройство, 0.6 на 2-е устройство, 0.8 на 1-е устройство, 0.2 на 2-е устройство. При этом в каждом случае произвести один прогон программы, два прогона, три прогона. Подсчитать средние статистические показатели работы устройств. Объяснить результаты моделирования по файлу стандартного отчета. Записать и запустить на выполнение программу для решения примера 4. Изучение работы блока TRANSFER в режиме BOTH. Пример 4. Пусть в условиях примера 3 сообщения могут обрабатываться на одном из двух приборов; на первом — за 53 мин., на втором — 72 мин. Причем предпочтительнее обработка на первом приборе. Решение примера приводится как программа 4. GENERATE 5,2,,100 TRANSFER BOTH,CHAN1,CHAN2 CHAN1 SEIZE 1 ADVANCE 5,3 RELEASE 1 TRANSFER ,EXIT CHAN2 SEIZE 2 ADVANCE 7,2 RELEASE 2 EXIT TERMINATE 1 START 100 Программа 4. Формат записи блока TRANSFER в режиме BOTH для программы 4: TRANSFER BOTH,CHAN1,CHAN2 В поле <A> блока TRANSFER стоит зарезервированное слово BOTH. В этом случае каждый входящий в блок TRANSFER транзакт пытается перейти к блоку, указанному в поле <B> (переход к устройству с меткой chan1). Если это сделать не удается, транзакт пытается перейти к блоку, указанному в поле <C> (переход к устройству с меткой chan2). Если транзакт не может перейти ни к одному из блоков, он остается в блоке TRANSFER и будет повторять в том порядке попытки перехода при каждом просмотре интерпретатором GPSS списка текущих событий, до тех пор, пока не сможет выйти из блока TRANSFER. Режим работы BOTH блока TRANSFER определяет предпочтительность выбора перехода сообщения к тому или иному объекту моделируемой системы. Задание к примеру 4. В программе 4 произвести следующие изменения. Во-первых, отменить поле <D> в блоке GENERATE. Во-вторых, после блока GENERATE применит блок копирования транзактов для создания одной копии и передачи на обработку в третье и четвертое устройства с предпочтением обработки в третьем устройстве. Параметры третьего и четвертого устройств установить, как и для первого и второго устройств. Вывод обработанных транзактов после третьего и четвертого устройств сделать независимым от числа счетчика завершений (независимо от START 100). Объяснить результаты моделирования по файлу стандартного отчета. 7 Записать и запустить на выполнение программу для решения примера 5. Изучение работы блока TRANSFER в режиме ALL. Пример 5. В систему поступают требования по равномерному закону со временем 52 мин. Обработка требований может происходить одним из четырех приборов, для которых времена обслуживания составляют 172 мин., 122 мин., 92 мин., 32 мин., соответственно. Смоделировать работу системы по обработке 100 требований четырьмя приборами, когда вновь поступающее требование обслуживается любым свободным прибором. Решение примера 5 приводится как программа 5. GENERATE 5,2,,100 TRANSFER ALL,CHAN1,CHAN4,4 CHAN1 SEIZE 1 ADVANCE 17,2 RELEASE 1 TRANSFER ,EXIT CHAN2 SEIZE 2 ADVANCE 12,2 RELEASE 2 TRANSFER ,EXIT CHAN3 SEIZE 3 ADVANCE 9,2 RELEASE 3 TRANSFER ,EXIT CHAN4 SEIZE 4 ADVANCE 3,2 RELEASE 4 EXIT TERMINATE 1 START 100 Программа 5. Блок TRANSFER в режиме ALL автоматически анализирует систему и выбирает свободное место по обслуживанию входящих требований. В этом режиме сообщение (транзакт) занимает первый блок из совокупности, заданной полями <B>, <C>, <D>. В приводимой программе 5 блок TRANSFER в режиме ALL имеет следующий формат записи: TRANSFER ALL, CHAN1,CHAN4,4 В поле <A> блока TRANSFER задается режим зарезервированным словом ALL. В поле <В> задается метка первого анализируемого устройства, в поле <С> — метка последнего устройства. В поле <D> задается число, кратное количеству блоков между каждым из анализируемых устройств. В моделирующей программе каждое устройство, начиная с первого, отделено друг от друга четырьмя блоками: seize, advance, release, transfer ,exit. Блок transfer ,exit работает в режиме безусловного перехода. В программе 5 время обработки каждого из устройств подобрано так, чтобы были задействованы все четыре устройства. Если же одно из устройств будет освобождаться быстрее остальных, то это устройство окажется наиболее загруженным. Различную загрузку приборов без изменения времени обработки можно задать с помощью блоков копирования транзактов SPLIT. Такой вариант работы системы представлен как программа 6. GENERATE 5,2,,100 SPLIT 1,CHAN2 SPLIT 1,CHAN3 TRANSFER ALL,CHAN1,CHAN4,4 8 CHAN1 SEIZE 1 ADVANCE 17,2 RELEASE 1 TRANSFER ,EXIT CHAN2 SEIZE 2 ADVANCE 12,2 RELEASE 2 TRANSFER ,EXIT CHAN3 SEIZE 3 ADVANCE 9,2 RELEASE 3 TRANSFER ,EXIT CHAN4 SEIZE 4 ADVANCE 3,2 RELEASE 4 EXIT TERMINATE 1 START 10 Программа 6. Задание к примеру 5. Для программы 5 изменить работоспособность устройств в соответствии с предлагаемой группой чисел: 32, 92, 122, 172; 71, 71, 71, 71; 17, 12, 9, 3. Объяснить результаты моделирования по файлу стандартного отчета. Произвести также двойной прогон программ. Для программы 6 изменить работоспособность устройств как: 71, 71, 71, 71; 71, 91, 121, 151; 151, 121, 91, 71. Объяснить результаты моделирования по файлу стандартного отчета. Произвести также двойной прогон программ. Записать и запустить на выполнение программу для решения примера 6. Изучение блока TRANSFER в режиме PICK. Пример 6. Смоделировать обслуживание 100 заявок, которые поступают в систему каждые 52 мин. Обработка требований может осуществляться четырьмя приборами с равной вероятностью и соответственно со временами 122 мин., 92 мин., 72 мин., 132 мин. Решение примера 6 представлено как программа 7. GENERATE 5,2,,100 TRANSFER PICK,3,6 TRANSFER ,CHAN1 TRANSFER ,CHAN2 TRANSFER ,CHAN3 TRANSFER ,CHAN4 ; Сегмент моделирования 1 прибора обслуживания CHAN1 SEIZE 1; ADVANCE 12,2 RELEASE 1 TRANSFER ,EXIT ; Сегмент моделирования 2 прибора обслуживания CHAN2 SEIZE 2; ADVANCE 9,2 RELEASE 2 TRANSFER ,EXIT ; Сегмент моделирования 3 прибора обслуживания CHAN3 SEIZE 3; 9 ADVANCE 7,2 RELEASE 3 TRANSFER ,EXIT ; Сегмент моделирования 4 прибора обслуживания CHAN4 SEIZE 4; ADVANCE 13,2 RELEASE 4 ; Сегмент задания времени моделирования EXIT TERMINATE 1 START 100 Программа 7. Формат записи блока TRANSFER в режиме PICK в программе имеет следующий вид: TRANSFER PICK,3,6 В поле <A> стоит зарезервированное слово PICK. В этом режиме блок TRANSFER случайным образом с равной вероятностью отправляет транзакт в один из блоков, которые составляют ряд от начального блока, указанного в поле <B>, до блока, указанного в поле <C>. Если блок поля <B> обозначить как N, а блок поля <C> как М, то вероятность отправления транзакта на один из блоков с номерами n, n+1, n+2, . . . ,m определяется как 1/(m-n)+1. Для программы 7 эта вероятность равна 1 0.25. Некоторая ограниченность (6 3) 1 применения блока TRANSFER в режиме PICK может быть обусловлена необходимостью расположения принимающих блоков в строгой последовательности друг за другом. Но, как видно из программы 7, с помощью блока TRANSFER в режиме безусловного перехода можно производить распределение транзактов в любую точку модели (к любому блоку). Задание к примеру 6. Для программы 7 последовательно для каждого из трех устройств запрограммировать вывод транзактов без учета счетчика завершений (START 100). То же самое проделать при отсутствии поля <D> блока GENERATE. Объяснить результаты моделирования по файлу стандартного отчета. Контрольные вопросы 1. отчета? 2. 3. 4. 5. 6. Какие статистики (результаты моделирования) приводятся в файле стандартного Принцип работы блоков SPLIT, ASSEMBLE, TRANSFER. Как работает блок TRANSFER в режиме статистического выбора? Как работает блок TRANSFER в режиме BOTH? Как работает блок TRANSFER в режиме ALL? Как работает блок TRANSFER в режиме PICK? Содержание отчета и его форма 1. 2. подавателя). 3. 4. Форма отчета письменная. Выполнить примеры 1-6 (задания к примерам выполняется по требованию преПродемонстрировать данную работу на ПК. Ответить на контрольные вопросы. 10 Литература 1. Боев В. Моделирование систем. Инструментальные средства GPSS World. Санкт-Петербург:BHV-Санкт-Петербург, 2004 г. - 368 стр. 2. Вентцель Е.С. Исследование операций.- М.: Сов.радио, 1972. 3. Гнеденко Б.В., Коваленко И.Н. Введение в теорию массового обслуживания. М.: Высш. шк., 1987. 4. Кузин Л.Т. Основы кибернетики: В 2 т.- М.: Энергия, 1979. 5. Разработка САПР. Кн. 9. Имитационное моделирование: Практ. пособие / В.М.Черненький: Под ред. А.В. Петрова. М.: Высш. шк., 1990. 6. Советов Б.Я. Моделирование систем. Практикум: Учебное пособие для вузов/ Б.Я. Советов, С.А. Яковлев. – 2-е изд., перераб. и доп. – М.: Высш. шк., 2003. – 295 с.:ил. 7. Шрайбер Г.Дж. Моделирование на GPSS.- М.: Высш. шк., 1980. 11 Приложение 1 СТАНДАРТНАЯ ВЫХОДНАЯ СТАТИСТИКА Файл стандартной выходной статистики создается с помощью команды REPORT .Отформатированный файл статистики состоит из подразделов, содержащих стандартную статистику об объектах GPSS World использованных в модели. Начинается файл статистики с заголовка , который появляется на каждой странице файла статистики. После заголовка автоматически вставляется подзаголловок , который содержит имя неотформатированного файла статистики, номер версии GPSS World, серийный номер, дату и время моделирования. Например, GPSS World Report file REPORT.GPS. (V 2, # 39560) 03-06-2001 14:43:19 page 1 Далее следует строка, содержащая основную информацию о результатах работы модели: START_TIME END_TIME BLOCKS FACILITIES STORAGES FREE_MEMORY Где, START_TIME-абсолютное системное время в момент начала моделирования, оно эквивалентно абсолютному системному времени; END_TIME – абсолютное время в момент завершения моделирования; BLOCKS- количество блоков, использованных в модели к моменту завершения моделирования; FACILITIES- количество устройств, использованных в модели к моменту завершения моделирования; STORAGES – количество многоканальных устройств , использованных в текущей модели к моменту завершения моделирования; FREE_MEMORY- количество байтов памяти доступной для дальнейшего использования. Затем в файле статистики следует информация об именах , которые просматривает GPSS/PC в ходе моделирования. Информация об именах имеет следующий вид: NAME VALUE TYPE Поле NAME отмечает имена, содержащиеся в программе модели. Поле VALUE определяет числовое значение, соответствующее имени. Система устанавливает начальный номер равный 10000. Поле TYPE равно 0, если значение имени устанавливает пользователь, равно 2, если значение имени устанавливает система , 3- если имя является именем блока. Далее описываются блоки текущей модели в виде: LINE LOC BLOCK_TYPE NTRY_COUNT CURRENT_COUNT RETRY Поле LINE –определяет номер строки в рабочей модели . Поле LOC – определяет имя или номер этого блока. Поле BLOCK_TYPE-определяет тип этого блока , а поле ENTRY_COUNT – определяет количество транзактов вошедших в данный блок, после последнего выполнения блоков RESET или CLEAR , или с начала работы программы. Поле CURRENT_COUNT – определяет количество транзактов , находящихся в данном блоке в конце моделирования. 12 Поле RETRY-определяет количество транзактов , ожидающих специальных условий, зависящих от состояния данного блока. Если в модели используются объекты типа «устройство», то далее в файле статистики идет информация об этих объектах: FACILITY ENTRIES UTIL. AVE._TIME AVAILABLE OWNER PEND INTER RETRY DELAY Поле FACILITY- определяет номер или имя объекта типа «устройство». Поле ENTRIES – определяет количество раз, когда устройство было занято или прервано после последнего выполнения блоков RESET или CLEAR , или с начала работы программы. Поле UTIL. – определяет часть периода моделирования, в течение которого устройство было занято. Поле AVE._TIME- определяет среднее время занятости устройства одним сообщением в течение периода моделирования после последнего выполнения блоков RESET или CLEAR. Поле AVAILABLE – определяет состояние готовности устройства в конце периода моделирования. Оно равно1 если устройство готово и 0 если не готово. Поле OWNER – определяет номер последнего сообщения, занимавшего устройство. 0устройство не занималось. Поле PEND –определяет количество сообщений, ожидающих устройство находящееся в «режиме прерывания». Поле INTER – определяет количество сообщений, прерывающих устройство в данный момент. Поле RETRY- определяет количество сообщений, ожидающих специальных условий, зависящих от состояния объекта типа «устройство». Поле DELAY- определяет количество сообщений, ожидающих занятия устройства. В случае использования в модели объекта типа «очередь», далее следует информация об этих объектах. QUEUE MAX CONT. ENTRIES ENTRIES(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY Поле QUEUE определяет имя или номер объекта типа «очередь». Поле MAX определяет максимальное содержимое очереди в течение периода моделирования, который начинается с начала работы программы или с последнего оператора RESET или CLEAR. Поле CONT. определяет текущее содержимое очереди в конце периода моделирования. Поле ENTRIES определяет общее количество входов в течение периода моделирования. Поле ENTRIES(0)общее количество входов в очередь с «нулевым» временем ожидания. Поле AVE.CONT.среднее значение содержимого очереди. AVE.TIME - среднее время, проведенное в очереди с учетом всех входов в очередь. AVE.(-0)- среднее время, проведенное в очереди без учета «нулевых» входов в очередь. RETRY- количество сообщений, ожидающих специальных условий, зависящих от состояния объекта типа «очередь». Если в модели использовались объекты типа «многоканальное устройство », то далее в файле статистики идет информация об этих объектах. STORAGE CAP. REMAIN. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY 13 Поле STORAGE определяет имя или номер объекта типа «многоканальное устройство». Поле CAP. Определяет емкость многоканального устройства, заданную оператором STORAGE. Поле REMAIN. Определяет число единиц свободной емкости многоканального устройства в конце периода моделирования . MIN.-минимальное количество используемой емкости многоканального устройства за период моделирования. MAX.- максимальное количество используемой емкости многоканального устройства. ENTRIES-количество входов в многоканальное устройство за период моделирования. AVL. определяет состояние готовности многоканального устройства в конце периода моделирования.1-многоканальное устройство готово, 0- не готово. AVE.C.-определяет среднее значение занятой емкости за период моделирования. UTIL.- определяет часть периода моделирования в течение которого многоканальное устройство использовалось. RETRY- количество сообщений, ожидающих специальных условий , зависящих от состояния многоканального устройства. DELAY-определяет количество сообщений , ожидающих возможности входа в блок ENTER. Далее следует информация о сохраняемых величинах (ячейках), если они использовались в модели. SAVEVALUE VALUE RETRY Поле SAVEVALUE определяет имя или номер объекта типа «сохраняемая величина». Поле VALUE определяет значение сохраняемой величины в конце моделирования. Поле RETRY определяет количество сообщений, ожидающих наступления специальных условий , зависящих от состояния сохраняемой величины. 14