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



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

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

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

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

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

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

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

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

Συντομότερες Διαδρομές

Συντομότερες ιαδρομές

Συντομότερες ιαδρομές

Συντομότερες Διαδρομές

Συντομότερες ιαδρομές

Μέγιστη Ροή Ελάχιστη Τομή

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

Σχέσεις Μερικής ιάταξης

Βασικές Έννοιες Θεωρίας Γραφημάτων

Βασικές Έννοιες Θεωρίας Γραφημάτων

Μέγιστη Ροή Ελάχιστη Τομή

ΠΛΗ 20, 6 η ΟΣΣ: Δέντρα Εξετάσεις

έντρα ιδάσκοντες:. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

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

Σχέση Μερικής ιάταξης Σχέση Μερικής ιάταξης (ή µερική διάταξη): ανακλαστική, αντισυµµετρική, και µεταβατική. Αριθµοί: α β (αλλά όχι α < β), α β, Σύνολ

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

1 Διάσχιση κατευθυνόμενων γραφημάτων

Σχέσεις Μερικής ιάταξης

Ελάχιστο Συνδετικό Δέντρο

Συντομότερα Μονοπάτια για Όλα τα Ζεύγη Κορυφών

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

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

Ελάχιστο Συνδετικό έντρο

Ελάχιστο Συνδετικό Δέντρο

Σχέσεις Μερικής ιάταξης

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

Outline 1 Άσκηση 1: Εφαρμογές BFS DFS 2 Άσκηση 2: Μια Συνάρτηση Κόστους σε Κατευθυνόμενα Γραφήματα 3 Άσκηση 3: Ανάλυση Ασφάλειας 4 Άσκηση 4: Το Σύνολο

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

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

Θεωρία Γραφημάτων 5η Διάλεξη

6η Διάλεξη Διάσχιση Γράφων και Δέντρων

Ελάχιστο Συνδετικό Δέντρο

Σχέσεις Μερικής Διάταξης

Ελάχιστο Συνδετικό έντρο

Άσκηση 3 (ανακοινώθηκε στις 14 Μαΐου 2018, προθεσμία παράδοσης: 8 Ιουνίου 2018, 12 τα μεσάνυχτα).

ΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

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

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

Διαπεράσεις Μη Κατευθυνόμενων Γραφημάτων

Ουρά Προτεραιότητας: Heap

Μετασχηματισμοί, Αναπαράσταση και Ισομορφισμός Γραφημάτων

Αλγόριθμοι Ισχυρά συνεκτικές συνιστώσες Εφαρμογές, BFS

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

Ουρά Προτεραιότητας: Heap

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών

Πιθανοτικοί Αλγόριθμοι

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

Θεωρία Γραφημάτων 5η Διάλεξη

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

ιµελής Σχέση ιατεταγµένο ζεύγος (α, β): ύο αντικείµενα (όχι κατ ανάγκη διαφορετικά) σε καθορισµένη σειρά. Γενίκευση: διατεταγµένη τριάδα (α, β, γ), δι

ΘΕΩΡΙΑ ΓΡΑΦΩΝ. 10 η Διάλεξη Κατευθυνόμενοι Γράφοι Βασικά χαρακτηριστικά Αλγόριθμοι διάσχισης κατευθυνόμενων γράφων Λίγα Λόγια για Αλυσίδες Markov

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

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

Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

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

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

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

Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).

Σχέσεις. ιδάσκοντες:. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Δομές Δεδομένων Ενότητα 6

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

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

Άπληστοι Αλγόριθμοι. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Άπληστοι Αλγόριθμοι. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Ουρά Προτεραιότητας: Heap

Διάλεξη 21: Γράφοι II - Τοπολογική Ταξινόμηση

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

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

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

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

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

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

Μια Επισκόπηση της Ύλης & Μερικές Οδηγίες

Σχέσεις. Διμελής Σχέση. ΣτοΊδιοΣύνολο. Αναπαράσταση

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

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

ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1

Γράφοι. Αλγόριθμοι και πολυπλοκότητα. Στάθης Ζάχος, Δημήτρης Φωτάκης

Ουρά Προτεραιότητας: Heap

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.

Διερεύνηση γραφήματος

Διαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1

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

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

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

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

Quicksort. Πρόβλημα Ταξινόμησης. Μέθοδοι Ταξινόμησης. Συγκριτικοί Αλγόριθμοι

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

Quicksort. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Transcript:

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

Αναζήτηση Κατά Βάθος (DFS) Εξερεύνηση νέων κορυφών με απομάκρυνση από αρχική. Πρώτη επίσκεψη σε ανεξερεύνητη κορυφή u: Εξερεύνηση (αναδρομικά) όλων των (ανεξερεύνητων) γειτόνων της u, πριν ολοκληρώσουμε με u. 1 2 3 / 2 1 3 / 1 3 5 3 1 2 4 5 / 4 3 6 / 2 4 6 5 3 / 6 4 / Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 2

Αναζήτηση Κατά Βάθος (DFS) Εξερεύνηση νέων κορυφών με απομάκρυνση από αρχική. Πρώτη επίσκεψη σε ανεξερεύνητη κορυφή u: Εξερεύνηση (αναδρομικά) όλων των (ανεξερεύνητων) γειτόνων της u, πριν ολοκληρώσουμε με u. Φύσει αναδρομική διαδικασία: Τρία είδη κορυφών: Ανεξερεύνητη: όχι επίσκεψη ακόμη. Υπο-εξέταση: επίσκεψη και εξερευνούμε γείτονες. Εξερευνημένη: ολοκλήρωση διαδικασίας. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 3

Αναζήτηση Κατά Βάθος (DFS) Κορυφές περνούν από παραπάνω στάδια: Αρχικά όλες οι κορυφές ανεξερεύνητες. Πρώτηεπίσκεψηανεξερεύνητηςκορ. υπό-εξέταση. Ολοκλήρωση DFS για (ανεξερ.) γείτονες κορ. εξερευνημένη. Κορυφή u τίθεται υπό-εξέταση: Όλες οι κορυφές που είναι προσπελάσιμες από u και είναι ανεξερεύνητες θα τεθούν εξερευνημένες πριν u τεθεί εξερευνημένη. Εξέλιξη διαδικασίας αποτυπώνεται σε DFS-δάσος και «χρόνους» πρώτης επίσκεψης και αναχώρησης. DFS-δάσος: ακμές πρώτης επίσκεψης, ακυκλικό. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 4

Υλοποίηση Πίνακας κατάστασης: m[v] = { A, Y, E }. Πίνακας γονέων: p[v] = πατέρας v στο DFS-δάσος. «Χρόνοι» πρώτης επίσκεψης d[v] και αναχώρησης f[v]. Χρόνος εκτέλεσης Θ(n + m). DFS σε (α) δέντρο, (β) πλήρες γράφημα, (γ) κύκλο. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 5

Παράδειγμα Κατηγορίες Ακμών Ακμές δάσους / δέντρου: Εξερεύνηση (u, v) όταν v ανεξερεύνητη. Πίσω ακμές: Εξερεύνηση (u, v) όταν v υπό-εξέταση: κύκλος. Μπροστά ακμές: Εξερεύνηση (u, v) όταν v εξερευνημένη και v απόγονος u στο δέντρο. Ακμές διασταύρωσης: Εξερεύνηση (u, v) όταν v εξερευνημένη και v όχι απόγονος u στο δέντρο. Δ Δ Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 6

Παράδειγμα DFS σε μη-κατευθ. γράφημα παράγει μόνο ακμές δέντρου και πίσω ακμές. Ακμή {v, u} με d[v] < d[u] (πρώτα πρώτη επίσκεψη σε v). Πρώτα v ΥΕ, μετά u ΥΕ, μετά u Εξερ, τέλος v Εξερ. Αν κατεύθυνση (v, u) εξερευνήθηκε πρώτη, τότε {v, u} ακμή δέντρου. Αν κατεύθυνση (u, v) εξερευνήθηκε πρώτη, τότε {v, u} πίσω ακμή. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 7

Μερικές Ιδιότητες Για μη-κατευθυνόμενα γραφήματα, DFS υπολογίζει συνεκτικές συνιστώσες (όπως και BFS). Αν v απόγονος u στο DFS-δάσος, Αν v όχι απόγονος u στο DFS-δάσος, Γράφημα ακυκλικό ανν DFS δεν παράγει πίσω ακμές. Εξερεύνηση πίσω ακμής (u, v) όταν v ΥΕ Μονοπάτι v u και ακμή (u, v) κύκλος. Έστω κύκλος C, v πρώτη κορυφή C που τίθεται ΥΕ, και (u, v) ακμή C που εισέρχεται στην v. u απόγονος της v στο DFS-δάσος γιατί: Υπάρχει v u μονοπάτι. Όλες οι άλλες κορυφές του C είναι Α όταν v γίνεται ΥΕ. Άρα (u, v) πίσω ακμή. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 8

Εφαρμογές «Χρόνοι» πρώτης επίσκεψης και αναχώρησης δίνουν πληροφορίες για δομή γραφήματος: Τοπολογική διάταξη σε Directed Acyclic Graphs (DAGs). Σημεία κοπής και γέφυρες σε μη-κατευθυνόμενα γραφήματα. Ισχυρά συνεκτικές συνιστώσες σε κατευθυνόμενα γραφήματα. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 9

Τοπολογική ιάταξη DAG (Directed Acyclic Graph) αντιστοιχεί σε σχέση μερικής διάταξης: Ακμή (u, v) u v (δηλ. u «προηγείται» v). Σειρά υπολογισμού αλγεβρικών παραστάσεων, π.χ. Προγραμματισμός εργασιών σε σύνθετα έργα. Ύπαρξη κύκλου δεν συνάδει με «διάταξη», έστω μερική. DFS ελέγχει για ύπαρξη κύκλων και υπολογίζει «σειρά» κορυφών συμβατή με μερική διάταξη του DAG. Τοπολογική διάταξη. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 10

Τοπολογική ιάταξη... μετάθεση π κορυφών κατευθυνόμενου G(V, E) ώστε ηλ. κορυφές σε ευθεία ώστε όλες οι ακμές να έχουν φορά από αριστερά προς τα δεξιά. Τοπολογική διάταξη ανν γράφημα ακυκλικό (DAG). Κορυφές σε φθίνουσα σειρά χρόνων αναχώρησης του DFS, δηλ. Υλοποίηση με στοίβα: Εξερευνημένη κορυφή μπαίνει στην ουρά. Σειρά στην ουρά αντιστοιχεί σε τοπολογική διάταξη. Χρόνος Θ(n+m). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 11

Παράδειγμα α β γ δ ε ζ η θ ι κ α θ δ ε ζ γ ι κ Τοπολογική διάταξη: α, β, ζ, γ, θ, ι, δ, ε, κ, η β η Αναζήτηση Κατά Βάθος 12

Παράδειγμα 1 2 3 6 4 5 7 8 9 11 10 Τοπολογική διάταξη: 1, 3, 8, 6, 11, 10, 9, 4, 5, 7, 2 Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 13

Τοπολογική ιάταξη: Ορθότητα Έστω DAG G(V, E). Θδο (u, v) E, f[u] > f[v]. Εξερεύνηση (u, v) συμβαίνει όταν u ΥΕ και v Ανεξ. ή Εξερ. Αν v ΥΕ, τότε (u, v) πίσω ακμή κύκλος! Αν v Εξερ., τότε εξερεύνηση της v ολοκληρώθηκε πριν ολοκληρωθεί εξερεύνηση u, άρα f[u] > f[v]. Αν v Ανεξ., τότε v απόγονος της u στο DFS-δάσος. Άρα f[u] > f[v], γιατί πρώτα τίθεται f[v] και μετά f[u]. Έστω σύστημα με n (πραγματικές) μεταβλητές x 1,, x n και m περιορισμούς της μορφής x i < x j. Αλγόριθμος με χ.ε. Ο(n+m) που υπολογίζει μια λύση του συστήματος ή αποφαίνεται ότι το σύστημα δεν έχει λύση; Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Αναζήτηση Κατά Βάθος 14