Saya ingin menghasilkan jalur terpendek ( akan kurang dari 10) antara semua pasangan dalam grafik. Grafiknya adalah (sebenarnya peta kereta bawah tanah):
- tertimbang positif
- tidak diarahkan
- jarang
- dengan sekitar 100 node
Rencana saya saat ini adalah untuk menerapkan rute jalur terpendek ke setiap pasangan; Saya sekarang mencari alternatif yang lebih efisien (mungkin dengan pemrograman dinamis).
algorithms
graphs
optimization
shortest-path
Franklin Yu
sumber
sumber
Jawaban:
Pertama-tama, perbedaan penting dalam menghitung jalur pendek adalah apakah jalurnya harus sederhana atau tidak. Path disebut simple , jika tidak mengandung node berulang kali. Jalur dengan loop, misalnya, tidak sederhana. Perhatikan bahwa pada halaman Wikipedia yang Anda tautkan, artikel-artikel tersebut berkaitan dengan jalur yang tidak harus sederhana. Kasus jalur sederhana tampaknya lebih sulit daripada kasus dengan jalur tidak selalu sederhana.k
Masalah all-pairs -pendek jalur sederhanak
Ini tampaknya merupakan bidang penelitian yang cukup muda. Sebuah makalah terbaru oleh Agarwal dan Ramachandran dapat ditemukan di ArXiv [1]. Bagian pekerjaan sebelumnya juga akan memberi Anda beberapa wawasan tentang sejarah masalah.
Masalah semua-pasangan jalur terpendekk
Di sini, memang, itu adalah pilihan terbaik untuk hanya berulang kali menerapkan algoritma Eppstein [2]. Pengamatan umum bahwa aplikasi berulang algoritma untuk versi sumber tunggal dari masalah adalah pendekatan tercepat sudah dibuat pada tahun 1977 oleh EL Lawler [3]; Eppstein menyediakan algoritma tercepat hingga saat ini untuk submasalah ini.
Referensi
[1] Agarwal, U. dan Ramachandran, V. Menemukan Jalur dan Siklus Terpendek yang Sederhana. arXiv: 1512.02157 [cs.DS] https://arxiv.org/pdf/1512.02157.pdfk
[2] Eppstein, D. Menemukan k jalur terpendek. Jurnal SIAM tentang Komputasi 28, 2 (1999), 652-673.
[3] Lawler, EL Mengomentari penghitungan k jalur terpendek dalam grafik. Komunikasi ACM, 20 (8): 603–605, 1977.
sumber