Exkurs Modelle und Algorithmen

Ähnliche Dokumente
Verbesserungsheuristiken

Betriebliche Optimierung

10. Vorlesung Stochastische Optimierung

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

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

Adaptive Systeme. Prof. Dr.-Ing. Heinz-Georg Fehn Prof. Dr. rer. nat. Nikolaus Wulff

kurze Wiederholung der letzten Stunde: Neuronale Netze Dipl.-Inform. Martin Lösch (0721) Dipl.-Inform.

Optimale Produktliniengestaltung mit Genetischen Algorithmen

Praktikum Simulationstechnik Rene Schneider, Benjamin Zaiser

Konstruktive Heuristiken

11. Übung zu Algorithmen I 6. Juli 2016

(hoffentlich kurze) Einführung: Neuronale Netze. Dipl.-Inform. Martin Lösch. (0721) Dipl.-Inform.

Anhang: Ungarische Methode

1 Heuristiken für das Traveling Salesman Problem

Genetische Algorithmen

Kodierung Genetische Algorithmen und Simulated Annealing

Heuristische Verfahren

Künstliche Intelligenz - Optimierungsprobleme - Suche in Spielbäumen

Theoretische Grundlagen der Informatik

Von der Mikro- zur Makroevolution... (2)

Survival of the Fittest Optimierung mittels Genetischer Algorithmen

Konstruktions-Verbesserungsheuristiken. Iterierte lokale Suche (ILS)

4.3.3 Simplexiteration

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Reinforcement Learning

Analyse eines zweistufigen, regionalen Clusteralgorithmus am Beispiel der Verbundenen Wohngebäudeversicherung

Adaptive Systeme. Prof. Dr.-Ing. Heinz-Georg Fehn Prof. Dr. rer. nat. Nikolaus Wulff

Überblick. Motivation. Kap. 7.6 Verbesserungsheuristiken. Nachbarschaft einer Lösung Einfache lokale Suche

Probleme aus NP und die polynomielle Reduktion

Einführung in Heuristische Suche

Kap. 7.6 Verbesserungsheuristiken (letzte VO)

Konzepte der AI Neuronale Netze

Numerische Verfahren zur Lösung unrestringierter Optimierungsaufgaben

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Effiziente Algorithmen (SS2015)

8.1 Einleitung. Grundlagen der Künstlichen Intelligenz. 8.1 Einleitung. 8.2 Lokale Suchverfahren. 8.3 Zusammenfassung. Suchprobleme: Überblick

3.3 Optimale binäre Suchbäume

Inhalt. 8.1 Motivation. 8.2 Optimierung ohne Nebenbedingungen. 8.3 Optimierung unter Nebenbedingungen. 8.4 Lineare Programmierung

Übung Algorithmen und Datenstrukturen

Perzeptronen. Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

Künstliche neuronale Netze

Von schwachen zu starken Lernern

Netzwerk Simplex Algorithmus. Min Cost Flow Probleme. Jan Burkl Juli 2003

Maschinelles Lernen: Neuronale Netze. Ideen der Informatik

GP-Music: An Interactive Genetic Programming System for Music Generation with Automated Fitness

Computer Science Department - High Performance and Web Computing Group. Optimierungsprobleme

Die Klasse NP und die polynomielle Reduktion. Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen

16. November 2011 Zentralitätsmaße. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 87

1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme. Duales Problem. a i u i + i=1. j=1

Computational Intelligence 1 / 20. Computational Intelligence Künstliche Neuronale Netze Perzeptron 3 / 20

12. Vorlesung Stochastische Optimierung

Genetische Algorithmen von der Evolution lernen

Kapitel 10. Maschinelles Lernen Lineare Regression. Welche Gerade? Problemstellung. Th. Jahn. Sommersemester 2017

1. Hausaufgabenblatt (16.04./ )

Kapitel 9: Lineare Programmierung Gliederung

Kapitel 1: Informationsverarbeitung durch Programme

Schwellenwertelemente. Rudolf Kruse Neuronale Netze 8

Thema 3: Radiale Basisfunktionen und RBF- Netze

Methoden der Statistik Markov Chain Monte Carlo Methoden

Künstliche Neuronale Netze

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester 2016

Algorithmische Methoden für schwere Optimierungsprobleme

Bewertung von Optimierungs- und Zuverlässigkeitsalgorithmen für die virtuelle Produktauslegung

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Ein sortiertes Feld kann in O(log n) durchsucht werden, z.b. mit Binärsuche. Der Algorithmus 1 gibt den Pseudocode der binären Suche an.

Adaptive Systeme. Neuronale Netze: Neuronen, Perzeptron und Adaline. Prof. Dr. rer. nat. Nikolaus Wulff

Approximationsalgorithmen für NP-harte Optimierungsprobleme

1. Transport- und Zuordnungsprobleme

2. Evolution als Optimierungsprinzip

Genetische und Evolutionäre Algorithmen (Vol. 1)

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

Klassifikation linear separierbarer Probleme

7. Vorlesung Neuronale Netze

Die Klasse NP und die polynomielle Reduktion

Transkript:

Exkurs Modelle und Algorithmen

Ansatz künstlich neuronaler Netze (KNN) Versuch, die Wirkungsweise menschlicher Gehirnzellen nachzubilden dabei wird auf formale mathematische Beschreibungen und Algorithmen zurückgegriffen

Funktionsweise von Neuronen

mathematische Modellierung e w e2 e3 e4 w2 w3 w4 Σ w j e j > Θ a = f (x) Output Die Eingangswerte e, e2, e3 und e4 werden mit den Synapsenwerten w, w2, w3 und w4 multipliziert. Falls die Summe den Schwellwert übersteigt, "feuert" das Neuron (0<a); ansonsten bleibt a=0 f(x) ist die sogenannte Transferfunktion x w e j Θ = j

Transferfunktionen binäre Funktion f ( x) = x > 0 0 sonst f ( x) = sigmoide Funktion 0 x - c 2 x + c 2 - c 2 < x c 2 x > c 2 f ( x) = + e -cx

mathematische Modellierung und graphische Darstellung Output a ergibt sich mit: a = falls w e > 0 sonst j j Θ bzw. a = falls ( w e - Θ) > 0 j j 0 sonst damit kann man den Schwellwert als mit (-) gewichtete "Zusatzeingabe" auffassen: a = f ( w + ( ) Θ ) j e j Θ

Beispiele UND - Funktion ODER - Funktion (Θ = 0)

Verknüpfung von Neuronen a = f ( net - 0) a 2 = f ( net2-0) ( f binäre Funktion, Θ = 0) net = - e + 2 e2 net = 2 e - 2 e2

( ) ( ) + = 0) ) e ((2e 0) ) 2e ((-e = 0) ( 0) ( 0 = 0 = a a = a 2 2 2 2 f f net f net f e M f net f Netz liefert: 0 0 0 0 0 0 0 0 a 2 a e 2 e - 2 2 - M = ; a a = a ; e e e = 2 2 Sei: e M = Df net mit: ergibt sich folgender Output: f binäre Transferfunktion

praktische Vorgehensweise () Gegeben ist eine darzustellende (zu lernende) logische Funktion. Konkret liegen Eingabevektoren e, e 2, e 3,..., e n vor, denen Ausgabevektoren a, a 2, a 3,..., a n zugeordnet sind. Diese Funktion soll durch ein neuronales Netz dargestellt werden. (2) Für das Netz ist eine Topologie zu wählen. (3) Die Gewichte w ij des Netzes sind so zu bestimmen, dass das Netz in der gewählten Topologie die vorgegebene Funktion darstellt. Zur Bestimmung der Gewichte sind Lernverfahren einzusetzen (4) Nachdem die Gewichte gelernt wurden und damit das Netz zur Verfügung steht, ist es beliebig oft einsetzbar

Beispiele für heuristische Prinzipien/Verfahren Simulated Annealing genetische Algorithmen grundsätzliche Vorgehensweise: ausgehend von einer zulässigen Lösung x werden zulässige Lösungen der Nachbarschaft NB(x) daraufhin untersucht, ob sie eine Verbesserung darstellen eine Nachbarschaftsrelation wird z.b. durch Abänderung oder Vertauschung von Elementen des Lösungsvektors x erreicht die Art der Nachbarschaftsbeziehung ist vom Problem und gewähltem Algorithmus abhängig. Sie ist ggf. stochastisch

Simulated Annealing: Eine Nachbarlösung x NB(x) wird nach einer bestimmten Vorschrift (ggf. auch zufällig) gewählt. Führt zu x einer Verbesserung des Zielfunktionswertes, so wird x durch x ersetzt. Führt x einer Verschlechterung des Zielfunktionswertes, so wird x durch x nur mit einer bestimmten Wahrscheinlichkeit ersetzt. Diese ist abhängig vom Ausmaß der Verschlechterung. Darüber hinaus wird diese Wahrscheinlichkeit über einen sogenannten Temperatur -Parameter so kontrolliert, dass sie mit fortschreitendem Lösungsprozess gegen Null geht. Eine vereinfachte Variante des Simulated Annealing ist Threshold Accepting. Hierbei wird jede Lösung akzeptiert, die den bisherigen Zielfunktionswert höchstens um einen vorzugebenden Wert Δ verschlechtert. Im Laufe des Verfahrens wird Δ dann sukzessive auf 0 reduziert.

Anwendung Simulated Annealing zur Lösung TSP 2-optimales-Verfahren systematische Überprüfung aller Vertauschungsmöglichkeiten von jeweils zwei Kanten einer gegebenen Rundreise gegen zwei andere. Beispiel: 2 3 4 7=n 6 5

algorithmische Darstellung(2-opt): Voraussetzungen: Kostenmatrix C = [c ij ] ; i, j =,..., n zulässige Rundreise [t,..., t n,t n+ =t ] Iteration μ (=, 2,...) for i := to n-2 do begin for j := i + 2 to n do begin berechne Δ := c + t it c j ti+ t c j+ tit c i+ t jt j + falls Δ < 0, bilde neue Rundreise [t,..., t n,t n+ =t ] := [t,..., t i, t j, t j-,, t i+, t j+,, t n, t n+ =t ] und gehe zu Iteration μ+. end end Ergebnis: eine 2-optimale Rundreise

2-opt mit Simulated Annealing (stochastisches Verfahren): Voraussetzungen: Kostenmatrix C = [c ij ] ; i, j =,..., n zulässige Rundreise [t,..., t n,t n+ =t ] vorzugebende reellwertige Parameter α > 0; 0 < β < ; it := Anzahl der bei unverändertem α durchzuführenden Iterationen

Iteration μ =, 2,..., it: for i := to n-2 do begin for j := i + 2 to n do begin berechne Δ := if Δ > 0 then + it c j ti+ t c j+ tit c i+ t jt j + α begin berechne P(Δ,α):= e und eine in (0,) gleichverteilte Zufallszahl γ; if γ > P(Δ,α) then goto M end bilde neue Rundreise r = [t,..., t n,t n+ =t ] := [t,..., t i, t j, t j-,, t i+, t j+,, t n, t n+ =t ]; falls c(r)<c (r*), setze r*:=r u. gehe zu Iteration μ+. M: end end Setze α := α βund beginne erneut mit Iteration μ =. c t Abbruchkriterium: Beende das Verfahren, wenn in den letzten it Iterationen keine neue Rundreise gebildet wurde. Ergebnis: r* mit der Länge c(r*) ist die beste gefundene Rundreise Δ

Bemerkungen: Δ P(Δ,α) = α e ist die Wahrscheinlichkeit dafür, dass eine Verschlechterung des Zielfunktionswertes in Kauf genommen wird. Es gilt: lim P( Δ, α ) = und lim P( Δ, α ) = 0 Δ 0 Δ Entscheidend für das numerische Verhalten von Simulated Annealing ist die Wahl der Parameter α, β und it. Wählt man α, gemessen an den Zielfunktionskoeffizienten groß, so ist anfangs die Wahrscheinlichkeit P(Δ,α) für die Akzeptanz einer Verschlechterung der Lösung ebenfalls groß. Wählt man α dagegen klein, so werden Lösungsverschlechterungen mit kleiner Wahrscheinlichkeit in Kauf genommen.. Je kleiner β gewählt wird, umso schneller reduziert sich die Wahrscheinlichkeit für die Akzeptanz schlechter Lösungen.

Genetische Algorithmen : Ausgangspunkt genetischer Algorithmen sind Mengen (Populationen) von Lösungen. Auf Elemente dieser Mengen (also Lösungen oder Individuen) werden sogenannte genetische Operationen an-gewandt, um neue Lösungen zu erzielen. Solche Opera-tionen sind Kreuzung, Mutation und Selektion. Kreuzung beinhaltet das Dekomponieren von Lösungen der Elterngeneration und anschließende wechselseitige Kom-binieren (Konfigurieren, Komponieren) zu neuen Lösungen einer Nachkommengeneration. Mit einer Mutation wird eine bestehende Lösung an einer oder mehreren Positionen abgeändert. Selektion bedeutet, aus einer Elterngeneration besonders fitte Individuen, d.h. besonders gute Lösungen, auszu-wählen und in die nachkommende Generation (Population) aufzunehmen.

Genetische Algorithmen (schematischer Ablauf): generiere Anfangspopulation berechne Zielfunktion Abbruchkriterium erfüllt? ja beste Individuen nein Start erstelle neue Population Selektion Rekombination Ergebnis Mutation

Semantisches Netz (Beispiel )

Semantisches Netz (Beispiel 2)

Frames schematischer Aufbau Objektname: Supers: Liste von Objektnamen Subs: Liste von Objektnamen Slotname : Slotwert Aspektname : Aspektwert Aspektname m : Aspektwert m Slotname n: Slotwert n Aspektname n : Aspektwert n Aspektname n mn : Aspektwert n mn

Frames Beispiele Zimmer: Supers: Subs: Haus Wohnzimmer, Kinderzimmer, Arbeitszimmer Wände: Mauer Decke: Fußboden: Ausstattung: Möbel Zahl: default 4 Restriktion: > 2 Material: Beton, Ziegel, Gips

Frames Beispiele (Fortsetzung) Wohnzimmer: Supers: Möbel: Technik: Zimmer Stuhl, Tisch, Sessel, Couch, Schrank TV, CD-Player, Video-Recorder Arbeitszimmer: Supers: Möbel: Technik: Zimmer Stuhl, Schreibtisch, Bücherschrank Computer, Telefon