Задача леса Штейнера для заданного взвешенного графа G = (V, E) и пар вершин (s 1 , t 1 ),…, (s m , t m ), найдите самый легкий ребер-подграф H группы G такой, что для всех i вершины s i и t i принадлежат одному и тому же связанному компоненту H.
Вариант решения вашей проблемы, по сути, является версией решения леса Штейнера с единичными весами.К сожалению, этот особый случай все еще NP-сложен.
Сокращение от особого случая леса Штейнера до вашей проблемы с учетом невзвешенного экземпляра леса Штайнера и инструкций, чтобы определить, существует ли решение проблемы вMost C, создайте экземпляр вашей проблемы с тем же графом, k = | V |- c, и, для всех i, пусть S i = {s i , t i }.Если существует лес стоимости Штейнера не более c, то связанные компоненты леса - это ваши подмножества, число которых не меньше | V |- с = к.И наоборот, если экземпляр вашей проблемы имеет решение, то мы можем найти связующее дерево в каждом из ваших подмножеств, и общая стоимость не превышает | V |- k = c.
Наилучший известный коэффициент аппроксимации равен 2, что мало поможет, если k мало.Вам, вероятно, придется использовать ветви и границы.