Modellierung von ökologischen Systemen und Evolutionsprozessen

Werbung
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
Herunterladen