640 likes | 815 Views
Θεματική Ενότητα. Γραφήματα & Επίπεδα Γραφήματα. Μονοπάτια & Κυκλώματα. Ορισμός.
E N D
Θεματική Ενότητα Γραφήματα & Επίπεδα Γραφήματα
Ορισμός • Σε ένα κατευθυνόμενο γράφημα, ένα μονοπάτι είναι μια ακολουθία από ακμές (ei1, ei2, …, eik)τέτοιες ώστε η τερματική κορυφή της eij να ταυτίζεται με την αρχική κορυφή της ei(j+1) για 1 £j£k-1
Μονοπάτια • Ένα μονοπάτι ονομάζεται απλό αν δεν περιέχει την ίδια ακμή δύο φορές • Ένα μονοπάτι ονομάζεται στοιχειώδες αν δεν συναντά την ίδια κορυφή δύο φορές
Παράδειγμα • Το (e1, e2, e3, e4) είναι ένα μονοπάτι • Το (e1, e2, e3, e5, e9, e10, e11, e4) είναι ένα απλό μονοπάτι αλλά δεν είναι στοιχειώδες
Ορισμός • Ένα κύκλωμα είναι ένα μονοπάτι (ei1, ei2, …, eik) στο οποίο η τερματική κορυφή της eikσυμπίπτει με την αρχική κορυφή της ei1
Κυκλώματα • Ένα κύκλωμα ονομάζεται απλό αν δεν περιέχει την ίδια ακμή δύο φορές • Ένα κύκλωμα ονομάζεται στοιχειώδες αν δεν συναντά την ίδια κορυφή δύο φορές
Παράδειγμα • Το (e1, e2, e3, e5, e6, e7) είναι ένα στοιχειώδες κύκλωμα • Το (e1, e2, e3, e5, e 9, e10 , e 12, e 6, e7) είναι ένα απλό κύκλωμα αλλά δεν είναι στοιχειώδες
Θεώρημα • Σε ένα (κατευθυνόμενο ή μη) γράφημα με nκορυφές, εάν υπάρχει ένα μονοπάτι από μια κορυφή u1σε μια κορυφή u2, τότε υπάρχει ένα μονοπάτι από όχι περισσότερες από n-1 ακμές από την κορυφή u1στην κορυφή u2
Συνεκτικό Γράφημα • Ένα μη κατευθυνόμενο γράφημα ονομάζεται συνεκτικό αν υπάρχει ένα μονοπάτι μεταξύ κάθε δύο κορυφών • Αλλιώς ονομάζεται μη συνεκτικό • Ένα κατευθυνόμενο γράφημα ονομάζεται συνεκτικό αν το μη κατευθυνόμενο γράφημα που προκύπτει από αυτό όταν δεν ληφθούν υπ’ όψιν οι κατευθύνσεις των ακμών είναι συνεκτικό • Αλλιώς ονομάζεται μη συνεκτικό
Συνεκτικό Γράφημα (συνέχεια) • Ένα κατευθυνόμενο γράφημα ονομάζεται ισχυρά συνεκτικό αν για κάθε δύο κορυφές α και b στο γράφημα υπάρχει ένα μονοπάτι από το aστο bκαθώς και ένα μονοπάτι από το bστο a Συνεκτικό (όχι ισχυρά) γράφημα Μη συνεκτικό γράφημα
Ορισμός • Το βάρος μιας ακμής {i,j}, w(i,j), λέγεται συνήθως μήκος της ακμής {i,j}και έχει διάφορες ερμηνείες, (π.χ. απόσταση, κόστος) ανάλογα με το εκάστοτε εξεταζόμενο πρόβλημα
Ορισμός • Το μήκος ενός μονοπατιού σε ένα βεβαρυμένο γράφημα G = (V, E, w), ορίζεται ως το άθροισμα των μηκών των ακμών στο μονοπάτι
Ελάχιστα Μονοπάτια • Προσδιορισμός ενός ελαχίστου μονοπατιού από μια κορυφή σε μια άλλη κορυφή στο V • Αλγόριθμος Digkstra
Αλγόριθμος Digkstra Υποθέστε ότι θέλουμε να προσδιορίσουμε το ελάχιστο μονοπάτι από μια κορυφή aσε μια κορυφή z στοG. Στη διαδικασία μας • Προσδιορίζεται ένα ελάχιστο μονοπάτι από την α προς κάποια άλλη κορυφή • Μετά προσδιορίζεται ένα ελάχιστο μονοπάτι από την α προς κάποια άλλη κορυφή • κ.ο.κ Η διαδικασία τερματίζεται όταν έχει προσδιοριστεί ένα ελάχιστο μονοπάτι από την α στη z
Αλγόριθμος Digkstra (συνέχεια) Η διαδικασία μας βασίζεται στις ακόλουθες παρατηρήσεις • Έστω Τ ένα υποσύνολο κορυφών του Vμε αÏΤ • Έστω P το υποσύνολο των κορυφών V-T Ένα ελάχιστο μονοπάτι από την α σε μια από τις κορυφές του Τ μπορεί να οριστεί ως εξής • Για κάθε κορυφήt στο Tέστω l(t) το μήκος του ελάχιστου μονοπατιού ανάμεσα σε όλα τα μονοπάτια από την α στην tτα οποία δεν περιέχουν καμία άλλη κορυφή του Τ
Αλγόριθμος Digkstra (συνέχεια) • l(t): δείκτης της tως προς P • Ανάμεσα σε όλες τις κορυφές του Τ, έστω t1μια κορυφή που έχει τον ελάχιστο δείκτη • Υποστηρίζουμε ότι η ελάχιστη απόσταση μεταξύ της α και της t1είναι πράγματι l(t1)
Αλγόριθμος Digkstra (συνέχεια) • Για να αποδείξουμε τον ισχυρισμό μας ας υποθέσουμε ότι υπάρχει ένα μονοπάτι από την α στην t1το μήκος του οποίου είναι μικρότερο από l(t1). • Ένα τέτοιο μονοπάτι θα πρέπει να περιλαμβάνει μια ή περισσότερες από τις κορυφές του Τ-{t1} • Έστω t2η πρώτη κορυφή του Τ-{t1} που συναντάμε όταν διασχίζουμε το μονοπάτι αυτό από την α στην t1
Αλγόριθμος Digkstra (συνέχεια) • Προκύπτει ότι το l(t2)είναι μικρότερο από το l(t1) • Άτοπο • Συνεπώς αν όταν υπολογίζουμε το l(t) καταγράφουμε την ακολουθία των κορυφών στο μονοπάτι που δημιούργησε το l(t) για κάθε t στο T • Θα έχουμε επίσης προσδιορίσει ένα ελάχιστο μονοπάτι από την α στην t1
Υπολογισμός Δείκτη Κορυφής • Έστω Τένα υποσύνολο του Vκαι έστωP=V-T • Υποθέστε ότι για κάθε κορυφή pστο P, υπάρχει ένα ελάχιστο μονοπάτι από την α στην p, το οποίο περιλαμβάνει μόνο κορυφές του P • Υποθέτουμε ότι για κάθε κορυφή t του Τ έχουμε ήδη υπολογίσει τον δείκτη της ως προς το P, l(t)
Υπολογισμός Δείκτη Κορυφής(συνέχεια) • Έστω xμία κορυφή στο Τ • Έστω P’το PÈ {x} και Τ’ το T-{x} • Έστω l’(t) o δείκτης μιας κορυφής t’ στο Τ’ ως προς P’ • Ισχύει l’(t) = min[l(t),l(x) + w(x,t)] (1)
Τυποποίηση Αλγορίθμου Digkstra Υπολογισμός της ελάχιστης απόστασης από το α σε οποιαδήποτε κορυφή του G • Αρχικά έστω ότι P={a} και Τ=V-{a}. Για κάθε κορυφή tστο T, έστω l(t) = w(a,t) • Επίλεξε την κορυφή του Τ που έχει τον μικρότερο δείκτη ως προς P. Έστω xη κορυφή αυτή.
Τυποποίηση Αλγορίθμου Digkstra(συνέχεια) • Αν το x είναι η κορυφή στην οποία θέλουμε να φτάσουμε από την α, σταμάτα. Αν όχι, έστω P’=PÈ {x} και Τ’=Τ-{x}. Για κάθεκορυφή tτου T’, υπολόγισε τον δείκτη της ως προς P’ σύμφωνα με την (1) • Επανέλαβε τα βήματα 2 και 3 χρησιμοποιώντας ως P το P’και ως Τ το Τ’
Ορισμός • Σε ένα γράφημα ορίζουμε ως μονοπάτι Euler ένα μονοπάτι το οποίο διασχίζει κάθε ακμή του γραφήματος ακριβώς μία φορά
Ορισμός • Ο βαθμός μιας κορυφής είναι ο αριθμός των ακμών που προσπίπτουν σε αυτήν
Βαθμός Κορυφής • Σε οποιοδήποτε γράφημα υπάρχει ένας άρτιος αριθμός κορυφών περιττού βαθμού • Κάθε ακμή συνεισφέρει κατά 1 στον βαθμό των δύο κορυφών στις οποίες προσπίπτει • Το άθροισμα των βαθμών των κορυφών είναι ίσο με το διπλάσιο του αριθμού των ακμών στο γράφημα • Άρα ο αριθμός κορυφών περιττού βαθμού είναι άρτιος
Θεώρημα • Ένα μη κατευθυνόμενο γράφημα περιέχει ένα μονοπάτι Eulerαν και μόνο αν είναι συνεκτικό και έχει είτε μηδέν είτε δύο κορυφές περιττού βαθμού
Πόρισμα • Ένα μη κατευθυνόμενο γράφημα περιέχει ένα κύκλωμα Euler αν και μόνο αν είναι συνεκτικό και όλες οι κορυφές του είναι άρτιου βαθμού
Παράδειγμα • Το γράφημα (α) έχει ένα μονοπάτι Euler αλλά όχι ένα κύκλωμα Euler αφού το γράφημα είναι συνεκτικό και υπάρχουν ακριβώς δύο κορυφές, οι dκαιe, περιττού βαθμού • Το γράφημα (β) έχει ένα κύκλωμα Euler γιατί είναι • συνεκτικό και όλες οι κορυφές είναι άρτιου βαθμού
Παράδειγμα Θα έχετε ίσως υπ’ όψιν σας προβλήματα που αναφέρονται στο αν είναι δυνατόν να σχεδιαστεί ένα δεδομένο σχήμα με μονοκοντυλιά χωρίς να επαναλαμβάνεται κάποιο τμήμα του σχήματος. Π.χ. το σχήμα (α) μπορεί να σχεδιαστεί όπως φαίνεται στο σχήμα (β)
Παράδειγμα(συνέχεια) • Φανταστείτε ότι το σχήμα (α) είναι ένα γράφημα όπως φαίνεται στο σχήμα (γ) • Τότε το πρόβλημα του σχεδιασμού του σχήματος (α) είναι αυτό του καθορισμού της ύπαρξης ενός μονοπατιού Euler στο γράφημα (γ)
Παράδειγμα(συνέχεια) • Αφού το γράφημα (γ) έχει μόνο δύο κορυφές περιττού βαθμού, έχει ένα μονοπάτι Euler • Παρομοίως, τα δύο σχήματα στο (δ) μπορούν επίσης να σχεδιαστούν μονοκοντυλιά, χωρίς να επαναληφθεί κάποιο τμήμα τους
Παράδειγμα Θέλουμε να μάθουμε αν είναι δυνατόν να διατάξουμε 28 διαφορετικά ντόμινο σε έναν κύκλο έτσι ώστε τα γειτονικά μισά κάθε δύο γειτονικών ντόμινο στη διάταξη να είναι ίδια • Κατασκευάζουμε ένα γράφημα με επτά κορυφές οι οποίες αντιστοιχούν στα «κενό», 1, 2, 3, 4, 5 και 6. • Στο γράφημα αυτό κάθε ζεύγος κορυφών ενώνεται με μία ακμή και επιπλέον σε κάθε κορυφή υπάρχει ένας βρόχος
Παράδειγμα(συνέχεια) Θεωρούμε τώρα ότι κάθε ακμή αναπαριστά ένα ντόμινο του οποίου τα δύο μισά είναι οι δύο κορυφές στις οποίες προσπίπτει η ακμή • Προκύπτει ότι ένα κύκλωμα Euler στο γράφημα αυτό θα αντιστοιχεί σε μια κυκλική διάταξη, όπως ζητάει το πρόβλημά μας • Αφού ο βαθμός κάθε κορυφής στο γράφημα είναι 8, υπάρχει πράγματι ένα κύκλωμα Euler
Ορισμός • Σε ένα κατευθυνόμενο γράφημα, ο εισερχόμενος βαθμός μιας κορυφής είναι ο αριθμός των ακμών που είναι προσπίπτουσες σε αυτή και ο εξερχόμενος βαθμός μιας κορυφής είναι ο αριθμός των ακμών που είναι προσπίπτουσες από αυτή
Θεώρημα • Ένα κατευθυνόμενο γράφημα περιέχει ένα κύκλωμα Eulerαν και μόνο αν είναι συνεκτικό και ο εισερχόμενος βαθμός κάθε κορυφής είναι ίσος με τον εξερχόμενο βαθμό της
Θεώρημα • Ένα κατευθυνόμενο γράφημα περιέχει ένα μονοπάτι Eulerαν και μόνο αν είναι συνεκτικό και ο εισερχόμενος βαθμός κάθε κορυφής είναι ίσος με τον εξερχόμενο βαθμό της με δυνατή την εξαίρεση δύο κορυφών.
Θεώρημα(συνέχεια) • Για τις δύο αυτές κορυφές, ο εισερχόμενος βαθμός της μίας πρέπει να είναι κατά ένα μεγαλύτερος από τον εξερχόμενο βαθμό της, και ο εισερχόμενος βαθμός της άλλης πρέπει να είναι κατά ένα μικρότερος από τον εξερχόμενο βαθμό της
Παράδειγμα Πρόβλημα μετατροπής αναλογικού υπολογισμού σε ψηφιακό • Η επιφάνεια ενός περιστρεφόμενου τυμπάνου διαιρείται σε 16 τομείς όπως φαίνεται στο σχήμα (α)
Παράδειγμα(συνέχεια) Η πληροφορία για τη θέση του τυμπάνου θα αναπαρασταθεί από τα ψηφιακά δυαδικά σήματα a, b, cκαι d, όπως φαίνεται στο σχήμα (β) όπου • αγώγιμα (γραμμοσκιασμένη περιοχή) και • μη αγώγιμα (λευκή περιοχή) υλικά χρησιμοποιούνται για να δημιουργηθούν οι τομείς
Παράδειγμα(συνέχεια) Ανάλογα με την θέση του τυμπάνου, οι ακροδέκτες a,b, c και dθα είναι είτε γειωμένοι είτε μονωμένοι Οι 16 διαφορετικές θέσεις του τυμπάνου αναπαρίστανται με διαφορετικό τρόπο από τα δυαδικά σήματα στους ακροδέκτες Þ οι τομείς θα πρέπει να κατασκευαστούν με τέτοιο τρόπο ώστε να μην υπάρχουν δύο ίδιες διατάξεις από τέσσερις διαδοχικούς αγώγιμους και μη αγώγιμους τομείς
Παράδειγμα(συνέχεια) Το πρόβλημα είναι • να καθοριστεί αν υπάρχει μια τέτοια διάταξη από διαδοχικούς αγώγιμους και μη αγώγιμους τομείς, και αν υπάρχει, να προσδιοριστεί ποια διάταξη είναι
Παράδειγμα(συνέχεια) Θέτοντας το δυαδικό ψηφίο 0 ως σύμβολο ενός αγώγιμου τομέα και το δυαδικό σύμβολο 1 ως σύμβολο ενός μη αγώγιμου τομέα, αναδιατυπώνουμε το πρόβλημα ως εξής: • Τοποθετήστε 16 δυαδικά ψηφίασε κυκλική διάταξη έτσι ώστε οι 16 ακολουθίες τεσσάρων διαδοχικών ψηφίων να είναι όλες διαφορετικές
Παράδειγμα(συνέχεια) • Κατασκευάζουμε ένα κατευθυνόμενο γράφημα με οκτώ κορυφές, οι οποίες σημαδεύονται με τους οκτώ διαφορετικούς τριψήφιους δυαδικούς αριθμούς {000, 001, …, 111} • Από μία κορυφή που είναι σημαδεμένη με α1α2α3, υπάρχει μία ακμή προς την κορυφή που είναι σημαδεμένη με α2α3α0 και μία ακμή προς την κορυφή που είναι σημαδεμένη με α2α31
Παράδειγμα(συνέχεια) Σημαδεύουμε κάθε ακμή του γραφήματος με έναν τετραψήφιο δυαδικό αριθμό ως εξής: η ακμή από την κορυφήα1α2α3προς την κορυφή α2α3α0 σημαδεύεται με α1α2α31 Οι κορυφές είναι σημαδεμένες με τους οκτώδιαφορετικούς τριψήφιους δυαδικούς αριθμούς Þοι ακμές θα σημαδευτούν με τους 16διαφορετικούς τετραψήφιους δυαδικούς αριθμούς
Παράδειγμα(συνέχεια) Σε ένα μονοπάτι στο γράφημα, τα σημάδια για δύο διαδοχικές ακμές θα πρέπει να είναι της μορφής α1α2α3α4καια2α3α4α5 δηλαδή τα τρία τελευταία ψηφίααπό το σημάδι της πρώτης ακμής θα πρέπει να είναι ίδια με τα τρία πρώτα ψηφία από το σημάδι της δεύτερης ακμής • Οι 16 ακμές στο γράφημα είναι σημαδεμένες με διαφορετικούς τρόπους
Παράδειγμα(συνέχεια) Þ υπάρχει μία κυκλική διάταξη των 16 δυαδικών ψηφίων η οποία αντιστοιχεί σε ένα κύκλωμα Euler του γραφήματος, στην οποία όλες οι ακολουθίες τεσσάρων διαδοχικών ψηφίων είναι διαφορετικές • π.χ. η ακολουθία των 16 δυαδικών ψηφίων που αντιστοιχεί στο κύκλωμα Euler (e0, e1, e2, e5, e10, e4, e9, e3, e6, e13, e11, e7, e15, e14, e12, e8) είναι η 0000101001101111 (η κυκλική διάταξη δημιουργείται αν κλείσουμε τα δύο άκρα της ακολουθίας)
Παράδειγμα(συνέχεια) Σύμφωνα με το αποτέλεσμά μας παραπάνω, η ύπαρξη ενός κυκλώματος Euler στο γράφημα είναι προφανής, γιατί καθεμία από τις κορυφές έχει • εισερχόμενο βαθμό ίσο με 2 και • εξερχόμενο βαθμό ίσο με 2
Ορισμός • Ορίζουμε ως μονοπάτι (κύκλωμα) Hamilton ένα μονοπάτι (κύκλωμα) το οποίο περνά από καθεμία από τις κορυφές ενός γραφήματοςακριβώς μία φορά
Παράδειγμα Θεωρήστε το πρόβλημα του να προσδιορίσει κάποιος τους τρόπους με τους οποίους μια ομάδα ανθρώπων μπορεί να καθίσει σε ένα στρογγυλό τραπέζι Κατασκευάζουμε ένα μη κατευθυνόμενο γράφημα έτσι ώστε • οι κορυφές να συμβολίζουν τους ανθρώπους και • οι ακμές να αναπαριστούν τη σχέση φιλίας μεταξύ ανθρώπων