Evolution und Algorithmen - Bioinformatics Leipzig

Werbung
Evolution und Algorithmen
Kapitel 6
Spezialvorlesung Modul 10-202-2206
(Fortgeschrittene Methoden in der Bioinformatik)
Jana Hertel
Professur für Bioinformatik
Institut für Informatik
Universität Leipzig
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
1/10
Inhaltsverzeichnis
1
Evolution und Algorithmen
Einführung
Modellierte Evolution
Ein Beispiel
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
2/10
Evolution und Algorithmen
Einführung
Evolution
.. führt zu optimiertem Verhalten von Zellen, Organen, Individuen und
Populationen.
→ Prozess zum Lösen neuer Probleme auf neue Art und Weise.
Iterativer, populationsbasierter Prozess in 2 Schritten:
1. erbliche Variation (Veränderung am Erbgut)
→ Mutation, Replikationsfehler, Rekombination
2. Selektion
→ Verwerfe Varianten, welche den Ansprüchen der Umwelt (zu 1 best. Zeitpunkt)
nicht gerecht werden
Restliche Individuen, reproduzieren sich und tragen zur nächsten Generation bei.
Neue Iteration(en)
neue Individuen mit erneutem Potenzial zur Variation
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
3/10
Evolution und Algorithmen
Einführung
Evolution trifft auf Maschinen
Probleme von Überleben und Reproduktion = nicht-lineare Interaktionen
→ Trotzdem erschafft Evolution Lösungen zum Überleben.
Lösungen sind effektiv
nahezu optimal
Modelliere Evolution am Computer wenn:
keine Heuristiken sinnvoll/verfügbar
zu großer Suchraum, Suche nach Optimum zu aufwendig
Evolutionäre Algorithmen .. beliebte Methode in Medizin, Industrie und
Bioinformatik zum Lösen komplexer Probleme.
einfach. breites Anwendungsgebiet. übertrifft klassische Optimierer.
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
4/10
Evolution und Algorithmen
Modellierte Evolution
Implementierung der Evolution
Evolutionäre Optimierungstechniken:
Population von Lösungen ↔ zufällige Variation → Selektion mit best. Ziel
Fitness := indivdueller Wert des Individuums in Relation zum gewünschten Ziel.
Evolution modelliert in Schritten:
1. Initialisierung
2. Variation
3. Selektion
+ zusätzliche Parameter und Selbstanpassung von Parametern
gehe zu 2.
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
5/10
Evolution und Algorithmen
Modellierte Evolution
1 Initialisierung
Evolution operiert auf Populationen.
- Variation und Selektion auf Individuen.
Wie repräsentiere ich ein Individuum?
Kodiere:
Probleme in reelle Zahlen, Binärstrings, etc.
→ Chromosomen, Traits, Genotyp
Variationen als Operationen auf diesen Zahlen
,→ Fitness messbar, bewertbar
,→ Zufall anwendbar
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
6/10
Evolution und Algorithmen
Modellierte Evolution
2 Variation
Eine Menge von Prozessen generiert Variationen in einer Population.
Micromutation: Punktmutationen mit schädlicher, neutraler oder günstiger
Veränderung
Macromutation: z.Bsp. Rekombination, bewegt große Bereiche genet. Materials
mit wenig, keinem oder großem Effekt
→ Deutliche Variation beider Mutationsraten in Organismen und Umwelt
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
7/10
Evolution und Algorithmen
Modellierte Evolution
3 Selektion
Entferne Lösungen die am wenigsten geeignet sind.
Überlebende = Eltern für nächste Generation → Nachwuchs mit Variation.
Auswahl anhand Bewertung jeder Lösung bzgl. Zielstellung → Fitnessfunktion f .
Fitness einer Lösung ∼ möglichst genaue Abbildung des Problems,
sonst → richtige Lösung zum falschen Problem.
Selektive Mechanismen:
Proportional Auswahl nach Anteil an relativer Fitness der Gesamtpopulation
Elitist Auswahl der besten Lösung
Tournament Sortiere Lösungen nach Score, wähle 1. Hälfte aus
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
8/10
Evolution und Algorithmen
Modellierte Evolution
Parameter und Selbstanpassung
Verschiedene Arten der Implementierung:
Variation + Selektion auf gesamter Population
1.
n Iterationen oder bis Population stagniert/konvergiert
2. Asynchrone Basis: µ Eltern um λ Nachwuchs zu erzeugen
(µ + λ) Strategie:
→ alle Lösungen konkurrieren ums Überleben
(µ, λ) Strategie:
→ nur der Nachwuchs kämpft ums Überleben, µ Eltern werden ersetzt
Selbstanpassung Eigenschaften der Variationsoperatoren evolvieren während
Evolution.
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
9/10
Evolution und Algorithmen
Ein Beispiel
Ein Beispiel
Sei F : Z3 → Z, sodass ∀a, b, c ∈ Z : f (a, b, c) = |a − b| + |b − c| + |c − a|.
Genom eines Individuums geg. durch Variablen von f , (a, b, c)
Ziel: minimiere f .
Rekombination: Crossover 2er Elterngenome
wähle Position p ∈ 0, 1, 2 zufällig aus
Kindgenome Gc aus Positionen 0, . . . , p von G0 und p + 1, . . . , n von G1
Mutation:
wähle Position p ∈ 0, 1, 2 zufällig aus
q ∈ −1, 0, 1 mit 1% Auftrittswahrscheinlichkeit
Selektion: wähle aus µ + λ, µ Individuen mit minimalem f aus.
T
Startpopulation: 50 Individuen, jedes für jedes Gen Zahl aus [−50, 50] Z.
Abbruch: keine Veränderung des Durschnitts der Werte für f über 10
Generationen.
→ ca 40 Iterationen, danach Lösung: a = b = c, z.Bsp. (4, 4, 4)
J. Hertel
Machine learning in bioinformatics K6
Bioinf - Uni Leipzig
10/10
Herunterladen