Mieszany problem chińskiego listonosza
Mieszany problem chińskiego listonosza (MCPP lub MCP) to poszukiwanie najkrótszego przejścia grafu ze zbiorem wierzchołków V, zbiorem nieskierowanych krawędzi E o dodatnich wagach wymiernych oraz zbiorem skierowanych łuków A o dodatnich wagach wymiernych, które obejmuje każdą krawędź lub łuk przynajmniej raz przy minimalnych kosztach. Problem został udowodniony jako NP-zupełny przez Papadimitriou . Mieszany problem chińskiego listonosza często pojawia się w przypadku problemów z trasowaniem łuku takich jak odśnieżanie, gdzie niektóre ulice są zbyt wąskie, aby można je było przejechać w obu kierunkach, podczas gdy inne ulice są dwukierunkowe i można je odśnieżać w obu kierunkach. Łatwo jest sprawdzić, czy wykres mieszany ma wycieczkę listonosza dowolnej wielkości, sprawdzając, czy wykres jest silnie spójny. Problem jest NP-trudny, jeśli ograniczymy trasę listonosza do przechodzenia przez każdy łuk dokładnie raz lub jeśli ograniczymy ją do przechodzenia przez każdą krawędź dokładnie raz, jak udowodnił Zaragoza Martinez.
Definicja matematyczna
Definicja matematyczna to:
Wejście: silnie połączony, mieszany wykres dla każdego kosztem do krawędź i maksymalny koszt .
Pytanie: czy istnieje (ukierunkowana) trasa, która przechodzi przez każdą krawędź w każdy łuk w przynajmniej raz i ma koszt co najwyżej ?
Złożoność obliczeniowa
Główna trudność w rozwiązaniu problemu mieszanego chińskiego listonosza polega na wyborze orientacji dla (nieukierunkowanych) krawędzi, gdy mamy napięty budżet na naszą wycieczkę i możemy sobie pozwolić tylko na jednokrotne przejście przez każdą krawędź. Następnie musimy zorientować krawędzie i dodać kilka kolejnych łuków, aby uzyskać skierowany graf Eulera, to znaczy, aby każdy wierzchołek był zrównoważony. Jeśli istnieje wiele krawędzi incydentnych z jednym wierzchołkiem, określenie prawidłowej orientacji każdej krawędzi nie jest łatwym zadaniem. Matematyk Papadimitriou przeanalizował ten problem z większą liczbą ograniczeń; „MIESZANY CHIŃSKI POSTMAN jest NP-zupełny, nawet jeśli graf wejściowy jest płaski, każdy wierzchołek ma co najwyżej trzy stopnie, a każda krawędź i łuk kosztują jeden”.
Graf Eulera
Proces sprawdzania, czy graf mieszany jest eulerowski, jest ważny przy tworzeniu algorytmu do rozwiązania problemu mieszanego chińskiego listonosza. Stopnie mieszanego wykresu G muszą być równe, aby mieć cykl Eulera, ale to nie wystarczy.
Przybliżenie
Fakt, że mieszany chiński listonosz jest NP-trudny, doprowadził do poszukiwania algorytmów czasu wielomianowego, które zbliżają optymalne rozwiązanie do rozsądnego progu. Frederickson opracował metodę ze współczynnikiem 3/2, którą można zastosować do grafów planarnych, a Raghavachari i Veerasamy znaleźli metodę, która nie musi być planarna. Jednak czas wielomianowy nie może znaleźć kosztu martwego punktu, czasu potrzebnego pługowi śnieżnemu na dotarcie do ulic, które będzie orał, lub zamiatarki ulicznej, aby dotrzeć do ulic, które będzie zamiatać.
Definicja formalna
uwagę silnie połączony wykres mieszany \ , łuków kosztem każdego wycieczki o minimalnych kosztach przechodzącej przez każde raz
biorąc pod uwagę , , , oznacza zbiór krawędzi z dokładnie jednym punktem i . Biorąc pod wierzchołek ( ) oznacza liczbę łuków wprowadzić { ) to liczba łuków wychodzących (stopień) to liczba łączy incydentnych z } . Zauważ, że . Wykres mieszany się jeśli jego wierzchołki mają parzysty stopień dla każdego wierzchołka mówi się, że jest zrównoważony, jeśli, biorąc pod uwagę dowolny podzbiór S między liczbą od do i liczba łuków skierowanych od S | nie jest większa niż liczba niekierowanych krawędzi łączących i } .
Dobrze znany jest fakt, że graf mieszany i tylko wtedy, gdy jest i zrównoważony. Zauważ, że jeśli i eulerowskie). jeśli można rozwiązać dokładnie w czasie
Nawet algorytm MCPP
- parzysty i silnie połączony wykres mieszany zbiorem łuków otrzymanych losowo przypisanie kierunku krawędziom w przy tych samych kosztach Oblicz dla każdego wierzchołka ja na grafie skierowanym . Wierzchołek z za źródło (ujście) z popytem na podaż . Zauważ, że jak to wykres parzysty, wszystkie dostawy i zapotrzebowania są liczbami parzystymi (zero jest uważane za liczbę parzystą).
- Niech będzie zbiorem łuków w kierunku przeciwnym do tych w odpowiednich krawędzi, i niech będzie zbiorem łuków równoległych do koszcie.
- Aby spełnić wymagania , rozwiąż problem przepływu minimalnych kosztów na grafie , w którym każdy łuk w ma nieskończona pojemność i każdy łuk w ma pojemność 2. Niech będzie optymalnym przepływem.
- Dla każdego łuku w wykonaj: Jeśli , to zorientuj odpowiednia krawędź w do kierunek , od do { , przypisany do powiązanej krawędzi w kroku 1 był „błędny”); jeśli to ustaw odpowiednią krawędź w sol od w tym przypadku orientacja w kroku 1 była „właściwa "). Zwróć uwagę przypadek przez łuki parzystymi
- Zwiększyć dodając kopie łuku w . Otrzymany wykres jest parzysty i symetryczny.
Algorytmy heurystyczne
Gdy graf mieszany nie jest parzysty i nie wszystkie węzły mają parzysty stopień, graf można przekształcić w graf parzysty.
- Niech _ _ _ Znajdź węzły nieparzystych stopni, ignorując kierunki łuku i uzyskaj dopasowanie przy minimalnym koszcie. wykres .
- Wykres jest parzysty, ale nie jest symetryczny, a graf mieszany eulerowski jest parzysty i symetryczny. Rozwiąż problem przepływu minimalnych kosztów w celu uzyskania symetrycznego wykresu, który może nie być równy .
- Ostatni krok polega na . Oznacz nieparzyste węzły stopni . . Znajdź cykle, które naprzemiennie między liniami w zbiorze łuków zbiorze krawędzi , w punktach w . Łuki w należy traktować jako krawędzie nieukierunkowane, a nie skierowane łuki.
Algorytm genetyczny
Artykuł opublikowany przez Hua Jiang et. Al opracował algorytm genetyczny, aby rozwiązać mieszany problem chińskiego listonosza, operując na populacji. Algorytm działał dobrze w porównaniu z innymi algorytmami aproksymacyjnymi dla MCPP.