Презентация на тему: Технология GPSS

Технология GPSS
Особенности GPSS World
Классификация объектов
Классификация объектов
Операторы GPSS - GENERATE
Операторы GPSS - GENERATE
Операторы GPSS - GENERATE
Операторы GPSS - TERMINATE
Операторы GPSS – одноканальное устр -во
Операторы GPSS – задержка по времени
Операторы GPSS – захват устройства
Пример 1 - парикмахерская
Пример 1 – запуск модели
Пример 1 – запуск модели
Пример 1 – запуск модели
Параметры устройства
Сбор статистики
Сбор статистики
Табулирование
Пример – добавление очереди
Пример – просмотр таблицы
Пример – просмотр таблицы
Многоканальные устройства
Многоканальные устройства
Многоканальные устройства
Пример – 3 парикмахера
Параметры транзактов
Модификация потоков транзактов
Модификация потоков транзактов
Условный переход
Пример – обеденные перерывы (версия 1)
Пример – обеденные перерывы (версия 1)
Пример – обеденные перерывы (версия 1)
Пример – обеденные перерывы (версия 1)
Обслуживание заявок
Пример – обеденные перерывы (версия 2)
Пример – обеденные перерывы (версия 2)
Пример – обеденные перерывы (версия 2)
Пример – обеденные перерывы (версия 2)
Задания
1/40
Средняя оценка: 4.1/5 (всего оценок: 31)
Код скопирован в буфер обмена
Скачать (260 Кб)
1

Первый слайд презентации: Технология GPSS

Транзактно -ориентированное моделирование

Изображение слайда
2

Слайд 2: Особенности GPSS World

Модель описывается в терминах транзактов – элементов потока обслуживания. Симулятор и другое ПО GPSS World : Обеспечивает заданный маршрут продвижения транзактов ; Планирует события, происходящие в модели, путем регистрации времени наступления каждого события и выполнения их в нарастающей временной последовательности; Регистрирует статистическую информацию; Обеспечивает продвижение модельного времени.

Изображение слайда
3

Слайд 3: Классификация объектов

Динамические объекты – транзакты (создаются, перемещаются по блокам, уничтожаются); Операционные блоки – задают логику функционирования модели системы и определяют пути следования транзактов ; В блоках могут происходить события: 1) создание и уничтожение транзактов ; 2) изменение числового атрибута объекта; 3) задержка транзакта на определенный период времени; 4) изменение маршрута движения транзакта.

Изображение слайда
4

Слайд 4: Классификация объектов

Объекты аппаратной категории – элементы оборудования, которые управляются транзактами (одноканальные, многоканальные, логические ключи); Объекты вычислительной категории; Запоминающие объекты; Группирующие категории

Изображение слайда
5

Слайд 5: Операторы GPSS - GENERATE

Ввод транзактов в модель – блок GENERATE GENERATE [A],[B],[C],[D],[E] A – средний интервал времени; В – половина поля допуска равномерно распределенного интервала; С – смещение интервалов; D – ограничитель транзактов ; E – уровень приоритета транзактов.

Изображение слайда
6

Слайд 6: Операторы GPSS - GENERATE

Примеры. Транзакт входит в модель каждые 12 минут с отклонением в 4 минуты : GENERATE 12,4 Приход в модель через каждые 20 минут с отклонением 3 минут 5 транзактов : GENERATE 20,3,,5

Изображение слайда
7

Слайд 7: Операторы GPSS - GENERATE

Другие распределения – используются функции типовых распределений вероятностей: GENERATE Exponential(1,0,10) 1 – номер генератора случайных чисел; 0 – смещение; 10 – среднее значение. GENERATE Normal(1,10,3) 1 – номер генератора случайных чисел; 10 – среднее значение; 3 – стандартное отклонение.

Изображение слайда
8

Слайд 8: Операторы GPSS - TERMINATE

Вывод транзактов из модели – блок TERMINATE TERMINATE [A] A – величина уменьшения счетчика завершения. Работает вместе с блоком START, который задает величину счетчика транзактов. Блок TERMINATE уменьшает счетчик транзактов на величину A.

Изображение слайда
9

Слайд 9: Операторы GPSS – одноканальное устр -во

Такое устройство может обслуживать только одно требование; Требование обслуживается с определенной задержкой. Устройства могут иметь имена – числовые или символические. Занять устройство. SEIZE A A – имя занимаемого устройства. Транзакт не может занять устройство, если оно обслуживает другой транзакт. Команда выполнится, когда устройство будет освобождено. Освободить устройство. RELEAZE A A – имя освобождаемого устройства.

Изображение слайда
10

Слайд 10: Операторы GPSS – задержка по времени

Задержка продвижения транзакта – блок ADVANCE. ADVANCE A,B A – среднее время задержки на обслуживание; В – половина поля допуска равномерно распределенной случайной величины. Классическая последовательность блоков: SEIZE – ADVANCE - RELEASE

Изображение слайда
11

Слайд 11: Операторы GPSS – захват устройства

При захвате устройства происходит приоритетное начало обслуживания определенного транзакта или прерывание предыдущих операций - блок PREEMPT. PREEMPT A A – имя устройства. Освобождение устройства осуществляет блок RETURN RETURN A A – имя устройства.

Изображение слайда
12

Слайд 12: Пример 1 - парикмахерская

* LINE-LOC OPERATION A,B,C,D,E,F,G COMMENTARY ; простой проект с одним парикмахером и ; без отслеживания параметров транзактов GENERATE 8,5 ; генерация прихода клиента SEIZE Master ; проверка занятости мастера ; и начало обслуживания, если мастер свободен ADVANCE 15,8 ; обслуживание клиентов RELEASE Master ; освобождение парикмахера TERMINATE 1 ; уход клиента START 100 ; запуск модели для 100 клиентов

Изображение слайда
13

Слайд 13: Пример 1 – запуск модели

Изображение слайда
14

Слайд 14: Пример 1 – запуск модели

Стандартный отчет содержит следующую информацию: Начальное ( START TIME) и конечное (END TIME) модельное время; Число блоков модели (BLOCKS) ; Число устройств ( FACILITIES и STORAGES) ; Информация о именах; Информация о канале обслуживания; Список текущих событий; Список будущих событий.

Изображение слайда
15

Слайд 15: Пример 1 – запуск модели

Информация об устройстве: Имя FACILITY; Количество фактов занятия устройства ENTRIES; Коэффициент использования канала обслуживания UTIL ; Среднее время обслуживания заявки AVE.TIME ; Состояние устройства в момент окончания моделирования AVAIL ; Номер транзакта, который занимает устройство OWNER ; Количество транзактов, которые ожидают отбработки PEND.

Изображение слайда
16

Слайд 16: Параметры устройства

Параметры устройства можно получить и в процессе моделирования: F – состояние устройства; FC – счетчик обслуженных заявок; FR – коэффициент использования; FT – среднее время использования устройства одним транзактом ; FV – состояние доступности и пр. Обратиться к параметру можно: Имя_пар $ Имя_устр

Изображение слайда
17

Слайд 17: Сбор статистики

Основные статистические параметры обычно связаны с параметрами ожидания, т.е. нужна очередь. QUEUE A, [B] A – имя очереди; B – число единиц, на которое увеличивается очередь. Выход из очереди: DEPART A, [B] A – имя очереди; B – число единиц, на которое увеличивается очередь.

Изображение слайда
18

Слайд 18: Сбор статистики

Об очередях можно узнать следующую информацию: Q – текущая длина очереди; QA – средняя длина очереди; QC – общее число входов в очередь; QM – максимальная длина очереди; QT – среднее время пребывания в очереди (с учетом нулевых входов); QX – среднее время пребывания в очереди (без учета нулевых входов); QZ – число входов транзактов, время нахождения которых в очереди равно 0.

Изображение слайда
19

Слайд 19: Табулирование

Для наглядного показа параметров можно создавать таблицу: Определить таблицу: Имя TABLE A, B, C, D A – аргумент, который будет табулироваться; B – верхний предел первого интервала; C – ширина интервала; D – число интервалов. Собственно запись в таблицу: TABULATE A A – имя таблицы.

Изображение слайда
20

Слайд 20: Пример – добавление очереди

* LINE-LOC OPERATION A,B,C,D,E,F,G COMMENTARY Tab_Q TABLE QX$QU,10,10,20 GENERATE 8,5 ; генерация прихода клиента QUEUE QU ; клиент встает в очередь SEIZE Master ; проверка занятости мастера DEPART QU ; начало обслуживания TABULATE Tab_Q ; табулирование параметра ADVANCE 15,8 ; обслуживание клиентов RELEASE Master ; освобождение парикмахера TERMINATE 1 ; уход клиента START 100 ; запуск модели для 100 клиентов

Изображение слайда
21

Слайд 21: Пример – просмотр таблицы

Изображение слайда
22

Слайд 22: Пример – просмотр таблицы

Изображение слайда
23

Слайд 23: Многоканальные устройства

Многоканальное устройство управляется следующим образом: Задается устройство и его емкость: Имя STORAGE A A – имя многоканального устройства; Занятие канала на обслуживание : ENTER A,[B] A – имя занимаемого устройства; B – число занимаемых приборов. Освобождение канала: LEAVE A,[B] A – имя освобождаемого устройства; B – число освобождаемый приборов.

Изображение слайда
24

Слайд 24: Многоканальные устройства

Отчет содержит следующую информацию о многоканальном устройстве: REM – число каналов, свободных при окончании моделирования; MIN – минимальное число каналов, которые использовались при моделировании; MAX – максимальное число каналов, которые использовались при моделировании ; AVL – состояние устройства в момент окончания моделирования; AVE.C. – среднее число занятых каналов; UTIL – коэффициент использования устройства.

Изображение слайда
25

Слайд 25: Многоканальные устройства

В процессе моделирования доступны параметры устройства: R – число свободных каналов; S – текущее содержимое; SA – среднее содержимое; SC – счетчик числа входов; SE – занятость; SF – степень заполнения; SM – максимальное содержимое ; SR – коэффициент использования; ST – среднее время задержки на единицу емкости.

Изображение слайда
26

Слайд 26: Пример – 3 парикмахера

Masters STORAGE 3 ; 3 мастера Tab_Q TABLE QX$QU, 2, 2,10 GENERATE 8,5 QUEUE QU ENTER Masters DEPART QU TABULATE Tab_Q ADVANCE 20,8 LEAVE Masters TERMINATE 1 START 100 ; запуск модели для 100 клиентов

Изображение слайда
27

Слайд 27: Параметры транзактов

Транзакты могут иметь параметры, значения которых можно им назначать: Pj – значение j- ого параметра активного транзакта ; XN1 – номер активного транзакта ; PR – приоритет активного транзакта ; MPj – время прохождения некоторого участка; M1 – время пребывания в модели активного транзакта. Назначить значение параметра: ASSIGN A,B A – номер модифицируемого параметра; B – величина параметра.

Изображение слайда
28

Слайд 28: Модификация потоков транзактов

Переход транзакта к любому блоку обеспечивает блок: TRANSFER [A], [B], [C], [D] A – способ перехода. Остальные параметры зависят от параметра A. Например, безусловный переход : TRANSFER,B B – метка блока, куда должен перейти транзакт. Вероятностный переход : TRANSFER A,[B],C A – вероятность передачи транзакта в блок С ( в долях тысячи); B – метка блока, куда перейдет транзакт с вероятностью 1-А; С - метка блока, куда перейдет транзакт с вероятностью А.

Изображение слайда
29

Слайд 29: Модификация потоков транзактов

Режим BOTH – транзакт пытается перейти к блоку, метка которого указана в операнде B. Если этот блок занят, то он пытается перейти к блоку C. TRANSFER BOTH, B, C, Режим ALL – проверяется блок, указанный в блоке B. Если он занят, то последовательно проверяются все блоки, пока не будет достигнут блок, заданный в операнде С. Местоположение каждого проверяемого блока определяется с помощью шага, заданного в параметре D. TRANSFER ALL, B, C, D И другие режимы.

Изображение слайда
30

Слайд 30: Условный переход

Для формирования условного блока используется: TEST X A,B,[C] X – операция отношения ( G,L, GE, LE, NE, E ) ; A, B – операнды отношения; С – метка блока, куда переходит транзакт, если ответ отрицательный.

Изображение слайда
31

Слайд 31: Пример – обеденные перерывы (версия 1)

Tab_Q TABLE QX$QU, 5, 5,10 Tab_T TABLE P1,1, 1,3 GENERATE 8,5 ; генерация прихода клиента QUEUE QU ; клиент встает в очередь MARK 2 ; в P2 сохраняется модельное время TEST GE P2,180,ServeAll ; если время до 12, то ;работают 3 парикмахера TEST LE P2,270,ServeAll ; если время после 13.30, то ;работают 3 парикмахера TEST GE P2,210,Serve1 ; если после 12 до 12.30 – ;обедает парикмахер 1 TEST GE P2,240,Serve2 ; если после 12.30 до 13.00 – ; обедает парикмахер 2

Изображение слайда
32

Слайд 32: Пример – обеденные перерывы (версия 1)

TRANSFER BOTH,Mast1,Mast2 Serve1 TRANSFER BOTH,Mast2,Mast 3 Serve2 TRANSFER BOTH,Mast1,Mast 3 ServeAll TRANSFER ALL,Mast1,Mast 3,8 Mast1 SEIZE Master1 ; клиент пытается попасть к ;парикмахеру 1 DEPART QU TABULATE Tab_Q ASSIGN 1,1 TABULATE Tab_T ADVANCE 15,8

Изображение слайда
33

Слайд 33: Пример – обеденные перерывы (версия 1)

RELEASE Master1 TRANSFER, ExitTran ; аналогично задаются группы блоков Master2 и Master3 ... ExitTran TERMINATE 1 ; уход клиента START 10 0 ; запуск модели для 100 клиентов

Изображение слайда
34

Слайд 34: Пример – обеденные перерывы (версия 1)

RELEASE Master1 TRANSFER, ExitTran ; аналогично задаются группы блоков Master2 и Master3 ... ExitTran TERMINATE 1 ; уход клиента START 10 0 ; запуск модели для 100 клиентов

Изображение слайда
35

Слайд 35: Обслуживание заявок

Изображение слайда
36

Слайд 36: Пример – обеденные перерывы (версия 2)

Версия 1 показывает, что в заданные временные интервалы к отдельным парикмахерам не направляются клиенты. Версия 2 предполагает, что обеденный перерыв – это внеочередной клиент, который более приоритетен по сравнению с другими клиентами. Начало версии 2 похоже (без проверок на время) Tab_Q TABLE QX$QU, 5, 5,10 Tab_T TABLE P1,1, 1,3 Tab_D TABLE P3,240,2,100 GENERATE 8,5 ; генерация прихода клиента QUEUE QU ; клиент встает в очередь ServeAll TRANSFER ALL Mast1,Mast3, 8

Изображение слайда
37

Слайд 37: Пример – обеденные перерывы (версия 2)

Mast1 SEIZE Master1 DEPART QU TABULATE Tab_Q ASSIGN 1,1 TABULATE Tab_T ADVANCE 15,8 RELEASE Master1 TRANSFER, ExitTran ; аналогично по Mast2 и Mast3

Изображение слайда
38

Слайд 38: Пример – обеденные перерывы (версия 2)

GENERATE 240,,,1 ;3 группы Dinner1 TEST E F$Master1,0,loop1 PREEMPT Master1 MARK 2 ASSIGN 3,P2 TABULATE Tab_D ADVANCE 30 RETURN Master1 TERMINATE 1 TRANSFER,gen2 ; переход к блоку для 2 мастера loop1 ADVANCE 5 TRANSFER,Dinner1

Изображение слайда
39

Слайд 39: Пример – обеденные перерывы (версия 2)

TERMINATE 1 TRANSFER,EX loop3 ADVANCE 5 TRANSFER,Dinner3 EX START 103 ; запуск модели для 100 клиентов

Изображение слайда
40

Последний слайд презентации: Технология GPSS: Задания

В качестве усложнения модели можно предложить следующие: Предусмотреть приход клиентов для получения различных услуг (из заданного списка) (не все мастера могут предоставить каждую услугу); Согласно квалификации мастеров и оказанным услугам рассчитать стоимость оказания услуг.

Изображение слайда