HY118-Διακριτά Μαθηματικά Πέμπτη, 10/05/2018 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 10-May-18 1 1
Θεωρία γράφων / γραφήματα 10-May-18 2 2
Τι είναι οι γράφοι; Mία ειδική κλάση διακριτών δομώνκαι που είναι χρήσιμη για την αναπαράσταση σχέσεων 10-May-18 3 3
Εφαρμογές των γράφων Oτιδήποτε μπορεί να μοντελοποιηθεί χρησιμοποιώντας σχέσεις. Εφαρμογές στα δίκτυα, στον προγραμματισμό ενεργειών, βελτιστοποίηση ροής, σχεδιασμό κυκλωμάτων, προγραμματισμό κίνησης, αναζήτηση, ταξινόμηση, ΠΡΟΚΛΗΣΗ: ονομάστε ένα πεδίο στο οποίο η γράφοι δεν είναι χρήσιμοι! 10-May-18 4 4
Θα εισάγουμε ένα πλήθος διαφορετικών τύπων γράφων, ξεκινώντας από τους μηκατευθυνόμενους γράφους: απλοί γράφοι πολυγράφοι 10-May-18 5 5
Απλοί γράφοι Αντιστοιχούν σε συμμετρικές, μη ανακλαστικές διμελείς σχέσεις R επί ενός συνόλου. Ένας απλός γράφος G=(V,E) αποτελείται από: Αναπαράσταση απλού γράφου Ένα σύνολο Vκορυφών ήκόμβων (το V αντιστοιχεί στο σύνολο επί του οποίου ορίζεται η σχέση), Ένα σύνολο E ακμών: μη διατεταγμένα ζεύγη διαφορετικών στοιχείωνu,v V, τ.ω. urv. 10-May-18 6 6
Παράδειγμα Απλού Γράφου ΈστωVτο σύνολο κάποιων από τις πολιτείες των ΗΠΑ: Π.χ., V={FL, GA, AL, MS, LA, SC, TN, NC} ΈστωE={{u,v} u γειτονεύει μεv} ={{FL,GA},{FL,AL},{FL,MS}, {FL,LA},{GA,AL},{AL,MS}, {MS,LA},{GA,SC},{GA,TN}, {SC,NC},{NC,TN},{MS,TN}, {TN,AL}} LA MS AL TN NC SC GA FL 10-May-18 7 7
Επεκτάσεις Όλοι οι βασικοί τύποι γράφων μπορούν να επεκταθούν για να γίνουν πιό περιγραφικοί. Για παράδειγμα, οι ακμές μπορούν να έχουν κάποια ετικέττα Π.χ., στις ακμές του προηγούμενου παραδείγματος μπορούμε να βάλουμε ετικέττες με το μήκος των συνόρων μεταξύ των πολιτειών. 10-May-18 8 8
Πολυγράφοι Όπως οι απλοί, αλλά μπορεί να υπάρχουν περισσότερες από μία ακμές που να συνδέουν δύο κόμβους. Π.χ., οι κόμβοι είναι πόλεις, και οι ακμές είναι τμήματα δρόμων που τις ενώνουν. Παράλληλες ακμές 10-May-18 9 9
Κατευθυνόμενοι γράφοι Αντιστοιχούν σε τυχαίες σχέσεις R, που δεν χρειάζεται να είναι συμμετρικές. Ένας κατευθυνόμενος γράφος (V,E) αποτελείται από ένα σύνολο κορυφώνvκαι μία διμελή σχέση E επί τουv. Επομένως, οι ακμές είναι διατεταγμένα ζεύγη και όχι σύνολα! Π.χ..: V = το σύνολο των ανθρώπων, E={(x,y) x αγαπά y} 10-May-18 10 10
Κατευθυνόμενοι πολυγράφοι Όπως οι κατευθυνόμενοι γράφοι με την διαφορά πως μπορεί να υπάρχουν πολλαπλές ακμές που να συνδέουν δύο κόμβους. Π.χ., V=web pages, E=hyperlinks. Ο παγκόσμιος ιστός είναι ένας κατευθυνόμενος πολυγράφος... 10-May-18 11 11
Ανακεφαλαιώνοντας Γράφος G(V,E) Μη κατευθυνόμενος Κατευθυνόμενος (συμμετρική σχέση) (οποιαδήποτε σχέση) Απλός Πολυγράφος Απλός Πολυγράφος Ε: Σύνολο Ε:Πολυσύνολο Ε: Σύνολο Ε: Πολυσύνολο συνόλων συνόλων ή διατεταγμένων διατεταγμένων πολυσυνόλων ζευγών ζευγών 10-May-18 12 12
Ορολογία Εισαγωγή των ακόλουθων όρων: Γειτονικοί κόμβοι, συνδέει, άκρα ακμής, βαθμός, αρχική κορυφή, τερματική κορυφή, βαθμός κόμβου, έσω-βαθμός, έξω-βαθμός, πλήρης γράφος, κυκλικός γράφος, διμερής γράφος, υπογράφος,... 10-May-18 13 13
Γειτνίαση ΈστωGένας μη κατευθυνόμενος γράφος με σύνολο ακμών E. Έστωe E μεταξύ των κορυφών {u,v}. Τότε λέμε: Οι u, v είναι γειτονικοί / συνδέονται Η ακμήeείναι προσπίπτουσα στις κορυφέςuκαι v. Η ακμήeσυνδέειτις κορυφέςuκαιv. Οι κορυφές u και v είναι τα άκρα της ακμήςe. 10-May-18 14 14
Βαθμός μιας κορυφής Έστω G μη κατευθυνόμενος γράφος, με v V ένα κόμβο του. Ο βαθμός του v, deg(v), είναι ο αριθμός των ακμών που προσπίπτουν σε αυτόν (Κάθε βρόχος μετράει διπλά) Ένας κόμβος με μηδενικό βαθμό ονομάζεται απομονωμένος. 10-May-18 15 15
Βαθμός μιας κορυφής v1 v2 v3 v4 Deg(v1)=0, deg(v2)=deg(v3)=1, deg(v4)=2 10-May-18 16 16
Θεώρημα Έστω G μη-κατευθυνόμενος γράφος με σύνολο κορυφών V και σύνολο ακμών E. Τότε D deg( v) 2 E v V Απόδειξη: κάθε ακμή που εισάγεται στο γράφο έχει ως αποτέλεσμα D:= D+2 10-May-18 17 17
Θεώρημα Έστω G μη-κατευθυνόμενος γράφος με σύνολο κορυφών V και σύνολο ακμών E. Τότε D deg( v) 2 E v V Λήμμα: Κάθε μη κατευθυνόμενος γράφος έχει άρτιο πλήθος κόμβων περιττού βαθμού. 10-May-18 18 18
Θεώρημα Λήμμα: Κάθε μη κατευθυνόμενος γράφος έχει άρτιο πλήθος κόμβων περιττού βαθμού. Απόδειξη: D deg( v) 2 E v V v V, v ά. ύ v V, v. ύ v V, v. ύ v V, v ά. ύ v V, v. ύ v V, v. ύ deg( v) deg( v) 2 E deg( v) 2 E deg( v) deg( v) 2 E 2k 2( E k) deg( v): ά Επομένως πρέπει το πλήθος των κόμβων περιττού βαθμού να είναι άρτιος αριθμός 10-May-18 19 19
Παράδειγμα Ερώτημα: Μπορεί να υπάρχει περιττό πλήθος φοιτητών που να γνωρίζονται με περιττό πλήθος συμφοιτητών τους πριν μπουν στο CSD; 10-May-18 20 20
Παράδειγμα Υποθέστε ότι οι φοιτητές του ΗΥ118 αναπαριστώνται ως κόμβοι ενός γράφου που αναπαριστά τη σχέση γνωριμίας Μία ακμή μεταξύ δύο κόμβων aκαι b σημαίνει ότι η/οaκαι η/οbγνωρίζονταν πριν την εισαγωγή τους στο τμήμα Απάντηση: Αρνητική απάντηση στο ερώτημα, το πλήθος των φοιτητών με περιττό αριθμό γνωριμιών δεν μπορεί να είναι περιττός αριθμός! 10-May-18 21 21
Κατευθυνόμενη γειτνίαση Έστω G κατευθυνόμενος γράφος, και έστω e μία ακμή του G μεταξύ των κορυφών (u,v). Τότε λέμε: Η e ξεκινά από την u, η e καταλήγει στη v. Η e συνδέει τηνu στη v, ηe πηγαίνει από τηνu στη v Ηαρχική κορυφήτηςeείναι ηu Η τερματική κορυφή τηςeείναι ηv 10-May-18 22 22
Βαθμός κορυφής σε κατευθυνόμενους γράφους Έστω G κατευθυνόμενος γράφος καιvμία κορυφή του. Ο έσω-βαθμός της v, deg (v), είναι το πλήθος των ακμών που καταλήγουν στη v. Ο έξω-βαθμός τηςv, deg (v), είναι το πλήθος των ακμών που ξεκινούν από τηv. Ο βαθμός τηςv, deg(v): deg (v)+deg (v), είναι το άθροισμα του έσω- και έξω-βαθμού της v. 10-May-18 23 23
Θεώρημα Έστω G=(V, E) κατευθυνόμενος γράφος. Τότε: v 1 deg ( ) deg ( v) deg( v) E v V v V 2 v V Σημειώστε ότι ο βαθμός μιας κορυφής δεν αλλάζει με βάση το αν οι ακμές είναι κατευθυνόμενες ή όχι. 10-May-18 24 24
Ειδικές κατηγορίες μη κατευθυνόμενων γράφων Πλήρεις γράφοι K n Κυκλικοί γράφοι C n Διμερείς γράφοι Πλήρεις διμερείς γράφοι K m,n 10-May-18 25 25
Πλήρεις γράφοι n N, ένας απλός πλήρης γράφοςnκορυφών, K n, είναι ένας απλός γράφος μεnκορυφές στον οποίο κάθε κόμβος γειτνιάζει με όλους τους υπόλοιπους: u,v V: u v {u,v} E. K 1 K 2 K 3 K 4 K5 K 6 n 1 i 1 n( n 1) i Πλήθος ακμών του K n : 2 10-May-18 26 26
Θεωρείστε οποιοδήποτε απλό πλήρη γράφο G=(V,E). Μπορεί το E να περιέχει ακμές που συνδέουν ένα κόμβο με τον εαυτό του; Όχι! Εφόσον είναι απλός, δεν μπορεί να περιλαμβάνει στοιχεία της μορφής {α,α} γιατί το {α,α} δεν είναι σύνολο! 10-May-18 27 27
Κυκλικοί γράφοι Για οποιοδήποτεn 3, ένας κυκλικός γράφος n κορυφών, C n, είναι ένας απλός γράφος όπουv={v 1,v 2,,v n } και E={{v 1,v 2 },{v 2,v 3 },,{v n 1,v n },{v n,v 1 }}. C 3 C 4 C 5 C 6 C 7 C 8 Πόσες ακμές υπάρχουν στο Cn ; 10-May-18 28 28
Μπορεί ένας κυκλικός γράφος να είναι πλήρης γράφος; 10-May-18 29 29
Μπορεί ένας κυκλικός γράφος να είναι πλήρης γράφος; Ναι: Ο πλήρης γράφος Κ 3 είναι κυκλικός Δεν υπάρχει κανένας άλλος κυκλικός γράφος που να είναι πλήρης 10-May-18 30 30
Ορισμός: Ένας γράφος ονομάζεται κανονικός αν και μόνο αν κάθε κόμβος του έχει τον ίδιο βαθμό. Οι πλήρεις γράφοι είναι κανονικοί (n-1 βαθμό για κάθε κόμβο, εάν έχουμε n κόμβους) Οι κυκλικοί γράφοι είναι κανονικοί (βαθμός 2 για κάθε κόμβο) 10-May-18 31 31
Διμερείς γράφοι Ένας γράφος G=(V,E) λέγεται διμερής αν και μόνο ανv= V 1 V 2 όπουv 1 V 2 = και e E: v 1 V 1,v 2 V 2 : e={v 1,v 2 }. Δηλαδή: Το σύνολο V των κόμβων χωρίζεται σε δύο υποσύνολα έτσι ώστε οι ακμές να συνδέουν κόμβους διαφορετικών υποσυνόλων Ο ορισμός μπορεί εύκολα να τροποποιηθεί για την περίπτωση κατευθυνόμενων γράφων. V 1 V 2 10-May-18 32 32
Διμερείς γράφοι αναπαριστούν σχέσεις στοιχείων διαφορετικών συνόλων, π.χ., Άντρες / γυναίκες Λέξεις, συνδεδεμένες με τον αριθμό γραμμάτων τους Λογικές προτάσεις, συνδεδεμένες με τις προτάσεις που σε φυσική γλώσσα εκφράζουν το νόημά τους 10-May-18 33 33
Ερωτήσεις Μπορείτε να σκεφτείτε ένα γράφο με δύο κορυφές που να μην είναι διμερής; Μπορείτε να σκεφτείτε ένα απλό γράφο με δύο κορυφές που να μην είναι διμερής; Μπορείτε να σκεφτείτε ένα απλό γράφο με τρεις κορυφές και ένα μη-κενό σύνολο ακμών που να είναι διμερής; 10-May-18 34 34
Ερωτήσεις Μπορείτε να σκεφτείτε ένα γράφο με δύο κορυφές που να μην είναι διμερής; Ναι, αν υπάρχουν βρόχοι. Μπορείτε να σκεφτείτε ένααπλό γράφο με δύο κορυφές που να μην είναι διμερής; Όχι, δεν υπάρχει, πρέπει να είναι διμερής Μπορείτε να σκεφτείτε ένα απλό γράφο με τρεις κορυφές και ένα μη-κενό σύνολο ακμών που να είναι διμερής; Ναι, αρκεί να μην είναι πλήρης 10-May-18 35 35
Πλήρεις διμερείς γράφοι Για m,n N, ο πλήρης διμερής γράφος K m,n είναι ένας διμερής γράφος τέτοιος ώστε V 1 = m, V 2 = n, και E = {{v 1,v 2 } για κάθε v 1 V 1 καιv 2 V 2 } K 4,3 O Km,n έχει m+n κόμβους και mxn ακμές. 10-May-18 36 36
Υπογράφημα Ένα υπογράφημα ενός γράφου G=(V,E) είναι ένας γράφος H=(W,F) όπου W V καιf E. G H 10-May-18 37 37
Υπογράφημα Ένα υπογράφημα ενός γράφου G=(V,E) είναι ένα γράφημα H=(W,F) όπου W V καιf E. ΣΗΜΕΙΩΣΗ: αφού ο Η είναι γράφος, υποχρεωτικά το σύνολο F των ακμών του θα συνδέει κορυφές που ανήκουν στο W! 10-May-18 38 38
Υπογράφημα Παραδείγματα 10-May-18 39 39
Επικαλύπτον υπογράφημα Ο γράφος H=(V,F) αποτελεί ένα επικαλύπτον υπογράφημα του γράφου G=(V,E). ΣΗΜΕΙΩΣΗ: υπογράφημα με το ίδιο σύνολο κορυφών αλλά με σύνολο ακμών F που είναι υποσύνολο του Ε. 10-May-18 40 40
Συμπλήρωμα γραφήματος Το συμπλήρωμα ενός γράφου G =(V, E ) ως προς ένα γράφο G=(V,E) είναι ένας γράφος G =(Q, E-E ). ΣΗΜΕΙΩΣΗ: Περιλαμβάνει δηλαδή τις ακμές που ανήκουν στο Ε αλλά όχι στο Ε, και όλες τις κορυφές του V που συνδέονται με ακμές στο σύνολο Ε-Ε, ΚΑΙ τους απομονωμένους κόμβους του G. Συνήθως μιλάμε για συμπλήρωμα ενός γράφου ως προς τον αντίστοιχο πλήρη γράφο 10-May-18 41 41
Συμπλήρωμα γραφήματος Παράδειγμα: Ο (α) γράφος είναι το συμπλήρωμα του (γ) ως προς τον (β) (α) (β) (γ) 10-May-18 42 42