- •Министерство образования
- •Имитационное моделирование систем массового обслуживания
- •Порядок выполнения лабораторных работ
- •Лабораторная работа n1 моделирование систем массового обслуживания с одним прибором
- •Simulate
- •Simulate
- •Simulate
- •Лабораторная работа n2 mоделирование многоканальных систем
- •С и с т е м а б е з о т к а з о в
- •Лабораторная работа n3 моделирование многофазных систем
- •0,0/0.1,0.104/0.2,0.222/0.3,0.355/0.4,0.509
- •Фрагмент программы:
- •Лабораторная работа n4 mоделирование сложных систем
- •График функции покрытия
- •М о д е л и р о в а н и е с л о жн ы х с и с т е м с п о м о щ ь ю с е т е й п е т р и
- •Литература
- •Варианты заданий
Лабораторная работа n3 моделирование многофазных систем
Условия выполнения задания: введение ограничений на параметры обслуживания; поиск оптимального варианта решения задачи в соответствии с выбранными критериями; использование пуассоновского распределения входного потока.
В большинстве работ, посвященных рассмотрению систем с несколькими последовательно размещенными приборами, исследование ограничивается случаем, соответствующим пуассоновскому входящему потоку и экспоненциальному времени обслуживания заявок в порядке их поступления. Это связано с определенными трудностями. При изучении такого рода систем важно знать: выходящий поток прибора является таким же по распределению, что и входящий.
Методические указания
В GPSS выборка равномерного распределения формируется посредством генератора случайных чисел с помощью блока GENERATE. Формирование экспоненциального распределения осуществляется с помощью вычисляемого объекта - "функции", а моделирование наступления событий производится блоком GENERATE. Пуассоновское распределение - простейший поток событий характерен тем, что интервал времени Т между двумя соседними событиями есть непрерывная случайная величина, распределенная по экспоненциальному закону. Формирование пуассоновского распределения при моделировании основано на формировании экспоненциально распределенных интервалов между событиями.
Блок GENERATE создает транзакты, входящие в модель. В поле А задается среднее время между поступлением отдельных транзактов. Это время может быть изменено с помощью модификатора в поле В. Модификаторы могут быть двух типов: интервал и функция. Модификатор-интервал используется, когда время между поступлением транзактов распределено равномерно в интервале (А-В, А+В). Например: GENERATE 3,1 (блок генерирует транзакты в интервале (2,4) единиц времени). Модификатор-функция используется, если интервал времени между поступлением транзактов имеет не равномерное распределение. Интервал времени между транзактами определяется умножением среднего на значение функции-модификатора.
Например: GENERATE 4,FN2 (транзакты генерируются через 4*FN2 единиц времени). Функция-модификатор может иметь значения любого распределения (нормального, экспоненциального, и т.п.). Например,
EPS FUNCTION RN1,C5
0,0/0.1,0.104/0.2,0.222/0.3,0.355/0.4,0.509
GENERATE 10,FN$EPS
Длина интервала времени задержки блока ADVANCE вычисляется так же, как в блоке GENERATE. Например, ADVANCE 500,FN$EPS.
С и с т е м а и з п о с л е д о в а т е л ь н ы х п р и б о р о в
Сформулируем задание для системы массового обслуживания – парикмахерской так, чтобы она представляла многофазную систему.
Постановка задачи
В парикмахерскую с 3 мастерами приходят клиенты двух типов. Время прихода клиентов первого и второго типа распределено по экспоненциальному закону со средним значением 18 и 35 минут, соответственно. Клиенты первого типа сначала бреются, потом делают массаж головы и затем стригутся. Клиенты второго типа приходят на массаж головы, а затем стригутся. Первый мастер бреет, второй делает массаж, а третий стрижет. На бритьё уходит 16 минут, массаж головы и стрижка клиентам первого типа производится в течение 20, 23 минут, соответственно, а клиентам второго - массаж 30 минут, стрижка 23 минуты. Смоделировать работу парикмахерской в течение 8 часового рабочего дня без перерыва.
Функциональная схема системы

Клиенты
второго типа
Line22
Line1
Line21 Line31
М1 М2 М3













Клиенты первого типа Line32
Ограничения на параметры системы
Бритье первым мастером М - (10 –20); массаж вторым мастером М2 для клиентов первого и второго типа - (20– 30); стрижка третьим мастером М3 для клиентов первого и второго типа - (20–30).
Таблица определений
-
Элементы GPSS
Назначение
Транзакты:
1-й сегмент
Обслуживание клиентов 1-го типа
2-й сегмент
Обслуживание клиентов 2-го типа
3-й сегмент
Таймер
Приборы:
M1
Мастер по бритью
M2
Мастер, делающий массаж
M3
Мастер по стрижке
Очереди:
LINE1
Клиенты, приходящие бриться к первому мастеру
LINE21
Клиенты 1-го типа на массаж ко второму мастеру
LINE22
Клиенты 2-го типа на массаж ко второму мастеру
LINE31
Клиенты 1-го типа на стрижку к третьему мастеру
LINE32
Клиенты 2-го типа на стрижку к третьему мастеру
Исходный текст программы
SIMULATE
EXPON FUNCTION RN8,C24
0,0/0.1,0.104/0.2,0.222/0.3,0.355/0.4,0.509/0.5,0.69/0.6,0.915/0.7,1.2/0.75,
1.38/0.8,1.6/0.84,1.83/0.88,2.12/0.9,2.3/0.92,2.52/0.94,2.81/0.95,2.99/0.96,
3.2/0.97,3.5/0.98,3.9/.99,4.6/.995,5.3/.998,6.2/.999,7.0/1.0,8.0
GENERATE 18,FN$EXPON
QUEUE LINE1
SEIZE M1
DEPART LINE1
ADVANCE 16,FN$EXPON
RELEASE M1
QUEUE LINE21
SEIZE M2
DEPART LINE21
ADVANCE 20,FN$EXPON
RELEASE M2
QUEUE LINE31
SEIZE M3
DEPART LINE31
ADVANCE 23,FN$EXPON
RELEASE M3
GOTO PAR
GENERATE 35,FN$EXPON
QUEUE LINE22
SEIZE M2
DEPART LINE22
ADVANCE 30,FN$EXPON
RELEASE M2
QUEUE LINE32
SEIZE M3
DEPART LINE32
ADVANCE 23,FN$EXPON
RELEASE M3
PAR TERMINATE
GENERATE 480
TERMINATE 1
START 1
END
Выходные данные программы
Facility Average Number Average
utilization entries time/tran
M1 .85 26 15.78
M2 .93 20 22.41
M3 .86 18 22.86
Queue Maximum Average Total Zero Percent
(AD set) contents contents entries entries zeros
LINE1 1 .00 26 26 100.00
LINE21 12 5.98 25 1 4.00
LINE22 7 3.17 13 0 .00
LINE31 1 .11 13 1 7.69
LINE32 1 .00 6 6 100.00
Queue Average $Average Current
(AD set) time/trans time/trans contents
LINE1 .00 .00 0
LINE21 114.83 119.61 12
LINE22 116.93 116.93 6
LINE31 4.12 4.47 1
LINE32 .00 .00 0
По выходным данным программы видно, что второй мастер перегружен. Скорректируем работу парикмахерской, уменьшив время обслуживания вторым мастером для клиентов 1-го типа до 18 минут, для клиентов 2-го типа до 25 минут.
Результат выполнения измененной программы
Queue Maximum Average Total Zero Percent
(AD set) contents contents entries entries zeros
LINE1 1 .00 26 25 96.15
LINE21 11 5.16 26 1 3.85
LINE22 6 2.79 13 0 .00
LINE31 2 .76 15 1 6.67
LINE32 1 .34 7 1 14.29
Очередь ко второму мастеру М2 уменьшилась, но недостаточно. Добавим параллельно второму мастеру М2 еще одного мастера М4, который будет делать массаж головы за 30 минуты.
