Введение Сведения из теории вероятностей Системы и сети очередей Системы множественного доступа Системы поллинга Литература
Эта статья была подготовлена в 1999 году для публикации в Соросовском образовательном журнале (СОЖ), которая по техническим причинам не была осуществлена.

Стохастические системы и сети обслуживания

С.Г. Фосс

  "Очереди являются бедствием нашей эпохи"
(кто-то это сказал)

     Действительно, кто из нас не сталкивался с очередями? Нам часто приходится тратить время на ожидание: в магазине мы стоим в очереди, в автобусе или автомашине ждем зеленого сигнала светофора или (что хуже) попадаем в дорожные пробки; долго пытаемся дозвониться по телефону или войти в сеть ИНТЕРНЕТ... Каждый легко вспомнит массу примеров потери времени на ожидание - еженедельной, ежедневной, даже ежечасной. Можно произвести приближенный подсчет, сколько в среднем за неделю вы простаиваете во всех очередях, с которыми сталкиваетесь. Затем умножить это время на число недель в году - и ужаснуться!

    Из-за чего возникают очереди? Во всех случаях схема, по сути, одна и та же: есть некоторое количество "клиентов", каждый из которых желает "обслужиться" в одном и том же месте, и сделать это одновременно они не могут - их интересы вступают в "конфликт". Для того, чтобы этот конфликт разрешать, формируется некоторое правило (алгоритм, дисциплина), упорядочивающее обслуживания клиентов. В одних случаях (например, в случае со светофором) правила задаются заранее, "третьим лицом"; в других они формируются стихийно.

    Математическая теория систем обслуживания - область прикладной математики, использующая методы теории вероятностей и математической статистики. Часто ее называют также теорией массового обслуживания, а в англоязычной литературе - теорией очередей (queueing theory). Стимулом к развитию теории систем обслуживания явилось стремление научиться предсказывать случайно изменяющиеся потребности по результатам наблюдений и на основе этого организовывать обслуживание с приемлемым временем ожидания.

     1.  Введение

         Первые математические работы по системам обслуживания появились в начале двадцатого века. Они были тесно связаны с практическими задачами, касавшимися вопросов обслуживания телефонных линий, определения оптимального количества касс и продавцов в торговых предприятиях, выработки правил расчета запасов в магазинах, достаточных для их бесперебойной работы, и других. Среди этих работ особо важное место занимают исследования датского ученого А.К. Эрланга (1878-1929). Благодаря развитию теории вероятностей, к середине двадцатого столетия теория систем обслуживания получила хороший математический фундамент. Среди фамилий ученых, внесших наибольший вклад в теорию очередей, следует назвать такие, как Ф. Поллачек, А.Я. Хинчин, Б.В. Гнеденко, Ж.Ф.С. Кингман, Р.М. Лойнес, С.М. Росс, В.Л. Смит, Г. Коэн, А.А. Боровков, У. Прабху, П. Франкен, В.А. Малышев.

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

         В практике возникают новые и новые задачи, связанные с очередями и требующие математического решения, что способствует появлению новых и развитию известных направлений исследований. Например, с каждым годом компьютерные системы работают все быстрее и быстрее, но их очереди становятся все длиннее и длиннее. Поэтому стали актуальными проблемы, связанные со "взаимодействием" очередей в течение длительных промежутков времени. А это привело к интенсивному развитию направления, получившего название "теория больших уклонений" (``large deviation theory'').

         Статьи по математической теории систем обслуживания публикуются в десятках различных журналов. С 1986 года издается специализированный математический журнал ``Queueing Systems'' ("Системы очередей").

        В любой системе обслуживания предполагается наличие объектов двух типов: обслуживающих устройств (другие названия: обслуживающие приборы, серверы, каналы и т.д.) и клиентов (другие названия: заявки, вызовы, требования и т.д.), нуждающихся в обслуживании. В этой статье мы будем использовать термины сервер и вызов. Правило, или алгоритм взаимодействия вызовов и серверов мы будем называть дисциплиной обслуживания, или дисциплиной. Отметим, что, вообще говоря, вызову может требоваться несколько обслуживаний на одном или нескольких серверах. Обычно термин "система обслуживания" (по-английски: ``queueing system'') употребляется при рассмотрении относительно простых моделей, в которых каждый вызов может иметь только одно обслуживание на некотором сервере. Если же вызовы должны пройти обслуживания на ряде приборов в соответствии с заданными маршрутами, то принято говорить о "сети обслуживания" (по английски: ``queueing network''). Другими словами, сеть - это просто сложная система.

         Число моделей систем (сетей) обслуживания, используемых на практике и изучающихся в теории, очень и очень велико. Даже для того, чтобы описать схематично основные их типы, требуется не один десяток страниц. Поэтому в данной работе мы рассмотрим только три "характерных" вида систем обслуживания: системы с очередью, системы множественного доступа и системы поллинга. При этом будем предполагать, что эти системы являются

а дисциплины обслуживания таковы, что

Во всех случаях мы обсудим условия, которые гарантируют стабильную работу системы.

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

     2.  Сведения из теории вероятностей

         В этом разделе мы приводим основные понятия и утверждения теории вероятностей, использующиеся в последующих параграфах.

         Для математически строгого определения понятий теории вероятностей требуется хорошо развитый математический аппарат. Поэтому ниже мы предложим неформальное определение случайного события и дискретной случайной величины, принимающей конечное число значений. Затем определим понятия математического ожидания и дисперсии, обсудим свойства независимости и одинаковой распределенности случайных величин и сформулируем две основные теоремы теории вероятностей.

         Если событие $A$ при некотором испытании может как произойти, так и не произойти, то мы назовем это событие случайным. Случайному событию приписывается некоторое число между 0 и 1, называющееся его вероятностью и обозначающееся через eq 002. Например, если подбрасывается симметричная монета, то событие  eq 003 является случайным, и ему естественно приписать вероятность

eq 004.

        События $..$ и eq 005 называются несовместными, если они не могут происходить одновременно.

Набор событий eq 006 образует полную группу, если, во-первых, любые два из них несовместны и, во-вторых, одно из этих событий обязательно происходит. Из последнего следует, что eq 007.

         Например, при бросании игрального кубика могут выпасть числа 1,2,3,4,5,6. Введем шесть событий

eq 008, eq 009.

Нетрудно видеть, что эти события образуют полную группу. В силу симметрии кубика, естественно положить все вероятности eq 010 равными eq 011. Можно предложить и другие полные группы событий. Например, взять три события eq 012, где

 eq 013, eq 014, eq 015.

При этом, естественно, eq 016 и eq 017.

         Пусть даны полная группа событий eq 006 с вероятностями eq 018, eq 019 и набор чисел eq 020.

Дискретная случайная величина eq 021 - это величина, принимающая значение  eq 022, если происходит событие eq 023 (то есть с вероятностью eq 024).

Соответствие между eq 022 и eq 024 выражается формулой eq 025 , читаемой как: "вероятность того, что eq 021 принимает значение eq 022 , равна eq 024 ". При этом eq 026 . Набор пар eq 027 называется законом распределения, или просто распределением величины eq 021 .

Для любого числа eq 028 можно определить вероятность того, что eq 021 примет значение, не меньшее чем eq 028:

eq 029

Аналогично, для любых чисел eq 030

eq 031

         Математическим ожиданием, или средним eq 032 случайной величины eq 021 называется число

eq 033

а дисперсией eq 034 - число

eq 035

которое можно вычислить по формуле eq 036

Среднее квадратическое отклонение (или - неформально - средний разброс) случайной величины eq 021 есть квадратный корень из дисперсии: eq 037.

        Например, если eq 021 - значение, выпадающее при случайном бросании кубика, то возможных значений только шесть, от 1 до 6, и все шесть вероятностей eq 024 равны eq 038. Значит, eq 039 eq 040 и eq 041.

        Случайная величина eq 021 называется вырожденной, если она принимает только одно значение (скажем, eq 042) с вероятностью единица (то есть eq 043). Для вырожденной случайной величины

 eq 044    и    eq 045

(значит, и eq 046). Можно доказать, что справедливо и обратное утверждение: если eq 047, то случайная величина вырождена (для "невырожденных" случайных величин всегда eq 048).

         Математические ожидания и дисперсии обладают рядом хороших свойств. Например, если eq 049 - некоторое число, то случайная величина eq 050 принимает значения eq 051 с вероятностями eq 024 и, следовательно,

eq 052

Поэтому

eq 053

        Если случайная величина eq 021 может принимать только целые неотрицательные значения, то

eq 054.

Здесь eq 055 - максимальное из возможных значений. Действительно, пусть eq 021 принимает значение 0 с вероятностью eq 056, значение 1 - с вероятностью eq 057, и т.д. Тогда

eq 058

eq 059

где сумма, стоящяя в первой скобке, совпадает с eq 060, во второй скобке - с eq 061, и т.д.

        Несколько случайных величин называются одинаково распределенными, если их распределения совпадают (т.е. они принимают одинаковые значения с одинаковыми вероятностями). Как следствие, одинаково распределенные случайные величины имеют одинаковые средние и дисперсии.

        Например, если подбросить кубик несколько раз и обозначить через eq 062 значение, выпадающее при eq 063-ом подбрасывании, то эти случайные величины будут одинаково распределены.

        Несколько (скажем, eq 063) случайных величин eq 064 называются независимыми, если вероятность того, что одновременно первая из них приняла значение eq 065, вторая - значение eq 066-ая - значение eq 067, совпадает с произведением вероятностей eq 068, каковы бы ни были числа eq 069.

Независимость можно понимать как "отсутствие влияния результатов одних испытаний на другие".

        Например, если мы подбросим два одинаковых кубика по разу, то всего различных исходов 36 (каждому варианту выпадения первого кубика может соответствовать 6 вариантов выпадения второго), и все они "равновозможны", т.е. вероятность того, что на первом выпадет число eq 065, а на втором - eq 070 (где eq 071 - любые целые числа от 1 до 6), равна eq 072, что совпадает с произведением eq 073. Значит, соответствующие случайные величины независимы.

        Можно также ввести понятия (дискретной) случайной величины, принимающей бесконечное (счетное) число значений eq 074, а также ее математического ожидания и дисперсии2. При этом нужно лишь определить, что означают бесконечные суммы eq 102 и eq 103.

        Пусть eq 064 - набор из независимых, одинаково распределенных случайных величин. Обозначим через eq 104 их общее среднее, через eq 105 - средний разброс и через eq 106 - их сумму. Ниже формулируются два основных утверждения теории вероятностей.

Теорема 2.1.

 

Закон больших чисел,
ЗБЧ
3.
При всех достаточно больших eq 063

eq 107

Более точно, для любого как угодно малого числа eq 108 можно указать достаточно большое число eq 109 так, что при каждом целом eq 110 вероятность неравенства

eq 111

не превосходит eq 112. Последнее можно записать в виде формулы:

eq 113

         Например, если будем бросать кубик достаточно много раз и складывать выпадающие значения, то при делении полученной суммы на количество испытаний получим число, очень близкое к 3,5.

        Пусть eq 114 - функция вида eq 115 где число eq 116 - основание натуральных логарифмов. Эта функция (называющаяся функцией Лапласа, или функцией распределения нормального закона) играет одну из центральных ролей в теории вероятностей. Она табулирована, ее значения заложены в программы многих калькуляторов и, конечно же, компьютеров. Отметим, что функция eq 114 является монотонно возрастающей, и ее значения при всех eq 117 строго положительны и меньше единицы. Она очень медленно растет при eq 118 (в частности, eq 119), затем достаточно быстро возрастает при eq 120 (в частности, eq 121) и потом снова растет очень медленно.

Теорема 2.2.

 

Центральная предельная теорема,
ЦПТ.
Пусть eq 030 - два произвольных вещественных числа. Предположим, что eq 122. Тогда при всех достаточно больших eq 063

 eq 123 (2.1)

Более точно, для любого как угодно малого числа eq 108 можно указать достаточно большой номер eq 109 так, что при каждом eq 110 абсолютное значение разности левой и правой частей приближенного равенства (2.1) будет не больше, чем eq 112 .

        Часто центральную предельную теорему называют также "принципом инвариантности"4. Действительно, каково бы ни было "индивидуальное" распределение случайных величин eq 124 , с ростом eq 063 исчезает влияние этой "индивидуальности" на "поведение" случайной величины eq 125 - оно достаточно точно задается функцией Лапласа.

        В примере с кубиками, если взять eq 126 и eq 127, то получим, что при достаточно большом числе eq 063 испытаний вероятность того, что отношение eq 128 содержится в интервале eq 129, будет не меньше, чем eq 130. Если мы разрешим двойное неравенство

eq 131

относительно eq 132 и вспомним найденное ранее значение eq 105, то получим, что eq 132 лежит в диапазоне

eq 133

с вероятностью, очень близкой к единице.

     3.  Системы и сети очередей

        В этом параграфе мы обсудим несколько примеров систем и сетей очередей.

        Начнем с рассмотрения так называемой одноканальной системы обслуживания. В системе находится один прибор (сервер). Вызовы поступают в систему группами случайного объема через единичные интервалы времени (пусть eq 134 означает количество вызовов, поступающих в момент времени eq 135; все возможные значения eq 062 являются целыми числами). Все вызовы нумеруются и обслуживаются в порядке поступления (внутри каждой группы вызовы нумеруются в произвольном порядке). Как только сервер заканчивает обслуживание некоторого вызова, он немедленно начинает обслуживать следующий (если вызовы в системе есть), а обслуженный вызов покидает систему. Сервер может простаивать только тогда, когда в системе нет вызовов.

        Предположим, простоты ради, что все вызовы имеют одно и то же неслучайное время обслуживания eq 136. Будем считать, что случайные величины eq 062 независимы и одинаково распределены. Следовательно, они имеют одно и то же математическое ожидание (среднее), которое обозначим через eq 137 . В начальный момент времени eq 138 вызовы в системе отсутствуют.

        Обозначим через eq 139 количество "работы", скопившейся в системе к моменту времени eq 063 (то есть суммарное время, нужное для обслуживания имеющихся в наличии вызовов). Ясно, что eq 140 и при всех eq 141 справедливы рекуррентные соотношения eq 142 где eq 143 означает наибольшее из чисел eq 144. Величины eq 139 являются, вообще говоря, случайными, то есть могут принимать различные значения с положительными вероятностями.

        Естественно считать, что система работает "стабильно", если с ростом времени eq 063 распределения случайных величин eq 139 остаются ограниченными - в некотором смысле, но в каком? Можно, к примеру, назвать систему стабильной, если найдется некоторое число eq 145, при котором неравенство

 eq 146

выполняется всегда (т.е. при каждом eq 063 с вероятностью единица) . Но для выполнения этого условия необходимо, чтобы с вероятностью единица имело место неравенство

 eq 147 (3.2)

Действительно, если это не так и eq 148, то найдется целое число eq 149 такое, что eq 150 и eq 151. Обозначим эту вероятность через eq 075, а разность eq 152 через eq 153. Тогда при каждом eq 063 вероятность одновременного наступления событий

eq 154

равняется произведению вероятностей (в силу независимости случайных величин), т.е. просто eq 155.

Но при этом выполняется равенство eq 156. Поэтому для любого числа eq 145 можно выбрать число eq 063 так, чтобы eq 157. И при таком eq 063 вероятность того, что значение eq 139 превосходит eq 145, является положительной - значит, система не может быть стабильной в предложенном выше смысле.

        Отметим, что предположение (3.2) является сильно ограничительным и малореалистичным, так как на практике возможны резкие (хотя и редкие) колебания входного потока во времени (так называемые "пиковые нагрузки"), т.е. величины eq 062 могут принимать большие значения - но с маленькими вероятностями. Поэтому представляется разумным следующее (более "широкое") определение стабильности.

         Система обслуживания является стабильной, если для любого (как угодно малого) числа eq 112 найдется такое число eq 145, что при всех eq 063

eq 158

и нестабильной - в противном случае. Это определение остается таким же и для любой другой системы обслуживания, если под eq 139 понимать (более общо) количество работы, скопившейся к моменту eq 063 на всех серверах системы.

        Оказывается, что для того, чтобы определить, является одноканальная система стабильной или нет, не требуется знания распределения случайных величин eq 062 - достаточно лишь знать значение их среднего eq 104 . Более точно, имеет место следующая теорема

Теорема 3.1.  Одноканальная система обслуживания является стабильной при eq 159 и нестабильной при eq 160. В случае eq 161 система является стабильной тогда и только тогда, когда величины eq 062 являются вырожденными, т.е. eq 162.

        Поясним, как доказывается эта теорема.

Начнем со случая eq 161.

Если все eq 062 вырождены (и совпадают с eq 104), то eq 163 при всех eq 063. Поэтому система стабильна.

В случае невырожденных случайных величин, заметим, что при каждом eq 063

eq 164

Используя индукцию, получаем неравенство eq 165

Так как eq 166, то правая часть этого неравенства совпадает с eq 167 где eq 168. Поэтому для любого числа eq 169

eq 170

Так как число eq 171 положительно, то и eq 172 при всех достаточно больших eq 063 . А число eq 173 можно сделать как угодно большим. Значит, система не может быть стабильной.

        Рассмотрим случай eq 160 . Если случайные величины eq 062 вырождены, то величины eq 174 неограниченно растут с ростом eq 063 . Если же eq 062 невырождены, то, повторяя ранее изложенные рассуждения, мы получаем неравенство: eq 175 из которого следует нестабильность системы.

        В случае eq 176 утверждение Теоремы 3.1 доказывается значительно сложнее, и мы его приводить не будем. Опишем лишь один полезный прием, используемый при доказательстве и называемый часто "правилом насыщения" (saturation rule). Предположим, что к некоторому моменту времени eq 063 в системе скопилось очень много вызовов (система "насыщена" вызовами). Тогда, начиная с момента eq 063 , в течение длительного времени сервер обслуживает только имеющиеся вызовы - независимо от того, что еще в систему поступает. Допустим, что так сервер работает в течение времени eq 177 . За это время обслуживается приблизительно eq 178 вызовов (то есть сервер обслуживает приблизительно eq 179 вызовов за единицу времени, эту дробь естественно назвать интенсивностью, или скоростью обслуживания), а поступает eq 180 вызовов. По закону больших чисел,

eq 181

то есть "интенсивность" поступления вызовов равна eq 104 . И так как eq 182 (в насыщенной системе скорость поступления вызовов меньше скорости обслуживания), то кажется интуитивно очевидным, что величины eq 139 не могут неограниченно расти, и система стабильна.

        И действительно, как показывает более точный и строгий анализ, для одноканальной системы использование правила насыщения оказывается корректным.

        Приведем еще два примера систем, где условия стабильности находятся аналогичным образом.

         Пример 1. Одноканальная система с двумя типами вызовов.

В систему с одним сервером поступают вызовы двух типов: в каждый момент времени eq 063 приходят eq 183 вызовов первого типа и eq 184 - второго типа. Для каждого eq 185 , случайные величины eq 186 независимы и одинаково распределены со средним eq 187 . Время обслуживания каждого вызова первого типа равно eq 188 , второго типа - eq 189 . Вызовы обслуживаются на сервере в порядке, задаваемом с помощью некоторого правила (дисциплины) обслуживания. Наиболее известные варианты дисциплин:

        Справедлива следующая

Теорема 3.2.  Обозначим eq 192 . Каков бы ни был порядок (дисциплина) обслуживания вызовов, одноканальная система с двумя типами вызовов является стабильной при eq 193 и нестабильной при eq 194 . В случае eq 195 система является стабильной тогда и только тогда, когда величины eq 183 и eq 184 являются вырожденными, т.е. eq 196 и eq 197 .

         Доказательства Теорем 3.1 и 3.2 используют одни и те же рассуждения.

         Пример 2. Открытая сеть Джексона с двумя серверами и одним типов вызовов.

Пусть в сети находятся два сервера, время обслуживания любого вызова на первом неслучайно и равно eq 188, а на втором - eq 189. В каждый момент времени eq 135 в сеть извне поступает eq 062 вызовов, причем случайные величины eq 198 независимы и одинаково распределены со средним eq 104.

Каждый вызов (независимо от других) с вероятностью eq 199 встает в очередь к первому серверу и с вероятностью eq 200 - ко второму.

Любой вызов, обслуженный на первом сервере, либо покидает сеть (с вероятностью eq 201), либо встает в очередь ко второму (с вероятностью eq 202). Здесь eq 203. Аналогично, после обслуживания на втором сервере вызов с вероятностью eq 204 покидает сеть и с вероятностью eq 205 переходит в очередь к первому серверу (где eq 206). Для того, чтобы вызовы имели возможность покинуть сеть, требуется, чтобы сумма eq 207 была положительной.

Посчитаем, какое число раз в среднем любой вызов посетит первый сервер (нам нужно найти eq 208, где eq 209 - случайное число посещений).

         В случае, когда вызов сразу поступил в очередь к первому серверу, вероятность eq 210 того, что он снова вернется на этот сервер хотя бы раз (другими словами, посетит этот сервер хотя бы два раза), равна вероятности того, что он переходит с первого сервера на второй и затем - со второго на первый. Так как эти события независимы, то eq 211. Аналогично, вероятность того, что вызов вернется на первый сервер хотя бы eq 212 раз, если он начал обслуживание с этого сервера, равна eq 213. Поэтому среднее число посещений равняется

eq 214.

         Если предположить, что сначала вызов поступает на второй сервер, то вероятность того, что он посетит первый сервер хотя бы раз, равна eq 205, хотя бы два раза - eq 215, хотя бы три - eq 216 и т.д. Следовательно, в этом случае среднее число посещений первого сервера равно

eq 217.

         И так как первый случай осуществляется с вероятностью eq 199, а второй - с вероятностью eq 218, то

eq 219

Симметрично, среднее число eq 220 посещений одним вызовом второго сервера равно

eq 221.

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

         Каждый вызов посетит в среднем первый сервер eq 208 раз. Значит, он в среднем "приносит" на этот сервер количество работы, равное eq 222. За единицу времени в систему поступает в среднем eq 104 вызовов. Значит, все они вместе приносят на первый сервер количество работы eq 223. Обозначим это число через eq 224. Если первый сервер "насыщен", то он постоянно занят (работает с интенсивностью единица). Поэтому для стабильности нужно, чтобы выполнялось условие eq 225 Аналогично, требуется и второе условие: eq 226

         Поэтому неудивительно, что имеет место следующая теорема.

Теорема 3.3. Открытая сеть Джексона с двумя серверами может быть стабильной только в следующих случаях:

  • cлучайная величина eq 227 невырождена и eq 228;
  • случайная величина eq 227 вырождена, eq 229 и выполнено одно из условий: либо eq 230, либо eq 231, либо eq 232.

         Теорема 3.2 обобщается естественным образом на случай любого числа вызовов, а Теорема 3.3 - любого числа серверов.

         До конца 80-х годов у большинства ученых, работающих в области теории систем обслуживания, была надежда на то, что "правило насыщения" является универсальным, т.е. с его помощью всегда можно найти верные условия стабильности систем обслуживания. Однако в 1990 году Р.П. Кумар привел относительно простой пример детерминированной (неслучайной) системы, в которой условия стабильности существенно отличаются от получаемых с помощью этого правила. Затем А.Л.Столяр и А.Н.Рыбко (1992) построили пример системы со случайными характеристиками, имеющей те же свойства. Эти и другие примеры привели к развитию так называемой "теории жидкостной аппроксимации", позволяющей анализировать условия стабильности случайных систем обслуживания с помощью вспомогательных динамических "жидкостных" моделей, удовлетворяющих ряду интегро-дифференциальных уравнений.

 

    4.  Системы множественного доступа

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

         Рассмотрим, к примеру, одноканальную систему с несколькими типами вызовов. Допустим, что любой вызов (любого типа) требует обслуживания в течение единичного времени (скажем, время обслуживания равно 1 секунде). Предположим, что сервер находится на космической станции, все вызовы первого типа скапливаются в очереди где-то в Австралии, второго - в России, третьего - в Бразилии, и т.д. Наземная связь работает намного хуже, чем связь космическая. Упорядочить вызовы в каждой очереди можно, а упорядочивать поступление на сервер вызовов из разных очередей очень сложно, на этом может теряться большое количество времени и средств. Поэтому на практике стали применять такой алгоритм:

         Можно рассматривать и более сложные модели сетей с несколькими серверами, работающими по описанному принципу, и маршрутами передвижения вызовов от одних серверов к другим.

         Такого рода системы (и сети) получили название "системы множественного доступа" (``multi-access broadcast channel''). Часто в литературе термин "вызов" заменяют на "сообщение", а "обслуживание вызова" - на "передачу сообщения".

         Чтобы понять, какого рода условия требуются для стабильной работы системы, рассмотрим наиболее простой случай симметричной системы множественного доступа с двумя очередями.

         Предположим, что eq 235. Если в некоторый момент одна очередь пуста, а другая - нет, то вероятность обслуживания за следующую единицу времени равна eq 075. Если же обе очереди непусты, то обслуживание происходит в двух симметричных случаях, когда из одной очереди сигнал поступает, а из другой - нет. В силу независимости подач сигналов, каждый из случаев осуществляется с вероятностью eq 236. Следовательно, вероятность обслуживания равна eq 237.

         Пусть, как и в предыдущем параграфе, eq 183 означает количество вызовов, поступающих за eq 063-ую единицу времени в первую очередь, и eq 184 - во вторую. Предположим, что все случайные величины

eq 238

независимы и одинаково распределены. Обозначим через eq 104 их общее среднее.

         Используя принцип насыщения, можно найти достаточные условия стабильности системы.

Теорема 4.1. Симметричная система множественного доступа с двумя очередями стабильна, если выполняется одно из двух:

  • eq 239 и eq 240 ;
  • eq 241 .

         Действительно, рассмотрим первый случай (во втором рассуждения аналогичны). Если система насыщена, то либо обе очереди непусты (и обслуживание происходит с вероятностью eq 237), либо одна пуста, а другая нет (и обслуживание происходит с вероятностью eq 242). Значит, в течение длительного времени eq 177 интенсивность обслуживания не меньше чем eq 237, а интенсивность поступления вызовов строго меньше этого числа.

         Ясно, почему сформулированные в Теореме 4.1 условия являются только достаточными для стабильности. Предположим, что система насыщена, и нам удалось посчитать, какую часть времени в течение eq 177 обе очереди непусты (скажем, эта доля равна eq 049). Тогда "средняя" интенсивность обслуживания за время eq 177 равняется

 eq 243,

и "верное" условие стабильности есть

 eq 244.

Другими словами, система может работать стабильно и при других условиях. Оказывается, что, вообще говоря, определить число eq 049 можно, но для этого требуется хорошо развитая техника "теории случайных блужданий", являющейся разделом теории вероятностей.

         Таким же образом решается задача нахождения условий стабильности для несимметричных систем с двумя очередями. Чем больше число очередей, тем сложнее решать эту задачу. К настоящему времени она полностью решена только для случаев двух, трех и четырех очередей.

         В практике часто применяется и другой тип систем множественного доступа, который мы условно назовем системы без очередей. Предположим, что каждый поступающий вызов имеет связь только с обслуживающим сервером - поэтому, никакие два из них не могут "договориться", кому из них идти на обслуживание первым. Следовательно, видится единственный способ возможного "разрешения конфликтов" - это предлагать каждому ожидающему вызову в каждый момент времени с некоторой вероятностью либо посылать сигнал на сервер, либо не посылать.

         Пусть, например, в систему за единицу времени поступает eq 062 вызовов   (где, как и ранее, случайные величины eq 245 являются независимыми и одинаково распределенными,  eq 246), и в каждый момент времени eq 063 каждый из имеющихся вызовов посылает сигнал на станцию с вероятностью eq 247 (независимо от всех других). Будем рассматривать случай невырожденных случайных величин eq 062, причем eq 248. Набор вероятностей eq 249 естественно назвать "дисциплиной", или "алгоритмом" обслуживания.

        Самый простой вариант - когда вероятности eq 247 от eq 063 не зависят и равны одному и тому же числу eq 075. Но в этом случае справедлива

Теорема 4.2. При любом выборе числа eq 075 система без очередей нестабильна!

         Следовательно, надо брать числа eq 247 различными. Сформулируем следующий вопрос: можно ли задать заранее такую последовательность чисел eq 250 , при которой система будет работать стабильно? "Заранее" означает, что при выборе этих чисел не может использоваться никакая информация о состоянии системы. Делалось много попыток ответить на этот вопрос; опубликован ряд статей, где показывается, что для различных классов последовательностей ответ всегда является отрицательным. Однако до сих пор не все случаи изучены, и вопрос остается открытым.

         Допустим теперь, что в каждый момент времени известно общее число вызовов в системе (пусть eq 251 - число вызовов в момент eq 063 ), и можно использовать знание чисел eq 252 для определения вероятности eq 247 . Тогда имеет место следующая

Теорема 4.3. Если eq 253 , то существует алгоритм, при котором система стабильна. Если eq 254 , то таких алгоритмов нет.

Здесь eq 255 - основание натуральных логарифмов и eq 256 .

         Доказательство этого утверждения также проводится с использованием правила насыщения. Предложим алгоритм вида eq 257 , если eq 258 и eq 259 , если eq 260 . Пусть в момент eq 063 в системе находится eq 261 вызовов, где eq 055 очень велико. Тогда eq 262 . Обслуживание будет происходить, если на станцию поступит ровно один сигнал (т.е. один вызов сигнал пошлет, а остальные eq 263 - нет). Это может происходить в одном из eq 055 случаев, каждый из которых имеет вероятность eq 264 . Следовательно, вероятность обслуживания равна eq 265 и, как доказывается в курсе высшей математики, это число сближается с eq 266 с ростом eq 055 . Поэтому при больших eq 055 в течение длительного времени интенсивность обслуживания приблизительно равна eq 266 , что должно быть больше интенсивности входа eq 104 .

        Отметим, что eq 267 . Как следует из Tеоремы 4.3, даже при оптимальном алгоритме сервер вынужден простаивать приблизительно 63 процента времени. Различными авторами рассматривались алгоритмы из более широкого класса (в частности, допускалась возможность вызову каждый раз при определении вероятности подачи сигнала учитывать, сколько раз он пытался подать сигнал до этого), что позволило поднять границу области стабильности с eq 266 до eq 268.

     5.  Системы поллинга

         Вернемся к системам множественного доступа с конечным числом очередей. Один из вариантов улучшения эффективности работы таких систем состоит в использовании так называемого режима разделения времени. Предполагается, что сервер имеет возможность работать с очередями последовательно, в некотором порядке. Такие системы и называют системами поллинга5. Отличие систем поллинга от одноканальных систем с несколькими типами вызовов состоит в том, что в системах поллинга сервер при переходе от одной очереди к другой тратит некоторое время на "переключение".

         Рассмотрим систему поллинга с двумя очередями (системы с большим числом очередей рассматриваются аналогично). Вспомним описание системы с двумя типами вызовов (см. Пример 1 параграфа 3) и предположим, что вызовы каждого типа образуют свою очередь. Пусть сервер обходит очереди по некоторому циклическому правилу (например, правило {1,2,1,1,2} означает, что в течение каждого цикла сервер сначала посещает первую очередь, затем вторую, затем дважды первую и, наконец, вторую. На этом очередной цикл заканчивается и начинается следующий). Предположим, что за один цикл сервер посещает первую очередь eq 065 раз, а вторую - eq 269 раз. За каждый цикл сервер тратит на переходы из одной очереди в другую время eq 270 (будем считать его неслучайным). Зададим два целых положительных числа eq 271 и eq 272 и определим следующее правило обслуживания: при каждом очередном посещении первой очереди, если сервер застает там eq 042 вызовов, то он обслуживает eq 273 из них (т.е. если eq 274, то обслуживается eq 042 вызовов, иначе - eq 271 вызовов). После этого сервер покидает эту очередь и переключается на следующую очередь из его маршрута. Аналогично, при приходе во вторую очередь он каждый раз обслуживает все находившиеся там вызовы, но не больше, чем eq 272.

        Предположим, что распределения случайных величин eq 275 невырождены. Справедлива

Теорема 5.1. Условие

 eq 276  (5.1)

является необходимым и достаточным для стабильности системы поллинга с двумя очередями.

        В частности, если eq 277, то мы получаем первую часть утверждения Теоремы 3.2.

        Поясним смысл условия (5.1). Для этого применим несколько видоизмененный вариант принципа насыщения. Возьмем число eq 063 достаточно большим и рассмотрим вспомогательную систему, в которую в момент времени 0 поступает eq 279 вызовов первого типа и eq 280 - второго, а после этого никаких новых поступлений вызовов нет. Посчитаем приблизительно, за какое время сервер обслужит все пришедшие вызовы. Если это время окажется меньшим, чем eq 063 , то система должна работать стабильно (ведь eq 063 - это время, за которое все эти вызовы поступают в реальную систему!).

        За один цикл обслуживается eq 281 вызовов первого типа (если такое число вызовов в системе есть). Поэтому для обслуживания всех eq 282 вызовов первого типа потребуется приблизительно eq 283 циклов (точнее, если эта дробь не является целым числом, то нужно взять ближайшее целое, большее ее). Аналогично, для обслуживания всех вызовов второго типа нужно приблизительно eq 284 циклов. Следовательно, для обслуживания всех вызовов, пришедших во вспомогательную систему, требуется eq 285 циклов. За эти eq 286 циклов сервер потратит eq 287 единиц времени на обслуживание вызовов первого типа и eq 288 - второго. Так как в каждом цикле он тратит eq 270 единиц времени на переключение, то eq 286 циклов будут длиться время eq 289 Решим приблизительно неравенство

 eq 290 (5.2)

Разделим обе части неравенства на eq 063 и заметим, что (при больших eq 063) eq 291 Значит, неравенство (5.2) эквивалентно неравенству (5.1), что и требовалось показать.


    Литература

1. Саати Т.Л. Элементы теории массового обслуживания. М.; Советское радио, 1971.

2. Боровков А.А. Вероятностные процессы в теории массового обслуживания. М.; Наука, 1972.

3. Гнеденко Б.В., Коваленко И.Н. Введение в теорию массового обслуживания, 2-е изд. М.; Наука, 1987.

4. Цыбаков Б.С., Михайлов В.А. Случайный множественный доступ пакетов. Алгоритм дробления. // Проблемы передачи информации, 1980, Т. 16, вып. 4, с. 65-79.

5. Рыбко А.Н., Столяр А.Л. Об эргодичности случайных процессов, описывающих функционирование открытых сетей массового обслуживания.// Проблемы передачи информации, 1992, Т. 28, вып. 2, с. 3-26.

6. Malyshev V.A. Networks and dynamical systems.// Advances in Applied Probability, 1993, Vol. 25, p. 140-175.

7. Baccelli F., Foss S. On the saturation rule for the stability of queues. // Journal of Applied Probability, 1995, Vol. 32, p. 494-507.


Footnotes:

2 Мы приведем один пример такой случайной величины (который потребуется в следующем параграфе) и посчитаем ее математическое ожидание. Рассмотрим последовательность независимых бросаний монеты, в каждом из которых герб выпадает с вероятностью eq 075 , а решетка - с вероятностью eq 076 . Будем считать, что eq 077 . Пусть eq 078 - случайная величина, означающая номер испытания, при котором герб выпадает в первый раз. Найдем вероятность eq 079 при всех eq 080 . Ясно, что eq 081 . Далее, событие eq 082 означает, что одновременно при первом бросании выпадает решетка и при втором - герб. И так как испытания независимы, то eq 083 . Совершенно аналогично, при каждом eq 084 событие eq 085 означает, что при каждом из первых eq 086 бросаний выпадает решетка, а при eq 087 -ом бросании - герб. И из независимости испытаний следует, что eq 088 . Значит, случайная величина eq 078 принимает значение eq 089 с вероятностью eq 081 , значение eq 091 с вероятностью eq 092 и так далее. Из школьного курса вы знаете, что сумма геометрической прогрессии eq 093 равна eq 094 . Поэтому eq 095 Так как случайная величина eq 078 принимает лишь неотрицательные целые значения, то естественно определить ее среднее равенством eq 096 , где сумма берется по всем натуральным eq 087 . И так как eq 097 то eq 098 . Если, в частности, eq 099 (монета симметрична), то равенство eq 100 означает, что нам "в среднем" потребуется два бросания до выпадения герба. Если eq 101, то потребуется "в среднем" три бросания, и т.д.

3 Понятие "закон больших чисел" хорошо известно не только математикам - его можно найти, скажем, и в философском словаре, где оно трактуется так: "с ростом числа испытаний (наблюдений) эмпирическое среднее сближается с математическим средним". Физики говорят проще и выразительнее: "среднее по времени стремится к среднему по пространству".

4 На житейский язык термин "принцип инвариантности" можно перевести как "с чего бы мы ни начали, всегда придем к одному и тому же". Один из известнейших "принципов инвариантности" звучит так: "все дороги ведут в Рим".

5 В английском языке слово "поллинг" (polling) используется в различных смыслах; мы будем иметь в виду один из основных, означающий в переводе "упорядоченный опрос". Термин "система поллинга" уже укоренился в русскоязычной математической литературе, хотя желающие могут называть их и "системами упорядоченного опроса"


File translated from TEX by TTH, version 1.58, Htex, и Н.И.Черновой в роли TeX2gif-конвертора.

Initiated October 15, 1999

Aport Апорт Top 1000