Δρομολόγηση μιας οντότητας ανάμεσα σε δύο σημεία ενός δικτύου έτσι ώστε να ελαχιστοποιήσουμε ένα κόστος, μια διάρκεια, κτλ.

Σχετικά έγγραφα
Δρομολόγηση μιας οντότητας ανάμεσα σε δύο σημεία ενός δικτύου έτσι ώστε να ελαχιστοποιήσουμε ένα κόστος, μια διάρκεια, κτλ.

Ελαφρύτατες διαδρομές

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 6

Αναζήτηση στους γράφους. - Αναζήτηση η κατά βάθος Συνεκτικές Συνιστώσες - Αλγόριθμος εύρεσης συνεκτικών συνιστωσών

Εισαγωγή στους Αλγορίθμους Ενότητα 10η

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους

Δομές Δεδομένων και Αλγόριθμοι

ΕΥΡΕΣΗ ΕΛΑΧΙΣΤΩΝ ΜΟΝΟΠΑΤΙΩΝ & ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΩΝ

Αλγόριθµοι και Πολυπλοκότητα

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 10

Διάλεξη 21: Γράφοι IV - Βραχύτερα Μονοπάτια σε Γράφους

ΤΕΙ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΥΠΟΛΟΓΙΣΤΩΝ

Δίκτυα Υπολογιστών ΙΙ (Ασκήσεις Πράξης)

ΕΥΡΕΣΗ ΕΛΑΧΙΣΤΩΝ ΜΟΝΟΠΑΤΙΩΝ & ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΩΝ

Σχεδίαση & Ανάλυση Αλγορίθμων

Σχεδιαση Αλγοριθμων -Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο

Αλγόριθμοι και Πολυπλοκότητα

Κατανεμημένα Συστήματα Ι

Επιχειρησιακή Έρευνα I

Διδάσκων: Παναγιώτης Ανδρέου

Μέθοδοι Βελτιστοποίησης

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Αλγόριθµοι και Πολυπλοκότητα

4. ΔΙΚΤΥΑ

HY380 Αλγόριθμοι και πολυπλοκότητα Hard Problems

ΠΛΗ 20, 5 η ΟΣΣ: Θεωρία Γραφημάτων

3η Σειρά Γραπτών Ασκήσεων

Προσεγγιστικοί Αλγόριθμοι

ΑΛΓΟΡΙΘΜΟΙ. Ενότητα 9: Άπληστοι Αλγόριθμοι. Ιωάννης Μανωλόπουλος, Καθηγητής Αναστάσιος Γούναρης, Επίκουρος Καθηγητής Τμήμα Πληροφορικής ΑΠΘ

Φροντιστήριο 11 Λύσεις

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 7

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 2: Εφαρμογές Δικτυωτής Ανάλυσης (1 ο Μέρος)

Δένδρα επικάλ επικ υψης ελάχιστου στους

Εισαγωγή στους Αλγορίθμους

Ελάχιστο Γεννητικό Δένδρο. Παράδειγμα - Αλγόριθμος Prim. Γιατί δουλεύουν αυτοί οι αλγόριθμοι;

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Επίλυση 1 ης Εργασίας. Παραδόθηκαν: 11/12 15%

ΠΛΗ 20, 5 η ΟΣΣ: Θεωρία Γραφημάτων

Στοιχεία Θεωρίας Γράφων (Graph Theory)

Εισαγωγή στους Αλγόριθμους

Αλγόριθμοι Δρομολόγησης. Γ. Κορμέντζας

ΔΙΑΧΕΙΡΙΣΗ ΕΦΟΔΙΑΣΤΙΚΗΣ ΑΛΥΣΙΔΑΣ

Outline 1 Άσκηση 1 2 Άσκηση 2 3 Άσκηση 3 4 Άσκηση 4 5 Άσκηση 5 6 Προγραμματιστική Άσκηση 1 7 Προγραμματιστική Άσκηση 2 (CoReLab - NTUA) Αλγόριθμοι - 3

Μονάδες 12 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Εισαγωγή στους Αλγορίθμους Ενότητα 9η

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

3η Σειρά Γραπτών Ασκήσεων

Αλγόριθμοι Δρομολόγησης. Γ. Κορμέντζας

Προσεγγιστικοί Αλγόριθμοι

Πρόβλημα συντομότερης διαδρομής - Shortest path problem. Κηρυττόπουλος Κωνσταντίνος Επ. Καθηγητής ΕΜΠ

Κεφάλαιο 3. Γραφήµατα v1.0 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Αλγόριθμοι και Πολυπλοκότητα

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο

ΑΛΓΟΡΙΘΜΙΚΕΣ ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ

Σχεδίαση και Ανάλυση Αλγορίθμων

Αλγόριθμοι Γραφημάτων

ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10

u v 4 w G 2 G 1 u v w x y z 4

Βραχύτερα Μονοπάτια σε Γράφους (CLR, κεφάλαιο 25)

Γράφοι (συνέχεια) Ο αλγόριθµος Dijkstra για εύρεση βραχυτέρων µονοπατιών Ta µονοπάτια Euler

Γ. Κορίλη Αλγόριθµοι ροµολόγησης

Κεφάλαιο 4. Αλγόριθμος του Dijkstra. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Δένδρα επικάλυψης ελάχιστου κόστους και το πρόβλημα του πλανόδιου πωλητή (Traveling Salesman Problem: TSP)

Λύσεις Σειράς Ασκήσεων 5

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Αυτοματοποιημένη Επαλήθευση

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ουρές Προτεραιότητας. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Τεχνητή Νοημοσύνη. 4η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Αλγόριθµοι Τύπου Μείωσης Προβλήµατος

Ταιριάσματα. Γράφημα. Ταίριασμα (matching) τέτοιο ώστε κάθε κορυφή να εμφανίζεται σε το πολύ μια ακμή του

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Αναζήτηση Κατά Βάθος. Επιμέλεια διαφανειών: Δ. Φωτάκης Συμπληρώσεις: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS. 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts)

Κατ οίκον Εργασία 4 Σκελετοί Λύσεων

Αλγόριθμοι και πολυπλοκότητα Τα συντομότερα μονοπάτια(shortest Paths)

ΠΛΗ 20, 5 η ΟΣΣ: Θεωρία Γραφημάτων

Γράφοι: κατευθυνόμενοι και μη

Τεχνολογία Πολυμέσων. Ενότητα # 9: Κωδικοποίηση εντροπίας Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Σειρά Προβλημάτων 5 Λύσεις

Τεχνητή Νοημοσύνη. 3η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Ενότητα 5: Αλγόριθμοι γράφων και δικτύων

Κεφάλαιο 4. Αλγόριθµος του Dijkstra. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 3: Εφαρμογές Δικτυωτής Ανάλυσης (2 ο Μέρος)

I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 I 9 I 10 I 11

Αναζήτηση Κατά Πλάτος

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 3

Κουτσιούμπας Αχιλλέας U. Adamy, C. Ambuehl, R. Anand, T. Erlebach

Ο Αλγόριθµος της Simplex

Υπολογιστικό Πρόβληµα

Τ Ε Ι Ιονίων Νήσων Τμήμα Εφαρμογών Πληροφορικής στη Διοίκηση και την Οικονομία. Υπεύθυνος: Δρ. Κολιός Σταύρος

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο

Μη γράφετε στο πίσω μέρος της σελίδας

Αναζήτηση Κατά Βάθος. Επιµέλεια διαφανειών:. Φωτάκης διαφάνειες για SCC: A. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Δομές Δεδομένων. Ιωάννης Γ. Τόλλης Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης

Εισαγωγή στους Αλγορίθμους

Αλγόριθµοι και Πολυπλοκότητα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Transcript:

Προβλήματα βέλτιστων μονοπατιών Δρομολόγηση μιας οντότητας ανάμεσα σε δύο σημεία ενός δικτύου έτσι ώστε να ελαχιστοποιήσουμε ένα κόστος, μια διάρκεια, κτλ. Εφαρμογές: Χρονοπρογραμματισμός (διαχείριση εργασιών, προγραμμάτων,...)

Τύποι Προβλημάτων Κατευθυνόμενος γράφος με βάρη: G = (X, A, W) X σύνολο n κόμβων Α σύνολο m(κατευθυνόμενων) πλευρών W(i, j) κόστος (κατευθυνόμενης) πλευράς ( x, y ) Κόστος ενός μονοπατιού που συνδέει δύο κόμβους του είναι το άθροισμα των κοστών των (κατευθυνόμενων) πλευρών του. i j

Τύποι Προβλημάτων Πρόβλημα Α: Δεδομένων δύο κόμβων s και t, να βρεθεί το συντομότερο μονοπάτι από τον κόμβο s προς τον κόμβο t. Πρόβλημα Β: Δεδομένου ενός κόμβου αφετηρίας s, να βρεθεί το συντομότερο μονοπάτι από το s προς κάθε άλλο κόμβο. Πρόβλημα C: Να βρεθεί το συντομότερο μονοπάτι ανάμεσα σε κάθε ζευγάρι κόμβων.

Παράδειγμα: G= (X,A,W) S= 7

Kατευθυνόμενο δέντρο συντομότερων μονοπατιών S= 7 8 κόστος 7 κόστος κόστος κόστος..

Αλγόριθμοι με οριστικοποίηση ετικετών (Greedy για πρόβλημα Β) Γράφος G=(Χ, A, w), Χ = n, A = m και w(i,j) 0 Για κάθε κόμβο x : V[x], τιμή του συντομότερου μονοπατιού από τον κόμβο αφετηρία s προς τον κόμβο x. Διατήρηση για κάθε κόμβο x προσπελάσιμο ξεκινώντας από τον κόμβο s : P[x]. Σε κάθε επανάληψη, ένας κόμβος x δέχεται την οριστική του ετικέτα (θα λέμε ότι είναι φιξαρισμένος). Ένας πίνακας FIXE[ ] θα δείχνει τους φιξαρισμένους κόμβους.

παράδειγμα (P[x], V[x]) (,0) S= Πατέρας Αρχικοποίηση Τιμή 7

(,0) S= Αρχικοποίηση Βήμα επέλεξε κόμβο 7

(P[x], V[x]) (,0) S= (,) 7 (,) Αρχικοποίηση Βήμα επέλεξε κόμβο (ενημέρωση γειτόνων)

FIXED (,0) S= (,) Αρχικοποίηση Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο 7

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο (ενημέρωση γειτόνων του )

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο NOT FIXED

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση (,) Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο (ενημέρωση γειτόνων του ) NOT FIXED

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση (,) Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο NOT FIXED

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση (, 7) (,) Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο (ενημέρωση γειτόνων του ) NOT FIXED

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση (, 7) (,) Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο NOT FIXED

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση (, 7) (,) Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο (ενημέρωση γειτόνων του ) NOT FIXED

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση (, 7) (,) Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο NOT FIXED

FIXED (,0) S= (,) (,) (,) 7 (,) Αρχικοποίηση (, ) (, 8) (, 7) (,) Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο (ενημέρωση γειτόνων του ) NOT FIXED

FIXED (,0) S= (,) (,) (,) (, ) (, 8) (, 7) 7 (,) (,) Αρχικοποίηση Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα 7 επέλεξε κόμβο 7 NOT FIXED

FIXED (,0) S= (,) (,) (,) (7, 7) (, ) (, 8) (, 7) 7 (,) (,) Αρχικοποίηση Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα 7 επέλεξε κόμβο 7 (ενημέρωση γειτόνων του 7) NOT FIXED

FIXED (,0) S= (,) (,) (,) (7, 7) (, ) (, 8) (, 7) 7 (,) (,) Αρχικοποίηση Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα επέλεξε κόμβο Βήμα 7 επέλεξε κόμβο 7 Βήμα 8 επέλεξε κόμβο 8

(,0) S= (, ) (, ) (, ) (, ) (7, 7) 7 (, ) (, ) Κόμβος : P[]=, P[]=, P[]=. Μονοπάτι: Κατευθυνόμενο δέντρο ελάχιστων μονοπατιών

Αρχικοποίησε τον πίνακα V με --#-- P με 0 --#-- FIXE σε False Θέσε V[S] = 0 και P[S] = Repeat --- --- Until {x V[x] < } = Ø

Repeat Επέλεξε ένα κόμβο x ΜΗ φιξαρισμένο και με ελάχιστο V[x] ΑN V[x] < ΤΟΤΕ Φίξαρε x Για κάθε y επόμενο του x και ΜΗ φιξαρισμένο An V[y] > V[x] + W(x,y) ΤΟΤΕ V[y] = V[x] + W(x,y) Θέσε P[y] = x /*απομνημόνευσε ότι ερχόμαστε στο y απο τον x */ Until {x V[x] < } = Ø

Ορθότητα αλγορίθμου Dijkstra FIXED x t W xy W tz y V(y) W zy z V(z) G NOT FIXED V[z] V[y]

Ορθότητα αλγορίθμου Dijkstra FIXED x t W xy W tz y V(y) W zy z V(z) G NOT FIXED [ ] Vz [ ] [ ] [ ] [ ] Vy Vz+ W < Vy Vz zy zy W 0 ΑΔΥΝΑΤΟ

Αρνητικά βάρη (κόστος = ) (κόστος = ) - -

Αρνητικά βάρη - (, 0) -

Αρνητικά βάρη - (, 0) (, -) (, ) -

Αρνητικά βάρη - (, 0) (, -) (, ) (, ) -

Αρνητικά βάρη - (, 0) (, -) (, ) (, ) -

Αρνητικά βάρη - (, 0) (, -) (, ) (, ) -

Αρνητικά βάρη - (, 0) (, -) (, ) (, ) - Αποτέλεσμα λάθος

Αρνητικά βάρη (Dijkstra) - (, 0) (, -) (, ) (, ) αποτέλεσμα λάθος - - - αποτέλεσμα ορθό

Αρνητικά βάρη 00 - - - Επιδιόρθωση είναι εφικτή?

Αρνητικά βάρη 00+00 99 99 99 Πρόσθεση ενός μεγάλου αριθμού δεν επιδιορθώνει το πρόβλημα!