Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Ο αλγόριθμος Bellman-Ford (επανεξετάζεται)

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Ο αλγόριθμος Bellman-Ford (επανεξετάζεται)"— Μεταγράφημα παρουσίασης:

1 Ο αλγόριθμος Bellman-Ford (επανεξετάζεται)
Αρχικές συνθήκες: όπου = το μήκος του συντομότερου μονοπατιού από τον κόμβο i στον 1, που χρησιμοποιεί το πολύ k συνδέσμους. Ο αλγόριθμος τερματίζει το πολύ σε Ν-1 βήματα. Μπορεί να υλοποιηθεί και με κατανεμημένο τρόπο. Πρόβλημα 1: συχνά είναι προτιμότερο να στέλνονται οι αποστάσεις ασύγχρονα, από το να αναμένονται από όλους τους γείτονες τα , πριν από κάθε νέα επανάληψη. Λύση: κάθε κόμβος (εκτός του 1) ανανεώνει ασύγχρονα: , όπου Dj είναι η τελευταία εκτίμηση από τον κόμβο j. Ο λόγος που λειτουργεί: μετά από κάθε ανανέωση, Di είναι η απόσταση από τον κόμβο i στον 1, μέσω κάποιου μονοπατιού (δεδομένων των αρχικών συνθηκών ).

2 Πριν ο σύνδεσμος (4,1) πέσει, .
Πρόβλημα 2: Στην πράξη, τα μήκη των συνδέσμων dij περιστασιακά αλλάζουν. Λύση: Απλά, οι κόμβοι συνεχίζουν να εκτελούν επαναλήψεις ασύγχρονα, με τα νέα μήκη, ξεκινώντας από τις τιμές των Dj που υπάρχουν εκείνη την στιγμή: προορισμός Πριν ο σύνδεσμος (4,1) πέσει, Μόλις ο κόμβος 4 καταλάβει ότι αρχίζει επαναλήψεις μέχρι να επιτευχθεί σύγκλιση. Παρατήρηση: τα κακά νέα μπορεί και να ταξιδεύουν αργά.

3 Λήμμα: Ο ασύγχρονος αλγόριθμος
, με τα dij σταθερά, συγκλίνει στα σωστά συντομότερα μονοπάτια, αν οι αρχικές συνθήκες είναι: (αρχικές συνθήκες στο ) ή , για κάθε i (αρχικές συνθήκες στο 0). Θεώρημα: Για τον Bellman-Ford αλγόριθμο: Έστω η τιμή οποιαδήποτε χρονική στιγμή με κάποιες αυθαίρετες αρχικές καταστάσεις. Έστω η τιμή που θα είχαμε, αν οι αρχικές καταστάσεις ήταν Έστω η τιμή που θα είχαμε, αν οι αρχικές καταστάσεις ήταν 0. Τότε Εφόσον οι και συγκλίνουν στις σωστές αποστάσεις, τότε και η συγκλίνει στις σωστές αποστάσεις.

4 Παράδειγμα: Bellman-Ford (αρχικές συνθήκες στο )
κόστος προορισμός 1ο βήμα τρέχουσα απόσταση από τον κόμβο 1 2ο βήμα 3ο βήμα 4ο βήμα

5 Παράδειγμα: Bellman-Ford (αρχικές συνθήκες στο 0)
προορισμός

6 Ο αλγόριθμος Floyd-Warshall
Υπολογίζει τις συντομότερες αποστάσεις Dij για όλα τα ζεύγη πηγή-προορισμός (i,j). = συντομότερη απόσταση από τον κόμβο i στον j, χρησιμοποιώντας μόνο κόμβους από το σύνολο {1,2,...,k} ως ενδιάμεσους κόμβους. Οι είναι οι τελικές αποστάσεις (όπου Ν το πλήθος των κόμβων).

7 Παράδειγμα: Floyd-Warshall
μήκος ακμής ID κόμβου κανένας ενδιάμεσος κόμβος

8 ενδιάμεσος κόμβος ο 1 έχει αλλάξει ενδιάμεσοι κόμβοι οι {1,2}

9 (οι τελικές συντομότερες αποστάσεις)
ενδιάμεσοι κόμβοι οι {1,2,3} ενδιάμεσοι κόμβοι οι {1,2,3,4} (οι τελικές συντομότερες αποστάσεις)


Κατέβασμα ppt "Ο αλγόριθμος Bellman-Ford (επανεξετάζεται)"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google