Jika dua orang tersesat dalam labirin, adakah algoritma yang bisa mereka gunakan untuk menemukan satu sama lain tanpa sebelumnya sepakat algoritma apa yang akan mereka gunakan?
Saya pikir ada beberapa karakteristik yang dimiliki algoritma ini:
- Setiap orang harus dapat menurunkannya dengan menggunakan logika yang tidak membuat asumsi tentang apa yang diputuskan orang lain, tetapi karena setiap orang tahu yang lain berada di posisi yang sama, mereka dapat membuat kesimpulan tentang apa yang harus diputuskan oleh orang lain.
- Algoritma yang identik harus diturunkan oleh kedua orang karena ada simetri total dalam situasi mereka (tidak ada yang memiliki pengetahuan tentang posisi awal yang lain, dan labirin adalah ukuran yang tetap, dan sepenuhnya dipetakan oleh keduanya). Perhatikan bahwa algoritma tidak harus bersifat deterministik: diizinkan untuk diacak.
Jawaban:
Ini disebut masalah pertemuan .
Seperti makalah: Mobile Agent Rendezvous: Sebuah Survei menyebutkan, masalah ini asli yang diajukan oleh Alpern: Masalah Pencarian Rendezvous :
Dalam makalah survei di atas,
Ini mencakup "Asymmetric Rendezvous" (dalam Bagian 4) dan "Symmetric Rendezvous" (dalam Bagian 5).
Untuk pertemuan simetris, makalah oleh Alpern menunjukkan:
sumber
Sebenarnya setiap skema yang telah diatur sebelumnya akan dilakukan.
Sebagai contoh:
Atau bahkan lebih sederhana
Skema ini akan menjamin bahwa orang-orang akan bertemu pada akhirnya (tetapi mungkin perlu waktu)
Mengapa? Karena skema ini konsisten untuk keduanya dan tidak mengarah ke jalan buntu. Jadi karena labirin terbatas dan terhubung, setelah waktu terbatas mereka akan bertemu.
Jika skema ini tidak konsisten, tidak ada jaminan mereka akan bertemu karena mereka dapat menghasilkan loop tertutup.
Jika mereka memiliki kecepatan yang sama maka tergantung pada arsitektur labirin, misalnya labirin siklik, maka ada kemungkinan mereka selalu dapat berada di titik-titik anti-diametris dari labirin, karenanya tidak pernah bertemu, meskipun skema konsisten.
Jelas dari uraian di atas bahwa skema tersebut perlu diatur sebelumnya, tetapi skema pra-pengaturan yang konsisten akan dilakukan.
Orang lain dapat mengandalkan analisis probabilistik dan menyimpulkan bahwa dengan probabilitas besar mereka akan bertemu, tetapi probabilitas ini tidak satu (yaitu dalam semua kasus).
Satu juga dapat mempertimbangkan kebalikan dari masalah pertemuan , masalah penghindaran di mana tujuannya adalah untuk agen untuk selalu menghindari satu sama lain .
Solusi untuk masalah penghindaran adalah agar para agen mencerminkan satu sama lain secara tepat. Artinya, apa yang dilakukan oleh satu agen yang lain harus mencerminkan hal itu. Karena masalah penghindaran juga memiliki solusi , jelas bahwa strategi untuk masalah pertemuan yang dapat mengarah pada perilaku refleksi agen, tidak dapat menjamin solusi.
Orang dapat mengatakan bahwa strategi untuk masalah penghindaran adalah paralelisasi (yaitu titik divergen maksimum) sedangkan strategi untuk masalah pertemuan adalah ortogonal (yaitu titik paling tidak konvergen)
Analisis di atas dapat diubah menjadi algoritma acak yang tidak mengambil peran yang sudah diatur sebelumnya untuk agen, seperti berikut:
Ini rata-rata akan menyebabkan orang akhirnya bertemu, tetapi tidak dijamin dalam semua kasus.
Jika kita mengasumsikan bahwa agen dapat meninggalkan jejak , misalnya label arah dan kecepatan (saat ini) mereka. Kemudian, agen lain, dapat menggunakan jejak ini sebagai informasi untuk menyesuaikan arah dan kecepatannya sendiri (lihat di bawah).
Masalah seperti ini adalah contoh pengoptimalan global yang hanya menggunakan informasi lokal . Atau, dengan kata lain, cara memetakan hambatan global terhadap kendala lokal . Masalah ini, yang lebih umum, (yang merangkum masalah pertemuan) dibahas dalam pos math.se ini (dan referensi di dalamnya) "Metode untuk menerjemahkan kendala global ke kendala lokal"
sumber