Κατευθυνόμενα γραφήματα Μαθηματικά Πληροφορικής 6ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Κατευθυνόμενο γράφημα G είναι ένα ζεύγος (V, E ) όπου V πεπερασμένο σύνολο του οποίου τα στοιχεία ονομάζονται κόμβοι, και ένα σύνολο E που είναι υποσύνολο του V V και του οποίου τα στοιχεία ονομάζονται ακμές: E {(u, v) u, v V } Μη κατευθυνόμενα γραφήματα Βρόγχοι Ο ορισμός επιτρέπει θεωρητικά την ύπαρξη βρόγχων (loops), δηλ. ακμών της μορφής (u, u), u V. Μη κατευθυνόμενο γράφημα G είναι ένα ζεύγος (V, E) όπου E {{u, v} u, v V } δηλαδή μια ακμή σε ένα μη κατευθυνόμενο γράφημα είναι ένα μη διατεταγμένο ζεύγος κόμβων. Γραφήματα χωρίς βρόγχους και παράλληλες ακμές ονομάζονται απλά γραφήματα. Τα γραφήματα που δεν είναι απλά ονομάζονται πολυγραφήματα. Οταν λέμε «γράφημα» θα εννοούμε απλό γράφημα. Αν ασχολούμαστε με πολυγράφημα, θα το αναφέρουμε ρητά. Μια πρόταση που ισχύει για κατευθυνόμενα γραφήματα συνήθως μεταφέρεται και στα μη κατευθυνόμενα γραφήματα. Το αντίστροφο είναι πιο σπάνιο.
Κατευθυνόμενα / Μη κατευθυνόμενα Σχεδίαση γραφημάτων Διαφορές: (u, v) {u, v} V ( V ) δυνατές ακμές V ( V )/ δυνατές ακμές (a) (b) Συμβολισμός Αριθμός κόμβων: V ή n Αριθμός ακμών: E ή m Σχήμα : Γραφικές παραστάσεις του ίδιου γραφήματος ΠΑΡΑΔΕΙΓΜΑ (Σχεδίαση Γραφημάτων) Δεν πρέπει να συγχέουμε ένα γράφημα με τη σχεδίασή του. Ενα γράφημα μπορεί να έχει πολλές σχεδιάσεις. Συμπλήρωμα Ḡ = (V, E ) του G = (V, E): E = {{u, v} {u, v} E, u v}. (Πλήρες / Κενό) (συνέχεια) (Μονοπάτι / Κύκλος) (a) (b) (a) (b) Σχήμα : Τα γραφήματα P και C Σχήμα : Τα γραφήματα K και K
(συνέχεια) (συνέχεια) (Πλήρες διμερές) a b c d e f Σχήμα : Το γράφημα K, Δωδεκάεδρο (από τη Βικιπαίδεια) Το αντίστοιχο γράφημα (συνέχεια) (Γράφημα του Πέτερσεν) 7 8 6 0 9 Σχήμα : Το γράφημα του Petersen Βαθμός ενός κόμβου σε μη κατευθυνόμενο γράφημα ονομάζεται ο αριθμός των ακμών που τον περιέχουν. Σε κάθε γράφημα, το άθροισμα των βαθμών όλων των κόμβων είναι άρτιο. Απόδειξη. Κάθε ακμή συνεισφέρει στο βαθμό δυο κόμβων.
(Γενίκευση) Σε κάθε γράφημα G = (V, E) με m ακμές, το άθροισμα των βαθμών των κόμβων είναι ίσο με m. degree(u) = u V u V v V : {u,v} E = {u,v} E = m [, ] [, ] [, ] [, ] [, ] [, ] Πόρισμα Σε κάθε γράφημα, ο αριθμός των κόμβων περιττού βαθμού είναι άρτιος. Σε κάθε ομάδα ανθρώπων με περιττό αριθμό μελών, υπάρχει πάντα κάποιος που έχει άρτιο αριθμό γνωστών. :,, :, Λίστες γειτνίασης: : : : Πλεονεκτήματα: Οικονομική σε μνήμη για αραιούς γραφήματα: Θ( V + E log V ). Κατάλληλη για κάποιους αλγόριθμους. Μειονεκτήματα: Απαιτεί έργο για να ελέγξουμε αν μια ακμή (u, v) ανήκει στο γράφημα. Πίνακας γειτνίασης: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Πλεονεκτήματα: Άμεση απάντηση αν μια ακμή (u, v) ανήκει στο γράφημα. Εύκολα γενικεύεται για γραφήματα με βάρη στις ακμές. Μειονεκτήματα: Απαιτητική σε μνήμη για αραιά γραφήματα.
Μονοπάτια, κύκλοι Συνεκτικότητα Ενα μη κατευθυνόμενο γράφημα G = (V, E) ονομάζεται συνεκτικό αν για κάθε u, v V υπάρχει μονοπάτι από το u στο v. Ενα κατευθυνόμενο γράφημα που έχει την ιδιότητα αυτή ονομάζεται ισχυρά συνεκτικό. 6 Μονοπάτι: (,,, ) Μονοπάτι (μη απλό): (,,,,, 6) Κύκλος: (,,,, 6, ) Συνεκτικός Μή συνεκτικός Μή ισχυρά συνεκτικός Η έννοια του ελαχιστικού/μεγιστικού Εστω μια σχέση μερικής διάταξης πάνω σε ένα σύνολο P. Ενα στοιχείο p του P καλείται ελαχιστικό (αντίστοιχα μεγιστικό) ως προς την αν δεν υπάρχει p P τέτοιο ώστε p p (p p ). Με τους όρους ελαχιστικό/μεγιστικό μεταφράζουμε τους αγγλικούς όρους minimal/maximal, σε αντιδιαστολή με τους όρους minimum/maximum οι οποίοι υπονοούν ολική διάταξη. Δένδρα Ερώτηση: Ποια γραφήματα είναι ελαχιστικά συνεκτικά (minimally connected); Δηλαδή είναι συνεκτικά αλλά χάνουν τη συνεκτικότητα τους αν αφαιρέσουμε οποιαδήποτε ακμή τους; Απάντηση: Τα δένδρα. Δένδρα ονομάζονται τα συνεκτικά γραφήματα που δεν περιέχουν κύκλους. Παράδειγμα: P U, για κάποιο κατάλληλο σύμπαν U και. Τότε ένα σύνολο S P είναι ελαχιστικό (αντίστοιχα μεγιστικό) αν x U, S \ {x} P (αντ. x U, S {x} P.) 6 7 Σχήμα : Δένδρο
Ιδιότητες των δένδρων Ιδιότητες των δένδρων Οι παρακάτω προτάσεις είναι όλες ισοδύναμες με τον ορισμό των δένδρων: Δένδρα είναι τα συνεκτικά γραφήματα που αν αφαιρέσουμε οποιαδήποτε ακμή τους παύουν να είναι συνεκτικά. Είναι δηλαδή ελαχιστικά γραφήματα ως προς τη συνεκτικότητα. Δένδρα είναι τα γραφήματα που δεν έχουν κύκλους, αλλά αν προσθέσουμε οποιαδήποτε νέα ακμή αποκτούν κάποιο κύκλο. Είναι δηλαδή μεγιστικά άκυκλα γραφήματα. Δένδρα είναι τα συνεκτικά γραφήματα με n ακμές, όπου n είναι ο αριθμός των κόμβων τους. Δένδρα είναι τα γραφήματα που για κάθε ζεύγος κόμβων u και v υπάρχει ένα μοναδικό μονοπάτι από τον u στον v. Σε κάθε δένδρο με τουλάχιστον δύο κόμβους υπάρχει ένας τουλάχιστον κόμβος με βαθμό. Σε κάθε γράφημα, το άθροισμα των βαθμών είμαι m. Στα δένδρα έχουμε m = n. Αφού n, όλοι οι κόμβοι έχουν βαθμό μεγαλύτερο του μηδενός. Αν κάθε κόμβος είχε βαθμό ή περισσότερο, το άθροισμα των βαθμών θα ήταν μεγαλύτερο ή ίσο του n. Επίπεδα γραφήματα Ενα γράφημα G λέγεται επίπεδο (planar) αν υπάρχει τρόπος να σχεδιαστεί στο επίπεδο με τέτοιο τρόπο ώστε οι ακμές του να τέμνονται μόνο σε κορυφές. 7 6 Οψεις σε γραφήματα Ενα γράφημα G λέγεται ενεπίπεδο (plane) αν έχει σχεδιαστεί στο επίπεδο R με τέτοιο τρόπο ώστε οι ακμές του να τέμνονται μόνο σε κορυφές. Σχήμα : Επίπεδο γράφημα Οψεις ενός ενεπίπεδου G καλούνται οι μ-συνεκτικές συνιστώσες του R \ G. Το γράφημα του σχήματος έχει όψεις. Ενα υποσύνολο S του επιπέδου καλείται μ-συνεκτικό αν οποιαδήποτε δύο σημεία του S συνδέονται με μονοπάτι.
Τύπος του Euler Σχέση ακμών και κόμβων Αριθμός κόμβων: n Αριθμός ακμών: m Αριθμός όψεων: f (Τύπος του Euler) Σε κάθε συνεκτικό ενεπίπεδο γράφημα ο αριθμός των κόμβων n, των ακμών m και των όψεων f συνδέονται με τη σχέση n m + f =. Απόδειξη: Με επαγωγή στον αριθμό των ακμών. Βάση της επαγωγής: Δένδρα. Σε κάθε συνεκτικό επίπεδο γράφημα με n κόμβους και m ακμές m n 6. Απόδειξη. Η απόδειξη βασίζεται σε δυο παρατηρήσεις: Κάθε ακμή συνορεύει με (το πολύ) δυο όψεις. Κάθε όψη συνορεύει με τουλάχιστον ακμές. [, ] [, ] [, ] [, ] [, ] (,,, ) (,, ) (,, ) (,,, ) Η προηγούμενη απόδειξη δείχνει πόσο χρήσιμα είναι τα γραφήματα : Χρησιμοποιεί ένα διμερές γράφημα για να επιχειρηματολογήσει για τη σχέση ακμών και όψεων ενός άλλου γραφήματος! [, ] [, ] Αν μετρήσουμε τις ακμές του διμερούς γραφήματος από αριστερά, είναι το πολύ m (κάθε ακμή βρίσκεται σε το πολύ όψεις). Από δεξιά είναι τουλάχιστον f (κάθε όψη έχει τουλάχιστον ακμές). Άρα, σε κάθε γράφημα f m. Από Euler f = n + m...
Το K δεν είναι επίπεδο Συνθήκη για διμερή γραφήματα Το K δεν είναι επίπεδο Πράγματι, το K έχει n = κόμβους και m = 0 ακμές. Δεν ισχύει πως m n 6, άρα δεν είναι επίπεδο. Αναγκαία αλλά όχι ικανή Η συνθήκη m n 6 είναι αναγκαία για να είναι ένα γράφημα επίπεδο. Δεν είναι όμως ικανή: Υπάρχουν γραφήματα με λίγες ακμές που δεν είναι επίπεδα. Σε κάθε συνεκτικό διμερές επίπεδο γράφημα ο αριθμός των κόμβων n και των ακμών m ικανοποιεί m n. Συμπέρασμα: το K, δεν είναι επίπεδο γιατί έχει n = 6 και m = 9 > n Ικανή και αναγκαία συνθήκη για επίπεδα γραφήματα Κύκλοι του Euler και του Hamilton Σχήμα : Ενα γράφημα και μια υποδιαίρεσή του (Kuratowski, 90) Ενα γράφημα είναι επίπεδο αν και μόνο αν δεν περιέχει κάποια υποδιαίρεση του K ή του K,. (Χωρίς απόδειξη) Σχήμα : Οι γέφυρες του Königsberg
Κύκλοι του Euler και του Hamilton Leonhard Euler (707-78) Κύκλοι του Euler και του Hamilton Κύκλοι του Euler και του Hamilton 7 8 9 6 Σχήμα : Το γράφημα των 7 γεφυρών Ενα συνεκτικό γράφημα έχει κύκλο του Euler μόνο αν και μόνο αν όλοι οι κόμβοι του έχουν άρτιο βαθμό. Σχήμα : Γράφημα με κύκλο του Euler Ενα συνεκτικό γράφημα έχει κύκλο του Euler μόνο αν και μόνο αν όλοι οι κόμβοι του έχουν άρτιο βαθμό.