Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Организация обработки различных типов транзактов




Задание для самостоятельной работы

Рассматривается модель работы парикмахерской с одним мастером. Интервалы времени между приходом клиентов: 40±20 мин, распределение равномерное. Интервалы времени обслуживания клиентов: 45±10, распределение также равномерное. Предельное значение модельного времени 2000.

1) Введите текст модели в системе GPSS World и сохраните его в своей папке под именем Задание 2.gps.

2) Выполните компиляцию и прогон модели. Получите и сохраните стандартный Отчет, объясните смысл его элементов.

 

Лабораторная работа № 3

Тема: Основные приемы программирования моделей

Для моделирования транзактов различных типов, которые обслуживаются на одном устройстве, можно использовать различные сегменты модели. При этом использование одного и того же имени устройства в разных сегментах означает фактически наличие одного устройства, к которому транзакты различных типов выстраиваются в общую очередь. Для организации сбора статистики по этой очереди используется одно и то же имя очереди в блоках QUEUE и DEPART в разных сегментах модели.

Пример 3.1. В парикмахерскую с одним креслом могут приходить клиенты двух типов. Клиенты первого типа желают только стричься. Распределение интервалов их прихода 35±10 мин. Клиенты второго типа желают постричься и побриться. Распределение интервалов их прихода 60±20 мин. Парикмахер обслуживает клиентов в порядке “первым пришел – первым обслужен”. Такая ситуация может быть изображена на рис 3.1., на котором кружками представлены клиенты, желающие только стричься, а квадратами обозначены клиенты, желающие и постричься, и побриться. На стрижку уходит 18±6 мин, а на бритье 10±2 мин. Необходимо написать модель на языке GPSS, обеспечивающую сбор данных об очереди, образуемой ожидающими клиентами.

 
 

 


Рис.3.1. Структура моделируемой системы с двумя типами транзактов

На рис. 3.2. показана блок-схема модели парикмахерской с двумя типами клиентов. Она включает два независимых сегмента, моделирующих обслуживание клиентов. Первый сегмент соответствует только стригущимся клиентам, а второй – стригущимся и бреющимся. В каждом сегменте пара блоков QUEUE –DEPART описывает одну и ту же очередь, поэтому по транзактам, проходящим в каждом сегменте, обеспечивается совместный сбор статистики. Таким же образом пара блоков SEIZE-RELEASE в каждом из сегментов описывает одно и то же устройство и моделирует самого парикмахера. За единицу времени принята одна минута.

На рис.3.3. приведена соответствующая программа на языке GPSS, а на рис.3.4. – результаты одного прогона этой модели. Эти результаты показывают, что парикмахер был занят всего 19 раз (количество входов в устройство Master). При этом не делается различий, сколько клиентов относились к типу только стригущихся, а сколько к другому типу. Аналогично поведение очереди к парикмахеру описывается также в обобщенном (агрегированном) виде.

 

 


 

Приход стригущихся и бреющихся клиентов
 
GENERATE 60,20
GENERATE 35,10

 

               
   
   
Присоединение к очереди
   
 
 
 

 


                                     
   
     
   
 
 
     
Уход из очереди
 
     
Стрижка у парикмахера
 
     
Освобождение парикмахера
 
   
Уход из парикмахерской
   
 
 
   
1-й сегмент модели
 
 
   
2-й сегмент модели
   
 
 
   
3-й сегмент модели (сегмент таймера)

 

 


 

 


Рис.3.2. Блок-схема модели парикмахерской с двумя типами клиентов

 

* Модель парикмахерской с клиентами двух типов

*

* 1-й сегмент модели

*

GENERATE 35,10;Приход только стригущихся клиентов

QUEUE QMaster;Присоединение к очереди

SEIZE Master;Переход в кресло парикмахера

DEPART QMaster;Уход из очереди

ADVANCE 18,6;Стрижка у парикмахера

RELEASE Master;Освобождение парикмахера

TERMINATE;Уход из парикмахерской

*

* 2-й сегмент модели

*

GENERATE 60,20;Приход стригущихся и бреющихся клиентов

QUEUE QMaster;Присоединение к очереди

SEIZE Master;Переход в кресло парикмахера

DEPART QMaster;Уход из очереди

ADVANCE 18,6;Стрижка у парикмахера

ADVANCE 10,2;Бритье у парикмахера

RELEASE Master;Освобождение парикмахера

TERMINATE;Уход из парикмахерской

 

* 3-й сегмент модели

*

GENERATE 480;Приход транзакта-таймера

TERMINATE 1;Завершение прогона

 

Рис.3.3. Программа модели парикмахерской с двумя типами клиентов

 

Рис.3.4. Фрагмент отчета для одного прогона модели парикмахерской с клиентами двух типов

Допустим, необходимо собрать статистику ожидания обслуживания как отдельно по каждому типу клиентов, так и по обоим типам вместе. Для этого нужно ввести по одной дополнительной очереди в каждый сегмент (1 и 2). Напомним, что введение объекта “очередь” в модель не означает образование новой очереди ожидающих транзактов, а служит для сбора статистики по уже существующим очередям. Соответствующая программа на языке GPSS приведена на рис.3.5. Дополнительные очереди Type1 и Type2 введены соответственно в сегмент 1 и в сегмент 2. Когда транзакт входит в сегмент 1, он сначала регистрируется в очереди QMaster, а затем в очереди Type1. Далее он пытается занять устройство. Если попытка успешна, то транзакт регистрирует уход из очередей Type1 и QMaster, и начинается обслуживание блоком ADVANCE. Таким образом, при ожидании обслуживания только стригущиеся клиенты одновременно имеют запись в двух очередях. То же самое можно сказать о втором типе клиентов, моделирование которых осуществляется в сегменте 2. Результаты прогона этой модели приведены на рис.3.6. Хотя статистика регистрируется по трем очередям, реально существует только одна очередь к обслуживающему устройству (парикмахеру). Анализируя эти результаты, можно сказать, что из 19 клиентов, ожидавших в очереди, 11 клиентов были первого типа (только стригущиеся), а 8 – второго типа (стригущиеся и бреющиеся).

 

* Модель парикмахерской с клиентами двух типов Сбор статистики по каждому типу

*

* 1-й сегмент модели

*

GENERATE 35,10;Приход только стригущихся клиентов

QUEUE QMaster;Присоединение к очереди агрегированной статистики

QUEUE Type1;Присоединение к очереди разделенной статистики

SEIZE Master;Переход в кресло парикмахера

DEPART Type1;Уход из очереди разделенной статистики

DEPART QMaster;Уход из очереди агрегированной статистики

ADVANCE 18,6;Стрижка у парикмахера

RELEASE Master;Освобождение парикмахера

TERMINATE;Уход из парикмахерской

*

* 2-й сегмент модели

*

GENERATE 60,20;Приход стригущихся и бреющихся клиентов

QUEUE QMaster;Присоединение к очереди агрегированной статистики

QUEUE Type2; Присоединение к очереди разделенной статистики

SEIZE Master;Переход в кресло парикмахера

DEPART Type2;Уход из очереди разделенной статистики

DEPART QMaster;Уход из очереди агрегированной статистики

ADVANCE 18,6;Стрижка у парикмахера

ADVANCE 10,2;Бритье у парикмахера

RELEASE Master;Освобождение парикмахера

TERMINATE;Уход из парикмахерской

 

* 3-й сегмент модели

*

GENERATE 480;Приход транзакта-таймера

TERMINATE 1;Завершение прогона

 

Рис.3.5. Программа модели с дифференцированным сбором статистики по ожиданию клиентов различных типов

 

Рис.3.6. Фрагмент отчета для модели дифференцированного сбора статистики по ожиданию клиентов двух типов

 

Задание 3.1.

1) Из папки Примеры загрузите модель Пример 31.gps. Выполните один прогон модели и изучите отчет.

2) Модифицируйте модель, чтобы статистика по ожиданию в очереди регистрировалась отдельно по каждому типу клиентов. Получите отчет и сравните его с отчетом из п.1.

 




Поделиться с друзьями:


Дата добавления: 2015-05-26; Просмотров: 885; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.04 сек.