Bisakah Santa adil dan efisien?

8

Ketika jaring Fisika Sinterklas terbentuk, secara fisik mustahil bagi Santa untuk mendapatkan hadiah bagi setiap anak di planet ini. Perencanaan rute tidak akan banyak membantu di sana, tetapi bisakah algoritma perencanaan yang baik setidaknya memastikan bahwa setiap anak sesekali mendapat hadiah sementara Santa juga melayani sebanyak mungkin anak setiap tahun?


Pertimbangkan grafik lengkap dengan bobot nyata, positif, dan konstan k. Kami ingin menyelesaikan varian masalah Travelling Sales Person:

Apakah ada rute panjang melingkar paling banyak k yang melayani lebih dari m simpul?

Versi optimasinya adalah:

Maksimalkan jumlah node yang bisa dilayani dengan rute melingkar paling panjang k.

Ini dimotivasi oleh keterbatasan dunia nyata pada rute: Santa memiliki satu malam untuk mengirimkan hadiah sebanyak mungkin, seorang tenaga penjualan memiliki delapan jam untuk rute satu hari, dan sebagainya.

Pertanyaan pertama, tetapi bukan yang terakhir: seberapa sulit masalah ini? Mari kita asumsikan kita bisa mulai dari node mana saja, tetapi itu seharusnya tidak membuat terlalu banyak perbedaan.

Sekarang, untuk memodelkan keadilan, mari kita asumsikan ada N node dan kami dapat mengunjungi paling banyak Mdengan setiap tur. Idealnya, kami ingin agar setiap node dikunjungitMN kali melintasi ttur yang efisien. Karena mungkin ada simpul kemacetan yang harus dikunjungi lebih sering untuk memastikan rute mengunjungi banyak node, beberapa mau tidak mau harus dikunjungi lebih jarang. Itu juga mengecualikan perkiraan sepele dari menghapus node yang pernah dikunjungi sampai semua telah dikunjungi.

Jadi, inilah pertanyaan terakhir. MembiarkanTmenjadi jumlah tur yang diperlukan sampai semua node dikunjungi secara efisien k-waktu. Bagaimana kita secara algoritmik menentukan nilai minimalT(dan semua rute yang diperlukan)? Seberapa kompleks masalah ini?

Saya kira ini benar-benar masalah multi-kriterial: setiap tur harus mengunjungi sebanyak mungkin node sementara kami ingin menjaga tur tetap terpisah.

Raphael
sumber
2
Santa sungguhan menggunakan sihir yang baik untuk menyelesaikan masalah NP-complete di O(1)waktu. Jika Anda memiliki contoh 3DM yang sulit yang harus Anda selesaikan pada akhir tahun, cobalah menulis kepadanya di kutub utara, dan jika Anda telah menjadi peneliti kecil yang baik, dia mungkin akan memberikan jawaban Anda pada Natal.
Mark Dominus

Jawaban:

5

Saya sedikit bingung. Jikak adalah konstanta, maka Anda dapat mencoba semua O(nk)kemungkinan tur. Karenanya masalahnya ada diP.

Namun, jika k merupakan bagian dari input, masalah keputusan adalah NP-lengkap. Ini dapat ditunjukkan dengan mengurangiHAM-CIRCUIT untuk masalah ini, dengan pengurangan berikut.

Anggaplah kita ingin menentukan apakah a ngrafik -vertex Gmemiliki sirkuit Hamilton. Lalu kita ambil grafik lengkapKn dengan fungsi jarak berikut

wij:={1if (vi,vj) is an edge in G2otherwise.
Selanjutnya kita pilih k=n dan m=n1.

Biarkan saya memberi tahu Anda mengapa ini pengurangan. JikaG memiliki sirkuit Hamilton, lalu ada tur di Kn dengan panjang n. Dengan kata lain rute panjang melingkarn itu berfungsi >(n1)node. Di sisi lain, jika ada tur Santa yang mengunjungi>(n1)node harus mengunjungi semua node. Karena Santa-tour hanya dapat memiliki panjangn dan setiap panjang tepi setidaknya 1, semuanya n Tepi dalam tur ini memiliki panjang 1. Karenanya tur ini sesuai dengan sirkuit Hamiltonian di G.

A.Schulz
sumber
Ini benar untuk menemukan satu tur dengan banyak node, tetapi bukankah tujuan tambahan dan bersaing untuk mengunjungi semua node dengan beberapa tur mempersulit?
Raphael