Post on 25-Jun-2015
description
. . . . . .
Contraction HierarchiesFaster and Simpler Hierarchical Routing in Road
NetworksGeisberger, Sanders, Schultes, and Delling (Universitat Karlsruhe)παρουσίαση από Αμαξηλάτη ΔημήτριοComputer Engineering and Informatics DepartmentPatras Greece
.
. . . . . .
ΠρόβλημαΒέλτιστες Διαδρομές
Προσδιορισμός βέλτιστων διαδρομών σε οδικά δίκτυα.▶ αραιά γραφήματα (δρόμοι→ ακμές, διασταυρώσεις→ κορυφές),▶ ιεραρχικής φύσης των οδικών δικτύων,▶ ανάγκη για γρήγορη αναζήτηση (άμεση πλοήγηση).
.
. . . . . .
ΠρόβλημαΣχετικές Εργασίες
▶ Μείωση κορυφών.▶ Μείωση ακμών.▶ Μεγάλο κόστος προ-επεξεργασίας στο αρχικό γράφημα.▶ Χρήση Highway-κόμβων για την δρομολόγηση.
.
. . . . . .
ΠρόβλημαΒήματα του αλγορίθμου
1. Διάταξη των κορυφών.2. Προσθήκη παρακάμψεων στο γράφημα.3. Δημιουργία υπογραφημάτων G↑, G↓ για ευκολότερη αναζήτηση.4. Εύρεση διαδρομής μέσω της αναζήτησης στα G↑, G↓.
.
. . . . . .
ΠαρακάμψειςΣυρρίκνωση Κορυφών
.Διαδρομές της μορφής u− v− w αντικαθίστανται από μια μονάχαακμή u− w...
.Η ανάγκη προσθήκης της u− w υπάρχει όταν η συντομότερη διαδρομήαπό την u στην w είναι η u− v− w.
.
. . . . . .
ΠαρακάμψειςΣυρρίκνωση Κορυφών
.Εύρεση των παρακάμψεων της u− v− w..
.
Αναζήτηση 2 κατευθύνσεων για το ελάχιστο κόστος μιας μετάβασης▶ Αναζήτηση προς τα πίσω από την w για 1 βήμα.▶ Αναζήτηση προς τα εμπρός από την u μέχρι να φτάσουμε σε γείτονατης w.
Περιορισμός της αναζήτησης με βάση▶ το μήκος της διαδρομής▶ το κόστος σε χώρο
.
. . . . . .
ΠαρακάμψειςΣυρρίκνωση Κορυφών
.Εύρεση των παρακάμψεων της u− v− w..
.
Αναζήτηση 2 κατευθύνσεων για το ελάχιστο κόστος μιας μετάβασης▶ Αναζήτηση προς τα πίσω από την w για 1 βήμα.▶ Αναζήτηση προς τα εμπρός από την u μέχρι να φτάσουμε σε γείτονατης w.
Περιορισμός της αναζήτησης με βάση▶ το μήκος της διαδρομής▶ το κόστος σε χώρο
.
. . . . . .
Διάταξη ΚορυφώνΠαράμετροι Διάταξης
▶ Διαφοροποίηση με βάση τις ακμές.▶ Ομοιομορφία.▶ Κόστος της συρρίκνωσης.▶ Κόστος των ερωτημάτων.▶ Συνολική σημασία της κορυφής.
.
. . . . . .
Διάταξη ΚορυφώνΔιαφοροποίηση με βάση τις ακμές
Ο αριθμός παρακάμψεων που προστίθενται στο γράφημα αν συρρικνωθείη u μείον τον αριθμό των ακμών που πρόσκεινται στην u.
.
. . . . . .
Διάταξη ΚορυφώνΟμοιομορφία
Οι κορυφές που συρρικνώνονται πρέπει να είναι διασκορπισμένες σε όλοτο γράφημα και όχι συγκεντρωμένες σε μια περιοχή αυτού. Για να
πετύχουμε τέτοια ομοιομορφία προτείνεται:▶ Χρήση του αριθμού των διαγραμμένων γειτόνων.▶ Χρήση Voronoi Περιοχών.(με επιπλέον υπολογιστικό κόστος O(nlogn))
.
. . . . . .
Διάταξη ΚορυφώνΠεριοχές Voronoi
.
. . . . . .
Διάταξη ΚορυφώνΚόστος της Συρρίκνωσης
Η αναζήτηση προς τα εμπρός κατά τη διάρκεια της συρρίκνωσης έχειμεγάλο κόστος και προτιμούνται ευκολότερες γειτονιές.
.
. . . . . .
Διάταξη ΚορυφώνΚόστος των ερωτημάτων
Η συρρίκνωση μπορεί να επιβάλει μεγάλες αλλαγές στο μετέπειτα κόστοςτων ερωτημάτων (για το οποίο μπορούμε να εξάγουμε κάποια εκτίμηση).
.
. . . . . .
Διάταξη ΚορυφώνΣυνολική σημασία της κορυφής
Συρρίκνωση κορυφών που δεν έχουν μεγάλη σημασία στο γράφημα γιανα απλοποιηθεί η διαδικασία της αναζήτησης και να περιοριστούν οι
διαδρομές.
.
. . . . . .
ΕρωτήματαΑναζήτηση
.Εύρεση της βέλτιστης διαδρομής από μια κορυφή s σε μια άλλη t..
.
τροποποιημένης αναζήτησης 2 κατευθύνσεων Dijkstra ελάχιστουμονοπατιού,
▶ μια ευθεία αναζήτηση στο G↑▶ μια αντίστροφη στο G↓
G↑ := (V, E↑) με E↑ := (u, v)�E : u < vG↓ := (V, E↓) με E↓ := (u, v)�E : u > v
.
. . . . . .
ΕρωτήματαΕύρεση της βέλτιστης διαδρομής
Η βέλτιστη διαδρομή προκύπτει ως αποτέλεσμα αναζήτησης στο G↑ & G↓.
d(s, t) = min{d(s, u) + d(u, t) : u υπάρχει και στις 2}
.
. . . . . .
ΕρωτήματαΕύρεση της βέλτιστης διαδρομής
Η βέλτιστη διαδρομή προκύπτει ως αποτέλεσμα αναζήτησης στο G↑ & G↓.
d(s, t) = min{d(s, u) + d(u, t) : u υπάρχει και στις 2}
.
. . . . . .
ΕρωτήματαΑναζήτηση
Η αναζήτηση γίνεται ταυτόχρονα στα G↑ & G↓ μέχρι να βρεθεί ηκατάλληλη κορυφή u
Τα G↑ & G↓ αποθηκεύονται στην ίδια δομή στην μνήμη χρησιμοποιώνταςflags σε κάθε κορυφή.
Για την βέλτιστη διαδρομή αφαιρούμε τις παρακάμψεις και τιςμεταφράζουμε στις αρχικές κορυφές.
.
. . . . . .
ΕρωτήματαΑναζήτηση
Η αναζήτηση γίνεται ταυτόχρονα στα G↑ & G↓ μέχρι να βρεθεί ηκατάλληλη κορυφή u
Τα G↑ & G↓ αποθηκεύονται στην ίδια δομή στην μνήμη χρησιμοποιώνταςflags σε κάθε κορυφή.
Για την βέλτιστη διαδρομή αφαιρούμε τις παρακάμψεις και τιςμεταφράζουμε στις αρχικές κορυφές.
.
. . . . . .
ΕρωτήματαΑναζήτηση
Η αναζήτηση γίνεται ταυτόχρονα στα G↑ & G↓ μέχρι να βρεθεί ηκατάλληλη κορυφή u
Τα G↑ & G↓ αποθηκεύονται στην ίδια δομή στην μνήμη χρησιμοποιώνταςflags σε κάθε κορυφή.
Για την βέλτιστη διαδρομή αφαιρούμε τις παρακάμψεις και τιςμεταφράζουμε στις αρχικές κορυφές.
.
. . . . . .
Εφαρμογές
▶ Η διάταξη των κορυφών και οι παρακάμψεις δεν εξαρτώνται απότην εφαρμογή που υλοποιείται λόγω της διαδικασίας κατασκευήςτους.
▶ Μικρές αλλαγές στα κόστη ορισμένων ακμών δεν απαιτούνανακατασκευή όλων των παρακάμψεων.
▶ Oracles μπορούν να χρησιμοποιηθούν για μετακίνηση σε μεγάλεςαποστάσεις χωρίς να γίνει η αναζήτηση συνολικά.
▶ Το μικρό κόστος σε χώρο και μνήμη για την αναζήτηση κάνουν τοσύστημα κατάλληλο για χρήση σε φορητές συσκευές.
.
. . . . . .
Εφαρμογές
▶ Η διάταξη των κορυφών και οι παρακάμψεις δεν εξαρτώνται απότην εφαρμογή που υλοποιείται λόγω της διαδικασίας κατασκευήςτους.
▶ Μικρές αλλαγές στα κόστη ορισμένων ακμών δεν απαιτούνανακατασκευή όλων των παρακάμψεων.
▶ Oracles μπορούν να χρησιμοποιηθούν για μετακίνηση σε μεγάλεςαποστάσεις χωρίς να γίνει η αναζήτηση συνολικά.
▶ Το μικρό κόστος σε χώρο και μνήμη για την αναζήτηση κάνουν τοσύστημα κατάλληλο για χρήση σε φορητές συσκευές.
.
. . . . . .
Εφαρμογές
▶ Η διάταξη των κορυφών και οι παρακάμψεις δεν εξαρτώνται απότην εφαρμογή που υλοποιείται λόγω της διαδικασίας κατασκευήςτους.
▶ Μικρές αλλαγές στα κόστη ορισμένων ακμών δεν απαιτούνανακατασκευή όλων των παρακάμψεων.
▶ Oracles μπορούν να χρησιμοποιηθούν για μετακίνηση σε μεγάλεςαποστάσεις χωρίς να γίνει η αναζήτηση συνολικά.
▶ Το μικρό κόστος σε χώρο και μνήμη για την αναζήτηση κάνουν τοσύστημα κατάλληλο για χρήση σε φορητές συσκευές.
.
. . . . . .
Εφαρμογές
▶ Η διάταξη των κορυφών και οι παρακάμψεις δεν εξαρτώνται απότην εφαρμογή που υλοποιείται λόγω της διαδικασίας κατασκευήςτους.
▶ Μικρές αλλαγές στα κόστη ορισμένων ακμών δεν απαιτούνανακατασκευή όλων των παρακάμψεων.
▶ Oracles μπορούν να χρησιμοποιηθούν για μετακίνηση σε μεγάλεςαποστάσεις χωρίς να γίνει η αναζήτηση συνολικά.
▶ Το μικρό κόστος σε χώρο και μνήμη για την αναζήτηση κάνουν τοσύστημα κατάλληλο για χρήση σε φορητές συσκευές.
.
. . . . . .
ΠειράματαΠεριβάλλον Εκτέλεσης
▶ AMD Opteron Processor 270 @ 2.0 GHz▶ 8 GB main memory and 2x1MB L2 cache▶ SuSE Linux 10.3 (kernel 2.6.22)▶ GNU C++ compiler 4.2.1 (optimization level 3 - Ο3)
.
. . . . . .
ΠειράματαΓραφήματα Εισόδου
Γραφήματα οδικού δικτύου της Δυτικής Ευρώπης τα οποίαπροσφέρθηκαν από την PTV AG για ερευνητικούς σκοπούς.
▶ 18.029.721 κορυφές και▶ 42.199.587 κατευθυνόμενες ακμές
Για κάθε ακμή παρέχεται επίσης :▶ μήκος▶ ο τύπος του δρόμου
για να υπολογισθεί ο εκτιμώμενος δρόμος ταξιδιού για ναχρησιμοποιηθεί ως κόστος.
.
. . . . . .
ΠειράματαΓραφήματα Εισόδου
Γραφήματα οδικού δικτύου της Δυτικής Ευρώπης τα οποίαπροσφέρθηκαν από την PTV AG για ερευνητικούς σκοπούς.
▶ 18.029.721 κορυφές και▶ 42.199.587 κατευθυνόμενες ακμές
Για κάθε ακμή παρέχεται επίσης :▶ μήκος▶ ο τύπος του δρόμου
για να υπολογισθεί ο εκτιμώμενος δρόμος ταξιδιού για ναχρησιμοποιηθεί ως κόστος.
.
. . . . . .
ΠειράματαΔιαφοροποιήσεις
EVSQL → aggressive, EDS1235 → economical
.
. . . . . .
ΠειράματαΜέσος Βαθμός γραφήματος
.
. . . . . .
ΠειράματαΤοπικά Ερωτήματα
.
. . . . . .
ΠειράματαΧρήσεις
.
. . . . . .
Συμπεράσματα
▶ Γρήγορη προεπεξεργασία και ομοιομορφία,▶ Γρήγορη αναζήτηση,▶ Μικρό υπολογιστικό κόστος σε χώρο / χρόνο
Επόμενο βήμα είναι η προσθήκη time-dependent ερωτημάτων στοσύστημα.
.
. . . . . .
Ερωτήσεις ;
Ευχαριστώ
.