ΥΠΕΥΘΥΝΟΣ ΚΑΘΗΓΗΤΗΣ Α. Ντούνης ΔΙΔΑΣΚΩΝ Χ. Τσιρώνης ΕΙΣΑΓΩΓΗ ΣΤΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ - Αλγόριθμοι κλίσης - Gradient tools in MATLAB - Επίλυση ΝCM και CM
ΑΛΓΟΡΙΘΜΟΙ ΚΛΙΣΗΣ Κατευθυντική αναζήτηση επί των τιμών της συνάρτησης f. Κανόνες ορισμού κατευθύνσεων προς τις οποίες η f μειώνεται. Στόχος: Ακολουθία σημείων που να προσεγγίζει σταδιακά το Χ*. Περιγραφή αλγορίθμου επαναληπτικής καθόδου: Εκκίνηση από σημείο Χ [0] σε κατάλληλη απόσταση από το Χ*, και ελαχιστοποίηση f με εφαρμογή κανόνων μετάβασης της μορφής Χ [κ+1] = Χ [κ] + λ [κ] D [κ], με λ>0 παράμετρο κλίμακας και D R n διεύθυνση ώστε f(χ [κ+1] ) < f(χ [κ] ) σε κάθε μετατόπιση κ. 2
ΕΠΙΛΟΓΗ ΠΑΡΑΜΕΤΡΩΝ Συνοπτική λειτουργία των αλγορίθμων κλίσης: Αρχική εκτίμηση λύσης Σταδιακή (βηματική) διορθώση. Διόρθωση = Μήκος βήματος x Διάνυσμα κατεύθυνσης. Κατανόηση λειτουργίας μέσω αναπτύγματος Taylor: f X [k+1] f X k = λ [k] D [k] f X k + O λ k λ [κ] << 1 O λ k λ [k] D [k] f X k Κυρίαρχος όρος D f. Κατάλληλη διεύθυνση προσέγγισης του Χ*: D f < 0. Καθοριστική η επιλογή των δύο παραμέτρων λ, D! Συνδυασμός ακρίβειας, ομαλότητας, ταχύτητας σύγκλισης. Μεταβολή καθοδόν προς το Χ* Ταχύτερη επίλυση??? 3
ΣΥΝΘΗΚΕΣ ARMIJO/GOLDSTEIN Συνθήκη επαρκούς ελάττωσης βήματος (Armijo): Έστω συνάρτηση f: R n R στην οποία εφαρμόζεται ένας αλγόριθμος επαναληπτικής αναζήτησης με βήμα λ και διάνυσμα κατεύθυνσης D. Στην επανάληψη k, για να είναι το επιλεγμένο βήμα κατάλληλο, θα πρέπει να υπάρχει c 1 (0,1) τέτοιο ώστε f X [k] + λ k D k f X k c 1 λ k D k f X k. Συνθήκη επαρκούς ελάττωσης κλίσης (Goldstein): Έστω f: R n R όπου εφαρμόζεται αλγόριθμος αναζήτησης με βήμα λ και διάνυσμα κατεύθυνσης D. Στην επανάληψη k, για να είναι η επιλεγμένη διεύθυνση κατάλληλη, θα πρέπει να υπάρχει c 2 (0,1) με f X [k] λ k D k D k c 2 f X [k] D k. 4
ΛΕΙΤΟΥΡΓΙΑ ΤΩΝ ΣΥΝΘΗΚΩΝ Armijo: Οι περιοχές της f που φράσσονται πάνω από το ευθύγραμμο τμήμα προσδιορίζουν το λ. Goldstein: Κλίση της f στο k < Κλίση της f στο 0. 5
Η ΜΕΓΙΣΤΗ ΚΑΘΟΔΟΣ Εφαρμογή αναδρομικών τύπων: X [k+1] X k = λ [k] D [k] f X [k+1] f X k = λ [k] D [k] f X k Επιλογή κατεύθυνσης: D = f. Μετακίνηση κάθετη στη διεύθυνση της (τρέχουσας τιμής της) λύσης. 1D version Συντεταγμένη κάθοδος. Επιλογή βήματος: minf στο τμήμα G λ = Χ k λ f Χ k. Τα βήματα είναι μικρά Αργή σύγκλιση της μεθόδου. Τεθλασμένη γραμμή κατά πλάτος των ισοϋψών της f. 6
ΠΑΡΑΔΕΙΓΜΑ ΠΡΩΤΟ Να σχεδιαστεί η ελαχιστοποίηση της συναρτήσεως f(x) = 3 x 1/3 με τη μέθοδο της μέγιστης καθόδου. Απαιτούμενοι υπολογισμοί: 1 η παράγωγος της f. f x = 3 1 3 x 2/3 x x = x x 1/3 Εφαρμογή της μεθόδου μεγίστης καθόδου: x [k+1] = x [k] λ [k] x [k] x [k] 1/3 = 1 λ [k] x [k] 1/3 x [k] Έλεγχος αριθμητικής σύγκλισης της μεθόδου: - Πρέπει να ισχύει 1 λ [k] x [k] 1/3 < 1 με λ k > 0. - Περιορισμοί για την επιλογή της παραμέτρου λ k! 7
ΜΕΘΟΔΟΣ NEWTON Επιλογή D: D = 2 f 1 f. Βασική προϋπόθεση: 2 f 0. Αναβάθμιση μέγιστης καθόδου: Χρήση παράγωγων 2 ης τάξης. Επιλογή λ: Παρόμοια με πριν Ελαχιστοποίηση της προσέγγισης 2 ης τάξης (ανάπτυξη Taylor στο Χ [κ] ). Εναλλακτική λύση: Ισοδύναμο σύστημα εξισώσεων. Πολλαπλασιάζουμε κατά μέλη με τον Εσσιανό πίνακα: Α k = 2 f Χ k, Β k = Α k Χ [k] λ [k] f Χ k Α k Χ [k+1] = Β [k] Αν 2 f 0 Quasi Newton, π.χ. L Μ ( 2 f 2 f + μι). 8
ΠΑΡΑΔΕΙΓΜΑ ΔΕΥΤΕΡΟ Να σχεδιαστεί η ελαχιστοποίηση της συναρτήσεως f(x) = x 4 1 με χρήση της μεθόδου Newton. Απαιτούμενοι υπολογισμοί: 1 η και 2 η παράγωγος της f. f x = 4x 3, 2 f x = 12x 2 Εφαρμογή της μεθόδου Newton: x [k+1] = x [k] λ [k] 12(x k 2 ] 1 4(x k ൯ 3 = 1 λ[k] 3 Έλεγχος αριθμητικής σύγκλισης της μεθόδου: - Πρέπει να ισχύει ότι 1 λ [k] /3 < 1 0 < λ [k] < 6. - Περιορισμοί για την επιλογή της παραμέτρου λ [k]! x [k] 9
GRADIENT TOOLS IN MATLAB Εργαλεία τα οποία στηρίζονται στους αλγόριθμους κλίσης (για προβλήματα χωρίς ή με περιορισμούς): fminunc (βελτιστοποίηση σε μη γραμμικά προβλήματα χωρίς περιορισμούς). lsqnonlin (μέθοδος ελαχίστων τετραγώνων). fmincon (βελτιστοποίηση σε μη γραμμικά προβλήματα με περιορισμούς). fminimax (βελτιστοποίηση με περιορισμούς ορισμένους σε κλειστά διαστήματα). fseminf (βελτιστοποίηση με περιορισμούς ορισμένους σε ανοικτά διαστήματα). 10
ΑΝΤΙΣΤΟΙΧΙΕΣ ΜΕ ΘΕΩΡΙΑ fminunc lsqnonlin fmincon fminimax fseminf Μια μεταβλητή Πολλές μεταβλητές Χωρίς περιορισμούς Με περιορισμούς Μέγιστη κάθοδος Συντεταγμένη κάθοδος (Quasi) Newton 11
ΕΠΙΛΥΣΗ NCM ΚΑΙ CM Αναμένονται διαφορές στην απόδοση των μεθόδων αναζήτησης και κλίσης για προβλήματα NCM? Απόκλιση στον υπολογισμό του σημείου ελαχίστου. Μείωση του απαιτούμενου αριθμού επαναλήψεων. Μείωση της επίδρασης της επιλογής αρχικού σημείου. Υπάρχει μεταβολή των χαρακτηριστικών της λύσης προβλήματος NCM όταν εισέρχονται περιορισμοί? Μετατόπιση του βέλτιστου σημείου (όταν το ελάχιστο του προβλήματος NCM δεν ικανοποιεί τους περιορισμούς). Αλλαγή στον απαιτούμενο αριθμό επαναλήψεων. 12
ΠΑΡΑΔΕΙΓΜΑ ΤΡΙΤΟ Να ελαχιστοποιηθεί η συνάρτηση 2 μεταβλητών με τύπο f(x 1,x 2 ) = 2x 1 3 + x 2 3 7x 1 2 + 3x 2 2 x 1 4x 2 + 8. Πρόβλημα NCM 2 μεταβλητών. NCM Επίλυση με το fminunc. Σύνοψη της αριθμητικής λύσης: Ελάχιστο στο (2.403, 0.528). Ελάχιστη τιμή ίση με - 8.2. Χρειάστηκαν 11 επαναλήψεις. Αρχικό σημείο ήταν το (5, 4). Ακρίβεια μεθόδου ίση με 10-6. ΜAΘΗΜΑ ΕΝΑΤΟ 13
ΠΑΡΑΔΕΙΓΜΑ ΤΡΙΤΟ (συν.) Παρατηρείτε αλλαγές στο προηγούμενο πρόβλημα εάν προστεθεί ο περιορισμός 2x 1 + 5x 2 + 1 0? Το πρόβλημα αλλάζει σε CM! Αλλαγή μεθόδου fmincon. Σύνοψη της αριθμητικής λύσης: Βέλτιστο στο (2.197, -1.079). Βέλτιστη τιμή ίση με - 0.225. Χρειάστηκαν 8 επαναλήψεις. Αρχικό σημείο ήταν το (1, 1). Ακρίβεια μεθόδου ίση με 10-6. ΜAΘΗΜΑ ΕΝΑΤΟ 14
ΕΡΩΤΗΣΕΙΣ - ΣΥΖΗΤΗΣΗ Αλγόριθμοι κλίσης Gradient tools in MATLAB Επίλυση NCM και CM 15