Contraction Hierarchies (in greek)

Post on 25-Jun-2015

257 views 4 download

description

Faster and Simpler Hierarchical Routing in Road Networks, by Geisberger, Sanders, Schultes, and Delling (Universitat Karlsruhe) presented by Amaxilatis Dimitrios at University of Patras

Transcript of Contraction Hierarchies (in greek)

. . . . . .

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 ερωτημάτων στοσύστημα.

.

. . . . . .

Ερωτήσεις ;

Ευχαριστώ

.