Αλγόριθμοι και Πολυπλοκότητα



Σχετικά έγγραφα
Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα

Υπολογιστική Πολυπλοκότητα

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ

Δομές Δεδομένων. Παύλος Εφραιμίδης

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Υπολογιστική Πολυπλοκότητα

Δομημένος Προγραμματισμός ΙΙΙ - Java

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιµότητα. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

ιακριτές Μέθοδοι για την Επιστήμη των Υπολογιστών

Κλάσεις Πολυπλοκότητας

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1,

οµηµένος Προγραµµατισµός ΙΙΙ - Java Παύλος Εφραιµίδης οµηµένος Προγρ. ΙΙΙ - 1 Java Το Μάθηµα

οµηµένος Προγραµµατισµός ΙΙΙ - Java

Αλγόριθμοι. Μάρθα Σιδέρη. epl333 lect

Κεφάλαιο 1. Πέντε Αντιπροσωπευτικά Προβλήματα. Έκδοση 1.4, 30/10/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Το µάθηµα Αντικείµενο-Περιεχόµενα µαθήµατος Τρόπος ιδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2

Ασυμπτωτικός Συμβολισμός

υναμικός Προγραμματισμός

υναμικός Προγραμματισμός

Αλγοριθμική Θεωρία Παιγνίων

Δυναμικός Προγραμματισμός

Σχεδίαση & Ανάλυση Αλγορίθμων

Ασυμπτωτικός Συμβολισμός

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ Φεβρουάριος 2005 Σύνολο μονάδων: 91

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

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

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

Ασυμπτωτικός Συμβολισμός

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

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

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

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

Αλγόριθμοι Προσέγγισης για NP-Δύσκολα Προβλήματα

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

υναμικός Προγραμματισμός

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

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

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

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

Κεφάλαιο 4. Άπληστοι Αλγόριθµοι (Greedy Algorithms) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

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

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

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

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

για NP-Δύσκολα Προβλήματα

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

Δυναμικός Προγραμματισμός

Δομές Δεδομένων (Data Structures)

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

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης

Τεχνολογίες Υλοποίησης Αλγορίθµων

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

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

Αλγοριθμικές Τεχνικές. Brute Force. Διαίρει και Βασίλευε. Παράδειγμα MergeSort. Παράδειγμα. Τεχνικές Σχεδιασμού Αλγορίθμων

Εισαγωγικά. 1 η Εβδομάδα. Κάθε Τρίτη (17:00-20:00) και Τετάρτη (13:00 15:00) στην αίθουσα Ι5. 4 ώρες Θεωρία (ΤΡ : 1η-2η ώρα, ΤΕ : 1η-2η ώρα)

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

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

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

ΠΡΟΓΡΑΜΜΑ ΕΠΑΝΑΛΗΠΤΙΚΗΣ ΕΞΕΤΑΣΤΙΚΗΣ ΣΕΠΤΕΜΒΡΙΟΥ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ

Αλγοριθμικές Τεχνικές

ΠΡΟΓΡΑΜΜΑ ΕΠΑΝΑΛΗΠΤΙΚΗΣ ΕΞΕΤΑΣΤΙΚΗΣ ΣΕΠΤΕΜΒΡΙΟΥ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ

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

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

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΕΩΝ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ

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

ΠΡΟΓΡΑΜΜΑ ΕΑΡΙΝΗΣ ΕΞΕΤΑΣΤΙΚΗΣ & ΕΠΙ ΠΤΥΧΙΩ ΧΕΙΜΕΡΙΝΑ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ

Εισαγωγή στην πληροφορική

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΤΙΚΗΣ ΕΑΡΙΝΩΝ ΕΞΑΜΗΝΩΝ & ΕΠΙ ΠΤΥΧΙΩ ΕΞΕΤΑΣΤΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ (ΟΡΘΗ ΕΠΑΝΑΛΗΨΗ 5 )

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΤΙΚΗΣ ΕΑΡΙΝΩΝ ΕΞΑΜΗΝΩΝ & ΕΠΙ ΠΤΥΧΙΩ ΕΞΕΤΑΣΤΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ ( )

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

Προσεγγιστικοί Αλγόριθμοι βασισμένοι σε Γραμμικό Προγραμματισμό

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΤΙΚΗΣ ΕΑΡΙΝΩΝ ΕΞΑΜΗΝΩΝ & ΕΠΙ ΠΤΥΧΙΩ ΕΞΕΤΑΣΤΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ (ΟΡΘΗ ΕΠΑΝΑΛΗΨΗ 1 )

Διαδικαστικά του μαθήματος

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

ΕΥΡΕΣΗ ΕΛΑΧΙΣΤΩΝ ΜΟΝΟΠΑΤΙΩΝ & ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΩΝ

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

Τεχνολογίες Υλοποίησης Αλγορίθµων

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

«Η Αλγοριθμική Πολυπλοκότητα στο Γενικό Λύκειο»

ΠΡΟΣΧΕΔΙΟ ΠΡΟΓΡΑΜΜΑΤΟΣ ΕΠΑΝΑΛΗΠΤΙΚΗΣ ΕΞΕΤΑΣΤΙΚΗΣ ΣΕΠΤΕΜΒΡΙΟΥ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ ( )

ΠΡΟΓΡΑΜΜΑ (ΔΙΠΛΗΣ) ΕΞΕΤΑΣΤΙΚΗΣ ΠΕΡΙΟΔΟΥ ΦΕΒΡΟΥΑΡΙΟΥ 2015, ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ (ΟΡΘΗ ΕΠΑΝΑΛΗΨΗ 3)

ΤΕΛΙΚΟ ΠΡΟΓΡΑΜΜΑ ΧΕΙΜΕΡΙΝΗΣ ΕΞΕΤΑΣΤΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ & ΕΠΙ ΠΤΥΧΙΩ ΕΑΡΙΝΗ ΕΞΕΤΑΣΤΙΚΗ

ΠΡΟΓΡΑΜΜΑ ΕΠΑΝΑΛΗΠΤΙΚΗΣ ΕΞΕΤΑΣΤΙΚΗΣ ΣΕΠΤΕΜΒΡΙΟΥ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ (ΟΡΘΗ ΕΠΑΝΑΛΗΨΗ 2)

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

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

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

ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΤΙΚΗΣ ΕΑΡΙΝΩΝ ΕΞΑΜΗΝΩΝ & ΕΠΙ ΠΤΥΧΙΩ ΕΞΕΤΑΣΤΙΚΗΣ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ (ΟΡΘΗ ΕΠΑΝΑΛΗΨΗ 4 )

ΠΡΟΓΡΑΜΜΑ ΕΠΑΝΑΛΗΠΤΙΚΗΣ ΕΞΕΤΑΣΤΙΚΗΣ ΣΕΠΤΕΜΒΡΙΟΥ ΑΚΑΔΗΜΑΪΚΟΥ ΕΤΟΥΣ ( )

Προσεγγιστικοί Αλγόριθμοι

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

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

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

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων

Transcript:

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

Οργανωτικά ιδάσκοντες:. Φωτάκης (και Σ. Ζάχος στο μτπχ.) Βοηθοί διδασκαλίας Υ..: Σ. ήμος, Λ. Ζακυνθινού, Α. Μάντης, Σ. Σκουλάκης 4 ώρες θεωρία (και ασκήσεις) ευτέρα 15:00 17:00, αμφ. 4, νέο κτ. ΣΗΜΜΥ Πέμπτη 17:00 19:00, αμφ. 4, νέο κτ. ΣΗΜΜΥ Βαθμολογία: 80% τελική εξέταση (ασκήσεις). Τουλάχιστον 3.5 στα 8. 15% γραπτές ασκήσεις (4 σειρές) 15% προγραμματιστικές ασκήσεις (4 σειρές) Ιστοσελίδα: http://www.corelab.ece.ntua.gr/courses/algorithms/ Forum: moodle.softlab.ntua.gr Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 2

Γραπτές Ασκήσεις Ατομικές γραπτές ασκήσεις: 4 σειρές γραπτών ασκήσεων, ανά 2 η εβδομάδα. Περίπου 2 εβδομάδας για κάθε σειρά ασκήσεων. Εκφώνηση στο site (και στο moodle). 1 η γραπτή: ευτέρα 19/10 ευτέρα 2/11. Λύσεις: συζήτηση στο μάθημα (και ανακοίνωση σχεδίου λύσεων) Σημαντικές γιατί προετοιμάζουν για τις εξετάσεις! Ένα από τα θέματα των εξετάσεων παρόμοια με γραπτές (ή παλαιότερες λυμένες) ασκήσεις. (Μόνο) οι «περυσινοί» μπορούν «κρατήσουν» βαθμούς ασκήσεων. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 3

Προγραμματιστικές Ασκήσεις Ατομικές προγραμματιστικές ασκήσεις: 4 σειρές προγραμματιστικών ασκήσεων, ανά 2 η εβδομάδα. Περίπου 2 εβδομάδας για κάθε σειρά ασκήσεων. Εγγραφή στο moodle, αμέσως μόλις «ανοίξει». Το login και το password με το οποίο θα εγγραφείτε στο moodle, θα χρησιμοποιούνται στον grader (χωρίς δυνατότητα αλλαγής!) Παράδοση με υποβολή κώδικα στον grader. 1 η προγραμματ.: ευτέρα 26/10 ευτέρα 9/11. Όταν χρειάζεται, επίδειξη στο CoReLab (μετά από συνεννόηση). (Μόνο) οι «περυσινοί» μπορούν «κρατήσουν» βαθμούς ασκήσεων. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 4

Αλγόριθμοι και... Γιατί κάποια υπολογιστικά προβλήματα είναι εύκολο και κάποια άλλα είναι δύσκολο να λυθούν από υπολογιστικές μηχανές. «Εύκολα» προβλήματα: επιλύονται από αλγόριθμους που απαιτούν εύλογη ποσότητα υπολογιστικών πόρων (χρόνος, μνήμη, επικοινωνία). Βασικές έννοιες και βασικές δομές δεδομένων (επιλεκτικά). Βασικές τεχνικές σχεδιασμού και ανάλυσης αλγορίθμων: ιαίρει-και-βασίλευε Απληστία υναμικός προγραμματισμός Εφαρμογή: αλγόριθμοι γραφημάτων Ελάχιστο συνδετικό δέντρο Συντομότερα μονοπάτια Μέγιστη ροή Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 5

«ύσκολα» Προβλήματα Τι κάνουμε όταν ένα πρόβλημα φαίνεται «δύσκολο»; «ύσκολο»: μετά από μεγάλη προσπάθεια, δεν βρίσκουμε αποδοτικό αλγόριθμο (πολυωνυμικού χρόνου). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 6

«ύσκολα» Προβλήματα Τι κάνουμε όταν ένα πρόβλημα φαίνεται «δύσκολο»; «ύσκολο»: μετά από μεγάλη προσπάθεια, δεν βρίσκουμε αποδοτικό αλγόριθμο (πολυωνυμικού χρόνου). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 7

«ύσκολα» Προβλήματα Τι κάνουμε όταν ένα πρόβλημα φαίνεται «δύσκολο»; «ύσκολο»: μετά από μεγάλη προσπάθεια, δεν βρίσκουμε αποδοτικό αλγόριθμο (πολυωνυμικού χρόνου). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 8

«ύσκολα» Προβλήματα Τι κάνουμε όταν ένα πρόβλημα φαίνεται «δύσκολο»; «ύσκολο»: μετά από μεγάλη προσπάθεια, δεν βρίσκουμε αποδοτικό αλγόριθμο (πολυωνυμικού χρόνου). Θεωρία NP-πληρότητας. NP-πλήρη: κλάση εξαιρετικά σημαντικών προβλημάτων που είτε όλα επιλύονται σε πολυωνυμικό χρόνο είτε κανένα. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 9

... και Πολυπλοκότητα Υπολογιστική (Χρονική) Πολυπλοκότητα: Ντετερμινιστικές μηχανές Turing Κλάσεις πολυπλοκότητας, αναγωγή, πληρότητα. Χρονική Πολυπλοκότητα και κλάση P («εύκολα» προβλήματα). Μη-ντετερμινιστικές μηχανές Turing και κλάση NP. NP-πληρότητα («δύσκολα» προβλήματα) Σχέση κλάσεων P και NP. Προσεγγιστικοί αλγόριθμοι για NP-δύσκολα προβλήματα. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 10

Βιβλιογραφία Σ. Ζάχος. Αλγόριθμοι και Πολυπλοκότητα. Σημειώσεις ΕΜΠ.. Φωτάκης. Αλγόριθμοι και Πολυπλοκότητα. Σημειώσεις http://www.softlab.ntua.gr/~fotakis/data/algorithms.pdf Cormen, Leiserson, Rivest, Stein. Introduction to Algorithms. MIT, 2001. Kleinberg, Tardos. Algorithm Design. Add.-Wesl., 2006. Dasgupta, Papadimitriou, Vazirani. Algorithms. ΜcGraw-Hill, 2008. J. Edmonds. How to Think About Algorithms. Cambridge, 2008. Papadimitriou. Computational Complexity. Add.-Wesl., 1994. Πολλά-πολλά άλλα βιβλία και ιστοσελίδες μαθημάτων. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2015) Εισαγωγή 11