Kemasan persegi panjang menjadi poligon cembung tetapi tanpa rotasi


23

Saya tertarik pada masalah pengemasan salinan identik persegi panjang (2 dimensi) menjadi cembung (2 dimensi) poligon tanpa tumpang tindih. Dalam masalah saya, Anda tidak diperbolehkan memutar persegi panjang dan dapat mengasumsikan bahwa mereka berorientasi paralel dengan sumbu. Anda hanya diberi dimensi persegi panjang dan simpul poligon dan ditanya berapa banyak salinan identik persegi panjang yang bisa dimasukkan ke dalam poligon. Jika Anda diizinkan untuk memutar persegi panjang masalah ini dikenal sebagai NP-keras saya percaya. Namun, apa yang diketahui jika Anda tidak bisa? Bagaimana jika cembung poligon hanyalah segitiga? Adakah algoritma perkiraan yang diketahui jika masalahnya memang NP-hard?

Ringkasan sejauh ini (21 Maret '11). Peter Shor mengamati bahwa kita dapat menganggap masalah ini sebagai salah satu kotak unit pengemasan dalam poligon cembung dan bahwa masalah tersebut ada di NP jika Anda memaksakan ikatan polinom pada jumlah kotak / persegi panjang yang akan dikemas. Sariel Har-Peled menunjukkan ada PTAS untuk kasus terikat polinomi yang sama. Namun, secara umum jumlah kotak yang dikemas dapat eksponensial dalam ukuran input yang hanya terdiri dari daftar pendek pasangan bilangan bulat. Pertanyaan-pertanyaan berikut tampaknya terbuka.

Apakah versi lengkap tidak terikat di NP? Apakah ada PTAS untuk versi tanpa batas? Apakah kasus yang dibatasi secara polinomi dalam P atau NPC? Dan favorit pribadi saya, apakah masalahnya lebih mudah jika Anda hanya membatasi diri untuk mengemas kotak unit menjadi segitiga?


Pengepakan dengan 1x3 persegi panjang adalah NP-lengkap (dengan rotasi) dan saya kira itu menjadi mudah jika kita melarang rotasi. Anda menemukan jumlah maksimum persegi panjang untuk setiap baris (atau kolom) dan menambahkannya untuk mendapatkan jumlah maksimum keseluruhan persegi panjang dikemas.
Mohammad Al-Turkistany

Saya tidak yakin memperbaiki dimensi menjadi 1x3 (atau apa pun) membantu terlalu banyak untuk masalah saya, bukan? Poligon cembung tidak harus memiliki sisi yang sejajar dengan sumbu dan Anda masih harus memutuskan di mana harus meletakkan persegi panjang. Anda dapat menempatkan mereka paling rendah di sumbu y terlebih dahulu kemudian dibenarkan ke kiri sebagai heuristik yang wajar tetapi Anda dapat membuat contoh dengan cukup mudah di mana ini tidak optimal.
Raphael

9
Anda dapat menerapkan transformasi affine untuk membuat semua persegi panjang . Jadi masalahnya setara dengan kotak pengemasan. 1×1
Peter Shor

1
@turkistany: Apakah Anda memberi saya referensi yang menunjukkan kelengkapan NP untuk 1x3 persegi panjang? Atau, apakah itu mudah diamati?
Yoshio Okamoto

3
Dengan mencari berdasarkan pengamatan Peter Shor, maven.smith.edu/~orourke/TOPP/P56.html muncul yang menarik. Namun tampaknya fokus pada poligon sederhana umum (yaitu mereka bisa cekung).
Raphael

Jawaban:


12

Masalahnya dapat diformulasi ulang sebagai memilih jumlah maksimum poin di dalam poligon cembung, sehingga setiap pasangan dari mereka berada dalam jarak (di bawah metrik) setidaknya 1 dari satu sama lain (hanya memikirkan pusat-pusat kuadrat) . Ini pada gilirannya terkait dengan masalah yang sama di mana seseorang menggunakan jarak Euclidean biasa. Hal ini pada gilirannya terkait dengan penyambungan, di mana seseorang tertarik untuk memecah poligon menjadi daerah yang berperilaku baik (yaitu, Anda mengambil diagram Voronoi dari pusat [lihat tessellations Centonoal Voronoi]).L.1

Lagi pula, -approximation cukup mudah. Anda secara acak menggeser kisi sidelength O ( 1 / ϵ ) . Jepitkan poligon ke dalam kisi-kisi, dan pecahkan masalah di dalam setiap irisan poligon dengan kisi-kisi menggunakan kekuatan kasar. Algoritma dengan waktu berjalan O ( M n o i s e ( ϵ ) ) harus mudah diikuti, di mana M adalah jumlah titik (yaitu, persegi panjang), dan n o i s e ( ϵ )(1-ϵ)HAI(1/ϵ)HAI(M.nHaisayase(ϵ))M.nHaisayase(ϵ)adalah beberapa fungsi menghebohkan yang hanya bergantung pada .ϵ


Terima kasih. Apakah saya benar dalam berpikir bahwa bahkan dalam kasus di mana kita memiliki ikatan polinomial pada jumlah persegi panjang / bujur sangkar, masih tidak jelas apakah masalahnya ada di P?
Raphael

1
Ini adalah 2 sen saya dari menebak / berspekulasi ... Akan mengejutkan jika itu ada di P - Anda perlu menunjukkan beberapa properti tambahan dari solusi optimal. Namun, dugaan saya adalah bahwa bukti formal dari kekerasan NP tidak terjangkau - masalahnya memiliki struktur terlalu banyak. Feder dan Greene menunjukkan bahwa pengelompokan k-center adalah NP-sulit untuk diperkirakan dalam faktor tertentu. Saya pikir / berspekulasi bahwa bukti mereka dapat digunakan untuk membuktikan bahwa masalah di atas adalah NP-Hard jika poligon memiliki lubang ...
Sariel Har-Peled

2

Dua makalah ini membahas masalah Anda:

EG Birgin dan RD Lobato, " pengemasan Orthogonal dari persegi panjang identik dalam daerah cembung isotropik ", Komputer & Teknik Industri 59, hal. 595-602, 2010. 

EG Birgin, JM Martínez, FH Nishihara dan DP Ronconi, " Pengemasan orthogonal dari barang-barang persegi panjang di dalam daerah cembung acak dengan optimasi nonlinear ", Computers & Operations Research 33, hlm. 3535-3548, 2006.

 


Makalah ini membahas pemecahan masalah dalam praktik. Sejauh yang saya tahu, pertanyaannya adalah menanyakan apakah masalahnya diketahui sebagai NP-hard.
András Salamon

3
Cukup mudah untuk menunjukkannya dalam NP. Misalkan saya memberi Anda diagram pengemasan optimal yang memberi tahu Anda kotak mana yang menyentuh sisi mana dari poligon, dan kotak mana di atas / di bawah / kiri / kanan kotak lainnya. Pertanyaan apakah Anda dapat menemukan koordinat untuk satu set kotak yang dikemas persis seperti itu adalah program linier, sehingga Anda dapat memverifikasi bahwa ini adalah diagram untuk pengemasan yang layak.
Peter Shor

4
Jika semua simpul poligon Anda adalah bilangan bulat (atau rasional), hasil standar pada program linier mengatakan bahwa Anda tidak perlu lebih dari jumlah polinom presisi ekstra, dan program linier dapat diselesaikan tepat dalam waktu polinomial. Mohon maaf jika Anda sudah tahu itu, tapi saya tidak bisa mengatakan dari komentar Anda di atas - dan bahkan jika Anda tahu, beberapa orang tidak akan tahu.
Peter Shor

2
Terima kasih. Aku memang tahu itu sekali, tapi itu baik untuk diingatkan. Tampaknya Anda juga dapat memiliki jumlah kotak yang eksponensial dalam poligon, jadi saya tidak yakin Anda dapat mencantumkan semuanya. Mungkin ada beberapa skala yang dapat Anda lakukan untuk menyelesaikan ini?
Raphael

3
@ Rafael: Saya berasumsi (tanpa pembenaran) bahwa Anda memiliki ikatan polinom pada jumlah kuadrat. Jika Anda mengizinkan poligon ukuran eksponensial, segalanya menjadi jauh lebih rumit.
Peter Shor

1

Peter Shor mengamati bahwa dengan men-rescaling, masalah ini menjadi tentang pengemasan kotak kuadrat menjadi poligon cembung.

Sunting: sisa jawaban ini tidak berlaku, karena menjatuhkan persyaratan yang dinyatakan secara eksplisit bahwa bentuk yang akan dikemas semuanya berukuran sama.


Pertanyaan terkait NP-Hardness dari kasus khusus masalah pengemasan orthogonal menyebutkan sebuah makalah dengan hasil yang diperlukan untuk pertanyaan pertama:

  • Kotak pengemasan menjadi bujur sangkar, Joseph YT. Leung, Tommy W. Tam, CS Wong, Gilbert H. Young, dan Francis YL Chin, Journal of Parallel and Distributed Computing 10 271–275. ( tautan )

Dari kertas:

kami menunjukkan bahwa masalah pengemasan kotak sangat lengkap dengan mengurangi masalah 3-partisi.

Karenanya masalahnya adalah NP-hard bahkan untuk kasus khusus di mana persegi panjang yang akan dikemas mirip dengan wadah. (Berbeda dengan penulis makalah ini, saya tidak sepenuhnya yakin bahwa masalahnya ada di NP, karena posisi mungkin harus ditentukan untuk sejumlah besar presisi, yang dapat menyebabkan verifikasi tidak lagi polinomial dalam ukuran input. )


5
Melihat kertas, dari diagram tampak bahwa kotak yang akan dikemas tidak semuanya berukuran sama.
Peter Shor

1
@ Peter: Anda benar, makalah ini tidak menyiratkan apa pun tentang masalah Raphaël.
András Salamon

0

Mungkin makalah ini dapat menarik bagi Anda:

Memasang poligon dengan persegi panjang oleh Kenyon & Kenyon di FOCS 92.


Terima kasih. Namun jika saya mengerti benar, ubin menutupi poligon dengan tepat. Ini hampir tidak akan pernah mungkin dalam kasus saya (pertimbangkan segitiga sembarang pada beberapa orientasi sewenang-wenang) yang tampaknya membuat masalah optimasi saya berbeda secara mendasar.
Raphael

memang, ini bukan masalah yang sama, kesalahan saya.
Sylvain Peyronnet

0

Jika poligon yang ingin Anda kemas belum tentu cembung, maka saya pikir masalahnya menjadi NP-hard. Ini bukti yang sangat samar. Pengurangan ini dari beberapa jenis masalah Planar-3-SAT. Untuk setiap variabel Anda dapat memiliki tempat 1,1 x 1, tergantung di mana di area ini Anda menempatkan satu kotak akan menentukan apakah variabel Anda benar salah. Juga, jika Anda meninggalkan 0,1 area kiri / kanan, maka Anda dapat memindahkan dua kotak lainnya sedikit lebih dalam, dan juga yang di belakang mereka, akhirnya memberikan 0,1 ruang kosong lain di tempat lain yang bersama-sama sekarang mempengaruhi empat kotak dan seterusnya. Setelah Anda memiliki salinan sebanyak kejadian literal masing-masing, Anda menghubungkan tabung ini ke masing-masing komponen klausa dan di sana lagi menggunakan beberapa gadget yang sama untuk memastikan bahwa dari tiga tabung ingoing setidaknya satu harus memiliki ruang ekstra .1


1
Ini kedengarannya masuk akal. Perhatikan bahwa Raphaël memberikan tautan dalam komentar maven.smith.edu/~orourke/TOPP/P56.html dengan penunjuk ke kertas dengan reduksi aktual.
András Salamon

Oh, saya belum perhatikan, thx.
domotorp
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.