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]1in

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 Apodpisane 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]1in

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|:1in}

Mohammad Al-Turkistany
źródło
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 σPiV1={1,2,,n}jV2={1,2,,n}|ij|=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

mjqxxxx
źródło
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 jV 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,ujV1vi+A[i],viA[i],vj+A[j],vjA[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(nA[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 1k 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 kA2k12k2k1,k2k1k2k1k2|2k12k2|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=(LR,E)LR(2k1,2k2)(2k2,2k1)|2k12k2| z k 1k 2 . Twierdzę, że następujące są równoważne:Ak1k2

  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 21221GLRGGπ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.

Andrew Morgan
źródło