Μη Γραμμικός Προγραμματισμός Μέθοδοι Newton Μέθοδοι Σχεδόν-Newton (Quasi-Newton Methods) Μέθοδοι Συζυγών Κατευθύνσεων (Conjugate Directions)
Μέθοδοι Newton Βασική Ιδέα Η συνάρτηση προσεγγίζεται από μία τετραγωνική συνάρτηση χρησιμοποιώντας την σειρά Taylor Επόμενο επαναληπτικό επιλέγεται το σημείο το οποίο ελαχιστοποιεί την τετραγωνική προσέγγιση
Μέθοδοι Newton Αλγόριθμος Επιλύουμε το σύστημα εξισώσεων Θέτουμε Ελέγχουμε το κριτήριο σύγκλισης
Παράδειγμα Χρησιμοποιήστε τη Μέθοδο Newton για να ελαχιστοποιήσετε τη συνάρτηση f(x)=x14+x1x2+(1+x2)2 Ξεκινούμε από το σημείο x(0)=[1, 1]T Υπολογίζουμε
Παράδειγμα Υπολογίζουμε την κατεύθυνση Υπολογίζουμε την κατεύθυνση Υπολογίζουμε το επόμενο επαναληπτικό Ελέγχουμε το κριτήριο σύγκλισης
Μειονεκτήματα της Μεθόδου Newton Σε κάθε επανάληψη χρειάζεται να υπολογίσουμε το διάνυσμα κλίσης g(k)=f(x(k)) και τον πίνακα Hessian G(k)=2f(x(k)). Σε κάθε επανάληψη χρειάζεται η αντιστροφή του G(k). Ο πίνακας Hessian G(k) μπορεί να μην είναι θετικά ορισμένος και συνεπώς η προσέγγιση μπορεί να μην έχει ελάχιστο. Η σχέση f(x(k+1)) < f(x(k)) μπορεί να μην ισχύει!
Παράδειγμα Ελαχιστοποιήσετε τη συνάρτηση f(x)=x14+x1x2+(1+x2)2 Χρησιμοποιώντας τη Newton μπορεί να ξεκινούσαμε από το σημείο x(0)=[0, 0]T
Παράδειγμα Υπολογίζουμε την κατεύθυνση Υπολογίζουμε την κατεύθυνση Υπολογίζουμε το επόμενο επαναληπτικό Παρατήρηση: Newton1.m
Πίνακας Hessian Μη Θετικά Ορισμένος Ι είναι ο μοναδιαίος πίνακας και v είναι αριθμός μεγαλύτερος από –λmin όπου λmin<0 είναι η μικρότερη ιδιοτιμή του G. Δηλαδή
Πίνακας Hessian Μη Θετικά Ορισμένος Θεώρημα Ο πίνακας είναι θετικά ορισμένος. Απόδειξη Από τον ορισμό των ιδίοτιμών
Εναλλακτικός Αλγόριθμος Newton Επιλύουμε το σύστημα εξισώσεων Θέτουμε Ελέγχουμε το κριτήριο σύγκλισης Newton2.m
Αλγόριθμος Newton με Αναζήτηση επί Γραμμής Επιλύουμε το σύστημα εξισώσεων Η λύση προσδιορίζει την κατεύθυνση στην οποία θα κινηθούμε. Βρίσκουμε το βέλτιστο βήμα α* που ελαχιστοποιεί Θέτουμε Ελέγχουμε το κριτήριο σύγκλισης
Παράδειγμα Ελαχιστοποιήσετε τη συνάρτηση f(x)=x12+x1x2+(1+x2)2 Η συνάρτηση μπορεί να γραφτεί με την μορφή Όπου και
Παράδειγμα Χρησιμοποιώντας την μέθοδο μέγιστης κατάβασης Ξεκινούμε από το σημείο x(0)=[0, 0]T Υπολογίζουμε την κατεύθυνση Υπολογίζουμε το βέλτιστο βήμα Υπολογίζουμε το επόμενο σημείο descent.m Ελέγχουμε το κριτήριο σύγκλισης
Παράδειγμα Χρησιμοποιώντας τη μέθοδο Newton Ξεκινούσαμε από το σημείο x(0)=[0, 0]T Υπολογίζουμε Υπολογίζουμε την κατεύθυνση Υπολογίζουμε το επόμενο επαναληπτικό
Παράδειγμα Χρησιμοποιώντας τη μέθοδο Newton με αναζήτηση επί γραμμής Ξεκινούσαμε από το σημείο x(0)=[0, 0]T Υπολογίζουμε Υπολογίζουμε την κατεύθυνση Υπολογίζουμε το βήμα χρησιμοποιώντας αναζήτηση επί γραμμής
Παράδειγμα Ελαχιστοποιούμε τη συνάρτηση επί της γραμμής s(k)
Παράδειγμα Υπολογίζουμε το επόμενο επαναληπτικό
Αλγόριθμος Newton με Αναζήτηση επί Γραμμής Στις περιπτώσεις που ο πίνακας Hessian δεν είναι θετικά ορισμένος, τότε ο αλγόριθμος μετατρέπεται Αλγόριθμος Επιλύουμε το σύστημα εξισώσεων Η λύση προσδιορίζει την κατεύθυνση στην οποία θα κινηθούμε. Βρίσκουμε το βέλτιστο βήμα α* που ελαχιστοποιεί Θέτουμε Ελέγχουμε το κριτήριο σύγκλισης
Μειονέκτημα Μεθόδου Newton Σε κάθε επανάληψη χρειάζεται να υπολογίσουμε τον πίνακα Hessian G(k)=2f(x(k)). Σε κάθε επανάληψη χρειάζεται η αντιστροφή του G(k).
Μέθοδοι Σχεδόν-Newton (Quasi-Newton) Βασική Ιδέα: Σε κάθε προσπαθούμε να εκτιμήσουμε αλγοριθμικά τον αντίστροφο του πίνακα Hessian Υπολογίζουμε δηλαδή κάποιο πίνακα H(k) ο οποίος είναι συμμετρικός, positive definite και ιδεατά θα πρέπει να προσεγγίζει τον πίνακα G-1.
Μέθοδοι Σχεδόν-Newton (Quasi-Newton) Αλγόριθμος Επιλύουμε το σύστημα εξισώσεων Βρίσκουμε το βέλτιστο βήμα α* που ελαχιστοποιεί Θέτουμε Βρίσκουμε τον νέο πίνακα H(k+1) Ελέγχουμε το κριτήριο σύγκλισης
Συνθήκη Σχεδόν-Newton Χρησιμοποιώντας τη σειρά Taylor βρίσκουμε την πιο κάτω συνθήκη όπου γ(k)= g(k+1) - g(k) (Διαφορά στα διανύσματα κλίσης) δ(k) = x(k+1)- x(k) Πρέπει να βρούμε κάποιο πίνακα πού να προσεγγίζει την πιο πάνω σχέση.
Φόρμουλα Πρώτου Βαθμού H(k+1) = H(k) + α(k) z(k)z(k)T όπου α(k) είναι αριθμός z(k) είναι διάνυσμα διαστάσεων n γ(k)= g(k+1) - g(k) δ(k) = x(k+1)- x(k) Αντικαθιστώντας στην συνθήκη Quasi-Newton βρίσκουμε ότι
Παρατηρήσεις Στην απουσία καλύτερου αρχικού πίνακα, χρησιμοποιούμε το μοναδιαίο πίνακα, δηλαδή: H(0) = Ι Θεώρημα Εάν η μέθοδος πρώτου βαθμού εφαρμοστεί σε τετραγωνικό πρόβλημα (με θετικά ορισμένο πίνακα Hessian) και εάν τα διανύσματα δ(0), δ(1),..., δ(n), είναι γραμμικά ανεξάρτητα, τότε η μέθοδος τερματίζει το πολύ σε n+1 βήματα και H(n)=G-1.
Μειονεκτήματα Η μέθοδος αποτυγχάνει να συγκλίνει εάν δ(k) = H(k)γ(k) ή εάν το γ(k) είναι κάθετο στο (δ(k)-H(k)γ(k)). Εάν ο πίνακας H(k) είναι θετικά ορισμένος, ο H(k+1) δεν είναι πάντα θετικά ορισμένος εκτός εάν ισχύει γ(k)Τ(δ(k)-H(k)γ(k)) > 0 Δεν υπάρχει ικανοποιητικός τρόπος που να αποφεύγει τα πιο πάνω μειονεκτήματα για γενικά προβλήματα.
Φόρμουλα Δεύτερου Βαθμού H(k+1) = H(k) + au(k) u(k)T + bv(k) v(k)T όπου a, b είναι αριθμοί u(k) και v(k) είναι διανύσματα διαστάσεων n γ(k)= g(k+1) - g(k) δ(k) = x(k+1)- x(k)
Φόρμουλες Δεύτερου Βαθμού Davidson-Fletcher-Powell (DFP) φόρμουλα Broyden-Fletcher-Goldfarb-Shanno (BFGS) φόρμουλα
Ιδιότητες Φόρμουλων Δευτέρου Βαθμού Για τετραγωνικές συναρτήσεις με θετικά ορισμένο πίνακα Hessian (με ακριβή αναζήτηση επί γραμμής) Οι μέθοδοι τερματίζουν το πολύ σε n βήματα και H(n)=G-1. H(k+1) γ (i)= δ(i) για i=0,1,…,k Εάν H(0) = Ι τότε οι μέθοδοι δημιουργούν συζυγείς κατευθύνσεις Για γενικές συναρτήσεις Όλοι οι πίνακες H(k) είναι συμμετρικοί και θετικά ορισμένοι Οι μέθοδοι έχουν υπερ-γραμμικό ρυθμό σύγκλισης
Μέθοδος Συζυγών Κατευθύνσεων (Conjugate Directions) Συζυγείς Κατευθύνσεις s(i)TGs(j)=0 για όλα τα i ¹ j Η μέθοδος συζύγων κατευθύνσεων ακολουθεί τις κατευθύνσεις s(i) όπου s(i), s(j) είναι συζυγείς για όλα τα i,j. Δηλαδή όπου όλα τα ζεύγη διανυσμάτων s(i), s(j) ικανοποιούν τη συνθήκη συζυγίας.
Παράδειγμα Συζύγων Κατευθύνσεων Υποθέτουμε τον πίνακα Υποθέτουμε επίσης το διάνυσμα κατεύθυνσης d(0)=[1 0]T. Ζητείτε το διάνυσμα d(1) το οποίο είναι συζευγμένο με το d(0) μέσω του πίνακα G.
Παρατήρηση Τι μπορούμε να πούμε για τις συζυγές κατευθύνσεις του μοναδιαίου πίνακα G=I;
Παράδειγμα Συζύγων Κατευθύνσεων Υποθέτουμε τον πίνακα Υποθέτουμε επίσης το διάνυσμα κατεύθυνσης d(0)=[1 0 0]T. Ζητούνται διανύσματα d(1) και d(2) τα οποία είναι συζευγμένα με το d(0) μέσω του πίνακα G.
Παράδειγμα Συζύγων Κατευθύνσεων
Συζυγείς Κατευθύνσεις και Τετραγωνικές Συναρτήσεις Για τετραγωνικές συναρτήσεις ο πίνακάς συζυγίας G είναι ο πίνακας Hessian. Ιδιότητα Τετραγωνικού Τερματισμού Μέθοδος που τερματίζει σε γνωστό και πεπερασμένο αριθμό επαναλήψεων την ελαχιστοποίηση μίας τετραγωνικής συνάρτησης.
Σπουδαιότητα Μεθόδου Συζύγων Κατευθύνσεων Θεώρημα: Κάθε μέθοδος συζύγων κατευθύνσεων με ακριβή αναζήτηση επί γραμμής τερματίζει κατά την ελαχιστοποίηση μιας τετραγωνικής συνάρτησης το πολύ σε n επαναλήψεις και κάθε x(k+1) είναι το ελάχιστο του υποχώρου που ορίζεται από x(1), s(1), s(2), …, s(k), δηλαδή του συνόλου σημείων
Παράδειγμα Ελαχιστοποιήστε τη συνάρτηση όπου Βασική Ιδέα: Εάν ακολουθήσουμε τις συζυγείς κατευθύνσεις τότε θα καταλήξουμε στο ελάχιστο το πολύ σε 3 βήματα.
Παράδειγμα Ξεκινούμε από το σημείο x(0)=[1, 1, 1]T και χρησιμοποιούμε τον αλγόριθμο Βήμα 1: x(0)=[1, 1, 1]T, d(0)=[1, 0, 0]T οπόταν πρέπει να βρούμε το βέλτιστο βήμα a(0)*. Γενικά, για να βρούμε το βήμα a(κ)* βρίσκουμε και μηδενίζουμε τη παράγωγο
Παράδειγμα … Conjugate.m Conjugate1.m
Μέθοδος Fletcher-Reeves Αρχική μορφή x=x(0), d(0)= -g(0), k=0 Αναζήτηση επί γραμμής: Βρείτε το a(k)* που ελαχιστοποιεί τη συνάρτηση φ(α)=f( x(k) + a d(k)). Βρείτε το επόμενο επαναληπτικό x(k+1) = x(k) + a(k)* d(k) Κατεύθυνση αναζήτησης d(k+1) = -g(k+1) + b(k)d(k) Έλεγχος συνθήκης σύγκλισης
Παράδειγμα Ελαχιστοποιήστε τη συνάρτηση χρησιμοποιώντας τη μέθοδο Fletcher-Reeves όπου FletcherReeves2.m
Άλλες Μέθοδοι Συζύγων Κατευθύνσεων Fletcher-Reeves Polak-Ribiere Conjugate descent formula
Ιδιότητες Μεθόδων Συζύγων Κατευθύνσεων Οι μέθοδοι συζύγων κατευθύνσεων όταν εφαρμόζονται με ακριβή αναζήτηση επί γραμμής σε τετραγωνικές συναρτήσεις οπού G είναι ο θετικά ορισμένος πίνακας Hessian τερματίζουν το πολύ σε n επαναλήψεις. Κάθετα διανύσματα κλίσης: g(i)T g(j)=0, j=0,1,…,i Συζυγείς κατευθύνσεις: d(i)TGd(j)=0, j=0,1,…,i Κατεύθυνση κατάβασης: d(i)T g(i)= -g(i)T g(i)
Μέθοδοι Συζύγων Κατευθύνσεων για γενικές συναρτήσεις Για γενικές συναρτήσεις δεν υπάρχει εγγύηση ότι ο αλγόριθμος θα τερματίσει σε n επαναλήψεις. Κεντρική Ιδέα: κάθε n επαναλήψεις ξεκινούμε τον αλγόριθμο από την αρχή!
Αλγόριθμος Αρχική μορφή Αναζήτηση επί γραμμής: k=0, x=x(0) (αρχικό σημείο) d(0)= -g(0) (αρχική κατεύθυνση), Αναζήτηση επί γραμμής: Βρείτε το a(k)* που ελαχιστοποιεί την φ(α)=f( x(k) + a d(k)). Βρείτε το επόμενο επαναληπτικό x(k+1) = x(k) + a(k)* d(k) Έλεγχος συνθήκης σύγκλισης Νέα κατεύθυνση αναζήτησης Εάν k<n-1, d(k+1) = -g(k+1) + b(k)d(k) Εάν k=n-1, k=0, x(0)=x(k+1), d(0) = -g(0)