Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИМЭП (методичка2) обр-Ариал.doc
Скачиваний:
13
Добавлен:
06.09.2019
Размер:
1.15 Mб
Скачать

Самостоятельная работа к примеру моделирования 2а

Самостоятельно разработать условие задачи аналогично примеру 2А с использованием своих данных. Провести моделирование, сделать выводы и в случае необходимости внести предложения по улучшению процесса производства (обслуживания), описанного в условии задачи.

Оформить самостоятельную работу (отчет) и сдать на проверку:

  • отчет – на бумажном носителе;

  • программу – на электронном носителе (дискета).

"Пример моделирования 2в. Расширение системы обслуживания с одним прибором и очередью"

Постановка задачи. В парикмахерскую с одним креслом могут приходить клиенты двух типов. Клиенты первого типа желают только стричься. Распределение интервалов их прихода 35 ± 10 мин. Клиенты второго типа желают постричься и побриться. Распределение интервалов их прихода 60 ± 20 мин. Парикмахер обслуживает клиентов в порядке "первым пришел - первым обслужен".

Такая ситуация может быть изображена на рис.2В.1, на котором кружками представлены клиенты, желающие только стричься, а квадратами обозначены клиенты, желающие и постричься и побриться. В момент, который изображен на рис. 2В.1, в кресле парикмахера сидит клиент, который только стрижется, а в очереди сидят только стригущийся, стригущийся и бреющийся и снова только стригущийся клиенты. На стрижку уходит 18 ± 6 мин, а на бритье 10 ± 2 мин.

Рис.2В.1. Дисциплина обслуживания "первым пришел - первым обслужен" при наличии клиентов 2-х типов.

Необходимо написать модель парикмахерской на GPSS, обеспечивающую сбор данных об очереди, образуемой ожидающими клиентами.

Метод построения модели. Сначала возникает желание попытаться построить такую модель с одним прибором и очередью в виде единственной последовательности блоков, но возникают вопросы: "Как один блок GENERATE можно использовать для моделирования двух типов приходов?" и "Как реализовать различие в обслуживании только стригущихся и бреющихся клиентов?" Довольно быстро можно прийти к выводу, что у нас пока нет средств для разработки такой модели в виде единственной последовательности блоков.

Однако такую систему легко промоделировать с помощью двух независимых сегментов или последовательностей. Одна из последовательностей моделирует обслуживание только стригущихся клиентов, а вторая - стригущихся и бреющихся. В каждой из двух последовательностей пара блоков QUEUE - DEPART описывает одну и ту же очередь, поэтому клиенты, проходящие в этих последовательностях, обеспечивают совместный сбор статистики. Таким же образом пара блоков SEIZE - RЕLEASE описывает в каждой из двух последовательностей один и тот же прибор и моделирует самого парикмахера. В сегменте только стригущихся блок ADVANCE используется для моделирования времени стрижки; в сегменте стригущихся и бреющихся пара последовательных блоков ADVANCE используется для моделирования затрат времени на бритье и далее на стрижку соответственно. При таком подходе моделировать систему довольно легко.

Таблица определений. Единица времени: 1 мин.

Элементы GPSS

Интерпретация

Транзакты:

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

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

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

Только стригущиеся клиенты

Стригущиеся и бреющиеся клиенты

Таймер

Приборы:

JOE

Парикмахер

Очереди:

JOEQ

Очередь, используемая для сбора статистики ожидания клиентов обоих типов

Обсуждение. Логика моделирования. Блок-схема, соответствующая разработанному подходу, представлена на рис.2В.2. Сегмент 1 моделирует обслуживание только стригущихся клиентов. Сегмент 2 моделирует обслуживание стригущихся и бреющихся клиентов. Сегмент 3 определяет логику для таймера.

Рис.2В.2. Блок-схема примера моделирования 2В.

Заметьте, что сегменты 1 и 2 содержат пару блоков QUEUE - DEPART, использующую одну и ту же очередь (JOEQ). Заметьте также, каким образом каждый из этих сегментов включает пару блоков SEIZE - RELEASE, использующую один и тот же прибор (JQE). Возможность ссылки на один и тот же прибор или очередь из нескольких пар блоков нами еще не была рассмотрена, но не существует причин, из-за которых этого нельзя было бы сделать. В самом деле, гибкость, достигаемая многократными ссылками на заданные элементы GPSS, становится из этого примера очевидной.

Распечатка программы.

100 SIMULATE

*Первый сегмент модели*

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

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

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

140 DEPART JOEQ ;Уход из очереди

150 ADVANCE 18,6 ;Обслуживание у парикмахера

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

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

*Второй сегмент модели*

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

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

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

210 DEPART JOEQ ;Уход из очереди

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

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

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

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

*Третий сегмент модели*

250 GENERATE 480 ;таймер (480 минут)

260 TERMINATE 1 ;Конец моделируемого времени

Распечатка результатов.

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 480.000 17 1 0

NAME VALUE

JOE 10001.000

JOEQ 10000.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 15 0 0

2 QUEUE 15 2 0

3 SEIZE 13 0 0

4 DEPART 13 0 0

5 ADVANCE 13 1 0

6 RELEASE 12 0 0

7 TERMINATE 12 0 0

8 GENERATE 8 0 0

9 QUEUE 8 1 0

10 SEIZE 7 0 0

11 DEPART 7 0 0

12 ADVANCE 7 0 0

13 ADVANCE 7 0 0

14 RELEASE 7 0 0

15 TERMINATE 7 0 0

16 GENERATE 1 0 0

17 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE.TIME AVAIL. OWNER PEND INTER RETRY DELAY

JOE 20 0.883 21.201 1 21 0 0 0 3

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

JOEQ 4 3 23 2 1.742 36.356 39.819 0

Обсуждение результатов моделирования.

Эти данные показывают суммарный эффект от обслуживания парикмахером клиентов обоих типов. Из ENTRIES (ЧИСЛО ВХОДОВ) видно, что парикмахер был занят всего 20 раз. Не делается никаких указаний, сколько из этих 20 клиентов относятся к типу только стригущихся, а сколько к другому типу. Выходные данные показывают, что парикмахер был занят 88,3% времени, но не указано, какая часть этого времени потрачена на обслуживание только стригущихся, а какая на стригущихся и бреющихся клиентов.

Аналогичным образом, статистические данные описывают поведение очереди модели также в агрегированном виде. Не делается различия между только стригущимися и стригущимися и бреющимися клиентами. В модели ничего не предпринято, чтобы такое различие сделать. Для того чтобы можно было осуществить такое различие, необходимо соответствующим образом переделать модель.

Корректировка модели

Предположим, что необходимо собрать статистику и по каждому типу клиентов (т. е. дифференцированным образом), и по обоим типам клиентов (т. е. агрегированным образом). Для сбора дифференцированной статистики рис. 2В.2 модели должен быть дополнен введением дополнительной очереди в сегмент 1 и в сегмент 2. Когда это будет сделано, модель сможет одновременно обслуживать три раздельные множества записей характеристик ожидания.

На рис. 2В.3 показана блок-схема рис. 2В.2 после ее модификации в соответствии со сделанными предложениями. Дополнительные очереди, названные ТYРЕ1 и ТYРЕ2, введены соответственно в сегмент 1 и в сегмент 2. Заметим, что когда клиент входит в сегмент 1, он присоединяется к очереди JOEQ, затем к очереди TYPE1, а уже затем пытается занять прибор. Если попытка успешна, то клиент уходит из очередей ТYРЕ1 и JOEQ, и начинается обслуживание блоком ADVANCE.

Рис.2В.3. Пример моделирования 2В с раздельными и общей очередями для пользователей 2-х типов.

При ожидании обслуживания, следовательно, только стригущиеся клиенты одновременно имеют запись в двух разных очередях. Одно из множеств записей существует только для стригущихся клиентов; другое множество обслуживает всех клиентов, ожидающих освобождения прибора, независимо от типа. То же самое можно сказать относительно стригущихся и бреющихся клиентов, моделирование обслуживания которых осуществляется в сегменте 2.

Важно отметить, что логика, присущая модели рис. 2В.3, не отличается от логики рис. 2В.2. Все равно существует только одна очередь клиентов, ожидающих парикмахера. Дисциплина выбора из очереди, реализуемая парикмахером, по-прежнему "первым пришел - первым обслужен".

Распечатка программы.

100 SIMULATE

*Первый сегмент модели*

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

120 QUEUE JOEQ ;Вход в очередь агрегированной статистики

125 QUEUE TYPE1 ;Вход в очередь разделенной статистики

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

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

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

150 ADVANCE 18,6 ;Обслуживание у парикмахера

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

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

*Второй сегмент модели*

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

190 QUEUE JOEQ ;Вход в очередь агрегированной статистики

195 QUEUE TYPE2 ;Вход в очередь разделенной статистики

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

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

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

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

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

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

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

*Третий сегмент модели*

250 GENERATE 480 ;таймер (480 минут)

260 TERMINATE 1 ;Конец моделируемого времени

Рис.2В.3. Распечатка программы примера моделирования 2В.

Распечатка результатов.

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 480.000 21 1 0

NAME VALUE

JOE 10002.000

JOEQ 10000.000

TYPE1 10001.000

TYPE2 10003.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 15 0 0

2 QUEUE 15 0 0

3 QUEUE 15 2 0

4 SEIZE 13 0 0

5 DEPART 13 0 0

6 DEPART 13 0 0

7 ADVANCE 13 1 0

8 RELEASE 12 0 0

9 TERMINATE 12 0 0

10 GENERATE 8 0 0

11 QUEUE 8 0 0

12 QUEUE 8 1 0

13 SEIZE 7 0 0

14 DEPART 7 0 0

15 DEPART 7 0 0

16 ADVANCE 7 0 0

17 ADVANCE 7 0 0

18 RELEASE 7 0 0

19 TERMINATE 7 0 0

20 GENERATE 1 0 0

21 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

JOE 20 0.883 21.201 1 21 0 0 0 3

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

JOEQ 4 3 23 2 1.742 36.356 39.819 0

TYPE1 2 2 15 1 1.178 37.705 40.398 0

TYPE2 2 1 8 1 0.564 33.827 38.660 0

Обсуждение результатов моделирования.

Рассмотрим подробнее распечатку результатов моделирования. Она выдает следующую информацию:

  1. Прибор JOE использовался в течение 83,3% времени, UTIL (НАГРУЗКА) = 0,883.

  2. Прибор JOE был занят обслуживанием 20 раз, ENTRIES (ЧИСЛО ВХОДОВ)=20.

  3. Среднее время интервала обслуживания прибора JOE равно 21,201 мин, AVERAGE TIME AVAIL. (СРЕДНЕЕ ВРЕМЯ ОБСЛУЖИВАНИЯ) = 21.201.

  4. Тот факт, что JOE был занят при завершении моделирования, соответствует ранее рассмотренному значению счетчика текущего содержимого, CURRENT COUNT = 1 для блока ADVANCE.

  5. В очереди JOE максимальное число клиентов равно 4 человека, МАХIMUM CONTENTS (МАКСИМАЛЬНОЕ СОДЕРЖИМОЕ) = 4, при чем максимальное число клиентов по обеим категориям клиентов составило по 2 человека.

  6. Числом входов в очередь является 23, ENTRY (ОБЩЕЕ ЧИСЛО ВХОДОВ) = 23.

  7. Среди этих 23 входов в очередь было 2 нулевых, ENTRY (0) (НУЛЕВЫХ ВХОДОВ) = 2.

  8. Среднее время нахождения в очереди на один вход (включая нулевые входы) равно 36,35 мин., AVERAGE TIME (СРЕДНЕЕ ВРЕМЯ) = 36,35.

  9. На конец рабочего дня в очереди осталось 3 человека, в том числе 2 человека – на стрижку, 1 человек на стрижку и бритье. CURRENT COUNT = 2 для блока QUEUE первого сегмента модели и 1 для второго сегмента модели.

Выводы.

Из рассмотренных результатов моделирования можно сделать следующие выводы:

За рабочий день парикмахерской было обслужено 20 клиентов. Парикмахер был нагружен оптимально и обслужил за 8 часов 20 клиентов, причем в конце рабочего дня 1 клиент находился в кресле мастера, а в очереди находилось три клиента. Таким образом, учитывая среднее время нахождения в очереди (36,35 мин.) что является длительным промежутком времени и число клиентов в очереди к концу рабочего дня, сеть смысл подумать об увеличении количества парикмахеров при данном потоке клиентов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]