Dapatkah seseorang secara efisien sampel tetangga simpul dalam grafik polytope?

15

Saya memiliki polytope didefinisikan oleh .P{x:Axb,x0}

Pertanyaan: Diberikan simpul dari , apakah ada algoritma waktu polinomial untuk sampel seragam dari tetangga dalam grafik ? (Polinomial dalam dimensi, jumlah persamaan, dan representasi . Saya dapat mengasumsikan bahwa jumlah persamaan adalah polinomial dalam dimensi.)vPvPb

Pembaruan: Saya pikir saya dapat menunjukkan bahwa ini NP-hard, lihat jawaban saya yang menjelaskan argumen. (Dan dengan -hard, maksud saya algoritma waktu polinomial akan membuktikan ... tidak yakin apa terminologi yang benar di sini.)NPRP=NP

Pembaruan 2: Ada bukti 2 garis -kekerasan (diberi politin kombinatorial yang tepat) dan saya dapat menemukannya artikel oleh Khachiyan. Lihat jawaban untuk deskripsi dan tautan. :-DNP


Masalah yang setara :

Dalam komentar-komentar Peter Shor menunjukkan bahwa pertanyaan ini setara dengan pertanyaan apakah kita dapat mengambil sampel secara seragam dari simpul-simpul sebuah polytope yang diberikan. (Saya pikir persamaannya seperti ini: Dalam satu arah, kita dapat beralih dari polytope dengan simpul ke angka simpul di , , dan mengambil sampel simpul setara dengan sampel tetangga) pada Di arah lain, kita dapat pergi dari polytope ke polytope dari satu dimensi yang lebih tinggi dengan menambahkan kerucut dengan apex dan basis Kemudian mengambil sampel tetanggaPvvP/vP/vvPPQvPv dalam setara dengan pengambilan sampel simpul )QP

Perumusan pertanyaan ini telah diajukan sebelumnya: /mathpro/319930/sampling-uniformly-from-the-vertices-of-a-polytope


Lorenzo Najt
sumber
Saya tidak tahu jawaban atas pertanyaan Anda, tetapi sepengetahuan saya, tidak ada kekerasan NP yang diketahui untuk secara seragam mencicipi verteks dari sebuah politek yang diberikan secara eksplisit. Misalnya, sekitar siklus pengambilan sampel adalah NP-hard. Namun, jika ada beberapa program linear yang simpulnya menyandikan siklus, maka sangat mungkin Anda dapat mengoptimalkan panjang siklus, dan dengan demikian menyelesaikan Hamiltonian-Cycle.
Heng Guo
Komentar lain adalah bahwa bahkan jika pertanyaan Anda memiliki jawaban positif, itu tidak menghasilkan sampler seragam untuk simpul (dengan asumsi dugaan 0-1 polytope). Kerangka polytope dalam kebanyakan kasus yang menarik tidak teratur, dan derajatnya dapat bervariasi secara eksponensial.
Heng Guo
@ HengGuo Terima kasih atas komentarnya lagi, mereka sangat membantu. Apakah Anda mengetahui contoh yang baik di mana derajat bervariasi secara eksponensial? (Saya tidak terkejut bahwa ini dapat terjadi untuk poltop umum; alangkah baiknya jika memiliki contoh kombinatorial jika mengetahui salah satu dari bagian atas kepala Anda.)
Lorenzo Najt
Pertimbangkan kumpulan politit independen dari grafik bipartit. Dua simpul (dua set independen) terhubung jika perbedaan simetrisnya menginduksi subgraf yang terhubung. Sekarang, ambil grafik bipartit yang satu sisi hanya memiliki dua simpul, terhubung ke setiap simpul di sisi lain dan v 2 hanya satu. Pertimbangkan perangkat independen { v 1 } dan { v 2 } . v1v2{v1}{v2}
Heng Guo
5
Pengambilan sampel yang seragam pada simpul-simpul yang berdekatan dari suatu titik tertentu dari suatu polytope adalah masalah yang sama dengan pengambilan sampel suatu titik acak dari suatu polytope secara seragam. Memotong kerucut yang sangat dekat dengan puncak. Seseorang kemudian memiliki polytope baru, dan jika Anda dapat mengambil sampel dari vertex baru ini, seseorang dapat mencicipi vertex tetangga dari polytope asli. Saya kira kira kira kira-kira ada di BPP, tapi saya tidak dapat menemukan kertas yang membuktikan hal ini.
Peter Shor

Jawaban:

4

Sunting 2: Secara memalukan, ada dua bukti garis NP -kekerasan, jika seseorang memulai dengan polytope kanan.

Pertama, ingat polytope sirkulasi grafik di bagian bawah halaman 4 dari Menghasilkan semua simpul polihedron adalah sulit .

Verteks-nya berada dalam korespondensi bijective dengan siklus sederhana yang diarahkan. Oleh karena itu, mereka sulit untuk sampel atau dihitung dengan JVV Proposition 5.1 . :-D

Dilengkapi dengan kata kunci ini, saya dapat menemukan kekerasan hasil pengambilan sampel sebagai teorema 1 dari Hypergraphs Transversal dan Keluarga Kerucut Polihedral oleh Khachiyan.


Sunting: Saya menulis argumen di bawah ini, dan tampaknya benar. Namun, ada argumen yang jauh lebih sederhana, yang akan saya uraikan di sini:

a) Dengan Analisis algoritma backtrack untuk daftar semua simpul dan semua wajah dari polyhedron cembung (Fukuda et al.) Sangat sulit untuk menyelesaikan masalah berikut pada polytopes:

Input: Polytope Ax=b,x0 dalam Rn a subset Sn

Output: Apakah ada simpul v dari P yang nol pada masing-masing koordinat di S .

b) Dengan ini, kita dapat membuat konstruksi berikut: memperkenalkan variabel baru yik untuk iS dan k=1,,d , dan memperkenalkan ketidaksetaraan 0yikxi . Sebut polytope yang dihasilkan PS,d . Inti dari konstruksi ini adalah untuk memperkenalkan hypercube di atas setiap sudut, dari dimensi d|supp(x)S|.

c) Seseorang dapat memeriksa bahwa simpul-simpul dari polytope ini semuanya terletak di atas simpul-simpul polytope lama, dan bahwa jumlah simpul di atas simpul adalah 2d|supp(x)S|, Di mana supp adalah fungsi yang mengirimkan vertex ke koordinat mana itu adalah nol.

d) Dengan rantai argumen tipe bigons yang biasa, maka dengan mengambil d cukup besar, sampel yang seragam dari simpul PS,d akan (dengan probabilitas tinggi) memberikan sampel dari simpul yang memaksimalkan ukuran persimpangan mereka dengan S .

Tampaknya ada berbagai ekstensi ini. Saya akan memperbarui dengan tautan ketika penulisan selesai.


(Argumen lama dulu ada di sini - itu ada dalam sejarah edit. Saya sudah menghapusnya karena sangat panjang dan akan mengganggu menemukan jawaban yang benar untuk pertanyaan itu.)

Lorenzo Najt
sumber
Ini argumen yang sangat menarik! Saya tidak sepenuhnya memeriksa semua detail di bagian 3) (apa fungsi , H 0 , l e a v e s ?), Tetapi pada prinsipnya, struktur non-spanning hanya dapat menimbulkan ledakan super eksponensial, yang sehingga dapat dikontrol dengan mengambil d polinomial besar. H1H0leavesd
Heng Guo
@HengGuo Terima kasih sudah membaca! Oleh Maksud saya jumlah komponen, dan | H 1 | dimensi ruang siklus (peringkat sirkuit), dan "meninggalkan" jumlah derajat 1 simpul. Saya akan menambahkan definisi tersebut. |H0||H1|
Lorenzo Najt
Pasti ada yang salah dengan ini. Jika ada polytope yang simpulnya adalah lassos dan siklus sederhana, tidak bisakah kita menggunakan pemrograman linier untuk memaksimalkan fungsi linear apa pun yang kita inginkan daripada polytope ini? Dan bukankah itu mari kita temukan laso rentang dalam waktu polinomial?
Peter Shor
@PeterShor Saya pikir ini tidak terjadi karena polytope tinggal di dalam hyperplane yang didefinisikan dengan mengatur jumlah variabel edge menjadi satu. Jadi fungsional itu konstan di atas polytope. Fungsi yang mewakili jumlah tepi adalah ukuran dukungan vektor, yang tidak linear pada polytope ini.
Lorenzo Najt
@ PeterShor Saya menambahkan bukti bahwa fungsi 'jumlah tepi' tidak bisa linier, lihat gambar di bagian bawah.
Lorenzo Najt