Υπολογιστική Νοηµοσύνη Σηµερινό Μάθηµα Η θεωρία της Εξέλιξης των Ειδών οµή Γενετικού Αλγόριθµου Κύρια χαρακτηριστικά ενός Γενετικού Αλγορίθµου (ΓΑ) Γενετική ιαδικασία 1
Η θεωρία της Εξέλιξης των Ειδών Σκοπός της θεωρίας είναι να δώσει µια εξήγηση για: το φαινόµενο της ζωής την προέλευσή της τις βασικές λειτουργίες της Η θεωρία της Εξέλιξης των Ειδών εν υπάρχει αντικειµενική βάση διαχωρισµού των ζωντανών οργανισµών σε ανώτερους και κατώτερους Σε κάθε βιολογικό είδος, µερικά άτοµα αφήνουν περισσότερους απογόνους σε σύγκριση µεταυπόλοιπακαιέτσιτα κληροδοτούµενα χαρακτηριστικά των αναπαραγωγικά επιτυχηµένων ατόµων γίνονται περισσότερα στην επόµενη γενιά. 2
Η θεωρία της Εξέλιξης των Ειδών Οι δυσκολίες, τα εµπόδια και οι αντιξοότητες που παρουσιάζονται κατά τη διάρκεια της ζωής των οργανισµών καθορίζουν ποιοι από αυτούς θα κατορθώσουν να ζήσουν και να πολλαπλασιαστούν. Με την αλλαγή του περιβάλλοντος και των συνθηκών διαβίωσης, αλλάζουν τα χαρακτηριστικά των οργανισµών ώστε να εξασφαλίσουν την επιβίωσής τους. Η θεωρία της Εξέλιξης των Ειδών Αλλαγή στα χαρακτηριστικά των ατόµων σηµαίνει αλλαγή στα χρωµοσώµατα τους (chromosomes) Τα χρωµοσώµατα αποτελούνται από γονίδια Η γενετική πληροφορία που είναι κωδικοποιηµένη στα γονίδια ονοµάζεται γονότυπος (genotype) Ηδηµιουργία ενός νέου οργανισµού περιλαµβάνει την αποκωδικοποίηση των χρωµοσωµάτων Το σύνολο των «ορατών» χαρακτηριστικών του συνιστούν το φαινότυπο (phenotype) 3
Η θεωρία της Εξέλιξης των Ειδών Η εξέλιξη συµπεριλαµβάνει τις λειτουργίες της αναπαραγωγής (reproduction) και της µετάλλαξης (mutation) Μετάλλαξη είναι η αλλαγή της δοµής των χρωµοσωµάτων µετυχαίοτρόπο Η µετάλλαξη έχει ως αποτέλεσµατην αλλαγή σε κάποιο χαρακτηριστικό Η µετάλλαξη προκαλεί βελτιώσεις και λάθη που αποτελούν σηµαντικό παράγοντα για την εξέλιξη της ζωής Η θεωρία της Εξέλιξης των Ειδών Προϊόν της αναπαραγωγής είναι ένας νέος οργανισµός µεχρωµοσώµατα που αποτελούνται από γονίδια προερχόµενα τα µισά από τον πατέρα και τα µισά από τη µητέρα Το γονίδιο που τελικά καθορίζει το χαρακτηριστικό λέγεται κυρίαρχο ή επικρατές και το άλλο υπολειπόµενο 4
Η θεωρία της Εξέλιξης των Ειδών Γονίδια που διεκδικούν την ίδια θέση σε ένα χρωµόσωµα λέγονται αλληλόµορφα Ο µηχανισµός της φυσικής επιλογής φάνηκε ελκυστικός στον John Holland, πρωτοπόρο των Γενετικών Αλγορίθµων, στις αρχές της δεκαετίας του '70 ΑποτέλεσµατηςεργασίαςτουΗolland ήταν οι Γενετικοί Αλγόριθµοι, µια καινούργια τεχνική αναζήτησης και βελτιστοποίησης οµή Γενετικού Αλγόριθµου Στους ΓA αναφερόµαστε σχεδόν πάντα σε άτοµα µεέναµόνο χρωµόσωµα Τα χρωµοσώµατα αποτελούνται από διατεταγµένα γονίδια Τα γονίδια που επηρεάζουν συγκεκριµένα χαρακτηριστικά του ατόµου βρίσκονται σε συγκεκριµένες θέσεις που καλούνται τόποι (loci) Οι πιθανές καταστάσεις του γονιδίου καλούνται αλληλόµορφα Το µεταφρασµένο περιεχόµενο καλείται φαινότυπος 5
οµή Γενετικού Αλγόριθµου Μιαδιαδικασίαεξέλιξηςπουεφαρµόζεται πάνω σε έναν πληθυσµόχρωµοσωµάτων αντιστοιχεί σε ένα εκτενές ψάξιµο µέσα σε ένα χώρο από πιθανές λύσεις Απαραίτητη προϋπόθεση αποτελεί η εξισορρόπηση της διατήρησης των καλύτερων λύσεων και της όσο το δυνατόν καλύτερης εξερεύνησης όλου του διαστήµατος οµή Γενετικού Αλγόριθµου Υπάρχουν περιπτώσεις που οι ΓA αποτυγχάνουν να βρουν µια βέλτιστη λύση σε ένα συγκεκριµένοχώροψαξίµατος Οι ΓA πρέπει να αντιµετωπίζονται ως µια ιδεατή προσοµοίωση µιας φυσικής διαδικασίας, τέτοια ώστε να ενσωµατώνει τους στόχους και τους σκοπούς 6
οµή Γενετικού Αλγόριθµου ιαφέρουν από τις τυχαίες µεθόδους αναζήτησης και βελτιστοποίησης, αφού είναι σε θέση να συνδυάζουν στοιχεία και από άµεσες και από στοχαστικές τεχνικές αναζήτησης Οπληθυσµός υφίσταται µια προσοµοιωµένη γενετική εξέλιξη όπου οι «καλές» λύσεις αναπαράγονται, ενώ οι «κακές» αφαιρούνται Η αξιολόγηση των διαφόρων λύσεων γίνεται µε την βοήθεια µιας συνάρτηση αξιολόγησης ή συνάρτηση καταλληλότητας οµή Γενετικού Αλγόριθµου Κατά την διάρκεια της επαναληπτικής εκτέλεσης t, ογa διατηρεί ένα πληθυσµόαπό πιθανές λύσεις: t () t = { x x } P,..., Κάθε λύση αξιολογείται και δίνει ένα µέτρο της καταλληλότητας της ηµιουργείται ένας νέος πληθυσµός από την επιλογή των πιο κατάλληλων στοιχείων Μερικά µέλη υφίστανται µετατροπές µε µετάλλαξη (mutation) ή διασταύρωση (crossover) σχηµατίζοντας νέες πιθανές λύσεις 1 t n 7
οµή Γενετικού Αλγόριθµου Η διασταύρωση συνδυάζει τα στοιχεία δύο χρωµοσωµάτων γονέων για να δηµιουργήσει δύο νέους απογόνους ανταλλάσσοντας κοµµάτια Η διασταύρωση εξυπηρετεί την ανταλλαγή πληροφοριών µεταξύ διαφορετικών πιθανών λύσεων Η µετάλλαξη αλλάζει αυθαίρετα ένα ή περισσότερα γονίδια ενός συγκεκριµένου χρωµοσώµατος. Η µετάλλαξη εξυπηρετεί την εισαγωγή νέων πιθανών λύσεων οµήγενετικούαλγόριθµου - Παράδειγµα έστωότιοιγονείςαναπαριστώνταµε διανύσµατα πέντε διαστάσεων: (a 1,b 1,c 1,d 1,e 1 ) και (a 2,b 2,c 2,d 2,e 2 ) τότε οι απόγονοι µεσηµείο διασταύρωσης (crossover point) 2 είναι: (a 1,b 1,c 2,d 2,e 2 ) και (a 2,b 2,c 1,d 1,e 1 ) 8
οµή Γενετικού Αλγόριθµου Ένας ΓA αποτελείται από πέντε τµήµατα: 1. Μια γενετική αναπαράσταση των πιθανών λύσεων 2. Ένα τρόπο δηµιουργίας ενός αρχικού πληθυσµού των πιθανών λύσεων 3. Μια αντικειµενική συνάρτηση αξιολόγησης 4. Γενετικούς τελεστές που µετατρέπουν τη σύνθεση των παιδιών 5. ιάφορες παραµέτρους όπως µέγεθος πληθυσµού, πιθανότητες εφαρµογής των γενετικών τελεστών, κ.λπ. BEGIN /* Γενετικός Αλγόριθµος */ ηµιουργία αρχικού πληθυσµού Υπολογισµός της αντικειµενικής συνάρτησης για κάθε άτοµο WHILE NOT ολοκληρωµένος DO BEGIN /* ηµιουργία νέας γενιάς */ FOR µέγεθος πληθυσµού / 2 DO BEGIN Επιλογή δύο ατόµων από για ζευγάρωµα Συνδυασµός των δύο ατόµων και δηµιουργία δύο νέων Εφαρµογή µετάλλαξης σε κάποια από τα νέα άτοµα Εισαγωγή των νέων ατόµων στην νέα γενιά END IF οπληθυσµός συγκλίνει σε επιθυµητό βαθµό THEN ολοκληρωµένος := TRUE END END 9
Πλεονεκτήµατα Γενετικών Αλγορίθµων 1. Μπορούν να λύσουν δύσκολα προβλήµατα γρήγορα 2. Μπορούν εύκολα να συνεργαστούν µετα υπάρχοντα µοντέλα και συστήµατα 3. Είναι εύκολα επεκτάσιµοι και εξελίξιµοι 4. Μπορούν να συνεργαστούν µε άλλες µεθόδους 5. Εφαρµόζονται σε πολύ περισσότερα πεδία από κάθε άλλη µέθοδο Πλεονεκτήµατα Γενετικών Αλγορίθµων 6. εναπαιτούνπεριορισµούς στις συναρτήσεις που επεξεργάζονται 7. εν ενδιαφέρει η σηµασία της υπό εξέταση πληροφορίας 8. Έχουν εκ φύσεως το στοιχείο του παραλληλισµού 9. Είναι η µόνη µέθοδος που κάνει ταυτόχρονα εξερεύνηση του χώρου αναζήτησης και εκµετάλλευση της ήδη επεξεργασµένης πληροφορίας 10
Προβλήµατα Γενετικών Αλγορίθµων 1. Προβλήµατα εξοικείωσης µετη Γενετική 2. Το πρόβληµα του χρόνου Εξελικτικοί Αλγόριθµοι Ιδέες από τη θεωρία της Εξέλιξης των Ειδών µπορούν να εφαρµοσθούν στην επίλυση δύσκολων, από υπολογιστική άποψη, προβληµάτων Αυτός είναι ο λόγος που οι ΓA αναφέρονται και ως Εξελικτικοί Αλγόριθµοι 11
Πιθανοτικοί και Ντετερµινιστικοί κανόνες Πιθανοτικοί ή στοχαστικοί είναι οι κανόνες των οποίων το αποτέλεσµαισχύειµεκάποια πιθανότητα. Ντετερµινιστικοί είναι οι κανόνες των οποίων το αποτέλεσµαείναι καθορισµένο αιτιοκρατικά. Γενετικοί Τελεστές Με την εφαρµογή των γενετικών τελεστών το στοιχείο της τύχης χρησιµοποιείται ως οδηγός για αναζήτηση σε περιοχές που αναµένεται να δώσουν καλά αποτελέσµατα Γενετικοί τελεστές είναι: Επιλογή ιασταύρωση Μετάλλαξη Αξιολόγηση 12
Κύρια χαρακτηριστικά ενός Γενετικού Αλγορίθµου (ΓΑ) 1. Οι ΓA δουλεύουν µε µια κωδικοποίηση ενός συνόλου τιµών που µπορούν να λάβουν οι µεταβλητές και όχι µε τις ίδιες τις µεταβλητές του προβλήµατος 2. Οι ΓA κάνουν αναζήτηση σε πολλά σηµεία ταυτόχρονα και όχι µόνο σε ένα 3. Οι ΓA χρησιµοποιούν µόνο την αντικειµενική συνάρτηση και καµία επιπρόσθετη πληροφορία 4. Οι ΓA χρησιµοποιούν πιθανοθεωρητικούς κανόνες αναζήτησης και όχι ντετερµινιστικούς Βασικά στοιχεία ενός ΓΑ 1 η Φάση: Κωδικοποίηση Αντικειµενική συνάρτηση Αρχικοποίηση 2 η Φάση Γενετικές διαδικασίες Περιλαµβάνονται λειτουργίες που ανήκουν στη φάση τρεξίµατος του ΓA. 13
Κωδικοποίηση Η κωδικοποίηση αφορά ένα σύνολο πιθανών λύσεων του προβλήµατος. Η αναπαράσταση των λύσεων γίνεται µεένα µαθηµατικό, τρόπο, ώστε να είναι δυνατή η επεξεργασία από τον υπολογιστή. Η πιο απλή είναι η κωδικοποίηση µε δυαδικά ψηφία (bits): κάθε λύση αναπαρίσταται από µια δυαδική συµβολοσειρά (binary string) καθορισµένου µήκους. Κύριος στόχος της κωδικοποίησης είναι η αναπαράσταση µε ικανοποιητικό τρόπο των επιµέρους χαρακτηριστικών των λύσεων Επιδιώκεται η ύπαρξη οµοιοτήτων ανάµεσα στα άτοµα διότι βοηθούν την κατεύθυνση του ψαξίµατος Είναι πιθανό ένα πρόβληµαναεπιδέχεταιπερισσότερες από µια κωδικοποιήσεις. Κωδικοποίηση Ποιοι είναι οι παράγοντες οι οποίοι καθορίζουν το είδος της κωδικοποίησης που πρέπει να επιλεχθεί για ένα συγκεκριµένο πρόβληµα; 14
Αντικειµενική Συνάρτηση Παίρνει ως είσοδο µια αποκωδικοποιηµένη συµβολοσειρά και επιστρέφει µια τιµή Ητιµή είναι ανάλογη του πόσο καλά λύνει το πρόβληµαη συγκεκριµένη συµβολοσειρά. Είναι σηµαντικό αυτή η συνάρτηση να είναι εύκολα υπολογίσιµη Αρχικοποίηση Κατά την αρχικοποίηση ορίζεται ο αρχικός πληθυσµός Οπληθυσµός διαλέγεται µετυχαίο τρόπο ανάµεσα σε όλες τις δυνατές τιµές των µεταβλητών του προβλήµατος Το µέγεθός του ορίζεται από το χρήστη Αφού προκύψει η πρώτη γενιά, ογa εισέρχεται στο επαναληπτικό µέρος του 15
Γενετική ιαδικασία 1. Αρχικοποίηση (Initialization) 2. Αποκωδικοποίηση (Decoding) 3. Υπολογισµός ικανότητας ή αξιολόγηση (Fitness calculation ή evaluation) 4. Αναπαραγωγή (Reproduction) I. Επιλογή (Selection) II. ιασταύρωση (Crossover ή mating) III. Μετάλλαξη (Mutation) 5. Επανάληψη από το βήµα (2) µέχρι να ικανοποιηθεί το κριτήριο τερµατισµού του ΓA Αποκωδικοποίηση Πρέπει να γίνει αποκωδικοποίηση για να υπολογιστεί η απόδοσης των ατόµων Το σύνολο της κωδικοποιηµένης γενετικής πληροφορίας ονοµάζεται γονότυπος Ανάλογα το τεχνητό µοντέλο, το ρόλο του γονότυπου παίζει η δοµήτηςσυµβολοσειράς µεταδυαδικάψηφίαωςαντίστοιχατων γονιδίων Ο φαινότυπος µιας συµβολοσειράς αντιστοιχεί στην αποκωδικοποιηµένη τιµή της που ανήκει στο σύνολο ορισµού της αντικειµενικής συνάρτησης 16
Αξιολόγηση Σκοπός της αξιολόγησης είναι να υπολογιστεί για κάθε άτοµοηικανότητα του για επιβίωση Γιααπλάπροβλήµατα, για κάθε συµβολοσειρά του τρέχοντος πληθυσµού υπολογίζεται η απόδοσή της από την αντικειµενική συνάρτηση Σε πιο σύνθετα προβλήµατα, ο υπολογισµός ικανότητας µπορεί να περιλαµβάνει µια εργαστηριακή προσοµοίωση Αναπαραγωγή Ηδοµή της αναπαραγωγικής διαδικασίας είναι σύνθετη. Περιλαµβάνει: Επιλογή (Selection) ιασταύρωση (Crossover ή mating) Μετάλλαξη (Mutation) 17
Αναπαραγωγή - Επιλογή Καθορίζει ποια άτοµα από τον υπάρχοντα πληθυσµόθαλάβουνµέρος στην αναπαραγωγή ΓA χωρίς επιλογή ισοδυναµεί µετυχαίοψάξιµο Η τεχνική επιλογής οφείλει να δίνει µεγαλύτερες πιθανότητες αναπαραγωγής σε άτοµαπου αξιολογούνται ως τα πιο ικανά Ο τελεστής επιλογής µπορεί να εκφραστεί µε πολλούς τρόπους π.χ. εξαναγκασµένης ρουλέτας Ονέοςπληθυσµός αναφέρεται σαν δεξαµενή ζευγαρώµατος (mating pool) Αναπαραγωγή - Επιλογή 18
Αναπαραγωγή - ιασταύρωση Ηνέαοµάδα ατόµων σχηµατίζει µετυχαίο τρόπο οµάδες των δύο Κατά τη διασταύρωση, τα δύο µέλη παίρνουν µέρος σε µια απλή λειτουργία ανταλλαγής γενετικού υλικού Στόχος είναι η νέα γενιά που θα προκύψει να περιλαµβάνει άτοµα που θα διαφέρουν από τους γονείς τους και θα φέρουν συνδυασµό των καλύτερων χαρακτηριστικών τους Συνέπεια της διασταύρωσης είναι η ανακατεύθυνση του ψαξίµατος Αναπαραγωγή - ιασταύρωση Υπάρχει το ενδεχόµενο η διασταύρωση να δώσει χειρότερα παιδιά από τους γονείς, αλλά αυτά δεν θα έχουν µεγάλη πιθανότητα πολλαπλασιασµού στον επόµενο αναπαραγωγικό κύκλο, λόγω µικρής απόδοσης. Η διασταύρωση λαµβάνει χώρα µε πιθανότητα διασταύρωσης (crossover probability) p c, που καθορίζεται από το σχεδιαστή του ΓA 19
Αναπαραγωγή - ιασταύρωση Ητιµή p c =1, σηµαίνει συνεχή εφαρµογή του τελεστή διασταύρωσης, άρα το ψάξιµογίνεταιµε µικρό βήµαάρα αλγόριθµος θα συγκλίνει στο βέλτιστο, πολύ αργά Χρησιµοποιώντας µικρές τιµές της p c το ψάξιµο κάνει άλµατα, άρα ο αλγόριθµος είναι πιθανόν να συγκλίνει πιο γρήγορα Χρησιµοποιώντας µεγάλο βήµα, υπάρχει ο κίνδυνος, οαλγόριθµος να ξεπεράσει το βέλτιστο και να αποκλίνει Αναπαραγωγή - Μετάλλαξη Ενεργεί σε ένα οργανισµόκάθεφορά Καθώς αντιγράφονται δυαδικά ψηφία από τον γονέα στον απόγονο, επιλέγεται ένα ψηφίο και αντιστρέφεται Η επιλογή γίνεται τυχαία µε µικρή πιθανότητα, την πιθανότητα µετάλλαξης (mutation probability) p m Η µετάλλαξη λειτουργεί ως ασφαλιστική δικλείδα για τις περιπτώσεις, που η επιλογή και η διασταύρωση, χάσουν κάποιες πολύτιµες γενετικές πληροφορίες 20
ιαδικασία Γενετικών Αλγορίθµων begin t 0 Αρχικοποίησε το P(t) Αξιολόγησε το P(t) while ( not συνθήκη τερµατισµού) do begin t t+1 Επιλογή του P(t) από το P(t 1) Τροποποίηση του P(t) Αξιολόγηση του P(t) end end 21