GPSS (англ. General Purpose Simulation System — общецелевая система моделирования) — язык программирования, используемый для имитационного моделирования различных систем, в основном систем массового обслуживания.
С помощью GPSS можно эффективно моделировать функционирование торговых заведений, портов, уличное движение, проведение военных действий, работу редакций, учреждений и сети Интернет, различных систем массового обслуживания и многое другое. GPSS World – мощная универсальная среда моделирования как дискретных, так и непрерывных процессов, предназначенная для профессионального моделирования самых разнообразных процессов и систем.
Задание 1 (постановка задачи):
На станок поступают детали для обработки. Интервалы между моментами поступления деталей составляют от 5 до 10 минут. Обработка детали на станке занимает от 6 до 8 минут. Требуется разработать GPSSмодель для имитации обработки 100 деталей.
Составим GPSSмодель.
*имитирует поступление деталей
GPSS. Работа основного потока
*имитирует поступление детали в очередь
*имитирует поступление детали на станок
*имитирует выход детали из накопителя
*имитирует задержку детали при обработке на станке
*имитирует выход детали из станка
*имитирует окончание моделирования
Скомпилируем модель.
В GPSS World выбираем Command> Create Simulation (Рисунок 1.1)
(Рисунок 1.1)
Установим начальное значение счётчика завершений и запустим модель. Для запуска модели в GPSS World выбираем Command > Start, указываем 100 и нажимаем OK(Рисунок 1.2)
(Рисунок 1.2)
По окончании моделирования получаем файл-отчёт с результатами моделирования (Рисунок 1.3)
(Рисунок 1.3)
Результат моделирования.
100 – количество обработанных деталей.
0,91 (91%) – Коэффициент загрузки станка.
0,912 – Среднее время ожидания детали в накопителе перед станком.
1 – Максимальная длина очереди. В накопителе никогда не оказывалось более одной детали.
0,119 – Средняя длина очереди в накопителе.
46 – Количество деталей, которым не понадобилось ожидание в накопителе. (В момент их поступления станок оказывался свободным)
64 – Количество деталей, которым понадобилось ожидание в накопителе.
1,689 – среднее время ожидания детали в накопителе.
6,997 – среднее время обработки детали на станке.
7,909 – (6,997 + 0,912 = 7,909) время от поступления детали в накопитель до окончания её обработки на станке)
Недостатком моделируемой системы является перегрузка станка (91%), норма 75-85%.
Моделирование многоканальных систем массового обслуживания.
Пусть в условиях, указанных в Задании 1 , используются два одинаковых станка. Перед станками имеется общий накопитель. Деталь, поступившая на обработку, направляется в станок, оказавшийся в этот момент свободным. Если оба станка заняты, то деталь направляется в накопитель. Как только какой-либо из станков освобождается, деталь из накопителя направляется на это станок.
РК6. Имитационное моделирование. Основы работы в среде GPSS World
STORAGE – объявление многоканального устройства.
ENTER – вход транзакта в многоканальное устройство.
LEAVE – выход транзакта из многоканального устройства.
Составим GPSS модель.
STANOK STORAGE 2
Скомпилируем модель.
В GPSS World выбираем Command > Create Simulation (Рисунок 2.1)
(Рисунок 2.1)
Установим начальное значение счётчика завершений и запустим модель.
Для запуска модели в GPSS Worldвыбираем Command > Start, указываем 100 и нажимаем OK (Рисунок 2.2)
(Рисунок 2.2)
По окончании моделирования получаем файл-отчёт с результатами моделирования (Рисунок 2.3)
(Рисунок 2.3)
Результат моделирования.
0,910 – Среднее количество занятых каналов.
0.455 (45,5%) — Коэффициент загрузки станков.
В моделируемой системе, группа из двух станков явно недогружена.
Пусть в условиях, указанных в Задании 2 , требуется выполнить моделирование работы станков за 8 часов.
GENERATE – имитирует поступление транзактов в единицу времени (мин).
Написание программного кода для реализации заданной модели в программе GPSS World.
STANOK STORAGE 2 ; генерация 2-х станков
GENERATE 7.5,2.5 ; генерация детали 1-ого типа
ASSIGN 1,1 ; присваивание детали 1-ого типа значения 1
TRANSFER ,OBR ; переход транзакта на метку OBR
GENERATE 10,2 ; генерация детали 2-ого типа
ASSIGN 1,2 ; присваивание детали 2-ого типа значения 2
OBR QUEUE OCH ; имитация постановки детали в очередь
ENTER STANOK ; имитация подачи детали на станок
DEPART OCH ; выход детали из очереди
TEST E P1,1,TIP2 ; проверка присвоенного значения детали. Если *значение равно 1, то транзакт переходит к следующей операции. Если не *равно, то транзакт переходит на метку TIP2
ADVANCE 7,1 ; имитация обработки детали 1-ого типа
TRANSFER ,KONOBR ; переход транзакта на метку KONOBR
TIP2 ADVANCE 6,0 ; имитация обработки детали 2-ого типа
KONOBR LEAVE STANOK ; выход детали со станка.
TERMINATE ; имитирует окончание моделирование обработки детали
GENERATE 480 ; задается время работы станков. 8 часовой рабочий день
TERMINATE 1 ; имитирует окончание моделирование детали и её удаление из модели
Моделирование систем с заявками разных типов.
На двух одинаковых станках обрабатываются детали двух типов (деталь любого типа может обрабатываться на любом из станков). Детали типа один поступают с интервалом от 5 до 10 минут, типа два с интервалом от 8 до 12 минут. Обработка детали типа один занимает от 6 до 8 минут, детали типа два ровно 6 минут. Требуется разработать GPSSмодель для анализа работы станков в течении 8 часов.
Один из способов моделирования систем массового обслуживания с заявками разных типов – использование параметров (оператор ASSIGN) и управление движением транзактов в модели с помощью операторов TESTи TRANSFER.
Параметр транзакта представляет собой числовую величину, отражающую некоторую характеристику объекта, имитируемого транзактом. Изменение значения параметра выполняется оператором ASSIGN A,B
где A – номер параметра (1,2,3,4,5 и тд) и знак + или – (необязательно)
B – числовая величина, на которую изменяется параметр.
Простейший оператор для управления перемещением транзактов в модели оператор TRANSFER:
Для проверки условий используется оператор TEST.
TEST операция A,B,C
где операция — обозначение операции сравнения:
LE – меньше или равно
GE – больше или равно
A,B – некоторые величины, для которых выполняется операция сравнения (величина A сравнивается с величиной B)
C – метка оператора, на который передается транзакт, если результат операции сравнения величин A и B «ложь». Если результат сравнения «истина», то транзакт передаётся на оператор, следующий за оператором TEST.
Если операнд C не указан, то в случае невыполнения условия, заданного операцией сравнения, транзакт задерживается в операторе TESTдо тех пор, пока условие не будет выполняться.
Составим GPSSмодель.
KONOBR LEAVE STANOK
Скомпилируем модель.
В GPSS World выбираем Command > Create Simulation (Рисунок 3.1)
(Рисунок 3.1)
Установим начальное значение счётчика завершений и запустим модель.
Для запуска модели в GPSS Worldвыбираем Command > Start, указываем 1 и нажимаем OK (Рисунок 3.2)
(Рисунок 3.2)
По окончании моделирования получаем файл-отчёт с результатами моделирования (Рисунок 3.3)
(Рисунок 3.3)
Моделирование систем с заданным соотношением заявок двух типов.
На двух одинаковых станках обрабатываются детали двух типов (деталь любого типа может обрабатываться на любом из станков). Детали типа один поступают с интервалом от 5 до 10 минут, типа два с интервалом от 8 до 12 минут. Обработка детали на станке состоит из двух операций. Первая операция для деталей типа один занимает от 6 до 8 минут, для деталей типа два – ровно 6 минут.
Вторая операция занимает от 2 до 4 минут, независимо от типа детали. При первой операции в 5% случаев допускается брак, в этих случаях вторая операция не требуется. Все детали, кроме бракованных, поступают на упаковочную машину. Упаковка детали любого типа занимает ровно 36 минуты. Требуется разработать GPSSмодель для анализа работы участка в течении восьми часов.
Во многих практических задачах требуется имитировать системы, в которых некоторое событие происходит в X % случаев и не происходит в 100 X % случаев. Для имитации таких явлений используется оператор TRANSFER
где A – трёхзначное число (NNN)
B – метка оператора, на который передаются 100-NN,N процентов транзактов.
C – метка оператора, на который передаются NN,N процентов транзактов.
Например, оператор TRANSFER 300,MET1,MET5 означает что в 70% случаев транзакт должен передаваться на оператор с меткой MET1, а в 30% случаев на оператор MET5.
Если операнд B не задан, то в 100-NN,N% транзактов передаются на оператор, следующий за оператором TRANSFER, а NN,N% на оператор с метко й C.
Составим GPSS модель.
Скомпилируем модель.
Установим начальное значение счётчика завершений и запустим модель.
Отчет работы модели
Оператор TRANSFER 050,,BRAK имитирует разделение деталей на годные и бракованные. Транзакты, имитирующие годные детали (95%), поступают на следующий оператор ADVANCE 3,1 то есть на имитацию второй операции.
В операторе ASSIGN2,0 второму параметру этих транзактов присваивается значение 0. Затем с помощью оператора TRANSFER, KONOBR они передаются на оператор LEAVE STANOK, то есть имитируется окончание обработки детали. Пять процентов из оператора TRANSFER050,,BRAKпередаются на метку BRAK. Эти транзакты имитируют бракованные детали, поэтому они не передаются на оператор ADVANCE 3,1 имитирующий вторую операцию. В операторе ASSIGN 2,1 второму параметру этих транзактов присваивается значение 1. Таким образом, у всех транзактов, имитирующих годные детали, второй параметр равен нулю, а у транзактов имитирующих бракованные детали – единице.
В операторе TEST E P2,0,KONпроверяется, чему равен второй параметр транзакта. Если P2=0, то он пропускается на следующий оператор. Группа операторов QUEUE OCH2, RELEASE UPAK имитирует работу упаковочной машины, то есть упаковку детали.
Простейшие вычисления в GPSS модели.
Пусть в модели, разработанной для задачи 5, требуется предусмотреть подсчёт количества выпущенных годных деталей каждого типа, а также общую выручку от выпуска всех деталей. Годные детали типа 1 продаются по 8 денежных единиц, типа 2 – по 10 денежных единиц, бракованные – по 2 денежные единицы.
Для сохранения применяется оператор SAVEVALUE A,B
где A – имя сохраняемой величины и знак + или минус (необязательно)
B – величина, на которую изменяется параметр.
Если после операнда A указан знак «плюс» или «минус», то число, указанное в операнде B, прибавляется к указанной сохраняемой величине (или вычитается из неё).
Составим GPSS модель.
Источник: dzen.ru
Краткие сведения о системе GPSS
GPSS (General Purpose Simulating System — общецелевая система моделирования) является одним из наиболее эффективных и распространенных языков моделирования сложных дискретных систем.
GPSS достаточно удобен при программировании, поскольку интерпретатор GPSS многие функции выполняет автоматически. Например, GPSS без специального на то указания пользователя собирает статистические данные, описывающие поведение модели, автоматически печатает итоговую статистику по завершении моделирования. Пользователю нет необходимости включать в модель вычислительные операторы для сбора и накопления этих данных или задавать их формат.
В языке в неявном виде включены и многие другие полезные элементы. Например, GPSS обслуживает таймер модельного времени, планирует события, вызывает их своевременное появление и управляет очередностью поступления, предоставляет средства описания относительных приоритетов для использования их при одновременном возникновении событий.
Язык GPSS может быть с наибольшим успехом использован для моделирования систем, формализуемых в виде систем массового обслуживания.
В качестве объектов языка используются аналоги таких стандартных компонентов СМО, как заявки, обслуживающие приборы, очереди и т.п. Достаточный набор подобных компонентов позволяет конструировать сложные имитационные модели, сохраняя привычную терминологию СМО.
В системе GPSS основной единицей представления является процесс, а не событие. При этом имеется разветвленная система различных объектов, которые можно разделить на несколько классов:
1. Динамические — объекты, связанные с заявками или транзактами (генерация заявок, обеспечение условий реализации, размножение, уничтожение, останов, изменение их характеристик и т.д.)
2. Аппаратно-ориентированные — все объекты, которые связаны с элементами системы, которую мы проектируем (одноканальные и многоканальные устройства, очереди и т.д.)
3. Статистические объекты — сбор статистики, связанной с терминологией моделей массового обслуживания (сохраняемые величины, матрицы сохраняемых величин, таблицы).
4. Вычислительные – используются для определения различных математических выражений и зависимостей (переменные и функции).
5. Операционные объекты — все операторы для составления программы моделирования (блоки).
6. Списковые структуры (цепи): список текущих событий, которые выполняются сейчас или по каким-то причинам задерживаются, списки будущих событий, список заявок, список парных транзактов.
Каждому объекту того или иного класса соответствуют числовые атрибуты, описывающие его состояние в данный момент модельного времени. Кроме того, имеется ряд так называемых системных атрибутов, относящихся не к отдельным объектам, а к модели в целом.
Значение атрибутов всех объектов модели по окончанию моделирования выводятся в стандартный отчёт. Большая часть атрибутов (табл. 4.1) доступна программисту (стандартные числовые атрибуты (СЧА)).
Для ссылки на стандартные числовые атрибуты соответствующий операнд оператора записывается:
СЧА$имя или СЧАj,
где СЧА — конкретный СЧА, имя — имя объекта, j — номер объекта, $ — символ-разделитель.
Таблица 4.1
Описание стандартных числовых атрибутов
| Элемент | СЧА | Краткое описание |
| Блоки | N | Счетчик входов |
| W | Счётчик текущего содержимого | |
| Время | С1 | Значение относительного времени |
| AС1 | Значение абсолютного времени | |
| Генераторы случайных чисел | RN(1-8) | От 0.000000 до 0.999999 |
| Матрицы сохраняемых величин | MH(a, b), MX(a, b) | Элемент строки «а», столбца «b» (полуслово и полное слово). |
| Многоканальное устройство | R | Свободная ёмкость |
| S | Текущее содержимое | |
| SA | Среднее содержимое | |
| SC | Счётчик числа входов | |
| SR | Коэффициент использования | |
| ST | Среднее время задержки на единицу ёмкости | |
| Очереди | Q | Текущее содержимое |
| QA | Среднее содержимое | |
| QC | Счётчик числа входов (общее число) | |
| QM | Максимальное содержимое | |
| QT | Среднее время пребывания (по QC) | |
| QX | Среднее время пребывания (по QZ) | |
| QZ | Счётчик числа входов (нулевые входы) | |
| Переменные | BV | Значение булевской переменной |
| V | Значение арифметической переменной | |
| Устройство | F | Состояние устройства |
| FC | Счётчик числа занятий | |
| FR | Коэффициент использования | |
| FT | Среднее время задержки на одно занятие | |
| Сохраняемые величины | X, (XH) | Значение полнословной (полусловной) сохраняемой величины |
| Таблицы | TB | Средняя величина не взвешенных коэффициентов |
| TC | Количество не взвешенных входов | |
| TD | Дисперсия не взвешенных входов | |
| Транзакты | P | Значение параметра |
| PR | Уровень приоритета | |
| M1 | Время пребывания в модели | |
| Функции | FN | Значение функции |
Работа модели заключается в перемещении заявок (транзактов) от одного оператора (блока) к другому, в соответствии с логикой модели до тех пор, пока не произойдёт одно из следующих событий:
— транзакт входит в блок, функцией которого является удаление транзакта из модели;
— транзакт входит в блок, функцией которого является задержка транзакта на некоторое время;
— транзакт не может войти в следующий блок.
Центральной задачей является определение того, какой транзакт надо выбрать следующим для продвижения в модели, когда его предшественник прекратил продвижение. С этой целью каждый транзакт рассматривается как элемент некоторого списка. В системе GPSS используются список текущих событий (время продвижения меньше или равно модельному) и список будущих событий (время продвижения больше модельного).
Симулятор GPSS помещает транзакты в зависимости от условий модели в тот или иной список, переносит их из списка в список, просматривает списки, выбирает следующий транзакт для обработки, корректирует таймер модельного времени после обработки всех транзактов в списке текущих событий.
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Источник: studopedia.ru
1. СИСТЕМА ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ GPSS WORLD: КОНЦЕПТУАЛЬНЫЕ ОСНОВЫ И ПРИНЦИПЫ РАБОТЫ
1.1. Назначение и принципы работы системы моделирования GPSS World
Язык имитационного моделирования GPSS представляет собой набор команд и операторов для описания объекта моделирования (моделируемой системы). Под объектом моделирования будем понимать любой объект, который требуется исследовать с помощью модели. Таким объектом может быть производственное предприятие, транспортная система, торговая организация и т.д.
На основе языка имитационного моделирования GPSS разработан ряд сис- тем имитационного моделирования . Система имитационного моделирования – это программное средство, обеспечивающее все этапы работы с моделью: подготовку и редактирование текста модели, отладку модели, моделирование, получение результатов моделирования. В данном пособии рассматривается одна из таких систем – GPSS World.
Структура системы имитационного моделирования GPSS World приведена в прил.1. Основное назначение языка моделирования GPSS и разработанной на его основе системы GPSS World — имитационное моделирование дискретных дина- мических систем. Под динамической системой понимается любая система, состояние которой изменяется во времени.
Дискретная динамическая система — это любая система, состояние которой изменяется дискретно (скачкообразно) в дискретные (отстоящие друг от друга) моменты времени , когда происходят какие-либо события. Типичный пример дискретной динамической системы — любой объект, который может быть представлен в виде системы массового обслуживания (СМО).
Состояние СМО (например, количество заявок, находящихся на обслуживании или в очереди) изменяется в моменты времени, когда очередная заявка поступает на обслуживание или завершает его; эти моменты разделены интервалами времени (случайными или постоянными), т.е. являются дискретными. Изменения состояний СМО также являются дискретными: например, количество заявок в СМО может изменяться только на целые числа (1, 2 и т.д.), но не на промежуточные величины.
Язык имитационного моделирования GPSS в наибольшей степени подходит для моделирования систем, которые могут быть представлены в виде СМО. В языке GPSS имеются специальные средства для моделирования потоков заявок, одноканальных и многоканальных узлов СМО, очередей и т.д. Язык GPSS позволяет моделировать практически любые СМО: одноканальные и многоканальные, с неограниченными очередями, с отказами, с ограничениями на очередь, разомкнутые и замкнутые и т.д. Многие основные характеристики СМО (коэффициенты загрузки узлов, длины очередей и т.д.) автоматически определяются в процессе моделирования и выводятся в составе выходных данных модели. В то же время с помощью языка GPSS могут решаться задачи моделирования систем, для которых обычно не используется описание в виде СМО.
Работа языка GPSS основана на использовании метода Монте-Карло, рассмотренного в первой части данного пособия. В большинстве случаев операции метода Монте-Карло (обращения к генераторам случайных чисел, проверки условий и т.д.) выполняются в языке GPSS автоматически, т.е. они скрыты от пользователя.
Однако при необходимости пользователь сам имеет возможность реализовать необходимые операции метода Монте-Карло. 1.2. Работа с системой моделирования GPSS World.
Пример GPSS-модели Сеанс моделирования с использованием системы GPSS World включает следующие основные этапы: • вызов системы GPSS World; • подготовка текста модели или загрузка имеющейся модели (файл с расширением .GPS); • компиляция модели и создание файла модели в машинных кодах (файл с расширением .SIM); • установка начального значения счетчика завершений (величины, с помощью которой задается условие окончания моделирования) и запуск модели на выполнение; • получение файла-отчета, т.е. файла результатов моделирования (файл с расширением .GPR); • сохранение файла-отчета (если содержащиеся в нем результаты представляют интерес); • печать текста модели и файла-отчета или их копирование в окно Word для обработки и подготовки к печати (если это требуется); • закрытие окон файла-отчета (.GPR) и файла модели в машинных ко- дах (.SIM). Рассмотрим основные из этих действий более подробно.
Вызов системы моделирования GPSS World выполняется обычным образом (с помощью кнопки Пуск ). После этого, если требуется начать разработку новой модели, то следует выбрать из меню команду File — New . Если требуется загрузить уже имеющуюся модель, то следует выбрать команду File — Open . Подготовка текста модели Пусть требуется разработать новую модель. После выбора команды File — New на экран выводится окно Новый документ . В нем следует выбрать элемент Model и нажать кнопку OK . После этого на экран выводится окно для создания новой модели. Модель в системе моделирования GPSS World (далее — GPSS-модель) представляет собой последовательность команд и операторов (блоков) языка GPSS, описывающих объект моделирования. Полный перечень этих команд и операторов приведен в прил.2 и 3. Рассмотрим пример GPSS-модели для решения следующей задачи.
Пример 1.1. На станок поступают детали для обработки. Интервалы между моментами поступления деталей составляют от 5 до 10 мин. Обработка детали на станке занимает от 6 до 8 мин. Требуется разработать GPSS-модель для имитации обработки 100 деталей на станке. GPSS-модель для этой задачи имеет следующий вид.
GENERATE 7.5,2.5 QUEUE OCH SEIZE STANOK DEPART OCH ADVANCE 7,1 RELEASE STANOK TERMINATE 1 Здесь оператор GENERATE 7 . 5 , 2 . 5 имитирует поступление заявок (в данном примере — деталей) через интервалы, составляющие 7,5±2,5 единицы времени, т.е. от 5 до 10 мин. Оператор QUEUE OCH имитирует поступление заявки в очередь, имеющую имя OCH (конечно, можно использовать любое другое имя очереди).
По смыслу задачи эта очередь представляет собой накопитель перед станком, предназначенный для деталей, ожидающих обработки. Оператор SEIZE STANOK имитирует поступление заявки в устройство с именем STANOK (имя устройства также может быть любым). Оператор DEPART OCH имитирует выход детали из очереди (т.е. из накопителя перед станком).
Оператор ADVANCE 7 , 1 имитирует задержку детали на 7±1 единицу времени, т.е. на время от 6 до 8 мин (обработка на станке). Оператор RELEASE STANOK имитирует выход детали со станка.
Оператор TERMINATE 1 имитирует окончание моделирования детали (ее удаление из модели); при этом из счетчика завершений вычитается единица (т.е. величина, указанная в команде TERMINATE ). Счетчик завершений — величина, задаваемая пользователем в начале моделирования. В ходе моделирования счетчик завершений должен уменьшаться (его уменьшение должно быть предусмотрено в тексте модели).
Когда счетчик завершений становится равным нулю, моделирование завершается. Более подробно использование счетчика завершений рассматривается ниже. Примечание . В системе моделирования GPSS вместо термина «заявка», «деталь» и т.д. используется термин «транзакт».
В ходе подготовки модели необходимо время от времени выполнять ее сохранение с помощью команды меню File — Save . Для имени файла GPSSмодели по умолчанию используется расширение .GPS. Компиляция модели По окончании подготовки текста модели необходимо выполнить его компиляцию, т.е. преобразование в машинные коды. Для этого используется команда меню Command — Create Simulation . Создается файл в машинных кодах. Его имя образуется автоматически на основе имени исходного файла (т.е. файла GPSS-модели), расширение — .SIM.
Если компиляция или моделирование прерывается из-за ошибок в модели, то следует по выведенному сообщению определить допущенную ошибку, закрыть окно созданного .SIM-файла, перейти в окно модели, внести необходимые исправления и снова выполнить компиляцию модели. Установка начального значения счетчика завершений и запуск модели Для запуска модели необходимо выбрать команду меню Command — Start . На экран выводится окно Start Command , в котором указывается команда START и начальное значение счетчика завершений.
По умолчанию предлагается команда START 1 , т.е. начальное значение счетчика завершений предлагается принять равным единице. Для данного примера начальное значение счетчика завершений должно быть равно 100.
Поэтому требуется указать новое значение счетчика завершений, т.е. ввести команду START 100 . Затем можно начать процесс моделирования, нажав кнопку OK . В процессе моделирования при каждом выполнении оператора TERMINATE 1 , имитирующего окончание обработки детали, счетчик завершений уменьшается на единицу . После выхода 100 транзактов (т.е. после имитации обработки 100 деталей) счетчик завершений оказывается равным нулю. На этом моделирование завершается.
Получение файла-отчета По окончании моделирования создается файл-отчет с результатами моделирования. Его имя образуется автоматически на основе имени файла GPSSмодели; расширение — .GPR. Обычно следует сохранить этот файл (командой меню File — Save ), а также скопировать его содержимое в окно текстового редактора Word для обработки и последующей печати.
Чтобы скопировать содержимое отчета, следует выделить его (с помощью мыши или нажатием клавиш Ctrl-A ), нажать на кнопку Копировать (или выбрать команду меню Edit – Copy ), затем перейти в окно редактора Word (т.е. в файл с расширением .DOC) и нажать кнопку Вставить , или выбрать команду Правка — Вставить . Аналогично можно скопировать в окно Word текст модели. После этого обычно следует закрыть файл-отчет, а также файл в машинных кодах (.SIM). Сохранять файл в машинных кодах обычно не требуется. Примечание . Следует обратить внимание, что по окончании моделирования в среде GPSS World имеются три открытых окна: текст модели (файл с расширением .GPS), модель в машинных кодах (.SIM) и файл-отчет (.GPR). При выполнении любых операций (сохранение, копирование в Word, закрытие и т.д.) необходимо внимательно следить за тем, чтобы текущим было именно то окно, для которого требуется выполняемая операция.
1.3. Интерпретация результатов моделирования
Файл-отчет, созданный системой моделирования GPSS World, содержит информацию о различных объектах GPSS-модели (устройствах, очередях и т.д.). Кроме того, в файле-отчете содержатся некоторые внутренние данные о
работе системы моделирования, обычно не представляющие практического интереса; их можно удалить из отчета. Ниже приведены данные из отчета для примера 1.1, представляющие интерес для анализа результатов моделирования.
| LABEL | LOC | BLOCK TYPE | ENTRY COUNT CURRENT COUNT RETRY | ||
| 1 | GENERATE | 100 | |||
| 2 | QUEUE | 100 | |||
| 3 | SEIZE | 100 | |||
| 4 | DEPART | 100 | |||
| 5 | ADVANCE | 100 | |||
| 6 | RELEASE | 100 | |||
| 7 | TERMINATE | 100 | |||
| FACILITY ENTRIES | UTIL. AVE.TIME AVAIL. OWNER PEND INTER RETRY | DELAY | ||||||||
| STANOK | 100 | 0.910 | 6.997 | 1 | ||||||
| QUEUE | MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME | AVE.(-0) RETRY | ||||||||
| OCH | 1 | 100 | 46 | 0.119 | 0.912 | 1.689 | ||||
Раздел отчета, включающий колонки LABEL , LOCK , BLOCK TYPE , ENTRY COUNT , CURRENT COUNT и RETRY , представляет собой информацию об опе- раторах модели : • LABEL — метка оператора (в примере 1.1 метки не использовались); • LOC — порядковый номер оператора; • BLOCK TYPE — имя оператора; • ENTRY COUNT — количество транзактов, поступивших на оператор; • CURRENT COUNT — количество транзактов, находящихся в операторе в конце моделирования; • RETRY — внутренние данные о работе системы моделирования GPSS World, обычно не представляющие интереса для анализа результатов моделирования. Информация об операторах может представлять интерес для анализа объ- екта моделирования.
Например, значение колонки ENTRY COUNT для оператора GENERATE представляет собой количество транзактов, поступивших на обслуживание; значение этой же колонки для оператора SEIZE — количество транзактов, вошедших в устройство для обслуживания. Значение колонки CURRENT COUNT для оператора QUEUE указывает на количество транзактов, оставшихся не обслуженными к моменту окончания моделирования; большое значение этой величины может указывать на перегрузку устройства.
В данном примере, как и следовало ожидать, обработано 100 транзактов (деталей). Информация об операторах может также представлять интерес для отладки GPSS-модели. Например, нулевое значение колонки ENTRY COUNT для какоголибо оператора может указывать на ошибку в модели: транзакты по какой-то причине не поступают в этот оператор. Большая величина в колонке CURRENT
COUNT также может указывать на ошибку: транзакты почему-то не могут выйти из этого оператора и перейти в следующий. Информация об устройствах и очередях представляет собой набор ха- рактеристик объекта моделирования. На основе этой информации могут рассчитываться другие характеристики (например, стоимостные).
Раздел отчета FACILITY содержит информацию об устройствах : • FACILITY — имя устройства; • ENTRIES — количество транзактов, входивших в устройство; • UTIL . — коэффициент загрузки устройства (т.е. доля времени, в течение которого в устройстве находились транзакты); • AVE . TIME — среднее время пребывания транзакта в устройстве; • OWNER — номер транзакта, находящегося в устройстве в момент окончания моделирования (если устройство свободно, то указывается ноль); • AVAIL , PEND , INTER , RETRY , DELAY — внутренние данные о работе системы моделирования GPSS, обычно не представляющие интереса для анализа результатов моделирования. Раздел отчета QUEUE содержит информацию об очередях : • QUEUE — имя очереди; • MAX — максимальная длина очереди (т.е. максимальное количество транзактов в ней) за время моделирования; • CONT . — длина очереди в момент окончания моделирования; • ENTRIES — количество транзактов, входивших в очередь; • ENTRIES(0) — количество транзактов, которым не потребовалось ждать в данной очереди ( нулевые входы ); • AVE . CONT . — средняя длина очереди (среднее количество транзактов в очереди); • AVE . TIME — среднее время пребывания транзактов в очереди; • AVE .( -0 ) — среднее время пребывания транзактов в очереди без учета нулевых входов, т.е. среднее время пребывания в очереди для тех транзактов, которым потребовалось ждать в ней хотя бы некоторое время ; • RETRY — внутренние данные о работе системы моделирования GPSS World, обычно не представляющие интереса для анализа результатов моделирования.
В данном примере, как и было задано в постановке задачи, обработано 100 деталей. Коэффициент загрузки станка составил 0,91, или 91%. Это означает, что станок работает в течение 91% времени, а 9% времени — простаивает. Среднее время ожидания детали в накопителе перед станком (т.е. в очереди) составило 0,912 мин.
В накопителе никогда не оказывалось более одной детали (максимальная длина очереди — 1), а в среднем в накопителе находилось 0,119 детали. Из 100 обработанных деталей для 46 не потребовалось ожидание в накопителе (в момент их поступления станок оказывался свободным). Таким об-
Источник: studfile.net