Κεφάλαιο 3: Εξελικτικός Υπολογισμός

Σχετικά έγγραφα
Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης

Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Τυπικά θέματα εξετάσεων. ΠΡΟΣΟΧΗ: Οι ερωτήσεις που παρατίθενται ΔΕΝ καλύπτουν την πλήρη ύλη του μαθήματος και παρέχονται απλά ενδεικτικά

Τεχνητή Νοημοσύνη. 5η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Εθνικό Μετσόβιο Πολυτεχνείο Τομέας Υδατικών Πόρων και Περιβάλλοντος. Διαχείριση Υδατικών Πόρων

Γενετικοί Αλγόριθμοι. Εισαγωγή

Τεχνολογία Συστημάτων Υδατικών Πόρων

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής

ΣΗΜΕΙΩΣΕΙΣ ΤΕΛΙΚΗΣ ΕΡΓΑΣΙΑΣ ΤΟΥ ΜΑΘΗΜΑΤΟΣ «ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ»

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Αναγνώριση Προτύπων Ι

3 η ΕΝΟΤΗΤΑ ΜΗ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΕΝΟΣ ΚΡΙΤΗΡΙΟΥ

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

Εκπαίδευση ΤΝΔ με ελαχιστοποίηση του τετραγωνικού σφάλματος εκπαίδευσης. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ»

Κεφάλαιο 7. Γενετικοί Αλγόριθµοι. Τεχνητή Νοηµοσύνη - Β' Έκδοση Ι. Βλαχάβας, Π. Κεφαλάς, Ν. Βασιλειάδης, Φ. Κόκκορας, Η.

Ε ανάληψη. Α ληροφόρητη αναζήτηση

Μέθοδοι πολυδιάστατης ελαχιστοποίησης

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

ΕΡΩΤΗΜΑΤΑ σε ΓΕΝΕΤΙΚΟΥΣ

Τεχνητή Νοημοσύνη. 5η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΑΠΟΙΚΙΑΣ ΜΥΡΜΗΓΚΙΩΝ ANT COLONY OPTIMIZATION METHODS

ΕΞΕΛΙΚΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ: θεωρητικό Πλαίσιο

Συστήματα Επιχειρηματικής Ευφυίας

Νευρωνικά ίκτυα και Εξελικτικός. Σηµερινό Μάθηµα. επανάληψη Γενετικών Αλγορίθµων 1 η εργασία Επανάληψη νευρωνικών δικτύων Ασκήσεις εφαρµογές

Αναγνώριση Προτύπων Ι

Γενετικοί αλγόριθµοι - ΓΑ Genetic algorithms - GA

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

ΣΧΕΔΙΑΣΜΟΣ ΚΙΝΗΣΗΣ ΚΑΙ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΓΑΣΙΩΝ ΣΕ ΒΙΟΜΗΧΑΝΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ

Αριθμητική Ανάλυση & Εφαρμογές

Μάθηση και Γενίκευση. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Εθνικό Μετσόβιο Πολυτεχνείο Τομέας Υδατικών Πόρων και Περιβάλλοντος. Διαχείριση Υδατικών Πόρων

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Συστήματα Επιχειρηματικής Ευφυίας. Οι αλγόριθμοι Hill Climbing, Simulated Annealing, Great Deluge, VNS, Tabu Search

ΕΙΣΑΓΩΓΗ ΣΤΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Τεχνητή Νοημοσύνη. 17η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Μέθοδοι μονοδιάστατης ελαχιστοποίησης

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Διαχείριση Υδατικών Πόρων Πολυκριτηριακή ανάλυση

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Το μοντέλο Perceptron

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Το Πολυεπίπεδο Perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

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

Υπολογιστική Νοηµοσύνη

Μάθημα Επιλογής 8 ου εξαμήνου

Αναγνώριση Προτύπων Ι

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων

Δρ. Βασίλειος Γ. Καμπουρλάζος Δρ. Ανέστης Γ. Χατζημιχαηλίδης

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΚΑΙ ΜΑΘΗΜΑΤΙΚΗ ΔΙΑΤΥΠΩΣΗ, Διαλ. 2. Ανωτάτη Σχολή Παιδαγωγικής και Τεχνολογικής Εκπαίδευσης 8/4/2017

PROJECT ΣΤΟ ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΕΥΡΕΤΙΚΕΣ ΜΕΘΟ ΟΥΣ

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

Σέργιος Θεοδωρίδης Κωνσταντίνος Κουτρούμπας. Version 2

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

Στο στάδιο ανάλυσης των αποτελεσµάτων: ανάλυση ευαισθησίας της λύσης, προσδιορισµός της σύγκρουσης των κριτηρίων.

Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.

Θεµελίωση Γενετικών Αλγορίθµων

Βελτιστοποιημένος χρονοπρογραμματισμός επιχειρηματικών διαδικασιών με χρήση τεχνικών τεχνητής νοημοσύνης

Διερεύνηση μεθόδων αναζήτησης ολικού βελτίστου σε προβλήματα υδατικών πόρων

1 ο Φροντιστήριο Υπολογιστική Νοημοσύνη 2

1 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ - ΑΛΓΟΡΙΘΜΟΙ

Βασικές αρχές εκπαίδευσης ΤΝΔ: το perceptron. "Τεχνητά Νευρωνικά Δίκτυα" (Διαφάνειες), Α. Λύκας, Παν. Ιωαννίνων

Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου

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

ΕΙΣΑΓΩΓΗ ΣΤΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ

0#// SCA !. >8'

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων

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

Δειγματοληψία στην Ερευνα. Ετος

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. Πειραματική μελέτη των παραμέτρων των εξελικτικών αλγορίθμων SL-PSO και εdeag πάνω στην επίλυση μη-γραμμικών προβλημάτων

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΙΚΑ Β ΓΥΜΝΑΣΙΟΥ. ΜΕΡΟΣ 1ο ΑΛΓΕΒΡΑ

ΈΡΕΥΝΑ ΜΕΤΑΒΛΗΤΗΣ ΓΕΙΤΟΝΙΑΣ (Variable Neighborhood Search - VNS) VNS) (Variable Neighborhood Search -

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

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

ΑΣΚΗΣΕΙΣ ΠΙΘΑΝΟΤΗΤΩΝ του Παν. Λ. Θεοδωρόπουλου 0

Αριθμητική Ανάλυση και Εφαρμογές

Πίνακες Διασποράς. Χρησιμοποιούμε ένα πίνακα διασποράς T και μια συνάρτηση διασποράς h. Ένα στοιχείο με κλειδί k αποθηκεύεται στη θέση

ΕΝΟΤΗΤΑ III ΒΑΣΙΚΕΣ ΜΕΘΟ ΟΙ ΑΝΑΛΥΣΗΣ

ΟΙ ΕΡΩΤΗΣΕ1Σ III: ΟΙ ΚΛΙΜΑΚΕΣ]

Μιγαδικοί Αριθμοί. Μαθηματικά Γ! Λυκείου Θετική και Τεχνολογική Κατεύθυνση. Υποδειγματικά λυμένες ασκήσεις Ασκήσεις προς λύση

Σύνοψη Προηγούμενου. Πίνακες (Arrays) Πίνακες (Arrays): Βασικές Λειτουργίες. Πίνακες (Arrays) Ορέστης Τελέλης

ΕΙΣΑΓΩΓΗ ΣΤΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΣΥΣΤΗΜΑΤΩΝ

Μοντέλο Perceptron πολλών στρωμάτων Multi Layer Perceptron (MLP)

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

Υπολογιστική Νοημοσύνη

Αριθμητική Ανάλυση και Εφαρμογές

Ανασκόπηση θεωρίας ελαχίστων τετραγώνων και βέλτιστης εκτίμησης παραμέτρων

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

Θεωρία Πληροφορίας. Διάλεξη 4: Διακριτή πηγή πληροφορίας χωρίς μνήμη. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Transcript:

Κεφάλαιο 3: Εξελικτικός Υπολογισμός Ένα σημαντικό ζητούμενο σε πρακτικές εφαρμογές ΥΝ αποτελεί κάποιου είδους βελτιστοποίηση (optmzaton), η οποία τυπικά μεθοδεύεται μέσω της ελαχιστοποίησης μιας καλώς ορισμένης συνάρτησης κόστους, που ονομάζεται αντικειμενική συνάρτηση, ενδεχομένως με ταυτόχρονη ικανοποίηση ενός συνόλου (αλγεβρικών) περιορισμών (constrants). Η ύπαρξη κλασικών αλγόριθμων βελτιστοποίησης, όπως, για παράδειγμα, η μέθοδος των ελαχίστων τετραγώνων (least-squares method) του Gauss, δεν αρκεί για την αντιμετώπιση σύγχρονων προβλημάτων βελτιστοποίησης εξαιτίας της πολύμορφης πολυπλοκότητας των σύγχρονων προβλημάτων. Μια δημοφιλής κατηγορία αλγορίθμων βελτιστοποίησης λειτουργεί με εξομοίωση (emulaton) νόμων και αρχών που διέπουν φυσικά φαινόμενα και ζωντανούς οργανισμούς αντίστοιχα. Γι' αυτό το λόγο οι προαναφερθέντες αλγόριθμοι βελτιστοποίησης ονομάζονται εμπνευσμένοι από τη φύση (nature nspred). Το παρόν κεφάλαιο εστιάζει σε ένα υποσύνολο αλγόριθμων βελτιστοποίησης εμπνευσμένων από την φύση, οι οποίοι είναι γνωστοί ως αλγόριθμοι εξελικτικού υπολογισμού. Μάλιστα, έμφαση δίνεται εδώ σε γενετικούς αλγορίθμους (genetc algorthms). 3.1 Βασικές Αρχές Βελτιστοποίησης Η γενική μορφή ενός προβλήματος βελτιστοποίησης (Boyd & Vandenberghe, 2004 Deb, 2001), το οποίο n χαρακτηρίζεται από μία αντικειμενική συνάρτηση f :, είναι η ακόλουθη: mn f ( x) (3.1) g x α, = 1,2,3,...,m. όπου x = x, x, x,..., x είναι το διάνυσμα των παραμέτρων βελτιστοποίησης πλήθους n, ενώ x 1 2 3 n g και α, = 1,2,3,...,m είναι (αλγεβρικές) συναρτήσεις περιορισμών και σταθερές, αντίστοιχα. Αυτά τα προβλήματα διακρίνονται, πρώτον, σε προβλήματα βελτιστοποίησης χωρίς περιορισμούς (unconstraned) και, δεύτερον, σε προβλήματα βελτιστοποίησης με περιορισμούς (constraned), ανάλογα με το εάν οι μεταβλητές βελτιστοποίησης της αντικειμενικής συνάρτησης οφείλουν να ικανοποιούν κάποιους (αλγεβρικούς) περιορισμούς ή όχι. Η δεύτερη κατηγορία μπορεί να περιλαμβάνει περιορισμούς ισοτήτων και περιορισμούς ανισοτήτων. Με βάση τη γενική μορφή της Εξ.(3.1) μπορούμε επίσης να διακρίνουμε τις περιπτώσεις της γραμμικής (lnear) βελτιστοποίησης και της μη-γραμμικής (non-lnear) βελτιστοποίησης, ανάλογα με το αν οι συναρτήσεις x g x είναι γραμμικές ή μη-γραμμικές αντίστοιχα. f και Η διαδικασία βελτιστοποίησης αναζητεί βέλτιστες τιμές των μεταβλητών x μέσα στο χώρο (αναζήτησης) των λύσεων (soluton (search) space) που ελαχιστοποιούν την αντικειμενική συνάρτηση και ταυτόχρονα ικανοποιούν τους περιορισμούς. Σημειώστε ότι κάθε πρόβλημα βελτιστοποίησης μπορεί να αντιμετωπιστεί ως πρόβλημα ελαχιστοποίησης, αφού ένα πρόβλημα μεγιστοποίησης μετασχηματίζεται στη μορφή της Εξ.(3.1) είτε αντιστρέφοντας ( 1/ x - f x ) της αντικειμενικής f ), είτε αλλάζοντας το πρόσημο ( συνάρτησης. Ιδιαίτερο ενδιαφέρον παρουσιάζουν προβλήματα βελτιστοποίησης στα οποία οι συναρτήσεις και x g είναι κυρτές (convex), δηλαδή ικανοποιούν την ανισότητα (Bertsekas κ.ά., 2003 Deb, 2001): 1 1 f ( x x ) f x f x (3.2) 1 2 1 2 για κάθε 0 1. Ένα παράδειγμα κυρτής συνάρτησης απεικονίζεται στο Σχήμα 3.1. Αντίθετα, οι συναρτήσεις που δεν ικανοποιούν την Εξ.(3.2) ονομάζονται μη-κυρτές. Η κυρτότητα αποτελεί σημαντική ιδιότητα μιας αντικειμενικής συνάρτησης προς βελτιστοποίηση διότι το ελάχιστο μίας κυρτής συνάρτησης στο πεδίο ορισμού της είναι ολικό ελάχιστο (global mnmum) και όχι μόνον τοπικό ελάχιστο (local mnmum). Αυτό σημαίνει ότι η λύση του προβλήματος είναι η βέλτιστη λύση. Ωστόσο, οι αντικειμενικές συναρτήσεις συχνά δεν είναι κυρτές. Ο ορισμός του προβλήματος βελτιστοποίησης της Εξ.(3.1) μπορεί να επεκταθεί ώστε να συμπεριλάβει περισσότερες από μία αντικειμενικές συναρτήσεις. Σε αυτή την περίπτωση μιλάμε για βελτιστοποίηση πολλαπλών στόχων (mult-objectve optmzaton) (Deb, 2001), η οποία συνήθως είναι f x 3-1

σημαντικά πολυπλοκότερη ειδικά όταν οι πολλαπλές αντικειμενικές συναρτήσεις βρίσκονται σε αντίφαση μεταξύ τους, δηλ. όταν η βελτίωση μιας αντικειμενικής συνάρτησης συνεπάγεται επιδείνωση μιας άλλης. Επίσης, ιδιαίτερο ενδιαφέρον παρουσιάζει η βελτιστοποίηση πολυτροπικών (mult-modal) συναρτήσεων, οι οποίες χαρακτηρίζονται από περισσότερα του ενός (ίσων μεταξύ τους) ολικών ακρότατων σε διαφορετικά σημεία του χώρου των λύσεων. Η εύρεση όλων των ακρότατων είναι δύσκολο πρόβλημα για κλασικούς αλγορίθμους βελτιστοποίησης. Εν κατακλείδι, σημειώστε ότι η βελτιστοποίηση μιας αντικειμενικής συνάρτησης αποτελεί σημαντικό πεδίο έρευνας με εφαρμογή σε πολλά επιστημονικά πεδία. Για το λόγο αυτό υπάρχει μόνιμο ενδιαφέρον για αποτελεσματικούς αλγορίθμους βελτιστοποίησης που υπολογίζουν γρήγορα το ολικό βέλτιστο μίας πολύπλοκης αντικειμενικής συνάρτησης. Σχήμα 3.1 Μια κυρτή συνάρτηση. 3.2 Κλασικοί Αλγόριθμοι Βελτιστοποίησης Για αρκετά χρόνια στην ερευνητική βιβλιογραφία κυριάρχησαν οι κλασικοί αλγόριθμοι βελτιστοποίησης, οι οποίοι είναι επαναληπτικοί αλγόριθμοι κατάβασης (descent) και έχουν την ακόλουθη γενική μορφή: x k+1 = x k + ηδx k (3.3) όπου k = 0,1,... είναι ο αριθμός επανάληψης του αλγορίθμου, x k, x k+1 είναι οι τιμές της μεταβλητής της αντικειμενικής συνάρτησης f(.) στην επανάληψη k και k +1 αντίστοιχα. Τέλος, η παράμετρος η καλείται μέγεθος βήματος (step sze), ενώ ο όρος Δx k ονομάζεται κατεύθυνση αναζήτησης (search drecton). Χαρακτηριστικό των επαναληπτικών αλγόριθμων κατάβασης είναι ότι σε κάθε επανάληψη ισχύει k+1 k f x < f x, δηλ. κάθε επανάληψη μειώνει την τιμή της αντικειμενικής συνάρτησης. Όταν η κατεύθυνση αναζήτησης περιγράφεται από την παράγωγο της αντικειμενικής συνάρτησης, Δx = - f x, τότε ο αλγόριθμος ονομάζεται αλγόριθμος κατάβασης βαθμίδας (gradent descent). δηλ. k k Άλλες παραλλαγές του βασικού αλγορίθμου Εξ.(3.3) αποτελούν η μέθοδος του Νεύτωνα (Newton s method) (Coleman & L, 1994) και οι αλγόριθμοι συζυγούς κατάβασης (conjugate descent) (Møller, 1993). Οι προαναφερθέντες κλασικοί αλγόριθμοι βελτιστοποίησης έχουν χρησιμοποιηθεί εκτεταμένα για την εκπαίδευση ΤΝΔ, όπως περιγράφτηκε στο Κεφάλαιο 1. Συγκεκριμένα, η κλασική εκπαίδευση ενός ΤΝΔ αντιμετωπίζεται ως ένα πρόβλημα βελτιστοποίησης, όπου αναζητούνται τα βέλτιστα βάρη του ΤΝΔ, που ελαχιστοποιούν την αντικειμενική συνάρτηση του σφάλματος εξόδων του ΤΝΔ χρησιμοποιώντας έναν επαναληπτικό αλγόριθμο κατάβασης. 3-2

3.2.1 Παραδοχές Κλασικών Αλγόριθμων Βελτιστοποίησης Οι κλασικοί αλγόριθμοι βελτιστοποίησης χρησιμοποιούνται ευρύτατα στην βελτιστοποίηση συστημάτων και διαδικασιών. Οι αλγόριθμοι αυτοί τυπικά προϋποθέτουν κάποιες παραδοχές, οι οποίες απαριθμούνται στη συνέχεια. 1. Μια βασική παραδοχή είναι η ύπαρξη αντικειμενικής συνάρτησης. Ωστόσο, δεν υπάρχει πάντοτε μια αντικειμενική συνάρτηση ειδικά σε περιπτώσεις πολύπλοκων προβλημάτων. 2. Δοθείσης της αντικειμενικής συνάρτησης, μια δημοφιλής παραδοχή για την ύπαρξη (μοναδικού) ολικού ελάχιστου είναι η παραδοχή της κυρτότητας της αντικειμενικής συνάρτησης, όπως εξηγήθηκε στην προηγούμενη ενότητα. Ωστόσο, μια αντικειμενική συνάρτηση συχνά δεν είναι κυρτή. Επιπλέον, στους αλγορίθμους στους οποίους γίνεται χρήση της (πρώτης) παραγώγου της αντικειμενικής συνάρτησης είναι πιθανό το ενδεχόμενο παγίδευσης σε τοπικό ελάχιστο, όπου ο αλγόριθμος βελτιστοποίησης τερματίζει χωρίς να εγγυάται την εύρεση του ολικού ελάχιστου. Συνεπώς, ένας κλασικός αλγόριθμος βελτιστοποίησης μπορεί να συγκλίνει σε υποβέλτιστες λύσεις. 3. Μια επιπλέον παραδοχή των κλασικών αλγορίθμων, οι οποίοι κάνουν χρήση της πρώτης παραγώγου της αντικειμενικής συνάρτησης, είναι και η ύπαρξη της δεύτερης παραγώγου. Ωστόσο, σε περιπτώσεις πολύπλοκων αντικειμενικών συναρτήσεων ο υπολογισμός των δύο παραγώγων δεν είναι δεδομένος. Η προϋπόθεση των προαναφερθέντων παραδοχών αποτελεί το λόγο για τον οποίο οι κλασικοί αλγόριθμοι βελτιστοποίησης συχνά αποτυγχάνουν σε πολύπλοκα προβλήματα. Η ανάγκη ύπαρξης αποτελεσματικών αλγόριθμων, που να μπορούν να εφαρμοστούν σε διάφορα προβλήματα βελτιστοποίησης, αποτελεί ενεργό πεδίο επιστημονικής έρευνας. 3.3 Βασικές Έννοιες Εξελικτικού Υπολογισμού Η έννοια του εξελικτικού υπολογισμού έχει τις ρίζες της στις δεκαετίες του 1950 και 1960. Ο όρος αυτός χρησιμοποιήθηκε για να περιγράψει ένα σύνολο αλγόριθμων, όπου κάθε αλγόριθμος βασίζεται σε έναν πληθυσμό υποψήφιων λύσεων, η καθεμιά από τις οποίες ονομάζεται άτομο (ndvdual) (του πληθυσμού). Βασικό χαρακτηριστικό του εξελικτικού υπολογισμού αποτελεί η παράλληλη αναζήτηση στο χώρο αναζήτησης, καθώς οι υποψήφιες λύσεις του πληθυσμού δοκιμάζονται στο πρόβλημα παράλληλα (βλ. ταυτόχρονα). Δηλαδή, σε αντίθεση με τους κλασικούς αλγορίθμους, όπου η βελτιστοποίηση μεθοδεύεται ψάχνοντας στο χώρο αναζήτησης σημείο-προς-σημείο, στον εξελικτικό υπολογισμό η βελτιστοποίηση μεθοδεύεται ψάχνοντας στο χώρο αναζήτησης ταυτόχρονα σε πολλά σημεία. Με αυτόν τον τρόπο επιτυγχάνεται μια ευρύτερη εξερεύνηση (exploraton), καθώς και μια στοχευμένη εκμετάλλευση (explotaton) του χώρου αναζήτησης προς εύρεση μιας βέλτιστης λύσης. Σε κάθε επανάληψη μεταξύ των ατόμων (βλ. υποψήφιων λύσεων) του πληθυσμού εφαρμόζονται κατάλληλοι τελεστές (operators), βλ. «μηχανισμοί», εμπνευσμένοι από τη Δαρβινική θεωρία της εξέλιξης (Darwn, 2014), ώστε να παράγονται καλύτερες λύσεις σε κάθε επανάληψη. Τελικά, μετά από έναν αριθμό επαναλήψεων, η πειραματική (βλ. υπολογιστική) εμπειρία έχει δείξει ότι ολόκληρος ο πληθυσμός συγκλίνει προς μία βέλτιστη λύση. Η εφαρμογή των τελεστών αποσκοπεί αφενός στην παραγωγή καλύτερων λύσεων και αφετέρου στην εξάλειψη χειρότερων λύσεων. Σε κάθε επανάληψη υπολογίζεται ένας νέος πληθυσμός ατόμων που περιέχει καλύτερες λύσεις με τελικό σκοπό να προσεγγιστεί το ολικό βέλτιστο του προβλήματος. Ένα πρόβλημα το οποίο μπορεί να εμφανιστεί σε όλους τους αλγορίθμους εξελικτικού υπολογισμού είναι η πρόωρη σύγκλιση (premature conevrgence). Το φαινόμενο αυτό εμφανίζεται όταν ο αλγόριθμος προσεγγίζει πολύ γρήγορα μία λύση, δηλ. όταν όλες οι λύσεις του πληθυσμού αποκτούν την ίδια τιμή, οπότε τυπικά αποτρέπεται η δημιουργία διαφορετικών λύσεων (μέσω της εφαρμογής των τελεστών) με αποτέλεσμα να μην εξερευνάται ευρέως ο χώρος αναζήτησης των λύσεων. Μία μεθόδευση για την αποφυγή πρόωρης σύγκλισης είναι η διατήρηση της ποικιλομορφίας (dversty) (Toffolo & Benn, 2003), δηλ. μιας καλώς ορισμένης διαφορετικότητας των ατόμων του πληθυσμού ως αποτέλεσμα της εφαρμογής τελεστών. 3.4 Γενετικοί Αλγόριθμοι Οι γενετικοί αλγόριθμοι (ΓΑ) (genetc algorthms (GA)) αποτελούν τους δημοφιλέστερους από τους εξελικτικούς αλγορίθμους και βασίζονται σε αρχές της εξέλιξης των ειδών που εισήγαγε ο Δαρβίνος με το βιβλίο του «Η Καταγωγή των Ειδών» (Darwn, 2014). Οι ΓΑ προτάθηκαν τη δεκαετία του 1960 από τον Holland (1992) και τους συνεργάτες του. Παρά το γεγονός ότι η αρχική ορολογία που εισήγαγε ο Holland 3-3

ήταν γενετικό σχέδιο (genetc plan), ο όρος γενετικός αλγόριθμος υιοθετήθηκε αργότερα για να υπογραμμίσει τον κεντρικό ρόλο του υπολογισμού στον καθορισμό και την υλοποίηση των σχεδίων. 3.4.1 Βασικές Αρχές Η βασική ιδέα για την ανάπτυξη των ΓΑ προέρχεται από το γεγονός ότι οι ζωντανοί οργανισμοί είναι πετυχημένα παραδείγματα βελτιστοποίησης μέσω της εφαρμογής τελεστών εξέλιξης, όπως εξηγείται λεπτομερώς παρακάτω. Αντίθετα, ένας προγραμματιστής υπολογιστών μπορεί να προσπαθεί μάταια προκειμένου να αναπτύξει έναν καλό αλγόριθμο βελτιστοποίησης. Συγκεκριμένα, η φυσική επιλογή εξαλείφει ένα σημαντικό εμπόδιο που αντιμετωπίζει ένας άνθρωπος, τη μοντελοποίηση, δηλ. την ακριβή μαθηματική περιγραφή, φυσικών νόμων και αρχών, η οποία είναι αναγκαία προϋπόθεση για την υπολογιστική βελτιστοποίηση. Χρησιμοποιώντας εξελικτικούς μηχανισμούς, και μάλιστα ΓΑ, οι ερευνητές καταφέρνουν να βελτιστοποιήσουν προβλήματα ακόμα και όταν αυτά δεν είναι πλήρως κατανοητά. Συγκεκριμένα, οι ΓΑ έχουν τη δυνατότητα να δοκιμάζουν ταυτόχρονα ένα ολόκληρο σύνολο πιθανών λύσεων ενός τεχνικού προβλήματος. Σημειωτέον ότι κάποιες φορές η μελέτη της εξέλιξης προγραμμάτων λογισμικού οδηγεί σε συμπεράσματα που διαφωτίζουν τον τρόπο εξέλιξης της ζωής και της ευφυΐας στο φυσικό κόσμο. Οι ζωντανοί οργανισμοί εξελίσσονται χρησιμοποιώντας δύο βασικούς μηχανισμούς (βλ. τελεστές) που περιλαμβάνουν πρώτον, τη φυσική επιλογή (natural selecton) και δεύτερον, τη διασταύρωση (crossover). Ο πρώτος μηχανισμός (βλ. φυσική επιλογή) καθορίζει ποια άτομα του πληθυσμού θα επιβιώσουν αντί άλλων για να προσεγγίσουν περισσότερους συζύγους (mates) με σκοπό να αναπαραχθούν. Ο δεύτερος μηχανισμός (βλ. διασταύρωση) εξασφαλίζει την ανάμειξη των γονιδίων (genes), δηλ. των μεταβλητών του προς βελτιστοποίηση προβλήματος, στους απογόνους προς διατήρηση μιας ποικιλομορφίας με σκοπό την εύρεση βέλτιστης λύσης. Η βασική αρχή για τη φυσική επιλογή είναι απλή: αν ένας ζωντανός οργανισμός αποτυγχάνει σε μία σειρά από δοκιμασίες από τις οποίες εξαρτάται η επιβίωσή του, όπως είναι οι δοκιμασίες εύρεσης τροφής, νερού, καταφύγιου, κ.λπ., τότε πεθαίνει. Συνεπώς, δε μεταφέρει τα γονίδιά του στην επόμενη γενεά. Αντιθέτως, «επιτυχημένα άτομα» επιζούν και παράγουν απογόνους. Επιπλέον, η διασταύρωση επιτυχημένων ατόμων (γονέων) μπορεί να αναπαράγει απογόνους περισσότερο επιτυχημένους από τους γονείς τους. Με αυτόν τον τρόπο τα άτομα εξελίσσονται από γενεά σε γενεά προσπαθώντας να προσαρμόζονται βέλτιστα στο περιβάλλον τους. Ένας ΓΑ χρησιμοποιεί έναν πληθυσμό ατόμων (βλ. υποψήφιων λύσεων). Η αναπαράσταση ενός ατόμου του πληθυσμού ονομάζεται χρωμόσωμα (chromosome) και αναπαριστά το σύνολο των μεταβλητών του προβλήματος. Σε κάθε χρωμόσωμα αποδίδεται (ως αποτέλεσμα υπολογισμού) ένας βαθμός καταλληλότητας (degree of ftness), ο οποίος ποσοτικοποιεί την ποιότητα της λύσης, η οποία αναπαριστάνεται από το συγκεκριμένο χρωμόσωμα. Ο βαθμός καταλληλότητας ενός χρωμοσώματος τελικά προσδιορίζει την πιθανότητα να επιλεγεί αυτό το χρωμόσωμα προς διασταύρωση. Συγκεκριμένα, από τη μια μεριά, στα χρωμοσώματα με μεγαλύτερο βαθμό καταλληλότητας δίνονται περισσότερες ευκαιρίες αναπαραγωγής μέσω διασταύρωσης με άλλα χρωμοσώματα του πληθυσμού, οπότε παράγονται ως απόγονοι νέα χρωμοσώματα τα οποία μοιράζονται χαρακτηριστικά (βλ. γονίδια) του κάθε γονέα. Από την άλλη, άτομα του πληθυσμού με μικρότερο βαθμό καταλληλότητας είναι λιγότερο πιθανό να επιλεγούν για αναπαραγωγή και έτσι τα χαρακτηριστικά τους (δηλ. τα γονίδιά τους) τείνουν να εξαφανιστούν από τον πληθυσμό. Συνεπώς, με την επιλογή προς διασταύρωση των καλύτερων χρωμοσωμάτων, δηλ. των χρωμοσωμάτων με μεγαλύτερο βαθμό καταλληλότητας ανά γενεά ατόμων, αναμένεται να παραχθεί μια καλύτερη γενεά. Η τελευταία (γενεά) τείνει να περιλαμβάνει σε μεγαλύτερη αναλογία χαρακτηριστικά (βλ. γονίδια) των καλύτερων χρωμοσωμάτων της προηγούμενης γενεάς. Με αυτόν τον τρόπο τα καλύτερα χαρακτηριστικά τείνουν να διατηρούνται στον πληθυσμό και έτσι τελικά να υπολογίζονται καλύτερες λύσεις στο χώρο αναζήτησης. 3.4.2 Η Βασική Δομή ενός Γενετικού Αλγορίθμου Παρά το γεγονός ότι ήδη έχουν προταθεί πολλοί ΓΑ με διαφορετικά γνωρίσματα ο καθένας, η βασική λειτουργική δομή ενός ΓΑ (Coley, 1999 Mtchell, 1998) παραμένει σταθερή όπως περιγράφεται στο Σχήμα 3.2. Πριν από την εκτέλεση ενός ΓΑ θα πρέπει να προηγηθεί μια κατάλληλη κωδικοποίηση (encodng) χρωμοσώματος για το συγκεκριμένο πρόβλημα. Επίσης, απαιτείται ο ορισμός μιας κατάλληλης συνάρτησης καταλληλότητας (ftness functon), η οποία αποδίδει ένα βαθμό καταλληλότητας σε κάθε κωδικοποιημένη λύση. Σημειώστε ότι η συνάρτηση καταλληλότητας είναι μια αντικειμενική συνάρτηση. 3-4

Σχήμα 3.2 Η βασική λειτουργική δομή ενός τυπικού ΓΑ. Κατά τη διάρκεια της εκτέλεσης του ΓΑ θα πρέπει να επιλέγονται χρωμοσώματα (γονείς) προς διασταύρωση και παραγωγή γόνων. Επιπλέον, η εφαρμογή του τελεστή της μετάλλαξης (mutaton) προσδίδει ποικιλομορφία με την τυχαία εμφάνιση κάποιου χρωμοσώματος το οποίο θα ήταν αδύνατο να εμφανιστεί μέσω της διασταύρωσης. Σε περίπτωση που ο αριθμός των γόνων είναι μικρότερος ή μεγαλύτερος από το μέγεθος του αρχικού πληθυσμού, μπορεί να γίνει επανατοποθέτηση γονέων από τον αρχικό στον παραγόμενο πληθυσμό, ώστε το συνολικό μέγεθος του πληθυσμού να διατηρηθεί σταθερό. Στις επόμενες παραγράφους γίνεται περιγραφή των επιμέρους λειτουργιών ενός ΓΑ με βάση τη σειρά εφαρμογής τους, όπως φαίνεται στο Σχήμα 3.2. 3.4.2.1 Αρχικός Πληθυσμός Πριν τη δημιουργία του αρχικού πληθυσμού αποφασίζεται η κωδικοποίηση των ατόμων του πληθυσμού. Η κωδικοποίηση των λύσεων εξαρτάται από τη φύση του προς επίλυση προβλήματος και τη μορφή των μεταβλητών /παραμέτρων οι οποίες αποτελούν τους αγνώστους που αναζητούνται. Υπάρχουν διάφοροι τρόποι κωδικοποίησης. Στη συνέχεια παρουσιάζουμε κάποιους από αυτούς. 3-5

Δυαδική κωδικοποίηση (bnary encodng). Πρόκειται για το δημοφιλέστερο τρόπο κωδικοποίησης, με βάση τον οποίο το χρωμόσωμα αποτελείται από μια ακολουθία δυφίων (bts) 0 ή 1. Ο συνολικός αριθμός των δυφίων με τα οποία αναπαρίσταται κάθε λύση καθορίζεται από το πλήθος των αγνώστων μεταβλητών και από την ακρίβεια αναπαράστασης κάθε μεταβλητής. Για παράδειγμα, αν το μήκος αναπαράστασης της μεταβλητής είναι l, = 1,,M, τότε το συνολικό μήκος (L) του κάθε χρωμοσώματος, το οποίο αποτελείται από Μ μεταβλητές, είναι: M =1 L = l (3.4) Ο Πίνακας 3.1 δείχνει μία δυαδική κωδικοποίηση δύο χρωμοσωμάτων αποτελούμενων από τρεις μεταβλητές Α, Β και Γ των 8 δυφίων εκάστη με συνολικό μήκος 24 δυφία. Μεταβλητή Α Μεταβλητή Β Μεταβλητή Γ Χρωμόσωμα Α 00000000 00000001 00000100 Χρωμόσωμα Β 00010000 00000100 00000001 Πίνακας 3.1 Δυαδική κωδικοποίηση δυο χρωμοσωμάτων αποτελούμενων από τρεις μεταβλητές. Σε περίπτωση που οι άγνωστες μεταβλητές λαμβάνουν πραγματικές τιμές, τότε απαιτείται μια γραμμική απεικόνιση των πραγματικών τιμών σε δυαδικές και αντίστροφα. Για παράδειγμα, μία τέτοια απεικόνιση (Coley, 1999) είναι η εξής: rmax - r r = l 2-1 mn z + r mn (3.5) όπου [ r, r ] είναι το πεδίο ορισμού της μεταβλητής, z και l η δεκαδική αναπαράσταση και το μήκος mn max (βλ. αριθμός δυφίων) της δυαδικής μεταβλητής, αντίστοιχα. Κωδικοποίηση μετάθεσης (permutaton encodng). Το χρωμόσωμα αποτελείται από αριθμούς που παριστάνουν τη θέση σε μία ακολουθία. Η κωδικοποίηση αυτή μπορεί να χρησιμοποιηθεί σε συνδυαστικά προβλήματα όπως, για παράδειγμα, στο πρόβλημα του πλανόδιου πωλητή. Κωδικοποίηση δένδρου (tree encodng). Το χρωμόσωμα είναι ένα δένδρο κατάλληλα κωδικοποιημένων αντικειμένων, όπου τα τελευταία (αντικείμενα) περιλαμβάνουν συναρτήσεις ή/και εντολές σε γλώσσα προγραμματισμού. Η κωδικοποίηση δέντρων είναι ιδιαίτερα χρήσιμη για εξελισσόμενα προγράμματα (evolvng programs), κ.ά. Κωδικοποίηση τιμών (value encodng). Χρησιμοποιείται μία ακολουθία τιμών άμεσα συσχετιζόμενων με το προς βελτιστοποίηση πρόβλημα, όπως πραγματικοί αριθμοί, χαρακτήρες, κ.ά. Η κωδικοποίηση τιμών χρησιμοποιείται σε προβλήματα όπου η λύση περιλαμβάνει μεγάλο αριθμό μεταβλητών διότι, λόγω της αξιοποίησης του εύρους των λύσεων, μπορεί να καλύπτει μεγαλύτερες περιοχές του πεδίου αναζήτησης. Αφού αποφασιστεί ο τρόπος κωδικοποίησης, επιλέγεται τυχαία ο αρχικός πληθυσμός των υποψήφιων λύσεων, π.χ. με μια γεννήτρια τυχαίων αριθμών. Ιδιαίτερη μέριμνα λαμβάνεται, ώστε ο αρχικός πληθυσμός να είναι όσο το δυνατόν ποικιλόμορφος, δηλ. τα χρωμοσώματα να είναι όσο το δυνατόν ομοιόμορφα κατανεμημένα στο χώρο αναζήτησης των λύσεων, ώστε να μην περιορίζεται η αναζήτηση αποκλειστικά σε μία μόνον περιοχή του χώρου αναζήτησης. 3.4.2.2 Υπολογισμός Καταλληλότητας Η καταλληλότητα των χρωμοσωμάτων υπολογίζεται μέσω της εφαρμογής μίας συνάρτησης καταλληλότητας, που ποσοτικοποιεί την αποτελεσματικότητα της υποψήφιας λύσης, η οποία αναπαριστάνεται από το συγκεκριμένο χρωμόσωμα. Η ακριβής μορφή της συνάρτησης καταλληλότητας εξαρτάται από το 3-6

συγκεκριμένο πρόβλημα. Ανάλογα με την τιμή της συνάρτησης καταλληλότητας τα χρωμοσώματα του πληθυσμού ταξινομούνται από το «πλέον κατάλληλο» προς το «λιγότερο κατάλληλο». Σε κάποια προβλήματα οι τιμές της συνάρτησης καταλληλότητας των χρωμοσωμάτων κυμαίνονται σε πολύ μεγάλο εύρος. Η υπολογιστική εμπειρία έχει δείξει ότι όταν η τιμή της συνάρτησης καταλληλότητας ενός χρωμοσώματος είναι σε μεγάλη απόσταση από τις αντίστοιχες τιμές άλλων χρωμοσωμάτων, τότε το προαναφερθέν χρωμόσωμα συχνά λειτουργεί ως υπεράτομο μέσα στον πληθυσμό και οδηγεί σε πρόωρη σύγκλιση. Το πρόβλημα αυτό αντιμετωπίζεται με την τεχνική ανάθεσης ποιότητας με βάση την τάξη, όπου, μετά την ταξινόμησή τους, ο αύξων αριθμός της θέσης κάθε χρωμοσώματος στην ταξινόμηση αποτελεί και το μέτρο της ποιότητάς του. Έτσι αποφεύγεται η δημιουργία χρωμοσωμάτων που λειτουργούν ως υπεράτομα. 3.4.2.3 Επιλογή Υπολογιστικός πειραματισμός έδειξε ότι η επιλογή των γονέων δεν πρέπει να βασίζεται αποκλειστικά στα καλύτερα χρωμοσώματα κάθε γενεάς, διότι τότε μπορεί να αποκλείσει τη βέλτιστη λύση. Μια καλή πρακτική είναι να επιζούν λιγότερο καλά χρωμοσώματα, ώστε να διασφαλίζεται η μετάδοση της γενετικής τους πληροφορίας. Πάντως κατά κανόνα μια μέθοδος επιλογής επιδιώκει περισσότερους απογόνους για τα καλύτερα χρωμοσώματα. Έχουν προταθεί και αναπτυχθεί πολλές μέθοδοι επιλογής που χωρίζονται σε στοχαστικές (stochastc) και αιτιοκρατικές (determnstc). Οι πιο δημοφιλείς παρουσιάζονται στη συνέχεια (Coley, 1999). Επιλογή του καλύτερου συζύγου (top mate selecton). Η απλούστερη από τις μεθόδους, εξομοιώνει το φυσικό νόμο επιλογής του καταλληλότερου ατόμου. Σύμφωνα με αυτήν την μέθοδο, ο πληθυσμός ταξινομείται σύμφωνα με τις τιμές καταλληλότητας των χρωμοσωμάτων του, από τα πιο κατάλληλα στα λιγότερο κατάλληλα. Στη συνέχεια, ένα ποσοστό (συνήθως το 50%) του πληθυσμού με τα λιγότερο κατάλληλα χρωμοσώματα αγνοείται, ενώ τα υπόλοιπα (βλ. πιο κατάλληλα) χρωμοσώματα χρησιμοποιούνται για να παραχθεί η επόμενη γενεά. Η μέθοδος αυτή κατατάσσεται στις αιτιοκρατικές μεθόδους. Το πλεονέκτημα αυτής της μεθόδου είναι η απλότητά της, αφού το μόνο που απαιτείται είναι η επιλογή των καλύτερων χρωμοσωμάτων με βάση ένα προκαθορισμένο ποσοστό και στη συνέχεια τυχαίο ζευγάρωμα. Το μειονέκτημα αυτής της μεθόδου έγκειται στο ότι η γενετική πληροφορία κάποιων αδύναμων χρωμοσωμάτων χάνεται και μπορεί να επανεμφανιστεί μόνον τυχαία μέσω μετάλλαξης. Η μέθοδος αυτή συχνά οδηγεί στο μηεπιθυμητό φαινόμενο της πρόωρης σύγκλισης, δηλαδή την απώλεια χαρακτηριστικών σε πρώιμο στάδιο της εξέλιξης, με αποτέλεσμα τον εγκλωβισμό σε κάποιο τοπικό ακρότατο. Επιλογή ρουλέτας (roulette wheel selecton). Η μέθοδος αυτή κατατάσσεται στις στοχαστικές μεθόδους. Οι γονείς επιλέγονται σύμφωνα με την καταλληλότητά τους. Συγκεκριμένα, όσο καλύτερα είναι τα χρωμοσώματα, τόσο περισσότερες πιθανότητες έχουν να επιλεγούν, όπως εξηγείται στη συνέχεια. Έστω ένας τροχός ρουλέτας, δηλ. ένας κύκλος όπου κάθε χρωμόσωμα του πληθυσμού είναι τοποθετημένο σε έναν τομέα του κύκλου, έτσι ώστε το εμβαδόν του κάθε τομέα να είναι ανάλογο με την τιμή της συνάρτησης καταλληλότητας για το αντίστοιχο χρωμόσωμα. Για παράδειγμα, στο Σχήμα 3.3 δείχνεται ένας πληθυσμός με πέντε χρωμοσώματα, όπου το χρωμόσωμα Α (σκούρο πράσινο που αντιστοιχεί στο 30%) είναι το πιο κατάλληλο από όλα τα υπόλοιπα στον τροχό. Η επιλογή χρωμοσώματος πραγματοποιείται με την τυχαία επιλογή ενός σημείου εντός του κύκλου. Επειδή αυτή η μέθοδος επιλογής είναι στοχαστική, ενδέχεται να επιλεγούν για αναπαραγωγή γονείς με κακή τιμή της συνάρτησης καταλληλότητας. Επιλογή με διαγωνισμό (tournament selecton). Aνήκει στις στοχαστικές μεθόδους. Με βάση τη μέθοδο αυτή ένας πληθυσμός Ν χρωμοσωμάτων επιλέγεται τυχαία από τον αρχικό πληθυσμό και από αυτόν επιλέγεται το χρωμόσωμα με τη μεγαλύτερη τιμή καταλληλότητας. Η διαδικασία συνεχίζεται μέχρι την επιλογή ενός προκαθορισμένου αριθμού γονέων που θα συμμετάσχουν στην αναπαραγωγή. Τοπική επιλογή (local selecton). Η τοπική επιλογή ανήκει στις αιτιοκρατικές μεθόδους. Στηρίζεται στην ύπαρξη μιας συνάρτησης απόστασης μεταξύ των χρωμοσωμάτων. Τελικά, για κάθε χρωμόσωμα ορίζεται μια γειτονιά εντός της οποίας αποκλειστικά επιλέγονται άτομα για διασταύρωση σύμφωνα με ένα προκαθορισμένο κριτήριο. Πιθανολογική καθολική δειγματοληψία (stochastc unversal samplng). Η πιθανολογική καθολική δειγματοληψία ανήκει στις στοχαστικές μεθόδους. Τα χρωμοσώματα του πληθυσμού τοποθετούνται ως 3-7

διαδοχικά ευθύγραμμα τμήματα πάνω σε μία ευθεία γραμμή έτσι ώστε το μήκος κάθε τμήματος να είναι ανάλογο της καταλληλότητας του αντίστοιχου χρωμοσώματος. Σημειώστε ότι αυτή η μέθοδος δε χρησιμοποιεί αυτές καθαυτές τις τιμές της αντικειμενικής συνάρτησης του κάθε χρωμοσώματος, αλλά τις αντίστοιχες κανονικοποιημένες τιμές καταλληλότητας. Συγκεκριμένα, η κάθε τιμή προστίθεται στην προηγούμενη μέχρι το ολικό άθροισμα να είναι ίσο με ένα. Για κάθε τμήμα καταχωρίζουμε τον αύξοντα αριθμό του ως δείκτη. Στη συνέχεια επιλέγονται Ν χρωμοσώματα όπως περιγράφεται στη συνέχεια. Πρώτον, επιλέγεται τυχαία ένα σημείο στο διάστημα [0,1/Ν] και δεύτερον, επιλέγονται Ν διαδοχικά σημεία το καθένα σε απόσταση 1/Ν από το προηγούμενο και καταχωρίζονται οι (Ν) δείκτες των τμημάτων εντός των οποίων κείνται τα Ν επιλεχθέντα διαδοχικά σημεία. Για παράδειγμα, αν θέλουμε να επιλέξουμε 4 χρωμοσώματα/γονείς, η απόσταση μεταξύ των δεικτών θα είναι 1/4=0.25. Τα χρωμοσώματα τα οποία επιλέγονται συμμετέχουν στη διαδικασία της αναπαραγωγής μέσω της εφαρμογής τελεστών, όπως η διασταύρωση, η μετάλλαξη καθώς και ο ελιτισμός, οι οποίοι παρουσιάζονται στην συνέχεια. Σχήμα 3.3 Επιλογή με τροχό ρουλέτας. 3.4.2.4 Διασταύρωση Μετά την επιλογή των γονέων προς αναπαραγωγή νέων χρωμοσωμάτων εφαρμόζεται ο τελεστής της διασταύρωσης. Σκοπός της διασταύρωσης είναι η ανάμειξη γενετικών χαρακτηριστικών (βλ. γονιδίων) των γονέων, ώστε να δημιουργηθεί μία νέα γενεά χρωμοσωμάτων με το συνδυασμό χαρακτηριστικών των γονέων. Σημειώστε ότι η διασταύρωση δεν εφαρμόζεται σε όλα ζεύγη των επιλεγμένων για αναπαραγωγή ατόμων, αλλά γίνεται μια τυχαία επιλογή με πιθανότητα διασταύρωσης P c. Αν η διασταύρωση δεν εφαρμοστεί, τότε οι γόνοι παράγονται απλώς με επανάληψη των γονέων, δηλ. οι γονείς αντιγράφονται στην επόμενη γενεά. Υπάρχουν διάφορες μέθοδοι διασταύρωσης. Κριτήριο για την επιλογή της μεθόδου που θα χρησιμοποιηθεί αποτελεί τόσο το είδος του προβλήματος, όσο και το είδος της εφαρμοζόμενης κωδικοποίησης. Μερικές δημοφιλείς μέθοδοι διασταύρωσης περιγράφονται στη συνέχεια. Διασταύρωση πολλαπλών σημείων (mult-pont crossover). Αρχικά επιλέγεται ένας αριθμός σημείων διασταύρωσης Ν ( 1 N αριθμός χρωμοσωμάτων ) και στη συνέχεια ο κάθε γονέας τεμαχίζεται σε Ν σημεία, όπως φαίνεται στον Πίνακα 3.2. Τελικώς, ανταλλάσσονται αμοιβαία τμήματα των χρωμοσωμάτων των γονέων, τα οποία προέκυψαν από τη διαίρεση των χρωμοσωμάτων τους στα σημεία διασταύρωσης. Η ιδέα πίσω από αυτήν αλλά και πίσω από άλλες μορφές διασταύρωσης είναι ότι τα τμήματα ενός χρωμοσώματος που συμβάλλουν περισσότερο στην απόδοσή του ενδέχεται να μην είναι γειτονικά. Για τον προαναφερθέντα λόγο, ανταλλάσσονται τμήματα των χρωμοσωμάτων με την προσδοκία βελτίωσης της απόδοσης ενός χρωμοσώματος. Υπολογιστικά πειράματα συχνά επαληθεύουν την προσδοκία αυτήν. Διασταύρωση αριθμητική (arthmetc crossover). Η μέθοδος αυτή βασίζεται περισσότερο σε μαθηματικές πράξεις μεταξύ των χρωμοσωμάτων, παρά σε λειτουργίες της φυσικής αναπαραγωγής, και εφαρμόζεται σε δυαδική κωδικοποίηση. Για παράδειγμα, ένας γόνος μπορεί να προκύψει με εφαρμογή λογικών πράξεων (π.χ. AND κ.λπ.) μεταξύ των γονέων, όπως επιδεικνύεται στον Πίνακα 3.2. 3-8

Διασταύρωση oμοιόμορφη (unform crossover). Υπενθυμίζεται ότι η διασταύρωση πολλαπλών σημείων καθορίζει τα σημεία διασταύρωσης ως τις θέσεις όπου το χρωμόσωμα μπορεί να διαιρείται. Η ομοιόμορφη διασταύρωση γενικεύει αυτή την ιδέα και θεωρεί κάθε θέση μέσα στο χρωμόσωμα ως σημείο διασταύρωσης. Επιπλέον, επιλέγεται μια μάσκα διασταύρωσης (mask crossover) ίδιου μήκους με το μήκος των γονέων, ενώ τα ψηφία της μάσκας καθορίζουν το γονέα ο οποίος θα παρέχει στον απόγονο ένα ψηφίο. Στον Πίνακα 3.2 φαίνεται η εφαρμογή της ομοιόμορφης διασταύρωσης χρησιμοποιώντας μια συγκεκριμένη μάσκα. Συγκεκριμένα, για δυφίο 0 της μάσκας το περιεχόμενο των γονέων Α και Β αντιγράφεται στους γόνους Α και Β αντίστοιχα, ενώ για για δυφίο 1 το περιεχόμενο των γονέων Α και Β αντιγράφεται στους γόνους Β και Α αντίστοιχα. Σημειώστε ότι τα δυφία 0 και 1 στη μάσκα επιλέγονται τυχαία με πιθανότητα 0.5 το καθένα (ομοιόμορφη κατανομή). Ένας οποισδήποτε τελεστής διασταύρωσης συμβάλλει σε μια εστιασμένη εξερεύνηση περιοχών στο χώρο αναζήτησης των λύσεων. Διασταύρωση Δύο Σημείων Αριθμητική Διασταύρωση Ομοιόμορφη Διασταύρωση Γονέας 1 1 1 0 0 1 0 1 0 1 1 0 0 1 0 1 1 1 0 1 1 0 0 0 1 Γονέας 2 0 0 1 0 0 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 1 0 Μάσκα - - 0 0 1 1 0 0 1 1 Γόνος 2 1 1 0 0 0 1 1 0 1 1 0 0 1 0 1 1 (AND) 0 0 1 1 1 1 0 1 Γόνος 1 0 0 1 0 1 0 1 1 0 0 0 1 0 1 0 0 (XOR) 1 0 0 1 0 0 1 0 Πίνακας 3.2 Παραδείγματα εφαρμογής των μεθόδων διασταύρωσης. 3.4.2.5 Μετάλλαξη Όπως έχει προαναφερθεί, ο δεύτερος τελεστής που εφαρμόζεται στα χρωμοσώματα του πληθυσμού είναι η μετάλλαξη. Πρόκειται για μία διαδικασία που εμφανίζεται στους ζωντανούς οργανισμούς, με βάση την οποία, υπό ειδικές συνθήκες του περιβάλλοντος, παρατηρείται μία τυχαία αλλαγή σε κάποια χρωμοσώματα. Τελικά, μια μετάλλαξη μπορεί να μεταβάλει κάποιες ιδιότητες του ζωντανού οργανισμού. Στην περίπτωση των ΓΑ η εφαρμογή του τελεστή της μετάλλαξης γίνεται με μία τυχαιότητα όσον αφορά τόσο το χρωμόσωμα, όσο και το γονίδιο στο οποίο θα εφαρμοστεί. Συγκεκριμένα, με βάση μία πιθανότητα μετάλλαξης P m, επιλέγονται τυχαία τα χρωμοσώματα τα οποία θα μεταλλαχτούν. Για παράδεγμα παράγεται ένας τυχαίος αριθμός στο διάστημα [0,1] για κάθε χρωμόσωμα, ο οποίος αν είναι μικρότερος από την πιθανότητα μετάλλαξης P m, τότε και μόνο τότε εφαρμόζεται μετάλλαξη σε αυτό το χρωμόσωμα. Στη συνέχεια, πάλι τυχαία, κάποιο γονίδιο του χρωμοσώματος μπορεί να μεταλλαχθεί, δηλ. να αλλάξει τιμή, π.χ. από 0 σε 1, αν χρησιμοποιείται η δυαδική αναπαράσταση του χρωμοσώματος. Ο Πίνακας 3.3 παρουσιάζει την εφαρμογή του τελεστή μετάλλαξης για τρεις από τις μεθόδους κωδικοποίησης χρωμοσωμάτων που προαναφέρθηκαν. Ένας τελεστής μετάλλαξης διασφαλίζει την ποικιλομορφία του πληθυσμού, αφού είναι ο μόνος μηχανισμός που επιτρέπει τον τυχαίο σχηματισμό χρωμοσωμάτων και επομένως συμβάλλει στη διεύρυνση της εξερεύνησης του χώρου των λύσεων. Αρχικό Χρωμόσωμα Μεταλλαγμένο Χρωμόσωμα Δυαδική Κωδικοποίηση Κωδικοποίηση Μετάθεσης Κωδικοποίηση Τιμών 0 1 0 0 1 0 0 1 1 5 3 7 9 0 12.1 21.2 35.4 56 0 1 0 0 1 1 0 1 1 5 3 8 9 0 12.1 22.3 35.4 56 Πίνακας 3.3 Εφαρμογή του τελεστή μετάλλαξης (το μεταλλαγμένο γονίδιο δίνεται με έντονη γραφή) για τρεις διαφορετικές κωδικοποιήσεις. 3-9

Εκτός από τους προαναφερθέντες τελεστές της διασταύρωσης και της μετάλλαξης δημοφιλής είναι ένας επιπλέον τελεστής, ο ελιτισμός (eltsm), με βάση τον οποίο ένας προκαθορισμένος αριθμός χρωμοσωμάτων που κρίνονται ως τα «πλέον κατάλληλα», επαναλαμβάνονται αυτούσια στο νέο πληθυσμό. Με τον τρόπο αυτό εξασφαλίζεται ότι κάποια «πλέον κατάλληλα», χρωμοσώματα θα συμπεριληφθούν στον νέο πληθυσμό και δε θα εξαφανιστούν ως αποτέλεσμα της εφαρμογής των υπόλοιπων τελεστών. 3.4.2.6 Επανατοποθέτηση Μετά την εφαρμογή των προαναφερθέντων τελεστών παράγονται νέα χρωμοσώματα με σκοπό την επανατοποθέτησή (renserton) τους στον παλαιό πληθυσμό, ώστε να δημιουργηθεί ένας νέος πληθυσμός υποψήφιων λύσεων. Νέα χρωμοσώματα αντικαθιστούν παλαιά χρωμοσώματα στον πληθυσμό διατηρώντας, τυπικά, σταθερό το μέγεθος του πληθυσμού. Με την επανατοποθέτηση των νέων χρωμοσωμάτων και το σχηματισμό του νέου πληθυσμού ολοκληρώνεται μία επανάληψη του ΓΑ που ονομάζεται γενεά και ο αλγόριθμος επαναλαμβάνεται εκ νέου, μέχρι να ικανοποιηθεί ένα από τα ακόλουθα δύο κριτήρια τερματισμού (termnaton crtera): 1) προκαθορισμένος αριθμός γενεών και 2) προκαθορισμένη ακρίβεια βελτιστοποίησης της αντικειμενικής συνάρτησης. 3.5 Βελτιστοποίηση Σμήνους Σωματιδίων Ο αλγόριθμος βελτιστοποίησης σμήνους σωματιδίων (ΒΣΣ) (partcle swarm optmzaton (PSO)) προτάθηκε από τους Eberhart & Kennedy (1995). Ο αλγόριθμος αυτός εξομοιώνει την ομαδική μετακίνηση σμήνους (swarm) ζωντανών οργανισμών, όπως ψάρια, πουλιά, κ.λπ., αποφεύγοντας συγκρούσεις μεταξύ ατόμων στο σμήνος κατά την κίνηση. Ο αλγόριθμος ΒΣΣ, όπως ακριβώς και ένας ΓΑ, υλοποιεί μία επαναληπτική διαδικασία, κατά την οποία ένας πληθυσμός λύσεων κινείται στο χώρο αναζήτησης των λύσεων, εντούτοις ο ΒΣΣ παρουσιάζει σημαντικές διαφορές από το ΓΑ. Συγκεκριμένα, στον αλγόριθμο ΒΣΣ δεν υπάρχουν τελεστές διασταύρωσης ή/και μετάλλαξης, ενώ σε κάθε λύση, η οποία ονομάζεται σωματίδιο (του σμήνους) (partcle (of the swarm)), αντιστοιχίζεται μία ταχύτητα, η οποία αρχικοποιείται τυχαία. Τέλος, ο αλγόριθμος ΒΣΣ απομνημονεύει όχι μόνον την ολικά καλύτερη λύση του πληθυσμού, αλλά και την ατομικά καλύτερη επίδοση κάθε σωματιδίου (του σμήνους) ξεχωριστά. Πλεονέκτημα του αλγορίθμου ΒΣΣ είναι η απλότητά του, η οποία επιτρέπει όχι μόνον τη γρήγορη υλοποίησή του, αλλά και την εκτέλεσή του χωρίς σημαντικές απαιτήσεις σε μνήμη και σε υπολογιστική ισχύ. Εκτεταμένα υπολογιστικά πειράματα έχουν δείξει ότι, τυπικά, τα σωματίδια του αλγορίθμου ΒΣΣ αλληλεπιδρούν πιο αποτελεσματικά από ό,τι τα χρωμοσώματα ενός ΓΑ και τελικά καταλήγουν να προσεγγίζουν καλύτερα τη βέλτιστη λύση του προβλήματος. 3.5.1 Αλγοριθμική Περιγραφή 1 2 3 n Ο αλγόριθμος ΒΣΣ θεωρεί ότι κάθε σωματίδιο του πληθυσμού κατέχει μία θέση x x,x,x,..,x T 1 2 3 n n-διάστατο χώρο των λύσεων και μία αντίστοιχη ταχύτητα u u,u,u,..,u αρχικοποιούνται τυχαία. Δοθείσης της αντικειμενικής συνάρτησης f T στο, οι οποίες x ο αλγόριθμος ΒΣΣ αναζητάει λύσεις κινούμενος στο χώρο αναζήτησης των λύσεων μέσω της προσαρμογής των τροχιών που διαγράφουν τα σωματίδια. Συγκεκριμένα, η κίνηση των σωματιδίων έχει δύο συνιστώσες: μία στοχαστική και μία αιτιοκρατική. Επιπλέον, κάθε σωματίδιο, κατά την κίνησή του, έλκεται τόσο από το (τρέχον) ολικά καλύτερο, όσο και από το ατομικά καλύτερό του, ενώ συγχρόνως υπάρχει και μια τυχαία συνιστώσα της κίνησης. Όταν ένα σωματίδιο, {1,,M} βρεθεί σε θέση x * καλύτερη από οποιαδήποτε άλλη είχε στο παρελθόν, τότε αυτή η θέση κρατείται ως η καλύτερη θέση του σωματιδίου. Ο στόχος του αλγορίθμου είναι η εύρεση του ολικά καλύτερου g * πάνω σε όλα τα ατομικά καλύτερα x * μέχρι να ικανοποιηθεί ένα από τα προαναφερθέντα δύο κριτήρια τερματισμού. Ο ψευδοκώδικας του βασικού αλγoρίθμου ΒΣΣ περιγράφεται στο Σχήμα 3.4. 3-10

Σε κάθε επανάληψη (t) του αλγορίθμου ο υπολογισμός της επόμενης θέσης και της αντίστοιχης ταχύτητας κάθε σωματιδίου υπολογίζεται ως εξής: t+1 t 1 * t 2 * t u ωu αr g - x βr x - x (3.6) t+1 t t+1 x x u (3.7) όπου οι παράμετροι ω,α, β καθορίζουν την συμπεριφορά του αλγορίθμου και επομένως η επιλογή τους διαμορφώνει την τελική απόδοση του αλγορίθμου. Η κατάλληλη επιλογή των παραμέτρων αποτελεί αντικείμενο έρευνας, ενώ μία «κατευθυντήρια» οδηγία είναι η επιλογή παραμέτρων ίδιας τιμής α, β 2 (Yang, 2008). Σημειώστε ότι παρά το γεγονός ότι η ταχύτητα μπορεί να πάρει οποιαδήποτε τιμή, συνήθως η ταχύτητα φράσσεται σε ένα διάστημα [0,u max ], όπου u max είναι ένα προκαθορισμένο άνω όριο. Επίσης, οι r, r 01, λαμβάνουν τυχαίες τιμές ώστε να διατηρηθεί η ποικιλομορφία του πληθυσμού. παράμετροι 1 2 Στην βιβλιογραφία έχουν προταθεί διάφορες παραλλαγές του βασικού αλγορίθμου ΒΣΣ σε συγκεκριμένες εφαρμογές με σκοπό τόσο να επιταχυνθεί η σύγκλιση όσο και να βελτιωθεί η απόδοσή του (Parsopoulos &Vrahats, 2002 del Valle κ.ά., 2008). Έναρξη Τέλος Καθορισμός της αντικειμενικής συνάρτησης f x Αρχικοποίηση των θέσεων x και ταχυτήτων t=0 Αρχικό καλύτερο f = mn f x,..., f x mn 1 M u των Μ σωματιδίων Επανέλαβε μέχρι να ικανοποιηθεί ένα από τα κριτήρια τερματισμού t = t +1 (αύξηση του μετρητή επανάληψης) Για κάθε σωματίδιο και κάθε διάσταση εκτέλεσε τα παρακάτω r, r 01, Παρήγαγε τυχαίες τιμές 1 2 Υπολογισμός της νέας ταχύτητας σύμφωνα με την Εξ.(3.6) Υπολογισμός της νέας θέσης σύμφωνα με την Εξ.(3.7) Υπολογισμός της αντικειμενικής συνάρτησης f(x ), =1,,M t+1 Υπολ/σμός του τρέχοντος καλύτερου f = mn f x,..., f x τέλος επαναλήψεων mn 1 M Εύρεση του ατομικά καλύτερου x * και του ολικά καλύτερου g * τερματισμός (ικανοποίηση ενός από τα κριτήρια τερματισμού) Τελικά αποτελέσματα x * και g * Σχήμα 3.4 Ψευδοκώδικας του βασικού αλγορίθμου ΒΣΣ. 3.6 Εναλλακτικοί Αλγόριθμοι Εξελικτικού Υπολογισμού Στις προηγούμενες ενότητες παρουσιάστηκαν οι βασικές αρχές λειτουργίας δύο δημοφιλών αλγόριθμων εξελικτικού υπολογισμού που περιλαμβάνουν τους ΓΑ και τον αλγόριθμο ΒΣΣ. Ωστόσο, αξίζει να επισημανθεί ότι οι δύο αυτοί αλγόριθμοι αποτελούν ένα μικρό δείγμα εναλλακτικών αλγορίθμων εξελικτικού υπολογισμού από τους πολλούς που έχουν προταθεί στη βιβλιογραφία (Yang, 2008). Σημειώστε ότι όλοι οι αλγόριθμοι εξελικτικού υπολογισμού είναι ευρετικοί (heurstc) με την έννοια ότι εφαρμόζουν μία πειραματική διαδικασία αναζήτησης δοκιμή-και-σφάλμα (tral-and-error). Ανάμεσα στο πλήθος των ευρετικών αλγορίθμων βελτιστοποίησης υπάρχουν τουλάχιστον δύο οι οποίοι παρουσιάζουν κοινά στοιχεία με αυτά των Γενετικών Αλγορίθμων. Πρόκειται για τον αλγόριθμο της στρατηγικής εξέλιξης (evoluton strategy) (Rechenberg, 1971) που είναι χρονολογικά προγενέστερος των ΓΑ και τον αλγόριθμο της διαφορικής εξέλιξης (dfferental evoluton) (Storn & Prce, 1997) που συχνά 3-11

έχει βελτιωμένη απόδοση συγκριτικά με τους ΓΑ. Και οι δύο αυτοί αλγόριθμοι έχουν χρησιμοποιηθεί ευρύτατα για τη βελτιστοποίηση πολύπλοκων αντικειμενικών συναρτήσεων. Δύο άλλοι ενδιαφέροντες αλγόριθμοι βελτιστοποίησης περιλαμβάνουν τη βελτιστοποίηση αποικίας μυρμηγκιών (ant colony) (Colorn κ.ά., 1991) και την τεχνητή αποικία μελισσών (artfcal bee colony) (Karaboga, 2005). Αυτοί ανήκουν σε μία ευρύτερη κατηγορία αλγορίθμων γνωστών με το όνομα νοημοσύνη σμήνους (swarm ntellgence) και εξομοιώνουν τη συμπεριφορά σμηνών μυρμηγκιών και μελισσών για την εύρεση τροφής αντίστοιχα. Αρκετά νεότερος από τους προαναφερθέντες δύο αλγορίθμους είναι ο αλγόριθμος βαρυτικής αναζήτησης (gravtatonal search) (Rashed κ.ά., 2009), ο οποίος εξομοιώνει την έλξη μαζών σε βαρυτικό πεδίο και συνήθως έχει υψηλή απόδοση. Επιπλέον αλγόριθμοι βελτιστοποίησης οι οποίοι προτάθηκαν στη βιβλιογραφία περιλαμβάνουν τον αλγόριθμο της πυγολαμπίδας (frefly) (Yang, 2008), τη μέθοδο αναζήτησης του κούκου (cuckoo search method) (Yang & Deb, 2009), τον αλγόριθμο της νυχτερίδας (bat) (Yang, 2010) και τη βελτιστοποίηση βιογεωγραφίας (bogeography-based optmzaton) (Smon, 2008). Οι προαναφερθέντες αλγόριθμοι αποτελούν ένα (μικρό) υποσύνολο αλγόριθμων βελτιστοποίησης εξελικτικού υπολογισμού ή/και εμπνευσμένων από τη φύση που συνεχίζουν να προτείνονται στην βιβλιογραφία. Ερωτήσεις Κατανόησης και Ασκήσεις 3.1) Δοθέντων δύο χρωμοσωμάτων (γονέων) ενός γενετικού αλγορίθμου σε δυαδική αναπαράσταση 00010110 και 00100101 να βρεθούν τα χρωμοσώματα (απόγονοι) που παράγονται με την εφαρμογή της διασταύρωσης ενός σημείου της επιλογής σας. 3.2) Να υπολογιστεί το πλήθος των δυφίων που θα υποστούν μετάλλαξη στα χρωμοσώματα ενός γενετικού αλγορίθμου δυαδικής αναπαράστασης μήκους 10, όταν η πιθανότητα μετάλλαξης είναι P m = 0.1. 3.3) Έστω ένα χρωμόσωμα αποτελούμενο από 3 μεταβλητές, κάθε μία από τις οποίες αναπαρίσταται με x 0,10, = 1,2,3 να 4 δυφία. Θεωρώντας ότι και οι 3 μεταβλητές έχουν το ίδιο πεδίο τιμών βρεθούν οι πραγματικές τιμές των μεταβλητών, όταν το χρωμόσωμα έχει τη μορφή 010100110010. 3.4) Έστω ένα σωματίδιο, το οποίο ανήκει στον πληθυσμό ενός αλγορίθμου ΒΣΣ, έχει θέση x T T 12.3,2.3,3.1 και ταχύτητα u 3,7.1,2.8. Για τιμές των παραμέτρων ω,α,β 1, 2, 2 να υπολογιστεί η θέση και η ταχύτητα του σωματιδίου τη χρονική στιγμή (t+1), εάν είναι γνωστό ότι η ολικά καλύτερη λύση συμπίπτει με την ατομικά καλύτερη θέση του σωματιδίου και είναι ίση με x * T 10,3,4. 3.5) Ποια η μορφή της συνάρτησης αντικειμενικότητας στην περίπτωση εφαρμογής ενός γενετικού αλγορίθμου στην εκπαίδευση ενός νευρωνικού δικτύου perceptron με ένα κρυφό στρώμα, δέκα εισόδους, τρεις εξόδους και Μ σύνολα εκπαίδευσης; 3.6) Να χρησιμοποιηθεί ο γενετικός αλγόριθμος του Global Optmzaton Toolbox του MATLAB για την ελαχιστοποίηση της παρακάτω συνάρτησης Schwefel τριών μεταβλητών (p=3). Ποια είναι η * x 0,0,0,0,0, f x * = 0 ; απόκλιση από τη θεωρητικά ελάχιστη τιμή 2 p f x = x j, x 65. 536, 65. 536 =1 j1 3.7) Να χρησιμοποιηθεί ο γενετικός αλγόριθμος του Global Optmzaton Toolbox του MATLAB για την ελαχιστοποίηση της παρακάτω πολυτροπικής συνάρτησης Rastrgn πέντε μεταβλητών (p=5). * x 0,0,0,0,0, f x * = 0 ; Ποια είναι η απόκλιση από τη θεωρητικά ελάχιστη τιμή, 2. 048, 2. 048 p 2 =1 x f = 10p + x - 10cos 2πx x 3-12

3.8) Να αναπτυχθεί κώδικας σε περιβάλλον MATLAB, ο οποίος να υλοποιεί τον τελεστή της διασταύρωσης πολλαπλών σημείων για χρωμοσώματα δυαδικής αναπαράστασης. 3.9) Να αναπτυχθεί κώδικας σε περιβάλλον MATLAB, ο οποίος να υλοποιεί το βασικό αλγόριθμο ΒΣΣ. 3.10) Να αναπτυχθεί κώδικας σε περιβάλλον MATLAB, ο οποίος να υλοποιεί την εκπαίδευση ενός perceptron νευρωνικού δικτύου με τη χρήση γενετικού αλγορίθμου. Σημειώνεται ότι το εκπαιδευμένο νευρωνικό δίκτυο θα πρέπει να είναι ικανό να μοντελοποιεί την τριγωνομετρική συνάρτηση του ημιτόνου (sn(x)). Βιβλιογραφία Bertsekas, D.P., Nedć, A. & Ozdaglar, A.E. (2003). Convex Analyss and Optmzaton. Belmont, MA: Athena Scentfc. Boyd, S. & Vandenberghe, L. (2004). Convex Optmzaton. UK: Cambrdge Unversty Press. Coleman, T.F. & L, Y. (1994). On the convergence of nteror-reflectve Newton methods for nonlnear mnmzaton subject to bounds. Mathematcal Programmng, 67(1-3), 189-224. Coley, D.A. (1999). An Introducton on Genetc Algorthms for Scentsts and Engneers. Sngapore: World Scentfc Publshng. Colorn, A., Dorgo, M. & Manezzo, V. (1991). Dstrbuted Optmzaton by Ant Colones. Actes de la premère conférence européenne sur la ve artfcelle, Pars, France, Elsever Publshng, 134-142. Darwn, C. (2014) On the Orgn of Speces by Means of Natural Selecton. Tustn, CA: Xst Publshng. Deb, K. (2001). Mult-Objectve Optmzaton usng Evolutonary Algorthms. UK: John Wley & Sons, 2001. Eberhart, R.C. & Kennedy, J. (1995). A new optmzer usng partcle swarm theory. In Proceedngs of the 6th Internatonal Symposum on Mcro Machne and Human Scence, 39-43, Nagoya - Japan. Holland, J.H. (1992). Adaptaton n Natural and Artfcal Systems. USA: MIT Press. Karaboga, D. (2005). An Idea Based On Honey Bee Swarm for Numercal Optmzaton. Techncal Report- TR06, Ercyes Unversty, Engneerng Faculty, Computer Engneerng Department. Mtchell, M. (1998). An Introducton to Genetc Algorthms. USA: MIT Press. Møller, M.F. (1993). A scaled conjugate gradent algorthm for fast supervsed learnng. Neural Networks, 6(4), 525-533. Parsopoulos, K.E. & Vrahats, M.N. (2002). Recent approaches to global optmzaton problems through Partcle Swarm Optmzaton. Natural Computng, 1(2-3), 235-306. Rashed, E., Nezamabad-pour, H. & Saryazd, S. (2009). GSA: a gravtatonal search algorthm. Informaton Scences, 179(13), 2232-2248. Rechenberg, I. (1971). Evolutonsstratege Optmerung technscher Systeme nach Prnzpen der bologschen Evoluton. Phd Thess. Smon, D. (2008). Bogeography-based optmzaton. IEEE Transactons on Evolutonary Computaton, 12, 702-713. Storn, R., & Prce, K. (1997). Dfferental evoluton - a smple and effcent heurstc for global optmzaton over contnuous spaces. Journal of Global Optmzaton, 11, 341-359. Toffolo, A. & Benn, E. (2003). Genetc dversty as an objectve n mult-objectve evolutonary algorthms. Evolutonary Computaton, 11(2), 151-167. del Valle, Y., Venayagamoorthy, G.K., Mohaghegh, S., Hernandez, J.-C. & Harley, R.G. (2008). Partcle Swarm Optmzaton: basc concepts, varants and applcatons n power systems. IEEE Transactons on Evolutonary Computaton, 12(2), 171-195. Yang, X.S. (2008). Nature-Inspred Metaheurstc Algorthms. Lunver Press. Yang, X.S. (2010). A new metaheurstc Bat-nspred algorthm. In: J. R. Gonzalez et al., eds., Nature Inspred Cooperatve Strateges for Optmzaton (Studes n Computatonal Intellgence 284: 65-74). Berln, Germany: Sprnger. Yang, X.S. & Deb, S. (2009). Cuckoo search va Lévy flghts. In World Congress on Nature & Bologcally Inspred Computng (NaBIC, 2009), 210-214. 3-13