ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ МЕТОДА К-КРАТЧАЙШИХ ПУТЕЙ ДЛЯ ОПТИМИЗАЦИИ ТОПОЛОГИИ
ИЕРАРХИЧЕСКИХ СЕТЕЙ
Г. Ы. Токтошов, А. Н. Юргенсон, Д. А. Мигов
Институт вычислительной математики и математической геофизики СО РАН
УДК 519.179.2
Б01: 10.24411/9999-018А-2020-10007
Рассматриваются задачи оптимизации топологии иерархических сетей по критерию минимума суммарных строительных затрат, а также надежности их функционирования. Разработан эвристический алгоритм, основанный на методе к-кратчайших путей и модели гиперсети, который учитывает, во-первых, многокритериальность поставленной задачи, а во-вторых дает приемлемое приближение к глобальному оптимуму. Приведены численные эксперименты, доказывающую эффективность предложенного алгоритма по сравнению с классическими методами оптимизации.
Ключевые слова: топология, иерархическая сеть, первичная сеть, вторичная сет, граф, гиперсеть.
Введение
Иерархическая структура проектируемой сети означает построение единой функциональной системы из элементов различного уровня. При этом некоторые элементы рассматриваемой системы, которые могут содержать в себе часть или все элементы функциональной системы, составляют элементы первого уровня иерархии. Элементами первого уровня в случае сети инженерных коммуникаций могут быть траншеи, коллекторы, опоры, возможные трассы и т.п. Элементы второго уровня (газо-, водо-, или нефтепроводы, сети электрических или кабельных линий ит. п.) будут вложены по соответствующим заранее выбранным структурам первого уровня иерархии. В свою очередь второй уровень иерархии может содержать в себе элементы третьего уровня (потоки различного характера - информация, энергия, продукт).
Отметим, что известные классические математические модели для структуры сетей [1-3] не учитывают вложенность верхнего уровня иерархии по отношению к нижнему, и взаимозависимость показателей элементов этих подсистем. В настоящей работе в качестве модели таких сетей предлагается использовать двухуровневой гиперсети [4]. Гиперсеть, в отличие от графовых моделей, учитывает вложенность одной структуры в другую и взаимозависимость их показателей. Рассматривается задача оптимизации двухуровневой иерархической сети по критерию минимума суммарных строительных затрат, при ограничениях на надежность ее функционирования. Предлагается новый эвристический алгоритм, основанный на известном методе к-кратчайших путей, которые представляют собой упорядоченный список доступных альтернативных маршрутов между двумя выбранными узлами. Описание метода к-кратчайших путей приводится в [1], также как и описание алгоритма Йена, позволяющего эти пути находить.
1. Математическая модель
В иерархических структурах между элементами одного уровня по горизонтали и между различными уровнями по вертикали существуют определенные связи, которые не поддаются описанию известными графовыми моделями. В этой работе в качестве альтернативы предлагается использовать модель гиперсети.
Работа выполнена при поддержке РФФИ (проект № 18-07-00460).
44 "Проблемы оптимизации сложных систем - 2020"
Определение: Гиперсеть НИ = (X, V, R; W) - это иерархический математический объект, элементы которого располагаются на нижнем и верхнем уровнях. Нижний уровень: X = (х1, х2,..., хп) - множество вершин; РИ = (X,V) - граф для структуры всевозможных
маршрутов, так называемый граф первичной сети, где V = (у15v2,...,vg)- ветви графа РИ.
Верхний уровень: = (У с X, R) - граф для структуры проектируемой сети, так называемый
граф вторичной сети, где Я=(г1,г2,...гт)- ребра графа БИ , реализуемые по соответствующим
маршрутам в графе РИ ; F : Я ^ 2V - отображение, определяющее взаимно однозначное соответствие между ребрами г е Я графа вторичной сети БИ и маршрутами из ветвей V е V в графе первичной сети РИ .
Предполагаются, что графы РИ и БИ неориентированные.
Для ветвей V е V и ребер г е Я введем следующие обозначения: а(и) - стоимость ветви V е V графа первичной сети РИ; Ь(г) - стоимость ребра г е Я графа вторичной сети БИ .
Для описания структур различных сетевых объектов и их иерархичности существуют другие типы гиперсетей [5, 6].
2. Постановка задачи
Данная работа является логическим продолжением работ [7,8]. Приведем одну из разновидностей задачи, связанную со структурной оптимизацией сетей, с учетом их надежности.
Задача. Пусть известны предполагаемые структуры графов РИ = (X, V) и БИ = (У с X, Я), р(у) - вероятность существования ветви V еV первичной сети, соответственно для ребра г е Я
получаем р(г) = П
^еЕ (г)
Требуется найти отображение БИ в РИ при котором целевая функция принимает минимальное значение:
( Л
Q(НИ) = X Л(V) + ЕЬ(г) ^ т1П (3)
у vеF (г),УгеЯ геЯ у
при ограничениях Р(НИ) = шт р(г) > Р0, где 0 < Р0 < 1 - заданный порог надежности.
г
Данная задача является КР-трудной [8].Отметим, что вопрос надежности гиперсетей был впервые рассмотрен в [9-10]. Далее приведем краткое описание использование метода к-кратчайших путей для решения поставленной задачи. Метод основан на эвристическом подходе и модели гиперсетей. В качестве эффективности использования данного метода приведены результаты численных экспериментов.
3. Методы решения задачи
Прежде всего, нужно определить, является ли задача разрешимой на данном графе. Для этого воспользуемся Алгоритмом Флойда, в качестве весов ветвям припишем вероятности. Алгоритм MaxProb:
Шаг 1. Каждой ветви V еV первичной сети, припишем вес (1-р(У)).
Шаг 2. Найдем все кратчайшие пути между заданными парами вершин (Уi, У]),г,7 = 1,. .,п,г ф 7 (существует ребро г между (yi, у7)) в графе первичной сети РИ = (X, V) с помощью алгоритма Флойда.
По найденным путям вычислим вероятность для заданных ребер r е R вторичной сети
p(r) = П p(v)
VveF (r )
Проверим, удовлетворяет ли полученное значение заданному порогу. Если да, то задача разрешима.
Данный алгоритм учитывает только вероятности, а не стоимости ветвей. Но в дальнейшем, когда приближенные алгоритмы не смогут найти решение (реализацию ребра во вторичной сети), можно использовать решение Алгоритма MaxProb, как гарантированно удовлетворяющее ограничению по вероятности.
Например, можно адаптировать вариант жадного алгоритма [11], весами ветвей здесь являются стоимости.
Алгоритм Floyd Greedy Prob:
Шаг 1. Найти все кратчайшие пути между заданными парами вершин (y,yj),i, j = 1,...,n,i Ф j (существует ребро r между (yt,yj)) в графе первичной сети
PN = (X, V) с помощью алгоритма Флойда.
Шаг 2. Выбрать среди них путь с минимальной стоимостью, удовлетворяющий ограничению на вероятность. Осуществить вложение выбранного ребраr по кратчайшему пути (yi, yj)
в графе PN .
Для всех v е F(r) в графе первичной сети PN a(v) := 0, b(v) := 0 (стоимость ветви равна нулю для прокладки остальных ребер).
Повторить шаги 1-2 для всех ребер r е R вторичной сети.
Шаг 3. Ребрам, для которых путь был не найден (не удовлетворял ограничениям на вероятность), возьмем в качестве путей найденные алгоритмом MaxProb пути.
Аналогично, в алгоритме муравьиной колонии (AntColony), описанном в [12], если "муравьям" не удалось найти путь для некоторого ребра, то в качестве пути можно использовать путь, найденный алгоритмом MaxProb. Но, как было отмечено выше, алгоритм MaxProb не учитывает стоимости ветвей.
Далее опишем модификацию известного алгоритма k-кратчайших путей, которая будет гарантировать путям ограничение на вероятность, но при этом находить пути меньшей стоимости.
Алгоритм k-кратчайших путей (k-path)
Шаг 1. Алгоритмом MaxProb найти пути между заданными парами вершин.
Шаг 2. Упорядочить r е R вторичной сети SN = (Y, й)по возрастанию их веса (получим список {ri}).
Шаг 3. Алгоритмом Йена [ 1 ] между конечными узлами выбранного ребра ri е R найти все k -кратчайшие пути, представляющие упорядоченный список доступных альтернативных маршрутов в графе PN . Опишем подробно модификацию алгоритма Йена:
Шаг 3.1.Сортируем по убыванию стоимости ветвей ребра ri е R .
Шаг 3.2.Удалить ветвь (по списку) и в новом графе первичной сети находим кратчайший по вероятности пути для ребра ri алгоритмом Дийкстры.
Шаг 3.3. Если новый путь удовлетворяет ограничению по вероятности и имеет меньшую стоимость, чем предыдущий вариант, то запоминаем его. Возвращаем ветвь в первичную сеть. На шаг 3.2.
46 "Проблемы оптимизации сложных систем - 2020"
Данный алгоритм можно использовать как часть в других алгоритмах. Далее в сравнении работы алгоритмов будут упоминаться следующие алгоритмы:
Greedy+ k-path - это алгоритм FloydGreedyProb, в котором на Шаге 3 используются пути, найденные алгоритмом k-path.
AntColony+ k-path - это алгоритм AntColony, в котором для ненайденных путей, используются пути, найденные алгоритмом k-path.
3. Численные расчеты
На рис. 1 представлено сравнение работы алгоритмов для описанных выше алгоритмов. В качестве первичной сети взята решетка 10х10 вершин. Стоимость ветвей первичной сети -случайные числа от 5 до 10 условных единиц. Стоимость ребер вторичной сети - случайные числа от 1 до 5.
Ограничения на вероятность: P0= 0.7 для |R|=5, 10, P0= 0.6 для |R|=30, 60, P0= 0.5 для \R\ =80.
На рис. 1 по оси ординат показана стоимость полученной гиперсети, по оси ординат - число ребер |R|, которые нужно вложить в первичную сеть.
Из графика видно, что комбинация алгоритмов AntColony + k-path находит решение меньшей стоимости, что просто алгоритм AntColony.
Для небольших значений |R|, лучшее решение находит семейство алгоритмов AntColony, а для больших значений лучше работают жадные алгоритмы (Greedy).
Интересно отметить, что алгоритм k-path находит более дешевое решение, чем MaxProb только при небольших значениях |R|. Хотя каждый отдельный путь алгоритм k-path найдет не дороже чем MaxProb, но не учитывается, что в конце стоимость ветвей первичной сети будет учитываться только один раз, независимо от того, сколько ребер через нее прошло. В алгоритме MaxProb чем надежнее ветвь, тем возможно большее число путей пройдут через нее, а в алгоритме k-path итоговое решение может быть более дорогим. Но когда алгоритм k-path используется как часть другого алгоритма, находится более дешевое решение
Заключение
В работе исследована задача оптимизации иерархических сетей и методы ее решения. В качестве модели для описания иерархичности структуры сетей была использована двухуровневая гиперсеть, которая позволяет учитывать вложенность верхнего уровня к нижнему и взаимозависимость показателей элементов этих подсистем. Представлена формулировка задачи оптимизации иерархических сетей по критерию минимума суммарных затрат с учетом их
надежности. В силу того, что данная задача является NP-трудной, был предложен двухэтап-ный эвристический алгоритм, основанный на методе k-кратчайших путей и модели гиперсети. Как показывают численные эксперименты, предложенный метод, в отличие от существующих методов оптимизации, во-первых, учитывает многокритериальность задачи, а во-вторых дает хорошее приближение к компромиссному решению.
Список литературы
1. Кристофидес Н. Теория графов. Алгоритмический подход. М.: Мир, 1978. 432 с.
2. Майника Э. Алгоритмы оптимизации на сетях и графах. М.: Мир, 1981. 324 с.
3. Фрэнк Г., Фриш И. Сети, связи и потоки. М.: Связь, 1978. 448 с.
4. Попков В. К. Математические модели связности / Отв. ред. А. С. Алексеев, 2-е изд. Новосибирск: ИВМиМГ СО РАН, 2006. 490 с.
5. Попков В. К. Трудно решаемые задачи теории гиперсетей // Дискретная оптимизация и исследование операций. Российская конференция, Новосибирск, 2007 г.: Материалы конф. 2007. C. 69-73.
6. Попков В. К. О моделировании городских транспортных систем гиперсетями // Автом. и телемех. 2011. № 6. С. 179-189.
7. Токтошов Г.Ы., Мигов Д.А. Об оптимизации сетей инженерных коммуникаций различного назначения // Вестник Бурятского государственного университета. Математика, информатика. 2019. № 1. С. 78-90.
8. Токтошов Г.Ы., Юргенсон А.Н., Мигов Д.А. О сложности задач оптимизации сетей инженерных коммуникаций // T-Comm: Телекоммуникации и транспорт. 2020. Т. 14. № 9. С. 17-23.
9. Rodionov A.S., Rodionova O.K. Random hypernets in reliability analysis of multilayer networks // Lecture Notes in Electrical Engineering. 2015. Vol. 343. P. 307-315.
10. Rodionov A.S., Rodionova O.K. Using random hypernets for reliability analysis of multilevel networks // Proc. of 1st Int. conf. on mathematical methods and computational techniques in science and engineering (MMCTSE 2014), Athens (Greece). Ser.: Mathematical Methods in Science and Engineering. 2014. P.119-121.
11. Попков В.К., Токтошов Г.Ы., Юргенсон А.Н. Об одном подходе к оптимизации инфраструктуры инженерных сетей // ВестникСибГУТИ. 2012. Т. 3. С.11-28.
12. Guljigit Toktoshov, AnastasiyaYurgenson, Denis Migov. Design of utility network subject to reliability constraint // Proc. of Intern. multi-conference on engineering, computer and information sciences (SIBIRCON), Novosibirsk, Sept. 18-22 2017. P. 172-175. DOI: 10.1109/SIBIRC0N.2017.8109864.
Токтошов Гулжигит Ысакович - канд. техн. наук, доцент, науч. сотр.
Института вычислительной математики и математической геофизики СО РАН;
630090, Новосибирск; Email: tgiJok@rambler.ru;
Юргенсон Анастасия Николаевна - канд. физ.-мат. наук, науч. сотр.
Института вычислительной математики и математической геофизики СО РАН;
630090, Новосибирск; Email: nastya@rav.sscc.ru;
Мигов Денис Александрович - канд. физ.-мат. наук, ст. науч. сотр.
Института вычислительной математики и математической геофизики СО РАН;
630090, Новосибирск; Email: mdinka@rav.sscc.ru