
Управленческие решения / mat_Gelrud / Тема10
.docТема 10
Задачи массового обслуживания
Задачи массового обслуживания возникают в том случае, когда заявки на обслуживание (или требования) не могут быть выполнены в силу занятости обслуживающего оборудования или сама обслуживающая система оказывается бездействующей в силу отсутствия заявок. При моделировании данных задач мы будем использовать фундаментальные понятия теории вероятности, т.к. случайными оказываются поток требований или длительность времени обслуживания, или и то и другое. При решении этих задач приходится определять либо оптимальное число обслуживающих приборов, либо оптимальную скорость потока (или находить моменты поступления заявок).
Класс моделей, пригодных для решения подобных задач, и рассматривается в настоящей главе, которую называют еще теорией очередей.
Другая группа задач теории массового обслуживания состоит в определении последовательности, в которой ряд станций обслуживания выполняет имеющиеся заказы. Задачи этой группы получили название задач последовательного обслуживания или календарного планирования (теория расписаний) и рассматриваются в Теме 13.
При построении функции распределения вероятностей для длины очереди необходимо учесть ряд особенностей, присущих процессу образования очередей:
1. Порядок, в соответствии с которым заказы (клиенты в магазине, автомашины на погрузку и т.п.) поступают в очередь.
2. Количество обслуживающих единиц (станций), исполняющих заказы, и стратегию обслуживания, т.е. ограничения, наложенные на возможности и потребности обслуживания.
3. Последовательность обслуживания – дисциплина очереди. Дисциплина может определяться разными правилами обслуживания:
– «первым пришел – первым обслуживаешься»,
– «последним пришел – первым обслуживаешься»,
-
случайный отбор заявок,
-
отбор по критерию приоритетности.
4. Характер обслуживания и его длительность. Это – выход системы (обслуженные клиенты, загруженные автомашины и т.п.).
При решении задач, связанных с очередями, возможны две ситуации:
а) число заказов слишком велико; имеет место большое время ожидания (недостаточный объем обслуживающего оборудования);
б) поступает недостаточное число заказов; имеет место простой оборудования (избыток оборудования).
Необходимо найти оптимальное соотношение между потерями, вызванными простоем оборудования, и потерями из-за ожидания.
Найдем сначала среднюю длину очереди и вероятность появления очереди заданной длины на единственной станции обслуживания. Предположим, что скорость поступления и обслуживания случайны и не зависят от неограниченной длины очереди.
Модель 10.1.
Обозначим Рn(t) – вероятность образования очереди из n заказов (включая и находящийся в обслуживании) к моменту времени t, – средняя скорость появления заказов, – средняя скорость обслуживания. Рассмотрим простейший поток заказов, характеризующийся тем, что для t – элементарного (малого) отрезка времени вероятности поступления (или обслуживания) одного заказа пропорциональны длине этого отрезка, то есть равны соответственно t(или t), а вероятности появления или обслуживания более одного заказа предполагаются пренебрежимо малыми. Тогда вероятность того, что к моменту t + t в очереди будет находиться n заказов (n 0) можно представить в виде
Рn(t + t) = Р(А) +Р(В) +Р(С)+ Р(Д),
где А,В,С,Д – независимы и событие А заключается в том, что в момент t было n заказов и в течение интервала t не поступил новый заказ и не выполнен старый –
Р(А) = Рn(t)(1 –t)(1 – t);
событие В заключается в том, что в момент t было n+1 заказов и в течение интервала t не поступил новый заказ, но выполнен старый –
Р(В) = Рn+1(t)(1 –t)( t);
событие С заключается в том, что в момент t было n–1 заказов и в течение интервала t поступил новый заказ и не выполнен старый –
Р(С) = Рn-1(t)(t)(1 – t);
событие Д заключается в том, что в момент t было n заказов и в течение интервала t поступил новый заказ и выполнен один старый –
Р(Д) = Рn(t)(t)( t).
Складывая эти вероятности и упрощая, получаем
Рn(t + t) = Рn(t)(1 –t – t) + Рn+1(t)t + Рn-1(t)t + о(t), или
Рn(t + t) – Рn(t)/ t = Рn-1(t) + Рn+1(t) – ( + ) Рn(t) + о(t),
где о(t) является величиной более высокого порядка по сравнению с t , и потому ею можно пренебречь.
Полагая t0, получаем дифференциальное уравнение
dРn(t) / dt = Рn-1(t) + Рn+1(t) – ( + ) Рn(t) (n 0). (10.1)
Вероятность случая n = 0 выражается суммой вероятностей двух независимых событий:
Р(А) – вероятность того, что в момент t очереди нет и в течение интервала t новые заказы не поступают, т.е. Р(А) = Р0(t)(1 –t);
Р(В) –вероятность того, что в момент t в очереди имеется один заказ и в течение интервала t завершается его обслуживание, а новые заказы не поступают, т.е. Р(В)=Р1(t)(1–t) t. Складывая, находим
Р0(t + t) = Р0(t)(1 –t) + Р1(t) t + о(t), или
dР0(t) / dt = – Р0(t) + Р1(t). (10.2)
Уравнения (10.1) – (10.2), выведенные выдающимся советским математиком Колмогоровым А.Н., дают возможность найти все вероятности состояний очереди как функции времени, что является исходным пунктом для решения многих задач теории очередей. Решение этих уравнений связано с вычислительными трудностями, однако, в частном случае, когда Рn(t) не зависит от времени, задача решается легко. Этот случай называют предельным стационарным режимом, который существует при t , когда .
Предельная вероятность Рn имеет четкий смысл: она показывает среднее относительное время наличия очереди длиной n. Например, если Р0 = 1/2, то это означает, что в среднем половину времени очереди нет. Так как предельные вероятности постоянны, то их производные равны нулю, и потому для уравнений (10.1) –(10.2) имеем:
0 = Рn-1 + Рn+1 – ( + ) Рn (n 0), (10.3)
0 = – Р0 + Р1. (10.4)
Решение уравнений (10.3) – (10.4) может быть найдено методом последовательных подстановок с учетом того, чтоn=0 Рn = 1.
Из уравнения (10.4) находим Р1 = ( /) Р0.
Полагая в уравнении (10.3) n = 1 и подставляя найденное Р1, имеем Р2 = ( /)2 Р0. И вообще Рn = ( /)n Р0. Суммируя все вероятности
1= n=0 Рn = Р0 n=0 ( /)n,
и так как в правой части стоит сумма геометрической прогрессии с основанием = / 1, то n=0 n =1/(1 – ), откуда имеем
1 = Р0 /(1 – ), Р0 = (1 – ), и окончательно
Рn = n(1 – ). (10.5)
Величина =
/ называется
интенсивностью потока заявок или
интенсивностью нагрузки станции.
Она выражает среднее число заявок,
приходящих за среднее время обслуживания
одной заявки. Найдем n – среднюю длину
очереди. По определению
n = n=0
nРn.
(10.6)
Подставляя в (10.6) значение Рn из (10.5), находим
n = n=0
nn(1 – )
= (1 – )n=0
nn = (1 –
)(
n=0
n)
=
=(1 – )(1/(1 – )) = /(1 – )=/( – ). (10.7)
Найдем
tw – среднее время ожидания
обслуживания. Если средняя скорость
обслуживания равна ,
то среднее время обслуживания
ts=1/, и, при
средней скорости поступления заказов
, справедливо
n = (
tw + 1/), откуда
tw = n/
– 1/, и подставляя
(10.7)
tw = 1/(
– ) – 1/.
(10.8)
Пример
10.1. Пусть автомобили прибывают на
моечную станцию со средней интенсивностью
= 5 автомобилей в
час. Продолжительность выполнения работ
в среднем равна 10 мин., т.е.
=60/10=6 а/ч. Поскольку
= /
= 5/6 1, система может
функционировать в стационарном режиме.
Найдем среднее время ожидания обслуживания
tw = 1/( –)–1/
=1/(6–5)–1/6 =5/6 (50 мин), тогда среднее число
автомобилей, ожидающих обслуживания,
равно nw=tw
=25/6=4.17 ≈ 4. Если подготовить стоянку
для ожидающих автомобилей на 4 места,
то потеряем клиента, прибывшего сверх
среднего количества. Поэтому для
«разумного» обеспечения местами
прибывающих на мойку автомобилей
зададимся целью обеспечить одновременно
стоянку, например, 80% клиентов. Это
эквивалентно выполнению условия
Р0 + Р1 + Р2 + …+ Рw ≥ 0.8,
где w – подлежащее определению число стоянок. Используя (10.5)
(1 – ) + (1 – ) +…+ w(1 – ) ≥ 0.8.
учитывая, что
(1 – ) + (1 – ) +…+ w(1 – ) =(1 – )(1 + +…+ w) = 1 –w+1,
получаем w+1 ≤ 0.2 и окончательно w ≥ ln(0.2)/ln(5/6) – 1 = 7.8 ≈ 8.
Таким образом, для одновременного размещения по крайней мере 80% прибывающих автомобилей минимальное число мест для стоянок должно быть в два раза больше среднего числа ожидающих обслуживания автомобилей.
Важной характеристикой является также доля времени, в течение которого станция простаивает. Вероятность такого события
Р0 =1 – ≈ 0.17.
Вероятности того, что на станции обслуживается ровно один автомобиль (или два – один обслуживается , второй ждет) равны соответственно:
Р1 =(1 – ) ≈ 0.139,
Р2 = 2(1 – ) ≈ 0.116.
Модель 10.2.
Рассмотрим случай ограниченной очереди, когда при наличии в системе N требований ни одна из дополнительных заявок на обслуживание не принимается либо сам клиент отказывается присоединиться к очереди из-за отсутствия места в блоке ожидания. Формулы для параметров такой системы массового обслуживания выводятся аналогично предыдущим, при этом суммируется не бесконечная, а конечная геометрическая прогрессия от 0 до N.
Рn = n(1 – )/(1 – N+1), n ≤ N (10.9)
Рn = 0, n > N.
Следует отметить, что в этой модели параметр = / не обязательно должен быть меньше единицы, поскольку число допускаемых в систему требований ограничено, и для = 1 Рn =1/(N +1).
Выражение для среднего числа находящихся в системе заявок принимает следующий вид
n = (1 – (N+1)N
+ NN+1 )/(1 –
)/(1 – N+1),
для ≠1, (10.10)
N/2, для =1.
Поскольку вероятность того, что заказ не имеет возможности попасть в очередь, равняется РN , доля заказов, поступающих в систему, равняется 1 – РN. Отсюда характеристики системы имеют вид:
Для nw – среднее число заказов,
ожидающих обслуживания:
nw =
n
– (1 – РN )/,
(10.11)
для tw – среднее время ожидания
обслуживания:
tw = nw/
/(1 – РN ),
(10.12)
Пример
10.2. Пусть в условиях примера 10.1 моечная
станция располагает пятью местами для
стоянки ожидающих автомобилей.
В данном примере N =5+1=6, =5/6, а
РN =(5/6)6(1 – 5/6)/(1 – (5/6) 7) = 0.0774, N = 6.
Отсюда следует, что частота случаев, когда автомобиль не попадает на моечную станцию равняется РN =5*0.0774=0.387 автомобиля в час, т.е. при 12-часовом режиме работы моечная станция теряет за день 4.6 автомобиля. Применяя (10.10) – (10.12), получаем
n = (5/6)(1 – 7(5/6)6 + 6(5/6)7)/(1 –
5/6)/(1 – (5/6)7)= 2.29,
nw =2.29 – 5(1 –
0.0774)/6=1.52,
tw =1.52/5 /(1 –
0.0774)=0.33 часа( 20 мин.).
Таким образом, при введении ограничения на количество мест для стоянки (N =6), среднее время ожидания обслуживания сократилось на полчаса. Это было достигнуто за счет «потери» в среднем 4.6 автомобиля в день из-за недостаточности мест для стоянки. Вычислим вероятность того, что в системе обслуживаются 0,1 или 2 автомобиля:
Р0 =(1 – 5/6)/(1 – (5/6) 7) = 0.231,
Р1 =(5/6)(1 – 5/6)/(1 – (5/6) 7) = 0.193,
Р2 =(5/6)2(1 – 5/6)/(1 – (5/6) 7) = 0.160.
Все вышеизложенное справедливо для случая, когда случайные величины – время поступления заказов ta и время обслуживания ts подчиняются экспоненциальному закону распределения, т.е.
p(ta) = e–ta, p(ts) = e–ts.
Модель 10.3.
Пусть теперь время обслуживания ts
подчиняется некоторому закону
распределения со средним ts и
дисперсией 2ts.
Тогда справедливы формулы Поллачека –
Хинчина:
n = ts
+ (2(
ts2 +
2ts)/2/(1
–ts).
(10.13)
Для nw – среднее число заказов,
ожидающих обслуживания:
nw =
n
– ts,
(10.14)
для tw – среднее время ожидания
обслуживания:
tw = nw/.
(10.15)
В
частном случае, когда продолжительность
обслуживания является постоянной, имеем
ts=1/, 2ts
=0, и (10.13) преобразуется в
n = /
+ (/)2/2/(1
–/).
(10.16)
Пример 10.3. Пусть в условиях примера 10.1 мойка осуществляется автоматически, так что продолжительность обслуживания постоянна
и равна 1/, тогда получаем:
n = 5/6 + (5/6)2/2/(1
–5/6) = 2.92,
nw =
2.92
– 5/6 = 2.08,
tw =2.08/5 = 0.42 (25.2
мин.).
Отметим, что, хотя интенсивности входного и выходного потоков в данном примере совпадают с соответствующими показателями в примере 10.1 (со случайной продолжительностью обслуживания), среднее время ожидания обслуживания оказалось в два раза меньше.
Полученный результат выглядит вполне логичным, т.к. при постоянной продолжительности обслуживания режим функционирования системы массового обслуживания характеризуется большей определенностью, что и приводит к уменьшению значений рассматриваемых характеристик.
Модель 10.4.
Рассмотрим теперь случай, когда скорость обслуживания n зависит от неограниченной длины очереди (клиенты могут обслуживаться параллельно) и пусть n = n, где – скорость обслуживания одного клиента. Модели такого типа называют моделями самообслуживания. Тогда решение уравнений, аналогичных (10.1) – (10.2), при начальных условиях Р0 (0)= 1, Рn (0)= 0 (n > 0) имеет вид:
Рn (t)= e–n / n, n=0,1,2,…, (10.17)
где = (/)(1 – е–t). Начальные условия имеют простой смысл – в момент открытия станции обслуживания очереди нет.
В стационарном режиме (при t)
Рn = e–/(/)n / n. (10.18)
Таким образом, вероятность того, что на станции находятся n клиентов спустя достаточно длинный промежуток времени задается распределением Пуассона со средним значением /. Нетрудно также убедиться, что для этой модели
n = /,
ts =1/, nw
=0,
tw
=0.
Пример 10.4. Пусть на рассматриваемой нами мойке клиенты сами моют машины, причем воды и тряпок хватает на всех. Пусть по-прежнему =5 – средняя скорость появления автомашин, среднее время помывки – 10 мин.(1/6 часа), т.е. =6 – средняя скорость обслуживания одной машины. Получаем тогда Р0 = e–5/6 = 0.43, (т.е. в этом примере 43% времени станция простаивает), Р1 = e–5/6(5/6) =0.36, (36% времени на мойке находится ровно одна машина), Р2 =0.15, Р3 =0.02 и т.д. В случае наплыва клиентов (пусть, например, =30) получим Р0 = e–30/6 =0.007 (станция практически все время загружена), а при =1, Р0=e–1/6=0.85.
Приведенный выше пример стал бы реалистичнее, если бы было установлено предельное число автомашин, которое моечная станция может обслужить.
Модель 10.5.
Пусть параллельно могут обслуживаться не более s клиентов. Такие модели называются многоканальными (s – число каналов обслуживания). Здесь n = (n0), n = n при n s , n = s при n s.
Для данной модели расчетные формулы (Эрланга) имеют вид:
Рn = Р0(/)n / n (n s), (10.19)
Рn = Р0(/)n / s/sn-s (n s), (10.20)
Р0 = 1/(s-1(/)n/n + (/)s/s/(1 –/s)). (10.21)
n=0
Для nw – среднее число клиентов,
ожидающих обслуживания:
nw =
Р0(/)s+1/(s–1)/(s–/)2,
(10.22)
для общего числа клиентов, находящихся в системе, имеем
n = nw +
/,
(10.22/1)
для tw – среднее время ожидания
обслуживания:
tw = nw/.
(10.23)
Вероятность обязательного пребывания в очереди равна вероятности занятости всех каналов обслуживания. Обозначим ее через W. Тогда
W= Р0(/)s/(s–1)/(s–/). (10.24)
Известный интерес представляет вероятность того, что суммарное время обслуживания и его ожидания превзойдет заданную величину t. Обозначим эту вероятность через Р(>t).
Р(>t) = e–t(1 + (W/s)(1 – e–st(1–/s–1/s))/(1–/s–1/s)). (10.25)
Вычисления
в соответствии с данной моделью могут
оказаться весьма громоздкими, тогда
используют приближенные методы. Например,
при /
« 1 можно принять Р01
– /,
nw (/)s+1/s2,
тогда как для значений / , близких к 1,
Р0
(s – /)(s
– 1)! /ss и nw
(/)/(s
– /).
Пример 10.5. Пусть на нашей любимой моечной станции только 3 площадки для мойки, а мест для ожидания неограниченное число. Пусть как и прежде = 5 и =6. Имеем / =0.833, s =3 и
Р0 = 1/(0.8330/0+0.8331/1+0.8332/2!+ 0.8333 /(3!(1 –0.833/3))) = 0.432,
nw
=0
.432*0.8334/2/(3–0.833)2
= 0.022,
tw =0.022/5 = 0.0044
часа.(16 сек.)
Таким образом, при данных условиях 43.2% времени станция простаивает, среднее время ожидания обслуживания составляет 16 сек. С точки зрения клиента отлично, но простой оборудования влетает в копеечку. Кроме того, имеем:
Р1 =0.40, Р2 =0.15, Р3 =0.04.
Вычислим параметры системы при 2 моечных площадках.
Р0 = 1/(0.8330/0+0.8331/1+ 0.8332 /(2!(1 –0.833/2))) = 0.412,
nw =
0.412*0.8333/1/(2–0.833)2
= 0.17,
tw = 0.17/5 = 0.034
часа.(2 мин.)
Простой составляет 41.2% времени, среднее время ожидания 2 мин.
Сравним с результатами примера 10.1, где при наличии только одной моечной площадки простой составлял 17%, а среднее время ожидания 50 мин. В силу малого времени ожидания параметры W и Р(>t) в данном примере интереса не представляют. Р1 =0.34, Р2 =0.14, Р3 =0.06.
Модель 10.6.
Рассмотрим теперь модель, которая отличается от предыдущей только тем, что число мест для ожидания обслуживания ограничено величиной k. Здесь n = при 0≤n < k+s и n =0 при n k+s; n = n при n s , n = s при s ≤ n ≤ s+k.
Формулы для характеристик модели имеют вид:
Рn = Р0(/)n / n (n s), (10.26)
Рn = Р0(/)n / s/sn-s (s ≤ n ≤ s+k ), (10.27)
Р0=1/(s-1(/)n/n + (/)s(1–(/s)k+1)/s!/ (1–/s)), /≠s, (10.28)
n=0
Р0=1/(s-1(/)n/n + (/)s(k+1)/s!), /=s, (10.29)
n=0
Для nw – среднее число клиентов,
ожидающих обслуживания:
nw=Р0(/)s+1(1–(/s)k–k(/s)k(1–/s))/(s–1)/(s–/)2,
/≠s,
(10.30)
nw=Р0(/)sk(k+1)/(2s),
/=s,
(10.31)
для tw – среднее время ожидания
обслуживания:
tw =nw//(1–
Рk+s).
(10.32)
Пример 10.6. Пусть в дополнение к последнему примеру наша моечная станция располагает двумя местами для ожидания обслуживания (k=2 и s=2). Тогда получим:
Р0=1/(0.8330/0+0.833/1!+0.8332(1–(0.833/2)2+1)/2!/(1–0.833/2)) = 0.423,
nw=0.423*0.8333(1–(0.833/2)2–2(0.833/2)2(1–0.833/2))/1/(2–0.833)2=0.25,
и
tw =0.25/5/(1– Р2+2)= 0.25/5/(1 –
0.423*0.8334 /2/22)=0.05
час.
Для двух каналов обслуживания входной поток заказов очень слабый, изменим его, пусть =12, тогда /=2= s и мы имеем
Р0=1/(20/0 +2/1!+22(2+1)/2!)= 0.111,
nw=0.111*22*2*3/(2*2)=0.67,
tw=0.67/12/(1–Р2+2)=0.67/12/(1–0.111*24/2/22)=0.07
ч.
При таком входном потоке простой оборудования составляет 11.1%, а среднее время ожидания обслуживания 0.07*60= 4.3 мин.
Рассмотрим более крупный пример, на котором нагляднее иллюстрируются формулы моделей 10.5 и 10.6.
Пример 10.7.
Вариант 1. Имеем моечную станцию с 4 рабочими площадками для мойки и с неограниченным количеством мест для ожидания. Пусть =20 автомобилей в час, время обслуживания одного автомобиля 11.5 мин. (=60/11.5=5.217), тогда /=20/5.217=3.83 и s=4. Используем 10.21:
Р0 = 1/(3.830/0!+3.83/1!+3.832/2+3.833/3+3.834/4/(1–3.83/4))=0.0042.
Из (10.22)–(10.23) получаем среднее время ожидания :
tw
=0.0042*3.835/3!/(4–3.83)2/20= 1 час.
Вероятность обязательного пребывания в очереди (10.24):
W= 0.0042*3.834/3/(4–3.83)=0.886.
Найдем вероятность того, что суммарное время обслуживания и ожидания превзойдет величину t=0.5 (30 мин.). Применим (10.25):
Р(>0.5) =e–5.217/2(1+0.886/4)(1–e–5.217*4/2(1–3.83/4–1/4))/(1–3.83/4–1/4))=0.7.
Таким образом,88.6% клиентов обязательно проходят через очередь, причем 70% находятся в ней более получаса (правда, включая время обслуживания).
Вариант 2. Добавим к варианту 1 ограничение на количество мест для ожидания. Пусть k=16, тогда из (10.28) находим сначала
Р0=1/(1+3.83+3.832/2!+3.833/3+3.834(1–(3.83/4)17)/4!/(1–3.83/4))=0.00759
и, следовательно, из (10.30) получаем
nw=0.00759*3.835(1–(3.83/4)16–16(3.83/4)16(1–3.83/4))/3/(4–3.83)2=5.82.
Поскольку Р20=3.8320*0.00759/4!/416=0.03397, используя (10.32), имеем для среднего времени ожидания обслуживания:
tw =5.82/20/(1–0.03397)
=0.301 часа.(18 мин.)
Сравнивая варианты 1 и 2, видим, что при ограничении мест для ожидания, продолжительность ожидания сокращается более чем в три раза, причем это достигается ценой потери около 3.4% потенциальных клиентов (Р20=0.03397).