N95(17)2008
А.А. Емельянов
Модели процессов массового обслуживания
Экономическая функция процесса распределения работ в организации должна соответствовать замыслу того, кто принимает решение. В общем случае в задачах массового обслуживания в качестве экономической функции рассматривают полные потери на ожидание клиентов и простой обслуживающих каналов, или, более точно, математическое ожидание издержек, вызываемых ожиданием клиентов и простоем обслуживающего персонала, каналов или устройств. В статье изложены основные разделы современного математического аппарата исследования систем массового обслуживания.
В середине XX века выдающийся ученый в области исследования операций Арнольд Кофман сказал: «Очереди, ожидание являются бедствием нашей эпохи. Можно считать, что во многих случаях они почти неизбежны, если только мы не согласны пойти на расходы, размеры которых не идут ни в какое сравнение с выгодой, получаемой от быстрого обслуживания. Когда же соображения безопасности или другие неотложные требования заставляют обеспечить такую скорость обслуживания, при которой время ожидания остается ниже некоторого установленного значения, теория массового обслуживания позволяет предусмотреть необходимые меры и рассчитать их стоимость» [5].
И сейчас очереди — явление, довольно часто наблюдаемое в нашей повседневной жизни, которое встречается во многих экономических, военных, социальных и других процессах. В 40-50-х годах XX века сформировалась теория массового обслуживания. Ее создавали и развивали такие зарубежные ученые, как Н. Джейсуол, Д. Кен-далл, Л. Кленрок, Х. Кобаяши, А. Кофман, Р. Крюон, Ф. Поллачек, Т.Дж. Саати, а также отечественные ученые-математики Н. П. Бусленко, А.Я. Хинчин и другие исследователи.
Однако в последние 15 лет практическим приложениям этой теории к россий-
ским проблемам уделялось незаслуженно мало внимания. В связи с развитием и реорганизацией некоторых отраслей экономики России за последние 15 лет и связанных с ними научных направлений (специальностей и специализаций), особенно таких, как математические и инструментальные методы экономики, связь и информатизация, логистика, сфера услуг, возникла необходимость опубликования данной статьи.
Изложенные в статье материалы являются авторским обобщением наиболее интересных результатов известных ученых, опубликованных в XX веке (перечень их работ приведен в «Списке литературы»). При написании статьи также использованы результаты исследований автора.
При рассмотрении теории массового обслуживания и ее приложений автор ограничился минимумом доказательств правомерности использования математического аппарата. Дело в том, что для получения некоторых формул необходимо хорошо ориентироваться в марковских и полумарковских процессах, знать теорию функций комплексных переменных и уметь применять операционное исчисление (например, преобразования Лапласа). Поэтому, чтобы не ограничивать читательскую аудиторию в связи с необходимостью столь специальной подготовки, сложные математические доказательства здесь не приводятся. Одна-
92
Но5(17)2008
ко основы теории вероятностей и математической статистики читатель должен знать.
Автор надеется, что намеренно упрощенный характер приведенных рассуждений не введет читателя в заблуждение относительно методов теории вероятностей, которая представляет собой вполне стройную и математически строгую науку.
Общее описание процессов массового обслуживания
Процессы массового обслуживания обладают следующими общими характеристиками.
1. Поступление сообщений или распоряжений на обслуживание через неравные или равные промежутки времени в заданный пункт, называемый центром обслуживания. Примеры: прибытие грузовиков на погрузочную станцию, вход клиентов в ма-
газин, прибытие судов в порты, поступле- § ние заказов на изготовление в ателье и пр. * Эти сообщения, или распоряжения на об- | служивание, в дальнейшем будем называть ¡^ заявками1 (иногда — требованиями). <
2. В центре обслуживания сосредоточены один или несколько каналов (линий) обслуживания, либо станций (средства сообщения, багажная касса, продавец и пр.). В известных случаях приходится ожидать, пока канал освободится, для удовлетворения заявки на обслуживание. Время обслуживания заявок в зависимости от случая может быть переменным (т.е. определяемым функцией), случайным (т.е. подчиненным одному из законов распределения случайных величин) или фиксированным.
Приведем несколько характерных примеров массового обслуживания (табл. 1).
3. Поступление заявок может разделяться следующими промежутками времени:
Таблица 1
Примеры массового обслуживания в экономических задачах
Характер заявки Вид обслуживания Канал обслуживания, или станция
Покупатель Продажа товаров Продавец
Судно Загрузка, разгрузка Грузовой причал
Самолет Взлет, посадка Полоса
Телефонный вызов Разговор Телефонная сеть
Прибытие фуры с грузом Таможенный контроль Таможенник
Сообщение Расшифровка Дешифратор
Машина, требующая ремонта Ремонт Механик
Пожар Тушение огня Пожарная машина
Заказ на изготовление Изготовление Мастерская
Корреспонденция Регистрация Канцелярия
Заказ на продажу с доставкой Доставка и продажа Коммивояжер
1 Обезличенное, но общепризнанное понятие «заявка», используемое в середине ХХ века, к настоящему времени претерпело серьезные изменения. Более широким понятием, введенным создателем первой в мире системы имитационного моделирования Дж. Гордоном (Англия), с 1967 года стал «транзакт». Однако в конце 90 годов ХХ века М. Эриксон, А. Якобсон, Э. В. Попов, А.А. Емельянов и другие, приложившие усилия к развитию методов имитационного моделирования, теории акторов, акторных сетей и их применению в областях экономики, социологии, экологии и информатики, наряду с терминами «заявка» и «транзакт» стали применять персонализированное понятие «актор».
Ив 5(17) 2008 '
а) равными;
б) неравными, но определенными;
в) неравными, вероятностные характеристики которых известны, и тогда говорят, что интервалы времени их поступлений являются случайными величинами.
4. Продолжительность, или время, обслуживания может быть:
а) постоянной;
б) переменной, но определенной;
в) представлять собой случайную величину, вероятность которой известна.
Если интервалы между последовательными поступлениями заявок и/или время обслуживания неопределенны и вероятность их неизвестна, решение задачи невозможно.
Структура процесса массового обслуживания
Для определения различной структуры процессов массового обслуживания на рис. 1 представлена схема процесса с 3 источниками заявок, 3 очередями и 4 каналами (станциями) обслуживания.
Для возникновения очереди достаточно, чтобы заявки поступали и/или обслуживание производилось в течение неопределенного времени.
Очередь также может появиться при постоянных интервалах времени между заявками и фиксированном времени обслуживания, если продолжительность последнего больше, чем интервалы между заявками. Очередь при этом возрастает равномерно и неограниченно. Однако этот случай малоинтересен, и мы исключим его из настоящего исследования.
1-й канал
1-й источник
3 <0
43 о
г
со
о §
со
0 и
1
0 &
2-й источник
ст
3-Й источник
1-я очередь
- (XXX) / 2.»
2-я очередь
ТТЛ
3-я очередь
(ХХХХ)
канал
В источник (в случае замкнутых систем),
в другую часть системы м_
или на уничтожение
Рис. 1. Процесс массового обслуживания
94
№5(17)2008
Совокупность очередей и каналов составляет обслуживающую систему (или просто систему). Рассмотрим 5 особенностей процесса, показанного на рис. 1, которые будут учитываться при составлении соответствующей модели.
1. Заявки. Заявки могут быть типовыми или уникальными, имеющими характерные для них свойства или параметры (например, приоритеты).
2. Источники. Заявки 1-го и 2-го источников объединяются в общий поток, который поступает в 1-ю очередь. При построении модели эти два источника могут быть объединены в один общий источник, если только нет каких-то уникальных требований со стороны заказчика модели. Заявки 3-го источника образуют изолированный поток, поступающий во 2-ю и 3-ю очереди, поэтому он может быть представлен другим узлом модели.
3. Каналы. Заявки 1-й очереди обслуживаются исключительно 1-м каналом, а 2-я и 3-я очереди обслуживаются 2-м, 3-м и 4-м каналами. Поэтому 1-й канал можно представить одним узлом обслуживания, имеющим 1 канал, а 2-й, 3-й и 4-й каналы — другим узлом, имеющим 3 канала обслуживания.
4. Очереди. В общем случае очередь становится непустой, как только все каналы обслуживания будут заняты, а из одного из источников появится новая заявка. Формирование 1-й очереди заявок осуществляется из 1-го и 2-го источников. Заявки из 3-го источника попадают во 2-ю и 3-ю очереди по той причине, что дисциплины их ожидания неодинаковы: например, заявки, направляемые во 2-ю очередь, имеют приоритет в отношении заявок, направляемых в 3-ю очередь.
Совокупность отношений порядка, или приоритетов, соблюдаемых в очередях, создает дисциплину ожидания. С точки зрения обеспечения такой дисциплины 2-я и 3-я очереди могут быть представлены единственным узлом для обслуживания ак-
торов в соответствии с их относительными § приоритетами. Например, если заявки во * 2-й очереди имеют приоритет 2, а заявки | в 3-й очереди обладают приоритетом 1, то ¡^ при поступлении каждой новой заявки оче- < редь модели динамически переупорядочивается по приоритетным группам в единой очереди по правилу относительных приоритетов.
5. Судьба заявок после обслуживания. По завершении обслуживания заявка может пойти по разным путям. Например, она может либо вернуться в источник заявок (случай замкнутых систем), либо перейти в другую часть большой системы, либо пойти на уничтожение.
Примем следующие обозначения:
m — общее число заявок, которые могут претендовать на обслуживание (m может быть бесконечным);
п — число заявок, поступивших в систему (ожидающих в очереди или уже обслуживаемых);
V — число заявок, ожидающих в очередях;
j — число заявок, уже находящихся в обслуживании;
Ф — число незанятых каналов;
в — число каналов.
Тогда
п =
если п<в IV + ¡, если п > в'
Величины п, V и j меняются во времени и являются случайными, т.е. изменяются случайным образом в соответствии с каким-либо законом распределения вероятностей. Если обозначить рп вероятность нахождения п заявок в системе, то среднее значение, или математическое ожидание, количества требований в системе будет составлять
т
п = 0р0 + 1р1 + 2р2+...+трт =£ прп, (1)
п = 0
где т может быть бесконечным.
95
N95(17)2008
В случае единственной очереди, если количество каналов, обеспечивающих обслуживание, равно в, среднее число заявок в очереди будет равно:
V = 1р1+5 + 2р2+5 + ... + (т - Б )рт =
т
= £ (п - Б )Рп. (2)
п=5+1
Смысл этой формулы легко понять: очередь появляется, как только п начинает превышать Б, т.е. прип = Б +1, п = Б + 2, ..., причем соответствующие вероятности равны
РБ+1 , рБ+2 , ... .
Вместо того чтобы определить среднее количество заявок, находящихся в обслуживании, нередко предпочитают оперировать средним числом незанятых каналов. Можно найти, например, компромиссное решение между затратами на ожидание удовлетворения заявок и издержками простоя каналов.
Определим среднее количество незанятых каналов:
Ф = Бро + (Б-1)р1 + (Б -2)р2 + ... + 1р3_1
з
= £ (Б _ п)рп.
(3)
3 <0
43 о
г
со
о §
со
0 и
1
0 &
Между средними значениями величин п, V и ф существует соотношение:
п = V + Б -ф,
которое нетрудно доказать. Для этого достаточно преобразовать соответствующие суммы. Имеем:
т
п = £ прп,
т
= £ (п - Б )рп
п=Б+1 Б
Ф = £(Б - п)рп.
п=0
Вычислим разность:
тБ
у-ф= £ (п - Б )рп-£ (Б - п)рп.
Это выражение равно:
тБ £ (п - Б )рп + £ (п - Б )рп =.
п=Б+1 п=о
т т т
= £ (п - Б )рп = £ прп - б £ рп
п=0 п=0 п=0
Поскольку
т
£ прп = п,
п=0
а сумма вероятностей всех состояний от п = 0 до п = т имеет значение 1, то
V-ф = п - Б.
Случайный характер поступления заявок и обслуживания
Прежде всего, для характеристики потока заявок недостаточно указать, что заявки поступают случайно. Необходимо иметь статистическое описание этого процесса и подобрать адекватный закон распределения вероятностей появления заявок во времени. Появление заявки — это событие. Дадим необходимые разъяснения по этому поводу.
Определим понятие «случай». Мы говорим, что событие происходит случайно, если причины его реализации независимы и настолько многочисленны, что невозможно выяснить все эти причины, чтобы сформулировать законы, управляющие появлением события. Например, мы не можем точно предвидеть такие обстоятельства, как:
• моменты поступления требований на почту;
• количество бензина, которое пожелает купить автомобилист, остановившийся на станции обслуживания;
• число, которое выпадет при бросании игральной кости,
и т. д.
Однако если проделать некоторое число испытаний или событие воспроизводится достаточное число раз, можно учесть ре-
96
п=0
п=0
Но5(17)2008
зультаты испытаний и произвести статистическое исследование наблюдаемого явления.
Предположим, мы сосчитали число автомобилей, проходящих по автостраде в одном направлении в течение 1 мин, и повторили эту операцию последовательно 100 раз. В первую минуту было 6 автомобилей, во вторую — 9, в третью —11, в четвертую — 5 и т.д. Составим таблицу (табл. 2), показывающую число случаев (частоту m), при которых было отмечено n автомобилей (n = 0,1,2,3,...). Так, мы зарегистрировали n = 10 автомобилей в минуту m = 9 раз,
11 автомобилей — 7 раз и т.д. Эти измерения дают количественное представление процесса.
Поскольку число наблюдений достаточно велико, применяют следующее эмпирическое правило [5]:
Вероятность наступления события Е практически представляет собой отношение числа n исходов, при которых событие Е наступает, т.е. благоприятствующих событию исходов, к полному числу N элементарных исходов.
В нашем примере вероятность прохождения 12 автомобилей за 1 мин равна p12 = 0,05.
Вероятность же прохождения более
12 автомобилей за 1 мин равна:
Р( > 12) = Р13 + Р14 + Р15 + P16 + P17 = = 0,03 + 0,02 + 0,01 + 0,01 + 0,00 = 0,07.
Точно так же получаем, что вероятность прохождения 9 автомобилей и менее за 1 мин составляет:
P( < 9) = P0 + P1 + P2 + Рз + P4 + P5 + Рб + P7 + P8 + P9 =
= 0,00 + 0,00 + 0,01 + 0,03 + 0,05 + 0,10 + 0,12 + + 014 + 015 + 012 = 0,72.
Понятие вероятности придает конкрет- § ный смысл понятию «случай». Говорят, что * событие происходит случайно или явля- | ется случайным, если его реализации мож- ¡^ но приписать некоторую вероятность. Зна- < чение этой вероятности может быть определено с большей или меньшей точностью. Благодаря методам теории массового обслуживания эту точность удается повысить.
Итак, такие процессы, как поступление требований на почту, заявки на горючее на станции обслуживания, телефонные вызовы, необязательно подчиняются единому и универсальному закону распределения вероятностей. Существует бесконечное множество законов распределения вероятностей. Однако чаще всего если удовлетворяются некоторые условия, то проявляется один и тот же закон. Например, определенные условия, которыми как раз наиболее часто характеризуется поток заявок в процессах массового обслуживания, позволяют применять в отношении этого потока распределение вероятностей, называемым законом Пуассона.
Закон Пуассона
Рассмотрим последовательность одинаковых событий Е, следующих во времени одно за другим (например, заход в магазин, движение автомобилей по автостраде, обычный телефонный звонок и т.д.).
Пусть начиная с некоторого исходного момента Г0 = 0 и до момента Г произошло п событий. Так как п является случайной величиной, мы должны приписать ей некоторую вероятность, допустим рп (Г). Эта вероятность является функцией времени. Сделаем предположения о наличии следующих свойств потока автомобилей.
Таблица 2
Таблица частот появления автомобилем на автостраде
n 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 >17
m 0 0 1 3 5 10 12 14 15 12 9 7 5 3 2 1 1 0
97
N95(17)2008
I <0
43 о
г
со
о §
со
0 и
1
0 &
1. Свойство стационарности. Вероятность рп(Г) зависит только от промежутка времени Г, но не зависит от начального момента. Например, если вероятность проезда 9 автомобилей по автостраде между 14 ч 21 мин и 14 ч 22 мин равна 0,12, то та же вероятность должна быть и между
13 ч 28 мин и 13 ч 29 мин или между
14 ч 31 мин и 14 ч 32 мин. В этом случае говорят, что поток является однородным во времени (равномерным) или стационарным.
2. Свойство ординарности. Принимаем, что два события никогда не происходят в один и тот же момент (например, два покупателя никогда не входят в магазин точно в одно и то же время, два автомобиля никогда не едут точно бок о бок). Скажем точнее: вероятность такого события очень мала (событие очень редкое).
3. Отсутствие последействия. Если рассматривать очень малый промежуток времени АГ, выбранный в любой момент, вероятность того, что хотя бы одно событие произойдет в течение этого интервала времени, равна Х-АГ. Величина X называется интенсивностью (средней плотностью) потока заявок, она измеряется в количестве заявок потока в единицу времени. Выберем, например, в качестве интервала времени АГ = 1/10 с (в случае необходимости выбираем меньший интервал времени, чтобы практически не было поступления двух заявок за АГ) и каждую 1/10 с будем наблюдать, не проехал ли по дороге автомобиль. Пусть результат наблюдения будет таким:
нет, нет, да, нет, да, да, нет, нет, нет, нет, нет
и т.д. — для каждой 1/10 с в продолжение 1 ч.
Предположим, что было отмечено: 540 да и 35 460 нет.
Параметр потока зависит от масштаба времени и будет равен 9 за 1 мин, или 540 за 1 ч, или 0,15 за 1 с. Если поток стационарный, то вероятность прохождения машины за любую 1/10 с будет равна 540/36 000 = = 0,015, а за 1/100 с — 0,0015 и т.д. Посто-
янная величина X, отнесенная к 1 мин,будет равна 9, а вероятность Х-АГ = 0,0015 для X = 1/100 с. Таким образом, можно считать, что эта вероятность зависит только от АГ и не зависит от предшествующих прохождений машин. Это и есть отсутствие последействия.
Можно доказать, что вероятность рп (Г) выражается формулой [5]:
рп ( Г)
(ХГ)п е-п!
где е — основание натурального логарифма (е = 2,71828...);
п! = п(п -1)(п -1) - 3 - 2 -1 — факториал. Распределение вероятностей вида
К а) = '
п!
называется распределением Пуассона. Когда поток событий удовлетворяет трем сформулированным выше свойствам, он называется пуассоновским, а закон распределения вероятностей является законом Пуассона.
Например, для а = X -АГ = 8 имеем:
р0 = 0,000; р5 = 0,091; р10 = 0,099; р<
■■ 0,009
0,002; рб = 0,122 р7 =0139 р8 = 0139 р9 =0124
р1 = р2 = 0,010 рэ = 0,028 р4 = 0,057
р„ = 0,072; р Р2 = 0,048; р13 = 0,029 ры = 0,016
0,004 р17 = 0,002 р18 = 0,000
Вид распределения для этого случая показан на рис. 2.
Сравнивая эти теоретические значения со значениями, наблюдаемыми экспериментально и приведенными в табл. 1, можно установить, что закономерность прохождения автомобилей по рассматриваемой автостраде очень близко следует закону Пуассона. Такое явление часто также называют пуассоновским.
Пуассоновские потоки наблюдаются часто, поскольку в общем случае условия, сформулированные выше, являются почти достоверными в процессах, включающих
98
№5(17)2008
Т = 1;
Таким образом, если стохастический процесс подчиняется закону Пуассона с параметром X, интервалы между событиями — случайные величины, которые подчиняются экспоненциальному закону с тем же параметром X.
Например, для Х = 8 за 1 мин получаем следующие данные (табл. 3).
Таблица 3
Экспоненциальный закон распределения
Рис. 2. Вид распределения Пуассона для а = 8
стохастический характер поступления заявок, поэтому выполнение таких условий нужно показывать в каждом новом случае.
Для распределения Пуассона среднее, или математическое, ожидание определяется как сумма ряда
п=£ п. рп( г)=± п. ^^=хг
п=0 п=0 п!
и в точности равна среднему числу событий Е, наблюдаемых в интервале Г. Среднеквадратичное (или стандартное) отклонение равно
а = 4а = 41.
Закон распределения вероятностей интервалов времени между двумя последовательными событиями, подчиняющимися закону Пуассона, также важно знать. Вероятность того, что два события разделены интервалом времени Т, большим заданного Г, равна:
р(Т > Г) = в-1'.
Несложно получить среднее значение и стандартное отклонение величины Т:
г, с хг Р (Т > 0
0 0 1
2 0,26 0,766
4 0,53 0,587
6 0,80 0,449
8 1,06 0,346
10 1,33 0,264
12 1,60 0,201
14 1,86 0,155
16 2,13 0,118
18 2,40 0,090
5 10 15 I
Рис. 3. График функции р(Т > Г)
99
I
I? I
Таким образом, вероятность интервала, большего 10 с между двумя заявками, равна 0,264, а средний интервал составляет 60/8 = 7,5 с. На рис. 3 приведен график функции по данным табл. 3.
N95(17)2008
I <0
43 о
г
со
о §
со
0 и
1
0 &
Продолжительность обслуживания
Как было сказано выше, продолжительность обслуживания может быть постоянной, изменяющейся по определенному закону или случайной величиной. Если время обслуживания является случайной величиной, то закон распределения вероятностей часто представляется экспоненциальной кривой (рис. 3). Если через ц обозначить число заявок, которые обслуживаются в единицу времени, при условии, что обслуживание не прекращается, продолжительность обслуживания Г имеет закон распределения вероятностей:
р(Т > Г) = .
В некоторых случаях один и тот же объект может представлять собой в разные моменты времени как заявку, так и устройство обслуживания. Например, на остановке такси, куда приходят пассажиры и подъезжают такси, может возникнуть очередь такси или образоваться очередь пассажиров. Для последних временем обслуживания является интервал между отъездом такси, которым пассажир не успел воспользоваться, и прибытием следующего. Однако в случае, когда очередь образуют такси, пассажиры для них будут играть аналогичную роль устройств обслуживания.
На практике полезно исследовать следующие ситуации:
1) параметры входа и выхода:
• входящий поток;
• обслуживание;
2) интервалы времени:
• постоянные интервалы;
• переменные интервалы;
• случайные интервалы;
3) источники и каналы обслуживания:
• ограниченное число заявок или каналов;
• неограниченное число заявок или каналов;
4) дисциплины обслуживания:
• без приоритетов;
• в порядке приоритета;
• обслуживание с разделением времени;
• иные дисциплины.
Можно представить себе сложные и разнообразные случаи — например, когда длина очереди оказывает влияние на параметр потока или параметр обслуживания (длительность обслуживания переменная и определяется функцией от длины очереди). Это явление подобно тем, которые возникают в автоматическом управлении с помощью следящей системы, где действие оказывает обратное воздействие на причину. Далее ограничимся моделями, соответствующими наиболее частым и простым случаям.
Система с одним каналом обслуживания
Исследуем сначала, что происходит в очереди с единственным каналом обслуживания, когда входящий поток заявок распределяется по закону Пуассона, а интервалы времени обслуживания — по экспоненциальному закону, представленному на рис. 3. В этом разделе под словом «система» будем понимать совокупность двух узлов: очереди и канала обслуживания.
Всякий, кто отправляется куда-нибудь, где предполагается ожидание, интуитивно задается вопросом: какова вероятность возникновения очереди определенной длины? Если предполагается, что в определенное время вероятность очереди в 20-25 человек близка к 1, каждый выберет другой момент, когда эта вероятность ему представляется меньшей.
Во всех процессах массового обслуживания закон распределения вероятностей рп числа заявок в системе составляет базис, на основании которого могут быть выявлены
100
№5(17)2008
количественные соотношения параметров системы. Мы не будем делать подобных вычислений, а приведем лишь основные формулы и вытекающие из них следствия.
Предположим, что процесс массового обслуживания является установившимся2, т.е. что вероятность рп не изменяется во времени. Вообще говоря, это может быть справедливо только для некоторого интервала времени, величину которого следует определить в первую очередь. Изменение вероятности рп может быть вызвано двумя причинами:
1) изменением интенсивности потока X и/или параметра обслуживания ц;
2) переходным процессом, возникающим от начала обслуживания до момента стабилизации ситуации. Продолжительность этого переходного процесса является функцией X и ц.
Таким образом, измерение или знание X и ц должно быть отнесено к интервалу времени, в котором эти величины рассматриваются как постоянные, причем этот интервал должен быть значительно больше ин-
тервала, необходимого для установления процесса. Например, будет правильным принять для интервала измерения продолжительность, которая в 3 или 4 раза больше продолжительности переходного процесса.
Величина
Р = - (4)
ц
называется загрузкой (а в системах связи — траффик-интенсивностью или коэффициентом использования). Эта величина характеризует процесс массового обслуживания.
При рассмотрении процесса как установившегося вероятность рп выражается формулой
Рп =РП (1 -Р), (5)
гдеп = 0,1,2,3,4,...; 0<р< 1.
С помощью выражений (4) и (5) можно получить более удобную формулу, которую математики называют рекуррентной:
Рп =Р Рп-1. (6)
В табл. 4 значения вероятностей Рп указаны как функции п и р. Из таблицы видно,
I? I
Таблица 4
Значения вероятностей количества заявок в системе
р 0 1 2 3 4 5 6 7 8
0,1 0,900 0,090 0,009 0,000
0,2 0,800 0,160 0,032 0,006 0,001 0,000
0,3 0,700 0,210 0,063 0,018 0,005 0,002 0,000
0,4 0,600 0,240 0,096 0,038 0,015 0,006 0,002 0,000
0,5 0,500 0,250 0,125 0,062 0,031 0,015 0,007 0,004 0,002
0,6 0,400 0,240 0,144 0,086 0,051 0,031 0,018 0,011 0,006
0,7 0,300 0,210 0,147 0,102 0,072 0,050 0,035 0,024 0,017
0,8 0,200 0,160 0,128 0,102 0,081 0,065 0,052 0,041 0,033
0,9 0,100 0,090 0,081 0,072 0,065 0,059 0,053 0,047 0,043
2 Не следует смешивать понятия «установившийся» и «стационарный». «Установившийся» означает только то, что переходный процесс по запуску системы завершился (например, системы массового облуживания), а «стационарный» — это свойство процесса (например, случайного процесса Пуассона).
101
N95(17)2008
что наиболее важная вероятность — это вероятность отсутствия ожидания, она соответствует п = 0 и определяется выражением (6).
Интенсивность обслуживания ц должна быть больше интенсивности входящего потока X, в противном случае очередь будет неограниченно расти.
Вероятность того, что имеющееся в системе число заявок N меньше или равно п, определяется формулой:
р(N < п) = ро + р^+...+рп = 1 -рп+1.
Вероятность того, что в системе имеется число заявок N, большее п, равна:
р(N > п) = 1 -р(N < п) = 1 -(1 -рп+1) =рп+1.
Например, вероятность нахождения более четырех заявок в системе, где р = 0,7, составляет:
р( N > 4) = 0,75 = 0,168.
Среднее число заявок в системе определяется формулой, полученной по правилам геометрической прогрессии:
п ■ рп
п=0
Р
1 -р.
(7)
3
«О
43 о
г
со
о §
со
0 и
1
0 &
1,0 р
Рис. 4. Зависимость среднего числа заявок в системе от загрузки
числу заявок в системе, можно использовать также формулу (7), из которой получаем:
р =
1 + п
Таким образом, среднему значению числа заявок в системе, равному 4, соответствует интенсивность обслуживания р = 4/5.
Среднее число заявок в очереди
Пусть п — число заявок в системе, а V — в очереди, имеем:
если п = 0;
(8)
[п-1, если п > 0. Из этого, однако, не следует, что при п > 0 V = п -1.
Среднее число заявок в очереди в данном случае рассчитывается следующим образом:
- - ч р р
V = п -1 + р0 = ^-р=^-.
1 -р 1 -р
(9)
Так, например, математическое ожидание числа заявок в системе для загрузки р = 5/6 равно 5. На рис. 4 приведен график зависимости среднего числа заявок в системе от загрузки. Для определения загрузки, соответствующей некоторому среднему
С учетом формулы (9) можно написать выражение для среднего числа заявок в очереди:
V = п -1 + р0 = п -р.
Иногда представляет интерес определение среднего значения коэффициента незанятости (коэффициента простоя) канала обслуживания, примем его за Ке. Для него справедливо:
Ке = 1 -р,
т.е. система всегда либо занята (вероятность этого р), либо свободна (вероятность этого равна1 -р).
Пример 1. Ожидание на почте.
Рассмотрим следующий процесс массового обслуживания. Перед окошком почты ежедневно появляются 70 человек (окошко открыто в течение 10 ч в день). Одно окно может обслужить в среднем 10 человек в час. Каковы средняя длина очереди у окошка и вероятность очереди длиной более 2 человек? Причем учитывается и человек, находящийся в процессе обслуживания.
102
п
№5(17)2008
Полагаем, что имеют место пуассоновский поток и распределение времени обслуживания по экспоненциальному закону.
Принимая Т = 1 ч, находим X = 7 и ц = 10, откуда р = 0,7. Тогда
0,7 1 - 0,7
т.е. среднее число человек в системе (в очереди и у окошка в процессе обслуживания) находится между 2 и 3. В то же время
р(N > 2) = 0,73 = 0,343.
Среднее время ожидания
При тех же предположениях, что и раньше (пуассоновский поток, экспоненциальный закон обслуживания), среднее время ожидания в очереди (т. е. без учета времени обслуживания) выражается простой формулой:
v 1 р
w = — =---—
X ц 1 -р
n
(10)
Это соотношение легко получить, исходя из следующих рассуждений. При установившемся режиме из системы обслуживания выходит в среднем столько же заявок, сколько и поступает в нее. Так как поступает X заявок в единицу времени, получаем:
ш = —. В нашем примере ц = 10и р = 0,7. Тогда X
- = 7 = - = 7/3 =
= з, ш = ц = 10 = 30.
Откуда следует, что среднее время ожидания составляет 14 мин.
Вероятность ожидания, продолжительность которого превышает заданное время Г, рассчитывается по несколько более сложной формуле:
р( > г ) = ре-цГ (1-р >, где е — основание натурального логарифма.
Вероятность любого ожидания составляет:
р( > 0) = 1 -Р0 =р.
Возвращаясь к предыдущему примеру, подсчитаем вероятность ожидания, превышающего 20 мин. Имеем ц = 10, р = 0,7 и Г = 1/3. Из этого следует:
р(> Г) = 0,7е-10-1/3-(1-°,7) = 0,7е-1 = 0,257.
(С помощью калькулятора можно убедиться, что е-1 = 0,36788.) Таким образом, ожидание более 20 мин составляет примерно 25 шансов из 100.
Определение числа заявок в системе в любой момент времени
Для выведения выражений (7) и (10) для определения числа заявок в очереди и задержек в системе потребовались знания основ теории вероятностей и комбинаторики. Для определения задержек обслуживания в системе в любой момент времени с учетом переходного процесса, который возникает в начальный период функционирования системы, обычно применяется либо аппарат полумарковских процессов [10], либо метод Д. Кендалла [6]. Эти методы позволяют составить систему дифференциальных уравнений для рассмотренного случая с экспоненциальным распределением времени обслуживания:
Ро( t) =-Xpo( t) + цр( t) для n = 0,
Pn( t) = Xpn-1( t) - (X + ц )pn (t) + ^Pn+1( t) для n >1.
103
Число уравнений является неограниченной сверху величиной. Установившийся режим по завершении переходного процесса характеризуется соотношением:
lim dPn( t) = 0 ti» dt
Приравняв нулю все уравнения системы дифференциальных уравнений и применив метод полной математической индукции, сразу получим формулу (7), а из нее — формулу (10).
Время ожидания
Вычислим среднее время ожидания в очереди. Прежде всего заметим: каковы
N95(17)2008
бы ни были законы распределения потока и обслуживания при установившемся режиме, в среднем из системы не может уйти заявок больше, чем в нее поступило. Среднее время ожидания существенно зависит от параметра потока3 X. Обозначим через ш среднее время ожидания в очереди, а через и — среднее время ожидания в системе. Тогда имеем:
V
ш = —,
и = - = -
X ц -X
(11)
Разность этих двух величин представляет собой среднее время обслуживания
и - ш ■■
1 - 1 |_Р_:
X ц ) 1-р
1
=
Анализ на чувствительность
Основные операционные характеристики одноканальной системы массового обслуживания с дисциплиной очереди «первым пришел — первым обслужен» приведены в табл. 5 как функции р и ц.
Обратите внимание: при возрастании загрузки р ожидаемые значения таких параметров, как число находящихся в системе заявок, длина очереди, полное время пребывания заявки в системе и чистое время ее пребывания в очереди, также начинают быстро возрастать. Хотя все перечисленные показатели при достаточно больших р < 1 могут принимать сколь угодно большие значения, может пройти весьма много времени, прежде чем система достигнет равновесного состояния. При заданной интенсивности обслуживания ц, когда загрузка р незначительна, основная доля среднего времени пребывания заявки в системе связана с самой процедурой обслуживания (средняя продолжительность процедуры обслуживания равняется 1/ц). Однако при возрастании р, т. е. при увеличении интенсивности входного потока X, большая часть времени пребывания заявки в системе (в смысле его среднего значения) обусловлена ожиданием обслуживания в очереди.
Рассмотрим табл. 5. Пусть единицей времени является 1 ч (или 60 мин). Рассмот-
Таблица5
I <0
43 о
г
со
о §
со
0 и
1
0 &
Характеристики одноканальной системы
р 1 - р п V X ц = 10 и X ц = 20 u
0,1 0,9 0,11 0,01 1 0,11 0,01 2,00 0,06 0,01
0,3 0,7 0,43 0,13 3 0,14 0,04 6,00 0,07 0,02
0,5 0,5 1,00 0,50 5 0,20 0,10 10,00 0,10 0,05
0,7 0,3 2,33 1,63 7 0,33 0,23 14,00 0,17 0,12
0,8 0,2 4,00 3,20 8 0,50 0,40 16,00 0,25 0,20
0,9 0,1 9,00 8,10 9 1,00 0,90 18,00 0,50 0,45
0,95 0,050 19,00 18,05 9,5 2,00 1,90 19,00 1,00 0,95
0,99 0,010 99,00 98,01 9,9 10,00 9,90 19,80 5,00 4,95
0,999 0,001 999,00 998,00 9,99 100,00 99,90 19,98 50,00 49,95
Среднее число требований, поступающих в очередь в единицу времени, равно X. Среднее число требований, покидающих систему, равняется также X. Нет ничего удивительного, что последняя величина не равна ц, а меньше его, если допустить, что канал время от времени бывает незанятым, ведь X < ц по предположению.
104
Но5(17)2008
рим случай, когда р = 0,8. При этом обслуживающий прибор простаивает в среднем в течение 0,2 ч (т.е. каждые 12 из 60 мин), а среднее количество заявок, находящихся в системе, равно 4. При ц = 10, т.е. когда интенсивность обслуживания равняется 10 чел./ч (на каждую заявку прибор расходует в среднем 6 мин своего рабочего времени), средняя продолжительность пребывания заявки в системе равна 0,5 ч (30 мин), а средняя продолжительность его пребывания непосредственно в очереди — 0,4 ч (или 24 мин). Если р = 0,8 и при этом значения интенсивностей входного потока и обслуживания удваиваются (т. е. ц = 20), средняя продолжительность пребывания заявки в системе и средняя продолжительность его ожидания начала обслуживания уменьшаются в 2 раза.
Пример 2. Задача комплектования штата.
На примере следующей гипотетической ситуации попытаемся кратко продемонстрировать, каким образом в процессе принятия управляющих решений учитываются операционные характеристики обслуживающей системы, аналогичные операционным характеристикам, приведенным в табл. 5.
Представим себе, что перед управляющим крупного офиса встала проблема комплектования штата делопроизводителей. Для простоты предположим, что выбор управляющего ограничен 2 вариантами: можно принять на работулибо 2 опытных делопроизводителей, каждый из которых способен в среднем оформлять 20 документов в день, либо 4 неопытных делопроизводителей, каждый из которых оформляет 10 документов в день. В офисе в среднем оформляется 36 документов в день.
Предположим, что управляющий решил воспользоваться приближенной моделью, описание которой приведено выше4. Очевидно, что если на работу будут приняты 2 квалифицированных делопроизводителя, то каждому из них придется оформлять в среднем по 18 документов в день (X = 18), а если в офис придут 4 менее квалифи-
цированных делопроизводителя, то каждому из § них придется оформлять в среднем по 9 доку- Л ментов в день (X = 9). Нетрудно убедиться, что ¡3 в каждом случае загрузка равняется 0,9(р = 0,9). ^
Средняя продолжительность периодов, в те- < чение которых каждый делопроизводитель будет занят оформлением документов, вычисляется по формуле (11):
• в первом случае средняя продолжительность той доли времени, в течение которого будет загружен работой каждый из опытных делопроизводителей, равна:
и = 1 /(20 -18) = 1/2, т. е. половине рабочего дня;
• при втором варианте средняя продолжительность доли времени, в течение которого будет загружен работой каждый неопытный делопроизводитель, составит:
и = 1/(10 - 9) = 1, т.е. полный рабочий день.
Далее возникают вопросы:
1. В какой степени эта простая модель приближается к действительности?
2. Почему средняя продолжительность задержки документа в реальных условиях окажется меньшей по сравнению со средней продолжительностью пребывания документа у делопроизводителя, вычисленной по формуле (11)?
3. Какие, на ваш взгляд, дополнительные соображения следует учесть в связи с решением дилеммы, возникшей перед управляющим офиса?
Ответы на поставленные вопросы частично будут получены в следующем разделе. Для получения ответов в полном объеме необходимо провести дополнительные исследования и, возможно, применить аппарат имитационного моделирования.
Все оценки в данном примере следует понимать в смысле средних значений.
105
N95(17)2008
Случай произвольного распределения длительностей обслуживания (формула Поллачека-Хинчина)
Варианты одноканальных моделей, в которых распределение продолжительностей интервалов между поступлениями заявок и распределение длительностей интервалов обслуживания не являются экспоненциальными, в общем случае не имеют аналитических решений. Однако весьма несложным оказывается вычисление ожидаемого количества заявок в системе массового обслуживания и средней продолжительности их пребывания в ней в том случае, когда входной поток заявок является пуассонов-ским (т.е. характеризуется экспоненциальным распределением интервалов поступления), а относительно вида распределения длительностей обслуживания не делается никаких специальных предположений.
Пусть интервал времени обслуживания распределен по произвольному закону д(Г) с математическим ожиданием интервала обслуживания = 1/ц и дисперсией D = ст|. Пусть, далее, V — вариация длительности обслуживания, V = ст|/Г|. Вариация определяется:
V = Var
Длительность обслуживания
= |к--1 д( I №.
I <0
43 о
г
со
о §
со
0 и
1
0 &
Тогда можно определить среднее количество заявок в системе (как математическое ожидание):
п =р +
X2V + р2
2(1-р)
и среднюю длину очереди:
_ X2V + р2
V -
(12)
2(1-р)
Если предположить, что принята дисциплина «первым пришел — первым обслужен», то для средней продолжительности пребывания заявки в системе обслуживания справедливо следующее соотношение:
и = М + = -
1 ^ +р2 ■ 1 1 X2V + р21 р +-— 2(1-р) _
X 1 2(1-р) ] Н--- ц ~х
(13)
Это выражение было получено Ф. Поллаче-ком и А.Я. Хинчиным в середине XX века.
Формула (12) показывает, что среднее число заявок в системе возрастает с увеличением дисперсии (разброса) времени обслуживания D = ст| для заданных значений X и ц. Можно заметить, что минимум среднего числа заявок в такой системе имеет место при ст8 = 0, т.е. когда время обслуживания постоянно:
тт п=р +
2(1 -р)'
а вероятность того, что система простаивает, как и прежде, определяется соотношением р(0) = 1 - р, причем р < 1.
Подробное доказательство корректности формулы (12) можно найти, например, у Г. Вагнера (решение методом Кендалла [2]) или у Т. Саати (решение с помощью вложенных сетей Маркова [10]).
Наконец, еслист| =1/ц2(экспоненциаль-ное распределение), вновь получаем формулу (7):
п =-р- .
1 -р
Из формулы Поллачека-Хинчина (13) следует, что если интенсивность потока X приближается к интенсивности обслуживания ц, т.е. р^ 1, длина очереди неограниченно возрастает. Следовательно, для сокращения длины очереди при данном распределении продолжительности обслуживания надо уменьшить загрузку р = X/ц. Отсюда видно, что загрузка характеризует саму сущность проблемы. Когда р увеличивается, 1 -р уменьшается. Это говорит о том, что решение задачи очередей требует компромисса между затратами на уменьшение среднего числа заявок в системе и издержками, связанными с оборудованием и обслуживающим персоналом.
Число заявок в очереди V в рассматриваемом случае с произвольным распределением времени обслуживания остается в том же соотношении (9) с числом заявок в системе п:
106
2
2
0
Ив5(17) 2008
V = П -1 + Р0 =
1 -р'
Поэтому справедливо правило:
Если принять предположение об экспоненциальном распределении времени обслуживания, т.е.
Ь =1, ц
то снова придем к формуле (10):
ш = -
1 . ц 1 -р
Чтобы убедиться в правильности понимания приведенных выше формул, обратимся вновь к примеру 2 «Задача комплектования штата».
Напомним: квалифицированный делопроизводитель может оформить за день 20 документов, в то время как неопытный — всего лишь 10 документов. Поскольку среднее количество документов, которое приходится оформлять делопроизводителям за день, равно 36, на каждого из опытных делопроизводителей будет приходиться в среднем 18 документов, а на каждого малоопытного — 9 документов.
При экспоненциальном распределении длительностей процедур оформления 1 документа среднее количество документов, находящихся на исполнении у каждого делопроизводителя (как в первом, так и во втором варианте подбора кадров), равно 9. Согласно формуле (11) среднее время пребывания документа у делопроизводителя равняется 1/2 рабочего дня, когда работают 2 опытных делопроизводителя, и 1 рабочему дню, когда работают 4 неопытных делопроизводителя.
Предположим теперь, что вместо экспоненциального распределения длительностей обслуживания имеет место условие V = 0 (т. е. на оформление любого документа тратится постоянный интервал времени, рав-
ный 1/20 или 1/10 продолжительности рабо- § чего дня). Тогда согласно формуле (12) сред- * нее количество документов, находящихся | на исполнении у каждого делопроизводите- ^ ля, равно лишь 4,95 (для обоих вариантов). < Но по формуле (13) средняя продолжительность времени, в течение которого документ находится у делопроизводителя, при 1-м варианте (когда в офисе работают 2 опытных сотрудника) равна 0,275 рабочего дня, а во 2-м варианте (когда в офисе работают 4 неопытных сотрудника) составит 0,55 рабочего дня. Таким образом, устранение разброса в длительностях обслуживания почти вдвое уменьшает средние значения данных показателей по сравнению со случаем экспоненциального распределения.
Предположим теперь, что имеет место совершенно иная ситуация: дисперсия оказывается вдвое большей по сравнению со случаем экспоненциального распределения, т.е. D = 2/400 для 1-го варианта (когда в офисе работают 2 опытных сотрудника) и D = 2/100 для 2-го (когда в офисе работают 4 неопытных сотрудника). Легко убедиться, что в этом случае среднее количество документов у каждого делопроизводителя будет равно 13,05. Причем средняя продолжительность пребывания документа у делопроизводителей при реализации 1-го варианта составит 0,725 рабочего дня, а при реализации 2-го будет 1,45 рабочего дня. Таким образом, двукратное увеличение степени разброса длительностей оформления 1 документа по сравнению со случаем экспоненциального распределения увеличивает средние значения указанных выше показателей лишь примерно на 50%. Читателю предлагается самостоятельно проанализировать случай, когда дисперсия оказывается в 3 раза больше по сравнению с дисперсией при экспоненциальном распределении длительностей обслуживания.
Регулирование интенсивности обслуживания
Когда обслуживание осуществляется с применением ручного труда (например,
107
2
2
5
2
На5(17)2008
в сфере услуг, при проведении погрузоч-но-разгрузочных работ и др.), менеджеры стремятся интенсифицировать работу подчиненных, т. е. повысить интенсивность обслуживания с помощью различных стимулов (например, увеличение зарплаты). Если такое регулирование проводится в разумных пределах до появления эффекта «усталости», получается управляемая система (рис. 5).
Поступающие заявки
Обслуженные заявки
I <0
43
о g
со о
S3
Si
со
0
U
1
0 &
Pn
(X /ц )n e-
n/ ц
n!
Среднее число заявок в системе будет равно:
n = —
Рис. 5. Система с управлением интенсивностью обслуживания
Рассмотрим случай, когда интенсивность обслуживания пропорциональна числу заявок в системе п, т. е.
ц п = п-ц,
где ц — параметр обслуживания системы, а интенсивность входного потока X не зависит от п и ц.
Для определенности предположим, что распределение рп вероятностей п заявок в системе подчинено закону Пуассона:
Если p = X/ц< 1, то очереди никогда не будет. Интересно отметить, что в переходном режиме:
n (t) = - (1 - е-ц). ц
Это показывает, что n увеличивается от 0 до X/ц в интервале установления постоянного режима. Если ц мало, то переходный процесс длится долго.
Пусть X = 7, ц = 10. Сравним распределение pn для двух вариантов (табл. 6):
1) цn = ц = const;
2) цn = n -ц.
Для 1-го варианта имеем:
- X /ц 7
n =-— = —,
1 -X /ц 3
откуда среднее число заявок в системе 2 < n < 3.
Для 2-го варианта имеем:
- = X = L
n = ц = 10'
откуда n < 1.
Отсюда видно преимущество системы, в которой параметр обслуживания возрастает пропорционально n.
В качестве примера можно привести «образцовую» столовую, где интенсивность обслуживания ц почти пропорциональна числу ожидающих клиентов. Однако практически, как только число прибывающих
Таблица 6
Два варианта обслуживания заявок
№ Pn
Ц n 0 1 2 3 4 5 6 7 8
1 ц 0,300 0,210 0,147 0,102 0,072 0,050 0,035 0,024 0,017
2 n-ц 0,496 0,347 0,121 0,028 0,005 0,000
108
Ив5(17) 2008
клиентов становится очень большим, осуществить такое обслуживание невозможно по разным причинам, в том числе из-за появления эффекта «усталости», из-за существования физического предела у каждого сотрудника, выше которого его производительность нельзя повысить никакими стимулами. Реально ситуация изменится, если вызвать дополнительных сотрудников, и в системе появится несколько каналов обслуживания.
Система с несколькими каналами обслуживания
Во многих случаях принципиальным вопросом является отыскание количества каналов, при котором обеспечивается обслуживание с минимальными затратами. Иногда рассматривают затраты, связанные как с ожиданием клиентами, так и с бездеятельностью обслуживающего персонала, и оп-
Источник
ределяют количество каналов, для которого общие затраты будут минимальными. Чтобы решить такие проблемы, надо уметь вычислять некоторые величины, формулы которых будут приведены ниже (без доказательств).
Сделаем предположения, которые являются типичными для наиболее часто встречающихся процессов массового обслуживания, когда действует несколько каналов. Если один из каналов свободен, он приступает к обслуживанию 1-го клиента из очереди. Никакого предпочтения клиенту канал не оказывает, т.е. прерывания обслуживания клиентов невозможны. Обслуживание во всех каналах имеет одинаковое экспоненциальное распределение с параметром обслуживания Входящий поток является пуассоновским с параметром X.
На рис. 6 схематично показана одна из возможных ситуаций.
п заявок в системе
Канал 1
Канал 2
Очередь
ЯП
Канал 3
V заявок
Канал й
, г заявок
К---►
Рис. 6. Система с несколькими каналами обслуживания
109
1
I? I
Ms5(17) 2008
Используем следующие обозначения:
в — число каналов;
V — число заявок в очереди;
п — общее число заявок в системе, т. е. в очереди и в каналах (п = V + у);
у — число заявок, находящихся на обслуживании в каналах (0 < у < в);
Ф — число незанятых каналов;
м — среднее время ожидания в очереди.
Пока у < в, т.е. пока не все каналы заняты, очереди нет, и каждое поступающее требование немедленно обслуживается (V = 0). Если у = в, может образоваться очередь, и тогда V > 0.
При условии что процессы массового обслуживания имеют стохастический характер независимо от числа каналов (один или несколько), важно знать вероятность рп нахождения числа п требований в системе, т.е. в очереди и на обслуживании. Примем также, что режим установившийся, т.е. вероятности рп не зависят от времени. Обозначим загрузку многоканальной системы:
х
р = - ■ -
Но в установившемся режиме коэффициент использования одного канала не равен р и определяется:
Вероятности pn определяются выраже-
5 <0
43 о
s «
о 8
Si «
о
U
!
0
6
¥ :
S -ц
< 1,
поэтому и р< в. В противном случае очередь будет бесконечной.
нием
Рп =
где
Ро =-
Ро^-, 1 < п < S, п !
Dn
Ро---~ , п > S,
r S ! Sn-S
1
S ! [ 1 -P
S
. P P2 P3 pS-1
+1 + — + — + — + ... + —-
1 2! 3! ( S -1)!
.(14)
Можно использовать также две более удобные рекуррентные формулы. Первая:
Рп =- Рп-1, п
(15)
если 1 < п < S. При этом вероятность р0 определяется из (14).
Вторая:
если п > S.
Рп = SРп-1,
(16)
Эти формулы могут показаться сложными читателю, не имеющему достаточного математического опыта, но они очень просты в применении.
Пусть X = 6, - = 2, в = 4, тогда
X 6
р = - = - = а - 2
Определим р0 из формулы (14):
Следует предостеречь тех, кто программирует на языках типа Pascal, Basic и др.: если попытаться запрограммировать вычисление факториала просто с использованием его определения, то, например, для S = 50 каналов целочисленное значение 50! не поместится в машинное слово современного компьютера, работающего с 64-разрядной машинной арифметикой, и программа выдаст прерывание из-за ошибки. То же самое ждет и любителей вычислений на C/C++ при использовании 32-разрядных целых чисел типа long, атакже 64-разрядных целых типа _int64. Максимальное число, для которого можно корректно посчитать факториал в формате _int64, равно 20. Переход на 64-разрядные числа с плавающей точкой типа double позволяет все-таки вычислить факториал. Но точность вычислений резко падает из-за ограниченной длины мантиссы числа: значение 50!, полученное с помощью компьютера, меньше действительного значения. А это может привести к совершенно неправильным выводам и решениям, поскольку в некоторых формулах, полученных ниже, факториалы используются и в числителях, и в знаменателях.
110
п
Ив5(17) 2008
Ро =
1
р4 ч 3 32 33
+1 + —+— + —
4!1 -3] 1 2! 3!
1
2
24 • 1 +1 + 3 + 9 + 2^"53
4 2 6
: 0,0377.
'О 5 10 15 л
Рис. 7. Общий характер распределения р„
ди. Найдем математическое ожидание числа требований, находящихся в очереди:
V = £ (п - Э )рп.
п=5+1
Вычислим для нашего примера:
(17)
Вычислим теперь р1, р2 и р3 из (15):
Р1 = 3/1ро = 0,1132,
р2 = 3/2р1 = 01698,
р3 = 3/3р2 = 01698.
Для вычисления р4, р5, р6,... воспользуемся формулой (16):
р4 = 3/4р3 = 01273,
Р5 = 3/4р4 = 0,0955,
Р6 = 3/4р5 = 0,0716,
р7 = 3/4р6 = 0,0537,
р8 = 0, 0403, р9 = 0, 0302, р10 = 0, 0226,
р12 = 0,0127, р13 = 0,0095, ...
На рис. 7 показано распределение этих вероятностей.
Зная вероятности рп, можно рассчитать среднее число заявок, ожидающих в очере-
э ■ э ! 1
-Р0.
В нашем примере:
35
4 ■ 4!1
53
= 1,528.
Ф = £(Э -п)Рп = Э-р.
111
I
I?
V = 1Р5 + 2Р6 + 3Р7 + 4Р8 +...+(п - 4) =
= 1 ■ 0,0955 + 2 ■ 0,0716 + 3 ■ 0,0537 +
+ 4 ■ 0,0403 + 5 ■ 0,0302 + 6 ■ 0,0226 +
+ 7 ■ 0,0169 + 8 ■ 0,0127 + 9 ■ 0,0095 + ... =
= 0,0955 + 01432 + 01611 + 01612 + 01510 +
+ 01356 + 01183 + 01016 + 0,0955 + ...«1,52.
Вычисление доведено до п = 20 с абсолютной погрешностью менее 0,01.
Применять формулу (17) довольно неудобно, так как ряд, представляющий сумму, сходится довольно медленно. Более практично использовать следующую формулу:
(18)
Таким образом, средняя длина очереди заключена между 1 и 2. Среднее число требований в системе определяется по формуле:
п =£ п ■ Рп .
п=0
В таких задачах представляет интерес также среднее число незанятых каналов:
(19)
Перечисленные выше средние значения связаны соотношением:
п = v + Э - ф= v+р.
Вероятность ожидания в течение некоторого времени, которую мы обозначим р(>0),
2
2
п=0
N95(17)2008
является вероятностью того, что п > в. Если п = в, то новое поступающее требование должно ждать очереди, и это тем более справедливо, если п > в. Поэтому
р( > 0) = р( п >в) = £ Рп = Рв + Рв.2+... (20)
п=в
Подсчитаем эту вероятность в нашем примере:
р ( > 0) = р( п >в ) = Р4 + Р5 + Рб +... =
= 0,1273 + 0,0955 + 0,0716 + 0,0537 +
+ 0,0403 + 0,0302 + 0,0226 + 0,0169 +
+ 0,0127 + 0,0095 + ... = 0,50.
Вычисление доведено до п = 20 с абсолютной погрешностью менее 0,01.
Для определения этой вероятности имеется также удобная формула:
р(> 0) = р(п > в) =
в ![1
-Р0-
В нашем примере:
Р( > 0) =
34
4![ 1
53
- = 0,509.
3 <0
43 о
г
со
о §
со
0 и
1
0 &
Формула Эрланга
Используя значение р0 из формулы (14), можно получить следующее выражение:
р(> 0) = р(п > в) =
в!
1 -Р
в![ 1 -Р
в
ч Р Р
+1 + - + — +...+ -1 2!
(в-1)!
Это формула Эрланга. По данной формуле в нашем примере вероятность ожидания составляет приблизительно 0,5.
Формула Эрланга имеет большое значение для определения числа каналов, необходимых для того, чтобы вероятность ожидания была меньше заданного значения. Такие задачи ставятся, в частности, когда должна быть обеспечена надежность решения некоторой проблемы. Например, сказанное относится к самолетам, ожидающим свободную посадочную дорожку для приземления. При этом определяют, каким должно быть число дорожек, для которых р(> 0) меньше, скажем, 0,05 при данных значениях X (интенсивность потока) и 1/ц (среднее время освобождения дорожки для следующего самолета). Чтобы решить такую задачу, достаточно составить таблицу для р(> 0) в функции отр и в.
Чтобы рассчитать среднее время ожидания м в очереди, достаточно отметить, что при установившемся режиме
V = Х1Ц,
откуда, используя формулу (18), получаем:
Х -■ в ■ в | 1
-Р0-
(22)
Для предыдущего примера:
34 2
м =-2 — = 0,255 ед. времени.
2 ■ 4 ■ 4![ 1 -
3 ? 53
Если X и - имеют размерность 1/мин, то (21) в данном случае р0 = 15 с.
Интересно сравнить систему с 1 каналом и интенсивностью обслуживания - = 8
Таблица 7
Сравнение одноканальной системы (ц = 8) с многоканальной (5 ■ ц = 8)
в Ц Р 0 п V Р (> 0)
1 8 0,25 3 2,25 0,75 0,375
4 2 0,0377 4,52 1,52 0,1 0,255
в
2
2
в
2
в
112
Ив5(17)2008
с системой с 4 каналами и ц = 2; в обоих случаях X = 6 (табл. 7).
Легко заметить, что вариант с в = 4 и ц = 2 намного предпочтительнее для клиентов (заявок), чем вариант с в = 1 и ц = 8, поскольку ожидание в очереди снижается на 32%. Можно доказать (хотя это интуитивно ясно), что для одного и того же значения в -ц величины р(> 0) и а также среднее число заявок в очереди уменьшаются с увеличением в. При одном значении произведения в -ц и тех же затратах целесообразнее использовать возможно большее число каналов.
Пример 3. Определение оптимального числа
кладовщиков.
На автомобильном заводе решали задачу определения оптимального числа обслуживающего персонала разных инструментальных кладовых6. Рассмотрим работу одной из этих кладовых. Такое же исследование с другим числовым материалом может быть проведено для других кладовых.
Исследование инструментальной кладовой началось с определения статистических характеристик потока рабочих (клиентов) и времени, затрачиваемого кладовщиками, обслуживающими рабочих, на подбор требуемого инструмента (на обслуживание). Для определения потока требований использовалась следующая процедура: 100 раз подряд в течение каждых 10 мин регистрировали число рабочих, появляющихся у кладовой для получения инструмента, и подсчитывали частоты, соответствующие наблюдаемым числам. Полученные результаты приведены в 1-м и 2-м столбцах табл. 8. Далее было подсчитано среднее значение числа рабочих, появляющихся у кладовой. Оно оказалось равным 16. В 3-м столбце табл. 8 помещены частоты, соответствующие теоретическому распределению по закону Пуассона.
Используя критерий х2, известный из математической статистики, проверим, насколько приемлемо рассматривать наблюдаемую частоту
Таблица 8 §
Статистическое исследование потока | требований >§
Число поступлений за 10 мин Наблюдаемая частота Теоретическая частота(закон Пуассона)
5 1 0,1
6 0 0,2
7 1 0,6
8 2 1,2
9 1 2,1
10 3 3,4
11 5 4,9
12 6 6,6
13 9 8,1
14 10 9,3
15 11 9,9
16 12 9,9
17 8 9,3
18 9 8,3
19 7 6,9
20 5 5,5
21 4 4,2
22 3 3,1
23 1 2,1
24 1 1,4
25 1 0,9
как пуассоновскую. Величина х2 оказалась равной 12 (число степеней свободы 19). Вероятность того, что распределение частот следует закону Пуассона, превышает 0,88. Таким образом, можно допустить, что распределение вероятностей является пуассоновским. Тогда X = 16/10 = 1,6 заявки в минуту.
Для определения интенсивности обслуживания применялся электронный регистратор, который автоматически фиксировал моменты, соответствующие началу и концу интервала обслуживания 1 рабочего. На основании этих данных
6 Этот пример с доработками и небольшим редактированием взят у А. Кофмана и Р. Крюона, которые опубликовали его в 1961 году в Париже [6, с. 93-96].
113
N95(17)2008
с помощью компьютера определяли чистое время каждого из 1000 обслуживаний, а затем под-считывалось число обслуживаний (кумулятивное значение частот), длительность которых больше чем 0, 15, 30, 45, 60, 75, ... с. Результаты приведены в 1-м и 2-м столбцах табл. 9.
На основе данных из 1-го и 2-го столбцов табл. 9 вычисляется среднее значение - — математическое ожидание интенсивности обслуживания. Оно равно 0,9 в 1 мин. В 3-м столбце табл. 9 для сравнения записаны значения функции 1000 е-цГ (кумулятивные частоты по показательному закону). Критерий х2, примененный и на этот раз, дает значение х2 = 8,85 при числе
Таблица 9
Статистическое исследование продолжительности обслуживания
3
«о
43 о
г
со
о §
со
0 и
1
0 &
Интервал времени, с Кумулятивное значение наблюдаемой частоты Кумулятивные частоты по экспоненциальному закону
0 1000 1000
15 813 798
30 652 637
45 512 508
60 408 406
75 330 324
90 261 259
105 210 207
120 163 165
135 125 131
150 95 105
165 79 84
180 62 67
195 51 53
210 44 42
225 35 34
240 26 27
255 21 21
270 17 17
285 13 14
300 10 11
степеней свободы 19. Вероятность того, что время следует экспоненциальному закону, превышает 0,97. Таким образом, можно допустить, что продолжительность обслуживания распределена по экспоненциальному закону с параметром - = 0,9 обслуживания в минуту.
Зная X и -, можно рассчитать коэффициент использования системы:
р = 1,6/0,9 = 1,77.
Вычислим среднее время ожидания м в очереди. Для этого сначала определим значение р0, соответствующее в = 2, в = 3, в = 4 (иметь более 4 служащих представляется нерациональным, потому что это, вероятно, обойдется слишком дорого). Применяя формулу (14), получим:
для в = 2:
1
Р0 =-
для в = 3: Р0 = —
2-[1 -
1,772 , 1,77
-1+ -—
1,77 1
- = 0,061;
2
1,773
3 ■ 2 ■[ 1-
1,77
, 1,77 1,772 + 1 + -—+ --
= 0,152;
для в = 4: Р0 =-
1,774
4 ■ 3 ■ 2-[1-
, 1,77 1,772 1,773 +1+ -— + --+ -
-= 0,166.
3 ■ 2
1,77
По формуле (22) определим время ожидания м:
для в = 2: м = —
1,772
-■ 0,061 = 4,00;
2 ■ 2 ■ 0,9[ 1 -
1,77
для в = 3: м =-
1,773
-■ 0,152 = 0,31;
3 ■ 3 ■ 2 ■ 0,911-
1,77
для в = 4: м =-
1,774
-■ 0,166 = 0,06.
4 ■ 4 ■ 3 ■ 2 ■ 0,911-
1,77
2
3
2
2
2
3
2
4
114
Ив5(17)2008
Подсчитаем среднее число клиентов, обслуженных в течение 8-часового рабочего дня: Х - 60 -8 =1,6 -60 -8 = 768. Для такого числа требований при среднем времени обслуживания 1/ц потребуется7: 768/ц = 768/0,9 = 853 мин в день, или 14 ч 13 мин (14,21 ч). Следовательно, время простоя в день 2, 3 и 4 служащих будет соответственно равно:
Э = 2: 2 - 8 - 14,21 = 16 - 14,21 = 1,79 ч;
Э = 3: 3 - 8 - 14,21 = 24 - 14,21 = 9,79ч;
Э = 4: 4 - 8 - 14,21 = 32 - 14,21 = 17,79 ч.
Вычислим время, которое ежедневно рабочие теряют на ожидание:
Э = 2: 768 -4,00 = 3072 мин = 51,2 ч;
Э = 3: 768 - 0,31 = 238 мин = 3,96 ч;
Э = 4: 768 - 0,06 = 46 мин = 0,76 ч.
Если часовая зарплата кладовщика оценивается в 3 евро, а рабочего — 6 евро, то общая стоимость потерянных часов Г(Э) равна:
Э = 2: Г(2) = 1,79 - 3 + 51,2 - 6 = 312,57 евро;
Э = 3: Г(3) = 9,79 - 3 + 3,96 - 6 = 53,13евро; ^(оптимальный вариант)
Э = 4: Г(4) = 17,79 - 3 + 0,76 - 6 = 57,93 евро.
Оптимальное число кладовщиков, которое следует предусмотреть для этой кладовой, равно 3. Можно было бы принять в качестве рационального варианта и Э = 4,ноЭ = 5дало бы потери 78 евро. При часовой цене труда 3 евро (кладовщика) и 7,50 евро (рабочего) также получается Г(3) яГ(4).
Несколько упрощенный подсчет, при котором не учитываются случайный характер процесса и различие в цене труда рабочих и кладовщиков, привел бы к выбору Э = 2, что наиболее близко к коэффициенту использования р = 1,77. Но это дало бы в результате для данной кладовой потерю около 260 евро в день.
Рассмотренное в данном примере исследование было практически распростра-
нено на все инструментальные кладовые §
крупного завода, что позволило заметно сни- *
зить издержки, вызываемые очередями. |
Для получения Г(Э) можно также вос- ¡^
пользоваться формулой: <
ЦЭ) = Т (С1У + С2 ф),
где с1 — заработная плата рабочего, евро в час;
с2 — заработная плата кладовщика, евро в час.
Введем в рассмотрение удельные потери от простоев (потери в единицу времени):
^ Г(Э) _ _ у( Э) = = + С2 ф.
Чтобы представить характер зависимости у(Э), построим график (рис. 8) удельных потерь в виде непрерывной функции, воспользовавшись формулами (18) и (19). На графике, полученном для одного из возможных наборов значений переменных Х, ц, с1 и с2, видно, что оптимальное значение Эор, = 3, при котором достигается минимальное значение у( Э).
Сделаем следующее замечание: мы полагали, что длительность обслуживания распределена по экспоненциальному закону. Предположение об экспоненциальном
7 Напомним следующее: если стохастический процесс подчиняется закону Пуассона с параметром ц, то интервалы, разделяющие события, подчиняются экспоненциальному закону с тем же параметром ц. Обратное утверждение также верно.
115
Hb5(17)2008
I <0
43
о g
со о
8 §
со
0
U
1
0 &
распределении можно использовать во многих случаях, когда на практике выполняется главное свойство этого закона: ст8 = 1/ц. Однако бывают случаи, когда реальная работа состоит из последовательности многих мелких работ, это сразу приводит к рабочей гипотезе, что закон распределения в этих случаях будет другой (он практически совпадет с нормальным законом). В таких случаях равенство ст8 = 1/ц может стать нестрогим, а это приведет к методической погрешности в расчетах, особенно при малых значениях в.
Пример 4. Определение числа взлетно-
посадочных полос аэродрома.
Определим число взлетно-посадочных полос, которые нужно предусмотреть на аэродроме для того, чтобы вероятность ожидания в воздухе для самолета, которому требуется дорожка для посадки, была менее 0,1.
Допустим, статистическое исследование потока требований на посадку показало, что он подчиняется закону Пуассона (теория вероятностей позволяет доказать, что для крупных аэропортов поток всегда пуассоновский). Подсчеты дали X = 27 прибытий в час. Время, в течение которого дорожка занята, распределено по экспоненциальному закону, среднее время составляет 2 мин, следовательно, - = 30.
Подсчитаем вероятности р(> 0)для в = 2, в = 3 и в = 4 (при заданном значении р = 27/30 = 0,9 весьма вероятно, что потребуется больше чем 1 дорожка). Применяя формулу Эрланга (21), получим:
S = 2:
0,92
p(> 0) =
2 !| 1 -
0,92
2!| 1 -
0,9
0,9
+ 1 +
0,9
- = 0,278;
S = 3:
p(> 0) =
0,93
3!| 1 -
0,9
0,93
3!| 1 -
0,9
, 0,9 0,92
+ 1 + —i— + ——
- = 0,070;
S = 4:
p(> 0) = -
4!| 1-
0,94 0,9'
4
0,94
4!| 1-
0,9
, 0,9 0,92 0,93
+ 1 + —i— + —— + ——
1 2 3!
= 0,014.
Читатель может проверить эти значения с помощью компьютерной программы или по номограмме формулы Эрланга [5]. Легко видеть, что для вероятности р(> 0) = 01 необходимы 3 взлетно-посадочные полосы.
Рассчитаем среднее время ожидания для в = 3 при помощи формул (14) и (22):
Р0 =-
1
0,93 3■ 2-И -
, 0,9 0,92
-T^v + 1 +--+--
1 2
: 0,403;
w = -
0,93
-■ 0,403 = 0,001108.
3 ■ 3 ■ 2 ■ 30-|1
09
Если w пересчитать в минуты, то получим: 0,001108 ч = 0,0665 мин. Такое время ожидания вполне приемлемо.
Этот же результат можно было бы получить при помощи номограммы Кофмана, приведенной в [5], более грубо, поскольку номограмма — это семейство графиков на носителе (бумаге), где погрешность определяется многими факторами, в том числе даже толщиной линий.
Среднее число ожидающих самолетов равно: bw = 27 ■ 0,001108 = 0,03.
В подобную задачу можно ввести некоторые другие ограничения — например, предельное число самолетов на подлете, издержки оборудования и пр.
Мы преднамеренно упростили задачу и предположили, что распределение обслуживания (приземление самолетов) следует экспоненциальному закону. В действительности же оно в общем случае является распределением Эрланга (называемым также Пирсоновским типа III):
116
2
2
3
2
3
Ив5(17) 2008
к (О =
(кц )k е--(к-1)!
где к = 1, 2, 3,... Это распределение становится экспоненциальным при к = 1 и дает постоянное время обслуживания при к
В связи с этим возникает вопрос: почему в практических расчетах часто используют экспоненциальный закон распределения времени обслуживания, когда реально это другое распределение, причем а3 < 1/ц? Ответ можно получить из формулы Поллаче-ка-Хинчина: «Экспоненциальный закон распределения времени обслуживания используется в расчетах на худший случай»! Если мы получили время задержки в очереди в предположении об экспоненциальном распределении и это время нас устраивает, то в реальности задержка будет еще меньше.
Источник
(/77 -¡) заявок
Для многих законов распределения или аналитические формулы расчета многоканальных систем получить невозможно, или ими очень сложно пользоваться на практике.
Система с несколькими каналами и ограниченным числом клиентов
Пример 5. Обслуживание станков механиками.
Рассмотрим конкретный пример с т станками (клиентами) и Э механиками (каналами) в предположении, что механики занимаются только обслуживанием станков, вышедших из строя, причем Э < т.
Если 0 < п < Э, то имеется (Э -п) незанятых механиков (п станков находится в ремонте, и нет ни одного станка, ожидающего ремонта). Для Э < п < т имеется Э станков в ремонте и (п -Э) в ожидании. Ситуация представлена на рис. 9. Малая величина загрузки механиков р соответствует станкам хорошего качества. Можно доп заявок в системе
Канал 1
Канал 2
Очередь
ТТЛ
Канал 3
V заявок
I заявок
Рис. 9. Замкнутая система массового обслуживания
117
I? I
N95(17)2008
пустить р > 1 без опасения насыщения, поскольку последнее появляется при р > в.
При тех же предположениях, что и раньше (закон Пуассона, экспоненциальное распределение, установившийся режим), в данном случае получаем:
1) для 0 < п < в:
Рп = стрпр0,
где
ст =-
т!
(т - п)! п!'
2) для в < п < т:
рп =
п!
где
в ! вп-в
т
5 Рп = 1.
С"рпп сп р р0
аГ1 =
Р0
Вычислим ап:
1) от п = 1до п = в - 1по формуле:
т - п +1
ап =-рап-1
п
I
«О
43
0
1
со
о §
со
0 и
1
0 &
при а 0 = 1;
2) от п = в до п = т по формуле:
т - п +1
в
-рап-1-
(23)
(24)
Покажем на примере, что эти вычисления очень просты для последующей программной реализации на компьютере.
Пусть р = 01, т = 20, в = 3.
По формулам (23) и (24) вычислим от п = 0 до п = 3:
а0 = 1,
а1 = 20-0 ■ 0,1-1= 20 ■ 0,1 = 2, 0 + 1 1
20 -1
а2 =——'■ 0,1-2 = 1,9, 1 + 1
20 - 2
а, = 20 2 ■ 0,1-1,9 = 1,14.
2 + 1
Затем, используя (24) от п = 4 до п = 20, полу-
чим:
20 - 3
3
20 - 4
3
20 - 5
3
20 - 6
3
20 - 7
3
20 - 8
а7 = - 0,1-0,17227 = 0,08039,
а8 - 0,1 - 0,08039 = 0,03483,
В дальнейшем, однако, вместо этих формул преимущественно будем использовать рекуррентную формулу. Обозначим через ап:
аю = 0,00511, ац = 0,00170, а12 = 0,00051, а13 = 0,00013, а14, а15, а16,..., а20,< 0,0001. Теперь, исходя из соотношения
т
р0 = 1 -5 рп ,
имеем:
откуда
1 т Р 1 т
1 = ± = ± _^ап
р0 п =1 р0 р0 п = 1
р0
Подсчитаем:
1
' т ' 1 + 5 ап
п =1
(25)
5 ап =
= 2 + 1,9 + 1,14 + 0,646 + 0,3445 + 0,17227 +
+0,08039 + 0,03483 + 0,01393 + 0,00511 +
+ 0,00170 + 0,00051+ 0,00013 +... = 6,3394.
Подставив это значение в выражение (25), получим:
р0 =-1-= 0,13625.
1 + 6,3394 Зная р0, найдем:
Р = а Р0 = 2 - 0,13625 = 0,27250, р2 = а2р0 = 1,9 - 0,13625 = 0,25888
и т.д.
3
п=0
п=1
т
п =1
а
118
Ив5(17)2008
Таблица 10 §
Вероятности присутствия заявок в системе ¡9
п Станки в ремонте, ] Станки, ожидающие ремонта, V Незанятые механики, ф Рп
0 0 0 3 0,13625
1 1 0 2 0,27250
2 2 0 1 0,25888
3 3 0 0 0,15533
4 3 1 0 0,08802
5 3 2 0 0,04694
6 3 3 0 0,02347
7 3 4 0 0,01095
8 3 5 0 0,00475
9 3 6 0 0,00190
10 3 7 0 0,00070
11 3 8 0 0,00023
12 3 9 0 0,00007
В табл.10 приведены вероятности, рассчитанные для нашего примера.
Следует обратить внимание на то, что загрузка системы р определяется соотношением:
= тХ Эц
Из этого следует очевидный вывод: общую интенсивность обслуживания Б-ц можно повысить за счет не только приема на работу более квалифицированных механиков, но и простого увеличения их числа.
В рассмотренной задаче при случайном характере ожидания обычно определяют два коэффициента:
1) коэффициент простоя станка (отношение среднего числа станков в очереди к общему числу станков):
т
(26)
к . 2 Э
(27)
Средние значения величин V, ф и п определяют по формулам (1), (2) и (3):
V = £ (п - Э )Рп,
п=3+1 Э
ф = £(Э - п)рп,
п=0
т 8
п = Э + V -ф = Э + £(п - Э)рп -£(Э - п)рп
2) коэффициент простоя механика (отношение среднего числа незагруженных механиков к их общему числу):
Вычислим эти величины для нашего примера (Э = 3, т = 20):
20
V =£(п - 3)Рп = Р4 + 2Р5 + 3р6 + ... +17р20 = 0,339,
п=4
ф = £(3 - п)рп = 3р0 + 2р1 + р2 = 1,213.
п = 0
Отсюда:
п = 3 + 0,339-1,213 = 2,126, а затем с помощью (26) и (27) получим:
119
N95(17)2008
к = 0339 = 0,0169, 1 20
к2 = 1213 = 0,404.
2 3
Сравним с другим вариантом нашего примера, когда в = 1и т = 6 при том же значении р = 0,1. В этом случае легко рассчитать:
6
V =5(п -1)Рп = Р2 + 2рэ + 3р4 + 4р5 + 5рв = 0,324,
п=2
Ф = 5(1 - п)Рп = Р0 = 0,484,
п=0
п = 1 + 0,324 - 0,484 = 0,840, а из (26) и (27) опять получим:
0,324
к =-к2
0,0540, = 0,484.
3
«о
43
0
1
со
о §
со
0 и
1
0 &
м -
5 (п - в )рп
Полагая - = 1/5, т. е. среднюю продолжительность ремонта 1 станка равной 5 ч, получим:
а) в = 3, т = 20
0,339
1,727-
= 0,981 ч, или около 59 мин;
б) в = 1, т = 6:
0,324
0,516-
■ 3.14 ч или около 188 мин.
6
0,484 1
Сравнив значения к1 и к2, полученные для двух рассмотренных вариантов, увидим, насколько ситуация для варианта в = 3, т = 20, р = 0,1 лучше ситуации при в = 1, т = 6, р = 0,1.
Вероятность ожидания в очереди определяется по формуле:
т
р( > 0) = р( п > в) = 5 Рп.
п = 5
В нашем примере для 1-го варианта:
20 2 р( > 0) = 5 Рп = 1 -5 Рп,
п = 3 п = 0
или
р(> 0) = 1 -(013625 + 0,27250 + 0,25888) = = 1 - 0,66763 = 0,33237.
Среднее время ожидания в очереди м равно:
V =_1_
X( т - п) X( т - п) п=з+1
Экономическая сторона обслуживания в замкнутой системе
Всякая экономическая функция процесса организации выбирается произвольно и должна соответствовать замыслу того, кто принимает решение. В общем случае в задачах массового обслуживания в качестве экономической функции рассматривают полные потери на ожидание клиентами и простой обслуживающих каналов, или, более точно, математическое ожидание издержек, вызываемых ожиданием клиентами и простоем каналов.
Если в — число параллельно работающих каналов, т — число клиентов (которое может быть и бесконечным), то среднее число клиентов в очереди составляет:
т
^ = 5 (п - в )рп.
п = 3
Среднее число незанятых каналов определяется по формуле:
Ф
^ ( в - п)Рп
Если задан промежуток времени Т, в течение которого предполагается вычислить полные средние издержки ожидания Г, то среднее время, потерянное клиентами, выражается:
у-Г,
а время, потерянное обслуживанием, равно: ФТ.
Пусть с1 — потери, связанные с единицей времени ожидания клиентом; с2 —потери, связанные с единицей времени простоя канала. Тогда полные потери:
п=0
120
Ив5(17) 2008
т
Г( Э) = (с^ + С2 ф )Т =
т Э
С £ (П - Э )Рп + С2 £(Э - п)рГ1
Переменной обычно является Э, но в некоторых случаях можно было бы варьировать и т.
Если потери с и с2 постоянны в течение времени Т, то можно также рассматривать полные потери за единицу времени:
Г( Э)
у( Э) = -
Т
= с £(п - э)рп + С2 £(э - п)рп
(28)
Обычно определяют именно эти полные потери за единицу времени, чтобы свести их к минимуму.
В некоторых задачах экономическая функция может быть значительно сложнее, чем выражение (28) для у(Э). Она может включать компоненты, пропорциональные п или р(> п), когда плата за обслуживание зависит от времени ожидания в очереди. Также она может принимать вид нелинейной функции различных параметров, рассматриваемых в теории массового обслуживания, если для какой-то уникальной системы сформулирован особый критерий оптимальности.
Иногда, кроме экономической функции, задают также целевые объекты или ограничения. Выбор оптимального решения производится обычно вычислением у(Э) для
разных значений Э. В некоторых случаях применяют частные формулы.
В качестве примера применения общей формулы (28) найдем оптимальное решение задачи, приведенной в предыдущем разделе (очередь с ограниченным числом клиентов и несколькими каналами: т станков и Э механиков).
Пример 6. Плата за технологический риск
поломки станков.
Вернемся к предыдущему примеру, где р = 0,1, т = 20. Предположим, единицей времени является час и потери от простоя станка равны 180 евро в час, а от простоя механика — 6 евро в час8. Требуется найти оптимальное число механиков с точки зрения суммарных потерь.
Из формулы (28) видно, что полные потери, связанные с часовым простоем, зависят от Э. В табл. 11 приведены значения рП для Э = 3,4,5,6,7 (мы сделали следующее допущение: из практики известно, что число Э не должно быть меньше 3 и больше 7 для подобного случая).
Из табл. 12, в которой приведены значения у(Э), видно, что минимум получается при Э = 5. Это значение можно рассматривать как минимальную плату за технологический риск поломки станков.
Можно проверить следующее: при малых значениях загрузки р значение минимума не сильно изменяется при существенном увеличении числа заявок в системе т.
Зависимость вероятностей рп от числа каналов 5
в 0 1 2 Число требований п в системе 3 4 5 6 7 8 9
3 0,136 0,272 0,258 0,155 0,088 0,047 0,023 0,011 0,005 0,002
4 0,146 0,292 0,278 0,166 0,071 0,028 0,010 0,003 0,001 0,000
5 0,148 0,296 0,281 0,168 0,071 0,022 0,006 0,001 0,000
6 0,148 0,297 0,282 0,169 0,072 0,023 0,006 0,001
7 0,148 0,297 0,282 0,169 0,072 0,023 0,006 0,001
I
I? I
Таблица 11
п=0
П = 0
8 Зарплата 6 евро в час при 8-часовом рабочем дне составляет почти 1500 евро в месяц.
121
Нв5(17) 2008 '
Таблица 12
Полные потери в единицу времени
(евро в час)
20 S 20 S
S X (" - S) Pn n—S+1 X (S - n)Pn n— 0 C1 X (n - S)Pn + C2 X (S - n)Pn n—S+1 n—0
3 0,34 1,21 180 ■ 0,34 + 6-1,21 — 68,46
4 0,06 2,18 180- 0,06+ 6- 2,18 — 23,88
5 0,01 3,17 180-0,01 + 6-317 — 20,82
6 Пренебрежимо малые 4,17 6 - 417 — 25,02
7 - " - 5,18 6 - 516 — 30,96
Относительные приоритеты в коммуникационных системах
Современные системы связи используют цифровые каналы на базе оптоволокна, кабельных линий связи, радиорелейных линий и коммуникационных спутников Земли. Независимо от физической среды и способа реализации следует отметить, что мгновенная передача сообщения невозможна. Это только первое электромагнитное возмущение может быть передано практически со скоростью света, но реальная скорость передачи связана с цифровой модуляцией непрерывных сигналов на какой-либо несущей частоте для повышения помехозащищенности и снижения эффекта затухания сигнала в конкретной физической среде. Например, если попытаться передать с одного компьютера в пункте A на другой в пункте B фотографию размером | 1 Мбайт через Internet (по e-mail) и исполь-| зовать в качестве канала связи два мобиль-Ц ных телефона с режимом GPRS, то время передачи составит от 1 до 10 мин в зависи-g мости от времени суток. Спрашивается: § а почему возникает такая разница? 8 Ответ довольно простой. Дело в том, что s в разное время суток возникают перегрузки, § обусловленные большим количеством абонентов, одновременно работающих в сети свя-^ зи. Следует вспомнить, что задержка в оче-§ реди системы массового обслуживания на-
I
чинает неограниченно увеличиваться ^ при увеличении загрузки до 100% (при р ^ 1). В центрах коммутации сообщений (или пакетов сообщений) специальные связные компьютеры разруливают накапливающиеся очереди сообщений, используя приоритетные дисциплины обслуживания и специальные алгоритмы. Обычно сообщения делятся на блоки. Блок — это та часть сообщения, которая передается непрерывно, от начала и до конца. В состав блока включаются служебные байтовые комбинации, обеспечивающие контроль правильности передачи и восстановления информации в случае ее искажения. В частности, в блок может помещаться все сообщение целиком9. Данная ситуация условно показана на рис. 10.
Для определенности считаем, что в центре коммутации установлен 1 компьютер (но реально может быть и больше). В связном компьютере имеются 5 блоков сообщений: один с приоритетом рг = 5 передается по каналу связи, а 4 ждут своей очереди. Блоки связаны в некий список, упорядоченный по значению приоритета и по хронологии. Такой список и является очередью. В голове списка имеются 2 блока с приоритетом рг = 5. Первый из них пришел раньше второго — в этом и состоит принцип хронологии. В центр коммутации поступают еще 3 блока (от абонентов или из других центров коммутации):
9 Здесь дается упрощенное объяснение способов передачи информации, так как читатели могут не иметь не-
обходимых специальных знаний. 122
Ив5(17) 2008
Вход
Связной компьютер
Выход
I? I
Рис. 10. Приоритетная очередь в центре коммутации
• блок с приоритетом pr = 2 встанет в хвост очереди и будет вторым в своей приоритетной группе;
• блок с приоритетом pr = 3 встанет после уже имеющегося сообщения с таким приоритетом и будет вторым в своей приоритетной группе;
• блок с приоритетом pr = 6 образует новую приоритетную группу. Поскольку в данной ситуации он имеет максимальный приоритет, то становится первым в очереди, отодвинув два сообщения из приоритетной группы с pr = 5, но его передача начнется только после отправки всего блока с pr = 5.
Таким образом, если с точки зрения массового обслуживания 1 блок — это заявка, то в 1 списке блоков присутствует произвольное количество очередей, в каждой из которых заявки имеют свой приоритет. Причем для выбора заявки на обслуживание (для передачи блока) очереди просматриваются обслуживающим устройством (связным компьютером) в порядке убывания их приоритетов. Число заявок в конкретной очереди — это число блоков в приоритетной группе с таким же значением приоритета.
Приоритетное обслуживание заявок из очереди без прерывания менее приоритетных заявок более приоритетными называ-
ется дисциплиной обслуживания с относительными приоритетами.
Сформулируем нашу ситуацию в терминах теории массового обслуживания:
• система имеет R отдельных очередей с порядковыми приоритетами (1), (2), (3), ...,
т
• дисциплина обслуживания с относительными приоритетами;
• 1 канал обслуживания;
• входной поток заявок пуассоновский;
• обслуживание с произвольным распределением длительности.
Это означает, что обслуживание заявки ^й очереди не прекращается, даже если появляется заявка в очереди h, причем h < k. Порядковый приоритет задает порядок, в котором очереди будут обслуживаться: первоочередной порядок имеет очередь (1), второй порядок — очередь (2) и т. д. Порядковые приоритеты соотносятся со значениями приоритетов групп блоков на рис. 10 при условии, что R = 7, как это показано в табл. 13.
Пусть Xk и цк — параметры очереди ^ т. е. очереди, имеющей кй порядковый приоритет. Положим рk =—. Если канал осво-ц k
ч 123
На5(17)2008
Таблица 13
Соответствие приоритетов очередей и групп блоков
Порядковый приоритет очереди Приоритет группы блоков
(1) pr = 6
(2) pr = 5
(3) pr = 4
(4) pr = 3
(5) pr = 2
(6) pr = 1
(R = 7) pr = П
бождается, то выбирается требование из очереди, имеющей наибольший приоритет.
R
Положим X = ,.
<=1
Используя довольно сложный математический аппарат, можно получить следующую формулу для расчета времени ожидания wk в очереди к-го приоритета:
wk
wn
(1 -pk _i)(1 -Pk)
где
при
wn
xj t2 dF (t)
1 R
F (t) = 1 R.
x i=i
(29)
(30)
(31)
I <0
43 о
s
CO
о
S3
Si
CO
0 u
1
0 &
Функция Fk (0 представляет собой функцию распределения времени обслуживания для очереди k-го приоритета. Следовательно, среднее число заявок в системе определяется как сумма средних количеств заявок во всех Я очередях:
W;.
(32)
Отметим следующее правило, которому следуют все операторы сотовой связи: сообщение GPRS всегда имеет меньший порядковой приоритет по сравнению с сеансом голосовой связи между двумя абонентами.
Абсолютные приоритеты в операционных системах и IT
В операционных системах независимо от их разработчиков на протяжении десятилетий сформировались определенные принципы распределения ресурсов вычислительной машины (областей оперативной памяти, буферов ввода-вывода, информационных каналов и др.) и времени центрального процессора между независимыми вычислительными работами. Эти работы в зависимости от фирмы — разработчика операционной системы называют по-разному: процессы, задачи и др. Для определенности будем называть их задачами.
За распределение каждого ресурса и времени центрального процессора отвечают диспетчерские программы, входящие в состав операционной системы. Диспетчерская программа, отвечающая за распределение времени центрального процессора, иногда называется супервизором (от англ. supervisor). Для простоты будем полагать, что в составе вычислительной машины имеется только 1 процессор.
Рассмотрим принципы распределения вычислительных ресурсов.
1. Если задача получила все запрошенные ресурсы, то она получает статус ready, а в очередь к центральному процессору помещается блок управления этой задачей — специальная структура данных (рис. 11).
2. Если супервизор выделил задаче центральный процессор, то она получает статус active, и ее программа в машинных кодах выполняется процессором.
3. Если выполняемой программе, принадлежащей задаче, для которой выделен центральный процессор, потребуется помощь каких-то диспетчеров ресурсов, чтобы получить новый или вернуть не используемый далее ресурс, то эта программа выполняет команду прерывания (машинную команду SVC — аббревиатура от англ. supervisor call). В результате супервизор прекратит выполнение программы, принадлежащей задаче, она получает статус wait и пере-
124
n
=-
Ив5(17) 2008
Переход в ready. задачи получили ресурсы
Переход в wait: прерывание, задача требует ресурсы
I? I
Рис. 11. Очередь задач в операционной системе
водится в очередь диспетчера соответствующего ресурса, тип которого был задан командой SVC. Эта очередь обслуживается по правилу относительных приоритетов, рассмотренных в предыдущем разделе. Приоритет задачи указан в ее дескрипторе. После обслуживания диспетчерами ресурсов задача опять получит статус ready.
4. Если в очередь задач в состоянии ready помещается новая задача, то существуют следующие альтернативы ее обслуживания:
1) задача имеет приоритет не выше, чем другие задачи, имеющие статус ready или active. В этом случае она ставится в очередь по правилам относительных приоритетов (на рис. 11 две такие задачи, имеющие приоритеты pr = 2 и pr = 3);
2) задача имеет приоритет выше, чем задача в состоянии active. В этом случае супервизор прерывает выполнение программы задачи со статусом active. Дескриптор прерванной задачи помещается в специальную очередь типа стек10, которая автоматически упорядочена по убыванию приоритетов и с учетом хронологии (на дне стека находится дескриптор задачи, имевшей до ее
прерывания низший приоритет, а в случае равенства — дескриптор той задачи, которая была прервана раньше). Супервизор после этого выделяет центральный процессор вновь поступившей задаче с более высоким приоритетом и присваивает ей статус active. В ситуации на рис. 11 задача со статусом active с приоритетом pr = 5 будет прервана, ее дескриптор будет помещен в стек, а процессор выделяется вновь поступившей задаче с приоритетом pr = 6.
5. Если центральный процессор освобожден в результате внутреннего прерывания по команде SVC, то сначала супервизор выбирает из стека сверху прерванную задачу для дообслуживания, если ее приоритет больше или равен приоритету той задачи, которая находится в голове очереди задач со статусом ready. В противном случае процессор будет выделен задаче из головы очереди.
Приоритетное обслуживание заявок из очереди с прерыванием менее приоритетных заявок более приоритетными называется дисциплиной обслуживания с абсолютными приоритетами.
1 Стек — это очередь, обслуживаемая по правилу «первым пришел — последним обслужен». Отличительная особенность стека: он имеет вход, совпадающий с выходом.
125
Ив5(17)2008
Сформулируем нашу ситуацию в терминах теории массового обслуживания:
• система имеет R = 2 отдельных очередей с порядковыми приоритетами (1) и (2);
• дисциплина обслуживания с абсолютными приоритетами;
• 1 канал обслуживания;
• входной поток заявок пуассоновский;
• обслуживание с экспоненциальным распределением длительности.
Это означает следующее: если появляется заявка в очереди (1), то обслуживание заявки из очереди (2) временно прекращается, и она возвращается в свою очередь, а канал обслуживания будет передан заявке из очереди (1); впоследствии заявка из очереди(2)будет дообслужена.
Пусть Х1, X2, ц1, ц2 — соответствующие параметры процесса. Примем р1 =Х1/ц1 и р2 = = Х2/ц2. Мы должны понимать, что р 1 +р2 < 1. Далее, используя специальный математический аппарат, можно получить среднее число заявок в системе из очереди (1):
Р1
n =
1 -Р1
(33)
I <0
43 о
5
со о
S3
Si
со
0
U
1
0
6
с учетом того обстоятельства, что 1 заявка может быть на обслуживании в канале.
Также можно получить среднее число заявок в системе из очереди (2):
- р 1 + п1 ■Р1/Р2
П2 = Р2 й-}-Г
1 " (Р1 + Р2 )
с учетом следующих обстоятельств:
(34)
• обслуживание заявки прерывается при поступлении в очередь (1) более приоритетной заявки;
• 1 заявка может быть на обслуживании в канале.
Следует отметить, что в системе с абсолютными приоритетами наличие потока менее приоритетных заявок никак не влияет на длительность обслуживания и пребывания в очереди более приоритетных заявок. На это показывает формула (33).
Сформулируем правило назначения приоритетов задачам. Предположим, вычислительная машина решает только два типа времяемких задач (для которых продолжительность решения может составлять единицы или десятки минут).
Тип 1. Расчетные задачи — например, численное решение сложных систем дифференциальных уравнений высокого порядка. Они требуют в основном работы центрального процессора. Обращения к каналам ввода-вывода происходят редко.
Тип 2. Задачи сортировки больших массивов информации объемом десятки или сотни Гбайт во внешней памяти. Они практически постоянно требуют выделения каналов ввода-вывода для работы с внешней памятью. Процессор требуется на очень небольшие временные интервалы.
Расчетные задачи всегда должны иметь приоритет меньше, чем задачи обработки больших массивов информации. Предположим, мы практически одновременно запустили на выполнение две задачи: расчетную и обработку массивов, причем время выполнения каждой составляет 10 мин, если вычислительная машина использовалась бы только для решения одной задачи.
Назначение расчетной задаче более высокого приоритета приведет к тому, что она будет «держать» процессор значительные интервалы времени, изредка отдавая его после команд SVC, а задача обработки массивов будет постоянно ждать процессор после выполнения длительного обмена с внешней памятью. В результате в вычислительной машине возникнет такая мультипрограммная ситуация, в результате которой сначала выполнится вычислительная задача, а затем — задача обработки массивов. Суммарное время решения двух задач если и будет меньше 20 мин, то не намного.
Но если расчетной задаче назначить более низкий приоритет, то она все равно в основном будет получать центральный процессор, так как он практически не ну-
126
№5(17)2008
жен другой задаче, поскольку она проводит времяемкие обращения к внешней памяти. В результате обе задачи будут выполняться параллельно, а суммарное время решения двух задач будет немного больше 10 мин.
Вычислительные системы
с разделением времени
В данном разделе мы представим результаты для простой системы циклического обслуживания с разделением времени и сравним эти результаты с обычной дисциплиной «первым пришел — первым обслужен». Дисциплина с разделением времени содержит черты принципа «первым пришел — первым обслужен» и дисциплины, при которой первыми обслуживаются короткие сообщения. Подобная схема является, по-видимому, наиболее приемлемой в вычислительных системах, одновременно обслуживающих многих пользователей и параллельно решающих многие задачи. Будем рассматривать поток заявок, которые являются заданиями для компьютерной обработки информации. Пусть время квантовано на интервалы длиной О с каждый. Интенсивность входного потока заявок в секунду равно X, причем О < 1/Х.
В конце некоторого временного интервала в систему с вероятностью ХО поступает новое задание по схеме независимых испытаний Бернулли [11]. Время обслуживания этого задания подчиняется геометрическому распределению следующим образом: если а — вероятность завершения задания во время любого кванта, то вероятность того, что время выполнения задания составит точно п временных интервалов (т.е. длительность обслуживания составляет пО с), определяется по формуле:
эп = (1 -а)ап -1, п = 1, 2, 3.....
Процедура обслуживания следующая (рис. 12): вновь поступившее задание при-
Вычислительная система
Вход
Циклическая очередь заданий А
Вычислительное устройство В
Квант О
1 ■
Рис. 12. Система обслуживания с разделением времени
соединяется к концу очереди А и ожидает в очереди с дисциплиной «первым пришел — первым обслужен» до тех пор, пока в конце концов не поступает в устройство обслуживания В на выполнение под управлением с операционной системы11. Обслуживающее устройство забирает из очереди следующее задание и выполняет элементарное обслуживание его (т. е. обслуживает задание точно О с). В конце этого временного интервала задание покидает систему, если его обслуживание (выполнение обработки информации) окончено. Если его обслуживание не закончено, то задание присоединяется к концу очереди, в которой находилось ранее. Очевидно, что задание длиной п интервалов времени потребует присоединения к очереди п раз до полного окончания его обслуживания.
Теперь должно быть сделано еще одно предположение относительно порядка, в котором происходят события в конце временного интервала. Рассмотрим два типа систем. Система первого типа допускает выход обработанного задания из устройства обслуживания (или позволяет ему присоединиться к концу очереди, если требуется дальнейшее обслуживание), и сразу же после этого в очередь поступает новое задание (с вероятностью ХО). Мы называем это системой с послеприбытием (СПП). В другой системе принят обратный порядок осуществления этих событий — это система с доприбытием (СДП). В обеих системах но-
11 При выполнении задания операционной системой образуется как минимум одна задача в смысле терминологии предыдущего раздела.
127
N95(17)2008
I <0
43 о
г
со
о §
со
0 и
1
0 &
вое задание начинает обслуживаться в начале очередного временного интервала.
Рассмотрим сначала систему с после-прибытием, которая аналогична системе, рассмотренной Д. Джексоном [14] для класса динамических приоритетов. Он получил решение для стационарной вероятности гк того, что в системе находится точно к заданий непосредственно перед моментом времени, в котором возможно поступление нового задания (т.е. сразу же после того, как задание выходит из обслуживания, если есть задание для обслуживания). Результат Джексона:
Гк = (1 - а)ак, где а = ра/(1 - ХО) и р = ХО/(1 - а).
Здесь р определяется обычно: как произведение интенсивности входного потока Х (средней интенсивности поступления заданий) и среднего времени обслуживания О/(1 -а). Система обозначений Джексона изменена, чтобы соответствовать обозначениям, принятым в данной статье.
Используя результаты Джексона, можно получить математическое ожидание для числа к в виде:
Еспп =ра /(1 -р).
Для систем с послеприбытием существует следующая теорема.
Теорема 1. Математическое ожидание ТСПП(п) общего времени, проводимого заданием в системе с послеприбытием, которое обслуживается пО секунд, равно:
Тспп(п)=
пО
1 -р
где а = а + ХО.
ХО2 1 -р
1 +
(1 -аа )(1 -а п-1 (1 -а )2(1 -р)
Можно показать, что а< 1. Верхняя граница ТСПП(п) легко может быть получена, если установить нижнюю границу выражения в скобках равной 1:
О
Тспп(п) <--(п-ХО).
1 -р
Рассмотрим теперь систему с доприбы-тием. Пусть гк —стационарная вероятность того, что в системе находится ровно к заданий после возможного поступления новых (т. е. сразу же перед моментом, когда сообщение выходит из обслуживания, если есть новые сообщения для обслуживания). Можно показать, что
Г1 -р, к = 0,
(1 -р
ак, к = 1,2,...
где а и р определены точно так же, как и в системе с послеприбытием. Отсюда получаем математическое ожидание для числа к в виде
-СДП
1 -р
(1 -ХО).
Теперь можем утверждать следующее. Теорема 2. Математическое ожидание ТСДП(п) общего времени, проводимого заданием в системе с доприбытием, время обслуживания которого пО секунд, есть
Т
, , пО ХО2р
сдп( п) = ---рО--—^
1-р 1-р
1 +
(1 -аа )(1 -а п-1 (1 -а )2(1 -р)
где а определена, как и прежде.
Легко получить верхнюю границу для ТСДП(п), если считать нижнюю границу выражения в скобках равной 1:
О
Тсдп(п) <-— (п-рХО)-рО.
1 -р
Рассмотрим теперь случай, когда все задания ожидают обслуживания в порядке поступления, причем, если обслуживание (выполнение задания) началось, оно продолжается до полного завершения обслуживания.
Теорема 3. Математическое ожидание ТПСО(п) общего времени, проводимого в простой системе обслуживания (ПСО) типа «первым пришел — первым обслужен» заданием, время обслуживания которого равно пО секунд, выражается формулой:
ТПСО( п):
ОЕ 1 -а
+ пО,
Г
к
128
На5(17)2008
где
Епсо( п) = ра /(1 -р).
Это выражение можно получить с помощью общей формулы Поллачека-Хинчина.
Заметим, что различие между системами с послеприбытием и доприбытием здесь исчезает. Так, конечно, и должно быть. Отметим также, что выражение, определяющее ЕПСО, то же самое, что и для среднего числа заданий в системе с послеприбытием ЕСПП.
Сравним теперь некоторые из этих результатов для систем с разделением времени. Сопоставим сначала величины ЕСПП и Есдп. Пусть А — разность между математическим ожиданием числа заданий в системах с по-слеприбытием и доприбытием. Тогда
А = -^- (1 -ХО) —— а.
1 -р 1 -р
Таким образом,
А = р(1 -а) = ХО.
Этот результат вполне логичен, поскольку:
• для а, равного 0 (т.е. когда каждое время обслуживания точно равно временному интервалу), разность А будет вероятностью нахождения заданий в системе с до-прибытием (которая есть просто р);
• при а, стремящемся к 1, разность стремится к 0, так как с вероятностью (1 - а) задание покинет систему до (после) следующего интервала.
Заметим, что А всегда меньше 1.
Теперь, если мы желаем получить приближенное решение для системы с разделением времени, можем утверждать следующее: задание с временем обслуживания пО с должно поступать в конец очереди ровно п раз. Упрощенно (это приближение оценивается ниже): каждый раз, когда задание входит в очередь, оно находит ЕСПП (или ЕСДП) заданий впереди себя. Время ожидания обслуживания каждый раз примерно равно ОЕ. Время, фактически проводимое
в обслуживании, равно точно пО. Поэтому § приближенное решение, которое мы обо- *
значим как 7СРВ: |
щ
7"срв( п) = пОЕ + пО. (35) ^
После сравнения с уравнением для простой системы «первым пришел — первым обслужен», в которой
тпсо( п) = + пО, 1 -а
видим, что для заданий с длиной п, меньшей (большей), чем 1 /(1 - а), в системе с разделением времени длительность ожидания12 меньше (больше), чем в простой системе «первым пришел — первым обслужен». Однако отметим, что средняя длина (в интервалах обслуживания) равна точно 1/(1 -а). Таким образом, для этого приближенного решения с разных точек зрения время ожидания равно среднему числу интервалов обслуживания.
Рассмотренные выше закономерности служат хорошим математическим подспорьем для обоснования эффективности новых дисциплин распараллеливания работ в мультипрограммных вычислительных системах с разделением времени.
Закон сохранения
Специальные дисциплины обслуживания, включая приоритеты и разделение времени, вводятся для того, чтобы получить какой-либо эффект по уменьшению интервала времени с момента поступления заявки в очередь до завершения ее обслуживания.
Однако при внимательном изучении дисциплины обслуживания с относительными приоритетами, в частности, формул (29), (30), (31) и особенно (32), может возникнуть вопрос: насколько математическое ожидание времени пребывания в системе всех заявок всех порядковых приоритетов отличается от длительности пребывания в одно-канальной системе массового обслуживания без приоритетов, которую можно рассчитать по формуле Поллачека-Хинчина?
! Для системы с послеприбытием это легко заметить.
129
N95(17)2008
Ответ простой: отличий нет. Для дисциплин с абсолютными приоритетами анализ формул (33) и (34) приводит к такому же выводу. Более того, если найти математическое ожидание времени пребывания заявки в системе с разделением времени для спектра времен, определяемого схемой независимых испытаний Бернулли, то формула (35) преобразуется в выражение, которое можно получить по формуле Поллачека-Хинчина (с точностью до погрешности малой величины). Спрашивается: а где здесь эффект?
Эффект, выраженный во времени, может быть получен только для заявок определенного типа за счет потерь времени на ожидание заявками другого типа. Для систем, в которых на обслуживание тратится физическая энергия, этот результат является следствием закона сохранения энергии, давно открытого М.В. Ломоносовым.
Закон сохранения в теории массового обслуживания формулируется следующим образом: назначение любой дисциплины обслуживания, дающей преимущества заявкам какого-то типа, не приводит к изменению среднего времени пребывания в системе, полученного для всех обслуживаемых заявок в системе, функционирующей в установившемся режиме.
Следствие: Эффект в денежном исчислении, получаемый в системе массового обслуживания после назначения заявкам определенного типа особой дисциплины § обслуживания, может иметь больший вес, § чем эффект во временном исчислении, ес-Ц ли цена времени ожидания для таких заявок существенно выше цены времени ожида-® ния для заявок других типов.
§ От редакции
и
1 В последующих номерах журнала пред-§ полагается опубликовать статью А. А. Емельки янова по теории сетей массового обслуживания.
§
<ц Список литературы
(а
§ 1. Бугорский В.Н. Сетевая экономика. М.: Финансы и статистика, 2007.
130 У
2. Вагнер Г. Основы исследования операций. Т. 3. М.: Мир, 1973.
3. Джейсуол Н. Очереди с приоритетами. М.: Мир, 1973.
4. Емельянов А.А. Имитационное моделирование в управлении рисками. СПб.: Инжэкон, 2000.
5. КофманА. Методы и модели исследования операций. М.: Мир, 1966.
6. Кофман А, Крюон Р. Массовое обслуживание. Теория и приложения. М.: Мир, 1965.
7. Клейнрок Л. Вычислительные системы с очередями. М.: Мир, 1979.
8. КлейнрокЛ. Коммуникационные сети. Стохастические потоки и задержки сообщений. М.: Наука, 1970.
9. Лукинский В.С., Лукинский В.В., Малевич Ю.В., ПластунякИ.А., Плентева Н.Г. Модели и методы теории логистики / Под ред. В.С. Лу-кинского. СПб.: Питер, 2007.
10. Саати Т. Элементы теории массового обслуживания и ее приложения. М.: Сов. радио, 1970.
11. Феллер В. Введение в теорию вероятностей и ее приложения. Т. 1. М.: Мир, 1967.
12. Феллер В. Введение в теорию вероятностей и ее приложения. Т. 2. М.: Мир, 1968.
13. Хинчин А.Я. Математические методы теории массового обслуживания. М.: Изд-во АН СССР, 1955.
14. Jackson J.R. Some problems in queuing with dynamic priorities // Naval Res. Logistic Quart. № 7. 1960.
15. Jacobson I., Ericsson M., Jacobson A. The Object Advantage Business Process Reengineering with Object Tecnology. NY: 10036-5701, ACM Press & Addisson-Wesley Publishing Company, 1995.
16. Kobayashi H. Application of the diffusion approximation to queueing networks I: Equilibrium queue distributions// Journal of the ACM. Vol. 21. № 2. April 1974.
17. Kobayashi H. Application of the diffusion approximation to queueing networks II: Nonequilibri-um distributions and applications to computer mo-deling// Journal of the ACM. Vol. 21. № 3. July 1974.
18. Pollaczek F. Sur l'application de la theorie des fonctions au calcul de certains probabilites continues utilisees dans la theorie des rezeaus telephoniques // Ann. Inst. Henry Poincare. № 1. 1946.