Υπολογιστική Νοημοσύνη Σημερινή Διάλεξη Περιεχόμενο μαθήματος Διαδικαστικά Εργασίες Μαθήματος Εισαγωγή στο αντικείμενο του μαθήματος Εφαρμογές 1
Περιεχόμενο μαθήματος οµή και Χαρακτηριστικά ενός Γενετικού Aλγόριθµου Aνάλυση των Γενετικών Aλγόριθµων Θεωρητική θεµελίωση των Γενετικών Aλγορίθµων Εξελικτικός Προγραµµατισµός οµή Νευρωνικού ικτύου Νευρωνικά δίκτυα ενός και πολλαπλών επιπέδων Αλγόριθµος Back Propagation Νευρωνικά ίκτυα Hopfield Αλγόριθµος Kohonen Συνδυασµός ΓA και Tεχνητών Ν Μάθημα 3 ώρες / βδομάδα: Τετάρτη 12.00 15.00 αίθουσα ΔΗΜΗΤΡΑ 2
Βιβλία Γενετικοί Αλγόριθμοι και Εφαρμογές, Σ.Λυκοθανάσης, εκδόσεις ΕΑΠ, 2001. Νευρωνικά Δίκτυα και Εφαρμογές, Π.Αργυράκης, εκδόσεις ΕΑΠ, 2001. Βαθμολογία Η τελική βαθμολογία (ΤΒ) του μαθήματος θα είναι: ΤΒ=0,70*ΒΓ+0,30*ΒΕ ήτβ=βγ όπου ΒΓ είναι ο βαθμός των εξετάσεων καιβεομέσοςόροςτων εργασιών 3
Εργασίες Θα υπάρξουν 2 προαιρετικές εργασίες Οι εργασίες θα είναι ΑΥΣΤΗΡΩΣ ατοµικές Κάθεεργασίαθαέχειάριστατο10 Σχετικά Sites Νευρωνικά Δίκτυα http://www xdiv.lanl.gov/xcm/neural/neural_announcements.html http://www.shef.ac.uk/psychology/gurney/notes/contents.html http://www.geocities.com/capecanaveral/lab/3765/neural.html Γενετικοί Αλγόριθμοι http://garage.cps.msu.edu/ http://cs.gmu.edu/~eclab/gag.html http://www.cs.ucl.ac.uk/intelligent_systems/genetic_programming.ht ml 4
Βιβλιογραφία Νευρωνικά ίκτυα 1. Self-organization and Associative Memory by Kohonen 2. An Introduction to Neural Computing. Chapman and Hall by Aleksander, I. and Morton, H. 3. Neural Computing, an Introduction by Beale, R. and Jackson, T. Βιβλιογραφία Γενετικοί Αλγόριθµοι 1. An Introduction to Genetic Algorithms (Complex Adaptive Systems) by Melanie Mitchell 2. Foundations of Genetic Programming by William B. Langdon, Riccardo Poli 3. Genetic Algorithms in Search, Optimization, and Machine Learning by David E. Goldberg 4. An Introduction to Genetic Algorithms for Scientists and Engineers by David A. Coley 5
Υπολογιστική Νοημοσύνη Είναιτοσύνολοτωναλγόριθμωνπουβασίζονται σε φυσικές διαδικασίες Αναπτύχθηκαν κατά τη διάρκεια των τριών τελευταίων δεκαετιών Απόκτησε πρακτικό ενδιαφέρον με την εμφάνιση των παράλληλων ηλεκτρονικών υπολογιστών Υπολογιστική Νοημοσύνη Στους αλγορίθμους αυτής της κατηγορίας περιλαμβάνονται: τα νευρωνικά δίκτυα οι γενετικοί αλγόριθμοι ο εξελικτικός προγραμματισμός οι εξελικτικές στρατηγικές οι μέθοδοι τοπικής αναζήτησης τα συστήματα ταξινόμησης 6
Νευρωνικά Δίκτυα (Ν.Δ) Τα Νευρωνικά Δίκτυα (Ν.Δ.) εκπαιδεύονται με τη βοήθεια παραδειγμάτων, ώστε να μαθαίνουν το περιβάλλον τους. Ένα παράδειγμα περιλαμβάνει την είσοδο και την επιθυμητή έξοδο σε αυτή. Το σύνολο των παραδειγμάτων αποτελεί το εκπαιδευτικό σύνολο. Για την εκπαίδευση χρησιμοποιούνται κανόνες, οιοποίοιβασίζονταιστην ελαχιστοποίηση του λάθους στην έξοδο του δικτύου. Υπάρχουν πολλές κατηγορίες Ν.., ανάλογα με την αρχιτεκτονική τους και τον τρόπο εκπαίδευσής τους. Νευρωνικά Δίκτυα (Ν.Δ) Τα Τεχνητά Νευρωνικά ίκτυα (ΤΝ ) ή απλά Νευρωνικά ίκτυα (Ν..) αποτελούν µια προσπάθεια προσέγγισης της λειτουργίας του ανθρώπινου εγκεφάλου από µια µηχανή. Έχουν την ικανότητα να εκτελούν υπολογισµούς µε µαζικό παράλληλο τρόπο. Η αρχιτεκτονική τους βασίζεται στην αρχιτεκτονική των Βιολογικών Νευρωνικών ικτύων. 7
Νευρωνικά Δίκτυα νευρώνας Τα ΤΝ είναι µια συλλογή από νευρώνες (Processing Units-PUs) που συνδέονται µεταξύ τους Κάθε νευρώνας έχει πολλές εισόδους αλλά µόνο µία έξοδο η οποία µετησειράτηςµπορεί να αποτελέσει είσοδο για άλλους νευρώνες. H συνδέσεις µεταξύ των νευρώνων διαφέρουν ως προς τη σηµαντικότητα τους, η οποία και προσδιορίζεται απότοσυντελεστήβάρους(σύναψη). Η επεξεργασία κάθε νευρώνα καθορίζεται από τη συνάρτηση µεταφοράς, η οποία καθορίζει την κάθε έξοδο σε σχέση µε τις εισόδους και τους συντελεστές βάρους. Νευρωνικό Δίκτυο Επίπεδο εισόδου Κρυμμένα επίπεδα Επίπεδο εξοδου 8
Νευρωνικά Δίκτυα Εκπαίδευση Γιαναχρησιµοποιηθεί ένα ΤΝ πρέπει πρώταναεκπαιδευτείγιαναµάθει Η µάθηση συνίσταται στον προσδιορισµό των κατάλληλων συντελεστών βάρους Πραγµατοποιείται µετηβοήθεια αλγορίθµων που είναι γνωστοί ως κανόνες µάθησης ή αλγόριθµοι εκπαίδευσης Με αυτόν τον τρόπο τα Ν.. µαθαίνουν το περιβάλλον τους, δηλαδή το φυσικό µοντέλο που παρέχει τα δεδοµένα Γενετικοί Αλγόριθμοι Συµπεριλαµβάνουν συστήµατα επίλυσης προβληµάτων βασισµένων στις αρχές της Γενετικής Εξέλιξης και της Κληρονοµικότητας Τα συστήµατααυτάδιατηρούνέναπληθυσµό κωδικοποιηµένων πιθανών λύσεων και εφαρµόζουν σε αυτό διαδικασίες επιλογής του καλύτερου και γενετικούς τελεστές. Οι τελεστές αυτοί αντιγράφουν τον τρόπο µε τον οποίο αναπαράγονται και µεταλλάσσονται τα χρωµοσώµατα των κυττάρων των ζωντανών οργανισµών. 9
Γενετικοί Αλγόριθμοι Τα συστήµατα ΓΑ δηµιουργούν συνεχώς νέους πληθυσµούς πιθανώνλύσεωνχρησιµοποιώντας, κοµµάτια από την προηγουµένη γενιά (παλιός πληθυσµός), και την καινούρια Πειράµατα έχουν δείξει ότι µια "φυσική" αναπαράσταση των πιθανών λύσεων για ένα δεδοµένο πρόβληµα καιτην εφαρµογή σε αυτή µιας οικογένειας γενετικών τελεστών, αποτελεί πολύ χρήσιµοεργαλείοστηνπροσέγγισηςτων πραγµατικών λύσεων σε µια πολύ µεγάλη ποικιλία προβληµάτων και εφαρµογών. Αυτό το γεγονός µετατρέπει αυτή την προσέγγιση "φυσικού µοντέλου" σε µια πολλά υποσχόµενη κατεύθυνση όσον αφορά την επίλυση προβληµάτων γενικότερα. Γενετικοί Αλγόριθμοι χρωμόσωμα γονίδια επιλογή διασταύρωση μετάλλαξη πληθυσμός ν γενιάς πληθυσμός ν+1 γενιάς 10
Μέθοδοι Αναζήτησης και Βελτιστοποίησης Οι µέθοδοι που παρουσίασαν αξιόλογα αποτελέσµατα, όσον αφορά την εφαρµογή τους σε υπολογιστικές µηχανές και κυριάρχησαν για πολλά χρόνια είναι οι εξής: Μέθοδοι βασισµένες στο µαθηµατικό λογισµό Απαριθµητικές ή τυχαίες µέθοδοι Μέθοδοι επαναληπτικής αναζήτησης Προσοµοιωµένη Ανόπτηση υναµικός προγραµµατισµός Ευρετικές µέθοδοι Μέθοδοι βασισμένες στο μαθηματικό λογισμό Χωρίζονται σε δύο βασικές κατηγορίες: τις έµµεσες και τις άµεσες. Οι έµµεσες ασχολούνται µε την εύρεση τοπικών ακρότατων επιλύνοντας συνήθως ένα σύνολο µηγραµµικών συναρτήσεων. Οι άµεσες από την πλευρά τους, ψάχνουν για τοπικά ακρότατα κάνοντας µικρά άλµατα στη συνάρτηση (hill climbing). Το βασικότερο µειονέκτηµα τους είναι ότι εµφανίζουν τοπικότητα στην εµβέλεια. 11
Απαριθμητικές ή τυχαίες μέθοδοι Μέσα σε ένα πεπερασµένο (ή άπειρα διακριτό) χώρο αναζήτησης, αναζητούνται κάποια βέλτιστα σηµεία µε ψάξιµο σεέναπροςένασηµείο. Η αποδοτικότητα είναι πολύ χαµηλή. Σχεδόν ποτέ δεν χρησιµοποιούνται µόνες τους, αλλά σε συνδυασµό µε άλλες αποδοτικότερες µεθόδους. Μέθοδοι επαναληπτικής αναζήτησης Πρόκειται για ένα παραγωγικό συνδυασµό των µεθόδων των δύο προηγουµένων κατηγοριών. Μόλις το hill climbing εντοπίσει µια κορυφή (τοπικό µέγιστο ή ελάχιστο), επιλέγεται τυχαία ένα νέο σηµείο και αρχίζει ξανά η ίδια διαδικασία για τον εντοπισµό µιαςνέαςκορυφής. Αυτό γίνεται αρκετές φορές κρατώντας πάντα την καλύτερη τιµή που έχει βρεθεί. Η τεχνική αυτή έχει το πλεονέκτηµα της απλότητας, δεν υπάρχει περίπτωση παγίδευσης, αλλά όταν τα τοπικά µέγιστα είναι πολλά η απόδοσή της πέφτει σηµαντικά. 12
υναμικός προγραμματισμός Αποτελεί προγραµµατιστική τεχνική που βρίσκει εφαρµογή σε περιορισµένη περιοχή προβληµάτων. Χρησιµοποιείται κυρίως για τη βελτιστοποίηση της λύσης ενός προβλήµατος πολλαπλών φάσεων, για κάθε µία από τις οποίες είναι διαθέσιµος ένας αριθµός εναλλακτικών αποφάσεων. εν αποτελεί ισχυρό εργαλείο βελτιστοποίησης λόγω της υπερβολικής εξειδίκευσης για µικρό εύρος προβληµάτων. Ευρετικές μέθοδοι Ευρετική ονοµάζεται κάθε µηαλγοριθµική µέθοδος επίλυσης προβληµάτων, στην οποία η πορεία προς ένα τελικό αποδεκτό αποτέλεσµα στηρίζεται σε µια σειρά προσεγγιστικών αποτελεσµάτων. Ανκαιοιευρετικέςµέθοδοι δίνουν απλές και ικανοποιητικές λύσεις σε µερικά προβλήµατα, τίποτα δενεγγυάταιότιαυτέςοιλύσειςείναιοικαλύτερες δυνατές. Συνήθωςδίνουνπροσεγγίσειςτωνβέλτιστωνλύσεωνκαι κάποιες φορές προτιµούνται επειδή δίνουν αποδεκτές απαντήσεις σε µικρό χρόνο. Συνεπώς δεν µπορούν να αποτελέσουν κύριο εργαλείο βελτιστοποίησης. 13
Συμπεράσματα Το συµπέρασµα που προκύπτει είναι πως οι µέθοδοι αυτές δεν έχουν την ισχύ για να αντεπεξέλθουν σε µεγάλο αριθµόπροβληµάτων. εν είναι άχρηστες, αντιθέτως, έχουν δώσει λύσεις σε πολλές περιπτώσεις µέχρι σήµερα. Καθώς, όµως, παρουσιάζονται ολοένα και δυσκολότερα προβλήµατα, τόσο πιοεπιτακτικήγίνεταιηανάγκηγια εύρεση νέων µεθόδων Εφαρμογές Νευρωνικών Δικτύων Bιολογία Καλύτερη κατανόηση της λειτουργίας του εγκεφάλου Μοντέλα για την όραση Επιχειρήσεις Εκτίμηση ύπαρξης κοιτασμάτων πετρελαίου σε γεωλογικά πετρώματα Για την επιλογή του κατάλληλου προσωπικού σε σημαντικές θέσεις 14
Εφαρμογές Νευρωνικών Δικτύων Ιατρική Ανάγνωση και ανάλυση των ακτίνων Χ Κατανόηση των επιληπτικών κρίσεων Παρακολούθηση εγχείρησης Προβλέψεις για αντιδράσεις οργανισμών στην λήψη φαρμάκων ιάγνωση από τα συμπτώματα Ανάλυση ομιλίας σε ακουστικά βαρηκοίας κωφών ατόμων Εφαρμογές Νευρωνικών Δικτύων Στρατιωτική τέχνη Αναγνώριση και παρακολούθηση στόχων Κωδικοποίηση σημάτων ραντάρ ημιουργία «έξυπνων» όπλων Για κατόπτευση Περιβάλλον Πρόβλεψη καιρού Ανάλυση τάσεων και παρατηρήσεων 15
Εφαρμογές Νευρωνικών Δικτύων Χρηµατοοικονοµικά Ανάλυση επικινδυνότητας δανείων Ανάγνωση χειρόγραφων κειµένων Αξιολόγηση επενδύσεων και ανάλυση χαρτοφυλακίων Αναγνώριση πλαστογραφιών Βιοµηχανία Αυτοµατικοποίηση ροµπότ και συστηµάτων ελέγχου Επιλογή ανταλλακτικών κατά την συναρµολόγηση Έλεγχος στην γραµµή παραγωγής Επιθεώρηση της ποιότητας κατα την κατασκευή Εφαρμογές Γενετικών Αλγορίθμων Μηχανικού και Μηχανολογικού Σχεδιασμού ο σχεδιασμός κινητήρων αεροπλάνων κατασκευή γεφυρών σχεδιασμός αγωγών αερίων Ρομποτική παραγωγή ρομποτικής κίνησης 16
Εφαρμογές Γενετικών Αλγορίθμων Οικονομία Αποφάσεις πωλήσεων Αποφάσεις αγορών σε χρηματιστηριακές αγορές Προγνώσεις έγκρισης πιστώσεων Ανάλυση επενδύσεων. Πολιτική μηχανικοί σύστημα σχεδιασμού χαλύβδινων υποστηριγμάτων σκεπών Παράδειγμα Γενετικών Αλγορίθμων 17