§61 АНАЛИЗ МАРКОВСКИХ СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ В этом параграфе мы рассмотрим применение процесса гибели и размножения к анализу систем массового обслуживания (СМО), которые являются адекватными математическими моделями многих объектов в технике, экономике, природе и обществе. Довольно эффективны подходы теории массового обслуживания для описания процессов в электронных вычислительных машинах, их отдельных устройств или, наоборот, в компьютерных системах и сетях, составленных из них. Общая модель обслуживания имеет следующую структуру. На некоторое устройство (СМО) в случайные моменты времени поступают заявки и требуют какоголибо рода обслуживания. Под термином «заявки» можно понимать, например, запросы, поступающие на сервер компьютерной сети; корабли, приходящие в порт, или самолеты, прилетающие в аэропорт; клиентов, требующих обслуживания в банках, страховых компаниях, магазинах; неисправные машины, ожидающие ремонта и т. д. Употребление того или иного термина часто определяется характером решаемых прикладных задач. Вместо термина «заявка» поэтому используют также термин «запрос», «вызов», «требование», «клиент», а вместо термина «обслуживающее устройство» – «линия», «канал», «прибор». СМО классифицируются по следующим признакам. 1. Входящий поток заявок, для задания которого необходимо знать распределение интервалов времени между моментами поступления заявок. Мы будем рассматривать СМО с простейшим (пуассоновским) потоком заявок, т. е. когда моменты поступления заявок образуют простейший поток событий (пример 9.7), в котором интервалы между моментами поступления заявок распределены по экспоненциальному закону с параметром λ. 2. Распределение времен обслуживания заявок. Будем предполагать, что длительности обслуживания заявок распределены экспоненциально с параметром µ . 3. Количество линий обслуживания. Будем рассматривать однолинейные и многолинейные СМО. 4. Дисциплина обслуживания заявок. Дисциплиной обслуживания называется правило, в соответствии с которым на обслуживание выбирается заявка из числа ожидающих обслуживания. В большинстве моделей принята дисциплина «первый пришел – первый обслуживается» – прямой порядок обслуживания, когда заявки обслуживаются в той последовательности, в которой они поступают на вход системы. Все СМО, которые будут рассмотрены в этой главе, такого типа. Для обозначения достаточно простых СМО, анализируемых в этом параграфе, обычно используют символику, введенную английским математиком Кендаллом: A / B / n / N . Буква A обозначает тип входящего потока заявок, например, если A = M , то входящий поток заявок является простейшим. Буква B обозначает тип распределения времен обслуживания заявок в линиях, которые мы будем считать идентичными. Например, B = M означает одинаковое экспоненциальное обслуживания для всех линий СМО. Число обслуживания, а распределение времен обозначает количество линий n N – число мест ожидания в очереди. В случае N =0 заявки, поступающие в систему в моменты времени, когда все линии заняты обслуживанием других заявок, уходят из системы без ожидания (теряются). Поэтому такие СМО называются системами с потерями. Если же N = ∞ , все заявки терпеливо ожидают начала обслуживания, соответствующее СМО называются системами с ожиданием. При этом последний символ в обозначениях Кенделла обычно опускается. Если 0 < N < ∞ , СМО называется системой с ограниченным числом мест ожидания. Пусть ξ(t ) – число заявок в системе (в очереди и на обслуживании) в момент времени t . Вероятностное распределение ξ(t ) после момента t определяется: а) числом заявок в системе в момент времени t , б) моментами поступления заявок после момента t , в) моментами окончаний обслуживания заявок после момента t . Рассмотрим СМО с простейшим входящим потоком заявок и экспоненциальным обслуживанием. В силу «отсутствия памяти» у экспоненциального распределения (см. §10), моменты поступления заявок после момента t не зависят от предыстории системы до момента t . Аналогично, моменты окончания обслуживания заявок после момента t не зависят от предыстории системы до момента t . Поэтому вероятностное поведение ξ(t ) после момента t зависит только от ξ(t ) и не зависит от поведения ξ(t ) до момента t . Следовательно ξ(t ) – цепь Маркова с конечным или счетным числом состояний. Такие СМО называются марковскими. p j (t ) = P(ξ(t ) = j ), j ∈ X , нужно решить Для систему нахождения дифференциальных вероятностей уравнений Колмогорова для безусловных вероятностей состояний. В большинстве рассматриваемых СМО ξ(t ) является процессом гибели и размножения со следующим графом переходом (рис. 35): λ0 0 λ1 1 µ1 λ n −1 2 . . n-1 . µ2 λn n µn n+1 . . . µ n +1 Рис. 35. Вершины данного графа обозначают состояния СМО, а дуги возможные переходы из состояния в состояние. При этом каждой дуге приписывается некоторый вес, равный интенсивности соответствующего перехода. В случае, если существует стационарный режим, то стационарные вероятности состояний p j , j ∈ X , находятся из системы уравнений равновесия (11.22), которую можно переписать в виде λ 0 p 0 = µ1 p1 , (11.25) (λ j + µ j ) p j = λ j −1 p j −1 + µ j +1 p j +1 , j = 1, 2, … . (11.26) Вычитая из уравнения (11.26) при j = 1 уравнение (11.25), получаем λ 1 p1 = µ 2 p 2 . Далее, вычитая из уравнения (11.26) при j = 2 последнее, получим λ 2 p 2 = µ 3 p3 . Продолжая этот процесс, будем иметь λ n −1 p n −1 = µ n p n , n = 1, 2, … . Для составления уравнений (11.27) можно (11.27) использовать следующую геометрическую интерпретацию и понятие потока вероятности (см. §59). Проведем в графе вертикальное сечение между двумя состояниями n − 1 и n (рис. 11.1). Тогда поток вероятности через это сечение слева λ n −1 p n −1 в стационарном режиме равен потоку вероятности через это сечение справа µ n p n . Пусть в систему поступает простейший поток заявок с параметром λ . Как следует из примера 6.3, λ является средним числом заявок, поступающих в единицу времени, поэтому λ характеризует интенсивность простейшего потока заявок. Аналогично, если µ – параметр экспоненциального распределения времен обслуживания заявок, то µ −1 является средним временем обслуживания заявок, а µ характеризует интенсивность обслуживания заявок, если линия работает без перерыва. Введем следующие обозначения: пусть a k (∆t ) – вероятность поступления k заявок за время ∆t , a ≥ 2 (∆t ) – вероятность поступления двух или более заявок за время ∆t. Из формулы (6.6) следует, что a k (∆t ) = (λ∆t ) k −λ∆t e , k = 0, 1, 2, ... . k! Поэтому на основании этой формулы и свойства ординарности простейшего потока: a 0 (∆t ) = e − λ∆t = 1 − λ∆t + o(∆t ), (11.28) a1 (∆t ) = λ∆te − λ∆t = λ∆t + o(∆t ), (11.29) a ≥ 2 (∆t ) = o(∆t ). (11.30) Рассмотрим однолинейную СМО с экспоненциальным обслуживания заявок интенсивностью µ . Пусть bk (∆t ) с – условная вероятность того, что, начиная с определенного момента, за время ∆t будет обслужено k заявок при условии, что в указанный момент линией обслуживалась некоторая заявка; b≥ k (t ) – аналогичная вероятность обслуживания k и более заявок. Тогда b≥1 (∆t ) = 1 − e − µ∆t = 1 − (1 − µ∆t + o(∆t )) = = µ∆t + o(∆t ), b0 (∆t ) = 1 − b≥1 (∆t ) = 1 − µ∆t + o(∆t ). Если бы линия работала непрерывно, то моменты окончаний обслуживания (11.31) заявок образовывали бы простейший поток с параметром µ и вероятность b≥ 2 (∆t ), которую при ~ данном предположении обозначим через b≥ 2 (∆t ), была бы в силу ординарности равна o( ∆t ) . Следовательно ~ b≥ 2 (∆t ) ≤ b≥ 2 (∆t ) = o( ∆t ), (11.32) b1 (∆t ) = b≥1 (∆t ) − b≥ 2 (∆t ) = µ∆t + o(∆t ). (11.33) Рассмотрим теперь n -линейную СМО, у которой n идентичных линий работают независимо друг от друга. Обозначим через bk ( n ) (∆t ) вероятность того, что в такой системе за время ∆t будет обслужено k заявок. Поскольку линии работают независимо, то b0 ( n) (∆t ) = b0 (∆t )b0 (∆t ) ⋅ ... ⋅ b0 (∆t ) = = (1 − µ∆t + o(∆t )) n = 1 − nµ∆t + o(∆t ). (11.34) Событие {в n -линейной СМО за время ∆t обслужилась ровно одна заявка} равносильно событию {за это время заявка обслужилась в некоторой одной линии данной СМО, а в остальных линиях завершения обслуживания заявок не произошло}. Поэтому, используя формулу полной вероятности, будем иметь b1 (n) (∆t ) = b1 (∆t )b0 (∆t ) ⋅ ... ⋅ b0 (∆t ) + b0 (∆t )b1 (∆t ) ⋅ ... ⋅ b0 (∆t ) + ... + + b0 (∆t ) ⋅ ... ⋅ b0 (∆t )b1 ( ∆t ) = n ⋅ b1 (∆t )[b0 (∆t )] n −1 = nµ∆t + o(∆t ), (11.35) и b≥ 2 (n) (∆t ) = 1 − b0 (n) (∆t ) − b1 (n) (∆t ) = o(∆t ), (11.36) где b≥ 2 ( n ) (∆t ) – вероятность того, что в n -линейную СМО за время ∆t будет обслужено более одной заявки. Рассмотрим некоторые простейшие СМО. Система М / М / 1. Определим вероятности переходов для процесса ξ(t ) . Переход процесса ξ(t ) из состояния i в состояние i − 1 за время ∆t означает, что в системе за это время должно обслужиться на одну заявку больше, чем поступило. Следовательно, из формулы полной вероятности имеем ∞ p ii −1 (∆t ) = a 0 (∆t )b1 (∆t ) + ∑ a k (∆t )bk +1 (∆t ). k =1 ∞ Но, так как ∑ a k (∆t )bk +1 (∆t ) ≤ b≥ 2 (∆t ) , поскольку a k (∆t ) ≤ 1, k = 1,2,... , то из (11.28), (11.32), k =1 (11.33) следует, что p ii −1 (∆t ) = µ∆t + o(∆t ), i ≥ 1. (11.37) Аналогично, переход процесса из состояния i в состояние i + 1 за время ∆t означает, что в систему должно за это время поступить на одну заявку больше, чем обслужиться. Поэтому ∞ p ii +1 (∆t ) = a1 (∆t )b0 (∆t ) + ∑ a k (∆t )bk −1 (∆t ) ≤ a1 (∆t )b0 (∆t ) + a ≥ 2 (∆t ), k =2 а из (11.29) – (11.31) вытекает, что p ii +1 ( ∆t ) = λ∆t + o(∆t ), i ≥ 0. (11.38) Кроме того, ∞ p ii (∆t ) = a 0 (∆t )b0 (∆t ) + ∑ a k (∆t )bk (∆t ) ≤ k =1 ≤ a 0 (∆t )b0 (∆t ) + a ≥1 (∆t )b≥1 (∆t ) = a 0 (∆t )b0 (∆t ) + o(∆t ), и учитывая (11.28), (11.31), получаем p ii (∆t ) = 1 − (λ + µ)∆t + o(∆t ), i ≥ 1. (11.39) p 00 (∆t ) = 1 − λ∆t + o(∆t ), (11.40) Аналогично можно найти p ik (∆t ) = o(∆t ), i − k ≥ 2. Таким образом, из (11.37) – (11.40) следует, что ξ(t ) является процессом гибели и размножения со следующим графом переходов (рис. 36). λ 0 λ 1 µ λ 2 . . λ n-1 . n µ n+1 . . . µ µ Рис. 36. Из условия эргодичности для процесса гибели и размножения следует, что если ρ= λ <1, µ то существует единственное стационарное распределение, совпадающее с эргодическим, ρ называется коэффициентом загрузки системы. Уравнения равновесия (11.27) имеют вид λp n −1 = µp n , n = 1, 2,..., откуда находим p n = ρp n −1 = ρ 2 p n − 2 = ... = ρ n p 0 . ∞ Вероятность p 0 можно найти, используя условие нормировки ∑ p n = 1 , откуда следует, n =0 что p 0 = 1 − ρ , и поэтому p n = ρ n (1 − ρ), n = 0, 1, 2,..., т.е. число заявок в такой СМО в стационарном имеет геометрическое распределение. Легко найти производящую функцию такого распределения: ∞ ψ( z ) = ∑ p n z n = n=0 1− ρ , z < 1. 1 − ρz Отсюда получаем выражение для среднего числа заявок в системе (в очереди и на обслуживании) в стационарном режиме: ∞ Mξ = ∑ np n = ψ ′( z ) n =0 z =1 = ρ . 1− ρ Ясно, что Mξ ρ → ∞ , т.е. при стремлении ρ к 1 очередь в СМО неограниченно растет. →1 При рассмотрении последующих СМО выражения для переходных вероятностей находятся подобным образом, как в предыдущем случае, с использованием соотношений (11.28) – (11.36). Поэтому в дальнейшем мы сразу будем изображать граф переходов для соответствующего процесса гибели и размножения. Нужно только учесть, что если обслуживанием заявок в многолинейной СМО заняты k линий, то интенсивность обслуживания равна kµ . Система М / М / n / 0. Это система с потерями без ожидания. Если заявка поступает в систему в момент, тогда обслуживанием заняты все n линий, то она теряется. Такая система была введена датским инженером Эрлангом в начале прошлого столетия и применена в качестве модели обработки вызовов, поступающих на телефонную станцию. Граф переходов для такой СМО имеет вид (рис. 37) λ λ 0 λ 1 µ 2 . . λ k-1 . 2µ k n-1 . . . n nµ kµ Рис. 37. Поскольку число состояний системы конечно, то единственное стационарное распределение, совпадающее с эргодическим, существует всегда при любых параметрах λ, µ (см. §59). Запишем уравнения равновесия для стационарных вероятностей состояний: λp k −1 = kµp k , k = 1, n . Отсюда получаем pk = ρ ρ2 ρk p k −1 = p k − 2 = ... = p 0 , k = 1, n . k k ( k − 1) k! (11.41) Вероятность p 0 , как всегда, можем найти из условия нормировки, которое в данном n случае имеет вид ∑ p k = 1, откуда k =0 −1 n ρk . p 0 = ∑ k = 0 k! Таким образом, ρ k n ρi ∑ pk = k! i =0 i! −1 . В частности, вероятность потери заявки равна (формула потерь Эрланга) pn = Система М / М / n. Это ρn n! n ρi ∑ i = 0 i! −1 . многолинейная система с ожиданием. Если обслуживанием заявок заняты все n линий, то интенсивность обслуживания равна nµ . Граф переходов для этой СМО имеет вид (рис. 38) λ 0 λ 1 µ λ 2 λ n-2 . . . 2µ λ n-1 n n+1 nµ (n − 1)µ λ nµ n+2 . . . nµ Рис. 38. Стационарное распределение существует, если ρn = ρ < 1. n Уравнения равновесия имеют вид λp k −1 = kµp k , k = 1, n , λp k −1 = nµp k , k ≥ n + 1, откуда, аналогично предыдущему случаю (11.41), получаем pk = ρk p0 , k ≤ n , k! 2 ρ ρ ρ p k = p k −1 = p k − 2 = ... = n n n = ρk n k − n n! k −n ρ pn = n k −n ρn p0 = n! p0 , k ≥ n + 1. Условие нормировки в этом случае принимает вид ∞ k ρk nn ∞ ρ + ∑ =1, k = 0 k! n! k = n +1 n n ∑ pk = p0 ∑ k =0 откуда следует, что −1 n ρk n n ρ n n +1 p0 = ∑ + . k =0 k! n!(1 − ρ n ) Среднее число заявок в системе в стационарном режиме равно ∞ n ρ i n n ρ n [1 − n(1 − ρ n )] Mξ = ∑ kp k = p 0 ∑ + . n!(1 − ρ n ) 2 k =0 i =1 (i − 1)! n +1 Система М / М / n / N. Это многолинейная система с ограниченным числом мест для ожидания. Она отличается от предыдущей СМО тем, что в ней имеется только N мест для ожидания. Поэтому граф переходов в этом случае имеет вид (рис. 39) λ 0 λ 1 µ λ 2 . . . 2µ λ n-2 n-1 (n − 1)µ λ λ n nµ n+1 N+n-1 . . . nµ N+n nµ Рис. 39. Стационарное распределение существует при любых λ , µ , поскольку число состояний системы конечно. Уравнения равновесия принимают вид λp k −1 = kµp k , k = 1, n , λp k −1 = nµp k , k = n + 1, N + n . Отсюда следует, что стационарные вероятности p k , k ∈ X , имеют такой же вид, как и для предыдущей СМО, с той лишь разницей, что они определены для k = 0 , N + n . образом, ρk p0 , k = 0 , n , k! pk = n k n ρn p , k = n + 1, N + n . 0 n! n+ N Вероятность p 0 определяется из условия нормировки ∑ p k = 1 : k =0 n ρ k N +n n n ρ n k p0 ∑ + ∑ k = 0 k! k = n +1 n! = 1, откуда получаем −1 n ρ k ρ n ρ n (1 − ρ n N ) p0 = ∑ + . (1 − ρ n ) k =0 k! Среднее число заявок в системе определяется соотношением N n ρ i n+ N ρ nρn 1 − ρn N Mξ = ∑ kp k = p 0 ∑ + n − ( n + N ) ρ + n 1 − ρn k =0 i =1 (i − 1)! n!(1 − ρ n ) а вероятность потери заявки p n+ N = p0 ρ n+ N . n! n N ЗАДАЧИ К §61 , Таким 11.33. Доказать, что ф.р. времени ожидания заявкой обслуживания в системе M / M / n имеет вид W (t ) = ρ n p0 e − ( nµ − λ ) t . ρ n!(1 − ) n 11.34. Доказать, что ф.р. времени ожидания заявкой обслуживания в системе M / M / 1 имеет вид W (t ) = 1 − ρ e − (1− ρ )µt , а среднее значение этого времени: w= ρ 1 ⋅ . 1− ρ µ 11.35. Вычислить второй начальный момент и дисперсию числа заявок в системах M / M / n / N и M / M / n / 0 . Найти среднее значение и дисперсию числа заявок для системы M / M / n / N в случае, когда ρ =1. n 11.36. Найти второй начальный момент и дисперсию времени ожидания для системы M / M / n . 11.37. Определить вероятность qn того, что в стационарном режиме в системе M / M / n все линии заняты обслуживанием заявок. 11.38. Найти стационарную вероятность того, что в системе M / M / n / N а) все линии заняты обслуживанием, б) все места ожидания заняты. Вычислить математические ожидания числа занятых линий n и числа ожидающих заявок N. 11.39. Найти вероятность p0 (t ) свободного состояния в момент t для системы M / M / 1 / 0 , если: а) в момент t = 0 система была свободна от заявок; б) в момент t = 0 система была занята обслуживанием. 11.40. В столовой самообслуживания университета имеется один раздаточный пункт, поток посетителей – простейший с интенсивностью λ . На отпуск как первого, так и второго блюда идет случайное время, распределенное по показательному закону с одним и тем же параметром µ . Некоторые посетители берут и первое, и второе (доля таких посетителей равна q ), другие – только второе (доля их равна 1 − q ). Найти: а) условия, при которых существует стационарный режим работы столовой; б) среднюю длину очереди и среднее время пребывания посетителя в столовой, если он съедает одно блюдо в среднем за время τ , а два блюда за время 2τ . 11.41. Мастер-переплетчик университета, который переплетает различного рода отчеты, диссертации и другие книги, обнаружил, что они поступают к нему в соответствии с простейшим потоком; при этом в среднем поступает 1 книга в день. Затраты времени на переплет подчиняются экспоненциальному закону со средним временем переплета равным 2 часа. Переплет производится регулярно 8 часов в день. Найти: а) среднее число книг в мастерской; б) среднее время нахождения книги в мастерской перед началом переплета; в) среднее время в течение дня, в которое нет книг, ожидающих переплета, т.е. среднее время, в течение которого мастер не работает. 11.42. Кассир банка тратит на обслуживание посетителя в среднем 3 мин., время обслуживания распределено экспоненциально. Поток клиентов в кассе – простейший со средней скоростью, равной 1 клиент в 4 мин. Найти: а) вероятность того, что по крайней мере один клиент стоит в очереди; б) вероятность того, что перед кассиром нет посетителей; в) вероятность того, что в очереди стоят более чем два клиента; г) среднее время, проведенное клиентом в банке; д) с какой средней скоростью кассир банка должен обслуживать клиента, чтобы его время ожидания уменьшилось вдвое. 11.43. Посетители магазина подходят к кассе случайно, средний промежуток времени между ними равен 0,5 мин. Время обслуживания кассиром распределено экспоненциально со средним значением 0,25 мин. Определить: а) среднее число посетителей возле кассы; б) среднее время ожидания посетителем в очереди; в) среднее время, в течение которого кассир не занят обслуживанием. 11.44. В условиях предыдущей задачи предположим, что директор магазина решил, что он должен будет установить еще одну кассу, если среднее время ожидания посетителем обслуживания превысит 1,5 мин. Как должна измениться средняя скорость потока посетителей, чтобы возникла подобная ситуация? Какой тогда будет доля простоев каждого кассира? 11.45. Автомобили прибывают на автозаправочную станцию (АЗС), причем промежутки времени между двумя последовательными прибытиями имеют экспоненциальное распределение со средним значением, равным 2 мин. На обслуживание автомобиля требуется в среднем экспоненциально. Определить: 1 мин., время обслуживания распределено а) среднее число автомобилей, ожидающих обслуживания; б) долю времени, в течение которого АЗС бездействует. 11.46. АЗС имеет три колонки. Площадка возле нее допускает одновременное ожидание не более 10 автомашин. Поток автомашин, прибывающих на станцию, простейший с интенсивностью λ = 1 машина/мин. Время обслуживания автомашины – показательное со средним значением 2 мин. Найти стационарные вероятности состояний АЗС и ее характеристики: а) среднее число автомашин, обслуживаемое АЗС в единицу времени; б) вероятность, что прибывшая автомашина не будет обслужена; в) среднее число автомашин в очереди; г) среднее время пребывания автомашины на АЗС. 11.47. Железнодорожная касса имеет два окошка, в каждом из которых продаются билеты по двум направлениям: западном и восточном. Потоки пассажиров, приобретающих билеты на эти направления, одинаковы по интенсивности, равной 1 пасс./мин. Среднее время продажи билетов пассажиру равно 1,5 мин. Поступило предложение: для уменьшения очередей сделать обе кассы специализированными, т.е. в одной кассе продавать билеты на западное направление, а в другой – на восточное. Считая, что все потоки – простейшие, проверить разумность этого предположения. 11.48*. Рассмотрим систему обслуживания M / M / 1 . Предположим, что заявка, ожидающая обслуживания, может покинуть систему без обслуживания в промежутке времени длительности ∆t → 0 с вероятностью ν∆t + o(∆t ) . Для заданной системы найти стационарные вероятности состояний. 11.49*. Рассмотрим систему M / M /1, которая отличается от системы, рассмотренной в предыдущей задаче тем, что любая заявка (даже та, которая находится на обслуживании) может покинуть систему в течение времени ∆t с вероятностью ν∆t + o(∆t ) . Найти для этой системы стационарное распределение числа заявок.