Zliczanie liczby prostych ścieżek na nieukierowanym wykresie


18

W jaki sposób mogę ustalić liczbę unikalnych prostych ścieżek na niekierowanym wykresie? Albo dla określonej długości, albo w zakresie dopuszczalnych długości.

Przypomnij sobie, że prosta ścieżka to ścieżka bez cykli, więc mówię o policzeniu liczby ścieżek bez cyklu.


2
Pytanie zostało już zadane na stronie mathoverflow: mathoverflow.net/questions/18603/…
— Listing

5
W rzeczywistości pytanie w matematycznym przepływie dotyczyło znalezienia wszystkich ścieżek, a nie ich liczenia. Ich znalezienie może być znacznie trudniejsze.
— DCTLib,

1
Oprócz odniesień podanych w odpowiedziach, jedną trywialną obserwacją jest to, że jeśli można policzyć liczbę ścieżek o długości wówczas można odpowiedzieć na pytanie o istnienie ścieżki hamiltonowskiej. Najprawdopodobniej nie jest to P.n−1
— Saeed

Odpowiedzi:



18

Jest to # P-complete (Valiant, 1979), więc prawdopodobnie nie zrobisz nic lepszego niż brutalna siła, jeśli chcesz dokładnej odpowiedzi. Przybliżenia omawia Roberts i Kroese (2007).


B. Roberts i DP Kroese, " Szacowanie liczby ścieżek - na wykresiest ". Journal of Graph Algorytmy i aplikacje , 11 (1): 195–214, 2007.

LG Valiant, „ Złożoność problemów związanych z wyliczaniem i niezawodnością ”. SIAM Journal on Computing 8 (3): 410-421, 1979.


4
Dokument Robertsa i Kroese'a nie wydaje się gwarantować przybliżenia. Czy znany jest PTAS dla tego problemu?
— Sasho Nikolov,

3
@SashoNikolov, wydaje się mało prawdopodobne, aby istniał jakiś rozsądny algorytm aproksymacyjny. Biorąc pod uwagę uzyskaj G ′ z G , zastępując każdy węzeł kliką o rozmiarze N = n c, gdzie n = | V | oraz c ≫ 1 . Dla każdej prostej ścieżki długości ℓ w G istnieją z grubsza ( N ! ) ℓ ścieżki w G ′ . Więc jeśli G masol=(V.,mi)sol′solN.=ndon=|V.|do≫1ℓsol(N!)ℓG′G ścieżka Hamiltona, będzie co najmniej ( N ! ) n lub tak prosteścieżki s - t w G ′ , a w przeciwnym razie co najwyżej coś takiego jak ( n - 1 ) ! ( N ! ) N - 1 prosteścieżki s - t . Tak więc przybliżenie w granicach około N powinno być trudne ! / ( n - 1 ) ! ≫ n c -s−t(N!)ns−tG′(n−1)!(N!)n−1s−t. N!/(n−1)!≫nc−1!
— Neal Young

6

Chciałbym dodać inny algorytm aproksymacyjny, sparametryzowany: dla ustalonego (lub bardziej precyzyjnie δ = Ω ( 1δ>0), można obliczyćw(1+hemibursztynianu)-approximation liczby prostych odcinków, w obu nieukierunkowane lub skierowanej wykresie o długościKw czasieO*(2O(K)).δ=Ω(1poly(k))(1+δ)kO∗(2O(k))

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.