Chciałbym znaleźć algorytm wielomianowy, który określa, czy rozpiętość danego zestawu macierzy zawiera macierz permutacji.
Jeśli ktoś wie, czy ten problem ma inną klasę złożoności, byłoby to równie pomocne.
EDYCJA: Oznacziłem to pytanie za pomocą programowania liniowego, ponieważ mam poważne podejrzenia, że gdyby istniało takie rozwiązanie, byłby to rodzaj algorytmu programowania liniowego. Uważam, że powodem tego jest to, że skrajnymi punktami polytopu Birkhoffa są właśnie matryce permutacyjne. Jeśli możesz następnie znaleźć funkcję celu, która jest albo zmaksymalizowana, albo zminimalizowana tylko na wierzchołkach polytopu Birkhoffa, możesz ograniczyć swoją funkcję do przecięcia polytopu i podprzestrzeni wektora, a następnie zmaksymalizować ją w czasie wielomianowym. Gdyby ta wartość była macierzą permutacji, wiedziałbyś, że zestaw zawiera permutację. To są moje przemyślenia na ten temat.
EDYCJA 2: Po dłuższej refleksji wydaje mi się, że macierze permutacji są właśnie elementami polytopu Birkhoffa z normą euklidesową , uważamy, że polytop Birkhoffa jest wypukłym kadłubemmatryc permutacyjnych. Być może to może być również znaczące.
EDYCJA 3: Dodałem znacznik programowania półfinałowego, ponieważ po moim poprzednim komentarzu zaczynam myśleć, że rozwiązanie programowania półfinałowego może być możliwe, ponieważ jest to teraz liniowo ograniczony algorytm kwadratowej optymalizacji.
źródło
Odpowiedzi:
Oczywiście wynika z tego, że mało prawdopodobne jest, aby problem zawierał algorytm wieloczasowy, zgodnie z żądaniem op.
Oto intuicja. Problem w poście jest
Jest to w zasadzie to samo co
To z kolei jest takie samo jak
Zmniejszenie sumy częściowej do tego drugiego problemu jest standardowym ćwiczeniem.
Oto szczegółowy dowód.
Zdefiniuj następujący problem pośredni:
Udowodnienie, że jest to standardowe zadanie domowe. Dowód jest na końcu.
Dowód lematu 2. Naprawić sumę dopasowującą: pełny wykres dwudzielny z nieujemnymi wagami całkowitymi krawędzi w : U × V → N + i docelowym T ∈ N + , gdzie U = { u 1 , … , u n } i V = { , j ∈ { 1 , 2 , … , nG = ( U, V, E) w : U× V.→ N.+ T.∈ N.+ U= { u1, … , Un} . Dla każdego IV.= { v1, … , Vn} , zdefiniuj M ( i j ) jako macierz w R ( n + 1 ) × ( n + 1 ) gdzie M ( i j ) i j = T i M ( i j ) n + 1 , n + 1 = w ( ui , j ∈ { 1 , 2 , … , n } M.( i j ) R( n + 1 ) × ( n + 1 ) M.( i j )I j= T , a wszystkie inne wpisy są zerowe. Redukcja generuje następujący zestaw macierzy:
{ M ( i j ) : i , j ∈ { 1 , … , n } } .
To określa redukcję.M.( i j )n + 1 , n + 1=w(ui,vj)
Roszczenie. Rozpiętość tego zestawu matrycy składa się z tych macierzy , spełniającego liniowe ograniczenia M H , n + 1 = M n + 1 , h = 0 dla wszystkich h ≤ n i ograniczenie linioweM∈R(n+1)×(n+1) Mh,n+1=Mn+1,h=0 h≤n
( Potwierdzenie według zastrz. Poprzez kontrolę każdej macierzy w zestawie spełnia te ograniczenia, aby każdy liniową kombinacją tych macierzy nie. Z drugiej strony, jeśli M ∈ R ( n + 1 ), x ( n + 1 ) spełnia ograniczeń , następnie M równa się kombinacji liniowej M ′ = ∑ n i = 1 ∑ n j = 1 ) macierzy, gdzie α i jM.( i j ) M.∈ R.( n + 1 ) × ( n + 1 ) M. M.′= ∑ni = 1∑nj = 1αI jM.( i j ) . Należy zauważyć w szczególności, że według różnych definicji i ograniczeń liniowych
M ′ n + 1 , n + 1 = ∑ i j α i j w ( u i ,αI j= M.I j/ M( i j )I j= M.I j/ T
To potwierdza roszczenie.)
Teraz pokazujemy, że redukcja jest poprawna. Oznacza to, że dany wykres ma dopasowanie wagi T wtedy i tylko wtedy, gdy zbiór macierzy obejmuje macierz permutacji.sol T.
( Tylko jeśli. ) Najpierw załóżmy, że podany wykres ma T- idealne dopasowanie M ′ . Niech K ∈ { 0 , 1 } ( n + 1 ), x ( n + 1 ) jest odpowiednia n x n macierzy permutacji, z dodatkowego rzędu i kolumny dodaje się tak, że M n + 1 , n + 1 = 1 i M H , n +sol T. M.′ M.∈ { 0 , 1 }( n + 1 ) × ( n + 1 ) n × n M.n + 1 , n + 1= 1 dla wszystkichh≤n. Zatem ∑ n i = 1 ∑ n j = 1 M i j w( u i , v j )jest wagą M ′ , to znaczyTi M n + 1 , n + 1 =1M.h , n + 1= M.n + 1 , godz= 0 h ≤ n ∑ni = 1∑nj = 1M.I jw ( uja, vjot) M.′ T. M.n + 1 , n + 1= 1 Tak liniowe ograniczenia w ładowni zastrzeżeń oraz rozpiętość dany zestaw matryc zawiera macierz permutacji .M.
( If. ) Z drugiej strony, załóżmy, że przedział zawiera elementy macierzy permutacji . Przy żądaniu tylko niezerowej wejścia w wierszu n + 1 lub kolumny n + 1 to M n + 1 , n + 1 , to (a M jest macierzą permutacji) musi być tak M n + 1 , n + 1 = 1 . Zatem usunięcie ostatniego wiersza i kolumny daje macierz permutacji n × n . Niech M ' być idealne dopasowanieM. n + 1 n + 1 M.n + 1 , n + 1 M. M.n + 1 , n + 1= 1 n × n M.′ odpowiadające temu n × nsol n × n macierzy permutacji . Masa jest Σ n i = 1 Ď n j = 1 K i J W ( U I , v j ) , który (z zastrzeżeń) jest T M n + 1 , n + 1 = T . Tak więc podany wykres ma dopasowanie wagi T , co dowodzi lematu 2. ◻M.′ ∑ni = 1∑nj = 1M.I jw ( uja, vjot) T.M.n + 1 , n + 1= T T. □
Oto opóźniony dowód na Lemat 1:
Dowód lematu 1. Biorąc pod uwagę instancję sumy częściowej , redukcja generuje instancję sumy dopasowania ( G = ( U , V , E ) , T ), gdzie U = { u 1 , u 2 , … , u 2 n } , V = { v 1 , v 2 ,(w,T)∈Nn+×N+ (G=(U,V,E),T) U={u1,u2,…,u2n} V={v1,v2,…,v2n} dla każdego , krawędź ( U I , V i ) ma masę w I , a wszystkie pozostałe krawędzie mają ciężar wynosił zero.i∈{1,…,n} (ui,vi) wi
For any perfect matching with edge weights summing toT , the set S={i:(ui,vi)∈M,i≤n} is a solution to the given Subset-Sum instance (as these are the only non-zero weight edges in M ).
p.s. As an aside, according to this answer, the restriction of Matching-Sum to instances with polynomially-bounded edge weights is in P. But I'm sure that the restriction of the problem in the post to matrices with polynomially-bounded (integer) entries remains NP hard.
źródło
Regarding the problem of computing the diameter of a polytope presented as the intersection of halfspaces, the problem is NP-hard in general, and also NP-hard to approximate within any constant factor, see Brieden's paper and references therein. I think for centrally symmetric polytopes, an SDP gives anO(logm−−−−−√) approximation where m is the number of inequalities defining the polytope. I sketch this below the line.
In your case the Birkhoff polytopeP is not centrally symmetric, but working with the convex hull of P and −P suffices for your purposes. I think this "symmetric Birkhoff" polytope can be represented as the set of all square matrices M that satisfy:
If this is a correct representation (not sure), then you can just add the constraints that restrict this polytope to your given subspace. It is not hard to adapt the SDP below the line to this representation, but I choose not to go through it in order to keep notation managable.
I am not sure what approximate diameter does for your problem: it probably lets you decide if the given subspace is close to a permutation matrix or far from all of them, but I have not worked out the calculations.
Let me finish with a sketch of the SDP rounding (which is fairly standard fare). LetP={x:−b≤Ax≤b} be a centrally symmetric polytope, where A is m×n . Zdefiniuj program wektorowy:
z zastrzeżeniem:
Wyżejvja zasięg powyżej n wektory wymiarowe. Można to zapisać jako SDP w standardowy sposób i jest to rozluźnienie średnicyP. , tj α jest co najmniej średnicą euklidesową P. .
Teraz to twierdzęα ≤ O ( logm-----√) ⋅ diam ( P) . Aby to pokazać, dam ci algorytm, który, biorąc pod uwagę( vja)ni = 1 wartości α , wyjścia x ∈ P co najmniej długości αO ( logm√) . The algorithm is just a random projection: pick a random n -dimensional vector g where each gi is a standard gaussian. Set x~i=gTvi . By standard properties of gaussians:
The two equations already imply there exists anx such that x∈P and ∥x∥22≥1Clogm√α . Lub używając granic stężenia, możesz to pokazać ze stałym prawdopodobieństwem12 C.logm√x~∈ P. i ∥ x~∥2)≥ 12)α .
źródło