Ім'я файлу: Практическая работа 1.pdf
Розширення: pdf
Розмір: 608кб.
Дата: 21.06.2022
скачати

Практическая работа № 1
Знакомство с системой имитационного моделирования GPSS World
Цель работы
Знакомство с системой имитационного моделирования GPSS World, подготовкой задания на моделирование, выполнением анализа и обработкой результатов моделирования.
Методические рекомендации
GPSS является аббревиатурой выражения General Purpose Simulation System, что означает «Система имитационного моделирования общего применения».
GPSS предназначена для описания и исследования дискретных моделей систем массового обслуживания (СМО). Любая технико-экономическая система, представляемая как СМО, состоит из элементов, называемых средствами обслуживания (устройства памяти и логические ключи). Их можно назвать объектами аппаратной категории. Такими элементами могут быть кассовые аппараты, продавцы-консультанты, станки, транспортные средства и т. п.
Обслуживаемые заявки, называемые транзактами,отображают покупателей магазина,поступающие на обработкудетали, перевозимые грузы, в общем, представляют собой единицы исследуемых потоков. Функционирование СМО представляется как процесс прохождения транзактов через фиксированную структуру объектов аппаратной и ряда других категорий.
Главное окно системы (рисунок 1.1) включает в себя главное меню и систему выпадающих и всплывающих меню.
Рисунок 1.1. Главное окно GPSS World
Пункт главного меню
File (Файл) используется для работы с файлами моделей и документами. Выпадающее меню содержит следующие команды:
New
(Создать),
Open… (Открыть), Close (Закрыть), Save (Сохранить), Save As…
(Сохранить как),
Print… (Печать), Internet, Resent File (Последнийфайл), Exit
(Выход).
Пункт
Edit (Редактирование) содержит следующие команды: Undo
(Отменить),
Cut (Вырезать), Copy (Копировать), Insert (Вставить), Insert line
(Вставить строку),
Delete line (Удалить строку), Font… (Шрифт), Expression
Window… (Окно выражения), Plot Window… (Окно графика), Insert GPSS

Blocks… (Вставить блок), Insert Experiment (Вставить эксперимент),
Setting (Установки).
Пункт
Search (Поиск) содержит команды: Find/Replace (Найти/Заменить),
Go to Line (Перейти к строке), Next Bookmark (Следующая закладка), Mark
(Установить метку),
UnMark (Удалить метку), UnMark All (Удалить все метки),
Select to Bookmark (Выделить до отметки), Next Error (Следующая ошибка),
Previous Error (Предыдущая ошибка).
Пункт
View (Просмотр) содержит команды, открывающие различные окна, панели либо меню:
Notices (Сообщения), Toolbar (Панель инструментов),
Entity Details (Детальное представление), Simulation Clock (часы моделирования).
Пункт
Command содержит команды по управлению процессом трансляции и моделирования:
Create Simulation (Создать выполнимую модель), Retranslate
(Перетранслировать),
Repeat Last Command (Повторить последнюю команду),
CONDUCT (Управление – для эксперимента), START (Пуск), STEP1
(Пошаговое выполнение),
HALT (Остановить), CONTINUE (Продолжить),
CLEAR (Очистить), RESET (Сброс), SHOW… (Показать), Custom… (Ввод команд управления пользователем).
Пункт главного меню
Window (Окно) содержит команды по выводу и размещению окон:
Cascade (Каскад), Tile (Мозаика), Simulation Window (Окно моделирования – всплывающее меню позволяет вывести окна с различной информацией о процессах),
Simulation Snapshot (Снимок моделирования).
Часть из приведенных команд могут быть продублированы комбинациями
«горячих клавиш».
Ввод модели может выполняться как в режиме клавишного набора, так и при помощи команды
Insert GPSS Blocks… пункта Edit. Выбор нужного блока
(рисунок 1.2) вызывает диалоговое окно (рисунок 1.3), в котором можно заполнить параметры шаблона этого блока.
Рисунок 1.2. Диалоговое окно выбора блока GPSS для вставки в модель

Процедура моделирования выполняется по команде
Create Simulation из пункта
Command главного меню.
Рисунок 1.3. Диалоговое окно заполнения шаблона блока GPSS
На рисунке 1.4 приведен внешний вид окна GPSS World после выполнения процедуры моделирования. В окне
JOURNAL приведен протокол процесса компиляции модели и моделирования. При наличии синтаксической ошибки в тексте модели сюда выводится соответствующая строка и описание ошибки. В окне
REPORT приводится отчет, куда собирается стандартная статистическая информация в процессе моделирования.
Сюда включены следующие показатели моделирования системы:
START TIME –время начала моделирования системы;
END TIME –время окончания моделирования системы; BLOCKS –число блоков в модели;
FACILITIES –число устройств(обслуживающих приборов); STORAGES

число устройств памяти;
NAME –назначенные пользователем имена;
VALUE –числовые значения,назначенные именам(обычно начинаютсяс
10000).

Рисунок 1.4. Окна GPSS World после выполнения моделирования
Выходные статистические данные для каждого из блоков содержат:
LABEL –метка блока,если она есть;
LOC –имя или номер блока;
ENTRY COUNT –общие показания счетчиков числа входов транзактов в блок;
CURRENT COUNT –текущие показания счетчиков числа входов;
RETRY –число транзактов,ожидающих особого условия,зависящего от состояния этого объекта-устройства.
Выходные статистические данные по устройствам:
FACILITY –номер(имя)устройства;
ENTRIES –число входов или обслуживаний устройства;
UTIL. –коэффициент использования устройства(процент времени);
AVE.TIME –среднее время одного обслуживания;
AVAIL. –доступность в конце моделирования(1 –доступен, 0 –
недоступен);
OWNER –возможное число входов;
PEND –число транзактов,ожидающих снятия прерывания с устройства,
когда оно пребывает в состоянии прерывания;
INTER –число транзактов,находившихся в устройстве в момент прерывания;
RETRY –число транзактов,ожидающих особого условия,зависящего от состояния устройства;
DELAY –число транзактов,ожидающих занять устройство.

Имитационная модель в GPSS записывается как совокупность блоков с соответствующими значениями операндов. Рассмотрим ряд таких блоков, позволяющих описать модель простой СМО.
Блок генерации транзактов
GENERATE A,B,C,D,E
A
средний интервал времени между последовательными поступлениями транзактов (целое или десятичная дробь, в качестве разделителя используется точка);
B
разброс интервала времени относительно А (целое или десятичная дробь);
C
время появления первого транзакта;
D
количество генерируемых транзактов;
E
приоритет генерируемых транзактов.
Правила определения модельного времени. Обычно таймер модельного времени в начале процесса моделирования принимают равным нулю. Величину реального времени, соответствующего единице модельного, выбирают с учетом сопоставимости её с величиной периода моделирования. Например, при моделировании обслуживания клиентов банка за единицу модельного времени можно принять 1 мин, а при моделировании процесса капитального ремонта сложного оборудования – 1 час или 1 смену.
Рассмотрим ряд примеров использования блока:
GENERATE 20,3,100,10,2 – генерация 10 заявок, имеющих 2-й уровень приоритета, время появления между которыми распределено равномерно в диапазоне от 17 до 23 единиц времени. Первая заявка появляется на 100-й единице времени.
GENERATE 28,5 – ограничений по числу заявок нет, уровень приоритета
– 0, заявки появляются равномерно с интервалом от 23 до 33 единиц времени. Смещения времени появления первой заявки нет.
GENERATE 12,,,5,2 – появятся 5 заявок с приоритетом 2 и интервалом 12 единиц времени.
Блок удаления транзактов
TERMINATE А блок удаления транзакта . Производит уменьшение счетчика завершений событий на величину А следующим образом: Сч=Сч–А.
При достижении Сч=0 моделирование прекращается. По умолчанию А=0, при этом блок только удаляет транзакт.
Блоки занятия и освобождения приборов
SEIZE А блок занятия прибора,
А
имя или номер прибора,подлежащего занятию транзактом.
RELEASE А блок освобождения прибора,
А
имя или номер освобождаемого прибора.
В качестве имен приборов, очередей, многоканальных устройств, переменных и констант нельзя использовать имена блоков, команд и стандартных числовых атрибутов. Имя должно начинаться с символа, не превышать 250 символов и не содержать специальных символов.

Блок задержки транзактов
ADVANCE А,В блок задержки транзактов, параметры блока соответствуют параметрам блока GENERATE
Для запуска модели на выполнение используется команда START A, где операнд А представляет собой начальное значение счетчика завершений событий Сч. В версии GPSS/PC для указания необходимости процесса моделирования в начале программы указывается также команда SIMULATE.
В качестве примеров для моделирования рассмотрим одноканальную бесприоритетную СМО с неограниченной длиной очереди.
Пример 1.1. Составить модель процесса обработки100простых деталейна слесарной операции, поступление которых подчиняется равномерному закону с интервалом [4…10] минут, а обслуживание – равномерному закону интервалом
[2…6] минут.
Распределение поступления заявок (генерации транзактов) по равномерному закону с интервалом [4…10] единиц времени можно описать как середину интервала ± разброс интервала времени относительно середины: 7±3 единицы времени. Соответственно, для равномерного распределения времени обслуживания интервал [2…6] можно описать как 4±2.
Модель на языке GPSS будет выглядеть так:
50 SIMULATE; моделирование (необязательно для GPSS World )
100 GENERATE 7,3; генерация транзакта
110 SEIZE PRIBOR; занятие прибора
120 ADVANCE 4,2; задержка транзакта
130 RELEASE PRIBOR; освобождение прибора
140 TERMINATE 1; уничтожение транзакта и уменьшение; на единицу счетчика числа завершений
150 START 100; начало моделирования с числом повторений 100.
Результаты работы модели приведены на рисунке 1.4. Из них видно, что при обработке 100 деталей, поступающих с указанным временем, загрузка слесаря составила 55,6 %, а среднее время обработки одной детали – 3,994 мин. Процесс обработки 100 деталей занял 717,989, т. е. почти 718 мин. (
END TIME).
Программа на языке GPSS/PC состоит из пронумерованных операторов, располагающихся и выполняемых в порядке этих номеров. Операторы управления моделированием не нумеруются. Система GPSS World
не требует обязательной нумерации строк. Нумерация может использоваться для удобства восприятия текста модели. Символ точки с запятой «;» служит для указания текстового комментария.

Пример 1.2. Рассмотрим работу модели примера1.1,но не длямоделирования обработки 100 деталей, а в течение 10 часов. В случае необходимости моделирования за четко указанный промежуток времени в модель нужно ввести сегмент таймера, состоящий из двух блоков GENERATE <время моделирования> и
TERMINATE 1 (строки 150 и 160). При этом мы убрали 1 у блока TERMINATE в строке 140, т.е. этот блок теперь работает только на уничтожение транзакта, а окончание процедуры моделирования определяется таймером. В строке 170 команды START значением параметра является 1, т. к. уменьшение счетчика завершений происходит 1 раз в таймере (строка 160). Результаты приведены на рисунке 1.5.
100
GENERATE 7,3 110
SEIZE PRIBOR
120
ADVANCE 4,2 130
RELEASE PRIBOR
140
TERMINATE
150
GENERATE 600 160
TERMINATE 1 170
START 1
Рисунок 1.5. Окно отчета после моделирования за фиксированное время
По результатам видно, что за 10 часов было обработано 83 детали, загрузка слесаря составила 55,2 %, а среднее время обработки одной детали –
3,991 мин.
Контрольные вопросы:
1. Примеры одноканальных СМО.
2. Назначение и основные возможности GPSS.

3. Характеристики системы, получаемые моделированием на GPSS.
4. Назначение и основные блоки: generate, terminate, start, advance, seize, release.
5. Протокол процесса компиляции модели и моделирования.
Задание для самостоятельной работы
Процесс прохождения заявок, поступление которых подчиняется равномерному закону со средним значением А и интервалом [В,С] единиц времени, а обработки - равномерному закону со средним D и интервалом [E,F], можно описать:
Вариант Генерация
Обработка 1
Обработка 2
A
B
C
D
E
F
D
E
F
1 5
4 6
3 1
5 5
2 8
2 6
4 8
4 2
6 3
1 5
3 5
3 7
5 1
9 3
1 5
4 7
5 9
4 1
7 4
2 6
5 8
6 10 3
2 4
5 1
9 6
6 5
7 4
2 6
3 2
4 7
7 5
9 5
2 8
4 2
6 8
5 3
7 3
1 5
5 2
8 9
8 5
11 6
3 9
4 1
7 10 7
4 10 4
1 7
5 1
9 11 6
2 10 5
1 9
4 1
7 12 5
1 9
4 1
7 4
2 6
13 6
5 7
3 2
4 5
2 8
14 8
6 10 5
2 8
3 1
5 15 7
5 9
3 1
5 6
3 9
Генерация
Обработка 1
Обработка 2
Удаление

скачати

© Усі права захищені
написати до нас