Какова сложность этой проблемы покрытия?


24

Редактировать: я сначала неправильно сформулировал свое ограничение (2), теперь оно исправлено. Я также добавил больше информации и примеров.

С некоторыми коллегами, изучающими какой-то другой алгоритмический вопрос, мы смогли свести нашу проблему к следующей интересной проблеме, но мы не смогли решить вопрос о ее сложности. Проблема заключается в следующем.

Экземпляр: целое число , целое число и набор из пар из набора .k < n S = { { s 1 , t 1 } , , { s n , t n } } n { 1 , , n }nk<nS={{s1,t1},,{sn,tn}}n{1,,n}

Вопрос: существует ли набор размера такой, что для каждого элемента из : (1) если , интервал равен входит в некоторый интервал определенный парой в , и (2) хотя бы один из , принадлежит некоторой паре ? (2) принадлежу некоторой паре .k i { 1 , , n } i < n [ i , i + 1 ] [ s i , t i ] S i i + 1 S i S SSki{1,,n}
i<n[i,i+1][si,ti]S
ii+1S
iS

Пример
. Множество является возможным решением (при условии, что четно): пара обеспечивает условие (1), тогда как все остальные пары обеспечивают условие (2).n { 1 , n }{{i,i+1} | i  is odd}{1,n}n{1,n}

Замечания
(I) Поскольку каждая пара содержит ровно два элемента, для выполнения условия (2) нам нужно как минимум пар. Кстати, это подразумевает тривиальное 2-приближение, возвращая всю , поскольку мы предполагаем . S| S| nn2S|S|n

(II) Другой способ взглянуть на проблему - рассмотреть лестницу с ступенями (как, например, ниже ), вместе с множеством из циклов лестницы. Каждый шаг лестницы соответствует некоторому элементу, и каждый боковой край является интервалом . Цикл, включающий шаги точно соответствует паре : он охватывает все последовательные интервалы между и и останавливается как на и на . Тогда возникает вопрос, существует ли множество изnn [ i , i + 1 ] s , t { s , t } s t s t S S kSn[i,i+1]s,t{s,t}stst
SSkциклы, объединение которых охватывает все ребра лестницы (включая ступеньки и боковые ребра).

(III) Если бы кто-то спрашивал только об условии (1), проблема соответствовала бы задаче о доминирующем множестве в некотором интервальном графе, определенном из интервалов заданных парами вместе с дополнительными крошечными интервалами для каждого в . Эта задача классически разрешима за линейное время (см., Например, здесь ). Точно так же, если бы кто-то просто запрашивал условие (2), это можно было бы свести к проблеме покрытия ребер (вершины - это элементы, ребра - это пары), что также решается за полиномиальное время методом максимального соответствия.S [ i + ϵ , i + 1 - ϵ ] i { 1 , , n - 1 }[si,ti]S[i+ϵ,i+1ϵ]i{1,,n1}


Итак, мой вопрос в заголовке:

Эта проблема в P? Это NP-полный?

Любая ссылка на подобную проблему приветствуется.


1
Это может быть где-то посередине ... кто знает, что это не может быть эквивалентно, скажем, изоморфизму графа? :)
Tsuyoshi Ito

Конечно, это тоже вариант ... Но на самом деле я чувствую, что это "пахнет" быть в P - может быть, потому что я надеюсь, что это будет :)
Флоран Фуко

Почему любое допустимое решение должно иметь размер ? Не могли бы вы объяснить, почему множество пар {[1,n-1],[2,n]} неосуществимо. n2[1,n1],[2,n]
HBM

@hbm: решение, которое вы предлагаете, не удовлетворяет условию (2) (даже с ограничением до моего обновления). Теперь я включил больше объяснений, надеюсь, это будет понятнее.
Флоран Фуко

А как насчет k = n / 2? Можем ли мы решить проблему для этого особого случая?
Домоторп

Ответы:


8

Хотя это не решает вопрос, который вы поднимаете, в некоторых предыдущих комментариях рассматриваются алгоритмы аппроксимации. FWIW, я думаю, что PTAS (схема аппроксимации по времени) возможна при использовании динамического программирования. Вот идея

Для любого экземпляра и построить решение следующим образом. Отметьте каждую ( 1 / ϵ ) -ю вершину. Для каждой отмеченной вершины i из всех ребер ( j , k ), которые «охватывают» i (т. Е. Которые удовлетворяют ограничению (1) для i ), выберите одно ребро, которое минимизирует j, и то, которое минимизирует, максимизирует k . Добавьте эти 2 е п края к решению.ϵ>0(1/ϵ)i(j,k)iijk2ϵn

Эти ребра удовлетворяют ограничениям типа (1) для многих вершин. Между тем они вносят ребер в решение, которое составляет только O ( ϵ OPT ) . Чтобы закончить, мы найдем оптимальное решение оставшейся проблемы поиска набора ребер, которое удовлетворяет всем остальным ограничениям типа (1) и типа (2).2nϵO(ϵOPT)

Определите «блок» вершин как набор последовательных вершин, ограничения типа (1) которых встречаются с помощью добавленных ребер. Между любыми двумя последовательными блоками существует последовательность вершин, ограничения типа (1) которых не выполняются. (Любая такая последовательность имеет длину не более , потому что отмеченные вершины имеют ограничения типа (1), встречаемые уже добавленными ребрами.) Назовите любую такую ​​последовательность «соседством» двух соседних блоков (поэтому каждый блок имеет соседство слева и соседство справа).1/ϵ

В пределах каждой окрестности, для каждой вершины в окрестности, каждое ребро, выходящее из вершины, охватывает расстояние не более (потому что ребро не охватывает ни одну отмеченную вершину). Таким образом, вершина имеет степень не более 1 / ϵ . Таким образом, каждый район имеет не более 1 / е вершины и штрихи в большинстве 1 / ε 2 ребер. Назовите любое подмножество этих ребер «конфигурацией» окрестности. Если конфигурация удовлетворяет всем ограничениям типа (1) и типа (2) для вершин в окрестности, назовите конфигурацию «действительной».1/ϵ1/ϵ1/ϵ1/ϵ2

Для каждого блока для каждой пары ( C i , C i + 1 ) действительных конфигураций двух окрестностей блока вычисляют (за полиномиальное время, используя максимальное совпадение и т. Д.) Минимальный размер F i ( C i , C i + 1 ) любого множества S ребер (если оно существует), такого, что ребра в C iS C i + 1 удовлетворяют ограничениям типа (2) для вершин в блоке. Так как их максимум 2 1i(Ci,Ci+1)Fi(Ci,Ci+1)SCiSCi+1конфигурации, это можно сделать за полиномиальное время (для фиксированного eps). 21/ϵ2=O(1)

D1,D2,..,Dki|Di|+Fi(Di,Di+1)Fi|Di|+Fi(Di,Di+1)DiiDi+1i+1O(21/ϵ2n)O(n)ϵ


1
Ницца. и добро пожаловать в cheheory!
Суреш Венкат

1+ϵk=4/ϵOPTn/22n/kϵOPT
Флоран Фуко
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.