1 / 55

3.4 Genetische und evolutionäre Algorithmen

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 3.4 Genetische und evolutionäre Algorithmen Organic Computing – Teil 3b, Folie 1 - Prof. Dr. Uwe Brinkschulte

  2. 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. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. 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

  14. 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

  15. 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

  16. 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

  17. 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

  18. 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

  19. 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

  20. 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

  21. 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

  22. 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

  23. 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

  24. 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

  25. 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

  26. 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

  27. 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

  28. 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

  29. 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

  30. 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

  31. 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

  32. 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

  33. 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

  34. 3.4 Genetische und evolutionäre Algorithmen Rekombination-Methoden:Einfache Kreuzungs-(Crossover) Methoden Organic Computing – Teil 3b, Folie 34 - Prof. Dr. Uwe Brinkschulte

  35. 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

  36. 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

  37. 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

  38. 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

  39. 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

  40. 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

  41. 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

  42. 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

  43. 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

  44. 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

  45. 3.4 Genetische und evolutionäre Algorithmen Crossover beiGenetischerProgrammierung Organic Computing – Teil 3b, Folie 45 - Prof. Dr. Uwe Brinkschulte

  46. 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

  47. 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

  48. 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

  49. 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

  50. 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

More Related