Библиографический список
1. Мирошник И.В. Теория автоматического управления. Нелинейные и оптимальные системы. - СПб.: Питер, 2006.
- 272 с.
2. ФедоренкоР.П. Приближенное решение задач оптимального управления. - М.: Наука, 1978. - 488 с.
3. Медведев B.C., Потемкин В.Г. Нейронные сети. Matlab 6.
- М.: Диалог-МИФИ, 2002. - 496 с.
4. Рубан А.И. Адаптивное управление с идентификацией. — Томск: Иэд-во ТГУ, 1S82. - 302 с.
5. Когут А.Т. Полиномиальная аппроксимация в некото-
рых задачах оптимизации и управления. — Омск: Иэд-во Ом-ГУПС, 2003. - 244 с.
КОГУТ Алексей Тарасович, кандидат технических наук, доцент кафедры «Автоматика и системы управления», директор ИАТИТ.
ЛАВРУХИН Андрей Александрович, аспирант кафедры «Автоматика и системы управления».
Дата поступления статьи в редакцию: 05.09.2006 г. © Когут A.T., Лаврухин A.A.
удк 681 3 06 В. Н. 3АДОРОЖНЫЙ,
Е. С. ЕРШОВ, О. Н. КАНЕВА
Омский государственный технический университет
ДВУХУРОВНЕВЫЕ ГРАДИЕНТНЫЕ МЕТОДЫ ДЛЯ ОПТИМИЗАЦИИ СЕТЕЙ С ОЧЕРЕДЯМИ __
Разрабатываются градиентные алгоритмы для оптимизации распределения ресурсов в сетях массового обслуживания. Решается задача анализа чувствительности оптимальных решений к изменениям параметров сети. Предлагается двухуровневая аналитико-имитационная модель сети, позволяющая осуществлять адаптивную аппроксимацию поверхности отклика и реализовать анализ чувствительности, основанный на точном формальном дифференцировании. Приводятся результаты, полученные в ходе программной реализации и испытания эффективности разработанных алгоритмов.
Введение
Эффективность функционирования многих сложных организационно-технических объектов, предназначенных для обработки или обслуживания дискретных потоков каких-либо однотипных единиц — заявок — часто оценивается по времени прохождения заявок через эти объекты. Унифицированным формализованным представлением подобных объектов являются т. н. сети массового обслуживания (СеМО), или, иначе, сети с очередями. Узлами сети являются системы массового обслуживания (СМО), которые обслуживают заявки, поступающие на их вход, и передают, в соответствии с заданными переходными вероятностями, на входы других СМО или на выход из сети. В виде сетей с очередями представляются, например, информационно-вычислительные сети и системы (ИБС). В этом случае заявки могут рассматриваться как передаваемые между пользователями сообщения либо как пользовательские запросы, обрабатываемые устройствами системы [ 1 -5]. На рис. 1 показан пример сети с типичной для моделирования ИБС конфигурацией. Время прохождения заявки через сеть с очередями интерпретируется как время передачи сообщения от источника к получателю, либо, при обработке пользовательских запросов, как время ответа системы. В соответствии с последней интерпретацией время прохождения заявки
через сеть будем называть временем ответа. Среднее время ответа зависит оттого, как имеющиеся ресурсы сети распределены между её узлами.
Другими примерами объектов, которые могут моделироваться как сети с очередями, являются службы сервиса, крупные магазины, банковские филиалы и другие обслуживающие предприятия, клиенты которых чувствительны к времени обслуживания и к задержкам в очередях. При разработке схем развития транспортной сети города выделяемый ресурс (в стоимостном выражении) следует оптимально распределять на восстановление и повышение пропускной способности имеющихся транспортных линий и на строительство новых, учитывая при этом очереди автомобилей (заявок) перед светофорами и на маршрутных остановках. Время ответа здесь можно интерпретировать как среднее время прохождения транспортом выделенной (основной) доли маршрутов между отмеченными множествами пунктов или как время проезда через указанный район (например, через центр города). Заметим, что решение аналогичных задач имеет смысл и для должного оборудования основных пешеходных маршрутов.
Входной поток сети, имеющий среднюю интенсивность поступления заявок Л, будем считать рекуррентным, т. е. интервалы поступления заявок в сеть определяются как независимые случайные ве-
личины (с. в.), с одной и той же функцией распределения вероятностей (ф. р. в.) A(t). В i-м узле сети имеется Kj каналов и время обслуживания заявок (независимая с. в.) имеет ф. р. в. В_(t); i = ],n. После обслуживания в i-м узле заявка случайно и независимо, с заданными переходными вероятностями pLj > О выбирает один из возможных узлов j для продолжения своего маршрута. Вероятность рю соответствует выходу из сети, p0j — попаданию из входного потока сети в i-й узел. Все вероятности p(j (i, j = 0, п ) могут быть указаны на графе сети (см. рис. 1) и/или заданы матрицей Р = ||ру|. Подобные открытые сети будем называть каноническими. Переход к не каноническим сетям с несколькими входными и выходными потоками во многих случаях нетрудно осуществить путём наложения нескольких канонических подсетей на общее множество узлов. Такое наложение приводит к несложной модификации предлагаемых далее методов, которая сводится, как правило, к линейному комбинированию основных формул. При этом разные канонические подсети могут иметь разные матрицы переходов Р и разные наборы ф. р. в. для времени обслуживания в узлах.
В канонической сети с очередями среднее время Е ответа можно представить в виде суммы:
п п п п "1
Е== =+Za.—, (i)
(=1 /=i I=i 1=1 f=i и,
где II — средний вклад i-ro узла в среднее время Е
ответа, с,
а — среднее число (частота) посещений i-ro узла одной заявкой,
wi — среднее время ожидания заявки в очереди i-го узла, с,
fcr — среднее времени обслуживания заявок в i-м узле, с,
//f — интенсивность обслуживания заявки каналом i-ro узла, с~!,
п — число узлов сети.
В дальнейшем, для краткости, говоря время ответа (ожидания, обслуживания.,.), будем подразумевать среднее время ответа (ожидания, обслуживания...), если это не будет мешать пониманию смысла сказанного. Из представления (1) видно, что время ответа Е представляет собой сумму задержек w^ Ь|Г которые заявка «собирает», посещая очереди и каналы по ходу своего продвижения через сеть.
Частоты а, посещения заявкой узлов однозначно определяются переходными вероятностями Р и могут быть найдены из системы уравнений:
(2)
у=о
при а0 = 1. Так, применяя уравнения (2) к сети на рис. 1, находим:
а = (0.2,0.3,0.5, 1.3667,5.9,0.41,0.54667,5.31, 1). Для всякого Ьго узла интенсивность ^ его входного потока заявок определяется равенством ^ = А • Таким образом, для частот а = (а,,..., ап \ и интенсив-ностей Я = (Л,,..., Лп) можно написать Л = \а. Разумеется, мы полагаем выполненными условия стационарности сети > Л,, (/ = \,п). Поскольку для сети на рис. 1 значение А = 1, то для неё Х = а ■
1. Задача оптимального распределения ресурсов сети
Интенсивности ц, обслуживания заявок характеризуют производительность узлов и определяются равенствами ц 1= 1 /Ь,, где Ь (время обслуживания) -математическое ожидание распределения В,(I), / = 1, и.
При наличии некоторого суммарного ресурса производительности
M =c,fi, +... + спцп, (3)
представленного, например, в стоимостном выражении, задача его оптимального распределения по узлам состоит в нахождении интенсивностей fi = ,...,//„), которые при заданных удельных расходах с = (ср...,с„) удовлетворяют условию (3) и минимизируют время ответа Е. Удельный расход с, равен такому расходу суммарного ресурса М, который необходим для увеличения интенсивности /л. на 1 с-1. При этом изменение ß (i или, что то же самое, изменение Ь., приводит к масштабному преобразованию распределений B^t) : вид этих распределений не изменяется. Это обусловлено интерпретацией параметров как показателей производительности узлов. С учётом сказанного задачу оптимального распределения ресурсов сети можно поставить в виде: Л я ]
E{fi) = La'W> С")+ Z ---> m-in (4)
/=| /=i А "
(5)
да:, >Л,,;=й. (6)
Здесь ограничения (6) задают для возможных распределений // = (//,,...,/¿„) область стационарности, в которой существует стационарный режим функционирования сети. Эти ограничения эквивалентны условиям отсутствия «перегруженных» узлов д = Я, /(К;щ)< 1, » = 1,я, где р. — коэффициент загрузки i-ro узла. Совокупность ограничений (5) и (6) задаёт область допустимых решений (ОДР) задачи (4)-(6).
2. Проблема вычисления градиентов в имитационном моделировании
Зависимости w, (fi) в целевой функции (4) удаётся найти в явном виде только для таких канонических сетей, в которых A(t) и все или почти все BJt) — экспоненциальные распределения. В общем случае анализа сетей с очередями единственным методом вычисления показателей wt(fi) или E(fi) по заданным значениям fi = (/у, ,...,//„ ) является имитационное моделирование (ИМ). Однако ИМ вместо точного значения любого усреднённого показателя у = y(fi) вычисляет его оценку у = у + е . Погрешность е можно рассматривать как с. в. с нулевым средним значением и стандартным отклонением <т > 0. При этом параметр а можно регулировать, уменьшая его в заданное число раз N за счёт увеличения длины прогона модели (и, соответственно, затрат компьютерного времени) в N2 раз. При использовании современных персональных компьютеров выбор между повышением точности расчётов и их замедлением завершается обычно компромиссом на уровне значений с, составляющих один - пять процентов от точного значения искомого показателя. В особо трудных случаях применяются специальные методы понижения дисперсии [4-13].
Существенные затраты компьютерного времени (обычно минуты или часы), необходимые для оценки показателей в одной точке факторного пространства (ФП), и вместе с тем заметные погрешности получаемых оценок приводят в ИМ к сложности расчёта градиентов. Так, если компоненту ду/Зх градиента определять методом малых приращений по формуле ду/дх ~ |>(х + Д) - jh(jc)] /Д = (у2 - yt ) /Д, то использование вместо ук оценки ук = ук + ек, к = 1,2, приводит к вычислению результата ду/дх « (у2 - у, ) /Д + (е2 - е, ) /Д, содержащего «полезныйсигнал» (уг-ух)! Д и смещение (е2 -£,)/Д - «случайный шум». При независимых е, и е2 стандартное отклонение шума составляет сг/Д и растёт с уменьшением Д. В зоне оптимума, где гради-
ент приближается к нуль-вектору, полезный сигнал становится неразличим на фоне шума. Следует учитывать также, что при вычислении методом малых приращений п компонент градиента требуется д ля каждой точки ФГТ выполнять п дополнительных прогонов модели, давая приращение Д поочерёдно каждой из п координат.
Сложность вычисления градиентов - общая для практики ИМ проблема. Расчёт градиентов связан с существенным ростом затрат компьютерного времени, но вместе с тем нужен именно для того, чтобы существенно их снижать за счёт более быстрого приближения к точке оптимума. На преодоление трудностей, связанных с вычислением градиентов, направляются усилия многих специалистов в области ИМ. Среди имеющихся здесь достижений отметим два метода моделирования, потенциально приемлемые для решения нашей задачи.
1. В изолированной СМО время ответа Е совпадает с временем и = V + Ь пребывания заявки в системе. Метод моделирования, предложенный в [8], позволяет в одном прогоне модели СМО при одном и том же заданном значении ц одновременно с основной оценкой Е(^) получить набор оценок £(//),..., Е(цт) для других значений интенсивности ,..., ц'". Метод использует статистическую неразличимость процессов, принадлежащих разным циклам регенерации СМО. Одновременно с суммированием случайных реализаций времени ответа (т. е. элементов основной выборки) рекурсивно формируются последовательности весовых коэффициентов и накапливаются суммы взвешенных элементов выборки. Весовые коэффициенты к-й последовательности «превращают» взвешиваемые элементы в выборку, среднее значение которой равно £(//), (к = 1 ,т)- Поскольку все реализуемые циклы регенерации конечны, вычисляемые оценки имеют контролируемую сходимость. В конце прогона, путём усреднений основной и нескольких взвешенных выборок вычисляются оценка Е(//) и все дополнительные оценки Е(рк).
Проведённые нами испытания метода показали, что он даёт достаточно точные результаты даже при широком разбросе дополнительных значений //',...,/и" относительно основного значения параметра ц. Точность оценок: £(//),...,£(//'") получается практически такой же, как и точность основной оценки Е(ц).
К сожалению, непосредственное обобщение метода на моделирование сетей затрудняется тем, что их циклы регенерации оказываются практически бесконечными. Возможность приближённой реализации метода на периодах неполной регенерации изучалась, например, в [6]. Ряд общих подходов, основанных на приближённом регенеративном анализе, рассматривается также в [5]. Однако необходимость трудоёмкого подбора параметров приближений и сложность проверки их адекватности пока, на наш взгляд, не позволяют рекомендовать регенеративный подход к моделированию сетей для широкого использования.
2. Более простой метод, рассматриваемый в работах [4, 9, 10], позволяет вычислять в одноканальной системе С1|С| 1 производную времени пребывания и по времени обслуживания Ь (следовательно, и по интенсивности /л), также используя только один прогон модели при фиксированном Ь. Выполненная нами проверка показала его хорошую точность. Важно, что она не зависит от каких-либо приращений аргумента, т. к. они не используются в принципе. Однако этот метод непригоден для моделирования многоканальных СМО.
Рис. 1. Пример сети с очередями
Ниже предлагается достаточно простой и универсальный двухуровневый метод , который можно использовать для градиентной оптимизации сетей, содержащих как однокаьальные, так и многоканальные СМО.
3. Адаптивная аппроксимация
поверхности отклика
Преодолеть рассмотренные выше трудности градиентного поиска оптимальных решений можно путём мобилизации нескольких уровней представления моделируемой сети (нескольких неравносильных моделей) для их согласованного применения в одной поисковой процедуре. Условно можно выделить два основных уровня - уровень модели имитационной (МИ), непосредственно используемой для вычисления отклика в разных точках ФП, и уровень модели аналитической (МА), абстрагирующейся от ряда деталей, учитываемых МИ, но быстро решающей вопросы, отнесённые к её компетенции.
Возможность расчёта градиентов удаётся обеспечить, применяя достаточно простые адаптивные МА, приспособленные для адекватной аппроксимации поверхности отклика в области текущих точек ФП, «просчитываемых» посредством МИ. Чтобы аппроксимирующая функция была адекватной, её свойства должны быть согласованы с общими закономерностями формирования отклика моделируемым объектом. Адаптивность аппроксимации означает возможность её легкой настройки, выполняемой с помощыр небольшого числа параметров, на приближённое описание нужного участка поверхности отклика. Существенный выигрыш в точности и скорости решения оптимизационной задачи можно получить в том случае, если аппроксимация позволяет определять оптимальную длину шага в направлении проекции антиградиента на поверхность ограничений. В задаче оптимального распределения ресурсов сети (4)-(6) всем перечисленным требованиям отвечает аппроксимация целевой функции Е{/л), основанная на следующих двух предположениях:
1) время ожидания в ¡-м узле при изменениях вектора /} = (//,,...,//„) определяется в основном интенсивностью обслуживания цгл слабо зависит от интенсивности обслуживания в других узлах;
2) зависимость ^ на достаточно больших интервалах значений /л близка к гиперболической зависимости
Я,
-(7)
Д -
с подобранными соответствующим образом константами Я, иЭ^
Заметим, что первое предположение выполняется точно для экспоненциальных СеМО в силу теоремы Джексона [3]. Его проверки, выполненные путём
Параметры узлов моделируемой сети
Номер узла 0 1 2 3 4 5 6 7 8 9
Тип ф. р. в. М й /< К М М В Е1 Я
Интенсивность 1 0,3 0,3 0,8 1,8 7,25 0,8 0,8 1.8 2.25
Число каналов - 1 2 1 1 1 1 1 3 1
ИМ сетей с не экспоненциальными ф. р. в., показывают, что оно, как правило, выполняется с приемлемой точностью и для них. Исключение составляют лишь «точечные» множества случаев, когда связанные в последовательную цепь узлы имеют детерминированное одинаковое время обслуживания и близкие к единице коэффициенты загрузки.
Второе предположение хорошо согласуется с известной приближённой формулой Кингмана [3] для времени ожидания в системах С1|С|К с большой нагрузкой. Поэтому при небольшой избыточности распределяемого ресурса М аппроксимация (7) хорошо «работает» во всех точках ОДР. В случае средней или высокой избыточности ресурса многие узлы могут иметь малые коэффициенты загрузки, но тогда аппроксимируемое время ожидания в таких узлах невелико, и его вклад в отклик Е становится мал по сравнению с вкладом времени обслуживания (1///,), которое всегда известно точно.
Исходя из вышесказанного, в качестве аппроксимации целевой функции (4) можно использовать функцию:
аЛ _ .
(8)
Ц - 5, ^ цг
результатам
выполнения МИ в двух
/4"') и = (А* >-••>/"*) >
Настройка аппроксимации (8) осуществляется по
МИ в двух точках отличающихся всеми координатами. Верхним индексом буквы везде указывается точка ФП. Получаемые с помощью МИ значения времени ожидания и ус* используются для определения коэффициентов и 5; настраиваемой аппроксимации (7) ¡-го узла; / = 1 Нетрудно установить, что два коэффициента и гиперболы (7), проведённой через две точки и»*-1) и (Д.и'*), определяются следующим образом: * к I. , V _ УС, А -уу? у
— И>,
(9)
Я,■ = и?" ' = !,"■ <10)
Подстановка всех найденных значений и в (8) даёт «настроенную» аппроксимацию £"''(Д) функции Е(Д) (т. е. аппроксимацию п-мерной поверхности отклика), полученную всего лишь по двум прогонам МИ.
Дифференцированием аппроксимации Е"''(р) приближённо определяется градиент целевой функции Е{/л), и при решении задачи (4)-(6) вычисляется его проекция на гиперплоскость (5). Как видно из уравнения (5), вектор удельных расходов с = (с,,с2, ...,с„) является нормалью к этой гиперплоскости, и, следовательно, нормированный вектор нормали п. требуемый для построения проекций градиента, определяется в виде й = с/|с|, где |с| — длина вектора с •
Кроме того, аппроксимация Е"р(/}) позволяет находить оптимальную длину шага в направлении проекции антиградиента, определяя на этом направлении точку р., в которой Е^Щ) принимает минимальное значение. Такая точка р быстро устанавливается одномерным сканированием значений Еар вдоль проекции антиградиента. Найденные координаты р передаются в МИ, которая для точки р вычисляет отклик Е и значения й = (и»,,..., ) времени ожидания в узлах. Далее по этим значениям и соответствующим значениям из предыдущей точки ФП выполняется новая
локальная подстройка МА (8), и градиентный поиск продолжается. Процесс завершается при достижении заданных условий останова (см. ниже п. 4). Подстройка аппроксимации и определение оптимального шага к очередной точке ФП каждый раз осуществляются на уровне МА, причём в тысячи раз быстрее, чем выполняется прогон МИ в одной точке ФП.
Прежде чем показать результаты испытаний двухуровневого метода оптимизации, приведём его пошаговое описание с указанием основных расчётных формул.
4. Двухуровневый алгоритм
оптимизации распределения ресурсов
Ограничения (6) задают для сети с очередями область стационарности, в любой точке р которой можно с помощью МИ с требуемой точностью определять как основной скалярный отклик Е(р), так и дополнительный векторный отклик й(р), используемый для построения адаптивной аппроксимации (8).
Вместе с (6) ограничение (5) задаёт ОДР — часть (п— 1)-мерной гиперплоскости, которая одновременно является (п — 1 )-мерным многогранником с п вершинами О, = (Д",.--> рс"\ ; = 1, п, имеющими координаты:
(И)
Центром ОДР назовём точку Д, в которой коэффициенты загрузки всех узлов одинаковы. Координаты Д. следующим образом определяются из объединяемых с (5) уравнений pi =Л, 1(К,/л,) = рс, / = 1
а,/К,
Н=М~Я—— _
■а)!К1 , | = 1,и, (12)
и задают «справедливое» распределение ресурсов, при котором все р: = рс и
= -±с ■
1 ,п-
(13)
Условие рс< 1 является необходимым и достаточным условием существования допустимого решения. При рс = 1 единственным допустимым решением является центр ОДР, в который стянута вся ОДР вместе со своими вершинами (11). Мз (13) после подстановки рс = 1 однозначно определяется минимальный ресурс М стационарной сети. С ростом М величина рг в (13) уменьшается и выражает (инверсно) избыточность ресурса М, а ОДР растёт. Обычно оптимизация имеет практический смысл лишь при рс < (0,8...0,9); при больших значенияхр^. время ответа становится слишком высоким и нестабильным, поэтому в системах, ориентированных на этот показатель, заранее закладывается достаточно большая избыточность ресурса.
Начальный этап оптимизации. Задаём счётчик числа неудачных итераций N.. = 0 и указываем его предельное значение Ы111ах (рекомендуется п 4- 5 < ^ п + 20). Выбираем в ОДР две точки Д и Д, удовлетворяющие условиям (5) и (6). В качестве одной из них рекомендуется взять центр ОДР (12), другую можно выбрать на отрезке между центром и ближайшей к нему вершиной ОДР из (11), например, на середине этого отрезка. С помощью МИ определяем в Д и Д значения й,1, и значения времени ответа Е\Е2. Полагаем к = 2.
Основной этап оптимизации. Известны ки Д"1 и р. с откликами в них (
1
гны две точ-)и (£,£*).
Шаг 1. Используя значения н*4"') и (/^,1?'*), по формулам (9) и (10) находим параметры аппроксимации и / = 1, л.
Шаг 2. Вычисляем градиент функции Е"р :
V£T(/2*) =
"А
аЛ.
(Mi)2
а„
{иi~s„)2 (/О2
и находим проекцию ) вектора VE"p(pk)
на гиперплоскость (5):
VEJr(pk) = (е...... О = VE"p(pk) - й • (й ■ VE"p(pk)).
Шаг 3. Параметр h длины шага, выполняемого вдоль проекции антиградиента, определяем путём решения (методом сканирования) следующей задачи одномерной оптимизации:
Еар(рк -/iV£;'(^))->min 0<h<H■
Здесь порог Н для допустимых значений парамет ра h вычисляется по формулам:
Я = min{Я,,}, где //,= min {//,,}, Нг = min {н„},
tf-Aor,./*,.
¿'S,
7 = 1.«-
01»В.ВГа Ко SQ О«*« 1WO« . GPSS-Win WpJ^.fB» □ ГЬ РММИОГ/ "
Ü,4l 0.S4M S.JL 1
V-t> 'i-orce ».."А;
in u2 ' и) ' m й . ii i uJ 1Й И ■ Д/мчшгд ] £{p)
.0,JM210,3W!(!,i4Ä J.eWl l.OSS* Д| 9,66644!I
ü.lfrTbJC.rSZG.i!« ),i\in :0,e-(S. 0.753« Л,7Л53: 1.3J3H 30 C.?i-»i$4a9S I0,;27«|
a.flioi o.säj: с,зам: ».баз. o.»vs: \.ш'х j.i»* 1,7702: зо
• besä*- ,?37тэ: .jsoe« .«25« j.wjsi .вггзг: .wiss: ¿mim 2.1ЧТ. i,сам .«к?- ,«в» usw ,о:еш ,-< ,os>:cj ,«eziu .iwia ,j;jsat ,ps*9st ,477В-
AJfiiJ- G,?a93 0.М6Я» 5.■*?">-« 0,-*92« ö.-N'.oJ С,,С,1312' 5 О.МТО 0.SW5 С Ml?! О,«531 0,517-:: C.iS3"i3
0,0S«! О.УЯТ: 0.3«W 0,4W* 0.-«L»: 0.iV2S; G.-iSbT 0.32«
Рис. 2. Испытания двухуровневого градиентного метода
и определяет шаг, достигающий границы ОДР или одного из полюсов функции Еар .
В случае если получается h = 0, принимаем h = Н/ 20 (для исключения деления на 0 на следующем шаге).
Шаг 4. Осуществляем переход в точку /}*+1:
¡r=fjk-hVE;r(fik).
Полагаем к = к + 1. С помощью МИ определяем отклики I?1 и Ек. Если Ек > Ек~1, то полагаем N, = Ns + 1 (наращиваем счётчик числа неудачных шагов).
Если достигнуто условие останова Ns = Nmax, то наилучшую из пройденных точек р\...,рк принимаем в качестве решения р"г'. Иначе возвращаемся на шаг 1,
Примечание. Можно после достижения условия Ns = Niiiix производить «доводку» решения. Для этого выполняется несколько дополнительных прогонов МИ в точках ОДР, отстоящих недалеко от наилучшей из достигнутых точек р"р' в случайно выбранных направлениях. При обнаружении среди них точек лучших, чем р"р', наилучшая из них принимается в качестве решения задачи.
5. Результаты испытаний
Возможности разработанного двухуровневого метода рассмотрим на примере оптимизации распределения ресурсов для сети, изображённой на рис. 1. Суммарный ресурс М = 30 будем распределять при векторе удельных расходов с = (с,,.. .,с„) = (КГ...,К„) = (1,2,1,1,1,1,1,3,1),^ е. в СМОудельный расход ресурса равен числу её каналов; при этом удельный расход ресурса на один канал везде получается одинаковым. Параметры узлов сети приведены в табл. 1; узел 0 в ней соответствует входному потоку сети, типы распределений обозначены следующим образом: М — экспоненциальное распределение, R — равномерное (на интервале от 0 до двух средних), Е2 - эрланговское второго порядка.
Двухуровневый алгоритм оптимизации реализован следующим образом. Операции на уровне МА осуществляются программой, которая автоматически запускает GPSS World [14, 15] с имитационной моделью сети, передаёт ей в виде текстового файла координаты очередных точек ФП, прини-
20 30 40 50 К Номер итерации
Рис. 3. Изменения С при использовании адаптивной аппроксимации поверхности отклика
50 60 70 80 90 100 110 120 130 14 Номер итерации
Рис. 4. Изменения £ при использовании базового метода малых приращений
мает результаты ИМ (также в виде текстового файла) и вычисляет координаты следующей точки ФП для их передачи в GPSS (либо завершает поиск). С помощью этой же программы поиск оптимума проводился с расчётом градиентов стандартным методом малых приращений, использованным как базовый для оценки эффективности двухуровневого алгоритма. Значения основных показателей, характеризующих процесс оптимизации, отображаются программой в таблицах (рис. 2), приспособленных для передачи в Ms Excel. Длина прогона имитационной модели во всех точках ФП определялась прохождением через сеть 1 млн заявок. Этим для всех откликов обеспечивались стандартные отклонения ошибок, лежащие в пределах 1% от точных значений. На каждый прогон модели затрачивалось около 5 минут компьютерного времени.
Испытания двухуровневого градиентного метода проводились многократно при различном выборе двух стартовых точек и условий останова. В табл.
Траектория процесса оптимизации
№ итерации И2 Mi И* fs Hi /"7 H И9 Длина шага Е(р)
1 0.386 0.290 0.966 2.639 11.395 0.792 1.056 3.418 1.931 0.659 9.666
2 0.368 0.276 0,919 2.512 10.845 0.754 1.005 3.736 1.838 0915 10.228
3 0.810 0.836 0.989 2.426 10.683 0.908 1.056 3.228 1.770 0.731 8.601
7 0.788 0.616 1.327 3.009 9.963 1.251 1.605 2.866 2.226 0.186 7.552
8 0.798 0.542 1.388 2.989 9.847 1.331 1.571 2.926 2.212 0.139 7.508
9 0.759 0.636 1.400 2.964 9.767 1.300 1.562 2.929 2.189 0.854 7.519
23 0.736 0.647 1.360 3.101 9.704 1.300 1.433 2.872 2.455 0.145 7.551
24 0.788 0.563 1.401 3.090 9.671 1.288 1.485 2.919 2.395 0.092 7.535
25 0.787 0.61« 1.407 3.117 9.683 1.292 1.509 2.875 2J48 0.376 7.505
26 0.878 0.531 1.452 3.093 10.015 1.331 1.522 2.787 2.287 0.392 7.610
31 0.765 0.575 1.458 3.129 9.705 1.312 1.558 2.891 2.250 0.299 7.538
32 0.835 0.620 1.389 3.031 9.489 1.244 1.554 3.008 2.192 0.144 7.517
33 0.818 0.597 1.405 3.025 9.490 1.272 1.682 2.965 2.219 0.420 7.493
34 0.796 0.558 1.384 2.999 9.899 1.256 1.655 2.896 2.207 0.249 7.536
2 приводится типичная траектория процесса оптимизации, начатого из центра ОДР, а на рис. 3 — соответствующие изменения целевой функции. Приближение к оптимуму происходит за 8-10 итераций, т. е. число шагов примерно совпадает с размерностью ФП. Вблизи точки оптимума длина шага неизбежно становится мала, это приводит к большим стохастическим ошибкам аппроксимации и, рано или поздно, — к отбрасыванию процесса на большое расстояние от оптимума. После этого за 8-10 итераций вновь происходит приближение к точке оптимума. Три точки, близкие к оптимальной, выделены в табл. 2 жирным шрифтом. Вблизи наилучшей из них, найденной на 33-м шаге, проводилась «доводка» решения (см. описание алгоритма), но лучших точек при этом не обнаружено. Отметим, что при оптимизации сети с тремя узлами возвращение к точке оптимума происходит за 2-3 итерации.
При использовании базового стандартного метода малых приращений значительное время тратится на подбор такого параметра шага 1а, который не приводил бы к быстрому расхождению процесса. Типичная траектория значений целевой функции для базового метода приведена на рис. 4. Значения целевой функции стабильно отделены от минимума интервалом около 2 единиц, который характеризует разрешающую способность (точность) базового метода. Заметим ещё, что, заметно уступая двухуровневому градиентному методу в точности, базовый метод требует выполнения в каждой точке ФП не одного, а десяти прогонов имитационной модели.
Таким образом, выполненные испытания демонстрируют существенные преимущества предлагаемого двухуровневого метода градиентной оптимизации. Кроме этого «формального» результата проведенные эксперименты показывают, что центр ОДР, т. е. точка «справедливого» распределения ресурса, не является оптимальной. Оптимальное распределение ресурса таково, что коэффициенты загрузки узлов получаются не одинаковыми (в решённой задаче они разбросаны в диапазоне от 0,2 до 0,6). Интересно (и естественно), что в оптимизированной сети и ресурс, и коэффициенты загрузки больше у тех узлов, которые чаще посещаются заявками.
6. Анализ чувствительности решения
к изменениям параметров задачи
С практической точки зрения всегда важно иметь представление о робастности найденного решения Е = Emili, в частности, о его чувствительности к изменениям числовых параметров задачи. Как показано в [ 1 ], при оптимизации сетей анализ чувствительности может приводить к переосмыслению решаемых задач и изменению их формальной постановки. Что касается чувствительности времени ответа к изменениям найденного распределения ресурсов, то она выявляется непосредственно в ходе оптимизации. Так, наблюдая характер градиентного спуска к точке минимума (с учётом длины шагов) в ходе описанного выше эксперимента, нетрудно было видеть, что «дно» поверхности отклика — достаточно «пологое», и, следовательно, чувствительность отклика к небольшим изменениям р в окрестности точки fi"1" невелика. Очевидно, это связано с тем, что в рассматриваемой сети заложена почти двукратная избыточность суммарного ресурса М: величина рс (13) здесь лишь немногим превосходит 0,5. В противном случае, когда рс. —> 1, чувствительность решения к изменениям р должна возрастать до бесконечности из-за стягивания ОДР в точку. Заметим, что в общем случае судить об изменениях интенсивнос-тей как о «небольших» следует по величине связанных с ними расходов с,Ад.
Более сложен анализ чувствительности решения к малым изменениям переходных вероятностей pjk (не равных нулю или единице), сводящийся к расчёту производных dE/dpJk в точке р = р"р'. Выполнение такого расчёта методом малых приращений на уровне МИ практически нереально. Учтём ещё, что МИ не позволяет изменять выбранную вероятность pjk, сохраняя неизменными переходные вероятности на альтернативных дугах, а одновременное изменение нескольких параметров модели разрушает общепринятую универсальную интерпретацию коэффициентов чувствительности (КЧ) как частных производных.
Возможность быстрого и точного вычисления КЧ дЕ! DpJk на уровне MA обнаруживается благодаря расширенному методу редукции (РМР) графа случайных задержек [1, 16, 17]. Наиболее ценной частью РМР для анализа КЧ является расчёт частных произ-
водных по графу задержек точными методами формального дифференцирования. РМР реализуется программой RED, обеспечивающей по сравнению с её прототипом COIN 1 [1, 17] более мощный диалоговый графический интерфейс, а также автоматическую трансляцию графов задержек в имитационные модели на языке GPSS. На рис. 5 показана часть интерфейса программы RED с изображением графа, соответствующего примеру моделирования (см. рис. 1).
Рассмотрим возможности применения РМР для расчёта величин ЗЕ / dpjk в двухуровневом моделировании.
Дифференцируя по любой переходной вероятности pjk последнее в (1) выражение для Е, находим, что
BE ///,)
— = L--
Ф,
I 0(ctr,vv, ) _ ' dp*
= 1-
(14)
1 да, Л да, A dw, --+ — ■ —-
dPjk 1=1 dPjk
Теперь заметим, что программа RED для графа задержек точно вычисляет производные времени ответа по переходным вероятностям, но эти производные определяются в предположении, что изменения вероятностей pjk не влекут за собой изменения задержек в узлах графа. Другими словами, программа RED вычисляет «виртуальные» КЧ dEv /dpjk которые определяются путём отбрасывания в формуле (14) третьей суммы:
dEv
Vf,
= 1-= const р,
да,
V- да,
dpJk ы дрк
Л
(16)
^Редукция и C:\Documents and Settings\AflMHHncTpaf.ôp\Pàbi)4
а..•,!«.! fc -î. V у Я 50% ¥•!■>, j .
* ■eO.tJSt
t1,t'ie\«>< mO.JUl,
0=0 -•'
" .....
i %
an.itil <4hn,iiii
a
et.ttiA • >« J»jo.II
, = дЕ
dPjk dpJk
Виртуальные КЧ могут применяться в СеМО для моделирования редких «особых» заявок, которым разрешено менять свои переходные вероятности, тогда как для всех остальных заявок они остаются неизменными.
Значение выражения (15) рассчитывается программой RED по заданным, приписанным вершинам графа значениям I,, которые обычно интерпретируются как средние задержки в вершинах, Например, для расчёта (15) на графе задаются задержки t, = 1 / //, (в вершинах каналов) и t, - w, (в вершинах очередей). Однако такая интерпретация параметров [, необязательна, и свёртки вида (15) с частными производными Эаг, / dpJk вычисляются программой RED при любых . Далее это будет использовано.
Итак, применяя РМР для расчёта КЧ в классической СеМО, необходимо ещё учесть, что изменение вероятности pjk любой дуги влечёт за собой изменение интенсивности той части потока, которая проходит по этой дуге, и, следовательно, влияет на время ожидания wi во многих очередях. Влияние pJk на w,, отражаемое последней суммой в (14), не учитывается виртуальными КЧ (15) на выходе программы RED.
Чтобы приспособить РМР для расчёта полных КЧ (14) попробуем сначала найти для узлов сети связь между производными dw, /дЯ, и dw, /dp,, имея в виду, что dw, [dp, можно определить из аппроксимации (7).
Связь между производными. В стационарной изолированной СМО типа G|G|K (входной поток которой не обязательно рекуррентный) справедлива формула Литтла: w= LI Я . Среднюю длину очереди L можно, в свою очередь, представить как функцию коэффициента загрузки р.
Рис. 5. Фрагмент интерфейса программы
цируя первое равенство в (16), можно производные dw/dX и dwjdp выразить через дЦр)/ЭЛ и dL(p)/dp. Заменяя в полученных выражениях ЗЦр)/дЯ на [dL{p)jdp] [dpldX\ = [дЦр)/дрН\/(Кр)), и dL{p)/dp - на[дЬ(р)/др]-\др/др] = [дЦр)/др]-[-Л/{Кмг)]. а затем, умножая первое из них на X, а второе — на ц, и складывая их, находим:
. dw dw L . dw dw ,.
X--+ p--= — = -w,T.e. A--+ p--+w = 0. (17)
dX dp Л dX dp
Полученное соотношение позволяет по известному значению одной из производных находить значение другой производной. Для узлов сети (в случае малого изменения какой-либо переходной вероятности) это соотношение выполняется лишь приближённо, поскольку изменение дЯ, интенсивности L, вызванное изменением др/к какой-либо переходной вероятности, в общем случае немного изменяет и статистическую структуру смешиваемых на входах узлов потоков. Вообще говоря, погрешности применения формулы (17) ддя анализа последствий приращения dpJk будут тем выше, чем больший разброс коэффициентов вариации имеют ф. р. в. A(t) и B((t). Если эти ф. р. в. экспоненциальные, то формула (17) для сети выполняется точно.
Вывод формулы для полных КЧ. Теперь, когда установлена связь (17), учтём её (как приближённую) вместе с равенством а, = Л, / Л , чтобы определить слагаемые неизвестной пока последней суммы в (14):
а,
dw, ' dp ¡к da,
dw, da, dai dp,
_ ^ dw, da, '"dX,"dp
a
■■ A
dpa
A
dw, da,
p, —---- + w,
dH, dpjk
dw, "fa
da.
- +w.
dpjk j
Подставляя (18) в (14), получаем
dE v- 1 да -A dw, da,
-œ У,---> д------
dPjt tf/', dpjk ti dpl dpjk '
(18)
(19)
и' = Ц/?)/Л, где /> = ——• Кр
Такое представление времени w возможно, если изменению параметров Хир отвечает масштабное преобразование соответствующих ф. р. в. Дифферен-
Это выражение является свёрткой вида (15) и его можно непосредственно использовать для расчёта полных КЧ с помощью программы RED, поскольку оценки необходимых для этого величин dw, / dp, известны при оптимизации в любой точке ФП (по результатам аппроксимации данных МИ). С учётом того, что для w, (р,) используется аппроксимация (7), подставим её в (19) и найдём окончательно:
дЕ ¿р I да, Л p,w, да
а-'а-+ 2j-Г "я-■ (20)
др1к Ъп dplk p,-S, dpJk
Схема применения программы RED для расчёта КЧ. Первая сумма в (20) выражает КЧ dE0ldp]k чистого времени ответа £„, определяемого только задержками в каналах, без учёта задержек в очере-
Коэффициенты чувствительности времени ответа к переходным вероятностям
Переходные вероятности Абсолютные КЧ времени ответа Относительные КЧ времени ответа
«Чистые» Виртуальные Полные «Чистые» Виртуальные Полные
Pol 3.90 5.59 8.1 0.104 0.149 0.22
Р02 4.78 6.57 38 0.191 0.263 1 52
Роз 4.80 7.44 107 0.320 0.496 7.15
/>24 0.80 1.23 1.9 0.075 0.115 0.17
Pis 1.23 1.94 32 0.049 0.078 1.27
Ра 6 1.07 1.48 2.3 0.043 0.059 0.09
■Р47 0.81 1.12 1.6 0.043 0.060 0.09
/>49 1.99 2.50 4.3 0.239 0.301 0.52
/>58 -3.66 -5.62 -8.5 -0.147 -0.225 -0.34
/>59 -24.1 -38.1 -625 -0.322 -0.509 -8.34
дях. К этой своей части полный КЧ (20) приближается при Л —> 0. КЧ чистого времени ответа вычисляется программой RED по тому же графу задержек (см. рис. 5), если вершины, соответствующие очередям, пометить значениями /, =0. И по этому же графу программа RED определяет полные КЧ (20), если вершины, соответствующие очередям, пометить значениями / = j.i} vv /(//( - St).
Таким образом, три обращения к программе RED, выполняемые при помеченных соответствующим образом вершинах графа задержек, позволяют определить два комплекта КЧ точно (виртуальные КЧ и КЧ чистого времени ответа) и один комплект — полные КЧ дЕ!др)к — приближённо. Три комплекта КЧ дают богатую информацию для оценки чувствительности оптимального решения к изменениям переходных вероятностей. Для удобства интерпретации КЧ выдаются в двух формах: в форме, определённой выше как частные производные (абсолютные КЧ), и в форме относительных КЧ [17]. В двухуровневом моделировании эти КЧ могут вычисляться в любой точке ФП и использоваться как компоненты градиентов ещё и при решении задач оптимального выбора переходных вероятностей (когда в качестве целевой функции задано время ответа или его составляющие: чистое либо виртуальное время ответа). Кроме того, анализ чувствительности времени ответа оптимизированной сети к её параметрам позволяет рационально обосновать требования к точности этих параметров, определяющей адекватность результатов оптимизации.
7. Пример расчёта КЧ
Значения КЧ в точке р = р">", вычисленные для рассмотренного выше примера оптимизационной задачи, приведены в табл. 3. Наибольшим по модулю среди полных относительных КЧ времени ответа является КЧ по вероятности pi9. Это отражает её очевидную (и обычно учитываемую уже при проектировании систем) роль в формировании больших значений частот сц и а„.
Довольно неожиданной оказывается высокая чувствительность времени ответа к вероятности рю (см. рис. 1). Однако, учитывая смысл полного относительного КЧ, можно догадаться, что повышение вероятности риз увеличивает интенсивность потока, ведущего в критические 5-й и 8-й узлы, и тем самым -длину очередей в них. Полный КЧ к вероятности рп меньше, но (по той же причине) также довольно высок в сравнении с другими КЧ.
Относительные КЧ позволяют сделать прогноз, что, например, уменьшение вероятности ptl2 на1% (т, е. на 0.005) приведёт к сокращению времени ответа оптимизированной сети (7.5 с) примерно на 7.15% (на 0.5 с). Для более точного прогноза необходимо учитывать, что вероятность рт нельзя из-
менить, не меняя альтернативных вероятностей рт и р02. Пусть, например, уменьшение р03 на 0.005 сопровождается одновременным увеличением р01 на 0.002 и р02 — на 0.003. Тогда, используя абсолютные полные КЧ (см. табл. 3) и формулу полного дифференциала, находим соответствующее изменение времени ответа сети: АЕ ~ (дЕ / дрт )Др01 + (дЕ / дрт )Дрт + (дЕ / дрп )Дрп = = 8.1x0.002 + 38x0.003 - 107x0.005« -0.4 (с).
Заключение
Задача оптимального распределения ресурсов, обеспечивающего минимум среднего времени ответа в сетях с очередями, нетривиальна. В общем случае для её решения приходится применять имитационное моделирование, но оно связано с высокой сложностью вычисления градиентов из-за стохастического характера оценок, получаемых при моделировании. Это противоречие удаётся решить путём организации двухуровневого аналитико-ими-тационного моделирования, позволяющего эффективно реализовать градиентную оптимизацию за счёт применения довольно грубых и простых аналитических аппроксимаций поверхности отклика, если они адаптивны, и если их свойства согласуются с общими закономерностями поведения моделируемого объекта.
Предлагаемые в статье двухуровневые аналити-ко-имитационные методы и алгоритмы обладают достаточно высокой точностью и быстродействием. При оптимизации число итераций, требующих одного обращения к имитационной модели, приблизительно равно размерности ФП, т. е. числу узлов сети. Кроме того, двухуровневый метод позволяет проверять робастность найденных оптимальных решений и проводить точный и быстрый расчёт коэффициентов чувствительности, которые могут использоваться как для оптимизации сети, так и для рационального обоснования требований к точности исходных данных, используемых при оптимизации.
Возможности разработанных двухуровневых методов позволяют применять их на практике для оптимизации сетей массового обслуживания, содержащих десятки и сотни узлов, например, для оптимизации компьютерных сетей, структур обслуживающих предприятий или транспортных сетей городов.
Библиографический список
1. Задорожный В. Н., Пуртов А. М. Анализ чувствительности в имитационном моделировании сетей массового обслуживания// Омский научный вестник, 2005. №4 (33) - С. 165-171.
2. Жожикашвили В.А., Вишневский В,М, Сети массового обслуживания. Теория и применение к сетям ЭВМ. - М.: Радио и связь, 1988. - 192 с.
3. Клейнрок Л. Вычислительные системы с очередями: Пер. с англ. /Под ред. Б. С. Цыбакова. - М.: Мир, 1979. - 600 с.
4. Рыжиков Ю. И. Имитационное моделирование. Теория и технологии. - СПб.: КОРОНАпринт;М.:Альтекс-А. 2004. - 384с.
5. Задорожный В. Н. Статистическое моделирование: Учеб. пособие. - Омск: Изд-во ОмГТУ, 1996. - 92с.
6. Вишневский В.М., Пороцкий С.М. Моделирование ведомственных систем электронной почты//АиТ. 1996.№ 12.С. 48-57.
7. Кутузов О. И., Задорожный В. Н. Аналитико-статисти-ческий метод для расчета высоконадежных систем связи // Техника средств связи. Техника проводной связи. - 1990.-Вып. 1:С. 121-130.
8. Rubinstein R. У. Sensitivity analysis ol computer simulation models via the efficient score // Oper. Res. 1989, V. 37. P. 72-81
9. Johnson M. E., Jackson J. Infinitesimal Perturbation Analysis: a Tool for Simulation. //J. of the Operational Res. Soc. - 1989. -v. 40. no. 3. - P. 134-160.
10. Suri R, Zazanis M. Perturbation Analysis Gives Strongly Consistent Sensitivity Estimates for the M|G|l Queue. // Mgmt Science. - 1988. - v. 34. - P. 39-64.
11. Коваленко И. H., Кузнецов Н. Ю. Методы расчета высоконадежных систем. - М.: Радио и связь, 1988,- 176 с.
12. Иглхарт Д. Л., Шедлер Д. С. Регенеративное моделирование сетей массового обслуживания: Пер. с англ. /Под ред. В.В. Калашникова. - М.: Радио и связь, 1984,- 136 с.
13. Кле йнен Дж. Статистические методы в имитационном моделировании: Пер. с англ /Под ред. Ю. П. Адлера и В. Н. Варыгина. - М.:Статистика, 1978 - Вып. 1 -221с., Вып. 2 - 335с.
14. Учебное пособие по GPSS World. /Переводе английского. - Казань: Изд-во «Мастер Дайн», 2002. - 272 с.
15. Руководство пользователя по GPSS World. /Перевод с английского. - Казань: Изд-во «Мастер Лайн», 2002. - 384 с.
16. Задорожный В Н., Мызникова Т. А. Рекурсивный анализ чувствительности для метода Байцера. //Деп. в ВИНИТИ, N»5490 - В88. - 1988. - 29 с
17. Пуртов А. М. Анализ производительности сстей ЭВМ на графах и имитационных моделях.: Автореф. дисс на соиск. учен, степени канд. техн. наук (05.13.16)./ Науч рук. В. А. Шап-цев - Омск: ИИТПМ СО РАН, 1995. - 17с.
ЗАДОРОЖНЫЙ Владимир Николаевич, кандидат техн. наук, доцент.
ЕРШОВ Евгений Сергеевич, аспирант.
КАНЕВА Ольга Николаевна, кандидат физ.-мат. наук,
ст. преподаватель.
Дата поступления статьи в редакцию: 01.09.2006 г. © Задорожный В.Н., Ершов Е.С., Канева О.Н.
.В. нопин,
В.Г. ШАХОВ
Омский государственный технический университет. Омский государственный университет путей сообщения
уда Э1У.6В
ИСПОЛЬЗОВАНИЕ
КРИПТОГРАФИЧЕСКИХ ИНТЕРФЕЙСОВ ОПЕРАЦИОННОЙ СИСТЕМЫ WINDOWS ПРИ РАЗРАБОТКЕ СИСТЕМ IP-ТЕЛЕФОНИИ, ЗАЩИЩЕННЫХ ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА
В статье рассматриваются возможности использования криптографических интерфейсов встроенных в операционную систему (ОС) Windows при разработке систем защиты информации от несанкционированного доступа (НСД).
С развитием современных информационных и телекоммуникационных технологий все большее распространение получают компьютерные сети. Увеличение производительности стандартных персональных компьютеров позволяет эффективно обрабатывать потоки аудио информации реальном масштабе времени, а пропускная способность сетей становится достаточной для передачи больших объемов данных с высокой скоростью. Стремительный рост масштабов сетей, как локальных, так и глобальных, по пропускной способности и по числу пользователей приводит к
большому росту интереса к подобного рода услугам. По мнению аналитиков западной консалтинговой компании IDC [7], государства Европы вступают в эру IP-телефонии, Анализ состояния этого сегмента телекоммуникационного рынка свидетельствуют о более чем пятикратном увеличении измеренного в минутах VoIP-трафика в 2005 году по сравнению с предыдущим. Ожидается, что в 2006 году трафик возрастет еще в три раза. Возможность потенциальной экономии делает IP-телефонию более привлекательной как для крупных компаний, так и для частных домохозяйств. По прогнозам