Некоторые теоретические вопросы, практических алгоритмов дефрагментации
сети связи
Ю.Ю. Терентьева
Аннотация—В статье рассматриваются вопросы, касающиеся восстановления связности сети связи в случае ее фрагментации с определенным критерием оптимальности. В качестве критерия оптимальности затрат на восстановление берется суммарная длина достраиваемых ребер, вес которых задается метрикой в пространстве и определяет тем самым длину ребра. Подобные вопросы имеют как чисто инженерные приложения, так и классические приложения, затрагивающие классическую сторону теории графов. А именно, проблема дефрагментации сети связи, которая возникла в результате как внутренних, так и внешних возможных дестабилизирующих факторов, может быть решена путем построения остовного дерева графа рассматриваемой сети связи.
Программирование автором практических алгоритмов восстановления связности сети связи, включающее также и классические алгоритмы (например, алгоритм Краскала построения остовного дерева), привело к возникновению вопроса о единственности решения восстановления связности сети в случае метрического варианта задачи и при условии невозможности образования новых вершин (узлов связи). Экспериментально были получены подтверждения инвариантности стартовой вершины в работе алгоритма. Была выдвинута гипотеза о достаточных условиях единственности решения задачи восстановления связности сети связи, а также гипотеза о достаточных условиях инвариантности стартовой вершины. Подобная проблема сводится к доказательству достаточности условий единственности построения минимального остовного дерева в случае графа с метрической весовой функцией. Для доказательства были введены понятия семейства графа и разбиение графа на семейства. Данное доказательство и составляет содержательную часть настоящей статьи.
Рассмотренное свойство достаточности, при котором обеспечивается единственность решения задачи дефрагментации сети связи, может быть полезно при проектировании реальных сетей.
Ключевые слова—Сеть связи, моделирование сети связи, жадный алгоритм, остовное дерево.
I. Введение
При проектировании и эксплуатации сетей связи в части решения задачи восстановления связности часто возникает вопрос о единственности оптимального
Ю.Ю. Терентьева, место работы: Центр информационных технологий и систем органов исполнительной власти, Москва, Россия; e-mail: [email protected]
решения, которое получается при минимизации целевой функции суммы весов ребер топологического графа. При этом, как правило, под весом ребра принимают расстояние между вершинами графа, являющегося математической моделью топологии сети связи.
Автором уже рассматривались ситуации построения оптимальной топологии сети связи [1]-[3] с разработкой соответствующего программного обеспечения. При этом практическую значимость имеет вопрос единственности оптимального решения. В частности, в [1] был предложен алгоритм (назовем его «Алгоритм А») построения связного графа на основании исходного графа с минимальной суммой весов достраиваемых ребер. В этом алгоритме мы начинаем рассматривать некую стартовую вершину графа, которая инициирует остовное дерево. И на каждом шаге к текущему формируемому остовному дереву присоединяем ближайшую вершину (с образованием
соответствующего ребра), которая принадлежит другой компоненте связности.
Естественным образом возникал вопрос, как выбор начальной вершины влияет на результат работы алгоритма. При каких условиях выбор начальной вершины не влияет на получение оптимального решения? Если такие условия существуют, то насколько они реальны для реальных сетей связи?
Данные вопросы детально рассмотрены в настоящей статье, выявлены условия достаточности единственности оптимального остовного дерева (вообще говоря, история проблемы остовного дерева детально освещается в [4]-[7]). Приводится развернутое доказательство достаточности инвариантности стартовой вершины «Алгоритма А», основанное на вновь введенных понятиях семейств графа и разбиения графа на семейства.
II. Постановка задачи. Определения
Как известно [7], в общем случае согласно теореме Кирхгофа может существовать более одного остовного дерева в связном графе. Для нахождения/построения остова минимального веса могут быть использованы алгоритмы Краскала, Прима [7], а также их модификации.
Пусть о =< V, Е > - граф, определяемый множеством вершин V = V, у2 ,..уп }и множеством ребер
Е = М}^ (1)
где е V, у2 е V .
Обозначим подмножество вершин графа
Разобьем множество вершин V на к непересекающихся подмножеств (к е N). То есть
v=и s
(3)
Определим функцию расстояния между множествами S и Sj (i e[l,..k], j e[l,..k]) как
p(St,S.) = min p(vf),v2j)) (4)
vj ES.
где р(у у2)- вес ребра, соединяющего вершины
V е V, у2 е V. Отметим, что мы будем рассматривать
вес ребра как расстояние между точками в пространстве, определяющими вершины графа сети связи. Другими словами, вес ребра будет задаваться метрикой в пространстве.
Введем следующее определение. Подмножества
S1 ç V и S2 ç V образуют семейство D = U^s , если
для
любой пары S1 е D и S2 е D выполнены следующие условия:
1) для S1 выполняется
(5)
S2 = arg min p(Sj,S,)
S, cV i *1
/е[1,..а ]
Это означает, что при фиксированном значении аргумента 5Х функция p(S1: х) достигает своего минимума при х = S2.
2) для S2 выполняется
(6)
S1 = arg min p(S2, S,)
Si çV iï 2
ie[l,..i ]
Рис. 1. Пример разбиения вершин графа на семейства
На рисунке 1 приведен пример образования семейств. Кружками обозначены вершины, объединение вершин по правилу (5), (6) образуют семейства, обведенные замкнутой линией.
Заметим, что связный подграф может быть отождествлен с вершиной в вышеуказанных определениях. И тогда процедура формирования семейств также имеет место быть, здесь функция расстояния между связанными подграфами - см. (4).
III. Свойства и доказательства
Докажем следующее утверждение, которое касается особенности разбиения графа на семейства в рамках введенных обозначений.
Утверждение 1. Любое семейство
D
= U Si
имеет
мощность либо 1, либо 2, если для любых двух вершин V е V и у2 е V расстояние р(ух, у2) уникально. Доказательство. Введем индикаторную функцию
il, если S2 = argmin p(S1, Si )
(7)
Ч :еи
[0, иначе
Составим для наглядности таблицу 1, в которой рассмотрим подмножества V , из которых могут быть сформированы семейства. Элементы таблицы - это индикаторная функция (4) на подмножествах, соответствующих строкам и столбцам.
Таблица 1. Индикаторная функция 1пй(Б1, Б2)
То есть это означает, что при фиксированном значении аргумента Б2 функция р(х,Б2) достигает своего минимума при х = 5Х.
Другими словами, е О и S2 е Б являются взаимоближайшими подмножествами. В простейшем случае семейства формируются из вершин исходного множества V . Как частный случай - каждая вершина
множества V может представлять собой подмножество. •
• •
Si/S2 i j m
-
i - 1
-
j 1 -
-
m 1 -
Из таблицы видно, что в одной строке может находиться ровно одна единица, что соответствует ситуации, что во множестве вершин для любой вершины существует ровно одна ближайшая вершина, поскольку все расстояния между вершинами уникальны. При этом в столбце может находиться произвольное количество единиц (ограниченное размерностью таблицы).
Таким образом, в случае, когда
Ш (Б,, Sj) = 1пё (SJ, St), (8)
получаем
Б = S¡ и SJ, (9)
и, соответственно,
\0\ = 2 (10) В случае, когда
Б]) + ], Б) = 1 (11 )
получаем
О = ^ (12)
i=1
i=1
S çV
i =1
и, соответственно, мощность множества Б равна
|Л| = 1 (13)
Утверждение доказано. ■
Рассмотрим полный взвешенный граф (каждые две вершины соединены одним ребром). Докажем следующее утверждение.
Утверждение 2. Если в полном взвешенном графе все веса ребер уникальны, то разбиение графа на семейства единственно с точностью до перечисления семейств.
Доказательство. Доказательство проведем методом от противного. Согласно утверждению 1 семейство может содержать либо одну, либо две вершины. Предположим, вершина у входит в семейство ^ (если в этом семействе есть еще вершина, обозначим ее w ) и может входить в семейство ^ (если в этом семействе есть еще вершина, обозначим ее г) при другом разбиении. Рассмотрим следующие возможные случаи:
1) Vе S1, |5Х| = 1, Vе S2,|S2|=2
То есть S1 = {у}, S2 = {у, г}. Но вершина V не может одновременно быть ближайшей вершиной к вершине г и не быть ближайшей ни к одной из вершин. Данный случай приводит к противоречию.
2) у е |5Х| = 2 , у е S2,|S21 = 2
То есть ^ = {у,w}, S2 = {у,г}. Тогда получаем, что для вершины у существуют две ближайшие вершины w и г. Но это невозможно, так как все веса в рассматриваемом графе различны. Противоречие.
3) у е |5Х| = 2, у е S2,|52| = 1
То есть S1 = {у, w}, S2 = {у}. Но вершина у не может одновременно быть ближайшей вершиной к вершине w и не быть ближайшей ни к одной из вершин. Противоречие.
4) у е |5Х | = 1, у е S2,|S2| = 1
То есть S1 = {у}, S2 = {у}. Это тождественные разбиения.
Анализ четырех возможных случаев доказывает, что разбиение множества вершин графа на подмножества, называемые семействами (2-3), единственно в полном взвешенном графе с различными весами. Утверждение доказано. ■
Вернемся к построению связного графа на основе заданного исходного графа О =< V, Е > с минимальной суммой весов достраиваемых ребер. Проведем серию операций с заданным графом на основании введенных обозначений - Алгоритм Б.
Алгоритм Б
Шаг 1. Все компоненты связности исходного графа считаем как вершины нового графа О1. При этом расстояние между вершинами нового графа определяется согласно (1). Полагаем к = 1.
Шаг 2. Граф разбиваем на семейства.
Шаг 3. Для семейств S = {у,w}, у которых |5| =2, формируем ребро, которое соединит у и w . В случае,
если элементы семейства комплексные, то переход к Шагу 4. Иначе переход к Шагу 5.
Шаг 4. Среди вершин {у1, у2,у }е у и
К
}е w выбираем пару (vi, Wj ) , такую, что
W^ W2,-WN
P(V, Wj) минимально и vi G V, Wj G W (i e[l,..Nv], j g [l,..NW]). Пара (Vi, w,-) формирует ребро.
Шаг 5. Производим слияние V и W в одну вершину. Новый граф - Gk+1, k := k +1.
Шаг 6. Если текущий граф Gk содержит ровно одну
вершину, то останов. Иначе переход на шаг 2.
Шаги Алгоритма Б свидетельствуют, о том, что данный алгоритм относится к классу жадных алгоритмов. Приведенный алгоритм построен на определенной структуре графа, названной семейством, см. (5-6). А также в алгоритме используются доказанные свойства разбиения графа на семейства.
Данные проводимые процедуры с исходном графом (Алгоритм Б) являются жадным алгоритмом, изложенном в терминах разбиения графа на семейства.
Справедливо следующее утверждение.
Утверждение 3. В случае, когда попарные веса (1), определяемые метрической функцией в пространстве, между всеми неинцидентными вершинами исходного графа различны, Алгоритм Б дает единственное оптимальное решение.
Доказательство. Доказательство опирается на утверждение 2 о единственности разбиения графа на семейства.
Проведем операцию 1 Алгоритма Б. Далее полученный граф, состоящий из одних вершин, достраиваем до полного графа. Поскольку попарные веса между всеми неинцидентными вершинами исходного графа различны, то это будет означать различные веса между вершинами в полученном графе. Единственность разбиения на семейства в данном случае, следующая из утверждения 2, означает необходимое существование/построение однозначного ребра, которое будет связывать компоненты одного семейства (см. шаг 3 Алгоритма Б). При дальнейших итерациях единственность также сводится к применению факта утверждения 2. Таким образом, процедура Алгоритма Б дает единственное оптимальное решение построения остовного дерева (минимальное остовное дерево) при условии различных весов между неинцидентными вершинами исходного графа. Утверждение доказано. ■
Следствие. В случае, когда попарные веса, определяемые метрической функцией в пространстве (1), между всеми неинцидентными вершинами исходного графа различны, минимальное остовное дерево единственно.
Доказательство. Очевидно.
Отметим, что в случае различия весов между неинцидентными вершинами исходного графа Алгоритм А из [1] приведет к такому же решению, что и Алгоритм Б настоящей статьи. А именно, докажем, что
выбор начальной вершины в Алгоритме А из [1] не влияет на получение конечного результата.
Справедливо следующее утверждение.
Утверждение 4. В случае, когда попарные веса, определяемые метрической функцией в пространстве, между всеми неинцидентными вершинами исходного графа различны, Алгоритм А из [1] решения задачи построения минимального остовного дерева инвариантен относительно выбора стартовой вершины.
Доказательство. Выполним шаг 1 Алгоритма Б, поскольку Алгоритм А в любом случае «наращивает» компоненты связности. Получим новый граф, состоящий только из вершин. При этом стартовая вершина может быть «поглощена» любой из вершин нового графа. Далее согласно утверждению 3, в результате операций, производимых жадным Алгоритмом Б, семейства соединяются единственным образом. Стартовая вершина при этом может быть частью семейства с мощностью 2 на определенной итерации. Сама вершина повлияет лишь на то, на какой итерации Алгоритма Б она будет поглощена. Но ребра, которые образуются в результате шага 3 Алгоритма Б, будут идентичны достраиваемым ребрам Алгоритма А. Докажем это. Возможны два случая.
Если для стартовой вершины существует вершина, с которой образуется семейство мощностью 2, то это эквивалентно ситуации Алгоритма Б.
Предположим, ближайшей к стартовой вершине оказывается вершина, которая является частью другого семейства (и соответственно, это ребро достраивается). С другой стороны, в ходе работы Алгоритма Б наступит итерация, когда т.н. стартовая вершина должна быть «поглощена». Согласно определению расстояния между подмножествами вершин (1) произойдет это с образованием того же самого достраиваемого ребра.
Таким образом, Алгоритм А и Алгоритм Б приводят к одному решению (единственному оптимальному). И при решении задачи построения связного графа с минимальной суммой весов достраиваемых ребер может использоваться как Алгоритм А, так и Алгоритм Б. ■
Заметим, что скорость Алгоритма Б выше, более детально сложность алгоритма и экспериментально-временное сравнение будет представлено отдельно.
IV. Заключение
В данной статье выявлено и доказано условие достаточности построения минимального остовного дерева для графа, в котором весовую функцию формирует метрика пространства. Данное свойство практически используется и имеет практическую значимость для сетей связи реальных масштабов при решении задач восстановления связности при различных сценариях ее эксплуатации.
Доказанное условие достаточности является реальным. Различие в попарных расстояниях между вершинами графа, являющегося математической моделью топологии сети связи, несложно достигается за счет высокого разрешения действительного числа (например, для формата числа с плавающей запятой в
стандарте IEEE 754, см. [8], возможный диапазон чисел составляет от 4,94-10-324 до 1,79-10308), которое представляет расстояние между вершинами и имеет место быть на сетях связи реальных масштабов. Следовательно, спектр применения алгоритмов, построенных на данном условии, может распространяться на любую реальную сеть связи.
В качестве развития исследования данного вопроса выдвигается гипотеза о том, что рассмотренное достаточное условие оптимальности решения является также необходимым. Доказательство данного факта является одной из тем дальнейших исследований.
Библиография
[1] B. Melnikov, V. Meshchanin, and Y. Terentyeva, "Implementation of
optimality criteria in the design of communication networks, "Journal of Physics: Conference Series, International Scientific Conference ICMSIT-2020: Metrological Support of Innovative Technological, ICMSIT-2020 (paper 3095),
http://conf.domnit.ru/en/conferences/icmsit-2020-en/
[2] А. Булынин, Б. Мельников, В. Мещанин, Ю. Терентьева
"Оптимизационные задачи, возникающие при проектировании сетей связи высокой размерности, и некоторые эвристические методы их решения," Информатизация и связь, №1, стр. 34-40, 2020,https://elibrary.ru/item.asp?id=42839357
[3] B. Melnikov, "Discrete optimization problems - some new heuristic
approaches," Proceedings - Eighth International Conference on HighPerformance Computing in Asia-Pacific Region, HPC Asia 2005, Beijing, 2005. pp. 73-80. doi: 10.1109/HPCASIA.2005.34
[4] J. Kruskal "On the shortest spanning subtree of a graph and the traveling salesman problem," Proceedings of the American Mathematical Society, vol. 7, no. 1, pp. 48-50, 1956, doi: 10.1090/S0002-9939-1956-0078686-7
[5] T. Cormen, C. Leiserson, R. Rivest, and C. Stein. Introduction to
Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN 0-262-03293-7
[6] R. Prim "Shortest connection networks and some generalizations," Bell
System Technical Journal, vol. 36, no. 6, pp. 1389-1401, 1957, doi: 10.1002/j.1538-7305.1957.tb01515.x
[7] Емеличев В.А. Мельников О.И. Лекции по теории графов. - М.: Наука, Гл. ред. физ.-мат. лит. 1990, - 384 с.
[8] Яшкардин В. IEEE 754 -- стандарт двоичной арифметики с плавающей точкой}// SoftElectro. -- 2009.
Юлия Юрьевна Терентьева,
канд. техн. наук, начальник управления анализа и
методологии совершенствования информационных
телекоммуникационных систем Центра
информационных технологий и систем органов
исполнительной власти
(https://citis.ru/),
email: [email protected],
elibrary.ru authorid=1577,
scopus.com: authorId=57216810316,
ORCID: orcidID=0000-0002-2418-003X.
Some theoretical issues related to the description of practical algorithms for constructing spanning trees
Yulia Terentyeva
Abstract - The article discusses the issue of restoring the connectivity of a communication network in the case of its fragmentation with a certain criterion of optimality. As an optimality criterion, the total length of the edges being completed is taken, the weight of which is given by the metric in space and thereby determines the edge length. Such questions have both purely engineering applications and touch on the classical side of graph theory. Namely, the problem of defragmentation of the communication network, which arose as a result of both internal and external possible destabilizing factors, can be solved by constructing a spanning tree.
The author's programming of practical algorithms for restoring the connectivity of a communication network, which also includes classical algorithms (for example, Kruskal's algorithm for constructing a spanning tree), led to the question of the uniqueness of the solution for restoring network connectivity in the case of the metric version of the problem and provided that it is impossible to form new vertices (communication nodes). Experimentally, we obtained confirmation of the invariance of the starting vertex in the operation of the algorithm. A hypothesis was put forward on sufficient conditions for the uniqueness of a solution to the problem of reconnecting a communication network, as well as a hypothesis on sufficient conditions for the invariance of the starting vertex. A similar problem is reduced to proving the sufficiency of the conditions for the uniqueness of the construction of a minimal spanning tree in the case of a graph with a metric weight function. For the proof, the concepts of a family of a graph and a partition of a graph into families were introduced. This proof forms the substantive part of this article.
The considered property of the sufficiency of the uniqueness of the solution to the problem of restoring the connectivity of a communication network can be useful in designing real communication networks.
Keywords - eommunication network, communication network modeling, greedy algorithm, spanning tree
References
[1] B. Melnikov, V. Meshchanin, and Y. Terentyeva, "Implementation of
optimality criteria in the design of communication networks, "Journal of Physics: Conference Series, International Scientific Conference ICMSIT-2020: Metrological Support of Innovative Technological, ICMSIT-2020 (paper 3095),
http://conf.domnit.ru/en/conferences/icmsit-2020-en/
[2] Bulynin A.G., Melnikov B.F., Meshchanin, V.Y. and Terentyeva. Y.Y.
Optimization problems arising in the design of high-dimensional
communication networks, and some heuristic methods for their solution // Informatization and Communication, no. 1, pp. 34-40, 2020, https://elibrary.ru/item.asp?id=42839357 (in Russian).
[3] B. Melnikov, "Discrete optimization problems - some new heuristic
approaches," Proceedings - Eighth International Conference on HighPerformance Computing in Asia-Pacific Region, HPC Asia 2005, Beijing, 2005. pp. 73-80. doi: 10.1109/HPCASIA.2005.34
[4] J. Kruskal "On the shortest spanning subtree of a graph and the traveling salesman problem," Proceedings of the American Mathematical Society, vol. 7, no. 1, pp. 48-50, 1956, doi: 10.1090/S0002-9939-1956-0078686-7
[5] T. Cormen, C. Leiserson, R. Rivest, and C. Stein. Introduction to
Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN 0-262-03293-7
[6] R. Prim "Shortest connection networks and some generalizations," Bell
System Technical Journal, vol. 36, no. 6, pp. 1389-1401, 1957, doi: 10.1002/j.1538-7305.1957.tb01515.x
[7] Emelichev V, Melnikov О. Lectures on graph theory. Moscow.: -Science.-1990,-P.384. (in Russian)
[8] Yashkardin V. IEEE 754 - binary floating point arithmetic standard // SoftElectro. - 2009.