Czym jest algorytm znajdujący minimalną osłonę wierzchołków na dwustronnym grafie z ważonymi wierzchołkami?

10

Wiem, że dla nieważonego grafu dwustronnego mogę znaleźć minimalną osłonę wierzchołków, najpierw znajdując maksymalne dopasowanie i przekształcając ją w osłonę wierzchołków za pomocą Twierdzenia Königa. Czy istnieje modyfikacja, której można by użyć, gdyby węzły były ważone?

Andriej Fiodorow
źródło
1
Chociaż rozwiązanie podane przez Shivę Kintali rozwiązuje twój problem, chciałbym tylko dodać szybką uwagę: twierdzenie Königa dotyczy kardynalności. Możesz dodać wagi, znajdując minimalne maksymalne dopasowanie dwustronne (istnieją algorytmy do tego z wagami krawędzi; zamiast tego łatwo używać wag węzłów), ale nadal uzyskasz minimalny koszt minimalnego pokrycia wierzchołków - co może nie być minimalny koszt ochrony wierzchołków (tj., który może składać się z większej liczby węzłów). Dopasowanie minimalnego kosztu bez ograniczeń / optymalizacji liczności byłoby po prostu puste (dla dodatnich wag)…
Magnus Lie Hetland

Odpowiedzi:

18

Problem ważonej osłony wierzchołków można sformułować jako program liczb całkowitych (patrz http://en.wikipedia.org/wiki/Vertex_cover ). Gdy wykres wejściowy jest dwustronny, macierz ograniczeń tego adresu IP jest całkowicie niemodularna. Dlatego ten adres IP można rozwiązać w czasie wielomianowym.

Aby uzyskać więcej informacji na temat całkowitych niemodularnych matryc i odpowiadających im algorytmów, zobacz doskonałą (trzy tomową) książkę Aleksandra Schrijvera .

Shiva Kintali
źródło
6
Aby być bardziej precyzyjnym, IP można rozwiązać, po prostu rozwiązując relaksację LP. Co więcej, można zauważyć, że podwójność LP jest uogólnieniem dopasowania (o pojemnościach odpowiadających ciężarom wierzchołków w instancji pokrywy wierzchołków) i można je rozwiązać, redukując do maksymalnego przepływu w zwykły sposób.
Chandra Chekuri
@ChandraChekuri peudo-kod maksymalnego ograniczenia przepływu można znaleźć na rycinie 4 w Inkrementalnym obliczeniu kopert
zasobowych w