Modellierung von ökologischen Systemen und Evolutionsprozessen Teil: Künstliche Neuronale Netzwerke und Evolutionäre Algorithmen Überblick Theoretische Biologie Allgemeines Zwei Beispiele der Modellierung Das Hodgkin-Huxley Modell Die Robotergrille Künstliche Neuronale Netze (ANN) Biologischer Kontext Implementation Beispiel: XOR-Netzwerk mit 4 Zellen: Weiterführendes: Nomenklaturen und Lernen Evolutionäre Algorithmen Biologischer Kontext Grundkonzept der Evolutionären Algorithmen Komponenten der Evolutionären Algorithmen Beispiel: Optimierung einer Funktion Theoretischen Biologie Historisches • Geschichtlich gesehen eher an philosophische Fragestellungen interessiert • ab Anfang des 20. Jhdt: Beschreibung biologischer Vorgänge mit Hilfe mathematischer Formeln • Inzwischen weit verbreitet: Ökologie, Epidemiologie, Neurobiologie, Evolutionsbiologie, etc. Theoretischen Biologie Motivation • Wozu braucht man die Mathematik und Modelle in der Biologie? • Was sind die Vorteile? • Was sind die Nachteile? Theoretischen Biologie Modelle: Was sind die Nachteile? • Niemals die gesamte Natur modellierbar • Von allen Einzelteilen nicht immer aufs Ganze schließbar • Verliert das Ganze aus den Augen • Verführt zu voreiligen Schlüssen Theoretischen Biologie Modelle: Was sind die Vorteile? • Experimente manchmal im Realen nicht durchführbar • Kostenersparnis • Konzentration auf ein Problem • Biologische Algorithmen/Konzepte haben anderen Einsatzbereich Theoretischen Biologie Modelle sollten so einfach wie möglich sein, aber niemals weniger als das (A. Einstein) Zwei Modelle zur Neurobiologie Wiederholung Neurobiologie Grundbaustein des Gehirns: Nervenzelle Mensch: ca. 1011 Aufbau: Zellkörper, Dendriten und Axon Hodgkin-Huxley Modell großen Einfluss im Bereich der Neuroinformatik Alan Lloyd Hodgkin and Andrew Huxley Publikation 1952, Nobelpreis für Physiologie und Medizin 1963 mathematische Annahmen erst Jahre später unter “Ionenkanal” empirisch entdeckt Hodgkin-Huxley Modell Das Aktionspotential große Mehrheit der Nervenzellen generiert eine Serie von Spannungsimpulsen als Reaktion auf starken Input Ursprung meist in Nähe des Zellkörpers, wandern entlang des Axons mit konstanter Geschwindigkeit und Amplitude Form kann unterschiedlich ausgeprägt sein (A) Riesentintenfischaxon (B) Ranvier’scher Schnürring, Frosch (C) Visueller Cortex, Katze (D) Purkinje-Faser Herz, Schaf (E) Retinalganglion, Kaninchen (F) Pyrimidalzelle, Ratte. (G) Komplexer Spike bei einer Purkinje-Faser, Rattencerebellum (H) Pyrimidalzelle, Ratte (I) Interneuron, Heuschrecke Hodgkin-Huxley Modell Analyse am Riesenaxon von Tintenfischen: riesiger Durchmesser Patch-Clamptechnik pharmakologischen Substanzen schalten verschiedene Ionenströme aus Membranstrom in einzelne Komponenten zerlegt Hodgkin-Huxley Modell Modell beschreibt Geschehnisse zur Bildung von Aktionspotentialen APs beinhalten hauptsächlich zwei spannungsabhängige unabhängige Ionenleitfähigkeiten Die individuellen Ionenströme sind linear proportional zur Spannung Gating Particle modellieren Dynamik der Leitfähigkeit Hodgkin-Huxley Modell Membranstrom ist Summe von Ionenströme (Summe von Natrium-, Kalium- und Leakstrom) und Kapazitätsstrom Im (t) = Iionic (t) + Cm dV (t) mit Iionic = INa + IK + Ileak dt (1) Hodgkin-Huxley Modell Membranstrom ist Summe von Ionenströme (Summe von Natrium-, Kalium- und Leakstrom) und Kapazitätsstrom Im (t) = Iionic (t) + Cm dV (t) mit Iionic = INa + IK + Ileak dt (1) Leitfähigkeiten: Natrium GNa , Kalium GK und “Leak”-Strom (Gm ) Hodgkin-Huxley Modell Die individuellen Ionenströme Ii (t) sind linear proportional zur treibenden Spannung (Ohm’sche Gesetz): Ii (t) = Gi (V (t), t)(V (t) − Ei ), Ionische Leitfähigkeit Gi (spannungsabhängig: V (t)): berechnet aus max. Leitfähigkeit G i mal numerischen Koeffizienten Umkehrpotential Ei gegeben durch Nernst-Gleichung der entsprechenden Ionenspezies (2) Hodgkin-Huxley Modell Kaliumstrom IK = G K n4 (V − EK ), maximale Leitfähigkeit G K = 36mS/cm2 Kaliumbaterie mit EK = −12mV relativ zum Ruhepotential des Axons n Status eines fiktionalen activation particle mit 0 ≤ n ≤ 1 n nahe bei 1: Zustand “offen”, Kaliumstrom kann fließen (3) Hodgkin-Huxley Modell Natriumstrom Für kinetisches Verhaltenden des Natriumstroms ist Modell anzupassen: Natrium activation particle m und inactivation particle h: INa = G Na m3 h(V − ENa ), (4) maximaler Leitfähigkeit G Na = 120mS/cm2 Natriumbaterie mit EK = 115mV m und h mit 0 ≤ m, h ≤ 1. m gleich zu interpretieren wie n beim Kaliumstrom h stellt die Wahrscheinlichkeit dar, dass das inactivation particle nicht im inaktiven Zustand ist Hodgkin-Huxley Modell Aktionspotential anhand der gemessenen Parameter injizierter Impuls lädt die Membrankapazität auf Natriumstrom (m) führt zu Membrandepolarisation Peak-ähnlichen Verlauf der Spannungskurve mit nachfolgender Hyperpolarisation durch größerer Zeitkonstante von • Kalium activation (n) • Natrium inactivation (h) Hodgkin-Huxley Modell Berechnungen und Untersuchungen, die aus dem Modell hervorgingen: • Erzeugung von Aktionspotentialen • Zusammenspiel der spannungsabhängigen Natrium- und Kaliumkanäle • Schwelle für das Auslösen eines Aktionspotentials • Refraktärzeit • Frequenzen von Aktionspotentialabfolgen Hodgkin-Huxley Modell Hodgkin-Huxley Modell umfasst drei miteinander verbundenden Differentialgleichungen (spannungsabhängige Beschreibung der (in)activation particles oder Gatingvariablen n, m und h) und beschreibt so den Zustand einer neuronalen Zellmembran Hodgkin-Huxley Modell Hodgkin-Huxley Modell umfasst drei miteinander verbundenden Differentialgleichungen (spannungsabhängige Beschreibung der (in)activation particles oder Gatingvariablen n, m und h) und beschreibt so den Zustand einer neuronalen Zellmembran benötigtes biophysikalisches und mathematisches Wissen: • Ohm’sches Gesetz und Nernst-Gleichung • gemessene Daten in n, m und h umlegen (hier durch Diff.-Glgen gelöst.) Hodgkin-Huxley Modell Hodgkin-Huxley Modell umfasst drei miteinander verbundenden Differentialgleichungen (spannungsabhängige Beschreibung der (in)activation particles oder Gatingvariablen n, m und h) und beschreibt so den Zustand einer neuronalen Zellmembran benötigtes biophysikalisches und mathematisches Wissen: • Ohm’sches Gesetz und Nernst-Gleichung • gemessene Daten in n, m und h umlegen (hier durch Diff.-Glgen gelöst.) Jene drei Parameter später bei empirischen Versuchen als Struktureigenschaften von spannungsabhängigen Ionenkanälen herausgestellt Hodgkin-Huxley Modell Hodgkin-Huxley Modell umfasst drei miteinander verbundenden Differentialgleichungen (spannungsabhängige Beschreibung der (in)activation particles oder Gatingvariablen n, m und h) und beschreibt so den Zustand einer neuronalen Zellmembran benötigtes biophysikalisches und mathematisches Wissen: • Ohm’sches Gesetz und Nernst-Gleichung • gemessene Daten in n, m und h umlegen (hier durch Diff.-Glgen gelöst.) Jene drei Parameter später bei empirischen Versuchen als Struktureigenschaften von spannungsabhängigen Ionenkanälen herausgestellt Anderen Annahmen in diesem Modell hingegen durch Befunde aus biologische Experimente abgeändert Die Robotergrille Modellieren neuroethologischer Vorgängen (in Hinblick auf sensorische Ökologie): Anfang der 90iger-Jahre Vorteil der Robotik: Simulationsumgebung “for free” Auch an unserem Institut wird in etwas abgeänderter Form auf diese Art neurobiologische Wissenschaft betrieben Die Robotergrille Modelltier: Grille Grund: Neurobiologische Sensorik und Motorik bekannt Verhalten gut auf neuronale Ebene rückführbar Beispiel Lokomotion: Einfache Signale können ausreichen um Phonotaxis auszulösen Die Robotergrille Aufbau die beteiligten Neurone der Hörbahn der Motorik Hörbahn: auditorische Neurone (ON), aszendierende Neurone (AN), Gehinrneurone (BN 1 und 2) Motorik: Burst-Generator (BG, Ladeimpulsgenerator), forward Motorneurone (LF und RF), turn Neurone (resp. LT und RT) Die Robotergrille neuronalen Netz in einen mobilen Roboter implementiert so ist dieser im Stande eine Schallquelle zu lokalisieren Test: freie Wildbahn mit 3 unterschiedlichen Startpositionen Die Robotergrille Vorteil: komplette Kontrolle über das gesamte System sämtliche Erregungen innerhalb des neuronalen Netzes mitverfolgbar Neuronale Netze Neuronale Netze: Einführung • Neuronale Netze: auch künstliche neuronale Netze (KNN) oder artificial neural networks (ANN) • Informationsverarbeitende Systeme: grosse Anzahl einfacher Einheiten (Zellen, Neurone) • Einheiten senden sich über gerichtete Verbindungen (connections, links) Informationen zu Neuronale Netze Neuronale Netze: Motivation • Analogie zu biologischen Nervensystem • Grundlegende Erkenntnisse führen zu Hypothesen in der Biologie • Hoher Grad an paralleler Verarbeitung • Lernfähigkeit Neuronale Netze Gemeinsamkeiten von künstlichen und biologischen NN • Massive Parallelität einer grossen Zahl von Verarbeitungseinheiten • Einfache Verarbeitungseinheiten (Zellen) • Gerichtete Verbindungen zwischen Neuronen und Synapsen • Zellen kommunizieren den Grad ihrer Aktivierung über Synapsen • Verbindungsgewichte sind modifizierbar (plastisch) • Relativ hohe Konnektivität der Zellen Neuronale Netze Unterschiede zwischen künstlichen und biologischen NN • Viel geringere Zahl von Neuronen • Viel geringere Zahl von Verbindungen • Amplitudenmodulation statt Frequenzmodulation • Lokalisationsprinzip der Synapsen verletzt • Keine genaue Modellierung der zeitlichen Vorgänge der Nervenleitung • Keine Berücksichtigung chemischer Einwirkung benachbarter Neuronen • Biologisch unplausible Lernregeln Neuronale Netze neti netj ai oi aj Zellkörper Axon oj Zellkörper Dendriten wij Synapse netj neti ai oi wij aj oj Neuronale Netze netj neti ai oi wij aj oj Bestandteile: 1. Zellen (Neurone, Elemente, units) • Aktivierungszustand ai (t): Grad der Aktivierung der Zelle • Aktivierungsfunktion fact : Beschreibt Aktivierungszustand zum nächsten Zeitschritt. Für Zelle j gilt: aj (t + 1) = fact (aj (t), netj (t), θj ) (5) mit altem Aktivierungszustand aj (t), Netzeigabe netj (t) und Schwellenwert θj . • Ausgabefunktion fout : Diese wird aus der Aktivierung der Zelle berechnet: oj = fout (aj ) (6) Neuronale Netze netj neti ai oi wij aj oj Bestandteile: 2. Verbindungsnetzwerk • Gewicht der Verbindung von einer Zelle i zur Zelle j wird als wij bezeichnet • Beschreibung der Verbindungen des Netzwerks mittels Gewichtsmatrix W Neuronale Netze netj neti ai oi wij aj oj Bestandteile: 3. Propagierungsfunktion Diese gibt die Netzeingabe eines Neurons an. Setzt sich aus der Ausgaben der mit ihr verbundenen Neuronen und deren Gewichte zusammen. netj (t) = ∑ oi (t)wij (7) i Neuronale Netze Bestandteile: 4. Lernregel • Zuständig für korrekte Ausgabe bei vorgegebener Eingabe • Durch Veränderung der Stärke der Gewichte • Fehler zwischen erwarteter und tatsächlicher Ausgabe wird verringert • Verschiedene Lernverfahren möglich Neuronale Netze Beispiel: Das XOR-Netzwerk • Logische Vergleichsoperatoren: zwei binäre Eingaben und eine binäre Ausgabe • XOR (exklusives Oder): nur dann 1 ausgegeben, wenn genau eine der beiden Eingaben 1 ist, sonst 0 • XOR-Netzwerk besteht aus vier Zellen. Neuronale Netze 4 Schwellenwert θ 0.5 -2 +1 3 +1 1 +1 1.5 +1 2 Abbildung: Neuronales Netz mit 4 Zellen für das XOR-Netzwerk. Neuronale Netze 4 0.5 +1 Schwellenwert θ -2 3 1.5 +1 +1 +1 1 2 Gewichtsmatrix • Gewichte: herausragende Rolle bei neuronalen Netzen • Darstellung mittels Gewichtsmatrix: w11 . . . W = ... ... w41 . . . 0 w14 0 ... = 0 w44 0 0 +1 +1 0 +1 +1 0 0 −2 0 0 0 (8) Neuronale Netze Beispiel: Das XOR-Netzwerk • Netzwerkeingabe: netj (t) = ∑ oi (t)wij (9) i • Aktivierungsfunktion (hier sog. Schwellenwertfunktion): aj (t) = ( 1 falls netj (t) ≥ θj 0 sonst • Ausgabefunktion: oj (t) = aj (t) (Identitätsfunktion) (10) Neuronale Netze 4 0.5 Schwellenwert θ -2 +1 3 1.5 +1 +1 +1 1 o1 o2 0 0 1 1 0 1 0 1 net3 2 θ3 1.5 1.5 1.5 1.5 o3 net4 θ4 o4 0.5 0.5 0.5 0.5 Tabelle: Das XOR-Netzwerk lässt sich händisch berechnen. Die Tabelle zeigt Netzeingaben und Ausgaben der Neuronen beim XOR-Netzwerk Neuronale Netze 4 0.5 Schwellenwert θ -2 +1 3 1.5 +1 +1 +1 1 2 o1 o2 net3 θ3 o3 net4 θ4 o4 0 0 1 1 0 1 0 1 0∗1+0∗1 = 0 0∗1+1∗1 = 1 1∗1+0∗1 = 1 1∗1+1∗1 = 2 1.5 1.5 1.5 1.5 0 0 0 1 0 ∗ 1 + 0 ∗ 1 + 0 ∗ (−2) = 0 0 ∗ 1 + 1 ∗ 1 + 0 ∗ (−2) = 1 1 ∗ 1 + 0 ∗ 1 + 0 ∗ (−2) = 1 1 ∗ 1 + 1 ∗ 1 + 1 ∗ (−2) = 0 0.5 0.5 0.5 0.5 0 1 1 0 Tabelle: Das XOR-Netzwerk lässt sich händisch berechnen. Die Tabelle zeigt Netzeingaben und Ausgaben der Neuronen beim XOR-Netzwerk Neuronale Netze Ausgabeschicht (output layer) Schichten (hidden layers) Eingabeschicht (input layer) Abbildung: Ein feed-forward-Netzwerk mit 3 Verbindungs- und 4 Zellschichten. Neuronale Netze Lernregeln Lernen ist interessanteste Komponente der ANNs (Sicht der Techniker) Aufgaben weitgehend selbstständig aus Trainingsdaten lernen Neuronale Netze Lernverfahren können theoretisch an folgenden Punkten angreifen: 1. Entwicklung neuer Verbindungen 2. Löschen existierender Verbindungen 3. Modifikation der Stärke wij von Verbindungen 4. Modifikation von Schwellenwerten von Neuronen 5. Modifizieren der Aktivierung-, Ausgabe- und Propagierungsfunktion 6. Entwicklung neuer Zellen 7. Löschen von Zellen Neuronale Netze Hebbsche Lernregel Grundlage für die meisten komplexeren Lernverfahren formuliert 1949 von Donald O. Hebb Definition Wenn eine Zelle j eine Eingabe von Zelle i erhält und beide gleichzeitig stark aktiviert sind, dann erhöhe das Gewicht wij (Stärke der Verbindung von i nach j). Neuronale Netze Mathematischer Form: ∆wij = η oi aj η (eta) eine Konstante (Lernrate) binäre Aktivierung von −1 und +1 anstelle 0 und 1 so Verringerung und Verstärkung der Gewichte möglich (Vorgänger- und Nachfolgerzelle keine / eine Übereinstimmung) Neuronale Netze Mathematischer Form: ∆wij = η oi aj η (eta) eine Konstante (Lernrate) binäre Aktivierung von −1 und +1 anstelle 0 und 1 so Verringerung und Verstärkung der Gewichte möglich (Vorgänger- und Nachfolgerzelle keine / eine Übereinstimmung) Allgemeine mathematische Form: ∆wij = η h(oi , wij )g(aj , tj ) tj erwartete Aktivierung (teaching input) als Parameter andere Lernregeln sind Abwandlungen dieser allgemeinen Form Neuronale Netze Delta-Regel Funktion g: Differenz zwischen aktuellen aj und der erwarteten tj Aktivierung wird mit δj bezeichnet Mathematischer Form: ∆wij = η oi (tj − aj ) = η oi δj Netze mit nur einer Schicht trainierbarer Gewichte und Neuronen mit linearen Aktivierungsfunktionen Spezialfall der Backpropagation-Regel Neuronale Netze Backpropagation-Regel bei größeren Netzen: mehreren Schichten trainierbarer Gewichte und nicht lineare Aktivierungsfunktionen δj : komplexer Mathematischer Form: ∆wij = η oi δj fj′ (netj ) (tj − oj ) δj = fj′ (netj ) ∑(δk wjk ) falls j eine Ausgabezelle ist falls j eine verdeckte Zelle ist k Summationsindex k über alle direkten Nachfolgezellen (11) Neuronale Netze Ziel im Seminar • Implementieren von KNN in Matlab und lösen einfacher Aufgaben • Steuerung von Vehikel durch einfache neuronale Netze • Weiters: Verwenden biologisch motiviertes Lernen durch Evolutionäre Algorithmen Evolutionäre Algorithmen Einführung: Die Biologie als Inspirator Darwins Theorie zur Evolution bietet eine Erklärung für die biologische Diversität und dessen zugrunde liegenden Mechanismen • Lebensraum für nur begrenzte Anzahl von Individuen • Selektion durch überproportionale Reproduktion unausweichlich • Natürliche Selektion bevorzugt die am besten Angepasstesten (survival of the fittest) • Phenotypischen Merkmale bestimmen Fitness • Variation durch Mutation und Rekombination Evolutionäre Algorithmen Grundkonzept • Gebiet: “Evolutionary Computing” • Verfahren: “Evolutionäre Algorithmen” • Grundkonzept entstammt den Computerwissenschaften • Herangehensweise mit biologischer Evolution ident: trial-and-error Evolutionäre Algorithmen Grundkonzept: Pseudocode INITIALISIERE eine random Ausgangspopulation RUN EVALUIERE jedes Individuum REPEAT WAEHLE Individuen fuer die naechste Generation WAEHLE Eltern REKOMBINIERE Paare von Eltern MUTIERE die entstandenden Nachkommen RUN mit neuer Population EVALUIERE jedes Individuum UNTIL SATISFIED Abbildung: Das generelle Schema eines evolutionären Algorithmus als Psudocode. Evolutionäre Algorithmen Parent selection Initialisation Parents Recombination Population Terminieren Mutation Survivor selection Nachkommen Abbildung: Das generelle Schema eines evolutionären Algorithmus als flow-chart. Evolutionäre Algorithmen Fundamentale Kräfte • Variationsoperatoren (Rekombination und Mutation) um die erforderliche Diversität und Erneuerung zu schaffen • Selektion als Kraft, die in Richtung höherer Fitness wirkt Evolutionäre Algorithmen Dialekte: Unterschiede bei z.B. Individuenrepräsentation • evolutionary programming (EP): finite-state-machine • genetic algorithm (GA): endlichen Alphabet • evolutionary strategies (ES): reelen Zahlen • genetic programming (GP): Baumstrukturen Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Definition der Individuen: Verbindung zwischen der “realen Welt” und der “EA Welt”. Objekte für die Lösung (“Phenotyp”, z.B.: Integerzahl, Roboter) werden innerhalb des EA codiert (“Genotyp”, z.B.: Binärzahl, Reals als Gewichte) Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Diese Funktion beschreibt die Anforderungen auf die adaptiert werden soll (was ist “Verbesserung”). Technisch gesehen ist es eine Funktion, die Qualität der Genotypen bestimmt, diese aber anhand des Phenotyps vornimmt. Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Die Aufgabe der Population ist es die Lösungen zu halten. Definition meist nur Anzahl der Individuen, kann aber auch komplexer sein (Veränderung der Populationsgröße, räumliche Struktur). Diversität: Maß der Anzahl an unterschiedlichen Lösungen innerhalb einer Population Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Unterscheidung zwischen den Individuen einer Population, welche Eltern der neuen Generation werden dürfen und welche nicht bzw. mit größerer Wahrscheinlichkeit Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Operanten um neues Material zu schaffen. Rekombination ist ein binärer Operator (braucht zwei Eltern), Mutation arbeitet singulär. Beides stochastische Prozesse. Gewisse Dialekte verzichten auf Mutation. Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Entscheidet, welcher Anteil der alten Generation unverändert in die nächste Generation weiter kommt und welcher ersetzt wird. Evolutionäre Algorithmen Komponenten 1. Repräsentation 2. Fitnessfunktion 3. Population 4. Wahl der Eltern 5. Rekombination und Mutation 6. Replacement 7. Abbruchkriterium Abbruch bei einem bestimmten Fitnesswert, nach Laufzeit oder nach einer angegebenen Anzahl von Generationen der Fall sein. Evolutionäre Algorithmen Modell der Evolution • tournament selection • roulette wheel selection • rank selection Evolutionäre Algorithmen Tournament selection Population zufällig gemischt und in kleine Gruppen geteilt Die zwei fittesten Individuen jeder Gruppe als Eltern gewählt deren Genome: Crossover, möglicherweise mutiert und ersetzen Genome der 2 am wenigsten fittesten Individuen der Gruppe Evolutionäre Algorithmen Vorteile • zwei besten Individuen jeder Gruppe überleben • bestes Individuum nur ein Kind haben • verhindert Diversitätsverlust bzw. Steckenbleiben lokalen Optimum Evolutionäre Algorithmen Definition Ein globales Maximum ist ein Punkt in der Fitnesslandschaft dessen Wert alle anderen Werte übersteigt. Ein lokales Maximum ist ein Punkt in der Fitnesslandschaft, welcher die Eigenschaft hat, dass keine Mutationsabfolge beginnend von diesem Punkt zu einem Aufstieg führt ohne vorherigen Abstieg. Definition Sei G der Raum aller Datenstrukturen welche als Member einer Population in einem EA auftreten können. Dann ist die Fitnesslandschaft dieses EA der Graph der Fitnessfunktion über dem Raum G. Evolutionäre Algorithmen Fitnesslandschaft wie ein Gebirge vorstellen Globales Optimum: höchster Berg Lokale Optima: alle Berge des Gebirges globales Optimum lokales Optimum lokales Optimum J^ t Jd / d 4 2 3 1.5 2 1 1 0 t d 0.5 d 0 -1 -0.5 -2 -1 -3 -4 -1.5 -4 -3 -2 -1 0 1 2 3 4 Evolutionäre Algorithmen Elitismus: Individuen der Population mit dem höchsten Fitnesswert mit Garantie in die nächste Generation entweder implizit im Algorithmus tournament selection verborgen oder explizit angegeben Evolutionäre Algorithmen Roulette wheel selection Wahl des Elternteils proportional zum Fitnesswert Individuum i mit der Fitness fi hat Wahrscheinlichkeit fi /F hat Elternteil ausgewählt zu werden (F : Summe über alle Fitnessen der gesamten Population) Evolutionäre Algorithmen Rank selection Individuen zunächst nach Fitness geordnet und dann anhand ihres Ranges gewählt Individuum i mit Rang ri hat Chance ri /R als Elternteil gewählt zu werden (R: Summe aller Ränge) schlechtestes Individuum: Rang 1 (geringste Chance gewählt zu werden) Evolutionäre Algorithmen Tabelle: Vergleich der Wahrscheinlichkeiten ob Individuum Elternteil gewählt wird: roulette wheel selection vs. rank selection Ind # Fitness Rang 1 2 3 4 5 6 2.1 3.6 7.1 2.4 3.5 2.6 1 5 6 2 4 3 P(gewählt) Roulette 0.099 0.169 0.333 0.113 0.164 0.122 P(gewählt) Rang 0.048 0.238 0.286 0.095 0.190 0.143 Evolutionäre Algorithmen Vergleich der Wahrscheinlichkeiten ob Indivuum als Elternteil gewählt wird: roulette wheel selection vs. rank selection Ind 3 Ind 3 Ind 2 Ind 2 Ind 1 Ind 1 Ind 4 Ind 4 Ind 5 Ind 6 (c) Roulette wheel selection Ind 5 (d) Rank selection Ind 6 Evolutionäre Algorithmen Aufgabe des EA: Fitness, gegeben durch f (x , y ) = cos((2 ∗ x ) + sin(y )) + cos(y ) − 0.1 ∗ (x 2 + x 2 ), soll maximiert werden. Vorteil bei Funktion: Verlauf der Evolution nachvollziehbar (12) Evolutionäre Algorithmen Phenotyp: zwei reelle Zahlen (x und y ) Codierung: zwei Gene, ebenfalls reell Fitnessfunktion: siehe oben, soll maximiert werden Population: 16 Individuen, Größe unverändert Wahl der Eltern: tournament selection mit Gruppengröße von 8 Mutationshäufigkeit: 10% pro Gen Mutationsgröße: 0.1 Terminierung: nach 1000 Generationen Evolutionary Algorithm Abbildung: Fitness landscape Evolutionary Algorithm Abbildung: Fitness landscape Evolutionäre Algorithmen 4 4 3 3 2 2 Generation 0 #1 -1 1 1 d t d 0 d t d -1 -2 -2 -3 -3 -4 -4 -4 -3 -2 -1 0 1 2 3 4 -4 4 4 3 3 2 2 Generation 0 # 500 -1 1 -3 -2 -1 0 1 2 3 4 1 d t d 0 d t d -1 -2 -2 -3 -3 -4 -4 -4 -3 -2 -1 0 1 2 3 4 -4 -3 -2 -1 0 1 2 3 4 fitness f Zusammenfassung und Perspektiven 2 2 1.5 1.5 1 1 0.5 0.5 0 0 −0.5 −0.5 −1 −1 −1.5 −1.5 −2 0 100 200 300 400 500 600 700 Generation 800 900 1000 −2 0 100 200 300 400 500 600 700 800 900 1000 Generation Abbildung: Fitnessverläufe der beiden Evolutionsläufe. grün: maximale Fitness, blau: Mittelwert der Fitness der gesamten Population Zusammenfassung und Perspektiven fitness f fitness f Lesen von Fitnesskurven von besonderer Bedeutung bei der praktischen Arbeit mit EAs Generation Generation Zusammenfassung und Perspektiven Ansätze der Modellierung: • Beobachtung der Natur, Ökosysteme oder Verhalten eines Lebewesen und möchte dieses modellieren bzw. dahinterkommen, wie dieses funktioniert. • Aus Modell neues Verhalten entwickelen Nach kritischer Betrachtung sind Modelle wunderbare Werkzeuge der Forschung