УДК 681.3.06
ОПТИМИЗАЦИЯ ОДНОРОДНЫХ НЕМАРКОВСКИХ СЕТЕЙ МАССОВОГО ОБСЛУЖИВАНИЯ
В.Н. Задорожный
Предложен новый эффективный аналитико-имитационный метод оптимизации немарковских сетей массового обслуживания. Экспериментально оценена скорость сходимости и точность метода. Даны практические рекомендации по его применению.
Ключевые слова: сеть массового обслуживания, оптимизация, аналитико-имитационное моделирование.
ВВЕДЕНИЕ
Производительность организационно-технических систем, предназначенных для обработки или обслуживания дискретных потоков каких-либо однотипных единиц (заявок), часто оценивается по времени прохождения заявок через эти системы. Унифицированным формализованным представлением подобных систем выступает сеть массового обслуживания (СеМО) со статистически однородными заявками — однородная сеть [1].
В виде СеМО традиционно представляются, например, информационно-вычислительные системы [1—5]. Заявки рассматриваются как передаваемые сообщения или как пользовательские запросы, обрабатываемые ресурсами системы. Время прохождения заявки через СеМО будем называть временем ответа. Среднее время ответа Е зависит от распределения имеющихся ресурсов сети между ее узлами.
В последние годы успешно развиваются методы оптимизации марковских [1, 2] СеМО — сетей с экспоненциальными распределениями времени обслуживания заявок и (если сеть не замкнута) с пу-ассоновскими входными потоками. Задача оптимального распределения ресурса замкнутой марковской сети сводится к системе нелинейных уравнений, эффективно решаемой численными методами [1]. Решается задача оптимизации замкнутых марковских сетей с несколькими классами сообщений [6]. В работах [1, 7] для немарковских сетей рассматриваются методы приближенного расчета, основанные на аппроксимации произвольных распределений распределениями, допускающими рациональное преобразование Лапласа. Однако этот путь сопряжен со значительными вычислительными трудностями даже для одновариантного расчета сетей с небольшим числом узлов (особенно если приходится аппроксимировать
распределения случайных величин, ограниченных узкими диапазонами возможных значений [8]). В работе [9] предпринята попытка решения задач оптимизации немарковских СеМО путем аппроксимации их узлов аналитическими выражениями, учитывающими первые два момента времени обслуживания и интервалов поступления заявок в узлы, с учетом межузловых взаимодействий. Однако до решения оптимизационных задач эта работа не доводится.
Таким образом, в общем случае для оптимизации немарковских сетей приходится использовать имитационное моделирование (ИМ). При этом если задача оптимизации содержит более двух-трех независимых переменных, то ее решение становится практически невозможным без привлечения градиентных методов. Но расчет градиентов в ИМ существенно затрудняется стохастической погрешностью вычисляемых оценок Е отклика Е [7, 10]. Известные методы [7, 11—13] решения этой проблемы либо пригодны только при ИМ изолированных систем массового обслуживания [7, 12, 13] и не распространяются на СеМО, либо их теоретически возможное применение к СеМО на практике приводит к значительным трудностям. Например, применению методов, опирающихся на имитацию большого числа периодов регенерации [11—14] препятствует то обстоятельство, что в СеМО, как правило, эти периоды бывают практически бесконечными. Успешные применения подобных методов ограничиваются классами СеМО, учитывающими специфику конкретных сетевых объектов при конкретных диапазонах их параметров [3].
Для задачи оптимального распределения ресурса по узлам однородной немарковской СеМО в статье предлагается метод, позволяющий эффективно решать проблему градиентов путем приме-
нения простой сепарабельной аппроксимации целевой функции.
Далее формулируется решаемая задача.
1. ЗАДАЧА ОПТИМИЗАЦИИ ОДНОРОДНОЙ НЕМАРКОВСКОЙ СЕТИ
Рассмотрим сначала открытую сеть, в которую поступает рекуррентный поток заявок с интенсивностью Л. Интервалы поступления заявок — независимые случайные величины (сл. в.) с функцией распределения вероятностей (ф. р. в.) A(f). Заявка из входного потока сети с вероятностью рш попадает в 1-й узел, / = 1, п . В любом из Ki каналов /-го узла время обслуживания заявки (независимая сл. в.) имеет ф. р. в. Б(1). После обслуживания в /-м узле заявка случайно и независимо, в соответствии с заданными переходными вероятностями р., выбирает один из узлов у для продолжения ц
своего маршрута или, с вероятностью р.0, уходит из сети. Вероятности р.. (/, у = 0, п) задаются нераз-
ц
ложимой стохастической матрицей Р = |р.|.
Стационарное среднее время Е прохождения заявки через сеть (среднее время ответа) можно представить в виде:
п п п , 1 х
Е = X «А = X а№ + Ь) = X а(^ +-), (1)
і = 1
і = 1
і = 1
где аі — среднее число посещении г-го узла заявкой за время ее прохождения через сеть, щ — среднее время пребывания заявки в г-м узле, wj — среднее время ожидания заявки в очереди г-го узла, Ь. — среднее время обслуживания заявки в г-м узле, = Ь-1 — интенсивность обслуживания заявки каналом г-го узла.
Коэффициенты а однозначно определяются из системы уравнений баланса:
а,- =
І а]Р]і,
і = 0, п .
] = о
Через коэффициенты а. последовательно определяются интенсивности А. = Л • а. входных потоков узлов, их коэффициенты загрузки р. = АДъК), и проверяются условия стационарности р. < 1 (или
Ъ 1 ^/К), / = 1, п . Значения wj в формуле (1) определяются посредством ИМ.
Если сеть замкнута, то входной поток заявок отсутствует (параметр Л не задается), и в сети циркулирует заданное постоянное число заявок Я. Завершением цикла обслуживания заявки считается
ее переход по некоторой «терминальной» дуге с «выхода» на «вход» сети. Среднее время ответа Е замкнутой сети (среднее время цикла обслуживания) также определяется формулой (1) и может вычисляться посредством ИМ.
Теперь рассмотрим следующую обобщенную версию сформулированной в работе [1] задачи оптимизации однородной замкнутой экспоненциальной (марковской) сети.
Стоимость (ресурс) М однородной сети как функция вектора Д = (цр ..., ъп) интенсивностей
обслуживания в узлах / = 1, п задается в виде
п в,
М(Д) = X С Ъ , где с{ — стоимостные коэффици-
. = 1
енты, в. > 0 — коэффициенты нелинейности. Требуется найти вектор Д = Д , доставляющий минимум функции Е = Е(Д):
і = 1
и принадлежащий следующей области допустимых решений (ОДР):
в/
М(Д) = X сгЪ = М , Ъ 1 Ът^ / = 1 П , (3)
I = 1
где для открытой сети = АУК (граница области стационарности), а для замкнутой ъ min = 0. Для ресурса М * в выражении (3) должно выполняться условие М* 1 МтП, где для открытой сети Мт^ =
= І сі = І с^/к/1, а для замкнутой ИМп = 0.
в,
^iтш х ~1У
г = 1 . = 1
В задаче (2), (3) имеется в виду, что изменение любой интенсивности Ъ приводит к изменению среднего Ь{ = ъ-1 и к соответствующему масштабному изменению ф. р. в. Б(1). Вид ф. р. в. Б(1) не изменяется, поскольку ассоциируется со случайной трудоемкостью заявок, тогда как варьируемый параметр ъ определяется производительностью каналов /-го узла.
2. ОБЩАЯ СТРУКТУРА И ОПОРНЫЕ ЭЛЕМЕНТЫ МЕТОДА «НАПРАВЛЯЮЩИХ ГИПЕРБОЛ»
Предлагаемый метод решения задачи (2), (3) состоит из двух этапов.
Этап I: ускоренный градиентный поиск точки Дор методом «направляющих гипербол» (НГ), использующим ИМ сети и сепарабельную аппроксимацию целевой функции (название метода отражает роль и вид функций одного переменного — слагаемых этой аппроксимации).
п
п
Этап II (не обязательный): уточнение найденного решения методом циклического покоординатного спуска [15] (модифицированным), не использующим аппроксимаций.
Предлагаемый в настоящей статье метод решения задачи (2), (3) использует уточненную версию предложенной в работе [16] аппроксимации функции Е(Д). Аппроксимация Е ар(Д) среднего времени ответа Е(Д) на каждой итерации к 1 2 поиска оптимального решения Дор1 формируется по результатам ИМ сети в точках Д = Дк -1 и Д = Дк и применяется для определения следующей точки
-*■ -*к + 1
Д = Д .
Определим опорные элементы метода НГ.
Центр Дс ОДР (3) при ресурсе М * > Мт^ определяется условием равной загрузки узлов: р. =
= У(ъЮ = а^оАъК = р^ / = м, где Ао — интенсивность на терминальной дуге (для открытой сети А0 = Л). Отсюда ъ = (а^/СК^с), ъ/ъ = = (а/КХ^/а^ и ъ = (а/К-НК/а^^. Подставляя последнее выражение ъ в формулу (3), имеем:
X
ел
а,
Ki
, = 1 'а1
= М *, ц. = (а/К-)(к1/а1)ц1,
/ = 2, п . (4)
Отсюда численными методами легко находится единственный положительный корень ъ1, определяющий все остальные координаты ц . центра Дс ОДР. Если сеть открытая, то в центре Дс сразу определяются все р. = рс < 1, / = 1, п .
Если все в. = 1, то из формулы (4) координаты центра ОДР можно выразить явно:
( п ^ 1
Ъ = М*(а../К) X сЦац/Кц| , / = 1> п .
= 1 '
Открытая сеть имеет в центре Дс максимум пропускной способности Г(Д), определяемой для нее как Г(Д) = тах{Л: р. = аД/(ъК) т 1, / = 1, п}.
Диаметр Б ОДР определим как длину максимального из диапазонов варьирования перемен-
ных ц.: D = max{/.}, где I. = ц.
фоРМУЛе (3)> Ц/max =
i = 1, n .
Р/
и, согласно
L 7
VP,
М* - X cj^'min 1 е*'
Малый шаг размером, например, Б^10 4, будем применять при построении и сканировании траекторий на поверхности ограничений, определяемой уравнением (3). Шаг выбирается с учетом требований к точности оптимизации.
Аппроксимация Е ар(Д) целевой функции Е(Д), используемая для приближенного вычисления градиента, представляет собой сепарабельную функцию варьируемых переменных ц.:
Еар(Д) = £ а.(Щ(ъ) + ■!),
/ = 1
где Щц) =
ц,- St
(5)
-к -к -к-1 W,, если W, = W, ,
и на каждом шаге к оптимизации заново настраивается (посредством коэффициентов Я. и Sl) по
- к- 1 - к
оценкам wi и wi среднего времени ожидания,
найденным для узлов / = 1, п с помощью ИМ сети
^к - 1 -к тг ~ к -к -1
в точках Д = Д и Д = Д . При wi ф wi выражение — Si) в формуле (5) аппроксимирует
соответствующую функцию wi(Д)в выражении (2)
так, что его значение в точках Д
- к - 1
падает с оценками w,
z-к -К ^ к
W,(|J. ) и Wi
^•(рк).
Таким образом, имеем Я./( ъ Я/( Ък - к, откуда
к -1
к -1
и
W к к = Wi ц i - W,
к - 1 к - 1 ц.
к
к -1
п - к-1, к- 1
R = W i (ц
/ = 1, п , (6)
(верхний индекс здесь везде соответствует шагу оптимизации).
При >^к = м>к -1 расчет значений Я. и Si в формуле (5) не нужен, но для определения валидной части [Ь] (см. далее) полагаем Б. ^ гс>. Такая настройка функции Еар(Д) обеспечивает ее совпадение с целевой функцией Е(Д) в точках Дк 1 и Дк (с точностью до стохастической погрешности оценок ИМ). В других точках Д точность аппроксимации Еар(Д) тем хуже, чем они дальше от точек Дк 1 и Дк, и чем «менее сепарабельна» Е(Д), т. е. чем сильнее изменение интенсивностей Ъ в одних узлах влияет на среднее время wц• в других (/ фу).
Градиент УЕар(Д) в точке Д = Дк есть аппроксимация градиента УЕ(Д) в этой точке, и вычисляется с помощью выражения, полученного дифференцированием выражения (5):
VEaV) =
dW1 1 д ц1
n Зц„
(ц„)'
.(7)
n
где
-Я
-к -к-1
2 V і Ф ,
І = 1, П .
Валидная часть [Ь] исходящей из точки Д трат -*к +1 -*к
ектории Ь поиска точки Д лежит между Д и первой на Ь точкой Д, у которой какая-либо координата |аг- достигает границы ОДР цг- = цг- шіп или полюса цг- = аппроксимации (5).
Приведем пошаговое описание метода НГ с расчетными формулами.
3. МЕТОД «НАПРАВЛЯЮЩИХ ГИПЕРБОЛ»
Начальная фаза оптимизации. Задаем число итераций N > 2 (выбирается с учетом допустимых затрат машинного времени) и две точки Д1 = Дс и
2 1
Д ф Д , принадлежащие ОДР (3). С помощью ИМ вычисляем в этих точках оценки среднего времени
л 1 л 2
ответа Е и Е , и, соответственно, оценки сред-
,'1 -К/-2 ~2Ч
него времени ожидания (1, ..., wn), (\V1, ..., wn)
в узлах 1, ..., п. Полагаем к = 2.
Основной цикл. Известны точки Дк 1 и Дк с оцен-
к-1 - к-К Ак-1 к - кч -к
ками (w1 , ..., wn ), Е и (w 1, ..., —п), Е от/ к — 1 к —1\ 7-гк 1 / к к \ 7-гк
кликов (Wl , ..., Wn ), Е и (Wl , ..., Wn ), Е .
1. Используя оценки ( —к - 1 , ..., Wk -1 ) и ( , ...,
w п), находим по формулам (6) коэффициенты Я. и Б, / = 1, п, аппроксимации Еар(Д).
Вычисляем градиент (7) функции Еар. Направление —УЕар(Дк) наискорейшего убывания функции Еар(Д) проецируем на поверхность ограничений (3). Если в. = 1 для всех / = 1, п, то поверхность (3) является гиперплоскостью, и проекция Ь на нее направления вектора —УЕар(Дк) есть направление вектора — V ЕрГ (Дк) = — УЕар(Дк) + Й(ЙУЕар(Дк)) = е, где п = с/|с | — нормаль к гиперплоскости ограничений, с = (с1, ..., сп) — вектор стоимостных коэффициентов, |Х | — длина вектора X. Валидная часть [Ь] проекции Ь ограничена точками Дк и Д = Дк + Не, где к = тт{Нр к2},
к1 = тт^..: Н1i > 0; / = 1, п},
Н2 = тт^.: Н^. > 0; / = 1, п},
НИ = —(Ък — Ъimin)/ei, Н2i = —( Ък — Si)/ei,
/ = 1, п .
Если не все в. равны 1, то проекцию Ь направления антиградиента строим пошагово, как исходящую из точки Дк ломаную, узлы Д которой суть проекции на поверхность (3) равноотстоящих с
малым шагом точек направления —VEap(Дk). Для каждого очередного узла Д проверяются условия
его валидности ъ > ъШп и (ъ — Б)( цк — Б) > 0,
/ = 1, п. Равенство знаков разностей (ъ — £.) и
(ък — Б) означает, что координата ъ текущего узла
к
Д траектории Ь и координата ъ начальной ее точки Дк находятся по одну сторону от полюса Б. аппроксимации. Построение [Ь] завершается получением и отбрасыванием первого невалидного узла либо выяснением, что очередная точка в направлении антиградиента — VEap(Дk) уже не имеет проекции на поверхность ограничений.
2. В качестве следующей точки Дк + 1 выбираем решение (получаемое методом сканирования) задачи одномерной оптимизации Еар(Д) ^ тт, Д е [Ь].
3. Полагаем к = к + 1. С помощью ИМ вычисляем оценки (Wkl, ..., Wk) и Ек. Если к < N, то переходим к шагу 1, иначе — к шагу 4.
4. Точку Д* е {Д1, ..., Д^} с оценкой Е (Д*) =
- 1 ~ N
= тт{Е , ..., Е } принимаем в качестве приближенного решения задачи. Конец алгоритма.
4. УСКОРЕННЫЙ ПОКООРДИНАТНЫЙ СПУСК (ВТОРОЙ ЭТАП ОПТИМИЗАЦИИ)
Погрешность первого этапа (метода НГ) включает в себя две составляющие: стохастическую и детерминированную. Стохастическая составляющая контролируется расчетом доверительных ин-
,як ~ к ч —к тервалов для оценок (1, ..., wn) и Е , и ее можно
снижать путем удлинения прогонов модели. Детерминированная составляющая обусловлена применением сепарабельной аппроксимации Еар(Д) для несепарабельной (в общем случае) функции Е(Д). Это приводит к тому, что решение Д*, найденное методом НГ, отличается от искомого Дор1 даже при условии полного устранения стохастических погрешностей оценок ИМ. Поэтому решение Д* в общем случае целесообразно уточнять (или проверять) методом, не использующим аппроксимацию Еар(Д).
Для этого на втором этапе оптимизации в окрестности решения Д* определяется 2(п — 1) пробных точек, каждая из которых отличается от Д* лишь одной из (п — 1) «свободных» координат и.
(например, одной из координат ц1, цп _ 1) на ве-
личину ±Ац. «Связанная» координата пробной точки (например, цп) определяется через известные «свободные» ее координаты путем решения уравнения (3), чтобы обеспечить принадлежность всех пробных точек ОДР. Отклонение Ац выбирается с учетом допустимой погрешности решения и с учетом возможности надежного сравнения откликов Е(Д) в соответствующих точках по их оценкам Е (Д). Далее решение Д* уточняется путем ИМ сети в пробных точках и замены Д* тем пробным решением Д, для которого Е(Д) < Е(Д*). Если такое не находится, процесс завершается, иначе для нового решения цикл уточнения повторяется. Для исключения зацикливания возврат к пройденным решениям запрещается. Для ускоренного сравнения откликов Е(Д) и Е(Д*) с заданной надежностью
по их оценкам Е (Д) и Е (Д*) применяется метод «общих случайных чисел» [10].
5. ИСПЫТАНИЯ МЕТОДА «НАПРАВЛЯЮЩИХ ГИПЕРБОЛ» НА ОТКРЫТЫХ СЕТЯХ
Подробно охарактеризовать возможности метода НГ можно на примере оптимизации открытой версии тестовой СеМО-1 (рис. 1). Суммарный ресурс M = 30 распределяется здесь при c = (ci, ..., О = (K1, ..., K) = (1, 2, 1, 1, 1, 1, 1, 3, 1), т. е. для каждой системы массового обслуживания стоимостный коэффициент равен числу ее каналов. Типы распределений B(t) для узлов i = 1, ..., 9
9 9 9
определены как R, R, R, M, M, Е , Е , Е , R соответственно, где M — экспоненциальное распределение, R — равномерное (на отрезке от 0 до двух
средних), Ет — эрланговское распределение m-го порядка. Входной поток СеМО-1 пуассоновский и имеет интенсивность Л = 1. Переходные вероятности указаны на рис. 1.
Тестовая сеть СеМО-1 применялась для сравнения метода НГ с базовым алгоритмом оптимизации, в котором градиент рассчитывался методом малых приращений. В каждом прогоне модели СеМО-1 имитировалось прохождение через сеть около 1 млн. заявок. На рис. 2 приведена типичная траектория изменений целевой функции в процессе оптимизации, выполняемой методом НГ. Приближение к точке оптимума происходит за 7—11 шагов, т. е. число эффективных итераций близко к размерности n факторного пространства. Вблизи точки оптимума растут стохастические ошибки аппроксимации, перенастраиваемой по двум сближающимся точкам факторного пространства, и происходит «отбрасывание» очередного приближения Д + от искомой точки опти-
Рис. 1. Тестовый пример СеМО-1. Штриховая дуга соответствует замкнутой версии сети
Рис. 2. Изменения отклика Е в ходе поиска оптимума методом «направляющих гипербол»
мума, вследствие чего значение целевой функции резко возрастает. Затем процесс вновь возвращается к точке оптимума. На рис. 3 показана типичная траектория значений целевой функции, получаемая при использовании базового метода. Заметно выигрывая у этого метода в глубине оптимизации, метод НГ превосходит его и в быстродействии. Это достигается как благодаря резкому снижению числа итераций, так и потому, что для вычисления градиента на каждой итерации в методе НГ используется лишь один прогон имитационной модели, а не (п + 1) прогонов, как в базовом методе. Решение, определяемое для СеМО-1 методом НГ за 7—11 итераций, обеспечивает среднее время ответа Е « 7,49...7,51. Базовый метод за
100...140 итераций (т. е. за 1000...1400 прогонов модели) дает более слабый результат Е « 9,3...9,5.
Тестовая задача решалась также с помощью оптимизатора OptQuest [17]. Программой OptQuest за
750...1000 прогонов модели, т. е. при стократной «форе» по времени, достигается среднее время ответа Е « 7,91, также проигрывающее результату метода НГ.
В более полный набор тестов включены открытые сети СеМО-2, ..., СеМО-5.
Сеть СеМО-2 отличается от СеМО-1 лишь равномерным на отрезке [0,5; 1,5] распределением интервалов поступления заявок в сеть. Сеть СеМО-3 состоит из 30-ти узлов и представляет собой каскадное (последовательное) соединение трех сетей, подобных СеМО-1, усложненное возвратами заявок с выходов всех каскадов на их входы и на входы предшествующих каскадов. Сеть СеМО-4 содержит 20 узлов, ее маршрутная матрица сформирована с помощью датчика случайных чисел при соблюдении требования связности сети. Число каналов в каждом узле также разыгрывалось как случайное и не превышало шести. Сеть СеМО-5 содержит 100 узлов и имеет структуру переходов, представленную на рис. 4. Соответствующие переходные вероятности, число каналов в узлах и вид законов распределения Б^) определялись датчиком случайных чисел. Кроме распределений, использованных в СеМО-2, в СеМО-5 применялись
0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 Номер итерации
Рис. 3. Изменения отклика Е при применении базового метода малых приращений
Рис. 5. Тестовая двухлинейная система
следующие распределения: эрланговское 3-го порядка; треугольное; гамма-распределение с параметром формы а = 2,5; гиперэкспоненциальные распределения с коэффициентами вариации (к. в.) С = 2 и С = 3 и распределения Вейбулла с к. в.
С = 2, С = 3 и С = 75 . Последнему распределению принадлежат и интервалы поступления заявок в СеМО-4 и СеМО-5.
В табл. 1 приведены результаты оптимизации этих четырех тестовых сетей с помощью метода НГ. Каждая сеть оптимизировалась дважды: при распределяемом ресурсе М « 1,5Мт1п и при М« 2Мт1п. Время Тм итерации (практически совпадающее со временем прогона модели) указано в минутах для двухядерной ПЭВМ с тактовой частотой процессора 2 ГГц и объемом оперативной памяти 0,97 ГБ.
Как видно из табл. 1, при числе узлов и каналов, достигающем сотен (СеМО-5), когда высокие затраты времени на имитацию существенно ограничивают возможность увеличения числа итераций, метод НГ позволяет достигать значительного сокращения времени Е при числе итераций N меньшем размерности п факторного пространства.
6. СПЕЦИАЛЬНЫЕ ИСПЫТАНИЯ МЕТОДА «НАПРАВЛЯЮЩИХ ГИПЕРБОЛ»
Для оценки качества приближенного решения Д* введем три показателя: эффект оптимизации О = (Ес — Е*)/Ес, фазовую погрешность 8 = |Дор1 —
- Д*1/1 ДорЛ и упущенный эффект £ = (Е* - Ео^/Ео^,
где Ес = Е(П ), Е = Е(ц*), Е
орЛ
Е(Дср1)-
Рис. 4. Структура переходов в СеМО-5
Сравнивая выражения (2) и (5), можно видеть, что детерминированная составляющая погрешности, обусловленная использованием сепарабельной аппроксимации (5) для несепарабельной функции (2), должна быть более заметной при оптимизации тех сетей, в которых изменение интенсивностей обслуживания ц в одних узлах сильнее влияет на среднее время ожидания wj. в других. Но большое влияние ц на wj. возникает тогда, когда заявки переходят из узла / непосредственно в узел у, и при этом к. в. распределения Б^О значительно отличается от к. в. распределения Б([) и (или) от к. в. интервалов поступления заявок в /-й узел [1, 9].
С учетом этих факторов для специальных испытаний точности метода НГ сконструирована
«неудобная» для него двухлинейная система (ДС) (рис. 5). Интервалы поступления заявок в ДС распределены равномерно на отрезке [0, 2]. Время обслуживания в узлах 1 и 4 детерминированное (к. в. ^ ^ = 0). В узлах 2 и 3 время обслуживания
разыгрывается как функция x стандартной сл. в. п
x = d[(n + е) 1 — (1 + е) Х]. Здесь сл. в. п распределена равномерно на отрезке [0, 1], масштабный коэффициент d определяет требуемое среднее M(x) = Ь, а параметр е > 0 позволяет формировать требуемый к. в. ^ = C ^ ^ ^ при е ^ 0). Если для узлов 2 и 3 взять е = 0,216, d = 1,106, то получим в них Ь = 1 и C = 1 (вариант ДС1 — ординарный тест). При е = 0,019, d = 0,332 имеем Ь = 1, C = 2 (вариант ДС2 — усложненный тест), а при е = 0,001, d = 0,169 получаем Ь = 1, C = 5,22 (вариант ДС3 — жесткий тест). Все коэффициенты cj и рг взяты равными единице.
В табл. 2 представлены решения, полученные методом НГ (этап I) и последующим покоординатным спуском (этап II) для тестов ДС1, ДС2 и ДС3. На этапе II результат, полученный методом
Результаты испытаний алгоритма
НГ, предварительно округлялся до сотых долей (с учетом равенства ц1 + ц2 + ц3 + ц4 = M) и затем уточнялся ускоренным методом покоординатного спуска при отклонениях свободных координат Ацг = ±0,01 (Ж — число получившихся шагов). Средние значения времени ответа EI и EII, полученные на этапах I и II, приведены со всеми точно установленными значащими цифрами. Известные интервалы между сравниваемыми пробными точками позволили оценить фазовую погрешность 8 сверху. Как видно из табл. 2, погрешность 8 метода НГ выходит за пределы 1 % лишь при весьма больших перепадах к. в. Ci. При C2 = ^ « 5 (^ = CA = 0) она может достигать 3 %. При этом упущенный эффект оптимизации е не превышает половины процента. Значение е < 0 в табл. 2 получено для случая, когда решение Д* на этапе II ухудшилось из-за округления.
Можно предположить, что в сетях с ветвящимися и сливающимися маршрутами точность метода НГ будет не хуже, поскольку рассеивание и смешивание потоков обусловливает тенденцию их
Таблица 1
тестовых сетях СеМО-2..СеМО-5
Число узлов п, общее число каналов К СеМО-2 n = 9, K = 12 СеМО-3 n = 30, K = 134 СеМО-4 n = 20, K = 52 СеМО-5 n = 100, K = 260
Число итераций N х время итерации Тм Распределяемый ресурс М Отклик Ес в центре ОДР Л* А. . Отклик Е = Е\ ц*) /ч /ч * /ч Эффект оптимизации (Ес — Е )/Ес -100 % 20 24 13,98 10,83 22,5 х 2 32 8,043 6,225 22,6 60 96 49,92 41,53 17 х 10 128 27,88 22,97 18 40 39 78,08 55,12 29 х 5 52 38,19 29,94 22 50 х 94 437 278,1 249,6 10 75 х 94 582 163,3 143,8 12
Таблица 2
Результаты оптимизации тестовых ДС
Вариант теста M рс Этап N; N' Найденное приближение к точке оптимума EI; eii 8-100 % 8-100 %
И ц2 ^3 ^4
Ординарный С2 = С3 = 1 I II 48 0 1,105 1,11 0,946 0,95 0,890 0,88 1,059 1,06 2,925 0,6 0,00
Усложненный С2 = С3 = 2 4 0,5 I II 62 0 1,198 1,20 0,913 0,90 0,772 0,78 1,117 1,12 4,320 4,319 0,8 0,02
Жесткий С2 = С3 = 5,22 I II 122 5 1,282 1,33 0,837 0,84 0,646 0,63 1,235 1,20 12,921 12,871 3,0 0,4
Ординарный С2 = Сз = 1 I II 4 0 0,654 0,66 0,603 0,60 0,599 0,59 0,644 0,65 9,790 9,766 1,0 0,2
Усложненный С2 = С3 = 2 2,5 0,8 I II 29 0 0,692 0,69 0,596 0,60 0,557 0,56 0,655 0,65 19,972 19,987 0,6 -0,1
Жесткий С2 = Сз = 5,22 I II 8 1 0,687 0,70 0,604 0,60 0,533 0,53 0,676 0,67 90,16 89,76 1,2 0,4
Таблица 3
Оценка точности метода НГ для СеМО-1
Этап N; N' Найденное приближение к точке оптимума ei; eii 8-100 % 8-100 %
И ц2 ц3 ^4 ^5 ^6 Н-7 ^8
I II 33 5 0,818 0,79 0,597 0,60 1,405 1,43 3,025 3,02 9,490 9,49 1,272 1,28 1,682 1,69 2,965 2,96 2,219 2,22 7,514 7,513 0,4 0,01
приближения к экспоненциальным, и, соответственно, форма Е(Д)должна в таких открытых сетях приближаться к сепарабельной. Это подтверждается данными о точности метода НГ в табл. 3, полученной при двухэтапной оптимизации СеМО-1.
7. ОПТИМИЗАЦИЯ ЗАМКНУТЫХ СЕТЕЙ
Оптимизация замкнутой сети методом НГ характеризуется более высокой детерминированной составляющей погрешности, так как функция Е(Д) здесь «сильно» несепарабельна. Изменение интенсивности в любом узле замкнутой сети приводит к изменению интенсивностей Аj входных потоков
всех узлов у, j = 1, п , и, тем самым, непосредственно изменяет время Wj во всех узлах. Испытания метода НГ для замкнутой версии СеМО-1 показывают, что при линейном ограничении (3) значение 8 может достигать 0,03 (в открытой версии СеМО-1 8 = 0,004). При нелинейном ограничении (3) (с разбросом коэффициентов рг в пределах от 0,5 до 1,5) 8 равно 0,06...0,08. Но упущенный эффект при этом остается небольшим (е < 0,01). В этих испытаниях длина прогонов составляла около 1 млн. заявок, а число N итераций лежало в пределах нескольких десятков. Таким образом, и при оптимизации замкнутых сетей на практике часто можно ограничиваться применением только первого этапа оптимизации — метода НГ.
ЗАКЛЮЧЕНИЕ
Для оптимизации немарковских СеМО в общем случае приходится применять ИМ, которое характеризуется высокой сложностью вычисления градиентов, обусловленной стохастическим характером получаемых путем ИМ оценок. При решении задачи оптимального распределения ресурса проблема градиентов эффективно решается предлагаемым двухэтапным методом оптимизации, ядро которого составляет метод «направляющих гипербол». Он характеризуется относительно хорошей точностью и приемлемой вычислительной трудоемкостью, позволяющей рекомендовать его для практического применения при проектировании или модернизации сетей массового обслуживания, содержащих десятки и сотни узлов.
ЛИТЕРАТУРА
1. Вишневский В.М. Теоретические основы проектирования компьютерных сетей. — М.: Техносфера, 2003. — 512 с.
2. Клейнрок Л. Вычислительные системы с очередями. — М.: Мир, 1979. — 600 с.
3. Вишневский В.М., Пороцкий С.М. Моделирование ведомственных систем электронной почты // Автоматика и телемеханика. — 1996. — № 12. — С. 48—57.
4. Жожикашвили В.А., Вишневский В.М. Сети массового обслуживания. Теория и применение к сетям ЭВМ. — М.: Радио и связь, 1988. — 192 с.
5. Феррари Д. Оценка производительности вычислительных систем. — М.: Мир, 1981. — 576 с.
6. Герасимов А.И. Оптимизация замкнутых сетей массового обслуживания с несколькими классами сообщений // Проблемы передачи информации. — 1994. — Т. 30, № 1. — С. 85—96.
7. Рыжиков Ю.И. Имитационное моделирование. Теория и технологии. — СПб.: КОРОНА принт; М.: Альтекс-А, 2004. — 384 с.
8. Клейнрок Л. Теория массового обслуживания. — М.: Машиностроение, 1979. — 432 с.
9. Gabriel R. Bitran, Reinaldo Morabito. Open Queueing Networks: Optimization and Performance Evaluation Models for Discrete Manufacturing Systems / Сайт Массачусетского технологического института. — Режим доступа: http:// dspace.mit.edu/bitstream/handle/1721.1/2537/SWP-3743-31904719.pdf?sequence=1.
10. Клейнен Дж. Статистические методы в имитационном моделировании. — М.: Статистика, 1978. — Вып. 1. — 221 с.
11. Johnson M.E., Jackson J. Infinitesimal Perturbation Analysis: a Tool for Simulation // J. of the Operational Res. Soc. — 1989. — Vol. 40, N 3. — P. 134—160.
12. Rubinstein R.Y. Sensitivity analysis of computer simulation models via the efficient score // Oper. Res. — 1989. — Vol. 37. — P. 72—81.
13. Suri R, Zazanis M. Perturbation Analysis Gives Strongly Consistent Sensitivity Estimates for the M|G|1 Queue // Mgmt Science. — 1988. — Vol. 34. — P. 39—64.
14. Иглхарт Д.Л., Шедлер Д. С. Регенеративное моделирование сетей массового обслуживания. — М.: Радио и связь, 1984. — 135 с.
15. Базара М., Шетти К. Нелинейное программирование. Теория и алгоритмы. — М.: Мир, 1982. — 583 с.
16. Задорожный В.Н. Методы двухуровневого моделирования систем с очередями // Тр. VII междунар. конф. «Идентификация систем и задачи управления» SICPRO’08. — Москва, 28—31 января 2008 / ИПУ РАН. — М., 2008. — С. 1484—1563.
17. Карпов Ю.Г. Имитационное моделирование систем. Введение в моделирование с AnyLogic-5. — СПб.: БХВ-Петер-бург, 2005. — 400 с.
Статья представлена к публикации членом редколлегии
А.С. Манделем.
Задорожный Владимир Николаевич — канд. техн. наук, доцент,
Омский государственный технический университет,
®(3812) 65-20-84, И [email protected].