Μη Γραμμικός Προγραμματισμός Αναγκαίες και Ικανές Συνθήκες για τοπικά μέγιστα ή Ελάχιστα Ιδιότητες ευρετικών αλγορίθμων Αλγόριθμος μέγιστης κατάβασης Προβλήματα αναζήτησης επί γραμμής
Αναγκαίες και Ικανές Συνθήκες Τοπικού Ελάχιστου (Χωρίς Περιορισμούς) Αναγκαίες και Ικανές Συνθήκες Τοπικού Ελάχιστου (Χωρίς Περιορισμούς) Υποθέστε πως η συνάρτηση f(x) ανήκει στο σύνολο C2. Τότε η συνάρτηση παρουσιάζει τοπικό ελάχιστο στο σημείο x* εάν και μόνο αν ισχύουν οι συνθήκες Σκιαγραφή απόδειξης:
Αναγκαίες και Ικανές Συνθήκες Τοπικού Μέγιστου και Σαγματικού Αναγκαίες και Ικανές Συνθήκες Τοπικού Μέγιστου και Σαγματικού Αναγκαίες και Ικανές Συνθήκες για τοπικό μέγιστο Αναγκαίες και Ικανές Συνθήκες για Σαγματικό Σημείο (saddle point) (αόριστος)
Παράδειγμα Βρείτε και αναγνωρίστε τα στάσιμα σημεία της συνάρτησης:
Παράδειγμα Βρείτε και αναγνωρίστε τα στάσιμα της συνάρτησης:
Ευρετικοί Αλγόριθμοι Οι Επαναληπτικοί (iterative) Αλγόριθμοι υπολογίζουν επαναληπτικά μία σειρά σημείων x(1),…, x(k),… Γενική Δομή: Προσδιορισμός σημείου εκκίνησης (από χρήστη) Προσδιορισμός κατεύθυνσης αναζήτησης Προσδιορισμός βήματος Υπολογισμός νέου επαναληπτικού Έλεγχος κριτηρίου σύγκλισης
Ιδιότητες Ευρετικών Αλγορίθμων Ένας αλγόριθμος συγκλίνει (converge) στο βέλτιστο σημείο x* εάν για κάποιο k, x(k) = x*. Επιθυμητά κριτήρια σύγκλισης Πρακτικά κριτήρια σύγκλισης (ε>0): Καθολική και Τοπική Σύγκλιση.
Κυρτές (Convex) Συναρτήσεις Μία συνάρτηση f(x) είναι κυρτή (convex) στο διάστημα [a,b] εάν για κάθε x1,x2 [a,b] ισχύει Θεώρημα: Εάν μία συνάρτηση f(x) είναι κυρτή και έχει τοπικό ελάχιστο στη σημείο x*, τότε το σημείο x* είναι γενικό ελάχιστο
Ιδιότητες Ευρετικών Αλγορίθμων Ρυθμός Σύγκλισης (rate of convergence): Λάθος (error): Ρυθμός σύγκλιση του λάθους προς το 0 p Βαθμός σύγκλισης. Εάν p=1 τότε έχουμε γραμμική σύγκλιση, h(k+1) =O(||h(k)||) Εάν p=2 τότε έχουμε τετραγωνική σύγκλιση, h(k+1) =O(||h(k)||2). Εάν a=0 τότε έχουμε υπεργραμμική σύγκλιση
Εμπειρικές Ευρετικές Μέθοδοι (Heuristics) Τυχαία Επιλογή Σημείων Μέθοδοι Συμπλέγματος Σημείων Μέθοδοι Εναλλασσομένων Μεταβλητών Πλεονεκτήματα Δεν χρειάζονται υπολογισμό κλίσης Αυξημένη πιθανότητα εντοπισμού ενός «καλού» τοπικού ελάχιστου ακόμη και για συναρτήσεις με θόρυβο. Μειονεκτήματα Έχουν υψηλό υπολογιστικό φόρτο.
Μέθοδοι Συμπλέγματος Σημείων Επιλέγουμε n σημεία στο χώρο Rn σε ίσες αποστάσεις
Μέθοδοι Εναλλασσομένων Μεταβλητών Σε κάθε επανάληψη επιχειρείται μέγιστη βελτίωση κατά μήκος ενός άξονα συντεταγμένων σε κάθε επανάληψη.
Μέθοδος Μέγιστης Κατάβασης Προσδιορισμός κατεύθυνσης αναζήτησης Προσδιορισμός σημείου εκκίνησης (από χρήστη) Προσδιορισμός βήματος Υπολογισμός νέου επαναληπτικού Έλεγχος κριτηρίου σύγκλισης
Παράδειγμα Τετραγωνικής Συνάρτησης Προσδιορισμός κατεύθυνσης αναζήτησης Προσδιορισμός βήματος
Παράδειγμα Τετραγωνικής Συνάρτησης Υπολογισμός νέου επαναληπτικού Έλεγχος κριτηρίου σύγκλισης
Παράδειγμα Τετραγωνικής Συνάρτησης Προσδιορισμός σημείου εκκίνησης Προσδιορισμός κατεύθυνσης αναζήτησης
Παράδειγμα Τετραγωνικής Συνάρτησης Προσδιορισμός βήματος
Παράδειγμα Τετραγωνικής Συνάρτησης Υπολογισμός νέου επαναληπτικού Έλεγχος κριτηρίου σύγκλισης
Ιδιότητα Μεθόδου Μέγιστης Κατάβασης
Ιδιότητα Μεθόδου Μέγιστης Κατάβασης Σε κάθε βήμα ισχύει: Σημείωση: Η πιο πάνω σχέση δεν είναι ικανή για σύγκλιση. Παράδειγμα: Υποθέτουμε τη συνάρτηση
Ιδιότητα Μεθόδου Μέγιστης Κατάβασης
Αλγόριθμοι Αναζήτησης επί Γραμμής Πρόβλημα: Βρέστε το ελάχιστον μίας “unimodal” συνάρτησης, δηλαδή μίας συνάρτησης με μόνο 1 τοπικό ελάχιστο ή μέγιστο. Τύποι αλγόριθμων: Συγκριτικοί αλγόριθμοι Αλγόριθμοι με προσέγγιση
Συγκριτικοί Αλγόριθμοι Αναζήτησης επί Γραμμής Βασική Ιδέα: Συγκρίνουν την τιμή της συνάρτησης σε διάφορα σημεία και προσπαθούν να μειώσουν το διάστημα (αγκύλη) [a,b] στο οποίο βρίσκεται το τοπικό ελάχιστο. Κοινά Χαρακτηριστικά αλγορίθμων: Τα α1, α2 επιλέγονται σε ίσες αποστάσεις από τα άκρα a,b. Ένα από τα σημεία ξαναχρησιμοποιείται στο επόμενο βήμα
Initialize Δ, α1= a+Δ, α2= b-Δ Μέθοδος Χρυσής Τομής Initialize Δ, α1= a+Δ, α2= b-Δ Input: a,b,ε Compute F1=f(α1), F2=f(α2) YES NO Is F1< F2 b=α2, α2= α1, F2= F1 a=α1, α1= α2, F1= F2 Is b-a<ε YES NO Is b-a<ε YES NO END α1= a+(b- α2), F1=f(α1) α2= b+(a- α1), F2=f(α2)
Αναγνώριση Αρχικού Διαστήματος [a,b] Εάν δεν μπορούμε να υπολογίσουμε την παράγωγο, την προσεγγίζουμε με τις ακόλουθες φόρμουλες:
Τετραγωνική Προσέγγιση Εξίσωση Παραβολής Σύστημα εξισώσεων με 3 εξισώσεις και 3 αγνώστους
Ελαχιστοποίηση επί γραμμής χρησιμοποιώντας Τετραγωνική Προσέγγιση Σε κάθε βήμα αντικαθιστούμε ένα από τα α1, α2, α3, με το α* έτσι ώστε να ισχύουν οι σχέσεις
Κυβική Προσέγγιση Σύστημα εξισώσεων με 4 εξισώσεις και 4 αγνώστους
Ελαχιστοποίηση επί γραμμής χρησιμοποιώντας Κυβική Προσέγγιση Σε κάθε βήμα αντικαθιστούμε ένα από τα α1, α2 με το α* έτσι ώστε να ισχύουν οι σχέσεις
Αριθμητικά Προβλήματα Εάν το α* βρεθεί να είναι πολύ κοντά σε κάποιο από τα α1, α2, α3 τότε η προσεγγίσεις (τετραγωνική ή κυβική) μπορεί να μην είναι αρκετά καλές με αποτέλεσμα να μην επιτυγχάνεται πρόοδος. Για να αποφευχθεί αυτό το πρόβλημα, εισάγουμε τη παράμετρο Δ. Κάθε φορά που η διαφορά |αι- α*|<Δ
Ευστάθεια Μεθόδου Μέγιστης Κατάβασης Χρήση προσεγγιστικών αλγόριθμων για τον υπολογισμό του ελάχιστου σημείου σε μια κατεύθυνση Πόσο «κοντά» θα πρέπει να φτάσουμε στο ελάχιστο σημείο; Υπάρχει περίπτωση η μέθοδος μέγιστης κατάβασης να μην επιτυγχάνει «ικανοποιητική» πρόοδο από βήμα σε βήμα.
Ευστάθεια Μεθόδου Μέγιστης Κατάβασης Περίπτωση 1:
Ευστάθεια Μεθόδου Μέγιστης Κατάβασης Περίπτωση 2: Εφόσον το διάνυσμα κλίσης υπάρχει και είναι συνεχές και ικανοποιούνται είτε η Περίπτωση 1 είτε η 2, τότε ο αλγόριθμος της μέγιστης κατάβασης συγκλίνει (ή πάει στο -∞)