5.1 Постановка задачи
Около супермаркета есть место для парковки 100 автомобилей. Если все места заняты, автомобиль покидает супермаркет. Время прихода покупателей с места парковки автомобиля в магазин подчиняется равномерному закону и лежит в интервале 6040 с. Магазин имеет 100 ручных тележек и 50 корзин для транспортировки купленных товаров. В магазине имеется пять кассовых аппаратов, но первый из них предназначен для быстрого обслуживания покупателей с единичными покупками. Поток покупателей, приходящих в магазин за покупками, экспоненциальный. Экспоненциальное (показательное) распределение вероятности f(x) с масштабным параметром s и смещением m представляется в следующем виде
. (1)
В противном случае оно равно 0. При этом известно, что смещение m равно нулю, а масштабный параметр s различен в разные интервалы времени. В интервале времени от 0 до 30 мин s равняется 60, от 30 до 90 мин s равняется 40, от 90 до 150 мин s равняется 80 и свыше 150 мин s равняется 120. Если покупается более 10 видов товаров, необходима тележка, в противном случае используется корзина. После этого покупатели подходят к стеллажам за покупками, число которых определяется с помощью датчика случайных чисел. Требуется определить параметры работы супермаркета. Моделирование следует производить в течение смены, равной 8 ч. Также нужно построить следующие гистограммы:
-
времени нахождения покупателей в системе;
-
числа покупок, сделанных в течение смены;
-
числа покупателей, посетивших супермаркет в течение смены.
5.2 Решение задачи на основе имитационной модели
Код программы в системе GPSS World:
Rmult 1 1187
Kassa_2 Equ 2
Kassa_N Equ 5
Time_Work Variable 8#60#60
N_Pokupok Variable (RN1@96+5)
Finance Variable (RN1@3+1)#40+150
Time_System Table M1,1000,1000,7
Pokupki Table P$Kol_pokupok,10,10,10
N_Pokupatel Table X$Pokupatel,100,50,12
Park Storage 100
Telejka Storage 100
Korzina Storage 50
Kassir Variable (P$Kol_pokupok)#2+P$Oplata
Time_mag Variable P$Kol_pokupok#100
Initial X$Pokupatel,0
****************************************************
Parking TRANSFER Both,,Lost
ENTER Park
ADVANCE 60,40
SAVEVALUE Pokupatel+,1
ASSIGN Kol_pokupok,V$N_Pokupok
ASSIGN Oplata,V$Finance
TEST LE P$Kol_pokupok,10,QTelejka
GATE SNF Korzina,QTelejka
******************************************************************************
QUEUE Korzina_Q
ENTER Korzina
DEPART Korzina_Q
ASSIGN Tara,Korzina
TRANSFER ,Magazin
******************************************************************************
QTelejka QUEUE Telejka_Q
ENTER Telejka
DEPART Telejka_Q
ASSIGN Tara,Telejka
***********************************************************
*********************************************************
Magazin ADVANCE V$Time_mag
TEST LE P$Kol_pokupok,10,Min_och
COUNT L Kassir_0,Kassa_2,Kassa_N,1,Q
TEST E P$Kassir_0,0,Min_och
*********************************************************
QUEUE Bistro_Q
SEIZE Bistro
DEPART Bistro_Q
ADVANCE V$Kassir
RELEASE Bistro
LEAVE P$Tara
TRANSFER ,Fin
***********************************************************
Min_och SELECT MIN Min_ochered,Kassa_2,Kassa_N,,Q
QUEUE P$Min_ochered
SEIZE P$Min_ochered
DEPART P$Min_ochered
ADVANCE V$Kassir
RELEASE P$Min_ochered
LEAVE P$Tara
***********************************************************
FIN TABULATE Time_system
TABULATE Pokupki
SAVEVALUE Pokupatel-,1
ADVANCE 60,50
LEAVE Park
TERMINATE
Lost TERMINATE
**************************************************
GENERATE (Exponential(1,0,60)),,,200
TRANSFER ,Parking
GENERATE (Exponential(1,0,40)),,1800,400
TRANSFER ,Parking
GENERATE (Exponential(1,0,80)),,5400,300
TRANSFER ,Parking
GENERATE (Exponential(1,0,120)),,9000
TRANSFER ,Parking
**************************************************
GENERATE V$Time_work ; Заявка - время работы супермаркета
TABULATE N_Pokupatel ; Формирование данных о числе покупателей
TERMINATE 1
Start 1 ; Запуск программы на выполнение
**************************************************
В результате моделирования были получены следующие значения параметров:
-
общие:
а) время окончания моделирования – 28800.000;
б) число блоков в модели – 53;
в) число каналов обслуживания – 5;
г) число накопителей – 3.
-
результаты моделирования для каналов обслуживания 2, 3, 4, 5 и BISTRO:
а) число входов – 86, 80, 75, 69, 25;
б) коэффициент использования – 0.930, 0.906, 0.853, 0.809, 0.208;
в) среднее время обслуживания – 311.450, 326.233, 327.448, 337.594, 240.160.
-
результаты функционирования очередей 2, 3, 4, 5, TELEJKA_Q, KORZINA_Q, BISTRO_Q:
а) число входов – 93, 87, 82, 75, 393, 35, 25;
б) число нулевых входов – 2, 3, 4, 2, 393, 35, 16;
в) среднее время пребывания транзакта в очереди – 1739.191, 1775.639, 1804.830, 1888.412, 0.000, 0.000, 82.109, ;
г) максимальное содержимое – 11, 11, 10, 10, 1, 1, 3;
д) среднее число входов – 5.616, 5.364, 5.139, 4.918, 0.000, 0.000, 0.071.
-
результаты функционирования накопителей PARK, TELEJKA, KORZINA:
а) максимальная вместимость — 100, 100, 6;
б) средняя вместимость — 91.459, 88.569, 1.315;
в) число входов – 428, 393, 35;
г) коэффициент использования – 0.915, 0.886, 0.026.
Требуемые гистограммы представлены на рисунках 3-5.
Р исунок 3 — Гистограмма времени нахождения покупателей в системе
Р исунок 4 — Гистограмма числа покупок
Р исунок 5 — Гистограмма числа покупателей
5.3 Выводы по результатам моделирования
По результатам работы модели можно сделать следующие выводы:
- время нахождения покупателей в системе изменяется по показательному закону;
- число покупок, совершаемых посетителями, примерно равно;
- покупатели приходят в супермаркет в начале рабочего дня.
Последнее условие неверно, однако вызвано несовершенством генератора покупателей, используемым в системе.
6 Моделирование системы управления запасами