Для решения данной задачи о покрытии множества (Set Cover) и доказательства того, что округление $\hat{x}i = I{x_i 0}$ также дает $f$-приближение, мы будем следовать нескольким шагам.
Шаг 1: Понимание задачи
Задача о покрытии множества заключается в том, чтобы выбрать минимальное количество подмножеств из заданного семейства, чтобы покрыть все элементы. Линейная программа (ЛП) для этой задачи может быть записана в следующем виде:
$
\text{minimize} \sum
{i=1}^{m} xi
$
при условиях:
$
\sum
{i: e \in Si} x_i \geq 1 \quad \forall e \in U
$
$
x_i \geq 0 \quad \forall i
$
где $U$ — это множество элементов, а $S_i$ — подмножества.
Шаг 2: Округление $\bar{x}_i$
На семинаре было показано, что округление $\bar{x}
i = I{x
i \g...i$ больше или равно $1/f$, то мы выбираем это множество, иначе — нет.
Теперь рассмотрим округление \hat{x}{xi больше нуля.
-
: Рассмотрим любое множество , которое покрывает элемент . По условиям линейной программы, для каждого элемента выполняется:
Пусть — количество множеств, которые покрывают элемент . Тогда:
Это означает, что сумма по всем множествам, которые покрывают , должна быть не менее 1.
-
: Если должно быть больше некоторого значения, которое зависит от . В частности, если множеств покрывают элемент , то по линейной программе:
\sumi} xi \geq \frac{1}{k}
Если , то:
\sumi} xi \geq \frac{1}{f}
-
: Если мы выбираем все множества, для которых , то количество выбранных множеств будет не больше раз больше, чем минимальное количество множеств, необходимых для покрытия элемента .
Таким образом, если мы выбираем все множества, для которых xi = Ii 0} также дает -приближение для задачи о покрытии множества.
Таким образом, мы пришли к выводу, что округление действительно является -приближением.