DAG reachability dengan O (n log n) ruang dan O (log n) -waktu permintaan?

17

Untuk grafik asiklik diarahkan , apakah ada struktur data yang memungkinkan untuk permintaan reachability tanpa memerlukan ruang kuadrat atau waktu linier? Idealnya saya mencari algoritma yang hanya menggunakan O (log n) ruang per titik dan waktu logaritmik diV,E mana .n=|V|+|E|

Tampaknya secara intuitif jelas bagi saya bahwa struktur data seperti ini harus ada, berdasarkan beberapa generalisasi dari algoritma pengurutan standar. Tetapi saya terkejut bahwa saya tidak dapat menemukannya. Segala sesuatu yang saya temui baik membuat asumsi tentang grafik (misalnya planaritas) atau memecahkan masalah yang lebih sulit dalam waktu kuadrat / ruang (misalnya pertanyaan yang diselingi dengan modifikasi grafik).

The Wikipedia halaman di Reachability hanya mencakup satu algoritma umum (Floyd-Warshall); sisa halaman berhubungan dengan kasus-kasus khusus yang melibatkan asumsi-asumsi seperti grafik planar (bukan).

Makalah yang paling sering dikutip dalam ruang ini tampaknya efisiensi yang diamortisasi dari struktur pengambilan jalur , tetapi ini dan semua makalah yang dikutipnya melibatkan ruang O (n ^ 2) atau waktu O (n ^ 2) untuk memungkinkan pembaruan pada grafik yang disatukan dengan permintaan (yaitu tidak ada preprocessing).

Pertanyaan ini tidak dijawab, tetapi ini berhubungan dengan masalah yang lebih sulit yaitu mengizinkan penyisipan tepi yang disatukan dengan permintaan.

Pertanyaan ini menanyakan struktur data persisten (murni fungsional), yang tidak diperlukan di sini. Kertas "Succinct Posets" membutuhkan ruang tetapi berhasil mencapai O ( 1 ) -waktu permintaan; Saya mencari algoritma waktu yang lebih buruk, lebih baik.HAI(n2)HAI(1)

Sebagian besar mencari pijakan dalam literatur di sini. Jika ada makalah survei tentang jangkauan grafik yang tidak menghabiskan 99% waktunya pada kasing planar, itu akan membantu.

pengguna4718
sumber
Terima kasih atas tautan RB. Pertanyaan itu dan jawaban pertama tidak berurusan dengan ruang (kecuali penyebutan singkat tentang ruang-kuadrat terikat, yang mana pertanyaan ini mencari perbaikan atas). Jawaban kedua menyinggung hasil negatif untuk kueri jarak (yaitu bilangan bulat atau bernilai nyata) daripada keterjangkauan (yaitu {0,1} -nilai) yang merupakan masalah yang lebih mudah. Terimakasih Meskipun!
user4718
Routing pintas, atau referensi yang disebutkan oleh Christian Sommer pada pertanyaan terkait, mungkin berhasil dalam praktiknya. Apakah Anda mencari pendekatan praktis atau batas bawah teoretis?
András Salamon
6
n2kamuv

Jawaban:

3

Lihat "label interval" dan "label 2-hop" yang tampaknya cukup efisien dalam praktiknya, baik dalam waktu maupun ruang, dan dapat memberikan apa yang Anda inginkan. Secara umum ada banyak skema "reachability indexing" untuk DAG.

Jkff
sumber