3 4 genetische und evolution re algorithmen
This presentation is the property of its rightful owner.
Sponsored Links
1 / 55

3.4 Genetische und evolutionäre Algorithmen PowerPoint PPT Presentation


  • 52 Views
  • Uploaded on
  • Presentation posted in: General

3.4 Genetische und evolutionäre Algorithmen. Evolutionäre Biologie. Informatik. Evolutionäre Algorithmen. 3.4 Genetische und evolutionäre Algorithmen. Evolutionäre Algorithmen. Zu den evolutionären Algorithmen gehören: Genetische Algorithmen Genetische Programmierung

Download Presentation

3.4 Genetische und evolutionäre Algorithmen

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Organic Computing – Teil 3b, Folie 1 - Prof. Dr. Uwe Brinkschulte


Evolution re algorithmen

Evolutionäre

Biologie

Informatik

Evolutionäre

Algorithmen

3.4 Genetische und evolutionäre Algorithmen

Evolutionäre Algorithmen

Zu den evolutionären Algorithmen gehören:

  • Genetische Algorithmen

  • Genetische Programmierung

  • Evolutionäre Programmierung

  • Evolutionäre Strategien

Organic Computing – Teil 3b, Folie 2 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Diese unterschiedlichen Techniken wurden teilweisezeitgleich von unabhängig arbeiten Wissenschaftlern entwickeltSie weisen bestimmte Unterschiede z.B. in der Art der Initialisierung oder bei Details der Vorgehensweise auf,nutzen jedoch alle das Prinzip der EvolutionEs sind heuristische Optimierungsverfahren, die besonders für analytisch schwer oder nicht lösbare Probleme eingesetzt werden

Genetische Algorithmen (John H. Holland, David E. Goldberg)

Genetische Programmierung (John R. Koza)

Evolutionäre Programmierung (Lawrence J. Fogel)

Evolutionäre Strategien (Hans-Paul Schwefel, Ingo Rechenberg)

Organic Computing – Teil 3b, Folie 3 - Prof. Dr. Uwe Brinkschulte


Grundlegende vorgehensweise

3.4 Genetische und evolutionäre Algorithmen

Grundlegende Vorgehensweise:

Eltern

(Ausgewählte Lösungs-kandidaten)

Selektion

Population

(Menge von Lösungs-kandidaten)

Rekombination,Mutation

Ersetzung,Ergänzung

Nachwuchs

(Neue Lösungs-kandidaten)

Organic Computing – Teil 3b, Folie 4 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Begriff

Biologische Erläuterung

In der Informatik

Population

Menge von Lebewesen

Menge von Lösungskandidaten

Eltern, Parents, Matepool

Sich paarende Untermenge der Population

Ausgewählte Lösungs-kandidaten zur Erzeu-gung neuer Kandidaten

Kinder, Children, Offspring

Nachwuchs

Neue Lösungskandidaten

Eine Generation von Lebewesen

Eine Generation von Lösungskandidaten

Generation

Angepasstheit eines Lebewesens

Gibt die Qualität eines Lösungskandidaten wieder

Fitness

Organic Computing – Teil 3b, Folie 5 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Begriff

Biologische Erläuterung

In der Informatik

Selektion

Auswahl paarungs-geeigneter Lebewesen aus der Population

Auswahl von Lösungs-kandidaten zur Erzeugung der nächsten Generation

Rekombination, Kreuzung, Crossover

Neue Lebewesen durch Mischung der Elterneigenschaften

Neue Lösungskandi-daten durch Mischung der Elterneigenschaften

Mutation

Zufällige Veränderungen bei den neuen Lebewesen

Zufällige Veränderungen bei den neuen Lösungskandidaten

Organic Computing – Teil 3b, Folie 6 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Begriff

Biologische Erläuterung

In der Informatik

Auswirkung eines Selektionsfaktors auf die Population

Selektionsdruck

Auswirkung eines Selektionsfaktors auf die Population

Unterschiedlichkeit der Lebewesen in der Population

Diversität

Unterschiedlichkeit der Lösungskandidaten in der Population

Spread

-

Unterschied der Anzahl erwarteter und erzeugter Lösungskandidaten bei der Selektion

Genetische Ausstattung eines Lebewesens

Genetische Kodierung eines Lösungskandidaten

Genotyp

Phänotyp

Körperlichen Merkmale eines Lebewesens

Eigenschaften eines Lösungskandidaten

Organic Computing – Teil 3b, Folie 7 - Prof. Dr. Uwe Brinkschulte


Genotyp und ph notyp

100001

101011

111011

3.4 Genetische und evolutionäre Algorithmen

Genotyp und Phänotyp

Suchraum

Lösungsraum

Genotyp

Phänotyp

Zur Erzeugung neuer Lösungskandidaten(Rekombination, Mutation) werden Prinzipien der Genetik verwendet

Organic Computing – Teil 3b, Folie 8 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Begriff

Biologische Erläuterung

In der Informatik

Chromosom

Legt die Eigenschaften eines Lebewesens fest

String

Gen

Einzelnes Teilstück eines Chromosoms

Zeichen

Allele

Ausprägung eines Gens

Wert eines Zeichens

Locus

Ort eines Gens

Position eines Zeichen

Organic Computing – Teil 3b, Folie 9 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Allele=1

Chromosom(string)

0

1

0

1

1

1

1

0

1

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

Locus=2

Organic Computing – Teil 3b, Folie 10 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Genetische Codierung von Lösungskandidaten:Zur Darstellung von Lösungskandidaten (Individuen) muss deren Genotyp definiert werden.Dies heißt, es muss eine Codierung für die Gene bzw. Chromosome festgelegt werden.Diese können dann entweder direkt den Phänotyp festlegen (Direct Representation, Genotyp ~ Phänotyp) oder indirekt die Eigenschaften bestimmen (Parameter Repräsentation, Genotyp -> Phänotyp)

Organic Computing – Teil 3b, Folie 11 - Prof. Dr. Uwe Brinkschulte


M gliche codierungen

3.4 Genetische und evolutionäre Algorithmen

Mögliche Codierungen

  • Binäre Codierung:

  • Chromosome werden als Strings von 1en und 0en dargestellt.

  • Beispiel (Rucksackproblem): Bit gibt Auskunft, ob korrespondierende Sache im Rucksack ist

  • Wert Codierung:

  • Chromosome werden als Strings von Werten dargestellt.

  • Beispiel neuronales Netzwerk: Die reellen Werte im Chromosom stellen die zu den Eingaben korrespondierenden Gewichte dar.

Organic Computing – Teil 3b, Folie 12 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Permutation Codierung:

  • Chromosome werden als Strings von Zahlen dargestellt. Die Zahlen liegen in einem Tupel vor.

  • Beispiel (TSP): Chromosom gibt die Reihenfolge wieder in denen die Städte besucht werden.

    • Baum Codierung:

  • Chromosome werden als Bäume dargestellt.

  • Beispiel (Finden einer Funktion durch gegebene Werte): Chromosome sind Funktionen, die in einem Baum repräsentiert sind.

Organic Computing – Teil 3b, Folie 13 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Beispiel: Codierung einer LCS Regel

  • Bedingung Aktion Erwartete Belohnung

  • 011##10# 010 23

  • mit der Wert Codierung

  • 0 -> 0, 1 -> 1, # -> 2

  • ergibt sich folgendes Chromosom:

  • 0 1 1 2 2 1 0 2 0 1 0

  • (Kodiert werden die Teile der Regel, die man durch den genetischen Algorithmus verändern möchte, d.h. Bedingung und Aktion. Die erwartete Belohnung kann bspw. als Fitness dienen)

Organic Computing – Teil 3b, Folie 14 - Prof. Dr. Uwe Brinkschulte


Selektionsmethoden

3.4 Genetische und evolutionäre Algorithmen

Selektionsmethoden

  • Die Selektion von Individuen orientiert sich an ihrer Fitness.

  • Fitte Individuen werden mit höherer Wahrscheinlichkeit

  • ausgewählt.

  • Dies kann z.B. mit folgenden Methoden erfolgen:

  • Roulette Methoden

  • Remainder Stochastic Sampling

  • Boltzmann Methode

  • Turnier Methode

  • Rang Methode

  • Truncation Selection

Organic Computing – Teil 3b, Folie 15 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Roulette-MethodenBei den Roulette-Methoden werden die Individuen auf einemRoulette-Rad angeordnet. Ein Individuum erhält eine seiner Fitness entsprechende Anzahl von Feldern.

Organic Computing – Teil 3b, Folie 16 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Roulette-Methoden: Stochastic SamplingBeim Stochastic Sampling wird für jedes zu selektierende Individuum die Kugel gerollt, d.h. mittels einer Zufallszahlein Individuum bestimmt.Dies entspricht einer Auswahl mit Zurücklegen, da einausgewähltes Individuum erneut an weiteren Selektionenteilnimmt

Kugel

Organic Computing – Teil 3b, Folie 17 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Roulette-Methoden: Stochastic SamplingVor- und Nachteile:+ auch Individuen mit geringer Fitness erhalten eine Chance-geringer Evolutionsdruck, da niedrige Fitness nicht zwangsweise bestraft wird-hoher Spread, da durch das Zurücklegen ein Individuum ggf. unerwünschterweise mehrfach gewählt wird

Organic Computing – Teil 3b, Folie 18 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Roulette-Methoden: Universal Stochastic SamplingHier wird nur einmal die Kugel gerollt, all zu selektierende Individuen werden durch äquidistante Abstände zum Ergebnis bestimmt

Distanz

Kugel

Organic Computing – Teil 3b, Folie 19 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Roulette-Methoden: Universal Stochastic SamplingVorteile gegenüber Stochastic Sampling:+nur eine Zufallszahl erforderlich+minimaler Spread, da äquidistant gewählt wird

Organic Computing – Teil 3b, Folie 20 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Remainder Stochastic Sampling2-stufiges Verfahren1. Von jedem Individuum wir eine Anzahl Kopien übernommen gemäß folgenden Formeln Der ganzzahlige Anteil von Anzi wird also direkt übernommen

Organic Computing – Teil 3b, Folie 21 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Remainder Stochastic Sampling2. Falls nach Ausführung des ersten Schritts für alle Individuen der Population die Anzahl zu selektierender Individuen noch nicht vollständig ist, wird der gebrochene Anteil von Anzi als Wahrscheinlichkeitpi zum Auffüllen benutzt. Hierfür gibt es zwei Techniken

Organic Computing – Teil 3b, Folie 22 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Remainder Stochastic Sampling2a: Mit Zurücklegen (Roulette) Gemäß den Wahrscheinlichkeiten pi werden die Individuen auf den Roulette Rad angeordnet und die Kugel gerollt, bis die Anzahl zu selektierender Individuen vollständig ist2b: Ohne Zurücklegen (Münzwurf) Für jedes Individuum wird eine Münze geworfen, wobei pi die Wahrscheinlichkeit von "Kopf" bedeutet. Bei "Kopf" wird das Individuum übernommen, bei "Zahl" nicht. Die Reihenfolge der Würfe richtet sich nach absteigender Kopfwahrscheinlichkeit

Organic Computing – Teil 3b, Folie 23 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Remainder Stochastic SamplingBeispiel:Individuum 1 Fitness 5Individuum 2 Fitness 7Individuum 3 Fitness 3Individuum 4 Fitness 2

Anz1 = 6 * 5/17 = 1.76

Anz2 = 6 * 7/17 = 2.47

Anz3 = 6 * 3/17 = 1.05

Anz4 = 6 * 2/17 = 0.70

 = 17

Es seien 6 Individuen zu selektieren

1. Schritt: Individuum 1 wird 1 mal genommen

Individuum 2 wird 2 mal genommen

Individuum 3 wird 1 mal genommen

Individuum 4 wird 0 mal genommen

Organic Computing – Teil 3b, Folie 24 - Prof. Dr. Uwe Brinkschulte


Remainder stochastic sampling beispiel

3.4 Genetische und evolutionäre Algorithmen

Remainder Stochastic SamplingBeispiel:

2. Schritt, Variante a

Individuum 1: 76 Felder auf dem Roulette Rad (~ 0.76) Individuum 2: 47 Felder auf dem Roulette Rad (~ 0.47)

Individuum 3: 5 Felder auf dem Roulette Rad (~ 0.05)

Individuum 4: 70 Felder auf dem Roulette Rad (~ 0.70)

Das Roulette Rad hat insgesamt also 198 Felder

Es wird die Kugel geworfen, bis die restlichen 2 Individuen selektiert sind.

Organic Computing – Teil 3b, Folie 25 - Prof. Dr. Uwe Brinkschulte


Remainder stochastic sampling beispiel1

3.4 Genetische und evolutionäre Algorithmen

Remainder Stochastic SamplingBeispiel:

2. Schritt, Variante b

Individuum 1: Wahrscheinlichkeit "Kopf" 0.76

Individuum 2: Wahrscheinlichkeit "Kopf" 0.47

Individuum 3: Wahrscheinlichkeit "Kopf" 0.05

Individuum 4: Wahrscheinlichkeit "Kopf" 0.70

Mit absteigender Kopfwahrscheinlichkeit (hier also in der Reihenfolge 1 4 2 3) wird für jedes Individuum nun die Münze geworfen, bis die restlichen 2 Individuen selektiert sind.

Organic Computing – Teil 3b, Folie 26 - Prof. Dr. Uwe Brinkschulte


Remainder stochastic sampling

3.4 Genetische und evolutionäre Algorithmen

Remainder Stochastic Sampling

  • Vor- und Nachteile:

  • + Größere Wahrscheinlichkeit von Diversität

  • + Selektionswahrscheinlichkeiten ändern sich mit jeder Generation

  • + Kein Chromosom hat eine künstliche Selektionswahrscheinlichkeit von Null

  • - Die besten Chromosome überleben immer

Organic Computing – Teil 3b, Folie 27 - Prof. Dr. Uwe Brinkschulte


Boltzmann selektion

3.4 Genetische und evolutionäre Algorithmen

Boltzmann Selektion

  • Bestimmung der Selektionswahrscheinlichkeit mithilfe einer Temperaturvariablen

  • Der Wert der Temperaturvariablen sinkt von Generation zur Generation

  • Vor- und Nachteile:

    + Bestes Chromosom besitzt die größte Selektionswahr- scheinlichkeit, aber keine Überlebensgarantie

  • - Bestimmung der Abkühlungsfunktion

Organic Computing – Teil 3b, Folie 28 - Prof. Dr. Uwe Brinkschulte


Turnier methode

3.4 Genetische und evolutionäre Algorithmen

Turnier Methode

  • Zufällige Wahl von 2  k  n Individuen aus der Population

  • Das Individuum mit der höchsten Fitness gewinnt

  • Fortführung des Turniers bis alle Individuen ausgewählt sind

  • Dies kann mit oder ohne Zurücklegen erfolgen

Organic Computing – Teil 3b, Folie 29 - Prof. Dr. Uwe Brinkschulte


Turnier methode1

3.4 Genetische und evolutionäre Algorithmen

Turnier Methode

Vor- und Nachteile:

+Geringer Rechenaufwand

+Leicht parallelisierbar

+ Keine Notwendigkeit die Fitnesswerte aller Individuen im vorhinein zu berechnen

+ Vermeidung des Dominanzproblems, variabler Selektionsdruck

  • - Individuum mit niedrigster Fitness ist nicht selektierbar

Organic Computing – Teil 3b, Folie 30 - Prof. Dr. Uwe Brinkschulte


Rang methode

3.4 Genetische und evolutionäre Algorithmen

Rang Methode

  • Sortierung der Individuen nach der Fitness => Ranking

  • Die Auswahlwahrscheinlichkeit wird proportional zum Rang gewählt

    Beispiel

    Individuum 1 : Fitness 80 => Rang 1, Wahrscheinlichkeit 75%

    Individuum 2 : Fitness 10 => Rang 2, Wahrscheinlichkeit 50%

    Individuum 3 : Fitness 8 => Rang 3, Wahrscheinlichkeit 25%

Organic Computing – Teil 3b, Folie 31 - Prof. Dr. Uwe Brinkschulte


Rang methode1

3.4 Genetische und evolutionäre Algorithmen

Rang Methode

Vor- und Nachteile:

+ Selektionswahrscheinlichkeit steht nicht mehr im direkten

Verhältnis zur Fitness

+ Vermeidung des Dominanzproblems, da variabler

Selektionsdruck über Wahl der Wahrscheinlichkeiten

-Sortierung

Organic Computing – Teil 3b, Folie 32 - Prof. Dr. Uwe Brinkschulte


Truncation selektion

3.4 Genetische und evolutionäre Algorithmen

Truncation Selektion

  • Sortierung der Individuen nach der Fitness

  • Wahl eines Truncation Schwellwertes T

  • Nur die Besten kommen weiter

  • Jedes ausgewählte Individuum wird gleich oft gewählt

    Vor- und Nachteile:

  • Relativ unübliches Verfahren

  • Sortierung

  • Individuen mit geringer Fitness werden nicht gewählt

Organic Computing – Teil 3b, Folie 33 - Prof. Dr. Uwe Brinkschulte


Rekombination methoden einfache kreuzungs crossover methoden

3.4 Genetische und evolutionäre Algorithmen

Rekombination-Methoden:Einfache Kreuzungs-(Crossover) Methoden

Organic Computing – Teil 3b, Folie 34 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Beispiel: Kreuzung zweier LCS Regeln

Bedingung Aktion Erwartete Belohnung

011##10# 010 23

0101#101 011 29

Two-point Crossover (Wert Codierung wie vorher):

0 1 1 2 2 1 0 2 0 1 0 0 1 1 1 2 1 0 1 0 1 0

0 1 0 1 2 1 0 1 0 1 1 0 1 0 2 2 1 0 2 0 1 1

Neue Regeln (Erwartete Belohnung: Mittelwert)

Bedingung Aktion Erwartete Belohnung

011##10# 010 23

0101#101 011 29

0111#101 010 26

010##10# 011 26

Organic Computing – Teil 3b, Folie 35 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Rekombination-Methoden: komplexere Kreuzungs-MethodenCycle Crossover:Erzeuge einen Nachkommen aus zwei Eltern wie folgt1. Wähle einen Locus2. Übernimm das dortige Gen aus Elternteil 13. Suche das dortige Gen aus Elternteil 2 in Elternteil 14. Wenn gefunden und dieser Locus nicht schon gewählt war, nimm dies als neuen Locus und gehe zu 1.5. Übernimm die restlichen Gene aus Elternteil 2

Organic Computing – Teil 3b, Folie 36 - Prof. Dr. Uwe Brinkschulte


Beispiel

3.4 Genetische und evolutionäre Algorithmen

Beispiel

Problemdes Handlungsreisenden (TSP): Zu gegebenen n Punkten

ist eine möglichst kurze Rundreise gesucht.

Repräsentation: 1 2 3 4 5 6 7 8 9 10

Cycle Crossover

A=

9

8

2

1

7

4

5

10

6

3

B=

1

2

3

4

5

6

7

8

9

10

A*=

9

_

_

_

_

_

_

_

_

_

A*=

9

_

_

1

_

_

_

_

_

_

A*=

9

_

_

1

_

4

_

_

_

_

A*=

9

_

_

1

_

4

_

_

6

_

A*=

9

2

3

1

5

4

7

8

6

10

Organic Computing – Teil 3b, Folie 37 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Rekombination-Methoden: komplexere Kreuzungs-MethodenOrder Crossover:Erzeuge zwei Nachkommen aus zwei Eltern wie folgt1. Wähle einen Locusbereich der Elterngene2. Erzeuge einen Nachkommen aus einem Elternteil, in dem alle Gene kopiert werden bis auf die, die im gewählten Locusbereich im jeweils anderen Elternteils liegen3. Verschiebe die Gene beginnend hinter dem gewählten Locusbereich derart, dass alle fehlenden Gene im Locusbereich zu liegen kommen4. Im gewählten Locusbereich werden die Gene des jeweils anderen Elternteils übernommen

Organic Computing – Teil 3b, Folie 38 - Prof. Dr. Uwe Brinkschulte


Beispiel order crossover

3.4 Genetische und evolutionäre Algorithmen

Beispiel: Order Crossover

A=

9

8

2

1

7

4

5

10

6

3

B=

1

2

3

4

5

6

7

8

9

10

A*=

9

8

2

1

7

_

_

10

_

3

B*=

_

2

3

_

5

6

_

8

9

10

A*=

2

1

7

_

_

_

10

3

9

8

B*=

3

5

6

_

_

_

8

9

10

2

A*=

2

1

7

4

5

6

10

3

9

8

B*=

3

5

6

1

7

4

8

9

10

2

Organic Computing – Teil 3b, Folie 39 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Mutations-Methoden: Punkt Mutation

11101011000

11101001000

Mehr-Punkt Mutation

11011011000

11101001000

Wähle an zufälligen Stellen einen anderen Wert. Bei nicht binärer Codierung wird dieser Wert ebenfalls zufällig aus demWertebereich gewählt

Organic Computing – Teil 3b, Folie 40 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Beispiel: Mutation einer LCS Regel

Bedingung Aktion Erwartete Belohnung

011##10# 010 23

Mehr-Punkt Mutation (Wert Codierung wie vorher):

0 1 1 2 2 1 0 2 0 1 0 0 1 1 1 2 1 0 0 1 1 0

Neue Regel

Bedingung Aktion Erwartete Belohnung

0111#100 110 23

Organic Computing – Teil 3b, Folie 41 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

  • Ersetzung und Ergänzung:Hierfür gibt es mehrere Möglichkeiten Die Nachkommen ergänzen die Eltern => zunehmende Population Die Nachkommen verdrängen die Eltern => konstante Population Die Nachkommen ergänzen die Eltern, weniger fitte oder zufällig gewählte Individuen werden dafür aus der Population entfernt (Steady State) => konstante Population

Organic Computing – Teil 3b, Folie 42 - Prof. Dr. Uwe Brinkschulte


Genetischer algorithmus

3.4 Genetische und evolutionäre Algorithmen

Genetischer Algorithmus

  • Fitness: Funktion die einen Evaluierungswert ausgibt

  • Fitness-Threshold : Abbruchkriterium

  • p: Anzahl der Individuen in der Population

  • r: Anteil der Population, der durch den Crossover Operator ersetzt wird

  • m: Mutationsrate

  • While [maxFitnessi<Fitness-Threshold]{

  • 1. Selektion: Wähle r * p Individuen aus der Population aus

  • 2. Crossover: Erzeuge mittels Kreuzung r * p Nachkommen aus den ausgewählten Individuen

  • 3. Mutation: Wähle mit uniformer Wahrscheinlichkeit m Prozent der erzeugten Nachkommen aus und mutiere sie

  • 4. Ersetzen: Ersetze r * p Individuen aus der Population durch die erzeugten Nachkommen

  • 5. Evaluieren: Für jedes neue Individuum berechne Fitnessi

  • Gebe das Individuum bzw. die Individuen mit der höchsten Fitness aus.

Organic Computing – Teil 3b, Folie 43 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Genetische Programmierung:variiert Programme nach den besprochenen Prinzipien.Anwendungsbeispiel: Funktion zugegebener Wertereihe finden

+

sin

x

+

^

y

x

2

Organic Computing – Teil 3b, Folie 44 - Prof. Dr. Uwe Brinkschulte


Crossover bei genetischer programmierung

3.4 Genetische und evolutionäre Algorithmen

Crossover beiGenetischerProgrammierung

Organic Computing – Teil 3b, Folie 45 - Prof. Dr. Uwe Brinkschulte


Evolution re programmierung

3.4 Genetische und evolutionäre Algorithmen

Evolutionäre Programmierung

  • Initialisierung der Population mit zufälligen Individuen und zufällig mutierten Individuen

  • Berechnung der Fitness

  • Verwende die Turniermethode zur Wahl eines Elternteils

  • Generierung des Kinds durch Mutation einer Kopie des Elternteils

  • Wenn sich die Populationsgröße verdoppelt hat dann gehe zu Schritt 6, ansonsten zu Schritt 3

  • Berechnung der Fitness aller Kinder

  • Entferne die Hälfte der Population mit der niedrigsten Fitness

  • Überprüfung der Terminierungsbedingung. Wenn Terminierungsbedingung nicht erfüllt gehe zu Schritt 3 ansonsten Ende

Organic Computing – Teil 3b, Folie 46 - Prof. Dr. Uwe Brinkschulte


Evolution re strategie

3.4 Genetische und evolutionäre Algorithmen

Evolutionäre Strategie

  • Initialisierung der Elterngeneration

  • Wähle zufällig Eltern aus der Elterngeneration

  • Verwende zufällige Rekombination um die Kindergeneration zu erzeugen

  • Mutiere die Kinder

  • Wenn die Kindergeneration vollständig ist gehe zu Schritt 6, ansonsten zu Schritt 2

  • Berechnung der Fitness der Kinder

  • Selektiere neue Eltern von den fittesten der Kindergeneration (und Elterngeneration) und erzeuge damit die neue Elterngeneration

  • Überprüfung der Terminierungsbedingung. Wenn Terminierungsbedingung nicht erfüllt gehe zu Schritt 2 ansonsten Ende

Organic Computing – Teil 3b, Folie 47 - Prof. Dr. Uwe Brinkschulte


Vorteile und nachteile evolution rer algorithmen

Vorteile

Kann Suchraum in mehrere Richtung untersuchen

schnell zu implementieren.

Praktisch auf alle Problemarten anwendbar

Nachteile

Keine Sicherheit ob Ergebnis optimal ist.

Bestimmung der Mutations- und Crossoveroperatoren.

Relativ langsam.

3.4 Genetische und evolutionäre Algorithmen

Vorteile und NachteileEvolutionärer Algorithmen

Organic Computing – Teil 3b, Folie 48 - Prof. Dr. Uwe Brinkschulte


Hill climbing

Nachteile

Probleme mit lokalen Optima.

Bestimmung der Schrittweite.

Vorteile

Leicht implementierbar.

Benötigt keine Speicherung, da kein Backtracking verwendet wird.

3.4 Genetische und evolutionäre Algorithmen

Hill Climbing

Vergleich zu anderen Optimierungsverfahren

  • Gehe immer in Richtung der größten Steigung.

  • Terminiert, wenn kein besserer Folgezustand mehr existiert.

Organic Computing – Teil 3b, Folie 49 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

3.4 Genetische und evolutionäre Algorithmen

Vergleich zu anderen Optimierungsverfahren

Simulated-Annealing

Kombination aus Hill Climbing und zufälligem Weitergehen

Organic Computing – Teil 3b, Folie 50 - Prof. Dr. Uwe Brinkschulte


3 4 genetische und evolution re algorithmen

Vorteile

Einfacher ein lokales Optimum zu verlassen.

Breite Anwendbarkeit.

Nachteile

Finden der passenden Abkühlungsfunktion für ein konkretes Suchproblem.

3.4 Genetische und evolutionäre Algorithmen

Vergleich zu anderen Optimierungsverfahren

Simulated-Annealing

Organic Computing – Teil 3b, Folie 51 - Prof. Dr. Uwe Brinkschulte


Ameisenkolonieoptimierung z b f r k rzeste wege

Vorteile

Nachteile

Breite Anwendbarkeit

Schnelle Adaption bei Ausfall des kürzesten Weges

Fehlende Adaption an neu hinzugefügte kürzere Wege.

Kreise

3.4 Genetische und evolutionäre Algorithmen

Ameisenkolonieoptimierung, z.B. für kürzeste Wege

Vergleich zu anderen Optimierungsverfahren

Organic Computing – Teil 3b, Folie 52 - Prof. Dr. Uwe Brinkschulte


Teilchenschwarmoptimierung

3.4 Genetische und evolutionäre Algorithmen

Teilchenschwarmoptimierung

Vergleich zu anderen Optimierungsverfahren

  • Modellierung des Schwarmverhalten

  • Individuen sind im Suchraum eines Problems oder Funktion verteilt

  • Jedes Individuum evaluiert die Zielfunktion an seiner Position

  • Individuum bestimmt nächsten Schritt mittels

  • Seiner aktuellen Position

  • Seiner aktuell besten Position

  • Aktuell beste Position, die es durch Kommunikation mit Schwarmmitgliedern erfahren hat.

  • Zufall

  • Jedes Individuum ist definiert durch

  • Aktuelle Position

  • Beste gewesene Position

  • Geschwindigkeit

Organic Computing – Teil 3b, Folie 53 - Prof. Dr. Uwe Brinkschulte


Teilchenschwarmoptimierung1

Nachteile

Lokale Optima  Konvergenz

Vorteile

Relativ leicht implementierbar

Breite Anwendbarkeit

3.4 Genetische und evolutionäre Algorithmen

Teilchenschwarmoptimierung

Vergleich zu anderen Optimierungsverfahren

Organic Computing – Teil 3b, Folie 54 - Prof. Dr. Uwe Brinkschulte


Literatur

3.4 Genetische und evolutionäre Algorithmen

Literatur

I. Gerdes, F. Klawonn, R. Kruse, Evolutionäre Algroithmen, Vieweg, 2004.

S. Rusell , P. Norvig Künstliche Intelligenz, Pearson Studium 2003.

P. J. Bentley, D. W. Corne Creative Evolutionary Systems, 2002.

A.P.Engelbrecht Computational Swarm Intelligence, 2006

T. Mitchell, Machine Learning, McGraw Hill, 1997

Organic Computing – Teil 3b, Folie 55 - Prof. Dr. Uwe Brinkschulte


  • Login