Эвристики построения надежной телекоммуникационной сети

6. Кузнецов А. А., Кузнецова А. С. О взаимосвязи функций роста в симметрических группах с задачами комбинаторной оптимизации // Вестник Сибирского государственного

аэрокосмического университета. 2012. №6. C. 57-62.

7. Кузнецов А. А., Кузнецова А. С. Быстрое умножение элементов в конечных двупорождён-

ных группах периода пять // Прикладная дискретная математика. 2013. № 1. C. 110-116.

УДК 519.85

ЭВРИСТИКИ ПОСТРОЕНИЯ НАДЕЖНОЙ ТЕЛЕКОММУНИКАЦИОННОЙ СЕТИ1

Р. Э. Шангин

Рассматривается известная NP-трудная задача нахождения минимального остов-ного k-дерева в простом взвешенном графе. Данную задачу необходимо решать при проектировании надежной телекоммуникационной сети наименьшей стоимости. Предлагается серия эвристических алгоритмов. Определены оценки трудоёмкости алгоритмов, доказана их корректность. Проведён вычислительный эксперимент по сравнению эффективности предложенных алгоритмов, как между собой, так и с известными приближёнными и точными алгоритмами.

Ключевые слова: остовное k-дерево, надёжная сеть, IFI-сеть, NP-трудность, эвристики.

Эффективное решение проблемы надежности информационных сетей, в первую очередь, заключается в проектировании сети, устойчивой как к сбоям отдельных каналов, так и к полным отказам некоторых звеньев системы. В начале 1980-х годов А. Фарлеем введена концепция IFI-сетей (Isolated Failure Immune networks) [1]. Такие IFI-сети являются устойчивыми к сбоям трех типов:

1) удаление рёбер, не имеющих общую вершину;

2) удаление несмежных вершин;

3) удаление рёбер и вершин, если рёбра не инцидентны ни одной удалённой вершине или не инцидентны вершине, смежной с удалённой.

В работе [1] А. Фарлей доказал, что 2-дерево [2] есть минимальная (по включению рёбер) IFI-сеть. Отсюда задача проектирования IFI-сети может быть представлена как задача построения остовного k-дерева минимального веса, известная в зарубежной литературе как Minimum Spanning k-tree Problem (MSkT) и являющаяся обобщением классической задачи нахождения минимального остовного дерева (MST) [3].

Определение 1. Связный неориентированный граф T называется k-деревом, если его построение возможно осуществить рекурсивно по правилам: полный граф из k + 1 вершин есть k-дерево; k-дерево с i + 1 вершинами получается из k-дерева с i вершинами добавлением в него новой вершины j и k рёбер таким образом, чтобы новая вершина j стала смежной со всеми вершинами некоторой клики размера k.

Формулировка задачи MSkT следующая. Пусть G = (V, E) —полный взвешенный граф с множествами вершин V (телекоммуникационные терминалы) и рёбер E (возможные связи между терминалами), причём для каждого ребра [i, j] Е E задан его вес w(i,j) ^ 0, равный стоимости прокладки кабеля или трансляции сигналов между терминалами i и j. Обозначим T(G) множество всех остовных k-деревьев в гра-

1 Исследование выполнено при поддержке Министерства образования и науки Российской Федерации, соглашение № 14.В37.21.0395.

фе G. Пусть w(T) — суммарный вес рёбер остовного k-дерева T G T(G). Требуется найти остовное k-дерево T* минимального веса в полном взвешенном графе G, то есть T* = arg min {w(T)}.

T GT

Известно, что задача MSkT NP-трудна при к ^ 2. В [4] доказано, что мощность множества T(G) допустимых решений задачи MSkT равна |V|!(| V| + к — 1)!/к!, исходя из чего трудоёмкость полного перебора составляет O(|V|2|V|/kk) операций. Известен точный алгоритм, основанный на динамическом программировании, с трудоёмкостью O(|V|fc+13|y|) операций [4]. В работах [4-6] предложены эффективные эвристики и алгоритмы с гарантированной оценкой точности для задачи MS2T.

В работе предложен жадный алгоритм GreedyA, находящий решение задачи MSkT, основанный на рекурсивном определении k-дерева и являющийся обобщением известного алгоритма Прима для решения задачи MST. Причём, так как GreedyA является обобщением алгоритма Прима, то на каждом шаге эвристика строит k-дерево. Доказано, что трудоёмкость алгоритма GreedyA равна O((|V| — k)3  k) операций.

Предложен алгоритм DPA, основанный на динамическом программировании. Алгоритм DPA частично использует идею жадного алгоритма GreedyA, но значительно превосходит GreedyA с точки зрения качества найденного решения, поскольку DPA на каждом шаге работает с |V| различными вариантами k-деревьев, построенных на предыдущем шаге, а алгоритм GreedyA — только с одним. Более того, поскольку жадная эвристика GreedyA является частным случаем алгоритма DPA, то ошибка решения, найденного алгоритмом DPA, не больше ошибки решения, построенного GreedyA. Доказано, что трудоёмкость DPA равна O(|V|4  k).

Предложены также алгоритмы, основанные на итеративном улучшении начального решения, полученного с помощью алгоритмов GreedyA и DPA.

Все алгоритмы реализованы в среде MATLAB. Проведён вычислительный эксперимент по сравнению эффективности предложенных эвристических алгоритмов как между собой, так и с известными эвристическими и точными алгоритмами. Из результатов эксперимента следует, что для решения задачи MSkT малой и средней размерности целесообразней использовать эвристики, основанные на итеративном улучшении начального решения, а для большой размерности — алгоритм DPA, поскольку он находит решение с достаточной высокой точностью за приемлемое время.

ЛИТЕРАТУРА

1. Farley A. Networks immune to isolated failures // Networks. 1981. No. 11. P. 255-268.

2. Rose D. On simple characterizations of k-trees // Discr. Math. 1974. No. 7. P. 317-322.

3. Prim R. Shortest connection networks and some generalizations // Bell Systems Techn. J. 1957. No. 36. P. 1389-1397.

4. Bern M. Networks Design Problems: Steiner Trees and Spanning k-Trees. Ph. D. Thesis. University of Berkeley, 1987. 289 p.

5. Candia A. and Bravo H. A simulated annealing approach for minimum cost isolated failure immune networks // Essays and Surveys in Metaheuristics. 2002. V. 15. P. 169-183.

6. Beltran H. and Skorin-Kapov D. On minimum cost isolated failure immune network // Telecommunication Systems. 1994. No. 3. P. 183-200.