Apakah ada algoritma waktu polinomial untuk menentukan apakah rentang satu set matriks berisi matriks permutasi?


30

Saya ingin mencari algoritma waktu polinomial yang menentukan apakah rentang set matriks yang diberikan berisi matriks permutasi.

Jika ada yang tahu jika masalah ini dari kelas kompleksitas yang berbeda, itu akan sangat membantu.


EDIT: Saya telah menandai pertanyaan ini dengan Linear Programming, karena saya memiliki kecurigaan yang kuat bahwa jika solusi seperti itu ada, itu akan menjadi semacam algoritma pemrograman linier. Alasan saya percaya ini adalah karena titik-titik ekstrim dari polytope Birkhoff adalah matriks permutasi. Jika Anda kemudian dapat menemukan fungsi objektif yang dimaksimalkan atau diminimalisasi hanya pada simpul-simpul dari Birkhoff polytope, Anda dapat membatasi fungsi Anda ke persimpangan polytope dan subruang vektor Anda, kemudian memaksimalkannya dalam waktu polinomial. Jika nilai ini adalah matriks permutasi, Anda akan tahu set berisi permutasi. Itulah pemikiran saya tentang masalah ini.


EDIT 2: Setelah beberapa pemikiran lagi, tampak bagi saya bahwa matriks permutasi adalah unsur-unsur dari Birkhoff Polytope dengan norma Euclidean n , kita mempertimbangkan polytope Birkhoff menjadi convex hull darin×nmatriks permutasi. Mungkin itu juga penting.


EDIT 3: Saya menambahkan tag pemrograman semidefinite, karena setelah komentar saya sebelumnya, saya mulai berpikir bahwa solusi pemrograman semidefinite mungkin dilakukan karena sekarang algoritma optimasi kuadratik dibatasi linear.


2
Apa jenis entri yang akan dimiliki matriks input?

Entri bisa di bidang apa pun, ada beberapa kebebasan dalam cara mengatur matriks; namun, Anda menginginkan bidang yang cukup besar (jadi bidang karakteristik 2 tidak akan bagus misalnya).
Nick

Bisakah menjelaskan berapa rentang dari satu set matriks?
Mohammad Al-Turkistany

Mohammad: Saya pikir ini adalah kombinasi linear dari serangkaian matriks.
Vivek Bagaria

4
@ DavidvidRicherby Saya pikir kebingungan Mohammad berasal dari fakta bahwa biasanya kita menganggap matriks mewakili peta linier, dan rentang peta linear kadang-kadang digunakan sebagai istilah lain untuk jangkauannya. Tapi itu tidak masuk akal di sini, jadi saya kira kita berpikir matriks sebagai elemen ruang vektor
Sasho Nikolov

Jawaban:


5

Dalil. Masalah dalam posting adalah NP-hard, dengan reduksi dari Subset-Sum.

Tentu saja karena masalahnya tidak mungkin memiliki algoritma poli-waktu seperti yang diminta oleh op.


Inilah intuisinya. Masalah dalam pos adalah

  • Apakah ada matriks permutasi dalam rentang satu set matriks?

Ini pada dasarnya sama dengan

  • Apakah ada matriks permutasi yang (menganggap matriks sebagai vektor) memenuhi beberapa batasan linear yang diberikan?

Ini pada gilirannya sama dengan

  • Apakah ada pencocokan sempurna (dalam grafik bipartit lengkap) yang vektor kejadiannya memenuhi beberapa batasan linear yang diberikan?

Mengurangi Subset-Jumlah ke masalah terakhir adalah latihan standar.

Ini bukti terperinci.


Definisikan masalah antara berikut:

Matching-Sum:

G=(U,V,E)T

GT


Lemma 1 . Subset-Sum poly-time dikurangi menjadi Matching-Sum.

Membuktikan ini adalah latihan pekerjaan rumah standar. Buktinya ada di akhir.

Lemma 2. Matching-Sum poly-time berkurang menjadi masalah pada postingan.

G=(U,V,E)w:U×VN+TN+U={u1,,un}V={v1,,vn}i,j{1,2,,n}M(ij)R(n+1)×(n+1)Mij(ij)=TMn+1,n+1(ij)=w(ui,vj)

{M(ij):i,j{1,,n}}.

MR(n+1)×(n+1)Mh,n+1=Mn+1,h=0hn

i=1nj=1nMijw(ui,vj)=TMn+1,n+1.

M(ij)MR(n+1)×(n+1)MM=i=1nj=1nαijM(ij)αij=Mij/Mij(ij)=Mij/T

Mn+1,n+1=ijαijw(ui,vj)=ijMijw(ui,vj)/T=(TMn+1,n+1)/T=Mn+1,n+1.

GT

GTMM{0,1}(n+1)×(n+1)n×nMn+1,n+1=1Mh,n+1=Mn+1,h=0hni=1nj=1nMijw(ui,vj)MTMn+1,n+1=1M

Mn+1n+1Mn+1,n+1MMn+1,n+1=1n×nMGn×nMi=1nj=1nMijw(ui,vj)TMn+1,n+1=TT  

Inilah bukti tertunda dari Lemma 1:

(w,T)N+n×N+(G=(U,V,E),T)U={u1,u2,,u2n}V={v1,v2,,v2n}i{1,,n}(ui,vi)wi

TS={i:(ui,vi)M,in}M

S{1,,n}iSwi=T{(ui,vi):iS}TT

{(ui+n,vi+n):iS}i{1,,n}S{(ui,vi+n),(ui+n,vi)}.

   


ps Sebagai tambahan, menurut jawaban ini , pembatasan Matching-Sum untuk instance dengan bobot tepi terikat polinomi ada di P. Tapi saya yakin bahwa batasan masalah di pos ke matriks dengan terikat secara polinomial (bilangan bulat ) entri tetap NP sulit.


2
Sepertinya Anda mengambil lambung cembung dari matriks daripada rentang. Rentang matriks yang Anda gambarkan adalah ruang penuh matriks. Atau apakah saya melewatkan sesuatu?
Vanessa

@Quark, Anda benar - saya salah menafsirkan "span". Terima kasih. Saya mengoreksi bukti untuk menggunakan definisi rentang yang benar (seperti kombinasi linear dari matriks.)
Neal Young

M(ij)w(ui,vj)

Poin bagus tentang membagi dengan nol. Saya akan memperbaikinya. Saya akan meninggalkan dua pengurangan terpisah, bagi saya itu lebih intuitif seperti itu.
Neal Young

3

O(logm)m

PPPM

i,j:iMij=jMij=c

i,j:1Mij1

1c1

Jika ini adalah representasi yang benar (tidak yakin), maka Anda bisa menambahkan batasan yang membatasi polytope ini untuk subruang yang Anda berikan. Tidak sulit untuk menyesuaikan SDP di bawah garis dengan representasi ini, tetapi saya memilih untuk tidak melewatinya untuk menjaga agar notasi dapat dikelola.

Saya tidak yakin apa perkiraan diameter untuk masalah Anda: ini mungkin memungkinkan Anda memutuskan apakah subruang yang diberikan dekat dengan matriks permutasi atau jauh dari semuanya, tapi saya belum menghitung perhitungannya.


P={x:bAxb}Am×n

α2=maxi=1nvi22

tunduk pada:

1im:j=1nAijvj22bi2

Di atas rentang atas -dimensi vektor. Hal ini dapat ditulis sebagai SDP dalam cara standar dan merupakan relaksasi dari diameter , yaitu setidaknya diameter euclidean dari .vinPαP

Sekarang saya mengklaim bahwa . Untuk menunjukkan ini, saya akan memberi Anda algoritma yang, diberikan dari nilai , menghasilkan panjang setidaknya . Algoritme hanyalah proyeksi acak: pilih vektor -dimensi acak di mana setiap adalah gaussian standar. Set . Menurut sifat standar gaussians:αO(logm)diam(P)(vi)i=1nαxPαO(logm)nggix~i=gTvi

E x~22=α2
im:E |(Ax~)i|2bi2    E maxi=1m|(Ax~)i|biClogm.
di mana ikatan terakhir berlaku untuk cukup besar (ini adalah fakta standar tentang maksimum variabel acak subguassian , dan dapat dibuktikan menggunakan ikatan Chernoff).Cm

Dua persamaan sudah menyiratkan ada sehingga dan . Atau, menggunakan batas konsentrasi, Anda dapat menunjukkan bahwa dengan probabilitas konstan dan .xxPx221Clogmα12Clogmx~Px~212α

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.