Δευτέρα 5-7, Τετάρτη 1-3 στην αίθουσα Λ 210. Έναρξη μαθημάτων: 1/10/07.
Ώρες γραφείου: Τρίτη 10-12πμ.
Θα περιγράψουμε τρόπους με τους οποίους αλγόριθμοι οι οποίοι έχουν πρόσβαση σε μια πηγή τυχαιότητας μπορούν να πλεονεκτούν των αμιγώς ντετερμινιστικών αλγορίθμων, σε απλότητα ή ταχύτητα. Θα δούμε διάφορα παραδείγματα επιτυχημένων τέτοιων αλγορίθμων και θα τα αναλύσουμε.
Η σελίδα αυτή θα ενημερώνεται τουλάχιστον μετά από κάθε μάθημα και σκοπό έχει να μεταδίδει μερικές βασικές χρήσιμες πληροφορίες για το περιεχόμενο του μαθήματος (π.χ. τι να προσέξετε, υποδείξεις για λύσεις των ασκήσεων, κ.ά.) καθώς και για διαδικαστικά θέματα.
Σπανίως θα βγαίνουν ανακοινώσεις που αφορούν το μάθημα σε χαρτί. Παρακαλώ να συμβουλεύεστε αυτή τη σελίδα τουλάχιστον 2-3 φορές την εβδομάδα.
Είδαμε μερικά παραδείγματα πιθανοθεωρητικών αλγορίθμων και μερικά από τα χαρακτηριστικά τους, όπως π.χ. το ότι μπορούν να κάνουν λάθος με κάποια πιθανότητα.
Συγκεκριμένα είδαμε
Επειδή είχαμε δύο καινούργια άτομα στο ακροατήριο επαναλάβαμε τα Παραδείγματα 1 και 2 της Δευτέρας. Επίσης παρουσιάσαμε και αναλύσαμε ένα πιθανοθεωρητικό αλγόριθμο για της εύρεση μιας ελάχιστης τομής (min cut) ενός γραφήματος και υπολογίσαμε άνω φράγμα γαι την πιθανότητα να μη βρεθεί η ελάχιστη τομή (ο αλγόριθμος δίνει πάντα κάποια τομή του γραφήματος). Είδαμε πόσες φορές πρέπει να τρέχουμε ανεξάρτητα τον αλγόριθμο για να «ενισχύσουμε» αυτή την πιθανότητα επιτυχίας.
Δείξαμε διάφορες μεθόδους για τον υπολογισμό μέσων τιμών τυχαίων μεταβλητών (ΤΜ) και ιδιαίτερα το σπάσιμο μιας ΤΜ σε άθροισμα απλών (και συνήθως με τιμές 0 ή 1) ΤΜ.
Είδαμε τι σημαίνει ο συμβολισμός
όπως και την ταυτότητα
Τέλος είδαμε πώς δουλεύει ο αλγόριθμος Quicksort για την ταξινόμηση μιας λίστας αριθμών και υπολογίσαμε τη μέση τιμή του χρόνου που χρειάζεται για να ταξινομήσει μια λίστα μήκους (είδαμε ότι αυτή η μέση τιμή είναι .
Είδαμε μερικές βασικές ανισότητες απόκλισης από τη μέση τιμή. Συγκεκριμένα είδαμε τις ανισότητες Markov και Chebyshev. Είδαμε επίσης πώς εφαρμόζονται αυτές οι δύο στο πρόβλημα με τη συλλογή κουπονιών (coupon collector problem).
Είδαμε επίσης ένα πιθανοθεωρητικό αλγόριθμο γραμμικού χρόνου για την εύρεση median μιας λίστας αλλά δεν τελειώσαμε την ανάλυσή του, την εκτίμηση δηλ. της πιθανότητας ο αλγόριθμος να αποτύχει.
Είδαμε ανισότητες του τύπου όπου το άνω φράγμα είναι εκθετικά μικρό. Τέτοιου είδους ανισότητες ισχύουν όταν η έχει κάποια δομή, και συγκεκριμένα προκύπτει ως άθροισμα πολλών ανεξαρτήτων ΤΜ.
Χρησιμοποιώντας την ανισότητα του Chernoff δείξαμε το εξής θεώρημα του Erdös:
υπάρχουν ασυμπτωτικές προσθετικές βάσεις των ακεραίων (σύνολα τέτοια ώστε κάθε αρκετά μεγάλος φυρικός αριθμός γράφεται σαν άθροισμα δύο στοιχείων του ) τέτοιες ώστε το πλήθος των αναπαραστάσεων του φυσικού αριθμού φράσσεται άνω και κάτω από ένα σταθερό πολλαπλάσιο του .
Λεπτομέρειες εδώ, σελ. 6.
Το μάθημα της Τετάρτης 24/10/07 αναβάλλεται λόγω κωλύματός μου με ένα συνέδριο που οργανώνεται εδώ.
Είδαμε σήμερα μια γενική μεθοδολογία που σε πολλές περιπτώσεις καταφέρνει να μετατρέψει ένα πιθανοθεωρητικό αλγόριθμο σε ένα ντετερμινιστικό χωρίς να αυξήσει πολύ το χρόνο. Η γενική φιλοσοφία της μεθόδου αυτής είναι ότι, για ένα πιθανοθεωρητικό αλγόριθμο, αντικαθιστούμε μια ακολουθία από ανεξάρτητες τυχαίες επιλογές με μια ακολουθία από συγκεκριμένες και υπολογίσιμες επιλογές έχοντας ως κριτήριό μας, σε κάθε βήμα, οι επιλογές που θα κάνουμε να είναι τέτοιες ώστε να μεγιστοποιούν τις πιθανότητες επιτυχίας μας από κει και πέρα, δεσμευμένες ως προς τις μέχρι τότε επιλογές μας.
Είδαμε διάφορα παραδείγματα εφαρμογής της μεθόδου. Περισσότερα μπορείτε να διαβάσετε εδώ, σελ. 8.
Παρακαλώ λύστε τις ασκήσεις του βιβλίου σας: 1.6, 1.11, 2.2, 2.4, 2.10, 2.14, 2.18, 2.21, 2.26, 2.28. Πρέπει να παραδώσετε τις λύσεις μέχρι και το μάθημα της 5 Νοεμβρίου 2007.
Είδαμε ένα πιθανοθεωρητικό αλγόριθμο για δρομολόγηση πακέτων πάνω στον υπερκύβο διάστασης και αναλύσαμε την απόδοσή του.
Την προσεχή Τετάρτη, 31/10/07, το μάθημα θα γίνει 5-7μμ στην ίδια αίθουσα.
Το πρόβλημα 1.5 του βιβλίου σας είναι εξαιρετικά ενδιαφέρον αν και πολύ απλό στη λύση του. Μην παραλείψετε να το κοιτάξετε (το παράδοξο των μη μεταβατικών ζαριών - nontransitive dice paradox).
Είδαμε διάφορα ερωτήματα που προκύπτουν αν ρίξουμε τυχαία m μπάλες σε n διακεκριμένα κουτιά, ένα πρόβλημα που μοντελοποιεί πολλά άλλα. Π.χ. είδαμε τον αλγόριθμο bucket sort, ένα ντετερμινιστικό αλγόριθμο διάταξης στοιχείων τον οποίο αναλύσαμε για ένα τυχαίο input και είδαμε ότι ο μέσος χρόνος που παίρνει για ένα τυχαίο input είναι .
Δείξαμε επίσης ότι αν ρίξουμε μπάλες σε κουτιά τότε σχεδόν σίγουρα (με πιθανότητα που τείνει στο 1) κάθε κουτί έχει το πολύ μπάλες.
Εισαγάγαμε την κατανομή Poisson() και είδαμε διάφορες ιδιότητές της. Είδαμε επίσης ότι όταν και τότε η κατανομή (διωνυμική με παραμέτρους ) τείνει στην Poisson(), με την έννοια ότι αν και Poisson() τότε , για κάθε σταθερό .
Είδαμε με ποιο τρόπο μπορούμε να λύσουμε διάφορα προβλήματα που αφορούν το πρόβλημα μπάλες σε κουτιά, λύνοντας πρώτα το αντίστοιχο πρόβλημα όπου υποθέτουμε ότι το κάθε κουτί έχει ανεξάρτητα περιεχόμενα που ακολουθούν την Poisson(), και χρησιμοποιώντας κάποια θεωρήματα που φράσσουν πιθανότητες που αφορούν το πραγματικό πρόβλημα με πιθανότητες που αφορούν το προσεγγιστικό πρόβλημα Poisson, το οποίο είναι, συνήθως, πολύ ευκολότερο να αναλυθεί μια και τα περιεχόμενα των κουτιών είναι ανεξάρτητα.
Είδαμε πώς λειτουργεί ένα απλό hash table και κάναμε μια ανάλυση των ιδιοτήτων του. Είδαμε π.χ. ότι σχεδόν σίγουρα ο μέγιστος χρόνος αναζήτησης σε ένα hash table με bins και αντικείμενα είναι και ο μέσος χρόνος αναζήτησης είναι (σταθερός).
Είδαμε την απόδειξη του τοπικού λήμματος του Lovasz καθώς και δύο εφαρμογές αυτού (§6.7).
Είδαμε μερικές από τις βασικές ιδιότητες των αλυσίδων Markov και ξεκινήσαμε να βλέπουμε ένα αλγόριθμο επίλυσης του προβλήματος 2SAT που συνίσταται στην εκτέλεση ενός τυχαίου περίπατου μέχρι να βρούμε μια ανάθεση τιμών στις μεταβλητές που ικανοποιεί όλα τα clauses.
Τελειώσαμε την ανάλυση του αλγορίθμου για το 2SAT (εκτός από ένα λεπτό σημείο για τη σύγκριση δύο στοχαστικών ανελίξεων το οποίο δεν εξηγείται καλά στο βιβλίο).
Μιλήσαμε για ιδιότητες των καταστάσεων μιας αλυσίδας Markov όσον αφορά την επαναφορά (recurrence) κυρίως.
Λύσαμε μερικές ασκήσεις από το Φυλλάδιο 1 στις οποίες υπήρχε κάποιο πρόβλημα.
Διευκρινήσαμε ένα πρόβλημα σύγκρισης δύο τυχαίων περιπάτων που μας είχε απασχολήσει αρκετά.
Συνεχίσαμε τη συζήτηση για τα είδη των καταστάσεων μιας αλυσίδας Markov όσον αφορά την επαναφορά.
Τελειώσαμε τη συζήτηση για αλυσίδες Markov αναφέροντας ιδιότητες των τυχαίων περιπάτων σε μη κατευθυνόμενα γραφήματα και ένα αλγόριθμο για συνδετικότητα πάνω σε τέτοια γραφήματα.
Αρχίσαμε να μιλάμε για την έννοια της εντροπίας μιας κατανομής.
Παρακαλώ λύστε τις ασκήσεις του βιβλίου σας: 3.7, 3.8, 3.13, 3.20, 3.21, 3.25, 4.1, 4.5, 4.8, 4.9, 4.18.
Πρέπει να παραδώσετε τις λύσεις μέχρι και το μάθημα της 12 Δεκεμβρίου 2007.
Είδαμε την έννοια της εντροπίας μιας κατανομής, εντροπία υπό δέσμευση, κανόνες αλυσίδας για την εντροπία, την έννοια της κοινής πληροφορίας δύο τυχαίων μεταβλητών και της απόστασης Kullbak-Leibler.
Την πρώτη ώρα του μαθήματος είδαμε διάφορες εφαρμογές της έννοιας της εντροπίας σε αποδείξεις συνδυαστικών θεωρημάτων χωρίς πιθανοθεωρητικό περιεχόμενο.
Κατά τη δεύτερη ώρα αρχίσαμε να μιλάμε για κώδικοποίηση των τιμών μιας ΤΜ που παίρνει πεπερασμένες το πλήθος τιμές. Αποδείξαμε την ανισότητα του Kraft. Για το υλικό αυτό θα ακολουθήσουμε κυρίως το βιβλίο Information Theory, Inference, and Learning Algorithms του David J.C. MacKay (Κεφ. 5), το οποίο μπορείτε να βρείτε εδώ σε μορφή PDF (9 Mbytes).
Τελειώσαμε το κεφάλαιο περί συμπίεσης πηγής αποδεικνύοντας ότι το αναμενόμενο μήκος κώδικα φράσσεται κάτω από την εντροπία της πηγής και άνω από . Δείξαμε πώς λειτουργεί η κωδικοποίηση Huffman, η οποία είναι βέλτιστη (αυτό δεν το δείξαμε).
Αρχίσαμε να μιλάμε για αλγόριθμους στη θεωρία αριθμών (ακολουθούμε το βιβλίο των Motawni και Raghavan, Randomized Algorithms, Κεφ. 14. Είδαμε το γενικευμένο αλγόριθμο του Ευκλείδη, πώς να υπολογίζουμε τετραγωνικές ρίζες και άλλους αλγόριθμους για απλές αλγεβρικές πράξεις οι οποίοι πρέπει να τρέχουν σε πολυωνυικό χρόνο στο μέγεθος του input.
Μιλήσαμε κυρίως για υπολογισμούς σε πεπερασμένες ομάδες (προσθετική ομάδα υπολοίπων mod ) και (πολλαπλασιαστική ομάδα των υπολοίπων που είναι πρώτα ως προς το ).
Δείξαμε ότι η ομάδα ( περιττός πρώτος) είναι κυκλική και είδαμε ένα πιθανοθεωρητικό αλγόριθμο υπολογισμού μιας τετραγωνικής ρίζας του για τετραγωνικό υπόλοιπο (για υπόλοιπο δηλ. που είναι τετράγωνο κάποιου υπολοίπου). Ο αλγόριθμος αυτός γενικεύεται και στην περίπτωση που το modulus είναι ή και, χρησιμοποιώντας το Κινέζικο Θεώρημα υπολοίπων γενικεύεται και σε οποιοδήποτε modulus του οποίου η ανάλυση σε πρώτους παράγοντες είναι γνωστή (μέρος του input δηλ.).
Δείξαμε ότι το πρόβλημα της παραγοντοποίησης ακεραίων ανάγεται πολυωνυμικά (με πιθανοθεωρητικό αλγόριθμο) στο πρόβλημα εύρεσης τετραγωνικών ριζών mod .
Περιγράψαμε τον αλγόριθμο κρυπτογράφησης δημοσίου κλειδιού RSA και δείξαμε ότι αν κανείς μπορέσει να συνάγει το ιδιωτικό κλειδί από το δημόσιο τότε μπορεί και να παραγοντοποιήσει το modulus.
Δείτε εδώ σε μορφή PDF ανακοίνωση της Συγκλήτου του ΠΚ.
Μπορείτε να τα δείτε εδώ σε μορφή PDF με ενσωματωμένα links. (Τελευταία ενημέρωση: Tue Dec 18 09:43:27 EET 2007)
Δείξαμε ακόμη ένα θέωρημα στην κατεύθυνση της ασφάλειας του RSA (ότι αν μπορούμε να αποκρυπτογραφήσουμε ένα κλάσμα των λέξεων τότε μπορούμε να τις αποκρυπτογραφήσουμε όλες).
Επίσης δείξαμε ότι κάθε πρώτος αριθμός επιδέχεται ένα certificate πολυωνυμικού μήκους και χρόνου επαλήθευσης (Θ. Pratt).
Συζητήσαμε λίγο για τα θέματα που προτείνονται για τις ομιλίες μετά τις γιορτές.
Είδαμε τον αλγόριθμο Solovay-Strassen για έλεγχο του αν ένας αριθμός είναι πρώτος ή όχι (αλγόριθμος πιθανοθεωρητικός και πολυωνυμικού χρόνου).
Αποδείξαμε λεπτομερώς τις ιδιότητες του συμβόλου Legendre και αυτές του συμβόλου Jacobi που χρησιμοποιήσαμε στην προηγούμενη διάλεξη για τον υπολογισμό του συμβόλου Jacobi, και ιδιαίτερα τον τύπο τετραγωνικής αντιστροφής (quadratic reciprocity).
Στο πλαίσιο του μαθήματος θα γίνουν 45-λεπτες ομιλίες από τους συμμετέχοντες φοιτητές. Οι ομιλίες θα γίνουν το απόγευμα της Δευτέρας 11/2/08 στην αίθουσα Ζ301. Τα θέματα είναι αρκετά διαφορετικά μεταξύ τους και καλύπτουν το φάσμα από την εφαρμογή ως την πράξη.
Οι ομιλίες είναι ανοιχτές στο κοινό.
Μπορείτε να δείτε εδώ σε μορφή PDF το πρόγραμμα και τις περιλήψεις των ομιλιών.