О СЛОЖНОСТИ ЗАДАЧИ ПОИСКА ГИПЕРСЕТИ МИНИМАЛЬНОЙ СТОИМОСТИ
А. Н. Юргенсон, Д. А. Мигов
Институт вычислительной математики и математической геофизики СО РАН
630090, Новосибирск
УДК 519.8:51-74
БОТ: 10.24411/9999-018А-2019-10012
В статье рассматривается задача поиска гиперсети минимальной стоимости, а именно задача оптимальной укладки вторичной сети в первичную сеть. Показано, что данная задача является ИР--трудной. В качестве известной КР-трудной задачи, которая сводится к изучаемой задаче, взята задача о нахождении дерева Штейнера на графе. Ключевые слова: графы, гиперсеть, дерево Штейнера.
Введение
Задачи, связанные с поиском маршрута в иерархических сетях возникают в самых различных областях. Примерами подобных задач являются поиск оптимальных маршрутов для прокладки инженерных сетей, размещение объектов на заданной территории, задачи размещения логистических объектов и систем электроснабжения, проектирование и реконструкция транспортных сетей. Для моделирования различных сетевых объектов обычно используется графы и гиперграфы. Однако, аппарат теории графов и гиперграфов не всегда позволяет учесть иерархичность сетевого объекта. Поэтому используются другие сетевые модели: вложенные графы, многоуровневые комплексные сети, гиперсети, и другие.
В настоящей работе в качестве математической модели иерархической сети используется гиперсеть, поскольку в ней учитывается реализация одной структуры в другую. В следующем пункте доказана ИР-трудность задачи нахождения гиперсети минимальной стоимости, т.е. задачи оптимальной укладки вторичной сети в первичную сеть. Эта задачи имеет различные приложения, например, при проектировании инженерных сетей и структурированных кабельных сетей.
1. Постановка задачи
Понятие гиперсети было введено в [1] следующим образом.
Определение: Гиперсетью называется объект НБ = (X, F), включающий в себя [1]: X = (Х1, Х2, ..., хп) - множество вершин; РБ = (X, V ) - граф первичной сети, где V = (п, Уг, ..., х>д) - множество ветвей первичной сети; ШБ = (Х,Р) - граф первичной сети, где Я = (п, г2, ..., Гт) - множество ребер вторичной сети; F : Я ^ 7М - отображение, сопоставляющее каждому элементу геР. маршрут из ветвей в графе РБ.
Графы РБ и ШБ являются не ориентированными.
Введем еще некоторые обозначения: а(у) - стоимость ветви уеУ первичной сети; Ь(г) - стоимость ребра геЯ вторичной сети.
На рис. 1 представлены первичная сеть РБ в виде решетки и вторичная сеть Ж5, вложенная в первичную по следующим маршрутам И = {(1, 4, 5), (1, 4, 7), (7, 8, 9)}.
Работа поддержана грантом РФФИ № 18-07-00460
Постановка задачи
Пусть заданы графы первичной и вторичной сети РБ = (X, V ) и WS = (Х,И). Найти отображение F, т.е. вложение вторичной сети в первичную, такое, что стоимость полученной гиперсети НБ минимальна.
( \
ан) = ^ а(у)к?) ^ т[п (1)
кvеF (г ),УгеК геК У
Стоимость ветви реУ первичной сети учитывается только один раз, хотя ветвь V может участвовать в нескольких маршрутах (ребрах вторичной сети).
Без ограничения общности, будем считать, что граф первичной сети РБ является связным. Тогда для каждого ребра можно найти связный маршрут, соединяющий выделенные вершины, и поставленная задача (1) разрешима.
2. Установление факта NP-трудности задачи
Прежде чем решать поставленную задачу нужно оценить ее сложность, т.е. понять, разрешима ли задача за полиномиальное время или нет. Одним из самых простых приемов является метод "сужения" [3]. Нужно показать, что задача включает в себя в качестве частного случая известную NP-трудную задачу.
1) Пусть стоимость ветвей первичной сети a(v) = 0 VvgV (или стоимость ветвей пренебрежимо мала, по сравнению со стоимостью ребер). Т.е. стоимость гиперсети будет зависеть только от стоимости ребер г вторичной сети. Тогда для ребра подойдет любой маршрут в в PS, соединяющий вершины этого ребра. Например, можно воспользоваться классическим поиском в ширину. Задача (1) полиномиально разрешима.
Часто стоимость ребра зависит от длины ребра (сумма длин ветвей маршрута).
Пусть l(v) - длина ветви vgV . Тогда b(r) = C ■ ^l(v), где С некоторая константа. То-
vgF (r)
гда задача (1) решается алгоритмом поиска кратчайших расстояний на первичном графе PS, например алгоритмом Флойда [4]. Т.е. задача (1) полиномиально разрешима.
2) Пусть стоимость ребер вторичной сети b(r) = 0 VrsR (или стоимость ребер пренебрежимо мала). Тогда стоимость гиперсети будет сумма стоимостей все ветвей первичной сети, участвующих в маршрутах.
Если \R\ = 1, то задача сводится к поиску кратчайшего пути (по стоимости a(v)) между двумя вершинами на графе первичной сети, например алгоритмом Дейкстры [4]. Задача (1) полиномиально разрешима.
Пусть |й| > 2.
2.1) Пусть граф вторичной сети WS является связным графом. Покажем, что решением задачи (1) будет дерево Штейнера на графе PS. Как известно, задача дерево Штейнера на графе является NP-трудной [3].
Будем доказывать от противного. Пусть вложение WS в PS не является деревом в PS, т.е. есть циклы, и дерево имеет минимальную стоимость.
2.1.1) Рассмотрим случай, когда граф WS будет деревом, т.е. не содержит циклов.
а) Пусть в первичной сети PS два маршрута AD и АС образуют цикл (рис. 2,а), точка B -точка их пересечения. Обозначим части маршрута до точки Вкак mi и m2. Стоимость этих частей маршрутов обозначим |mi| и |m2|.
Если |mi| > |m2|, то можно реализовать маршрут mi вдоль m2. Тогда стоимость гиперсети уменьшится на |mi|. что противоречит условию, что дерево в PS имеет минимальную стоимость.
б) Пусть в первичной сети PS три маршрута AD, АЕ, ЕС образуют цикл (рис. 2,6), точка В - точка их пересечения. Обозначим эти части маршрута как mi, Ш2, тэ.
Если |mi| > |Ш2| + |шэ|, то можно реализовать маршрут mi вдоль т,2 и тэ (АЕВ). Тогда стоимость гиперсети уменьшится на |mi|. что противоречит условию, что дерево в PS имеет минимальную стоимость.
Если |mi| < |m2| + |тэ| и |т2| < |тэ|, то можно реализовать маршрут тэ вдоль т,2 и mi (ЕАВ) (рис. 2,в). Тогда стоимость гиперсети уменьшится на |шэ|, что противоречит условию, что дерево в PS имеет минимальную стоимость.
в) Если в первичной сети PS цикл образуют 4 и больше маршрутов, то случай аналогичен предыдущему, самый дорогой маршрут перереализовывается по остальным маршрутам.
Итак, если граф WS - дерево, то маршруты на первичной сети PS тоже образуют дерево для гиперсети минимальной стоимости.
Рисунок 2: Пример маршрутов в РБ образующих цикл
2.1.2) Рассмотрим случай, когда граф ШБ не будет деревом, т.е. содержит циклы. Покажем, что гиперсеть минимальной стоимости образует дерево на графе РБ.
Пусть это не так и на графе РБ есть циклы. На рис. 3 маршруты АВ, АС, СВ образуют цикл. Выберем маршрут наибольшей стоимости (например, т1) и реализуем его вдоль маршрутов т2 и тз (АСВ). Тогда стоимость гиперсети уменьшится на величину | Ш1|. Это противоречит условию, что дерево в РБ имеет минимальную стоимость.
mi
Рисунок 3: Пример маршрутов в PS, образующих цикл
Итак, гиперсеть минимальной стоимости образует дерево на графе РБ. Это есть задача поиска дерева Штейнера на графе. Следовательно, задача (1) является ЫР--трудной.
2.2) Пусть граф вторичной сети не является связным графом (рис. 4,а), т. е. решением задачи является лес (компонентами связности леса являются деревья [2]).
Введем дополнительную вершину (рис. 4,б) и соединим дополнительными ребрами и ветвями нулевой стоимости с компонентами связности вторичного графа (на рис. 4Ь эти ребра отмечены красным). Каждая компонента связности соединятся одним ребром.
Полученный граф является связным. Очевидно, что найденное на данном графе дерево Штейнера будет являться решением исходной задачи.
а
б
Рисунок 4: Пример гиперсети, для несвязного графа
Итак, доказано следующее утверждение
Утверждение: Задача (1) является ЫР-трудной.
Заключение
Рассмотренная задача оптимальной по критерию стоимости укладки вторичной сети в первичную сеть является ЫР-трудной, как доказано в данной статье, путём сведения к ней задачи о нахождении дерева Штейнера. Задача о нахождении дерева Штейнера на графах является широко известной задачей [5], существует множество приближенных алгоритмов для ее решения. Однако, учитывая специфику рассматриваемой задачи, например, для проектирования инженерных сетей, авторами ранее был разработан ряд приближённых алгоритмов её решения [6, 7]. В том числе, и с учётом надёжности проектируемой сети, что также является ЫР-трудной задачей, т.к. содержит в себе задачу, ЫР-трудность которой установлена выше.
Список литературы
1. Попков В.К. Математические модели связности. Новосибирск: ИВМиМГ СО РАН, 2006. 490 с.
2. Евстигнеев В.А., Касьянов В.Н. Словарь по графам в информатике. Новосибирск: Сиб. науч. изд-во, 2009. 300 с.
3. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. М.: Мир, 1982.
4. Кристофидес Н. Теория графов. Алгоритмический подход. М: Мир, 1978. 432 с.
5. Гордеев Э. Н., Тарасцов О. Г. Задача Штейнера. Обзор // Дискр. матем. 1993. Том 5, вып. 2. С. 3-28.
6. Токтошов Г.Ы., Юргенсон А.Н., Мигов Д.А. Оптимизация маршрутов прокладки магистрального трубопровода для транспортировки георесурсов // Изв. Том. политехн. ун-та. Инжиниринг георесурсов. 2019. Т. 330, № 6. С. 41-49.
7. Попков В.К., Токтошов Г.Ы., Юргенсон А.Н. Об одном подходе к оптимизации инфраструктуры инженерных сете // Вестн. СибГУТИ. 2012. № 3. С. 11-28.
Юргенсон Анастасия Николаевна - канд. физ.-мат. наук, науч. сотр. Института вычислительной математики и математической геофизики СО РАН;
e-mail: nastya@rav.sscc.ru; Мигов Денис Александрович- канд. физ.-мат. наук, ст. науч. сотр. Института вычислительной математики и математической геофизики СО РАН;
e-mail: mdinka@rav.sscc.ru.