Genetische Algorithmen (GA) Jens Mueller Folie 1

Ähnliche Dokumente
Optimale Produktliniengestaltung mit Genetischen Algorithmen

Computational Intelligence

Seminararbeit zum Thema Genetische Algorithmen

Genetische Algorithmen und Evolutionsstrategien

Eine Analyse des Effektes von Lernen auf Populationsfitness und Diversität in einer NK-Fitnesslandschaft. Lars Melchior

Evolutionsstrategien

Genetische Algorithmen

Genetische Algorithmen

Genetische Programmierung

Grundlagen und Basisalgorithmus

Kapitel 13. Evolutionäre Spieltheorie. Einleitung. Evolutionäre Biologie. Übersicht 2. Alternative: Biologische Evolutionstheorie

Artificial Life und Multiagentensysteme

Hochschule Regensburg. Übung 12_3 Genetische Algorithmen 1. Spezielle Algorithmen (SAL) Lehrbeauftragter: Prof. Sauer

Informatik-Sommercamp Mastermind mit dem Android SDK

Einsatz Evolutionärer Algorithmen zur Optimierung der Tourenplanung eines Wachschutzunternehmens

A. Anhang Daubechies-Wavelets General characteristics: Compactly supported wavelets with extremal phase and highest number of vanishing moments for a

Proseminar Genetische und Evolutionäre Algorithmen Evolutionsstrategien

4 Genetische Algorithmen

Algorithmus zum Graphen-Matching. und. Anwendung zur inhaltsbasierten Bildersuche

Einführung genetischer Algorithmen mit Anwendungsbeispiel

Genetische Algorithmen

Genetische Algorithmen

Pocket Cards (Winning Probabilities) 6.1 Anzahl der Kombinationen Monte Carlo Simulation Ergebnisse 6

Optimierung. Optimierung. Vorlesung 2 Optimierung ohne Nebenbedingungen Gradientenverfahren Thomas Brox, Fabian Kuhn

9. Heuristische Suche

13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems

Algorithms for Regression and Classification

Pollards Rho-Methode zur Faktorisierung

Spiel 1: Spielerische Simulation der Hardy-Weinberg-Regel

Exkurs Modelle und Algorithmen

Genetische Algorithmen

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Evolutionäre Algorithmen Genetische Programmierung

5. Lokale Suchverfahren. Beispiel TSP: k-change Nachbarschaft. Nachbarschaft. k-opt Algorithmus

Euklidische Distanzmatrizen. Andrei Grecu

Proseminar Genetische und Evolutionäre Algorithmen

Gliederung. Kapitel 4. Lokale Suchverfahren. Meta-Heuristiken. Simulated Annealing. Lokale Suchverfahren. Optimierungsalgorithmen

Fuzzy Logik und Genetische Algorithmen für adaptive Prozesskontrolle

Evolutionäre Algorithmen

dgpf Distributed Genetic Programming Framework

Algorithmen und Datenstrukturen

Scheduling-Theorie. Mathematische Modelle und Methoden für deterministische Scheduling-Probleme. LiSA - A Library of Scheduling Algorithms

Evolutionäre Algorithmen Einführung

Heuristiken im Kontext von Scheduling

Grundlagen der Programmierung

Autogenetische Konstruktionstheorie - Evolutionärer Ansatz einer erweiterten Konstruktionstheorie

Kapitel 2: Analyse der Laufzeit von Algorithmen Gliederung

3: Zahlentheorie / Primzahlen

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15.

Proseminarvortrag. Markov-Ketten in der Biologie (Anwendungen)

Approximationsalgorithmen

Wissensbasierte Systeme

Bionische Methoden der Optimierung

Vorlesung Gesamtbanksteuerung Mathematische Grundlagen III / Marktpreisrisiken Dr. Klaus Lukas Stefan Prasser

4 Greedy-Algorithmen (gierige Algorithmen)

15. Algorithmus der Woche Das Rucksackproblem Die Qual der Wahl bei zu vielen Möglichkeiten

5 Flächenberechnung. 5.1 Vierecke Quadrat

Verbesserungsheuristiken

Dynamische Optimierung im Dienstleistungsbereich

Vier Gewinnt Nicolas Schmidt Matthias Dietsche Bernhard Weiß Benjamin Ruile Datum: Tutor: Prof. Schottenloher Spieltheorie

Kombination von Optimierung und Robustheit in der Simulation mechanischer Systeme

Vorlesung Evolutionäre Algorithmen

Seminarvortrag. Euler-Approximation. Marian Verkely TU Dortmund

Biologische Optimierung

Datenstrukturen & Algorithmen

Optimierung von Produktionsprozessen und Methoden der Qualitätssicherung

Faktorisierung ganzer Zahlen mittels Pollards ρ-methode (1975)

Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen. Clusteranalyse. Tobias Scheffer Thomas Vanck

Christian Blume, Wilfried Jakob. GLEAM General Learning Evolutionary Algorithm and Method Ein Evolutionärer Algorithmus und seine Anwendungen

Automatische Generierung von Bildoperationsketten mittels genetischer Programmierung

Klassenstufen 7, 8. Aufgabe 1 (6+6+8 Punkte). Magischer Stern:

Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke

Entwicklung einer Entscheidungssystematik für Data- Mining-Verfahren zur Erhöhung der Planungsgüte in der Produktion

Andreas Scherer. Neuronale Netze. Grundlagen und Anwendungen. vieweg

Lisa und ihre Freundin haben in den Ferien einen Kochkurs besucht. Nun versuchen sie eine Torte nach einem Rezept im Internet zu backen.

Programm WinEvo - Evolution in Populationen. Informationen zum Simulationsmodell und zur Bedienung

Algorithmische Mathematik und Programmieren

Übersicht der Vorlesung

MATHE-BRIEF. März 2012 Nr. 23 SPIELTHEORIE

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme

Evolutionsfaktoren. = Gesamtheit der Gene aller Individuen einer Population bleibt nach dem HARDY-WEINBERG-Gesetz unter folgenden Bedingungen

Vorab : Von dem indischen Mathematiker D. R. Kaprekar stammt folgender Zusammenhang :

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Grundlagen der Mathemagie

Radizieren mit dem Heron-Verfahren

Grundlagen von Rasterdaten

Bioinformatik. Lokale Alignierung Gapkosten. Silke Trißl / Ulf Leser Wissensmanagement in der. Bioinformatik

Tag der Mathematik 2016

Studienarbeit. Evolutionäre Algorithmen Grundlagen, Anwendung und Visualisierung

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik

Berechnung von Formfaktoren

Neuronales Lernen in Go Kai Brodmann

Monte-Carlo Simulation

Auswahl effizienter Regenerationsmodi unter Berücksichtigung von modiabhängigen Objekteigenschaften und Erlösen

Programmieren in C/C++ und MATLAB

Computersimulation des Qualitätstests

Dynamisches Huffman-Verfahren

Learning Expressive Linkage Rules using Genetic Programming

Transkript:

Genetische Algorithmen (GA) Jens Mueller 15.12.2004 Folie 1

Gliederung 1. Einfuehrung 2. Grundlagen Genetischer Algorithmen 2.1. Grundbegriffe 2.2. Elemente eines GAs 3. Bsp.: Magisches Quadrat 4. Anwendungsgebiete GA 5. Vergleich mit anderen Optimierungverfahren 6. Zusammenfassung Jens Mueller 15.12.2004 Folie 2

Einfuehrung I Orca Charles Darwin Schwarze Witwe Quelle: Microsoft Encarta 2001 Jens Mueller 15.12.2004 Folie 3

Einfuehrung II Einordnung: Soft Computing Soft Computing = Fuzzy Logic + Neuronale Netze + Genetische Algorithmen? Meist modellfreie Ansaetze? Approximation statt exakte Loesung? Oft schnelleres Finden einer brauchbaren Loesung (ohne tiefgehende Problemanalyse) Jens Mueller 15.12.2004 Folie 4

Wo sind wir? 1. Einfuehrung 2. Grundlagen Genetischer Algorithmen 2.1. Grundbegriffe und ihre Bedeutung 2.2. Elemente eines GAs 3. Bsp.: Magisches Quadrat 4. Anwendungsgebiete GA 5. Vergleich mit anderen Optimierungverfahren 6. Zusammenfassung Jens Mueller 15.12.2004 Folie 5

Grundbegriffe und ihre Bed: I Jens Mueller 15.12.2004 Folie 6

Grundbegriffe und ihre Bed. II Jens Mueller 15.12.2004 Folie 7

Grundbegr. und ihre Bed. III: Mutation zufaellige Veraenderung einzelner Gene in einem Chromosomen Zugriff ueber Parameter Anfangs nicht vorhandene Allele koennen (nur) durch Mutationen entstehen. Jens Mueller 15.12.2004 Folie 8

Grundbegr. und ihre Bed. IV: Crossingover Austausch eines Chromosomenstuecks (oder auch einer in anderer Weise ausgewaehlter Teilmenge der Gene) zwischen zwei Individuen. Ein-Punkt-Crossover (Abb.) Waehle zufaellig eine Trennstelle zwischen zwei Genen. (Bsp. 2) Tausche die Gensequenzen auf der einen Seite dieser Trennstelle aus Jens Mueller 15.12.2004 Folie 9

Elemente eine GAs I Ein genetischer Algorithmus besteht aus:? einer Kodierungsvorschrift fuer die Loesungskandidaten? Problemspezifisch - es gibt keine allgemeinen Regeln.? einer Anfangspopulation? zu erzeugen Meist werden einfach zufaellige Zeichenketten erzeugt; je nach gewaehlter Kodierung koennen aber auch komplexere Verfahren noetig sein.? einer Bewertungsfunktion (Fitneßfunktion) fuer die Individuen? spielt die Rolle der Umgebung? Maß fuer Guete des Individuums? problemspezifisch keine Allgemeine Regeln? einer Auswahlmethode auf der Grundlage der Fitneßfunktion? Welche Individuen werden zur Erzeugung der Nachkommen herangezogen? Jens Mueller 15.12.2004 Folie 10

Elemente eine GAs II? genetischen Operatoren, die die Loesungskandidaten aendern? Mutation? Crossover Rekombination von Chromosomen? Werten fuer verschiedene Parameter? (z.b. Populationsgroeße, Mutationswahrscheinlichkeit etc.)? einem Abbruchkriterium, z.b.? eine festgelegte Anzahl von Generationen wurde berechnet? eine festgelegte Anzahl von Generationen lang gab es keine Verbesserung? eine vorgegebene Mindestloesungsguete wurde erreicht Jens Mueller 15.12.2004 Folie 11

Elemente eine GAs III: Pseudocode var P: Menge von Individuen begin Initialisiere P Bewerte die Individuen aus P while not fertig do Waehle in P eine Teilmenge von Eltern aus Erzeuge veraenderte Nachkommen in P Bewerte die aus P end Ergebnis = bestes Individuum aus P end Jens Mueller 15.12.2004 Folie 12

Wo sind wir? 1. Einfuehrung 2. Grundlagen Genetischer Algorithmen 2.1. Grundbegriffe und ihre Bedeutung 2.2. Elemente eines GAs 3. Bsp.: Magisches Quadrat 4. Anwendungsgebiete GA 5. Vergleich mit anderen Optimierungverfahren 6. Zusammenfassung Jens Mueller 15.12.2004 Folie 13

Bps: Magische Quadrat I 4 6 5 Was ist ein Magisches Quadrat? 7 4 5 4 3 7 3x3 Matrix gefuellt mit Nummern Ziel: Summen aller Zeilen, Spalten und Diagonalen sollen 15 ergeben Diagonalen erfuellen Bed. Noch nicht (rot) Jens Mueller 15.12.2004 Folie 14

Bps: Magische Quadrat II? Kodierung? Darstellung als Liste Zeilendarstellung? ((4 6 5) (7 5 3) (4 4 7)) statt Matrixform? Konvertierungsfunktionen? Zeilendarstellung zu Spaltendarstellung? ((4 7 4) (6 5 4) (5 3 7))? Spaltendarstellung zu Diagonaldarstellung? ((4 5 7) (5 5 4 ))? Fitnessfunktion? Summe der Absolutwerte der Differenz zwischen jeder Zeile, Spalte und Diagonale und 15? Abbruchbedingung? Loesung mit Fitness = 0 Jens Mueller 15.12.2004 Folie 15

Bps: Magische Quadrat III Fitnesswerte fuer dieses Quadrat? 4 7 4 6 5 4 5 3 7 Jens Mueller 15.12.2004 Folie 16

Bps: Magische Quadrat IV? Umsetzung (Scheme)? Ausgangswerte? Population: 20? Crosslink 75? Auswahl von 60% der Besten? Mutationsrate: 1%? Durchschnittliche Anzahl benötigter Generationen um Ergebnis zu erzielen:? GA: 150 Generationen? mit Probierfunktion: zehn Tage? Matrix mit Zufallszahlen fuellen und dann pruefen Jens Mueller 15.12.2004 Folie 17

Wo sind wir? 1. Einfuehrung 2. Grundlagen Genetischer Algorithmen 2.1. Grundbegriffe und ihre Bedeutung 2.2. Elemente eines GAs 3. Bsp.: Magisches Quadrat 4. Anwendungsgebiete GA 5. Vergleich mit anderen Optimierungverfahren 6. Zusammenfassung Jens Mueller 15.12.2004 Folie 18

Anwendungsgebiete GA I Allgemein: Loesen von Optimierungsproblemen? Gegeben: ein Suchraum S? eine zu optimierende Funktion f : S? IR? ggf. einzuhaltende Nebenbedingungen? Gesucht: Ein Element s? S, das die Funktion f optimiert.? Prinzipielle Loesungsansaetze:? analytische Loesung: sehr effizient, aber nur in seltenen Faellen anwendbar? vollstaendige Durchforstung: sehr ineffizient, daher nur bei sehr kleinen Suchraeumen anwendbar? blinde Zufallssuche: immer anwendbar, aber meist sehr ineffizient? gesteuerte Suche: Voraussetzung: Funktionswerte aehnlicher Elemente des Suchraums sind aehnlich. Jens Mueller 15.12.2004 Folie 19

Anwendungsgebiete GA II Beispiele fuer Optimierugsprobleme:? Parameteroptimierung? z.b. Kruemmung von Rohren fuer minimalen Widerstand? Packprobleme? Z.B. Packen moeglichst weniger Container mit gegebenen Guetern (Hamburger Hafen)? Wegeprobleme? Problem des Handlungsreisenden? Z.B. Verlegen von Leiterbahnen auf Platinen und in integrierten Schaltkreisen Jens Mueller 15.12.2004 Folie 20

Anwendungsgebiete GA III? Anordnungsprobleme? z.b. Positionierung von Verteilerknoten in einem Telefonnetz? Planungsprobleme? z.b. Ablaufplaene (Scheduling)? Strategieprobleme? Gefangenendilemma? Modelle der Spieltheorie? biologische Modellbildung Jens Mueller 15.12.2004 Folie 21

Anwendungsgebiete IV? Kleiner Exkurs Gefangendillema? bekannteste Problem der Spieltheorie (engl.: prisoner s dilemma)? Zwei Personen haben einen Bankueberfall begangen und werden verhaftet.? Die Beweise reichen jedoch nicht aus, um sie in einem Indizienprozeß wegen des Bankueberfalls zu verurteilen.? Die Beweise reichen jedoch aus, um sie wegen eines geringfuegigeren Deliktes? (z.b. unerlaubter Waffenbesitz) zu verurteilen (Strafmaß: 1 Jahr Gefaengnis).? Angebot des Staatsanwaltes: Kronzeugenregelung? Gesteht einer der beiden die Tat, wird er Kronzeuge und nicht verurteilt.? Der andere dagegen wird mit voller Haerte bestraft (10 Jahre Gefaengnis)? Problem: Gestehen beide, gilt die Kronzeugenregelung nicht. Da sie jedoch beide gestaendig sind, erhalten sie mildernde Umstaende zugesprochen (Strafe: je 5 Jahre Gefaengnis)? Viele Alltagssituation lassen sich mit dem Gefangenendilemma beschreiben. Jens Mueller 15.12.2004 Folie 22

Wo sind wir? 1. Einfuehrung 2. Grundlagen Genetischer Algorithmen 2.1. Grundbegriffe und ihre Bedeutung 2.2. Elemente eines GAs 3. Bsp.: Magisches Quadrat 4. Anwendungsgebiete GA 5. Vergleich mit anderen Optimierungverfahren 6. Zusammenfassung Jens Mueller 15.12.2004 Folie 23

Vergleich mit anderen Optimierungsverfahren I Optimierungsverfahren deterministisch Nicht-deterministisch z.b. z.b. Simplexverfahren Monte-Carlo Gauß-Seidel Strategie Genetische Algorithmen Gradientenverfahren Jens Mueller 15.12.2004 Folie 24

Vergleich mit anderen Optimierungsverfahren II Bsp. Deterministisch allesamt hill-climbing Strategien Verhalten sich prinzipiell, wie Bergsteiger, der um zum Gipfel zu kommen sich immer an dem lokalen Anstieg orientiert und sich bevorzugt dorthin bewegt, wo ein Anstieg festzustellen ist. Jens Mueller 15.12.2004 Folie 25

Vergleich mit anderen Optimierungsverfahren III nicht deterministische Grundidee bei der Suche nach Optima in großen Suchraeumen von Zufall gebrauch zu machen Zufall ist nicht Willkuer Gefahr Optima zu verspassen ist im Gegensatz zu deterministische Verfahren bei einer gleichmaeßigen Streuung relativ gering Jens Mueller 15.12.2004 Folie 26

Vergleich mit anderen Optimierungsverfahren IV? Ziel: Berechngung des Flaecheninhalts einer komplizierten Flaeche? det. Verf:? zerlegt Flaeche in mehr oder weniger große Zahl einfacher Flaechen (z.b. Dreiecke) Gesamtflaeche ergibt sich approximativ als Summe der einfacheren Flaeche? Monte-Carlo Verfahren? man zeichnet um die zu berechnende Flaeche ein Quadrat (oder Rechteck)? man erzeugt zufaellig Punkte innerhalb des Quadrates? wichtig Pkt. muessen mit gleicher Wahrscheinlichkeit erzeugt werden? Q*(t/r)? Q Flaeche des Quadrates? r Anzahl aller Punkte? t Anzahl aller Treffer (= Punkte innerhalb der zu berechnenden Flaeche)? je groeßer die Gesamtzahl der generierten Punkte desto genauer wird die Berechnung Jens Mueller 15.12.2004 Folie 27

Vergleich mit anderen Optimierungsverfahren V? Genetische Algorithmen sind recht teure Optimierungsverf., da oft? mit einer großen Population (einige tausend bis einige zehntausend Individuen)? mit einer großen Zahl an Generationen (einige hundert) gearbeitet werden muss, um eine hinreichende Loesungsguete zu erreichen.? Dieser Nachteil wird zwar durch eine oft etwas hoehere Loesungsguete im Vergleich zu anderen Verfahren wettgemacht, trotzdem kann die Laufzeit eines genetischen Algorithmus unangenehm lang sein.? Loesungsansatz: Parallelisierung,? d.h. die Verteilung der notwendigen Operationen auf mehrere Prozessoren. Jens Mueller 15.12.2004 Folie 28

Zusammenfassung Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions you might not otherwise find in a lifetime. Salvatore Mangano Computer Design, May 1995 Jens Mueller 15.12.2004 Folie 29

Quellen? Schöneburg, Heinzmann, Federsen: Genetische Algorithmen und Evolutionsstrategien Eine Einfuehrung in Theorie und Praxis der simulierten Evolution. Addison-Wesley Bonn 1994? Grillmeyer, Oliver: Exploring Computer Science with Scheme. Springer New York 1998? Borgelt, Christian: Vorlesung SoSe2004 - Genetische Algorithmen. Magdeburg? c t 11/1993 Modell Natur Jens Mueller 15.12.2004 Folie 30

Frohe Weihnachten und einen guten Rutsch ins neue Jahr!!! Jens Mueller 15.12.2004 Folie 31