kompletność rozpoznania różnicy dwóch permutacji


21

Shor stwierdził w swoim komentarzu do odpowiedzi anonimowego łosia na to pytanie. Czy potrafisz określić sumę dwóch permutacji w czasie wielomianowym? , To jest -Complete do określenia różnicę dwóch permutacji. Niestety, nie widzę prostą redukcję od problemu sumy permutacji i warto mieć N P zmniejszenie -completeness dla problemu różnicy permutacji.NPNP

Różnica permutacji:

INSTANCJA: Tablica dodatnich liczb całkowitych.A[1...n]

Pytanie: Czy istnieją dwie permutacje i σ dodatnich liczb 1 , 2 , . . . , n takie, że | π ( i ) - σ ( i ) | = A [ i ] dla 1 ≤ i ≤ n ?πσ1,2,...,n|π(i)−σ(i)|=A[i]1≤i≤n

Co jest zmniejszenie do udowodnienia -completeness rozpoznawania różnicy dwóch permutacji?NP

EDIT 09.10.2014 : Komentarz shor za daje redukcję co dowodzi -completeness gdy elementy sekwencji A są podpisane różnice. Jednak nie widzę łatwej redukcji mojego problemu, w którym wszystkie elementy A są bezwzględnymi wartościami różnic.NPAA

UPDATE: Problem Różnica wydaje się być permutacji -Complete nawet jeśli jeden z dwóch permutacji jest zawsze permutacji tożsamość. Dowód twardości tego specjalnego przypadku jest bardzo pożądany. Tak więc jestem zainteresowany kompletnością N P tej ograniczonej wersji:NPNP

Ograniczona permutacja Różnica: INSTANCJA: Tablica dodatnich liczb całkowitych.A[1...n]

PYTANIE: Czy istnieje taki permutacji dodatnich liczb 1 , 2 , . . . , n takie, że | π ( i ) - i | = A [ i ] dla 1 ≤ i ≤ n ?π1,2,...,n|π(i)−i|=A[i]1≤i≤n

Aktualizacja 2 : Ograniczony problem można skutecznie rozstrzygnąć, jak pokazuje odpowiedź mjqxxxx. Złożoność obliczeniowa pierwotnego problemu nie została udowodniona.

EDYCJA 9/6/16 : Jestem zainteresowany ustaleniem, czy to uproszczenie Różnicy Permutacyjnej jest NP-pełne:

Różnica w ograniczonej permutacji:

INSTANCJA : Multiset dodatnich liczb całkowitych.A

PYTANIE : Czy istnieje taki permutacji dodatnich liczb 1 , 2 , . . . , n takie, że A = { | π ( i ) - i | : 1 ≤ i ≤ n } ?π1,2,...,nA={|π(i)−i|:1≤i≤n}


Dlaczego nie zapytać bezpośrednio Piotra? @Peter
— caozhu

Czy masz na myśli przez e-mail? Zrobię to.
— Mohammad Al-Turkistany

Być może czegoś mi brakuje, ale czy nie można przedstawić tego problemu jako 2-SAT, a tym samym rozwiązać go w polityce czasowej? Możemy założyć WLOG, że jedną z permutacji jest tożsamość (zakładam tutaj, że A [i] jest obliczana cyklicznie; czy to ma duże znaczenie?), A następnie możemy przedstawić drugą macierz . Bycie macierzą permutacji jest koniunkcją zdań dwóch zmiennych stwierdzających, że żadne dwa nie leżą w rzędzie ani w kolumnie; a następnie stwierdzenie, że różnica w lokalizacjach pi (i) od i to A [i] to OR z dwóch możliwych miejsc, w których może się ona znajdować.x[i,j]
— Noam

@Noam Dziękujemy za komentarz. Ciekawy pomysł. Nie myślałem o tym. Jednak nie jest dla mnie oczywiste, czy doprowadzi to do algorytmu wielomianowego czasu, tym bardziej, że otrzymujemy tylko bezwzględną wartość różnic.
— Mohammad Al-Turkistany

1
Tak, wydaje się, że różnica między liczeniem luki cyklicznie lub w wartości bezwzględnej może mieć znaczenie.
— Noam

Odpowiedzi:


5

Ograniczony problemem, gdzie jednym z permutacji jest tożsamość, to z pewnością w . Zbuduj dwuczęściowy wykres, w którym każdy wierzchołek i ∈ V 1 = { 1 , 2 , … , n } jest połączony z elementem (ami) j ∈ V 2 = { 1 , 2 , … , n } tak, aby | i - j | = A [ i ] . Następnie żądana permutacja σPi∈V1={1,2,…,n}j∈V2={1,2,…,n}|i−j|=A[i]σistnieje wtedy i tylko wtedy, gdy wykres ma idealne dopasowanie (tj. dopasowanie z krawędziami), które można określić w czasie wielomianowym.n


Być może czegoś mi brakuje, ale idealne dopasowanie nie będzie działać. Musisz udowodnić istnienie ograniczonego idealnego dopasowania. Rozważmy całkowitą występujący dwukrotnie w wejściowym tablicy A . Idealne dopasowanie, które odpowiada permutacji, musi mieć dwie krawędzie z absolutną różnicą k . Twój algorytm NIE dowodzi istnienia takiego ograniczonego dopasowywania. To właśnie sprawia, że ​​problem jest trudny i prawdopodobnie NP-kompletny. kAk
— Mohammad Al-Turkistany

2
@ MohammadAl-Turkistany: Myślę, że jeśli to u i , u j ∈ V 1 są powiązane z węzłami v i + A [ i ] , v i - A [ i ] , v j + A [ j ] , v j - A [ j ] ∈ V 2A[i]=A[j]=kui,uj∈V1vi+A[i],vi−A[i],vj+A[j],vj−A[j]∈V2z różnicami bezwzględnymi . Idealne dopasowanie będzie obejmować co najmniej jedną krawędź u i jedną krawędź u j . Doszedłem do tego samego wniosku kilka razy temu, myśląc o pierwotnym problemie, ale w inny sposób: zobaczyłem, że łatwo jest sformułować ograniczony problem jako formułę 2-SAT (jeśli chcesz, mogę dodać odpowiedź z nim , ale pomysł mjqxxxx jest lepszy). kuiuj
— Marzio De Biasi,

@MarzioDeBiasi Dlaczego to podejście (i twoje) nie działa w przypadku pierwotnego (nieograniczonego) problemu?
— Mohammad Al-Turkistany,

@mjqxxx Widzę, że twoje podejście rozwiązuje ograniczony przypadek. Dlaczego nie można go rozszerzyć, aby skutecznie rozwiązać pierwotny problem?
— Mohammad Al-Turkistany,

@ MohammadAl-Turkistany: ponieważ w pierwotnym problemie elementy pierwszej permutacji ( jest w wersji ograniczonej) nie są naprawione, a stosując to samo podejście otrzymujesz wykres trójstronny (i w moim podejściu 2-SAT z a δ i ( n ) → ( π i ( n + A [ i ] ) ∨ π i ( n - A [ i ] ) ) klauzula ... która nie jest klauzulą ​​2-CNF). iδi(n)→(πi(n+A[i])∨πi(n−A[i]))
— Marzio De Biasi,

0

Oto dość interesująca odmiana, w której problem jest łatwy: zamiast zestawu podstawowego , zezwól na dowolny podzbiór { 1 , 2 , 4 , 8 , … } . Nadal celem jest znalezienie permutacji π , aby A = { | π ( 2 k ) - 2 k | : 2 k ∈ Ω } gdzie Ω{1,2,3,…,n}{1,2,4,8,…}πA={|π(2k)−2k|:2k∈Ω}Ωjest podstawą. Główną zaletą jest to, że nowy zestaw gruntu zmusza każdy element do 2 k 1 - 2 k 2 dla niektórych k 1 , k 2 , a jeśli k 1 ≠ k 2 , to k 1 i k 2 są przez to określone różnica. Wynika z tego, że dla każdej różnicy | 2 k 1 - 2 k 2 | w A możemy wywnioskować, że π ( 2 kA2k1−2k2k1,k2k1≠k2k1k2|2k1−2k2|A lubπ(2 k 2 )=2 k 1 (lub oba).π(2k1)=2k2π(2k2)=2k1

Skuteczne rozwiązanie tej uproszczonej odmiany jest więc mniej więcej rutynowe. Rozpocznij od skonstruowania dwukierunkowej multigrafii gdzie L i R są wyraźnymi kopiami zestawu podłoża i dodaj krawędzie ( 2 k 1 , 2 k 2 ) i ( 2 k 2 , 2 k 1 ) kiedykolwiek | 2 k 1 - 2 k 2 | pojawia się wG=(L⊔R,E)LR(2k1,2k2)(2k2,2k1)|2k1−2k2| z k 1 ≠ k 2 . Twierdzę, że następujące są równoważne:Ak1≠k2

  1. Istnieje permutacja z różnicami AπA
  2. Każdy wierzchołek w ma stopień 0 lub 2G

Tak naprawdę nie udowodnię tego z powodu czasu, ale nie jest tak źle, aby samemu to wypracować. Że jest proste. To 21⟹22⟹1GLRGGπLR

Możesz sformułować powyższy algorytm jako idealnie pasujące pytanie i wyobrażam sobie, że istnieją inne redukcje do 2-SAT. Nie wiem jednak, jak rozszerzyć te podejścia na pierwotny problem.

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.