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



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

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

Άπληστοι Αλγόριθµοι. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1

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

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

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

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

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

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

Διωνυµικοί Συντελεστές. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Δυναµικός Προγραµµατισµός 1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Quicksort. Πρόβλημα Ταξινόμησης. Μέθοδοι Ταξινόμησης. Συγκριτικοί Αλγόριθμοι

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

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

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

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

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

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

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

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

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

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

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

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

ΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ

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

Υπολογιστικό Πρόβληµα

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

Επιλογή. Πρόβλημα Επιλογής. Μέγιστο / Ελάχιστο. Εφαρμογές

Μαθηματική Επαγωγή. Τεχνικές Απόδειξης. Αποδείξεις Ύπαρξης. Μαθηματική Επαγωγή

Αλγόριθμοι και πολυπλοκότητα Η Άπληστη Μέθοδος

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

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

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

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

(Γραμμικές) Αναδρομικές Σχέσεις

Μέγιστη Ροή Ελάχιστη Τομή

Ουρά Προτεραιότητας: Heap

(Γραμμικές) Αναδρομικές Σχέσεις

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

Σειρά Προβλημάτων 1 Λύσεις

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

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

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

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

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

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

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

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

Μη-Αριθμήσιμα Σύνολα, ιαγωνιοποίηση

Διαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1

Αλγόριθμοι Αναζήτησης

Outline. 6 Edit Distance

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

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

Ουρά Προτεραιότητας: Heap

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

Μέγιστη Ροή Ελάχιστη Τομή

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

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

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

Βασικές Έννοιες Θεωρίας Γραφημάτων

I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 I 9 I 10 I 11

Βασικές Έννοιες Θεωρίας Γραφημάτων

Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS. 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts)

ιµελής Σχέση ιατεταγµένο ζεύγος (α, β): ύο αντικείµενα (όχι κατ ανάγκη διαφορετικά) σε καθορισµένη σειρά. Γενίκευση: διατεταγµένη τριάδα (α, β, γ), δι

2η Σειρά Γραπτών Ασκήσεων

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

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

Συνδυαστική Απαρίθμηση

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

(Γραμμικές) Αναδρομικές Σχέσεις

ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες Παύλος Εφραιμίδης Δομές Δεδομένων και Αλγόριθμοι

Τεχνικές Σχεδιασμού Αλγορίθμων

Σχέση Μερικής ιάταξης Σχέση Μερικής ιάταξης (ή µερική διάταξη): ανακλαστική, αντισυµµετρική, και µεταβατική. Αριθµοί: α β (αλλά όχι α < β), α β, Σύνολ

Ουρά Προτεραιότητας: Heap

Επαγωγή και αναδρομή για άκυκλα συνεκτικά γραφήματα

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

Transcript:

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

Άπληστοι Αλγόριθμοι... για προβλήματα βελτιστοποίησης: Λειτουργούν σε βήματα. Κάθε βήμα κάνει μια αμετάκλητη επιλογή για λύση. Άπληστη επιλογή: αυτό που φαίνεται καλύτερο με βάση τρέχουσα κατάσταση και κάποιο (απλό) κριτήριο. Ίδια στρατηγική στο υποπρόβλημα που προκύπτει. Πλεονεκτήματα: Γρήγοροι, απλοί, και «φυσιολογικοί» αλγόριθμοι. Εφαρμόζεται (επιτυχώς) σε πολλά και σημαντικά προβλήματα. Μειονεκτήματα: Βέλτιστη λύση μόνο υπό προϋποθέσεις! Βέλτιστη λύση: απόδειξη ορθότητας (συν. επαγωγή). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 2

Άπληστη Στρατηγική Ταξινόμηση συνιστωσών με βάση κάποιο απλό κριτήριο. (Αμετάκλητη) επιλογή καθορίζει αν «καλύτερη» συνιστώσα θα συμπεριληφθεί στη λύση. Επιλογή με κάποιον απλό κανόνα. Ίδια στρατηγική σε υποπρόβλημα που προκύπτει. Μη-προσαρμοστικός: ίδια ταξινόμηση σε όλα τα βήματα. Προσαρμοστικός: αλλάζει ταξινόμηση σε κάθε βήμα. Χρόνος εκτέλεσης συνήθως καθορίζεται από επιλογή «καλύτερης» συνιστώσας σε κάθε βήμα. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 3

Επιλογή ραστηριοτήτων n δραστηριότητες: αρχή και τέλος (π.χ. μαθήματα, υπολογιστικές διεργασίες). Επιλογή δραστηριοτήτων χωρίς χρονικές επικαλύψεις και δρομολόγηση σε κοινό πόρο (π.χ. αίθουσα διδασκαλίας, επεξεργαστής). Ζητούμενο: δρομολόγηση μέγιστου #δραστηριοτήτων. Πρόβλημα συνδυαστικής βελτιστοποίησης: Κάθε δρομολόγηση χωρίς επικαλύψεις: εφικτή λύση. Ζητούμενο: εφικτή δρομολόγηση με μέγιστο #δραστηριοτήτων. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 4

Παράδειγμα Βέλτιστη λύση: 4 δραστηριότητες. Π.χ. {1, 3, 6, 8}, {2, 4, 7, 10}, {1, 4, 7, 10}, Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 5

Άπληστος Αλγόριθμος Κριτήριο άπληστης επιλογής; Ελάχιστος χρόνος ολοκλήρωσης. Ταξινόμηση σε αύξουσα σειρά χρόνου ολοκλήρωσης. Επόμενη δραστηριότητα: ρομολογείται αν είναι εφικτό (πόρος είναι ελεύθερος). Αγνοείται αν δρομολόγηση δεν είναι εφικτή. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 6

Υλοποίηση Χρόνος Ο(n log n) (ταξινόμηση ως προς χρόνο ολοκλήρωσης). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 7

Υπολογισμός Βέλτιστης Λύσης Βέλτιστη λύση: απόδειξη ορθότητας (επαγωγή). Βασίζεται σε δύο ιδιότητες (απαραίτητες!): Αρχή βελτιστότητας (βέλτιστες επιμέρους λύσεις): Κάθε τμήμα βέλτιστης λύσης αποτελεί βέλτιστη λύση για αντίστοιχο υποπρόβλημα. π.χ. κάθε τμήμα μιας συντομότερης διαδρομής είναι συντομότερη διαδρομή μεταξύ των άκρων του. Χαρακτηριστικό και δυναμικού προγραμματισμού. Ιδιότητα άπληστης επιλογής: Υπάρχει βέλτιστη λύση που συμφωνεί με την άπληστη επιλογή που κάνει ο αλγόριθμος.... ήισοδύναμα: η άπληστη επιλογή μπορεί να οδηγήσει σε βέλτιστη λύση. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 8

Ορθότητα Επαγωγή στον #δραστηριοτήτων. Υποθέτουμε πάντα ότι Βάση: αν 1 δραστ., αυτή επιλέγεται πάντα. Έστω αλγ. υπολογίζει βέλτιστη λύση για n 1 δραστ. Θδο. υπολογίζει βέλτιστη λύση για σύνολο Α με n δραστ. Αλγ. επιλέγει 1 ( f 1 ) και βέλτιστη λύση C * (A) βέλτιστη λύση και j δραστ. C * (A) ολοκληρώνεται πρώτη. #δραστηριοτήτων άπληστου αλγ. Άπληστη επιλογή: βέλτιστη. Άπληστος αλγόριθμος υπολογίζει βέλτιστη λύση για Α. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 9

Ορθότητα Αποδείξαμε ότι Ιδιότητα άπληστης επιλογής: (Άπληστη) επιλογή δραστηριότητας με ελάχιστο χρόνο ολοκλήρωσης οδηγεί σε συνολικά βέλτιστη λύση. Ιδιότητα βέλτιστων επιμέρους λύσεων: Βέλτιστη λύση περιέχει βέλτιστη λύση για υποπρόβλημα Α 1 (δραστ. που δεν επικαλύπτονται με πρώτη). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 10

Χρωματισμός ιαστημάτων n διαστήματα: αρχή και τέλος Χρωματισμός όλων ώστε επικαλυπτόμενα διαστήματα να έχουν διαφορετικό χρώμα. Ζητούμενο: χρωματισμός με ελάχιστο #χρωμάτων. Άπληστος αλγόριθμος: Ταξινόμηση με χρόνο έναρξης. Κάθε διάστημα που αρχίζει παίρνει πρώτο διαθέσιμο χρώμα. Κάθε διάστημα που τελειώνει «απελευθερώνει» το χρώμα του. Χρήση χρώματος d 2 μόνο αν επικάλυψη d διαστημάτων. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014)

ρομολόγηση Εργασιών Ένας εξυπηρετητής (π.χ. επεξεργαστής, εκτυπωτής, ταμίας). Σύνολο Ν με n εργασίες: χρόνο εκτέλεσης (π.χ. υπολογιστικές διεργασίες, εκτυπώσεις, συναλλαγές). ρομολόγηση για ελαχιστοποίηση συνολικού (ισοδύναμα, μέσου) χρόνου εξυπηρέτησης. t 1 = 8, t 2 = 7, t 3 = 2, t 4 = 5. 1, 2, 3, 4: 8 + 15 + 17 + 22 = 62. 3, 4, 2, 1: 2 + 7 + 14 + 22 = 45. ρομολόγηση: μετάθεση Χρόνος εξυπηρέτησης i : Συνολικός χρόνος εξυπηρέτησης: Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 12

Άπληστος Αλγόριθμος ρομολόγηση σε αύξουσα σειρά χρόνου εκτέλεσης: Συνολικός χρόνος εξυπηρέτησης: Βέλτιστος γιατί όσο μεγαλύτερος χρόνος εκτέλεσης, τόσο λιγότερες φορές συνεισφέρει στο συνολικό χρόνο εξυπηρέτησης. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 13

Ορθότητα: Επιχείρημα Ανταλλαγής Έστω π * βέλτιστη δρομολόγηση, Τ(π * ) συνολικός χρόνος. λ * (j): σειρά εργασίας j στη βέλτιστη δρομολόγηση. Έστω π * διαφορετική από άπληστη: k πρώτη που δρομολογείται αργότερα στην π * : λ * (k) > k j αυτή που δρομολογείται k-οστή στην π * : λ * (j) = k συμφωνούν σε k 1αρχικές: k < j και t k και t j στο T(π * ): Ανταλλαγή k και j: (k πηγαίνει στη θέση που έχει στην άπληστη δρομολόγηση). ιαφορά: Έτσι π * γίνεται ίδια με άπληστη χωρίς αύξηση χρόνου. Άπληστη δρομολόγηση είναι βέλτιστη. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 14

Ιδιότητες Ιδιότητα άπληστης επιλογής: Για κάθε k, βέλτιστη δρομολόγηση π * συμφωνεί με άπληστη στη σειρά των k πρώτων εργασιών. (Άπληστη) επιλογή συντομότερης διαθέσιμης βέλτιστη. Ιδιότητα βέλτιστων επιμέρους λύσεων:. Αν αγνοήσουμε t 1, π * παραμένει βέλτιστη για υπόλοιπες. Απόδειξη ορθότητας: (επαγωγική) εφαρμογή ιδιότητας άπληστης επιλογής. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 15

Πρόβλημα του Περιπτερά Κέρματα αξίας 1, 5, και 20 λεπτών. Ρέστα ποσό x με ελάχιστο #κερμάτων. Αλγόριθμος: Όσο περισσότερα 20λεπτα: Όσο περισσότερα 5λεπτα: Υπόλοιπα 1λεπτα: Βέλτιστη λύση χρησιμοποιεί ίδιο #κερμάτων: 20λεπτα: εν μπορεί περισσότερα. Βελτιώνεται αν λιγότερα. Αν ίδιο #20λέπτων, τότε ίδιο #5λέπτων. επαγωγή στα πλήθος διαφορετικών κερμάτων. ουλεύει αλγόριθμος αν κέρματα 1, 12, και 20 λεπτών; Π.χ. ρέστα 24 λεπτά. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 16

Κλασματικό Πρόβλημα Σακιδίου ίνονται n είδη και ένα σακίδιο μεγέθους Β. Είδος i διαθέσιμο σε ποσότητα s i με αξία p i : Είδος i μπορεί να συμπεριληφθεί στο σακίδιο σε οποιοδήποτε ποσοστό. Ζητείται συλλογή μέγιστης αξίας που χωράει στο σακίδιο. Είδη: { (3, 5), (2, 7), (4, 4), (6, 8), (5, 4) } Μέγεθος σακιδίου: 10. Βέλτιστη λύση = { 1 (3, 5), 1 (2, 7), (5/6) (6, 8) } Βέλτιστη αξία = 5 + 7 + (5/6) 8 = 18.3333 Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 17

Άπληστος Αλγόριθμος Είδη N = {1,, n}, σακίδιο μεγέθους Β. Βέλτιστη λύση ΒέλτιστεςΕπιμέρουςΛύσεις. Αγνοούμε είδος i :. βέλτιστη λύση για Ν \{i } με σακίδιο Είδος i : (αξία / μονάδα μεγέθους) Είδη σε φθίνουσα σειρά r i : Όσο περισσότερο από i χωράει στο (διαθέσιμο) σακίδιο. Αναπροσαρμογή διαθέσιμου σακιδίου και επόμενο είδος. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 18

Υλοποίηση Χρόνος Ο(n log n) (ταξινόμηση ως προς λόγο αξίας / μέγεθος). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 19

Άπληστη Επιλογή Έστω βέλτιστη λύση Έστω άπληστη λύση Ιδιότητα άπληστης επιλογής: Υπάρχει βέλτιστη λύση: Απληστία: καμία λύση με περισσότερο από είδος 1. Αν βέλτιστη, αντικαθιστούμε μονάδες άλλου είδους (ή κενού) με είδος 1: Αποδεκτή λύση γιατί Αξία δεν μειώνεται. Απόδειξη ορθότητας με επαγωγική εφαρμογή ιδιότητας άπληστης επιλογής. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 20

Ορθότητα Επαγωγή στον #ειδών. Βάση: 1 είδος. Άπληστη επιλογή: Επαγωγική υπόθεση: ειδών n 1,άπληστη = βέλτιστη. Θεωρούμε n είδη. Άπληστη επιλογή: Στιγμιότυπο με n 1 είδη και σακίδιο Επαγωγική υπόθεση: βέλτιστη λύση. Συνολικά για n είδη: Άπληστος αλγόριθμος υπολογίζει βέλτιστη λύση. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 21

Άπληστη Στρατηγική Ταξινόμηση συνιστωσών με βάση κάποιο κριτήριο (π.χ. σακίδιο: είδη σε φθίνουσα σειρά αξία / μέγεθος). (Αμετάκλητη) επιλογή καθορίζει αν «καλύτερη» (βλ. «επόμενη») συνιστώσα θα συμπεριληφθεί στη λύση. Ίδια στρατηγική σε υπο-πρόβλημα που προκύπτει. Μη-προσαρμοστικός: ίδια ταξινόμηση σε όλα τα βήματα. Προσαρμοστικός: αλλάζει ταξινόμηση σε κάθε βήμα. Χρόνος εκτέλεσης καθορίζεται από χρόνο ταξινόμησης. Βέλτιστη λύση: απόδειξη ορθότητας (συνήθ. επαγωγή). Ιδιότητα άπληστης επιλογής. Αρχή βελτιστότητας (βέλτιστες επιμέρους λύσεις). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2014) Άπληστοι Αλγόριθμοι 22