Сложность проблемы интервального покрытия

17

Рассмотрим следующую задачу Q : Нам дано целое число и k интервалов [ l i , r i ] с 1 l ir i2 n . Нам также даны 2 n целых чисел d 1 , , d 2 n0 . Задача состоит в том, чтобы выбрать минимальное количество интервалов [ l i , r i ]nk[li,ri]1liri2n2nd1,...,d2N0[Lя,ря]так что для каждого выбираются как минимум d i интервалы, содержащие целое число i .язнак равно1,...,2Ndяя

Нетрудно понять, что можно решить за полиномиальное время (см. Ниже).Q

Теперь рассмотрим следующую слегка модифицированную задачу Q' : ввод задачи такой же, как и раньше. Однако теперь задача состоит в том, чтобы выбрать минимальное количество интервалов, чтобы для каждого не менее d 2 i - 1 интервалов, содержащих целое число 2 i - 1, или как минимум d 2 i интервалов, содержащих целое число 2 Я выбран («или» мы имеем в виду обычное логическое или).язнак равно1,...,Nd2я-12я-1d2я2я

Мой вопрос: можно ли решить за полиномиальное время?Q'

Вот два способа эффективного решения :Q

Простой жадный алгоритм: пролистайте интервалы слева направо и выберите только те интервалы, которые необходимы для «удовлетворения» чисел . Всякий раз, когда есть выбор между различными интервалами, выбирайте один или несколько интервалов с максимальной правой конечной точкой.dя

Целочисленная программа: для каждого интервала ввести переменную решения x i{ 0 , 1 } с x i = 1, если интервал выбран. Цель состоит в том, чтобы минимизировать x 1 + + x k с учетом ограничений j : i [ l j , r j ] x jd i[Lя,ря]Икся{0,1}Иксязнак равно1Икс1+...+ИксКΣJ:я[LJ,рJ]ИксJdя, Матрица ограничений этой целочисленной программы обладает свойством последовательных единиц, и, следовательно, линейная программная релаксация этой программы имеет целочисленное оптимальное решение.

Спасибо за любые подсказки, а также за ссылки!

Торстен Мютце
источник

Ответы:

-1

Каждый экземпляр Q может быть преобразован в экземпляр Задачи покрытия множества множеств, где местоположениями являются интервалы , охватывающие последовательную последовательность точек спроса (= целые числа d i ).[Lя,ря]dя

Вениамин
источник
3
Можете ли вы улучшить ответ, добавив определение проблемы покрытия множества множеств (MSCP) и более подробную информацию о сокращении? В частности, экземпляром MSCP (по крайней мере, известной мне «версии») является двудольный граф и только V 1 является объединением непересекающихся множеств; каким образом редукция отображает ребра из V 1 в V 2 ? граммзнак равно(В1,В2,Е)В1В1В2
Марцио де