Я сомневаюсь, что это домашнее задание, так как спрашивающий использует свое настоящее имя.
К сожалению, обнаружение присвоения состояний с коэффициентом аппроксимации лучше, чем 2 (при условии, что уникальные игры; 1.3606 в противном случае) составляет NP-трудной .Пусть G будет экземпляром минимального покрытия вершин.Множество A имеет вершину для каждого ребра в G. Множество B имеет вершину для каждой вершины в G. Пусть w (a j , b k , 0) будет 1, еслименьшая конечная точка ребра, соответствующего a j , соответствует b k , а 0 в противном случае.Определите w (a j , b k , 1) аналогично в отношении большей конечной точки.Минимальное максимальное совпадение этого экземпляра имеет количество элементов, равное минимальному покрытию вершин G, и последнюю задачу трудно аппроксимировать.
На фронте алгоритмов мы можем заменить внутреннюю задачу сопоставления максимального веса наего линейное программирование двойное, чтобы минимизировать минимум.Здесь y j - двойственная переменная, соответствующая j , а z k - двойственная переменная, соответствующая b k .
мин ∑ j y j + ∑ k z k
st
∀j, k.y j + z k ≥ (1 - s (a j )) w (a j , b k , 0) + s (a j ) w (a j , b k , 1)
∀j.s (a j ) ∈ {0, 1}
∀j.y j ≥ 0
∀k.z k ≥ 0
Эта формулировка представляет собой программу со смешанными целыми числами, которая может быть атакована без особых усилий человека с помощью готового программного обеспечения (например, GNU Linear).Комплект для программирования).Это может быть или не быть лучше, чем грубая сила.