Teil I. Heuristische Optimierungsverfahren , VU2. Arten von Optimierungsaufgaben. Einleitung

Größe: px
Ab Seite anzeigen:

Download "Teil I. Heuristische Optimierungsverfahren 186.112, VU2. Arten von Optimierungsaufgaben. Einleitung"

Transkript

1 Heuristische Optimierungsverfahren , VU2 Zeit: jeweils Dienstag, 13:15 14:45 Uhr Ort: Seminarraum 186 Univ.-Prof. Dr. Günther Raidl Univ.-Ass. DI Andreas Chwatal Arbeitsbereich für Algorithmen und Datenstrukturen Institut für Computergraphik und Algorithmen Technische Universität Wien Homepage der Lehrveranstaltung: RSS-Feed für aktuelle Informationen: WS 2007 Version vom 16. Oktober 2007 Heuristische Optimierungsverfahren 1 Heuristische Optimierungsverfahren 2 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Arten von Optimierungsaufgaben Teil I Einleitung Kombinatorische Probleme diskrete und endliche Menge von Lösungen hiermit beschäftigt sich diese Vorlesung hauptsächlich Kontinuierliche Parameteroptimierung Optimierung nichtlinearer Strukturen, z.b.: Neuronale Netze Computer Programme elektronische Schaltkreise Heuristische Optimierungsverfahren 3 Heuristische Optimierungsverfahren 4

2 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Unimodale und multimodale kontinuierliche Funktionen Kombinatorische Optimierungsprobleme Definition (Kombinatorisches Optimierungsproblem) Ein kombinatorisches Optimierungsproblem ist eine Menge von (Problem-)Instanzen. Eine Instanz ist ein Paar (S, f ), wobei ist. S eine endliche Menge aller zulässigen Lösungen (Suchraum) und f : S R die zu minimierende (oder maximierende) Zielfunktion Aufgabe ist es, eine (global) optimale Lösung zu finden, d.h. ein x S, sodass f (x ) f (x), x S (bzw. f (x ) f (x)). Heuristische Optimierungsverfahren 5 Heuristische Optimierungsverfahren 6 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Beispiele für kombinatorische Optimierungsprobleme Finden von kürzesten Wegen bzw. Rundreisen Routenplanung für Güterzulieferung an Kunden Stundenplanerstellung Scheduling von Prozessen Optimale Investitionsauswahl bei beschränktem Budget Pack- und Verschnittprobleme Design von Kommunikationsnetzwerken Beispiel: Das Traveling Salesman Problem (TSP) Definition (Traveling Salesman Problem) Geg.: Vollständiger Graph G = (V, E) mit Kantengewichten di,j 0, (i, j) E. Ges.: Hamilton scher Kreis mit geringstem Kantengewicht, d.h. eine kürzeste Rundreise bei der jeder Knoten genau 1 besucht wird. Unterklassen: Euklidische Instanzen Symmetrisches TSP, d.h. i, j : di,j = dj,i Asymmetrisches TSP, d.h. i, j di,j dj,i... Heuristische Optimierungsverfahren 7 Heuristische Optimierungsverfahren 8

3 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Beispielinstanz zum TSP (1) Beispielinstanz zum TSP (2) Kürzeste Tour durch 532 Städte in den USA Instanz aus der Leiterplattenherstellung Heuristische Optimierungsverfahren 9 Heuristische Optimierungsverfahren 10 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Praxisrelevante Erweiterung des TSP: Routenplanung Beispiel einer VRP Instanz Vehicle Routing Problem (VRP) Kunden (z.b. Bars) mit geg. Bedarf müssen beliefert werden. Es steht nur ein Depot zur Verfügung (= Ausgangs- und Endpunkt der Lieferfahrzeuge) Für die Auslieferung müssen Fahrzeugrouten gefunden werden, sodass Kapazitätsrestriktionen eingehalten werden. Ziel ist die Anzahl der Routen und/oder die Gesamtstrecke zu minimieren. Geg.: Depot und Kundenknoten Heuristische Optimierungsverfahren 11 Heuristische Optimierungsverfahren 12

4 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Beispiel einer VRP Instanz Häufige praxisrelevante Erweiterungen Restriktionen für Fahrzeuge/Fahrer Kapazitätsrestriktionen maximale Arbeitszeit Zeitfenster für das Verlassen des Depots Ruhepausen des Fahrers Unterschiedliche Kosten für die Fahrzeuge Kosten von Wegstrecken sind zeitabhängig Mögliche Lösung Heuristische Optimierungsverfahren 13 Heuristische Optimierungsverfahren 14 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Häufige praxisrelevante Erweiterungen (contd.) Restriktionen für Kunden Zeitfenster eines Kunden An- und Abholung beim Kunden, Bedarf kann stochastisch sein Zufahrtsrestriktionen für Kunden Prioritäten für Kunden, falls nicht alle beliefert werden können Teillieferungen Schwierige Probleme Manche Optimierungsaufgaben sind schwierig zu lösen, wegen Größe des Suchraums Komplexität der Zielfunktion zu berücksichtigender Randbedingungen Rauschen (Ungenauigkeiten) in der Zielfunktion sich zeitlich ändernder Zielfunktion mehrerer zu berücksichtigender Optimierungsziele ( z.b. eine Menge von Pareto-optimalen Lösungen ist gesucht) Heuristische Optimierungsverfahren 15 Heuristische Optimierungsverfahren 16

5 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Beispiele klassischer Optimierungsmethoden Zufallssuche: globale Methode, sehr allgemein anwendbar, aber meistens ineffizient Aufzählungsmethoden: primitives Aufzählen ineffizient bei größeren Suchräumen besser: beschränkte Enumeration, dynamische Programmierung Branch-and-Bound: Suchraum nach dem Divide-and-Conquer Prinzip rekursiv zerteilen, bis Teilbereiche gelöst oder ausgeschlossen werden können Gradienten-Methoden: lokale Methode, benötigt Ableitung Simplex-Methode: zur Lösung linearer Programme (lineare Zielfunktionen, linearen Randbedingungen, kont. Variablen) Heuristische Optimierungsverfahren 17 Heuristische Methoden Heuristische Methoden liefern nicht unbedingt das Optimum, aber hoffentlich in akzeptabler Zeit gute Näherungslösungen. Man unterscheidet grundsätzlich: Konstruktionsheuristiken: meist sehr problemspezifisch, häufig schnell und einfach aufgebaut Verbesserungsheuristiken: setzen auf Konstruktionsheuristiken auf, versuchen Lösungen schrittweise durch Änderungen zu verbessern problemunabhängigere Prinzipien, oft langsamer aber bessere Ergebnisse Heuristische Optimierungsverfahren 18 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Was ist eine Metaheuristik? Definition (Metaheuristik, nach Voss (1999)) A metaheuristic is an iterative master process that guides and modifies the operations of subordinate heuristics to efficiently produce high-quality solutions. It may manipulate a complete (or incomplete) single solution or a collection of solutions at each iteration. The subordinate heuristics may be high (or low) level procedures, or a simple local search, or just a construction method. Überblick über die in dieser VU behandelte Verfahren Konstruktionsheuristiken Einfache lokale Suche und Varianten Greedy Randomized Adaptive Search Procedures (GRASP) Variable Neighborhood Search Very Large Neighborhood Search Simulated Annealing Tabu Suche Guided Local Search Genetische Algorithmen Evolutionsstrategien Ant Colony Optimization Genetic Programming Heuristische Optimierungsverfahren 19 Heuristische Optimierungsverfahren 20

6 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken No-Free-Lunch Theorem Welches Verfahren ist allgemein das beste? Wolpert und Macready (1996) Alle Optimierungsverfahren sind über alle Probleme betrachtet gleich gut. Konstruktionsheuristiken Das gilt z.b. auch für die Zufallssuche! Man kann die Leistungsfähigkeit unterschiedlicher Optimierungsverfahren immer nur in Bezug auf bestimmte Aufgabenstellungen vergleichen. Heuristische Optimierungsverfahren 21 Heuristische Optimierungsverfahren 22 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Konstruktionsheuristiken Häufiges Schema: starte mit einer leeren Lösung füge in jedem Schritt eine Lösungskomponente hinzu Greedy Verfahren: Bewerte weitere Lösungskomponenten mit einer heuristischen Funktion und wähle jeweils die lokal beste procedure Greedy Konstruktionsheuristik begin x leere Lösung; while x ist keine vollständige Lösung do e aktuell günstigste Erweiterung für x; x x e; end; end Heuristische Optimierungsverfahren 23 Beispiele für Konstruktionsheuristiken Minimaler Spannbaum: Prims und Kruskals Algorithmen (greedy, liefern globales Optimum) 0/1-Rucksack Problem: Greedy Heuristiken TSP: Nearest-Neighbor Heuristik (greedy) Insertion-Heuristiken (greedy) Spannbaum Heuristik (Gütegarantie 2 für Eukl. Instanzen) Christophides Heuristik (Gütegarantie 1.5 für Eukl. Instanzen) Einige dieser Algorithmen bieten Gütegarantien Approximationsalgorithmen Heuristische Optimierungsverfahren 24

7 Einleitung Konstruktionsheuristiken Einleitung Konstruktionsheuristiken Beispiel zur Nearest-Neighbor Heuristik (1) Beispiel zur Nearest-Neighbor Heuristik (2) Heuristische Optimierungsverfahren 25 Heuristische Optimierungsverfahren 26 Einleitung Insertion-Heuristiken für das TSP Konstruktionsheuristiken Beginne mit einer Tour aus 3 Städten (oder bei Euklidischer Instanz: konvexe Hülle) Füge alle restlichen Städte iterativ hinzu bis Tour komplett. Strategien zur Wahl der nächsten Stadt: Random Insertion: Einfügen einer zufällig gewählten Stadt Nearest Insertion: Einfügen einer Stadt mit geringster Entfernung zu einer Stadt aus Tour Farthest Insertion: Einfügen einer Stadt bei der die geringste Entfernung zu Stadt aus Tour maximal ist Einfügeposition Nach der nächstgelegenen Stadt in Tour Wahl durch Minimierung der Tourlänge Teil II Nachbarschaftsbasierende Verfahren Heuristische Optimierungsverfahren 27 Heuristische Optimierungsverfahren 28

8 Einfache Lokale Suche Einfache Lokale Suche und Varianten procedure Lokale Suche begin x Ausgangslösung; repeat: wähle ein x N(x); if f (x ) f (x) then x x ; until Abbruchkriterium erfüllt; end N(x): Nachbarschaft von x (Wir gehen von Minimierung aus.) Heuristische Optimierungsverfahren 29 Heuristische Optimierungsverfahren 30 Bestandteile der lokalen Suche Definition der Lösungsrepräsentation und einer Zielfunktion f (x) Initialisierung der Anfangslösung Nachbarschaftsstruktur, d.h. welche Lösungen sind benachbart? Schrittfunktion, d.h. in welcher Reihenfolge wird die Nachbarschaft durchsucht bzw. welche Nachbarlösung wird gewählt? Abbruchbedingung Nachbarschaftsstruktur Definition (Nachbarschaftsstruktur) Eine Nachbarschaftsstruktur ist eine Funktion N : S 2 S, die jeder gültigen Lösung x S eine Menge von Nachbarn N(x) S zuweist. N(x) wird auch Nachbarschaft (von x) genannt. Die Nachbarschaft ist üblicherweise implizit durch mögliche Veränderungen (Züge, Moves) definiert Darstellung als Nachbarschaftsgraph möglich Größe der Nachbarschaft vs. Suchaufwand Heuristische Optimierungsverfahren 31 Heuristische Optimierungsverfahren 32

9 Bsp.: Aussagenlogisches Erfüllbarkeitsproblem (SAT) Definition (Satisfiability Problem) Geg.: Eine aussagenlogische Formel in konjunktiver Normalform, z.b. (x1 x2) (x 1 x 2) Ges.: Zuweisung von 1 ( true ) und 0 ( false ), sodass alle Klauseln erfüllt sind. Optimierungs-Variante: MAX-SAT: Anzahl der erfüllten Klauseln soll maximiert werden. Lösungsrepräsentation: Binärer Vektor x konzeptionell eines der einfachsten Probleme NP-vollständig eines der grundlegendsten Probleme der Informatik Beispiel: Nachbarschaftsstruktur für binäre Vektoren k-flip Nachbarschaft: Lösungen haben Hamming-Distanz k, d.h. sie unterscheiden sich in maximal k Bit. Nachbarschaftsgröße: O(n k ) Grafik: Der Suchraum von binären Vektoren der Länge n kann durch einen n-dimensionalen Hypercube dargestellt werden. Heuristische Optimierungsverfahren 33 Heuristische Optimierungsverfahren 34 Beispiel: Symmetrisches TSP Ausgangslösung ist eine beliebige Tour k-exchange (k-opt) Nachbarschaft: Touren, die sich in maximal k Kanten unterscheiden Nachbarschaftsgröße: O(n k ) Beispiel: 2-exchange Zug für das TSP Beispiel: Symmetrisches TSP (contd.) k-opt Lösung kann nicht mehr durch Austausch von k Kanten verbessert werden mit größerem k steigt Lösungsgüte aber auch Laufzeit 4-opt in der Praxis schon zu teuer Verschiedene andere Nachbarschaften: node-displacement für das asymmetrische TSP meist besser geeignet 2.5-opt Lin-Kernighan Heuristische Optimierungsverfahren 35 Heuristische Optimierungsverfahren 36

10 2-opt Lösungen zum TSP (1) 2-opt Lösungen zum TSP (2) Heuristische Optimierungsverfahren 37 Heuristische Optimierungsverfahren 38 Schrittfunktion (Auswahl von x ) Random Neighbor: Generiere immer eine zufällige Nachbarlösung aus N(x). Next Improvement: Durchsuche N(x) in einer festen Reihenfolge, nimm erste Lösung, die mindestens so gut wie x ist. Best Improvement: Durchsuche N(x) vollständig und nimm die beste Nachbarlösung. Wahl kann starken Einfluss auf Performance haben, aber es gibt keine Strategie die immer besser ist als die anderen! Heuristische Optimierungsverfahren 39 Analyse-Beispiel: Das OneMax Problem Definition (OneMax Problem) Lösungsraum: Binäre Vektoren x {0, 1} n n Zielfunktion: f (x) = dh(x, x ) = xi xi (Hammingdistanz), i=1 wobei x ein vorgegebene Optimum ist, hier z.b. x = (1,..., 1). Wir betrachten eine lokale Suche mit: Ausgangslösung = zufälliger Bitstring 1-flip Nachbarschaft Random Neighbor Schrittfunktion Frage: Wie hoch ist die Laufzeit der lokalen Suche bis das Optimum x gefunden wurde? Heuristische Optimierungsverfahren 40

11 Offensichtlich: Best-case Laufzeit: Tbest = Θ(n) (Ausgangslösung ist x ) Worst-case Laufzeit: Tworst = Bei stochastischen Algorithmen ist vor allem die erwartete Laufzeit interessant: Wir definieren Zustände Z0 bis Zn, wobei sich der Algorithmus genau dann in Zustand Zi befindet, wenn f (x) = i. Zu erwartender Anfangszustand: Heuristische Optimierungsverfahren 41 Chernoffs Ungleichung bestätigt, dass die Abweichungen von diesem erwarteten Anfangszustand i.a. klein sind: Seien (X1,..., Xn) {0, 1} unabhängige Zufallsvariablen. Sei pi = Pr(Xi = 1). Sei X = X Xn Der Erwartungswert ist E(X ) = p pn, und es gilt für 0 δ 1 Pr(X (1 δ)e(x )) e E(X )δ2 /2 und für alle δ > 0: ( Pr(X > (1 + δ)e(x )) e δ (1 + δ) 1+δ )E(X ). Eine für unseren Fall interessante Folgerung ist z.b.: Die Wahrscheinlichkeit, dass weniger als 1/3 der Bits richtig sind ist beschränkt mit e n/36. Heuristische Optimierungsverfahren 42 Wahrscheinlichkeit Zi Zi 1 in einer Iteration: pi = i n, i = 1,..., n Zu erwartende Anzahl von notwendigen Iterationen bis Zi ti = 1 = n pi i Wir summieren ti für i = n/2,..., 1: n/2 n/2 n 1 = n = n H i i n/2 n ln n 2 i=1 i=1 Hk... k-te Harmonische Zahl: ln (k + 1) < Hk 1 + ln k Hk ln k Zi 1: Aufwand pro Iteration: Θ(n) für vollständige Berechnung des Zielfunktionswertes Erwartete Gesamtlaufzeit: Texpected = Θ(n 2 log n) Heuristische Optimierungsverfahren 43 Heuristische Optimierungsverfahren 44

12 Inkrementelle Berechnung des Zielfunktionswertes = einfache und sehr effektive Verbesserung: ausgehend vom Zielfunktionswert f (x) der aktuellen Lösung x wird nur der durch den betrachteten Zug verursachte Unterschied f (x, x ) ermittelt und hinzugezählt: Aufwand pro Iteration: Θ(1) Erwartete Gesamtlaufzeit: f (x ) = f (x) + f (x, x ) Texpected = Θ(n log n) Die inkrementelle Bewertung ist auch für viele schwierige Optimierungsaufgaben aus der Praxis eine wichtige Beschleunigungsmöglichkeit! Heuristische Optimierungsverfahren 45 Das Coupon Collector s Theorem bestätigt, dass die Wahrscheinlichkeit einer Abweichung von dieser Laufzeit exponentiell klein ist: Es gibt n unterschiedliche Typen von Sammelkarten In jeder Iteration wird eine zufällig gewählt, jede Type ist immer gleich wahrscheinlich. Wir interessieren uns für Anzahl der Iterationen X bis wir von jedem Typ mindestens eine Karte haben. Es gilt: und lim Pr(X n ln n cn) = e ec n lim Pr(X n ln n + cn) = 1 e e c n Heuristische Optimierungsverfahren 46 OneMax: Next Improvement Schrittfunktion Genauer: Immer alle Bits in der Reihenfolge 1, 2,...durchgehen; wenn ein Bitflip eine Verbesserung ergibt, ist diese Lösung x. Laufzeiten bei inkrementeller Bewertung: Tbest = Θ(n) Tworst = Θ(n 2 ) Durchschnittlicher, erwarteter Aufwand, um x zu bestimmen: Θ(n/2) Bei n/2 erwarteten Iterationen ist die erwartete Gesamtlaufzeit: ( (n ) ) 2 Texpected = Θ = Θ(n 2 ) 2 OneMax: Best Improvement Schrittfunktion Da alle möglichen Verbesserungen immer gleich gut sind, ist hier der höhere Aufwand im Vergleich zu next improvement vergeudet. Die Komplexität der Laufzeit ist allerdings unverändert: Tbest = Θ(n) Tworst = Texpected = Θ(n 2 ) Leider sind solche Analysen für interessante Probleme aus der Praxis kaum möglich! Heuristische Optimierungsverfahren 47 Heuristische Optimierungsverfahren 48

13 Problem der lokalen Suche Die einfache lokale Suche findet im allgemeinen nur lokal optimale Lösungen: Problem der lokalen Suche Definition Ein lokales Minimum in Bezug auf eine Nachbarschaftsstruktur N ist eine Lösung x für die gilt: f (x) f (x ) x N(x). Es kann aber ein x S geben, für das f (x ) < f (x ). Nachbarschaftsstruktur bestimmt welche Lösungen lokale Minima sind globale Minima sind spezielle lokale Minima Was wir uns wünschen würden: kleine exakte Nachbarschaften, in denen jedes lokale Minimum auch ein globales Minimum ist Heuristische Optimierungsverfahren 49 Heuristische Optimierungsverfahren Nachbarschaftsvergrößerung i.a. wenigere und bessere lokale Minima mit größeren basins of attraction Einfache Verbesserungsmöglichkeiten basin of attraction A(x): Teilmenge aller Lösungen, für die die Anwendung der einfachen lokalen Suche das lokale Optimum x ergibt. i.a. bessere Ergebnisse, der Zeitaufwand steigt aber auch stark an z.b. k-exchange für das TSP: O(n k ) Nachbarlösungen in der Praxis ist k > 3 kaum mehr durchführbar bzw. sinnvoll Heuristische Optimierungsverfahren 51 Heuristische Optimierungsverfahren 52

14 2. Multi-start lokale Suche Lokale Suche von mehreren unterschiedlichen Ausgangslösungen aus durchführen sehr einfache Verbesserung, erfordert aber natürlich mehr Zeit effektiv wenn relativ wenige lokale Minima bzw. das globale Optimum ein großes basin of attraction besitzt Heuristische Optimierungsverfahren Iterierte lokale Suche (ILS) procedure Iterierte Lokale Suche begin x Ausgangslösung; x lokale Suche (x); repeat: x Perturbation (x); x lokale Suche (x ); if f (x ) f (x) then x x ; until Abbruchkriterium erfüllt; end Perturbation: Zufälliger Zug in einer größeren Nachbarschaft bzw. eine Serie von zufälligen Zügen in kleineren Nachbarschaften Heuristische Optimierungsverfahren 54 Greedy Randomized Adaptive Search Procedure (GRASP) Grundlegende Idee: Greedy Randomized Adaptive Search Procedure (GRASP) Eine Greedy-Konstruktionsheuristik wird systematisch randomisiert, um viele gute Startlösungen für eine nachfolgende lokale Suche zu generieren Erste Ansätze von Feo und Resende (1989) Heuristische Optimierungsverfahren 55 Heuristische Optimierungsverfahren 56

15 Randomisierung von Greedy-Konstruktionsheuristiken Mechanismen zur Bestimmung von RCL procedure Randomisierte Greedy Heuristik begin x leere Lösung; while x ist keine vollständige Lösung do CL alle möglichen Lösungskomponenten zur Erweiterung von x; bestimme RCL CL vielversprechender Erweiterungen; wähle eine Erweiterung e RCL zufällig; x x e; end; end CL: candidate list RCL: restricted candidate list Nimm die k kostengünstigsten Lösungskomponenten Seien cmin und cmax die geringsten bzw. höchsten Komponentenkosten in CL. Übernehme ein e CL in RCL wenn c(e) cmin + α (cmax cmin), α [0, 1] α = 0 ˆ= greedy Konstruktionsheuristik α = 1 ˆ= zufällige Lösungskonstruktion Heuristische Optimierungsverfahren 57 Heuristische Optimierungsverfahren 58 Nachfolgende lokale Suche typischerweise best improvement Schrittfunktion Vorteile, wenn lokale Suche von mehreren greedy-randomized Lösungen gestartet wird: im allgemeinen geringere Varianz und höhere Endlösungsgüte als bei Start von reinen Zufallslösungen lokale Suche benötigt im allgemeinen wenige Iterationen schnell es können in der gleichen Zeit mehr Ausgangslösungen lokal optimiert werden durch die Randomisierung und Wiederholung meist bessere Endlösung als einfacher Aufruf der greedy Heuristik + lokale Suche Erweiterungen von GRASP Auswahl aus RCL mit Bias: Lösungskomponenten in RCL werden mit unterschiedlichen Wahrscheinlichkeiten ausgewählt; z.b. proportional zu 1/c(e) Automatisches Einstellen von α: zufällige Wahl des Parameters Reactive GRASP Verwendung eines Gedächnisses Verwendung einer Elite guter Lösungen zur Steuerung des Konstruktionsprozesses Einfache Parallelisierung Heuristische Optimierungsverfahren 59 Heuristische Optimierungsverfahren 60

16 Bsp.: Quadratic Assignment Problem (QAP) Definition (Quadratic Assignment Problem) Geg.: n Abteilungen, n Standorte D = (Di,j) R n n : Distanzen zwischen Standorte F = (Fi,j) R n n : Verkehr zwischen Abteilungen Ges.: Zuordnung der Abteilungen zu Standorten, d.h. eine Permutation x : {1,..., n} {1,..., n}, mit minimaler Gesamtwegstrecke n n f (x) = Fi,jDxi,xj i=1 j=1 Bsp.: GRASP für QAP (Li, Pardalos, Resende, 1994) greedy-funktion: Kosten der Interaktion von neuen Abteilung/Standort Paaren bzgl. der schon vorhandenen, partiellen Lösung Beschränkung der Kandidatenliste durch Größe k zufällige Wahl eines Abteilung/Standort Paares aus RCL 2-exchange lokale Suche (d.h. Nachbarschaft: Austausch zweier Abteilungen) Heuristische Optimierungsverfahren 61 Heuristische Optimierungsverfahren 62 Bsp.: Aussagenlogisches Erfüllbarkeitsproblem (SAT) Definition (Satisfiability Problem) Geg.: Eine aussagenlogische Formel in konjunktiver Normalform, z.b. (x1 x2) (x 1 x 2) Ges.: Zuweisung von 1 ( true ) und 0 ( false ), sodass alle Klauseln erfüllt sind. Optimierungs-Variante: MAX-SAT: Anzahl der erfüllten Klauseln soll maximiert werden. Lösungsrepräsentation: Binärer Vektor x konzeptionell eines der einfachsten Probleme NP-vollständig eines der grundlegendsten Probleme der Informatik Bsp.: GRASP für SAT (Resende, Feo, 1996) greedy-funktion: Anzahl der noch nicht erfüllten Klauseln, die nach einer Variableninstantiierung mit 1 bzw. 0 erfüllt sein würden Sei Φ + i : Menge der zusätzlich erfüllten Klauseln, wenn xi = 1 Sei Φ i : Menge der zusätzlich erfüllten Klauseln, wenn xi = 0 RCL-Beschränkung: Sei Φ = maxi=1,...,n{ Φ + i, Φ i xi noch nicht instantiiert} Φ + i α Φ (xi = 1) RCL Φ i α Φ (xi = 0) RCL Heuristische Optimierungsverfahren 63 Heuristische Optimierungsverfahren 64

17 Bsp.: GRASP für SAT (contd.) Zusammenfassung zu GRASP Auswahl von RCL: falls eine unerfüllte Klausel nur eine nicht instantiierte Variable enthält, versuche diese Klausel zu erfüllen ansonsten wähle ein Element von RCL zufällig best improvement 1-flip lokale Suche einfach zu implementierende Erweiterung von Konstruktionsheuristiken wenige Parameter viele Anwendungen oft relativ schnell bei relativ guten Ergebnissen Heuristische Optimierungsverfahren 65 Heuristische Optimierungsverfahren 66 Variable Neighborhood Search (Hansen und Mladenovic, 1997) Dieses Verfahren macht sich folgende Eigenschaften zu Nutze: Variable Neighborhood Search (VNS) 1 Ein lokales Optimum in Bezug auf eine Nachbarschaftsstruktur ist nicht unbedingt ein lokales Optimum in Bezug auf eine andere. 2 Ein globales Optimum ist ein lokales Optimum in Bezug auf alle möglichen Nachbarschaftsstrukturen. 3 Für viele Probleme liegen lokale Optima relativ nahe beieinander. Heuristische Optimierungsverfahren 67 Heuristische Optimierungsverfahren 68

18 Variable Neighborhood Descent (VND) Nachbarschaftsstrukturen N1,..., Nlmax werden systematisch gewechselt. procedure Variable Neighborhood Descent (x) begin l 1; repeat: finde ein x mit f (x ) f (x ), x Nl(x); if f (x ) < f (x) then x x ; l 1; else l l + 1; until l > lmax; return x; end Variable Neighborhood Descent (contd.) Schrittfunktion: üblicherweise best oder next improvement Es wird eine Lösung erreicht, die in allen Nachbarschaftsstrukturen lokal optimal ist. Ordnung der Nachbarschaftsstrukturen: meist nach Größe bzw. Komplexität der Auswertung oder zufällig Beispiel: Vehicle Routing Problem (VRP) N1(x): 2-exchange innerhalb der einzelnen Touren N2(x): Verschieben einer Stadt von einer Tour zu einer anderen N3(x): Austausch zweier Städte über Touren hinweg N4(x): 3-exchange innerhalb der einzelnen Touren... Heuristische Optimierungsverfahren 69 Heuristische Optimierungsverfahren 70 Reduced Variable Neighborhood Search (RVNS) RVNS ist ein Rahmenwerk, um lokalen Optima zu entkommen. Die Grundidee ist die zufällige Auswahl von Nachbarlösungen aus immer größer werdenden Nachbarschaften. Wiederum gibt es ein Pool unterschiedlicher Nachbarschaftsstrukturen N1,..., Nkmax, nun aber mit folgenden Eigenschaften: Es gibt auch wesentlich größere Nachbarschaftsstrukturen, die i.a. nicht vollständig durchsucht werden können. Die Nachbarschaftsstrukturen sind nach ihrer Größe bzw. der Entfernung Ihrer Lösungen von der Ausgangslösung nach sortiert. procedure Reduced VNS (x) begin repeat: k 1; repeat: Shaking: generiere zufälliges x Nk(x); if f (x ) < f (x) then x x ; k 1; else k k + 1; until k > kmax; until Abbruchkriterium erfüllt; return x; end Heuristische Optimierungsverfahren 71 Heuristische Optimierungsverfahren 72

19 Zu den Nachbarschaftsstrukturen N 1,..., N kmax Um das Hängenbleiben in einem lokalen Optimum zumindest theoretisch sicher zu vermeiden, sollte die Vereinigung aller N1(x),..., Nkmax (x) den gesamten Raum S aller gültigen Lösungen beinhalten: S N1(x) N2(x) Nkmax, x S Die einzelnen Nachbarschaften können, müssen aber nicht disjunkt sein. Oft sind geschachtelte Nachbarschaften die einfachste Wahl: N1(x) N2(x) Nkmax, x S Dies kann beispielsweise erreicht werden, indem das Shaking in der Nachbarschaft Nk durch k hintereinander ausgeführte Züge in der N1-Nachbarschaftsstruktur realisiert wird. Heuristische Optimierungsverfahren 73 Basic Variable Neighborhood Search (BVNS) RVNS wird um eine einfache lokale Suche erweitert: procedure Basic VNS (x) begin repeat: k 1; repeat: Shaking: generiere zufälliges x Nk(x); x lokale Suche(x ); if f (x ) < f (x) then x x ; k 1; else k k + 1; until k > kmax; until Abbruchkriterium erfüllt; return x; end Heuristische Optimierungsverfahren 74 General Variable Neighborhood Search (GVNS) Kombiniert RVNS mit VND. Die Nachbarschaftsstrukturen der VNS (N1,..., Nkmax ) und des VND (N1,..., Nlmax ) sind nicht ident! procedure General VNS (x) begin repeat: k 1; repeat: Shaking: generiere zufälliges x Nk(x); // x lokale Suche mit VND (x ): l 1; repeat: finde ein x mit f (x ) f (x ), x Nl (x ); if f (x ) < f (x ) then x x ; l 1; else l l + 1; until l > lmax; if f (x ) < f (x) then x x ; k 1; else k k + 1; until k > kmax; until Abbruchkriterium erfüllt; return x; end Heuristische Optimierungsverfahren 75 Heuristische Optimierungsverfahren 76

20 Variable Neighborhood Decomposition Search (VNDS) Variante bzw. Erweiterung von (Basic) VNS. procedure VNDS (x) begin repeat: k 1; repeat: Shaking: generiere zufälliges x Nk(x); Y Menge der Variablen, in denen sich x und x unterscheiden; x lokale Suche oder Verb.heuristik (x ), bei der die Variablen x \ Y fixiert bleiben, d.h. nur Variablen in Y werden optimiert; if f (x ) < f (x) then x x ; k 1; else k k + 1; until k > kmax; until Abbruchkriterium erfüllt; return x; end Variable Tiefensuche Heuristische Optimierungsverfahren 77 Heuristische Optimierungsverfahren 78 Variable Tiefensuche komplexere Züge werden aus einer Aneinanderkettung einfacher Züge aufgebaut Anzahl einfacher Züge ist variabel Züge sind nicht unabhängig von einander Nachbarschaft wird durch Restriktionen beschränkt vielversprechende Zugkombinationen werden weiterverfolgt, wenig sinnvoll erscheinende Zugkombinationen verworfen Bsp.: Lin-Kernighan Heuristik für das TSP komplexere Züge werden aus Folge abhängiger 2-exchange Züge aufgebaut variable Anzahl von Kanten kann ausgetauscht werden Nachbarschaft in polynomieller Zeit durchsuchbar Für jeden 2-exchange Zug wird zuvor ein δ-pfad als Zwischenergebnis betrachtet; dieser entsteht durch Austausch einer ersten Kante: v w v u w v u w u u u Heuristische Optimierungsverfahren 79 Heuristische Optimierungsverfahren 80

21 Prinzip der Lin-Kernighan Heuristik für das TSP Prinzip der Lin-Kernighan Heuristik für das TSP (contd.) Starte mit Tour T Erzeuge Folge von δ-pfaden solange der δ-pfad kürzer als T Berechne zu jedem δ-pfad Pi zugehörige Tour T (Pi) Falls T (P) kürzer als T, setze T T (P) Setze Reihe der δ-pfade fort bis δ-pfad länger als beste Tour Neu hinzugefügte oder gelöschte Kanten dürfen nicht wieder gelöscht bzw. hinzugefügt werden. Definitionen für den nachfolgenden Pseudocode: x1, x2,...: aus der Ausgangstour T zu entfernende Kanten y1, y2,...: zur Ausgangstour T hinzuzufügende Kanten Gi: gain des i-ten δ-pfades, d.h. Länge von T Länge von Pi lange Zeit beste Heuristik für TSP effiziente Implementierung nicht trivial Heuristische Optimierungsverfahren 81 Heuristische Optimierungsverfahren 82 Lin-Kernighan Heuristik 1 Generate an initial tour T. 2 Let i = 1. Choose t1. 3 Choose x1 = (t1, t2) T. 4 Choose y1 = (t2, t3) T such that G1 > 0. If this is not possible, go to Step Let i = i Choose xi = (t2i 1, t2i ) T such that (a) if t2i is joined to t1, the resulting configuration is a tour, T, and (b) xi ys for all s < i. If T is a better tour than T, let T = T and go to Step 2. 7 Choose yi = (t2i, t2i+1) T such that (a) Gi > 0, (b) yi xs for all s i, and (c) xi+1 exists. If such yi exists, go to Step 5. 8 If there is an untried alternative for y2, let i = 2 and go to Step 7. 9 If there is an untried alternative for x2, let i = 2 and go to Step If there is an untried alternative for y1, let i = 1 and go to Step If there is an untried alternative for x1, let i = 1 and go to Step If there is an untried alternative for t1, then go to Step 2. Zusammenfassendes zur variablen Tiefensuche Die Lin-Kernighan Heuristik für das TSP ist ein prominentes Beispiel, von dem es viele Varianten gibt. Das Grundprinzip wird häufig auch vereinfacht eingesetzt, um große Nachbarschaften sinnvoll einzuschränken: (Teil-)Züge werden nur ausgeführt, wenn diese im Sinne eines bestimmten Kriteriums vielversprechend sind. Beispiel: MAX-SAT: Anstatt alle k-flip Züge zu evaluieren, kann man sich auf jene Variablen beschränken, die in verletzten Klauseln vorkommen. Häufig werden komplexere Nachbarschaften auch so definiert, dass besonders teure (ineffiziente) Lösungskomponenten identifiziert werden und versucht wird günstigeren Ersatz zu finden. Heuristische Optimierungsverfahren 83 Heuristische Optimierungsverfahren 84

22 Very Large Neighborhood Search (VLNS) Grundidee: Es wird eine spezielle, sehr große Nachbarschaftsstruktur N(x) gewählt, in der die beste Lösung jedoch effizient bestimmt werden kann. Very Large Neighborhood Search (VLNS) Oft ist N(x) exponentiell von der Problemgröße abhängig; die beste Nachbarlösung kann trotzdem in polynomieller Zeit gefunden werden. Es wird nicht jede Nachbarlösung explizit evaluiert. Oft beinhaltet N(x) alle Lösungen, die von x aus durch eine beliebigen Serie unabhängiger Züge erreicht werden können. Heuristische Optimierungsverfahren 85 Heuristische Optimierungsverfahren 86 Ansätze zur effizienten Nachbarschaftsdurchsuchung Dynamische Programmierung Dynasearch über das Finden von Zyklen mit minimalen Kosten in einem Improvement-Graphen über das Finden von kürzesten Pfaden über das Lösen von Minimum Cost Assignment oder Matching Probleme über effiziente Verfahren zur Lösung von Spezialfällen des Problems und entsprechenden Nachbarschaftsstrukturen Bsp. zu effizienten Verfahren zur Lösung von Spezialfällen: TSP Ein Halin Graph ist ein Graph, der wie folgt konstruiert werden kann: Es wird ein Baum erstellt, der keine Knoten vom Grad 2 besitzt Der Baum wird kreuzungsfrei in der Ebene gezeichnet. Seine Blätter werden mit zusätzlichen Kanten kreuzungsfrei zu einem Zyklus verbunden. Für Halin Graphen kann das TSP in der Zeit O(n) gelöst werden. Heuristische Optimierungsverfahren 87 Heuristische Optimierungsverfahren 88

23 i i Bsp. zu effizienten Verfahren zur Lösung von Spezialfällen: TSP (contd.) Bsp. Nachbarschaftsdurchsuchung mittels Assignment: TSP Definition (Halin-Nachbarschaft N(x)) Erweitere aktuelle Tour x durch Hinzufügen geeigneter Kanten zu einem möglichst großen Halin Graphen. Das kann z.b. durch greedy Verfahren, die kurze Kanten bevorzugen, oder auch durch Hinzunahme zufälliger Kanten erfolgen. N(x) entspricht allen zulässigen Touren in diesem Halin Graphen. Größe der Nachbarschaft: Ω(2 n ) Zeit für das Finden der besten Nachbarlösung: O(n) Definition (Remove-and-restricted-reinsert Nachbarschaft N(x)) Wähle k Städte der aktuellen Tour und ersetze sie und ihre inzidenten Kanten durch direkte Verbindungen der jeweiligen Nachbarknoten. reduzierte Tour T N(x) beinhaltet alle Touren, die aus der reduzierten Tour entstehen können indem die entfernten Knoten wiederum eingefügt werden, wobei jedoch keine zwei zuvor entfernten Knoten unmittelbar nebeneinander zu liegen kommen dürfen. Heuristische Optimierungsverfahren 89 Heuristische Optimierungsverfahren 90 Bsp. Nachbarschaftsdurchsuchung mittels Assignment: TSP (contd.) 8 8 h h g 1 g 1 a 6 6 a f e c k k d b 3 3 a i k g h Minimum Cost Matching a Improvement Graph: i k g h Bsp. Nachbarschaftsdurchsuchung mittels Assignment: TSP (contd.) Finden der besten Nachbarlösung in N(x): Konstruiere einen vollständigen, bipartiten Improvement Graphen: Knotenmenge: VR: Knoten für alle entfernten Städte VT Knoten für alle Kanten in reduzierter Tour T Kantenmenge: Kanten (i, (u, v)) zwischen allen Stadt-Knoten i VR und Kanten-Knoten (u, v) VT Kantenkosten entsprechen Änderung der Tourlänge, wenn der Knoten i zwischen u und v eingefügt wird: c(i, (u, v)) = d(u, i) + d(i, v) d(u, v) Heuristische Optimierungsverfahren 91 Heuristische Optimierungsverfahren 92

24 Bsp. Nachbarschaftsdurchsuchung mittels Assignment: TSP (contd.) Finde im Improvement Graphen ein Matching mit geringsten Kosten (Zeitaufwand: O(n 3 )) Bsp.: Cyclic Exchange für Partitionierungsprobleme In vielen Problemen müssen Elemente einer Menge S in disjunkte Teilmengen Si, i = 1,..., m, partitioniert werden: Dieses liefert die Stellen, an denen die entfernten Städte in der modifizierten Tour wieder eingefügt werden. Größe der Nachbarschaft wenn k = n/2 : Ω( n/2!) Zeit für das Finden der besten Nachbarlösung: O(n 3 ) Heuristische Optimierungsverfahren 93 Unabhängige Kosten für jede Partition Si: c(si) Gesamtkosten: m i=1 c(si) Heuristische Optimierungsverfahren 94 Bsp.: Cyclic Exchange für Partitionierungsprobleme (ctd.) Beispiele derartiger Probleme: Das Vehicle Routing Problem (VRP) Das Capacitated Minimum Spanning Tree Problem: die Anzahl der in jedem Teilbaum enthaltenen Knoten ist beschränkt Bsp.: Cyclic Exchange für Partitionierungsprobleme (ctd.) Einfache Nachbarschaften Verschieben eines Elements in eine andere Menge Austausch zweier Elemente unterschiedlicher Mengen Allgemeines Verschieben bzw. Austauschen von k > 2 Elementen häufig schon zu aufwendig! Cyclic Exchange Nachbarschaft Zyklischer Austausch jeweils eines Elements über beliebig viele Teilmengen hinweg: N(x) = O(n m ) Heuristische Optimierungsverfahren 95 Heuristische Optimierungsverfahren 96

25 Bsp.: Cyclic Exchange für Partitionierungsprobleme (ctd.) Lösungsansatz: Erstelle einen gerichteten Improvement Graphen: Knoten: für alle Elemente in S Kanten: für alle Elementpaare (a, b) S 2 a Si, b Sj, i j Bedeutung von Kante (a, b): Element a wird von Si nach Sj verschoben und Element b wird von Sj entfernt Kantenkosten = Kostenänderung in Sj: c(a, b) = f (Sj b \ j) f (Sj) Finde einen Kreis in diesem Graphen, mit negativen Kosten und bei dem alle Knoten in unterschiedlichen Teilmengen liegen. Ein solcher Kreis entspricht einem zyklischen Austausch, der die aktuelle Lösung verbessert. Heuristische Optimierungsverfahren 97 Bsp.: Cyclic Exchange für Partitionierungsprobleme (ctd.) ABER: Das Finden eines solchen Kreises ist selbst ein NP-schwieriges Problem! Trotzdem: In der Praxis kann dieses Subproblem mit schnellen Heuristiken relativ gut gelöst werden. Cyclic Exchange Nachbarschaftsstrukturen haben sich für etliche Anwendungen sehr bewährt. Heuristische Optimierungsverfahren 98 Zusammenfassung zu VLNS Sehr große Nachbarschaften werden speziell definiert, sodass eine bessere Nachbarlösung effizient gefunden werden kann. Für manche Probleme sehr gute Ergebnisse Simulated Annealing Sehr problemspezifisch Algorithmisch häufig anspruchsvoller als andere Metaheuristiken Heuristische Optimierungsverfahren 99 Heuristische Optimierungsverfahren 100

26 Simulated Annealing (SA) erster Ansatz um bei lokaler Suche lokalen Optima zu entkommen (Kirkpatrick et al. 1983) inspiriert von physikalischem Verfahren des Annealing von Kristallen naturinspiriertes Verfahren Grundidee: Auch schlechtere Lösungen werden mit bestimmter Wahrscheinlichkeit akzeptiert. basiert üblicherweise auf die random neighbor Schrittfunktion procedure Simulated Annealing begin t 0; T Tinit; x Ausgangslösung; repeat: repeat: wähle ein x N(x) zufällig; if x ist besser als x then x x ; sonst if Z < e f (x ) f (x) /T then x x ; t t + 1; until Temperatur-Updatekriterium erfüllt; T g(t, t); until Abbruchkriterium erfüllt; end Metropolis-Kriterium: Z < e f (x ) f (x) /T Z... Zufallszahl [0, 1) Annealing: Temperatur T wird langsam erniedrigt Heuristische Optimierungsverfahren 101 Heuristische Optimierungsverfahren 102 Zu entscheiden: Abkühlungsplan Bsp.: Simulated Annealing für TSP Anfangstemperatur Tinit z.b. basierend auf bekannte Schranken: Tinit = fmax fmin z.b. so wählen, dass 3% der Züge anfangs abgelehnt werden Änderungsfunktion g(t, t) Geometrisches Cooling: g(t, t) = T α, α < 1, (z.b. α = 0.95) Anzahl der Iterationen auf jedem Temperaturniveau z.b. Vielfaches der Nachbarschaftsgröße Abbruchkriterium z.b. wenn bestimmte Temperatur erreicht wurde oder wenn keine Verbesserung über τ Temperaturniveaus Einfache Implementierung: (Johnson, McGeoch, 1997) Start mit zufälliger Ausgangstour 2-exchange Nachbarschaft Abkühlungsplan: Tinit so, dass 3% der Züge abgelehnt geometisches Abkühlen, α = 0.95 Iterationen pro Temperatur: n(n 1) Abbruch: 5 Temperaturen ohne Verbesserung relativ schlechte Ergebnisse Heuristische Optimierungsverfahren 103 Heuristische Optimierungsverfahren 104

27 Bsp.: Simulated Annealing für TSP (contd.) Wesentliche Verbesserungen Start mit guten Ausgangslösungen von Konstruktionsheuristiken Beschränkung der Nachbarschaft auf vielversprechendere Züge Bsp.: SA für Graphenbipartitionierung Definition (Graphenbipartitionierung) Geg.: Graph G = (V, E) Ges.: Partitionierung von G in zwei Knotenmengen V1, V2, mit V1 = V2 und V1 V2 = V, minimize {(u, v) E u V1 v V2} Dennoch: Im Vergleich zu führenden Verfahren für das TSP nicht wettbewerbsfähig. Heuristische Optimierungsverfahren 105 Heuristische Optimierungsverfahren 106 Bsp.: SA für Graphenbipartitionierung (contd.) Kodierung der Lösung: Charakteristischer Vektor x = (x1,..., xn), n = V Knoten i wird Menge Vxi zugewiesen Simulated Annealing (Johnson et al., 1989) Nachbarschaft: Austausch zweier Knoten Startlösung: zufällig ähnlicher Abkühlplan wie beim SA für das TSP eine der ersten Anwendungen von SA Heuristische Optimierungsverfahren 107 Bsp.: SA für Graphenbipartitionierung (contd.) Verbesserung: Verkleinerung der Nachbarschaft und Erlauben auch ungültiger Lösungen Modifizierte Zielfunktion: f (V1, V2) = {(u, v) E u V1 v V2} +γ( V1 V2 ) 2 γ: imbalance factor Neue Nachbarschaft: Verschieben nur eines Knotens in die jeweils andere Menge N(x) = n gegenüber n 2 /4 Vergleich mit Kernighan-Lin Heuristik für dieses Problem: Auf zufälligen Graphen ist SA besser, auf Euklidischen Graphen Kernighan-Lin Heuristische Optimierungsverfahren 108

28 Weiterentwicklungen von SA Zusammenfassung zu SA Nichtmonotone Abkühlungspläne Reheating Dynamische vs. statische Abkühlungspläne z.b. auf einem Temperatorniveau bleiben, bis keine Verbesserungen mehr über eine bestimmte Anzahl an Iterationen Deterministische Untersuchung der Nachbarschaft Kombination mit anderen Verfahren Parallelisierung mehrere Hundert Anwendungen SA ist eine der am häufigsten verwendeten und auch theoretisch am besten untersuchten Metaheuristiken meist sehr einfach zu implementieren für viele Probleme gute Ergebnisse, aber meist keine Spitzenergebnisse im Vergleich zu anderen führenden Verfahren oft relativ lange Laufzeiten Heuristische Optimierungsverfahren 109 Heuristische Optimierungsverfahren 110 Grundidee der Tabu Suche (TS) (Glover 1986; Hansen, 1986) Tabu Suche basiert auf ein Gedächtnis (History) über den bisherigen Optimierungsverlauf und nutzt dieses um über lokale Optima hinweg zu kommen Vermeidung von Zyklen durch Verbieten des Wiederbesuchens früherer Lösungen meist deterministische Leitung der Suche meist best neighbor Schrittfunktion: in jedem Schritt wird die beste erlaubte Nachbarlösung angenommen, auch wenn diese schlechter ist als die aktuelle Heuristische Optimierungsverfahren 111 Heuristische Optimierungsverfahren 112

29 Tabu Suche Basisalgorithmus procedure Tabu Suche begin TL ; // Tabu-Liste x Ausgangslösung; repeat: X Teilmenge von N(x) unter Berücksichtigung von TL; x beste Lösung von X ; füge x zu TL hinzu; lösche Elemente aus TL die älter sind als tl Iterationen; x x ; if x ist besser als bisher beste Lösung then merke x; until Abbruchkriterium erfüllt; end Das Gedächtnis: die Tabuliste Explizites Speichern von vollständigen Lösungen Nachteil: speicher- und zeitaufwändig Alternative: Speichern von Lösungsattributen (Tabuattribute) besuchter Lösungen Lösungen sind verboten (tabu), falls sie Tabuattribute enthalten als Tabuattribute werden oft Attribute von Zügen benutzt; die Umkehrung der Züge ist dann für tl Iterationen verboten wichtiger Parameter: Tabulistenlänge tl häufig sinnvoll: verschiedene Tabuattribute, mehrere Tabulisten Heuristische Optimierungsverfahren 113 Heuristische Optimierungsverfahren 114 Parameter: Tabulistenlänge Aspirationskriterien Wahl von tl häufig sehr kritisch! zu kurze Tabulisten können zu Zyklen führen zu lange Tabulisten verbieten viele mögliche Lösungen und beschränken die Suche stark geeignete Länge meist problemspezifisch, muss experimentell bestimmt werden, oder zufällig aus Intervall wählen und in bestimmten Abständen neu setzen Lebensdauer eines Tabuattributs für jeden Zug zufällig neu wählen Manchmal können noch nicht besuchte Lösungen verboten sein obwohl sie sehr gut sind. Aspirationskriterien überschreiben den Tabustatus interessanter Lösungen. Beispiel eines häufig verwendeten Aspirationskriterium: Eine verbotene Nachbarlösung ist besser als die bisher beste gefundene Lösung. Heuristische Optimierungsverfahren 115 Heuristische Optimierungsverfahren 116

30 Bsp.: Tabu Suche für MAX-SAT Bsp.: TS für das Graphenfärbeproblem (Hansen, Jaumard, 1990; Selman, Kautz, 1994) Nachbarschaft: 1-flip Nachbarschaft Tabuattribute: Modifizierte Variablen Tabukriterium: Änderung einer Variable ist für tl Iterationen verboten Aspirationskriterium: Falls Zug zu besserer Lösung als bisher gefunden führt, überschreibe Tabu-Status Zusätzliches tie-breaking Kriterium: Gibt es mehrere beste Nachbarlösungen, breche diesen tie zugunsten einer Variablen die maximal viele Klauseln neu verletzt. Definition (Graphenfärbeproblem) Geg.: Graph G = (V, E) Ges.: Weise jedem Knoten v V eine Farbe xv {1,..., k} zu, sodass (u, v) E gilt xu xv Optimierungsvarianten: Minimie Anzahl k der notwendigen Farben Minimie Anzahl der verletzten Kanten Heuristische Optimierungsverfahren 117 Heuristische Optimierungsverfahren 118 Bsp.: TS für das Graphenfärbeproblem (contd.) Evaluierungskriterium: Minimiere Anzahl der verletzten Kanten Nachbarschaft: Färbung, die sich genau in der Farbe eines Knoten unterscheidet Tabuattribute: Paare (v, j) mit v V, j {1,..., k}, d.h. bestimmte Farbzuweisungen (j) zu bestimmten Knoten (v) Tabukriterium: Wird Zug (v, j) (v, j ) durchgeführt, wird Attribut (v, j) für tl Iterationen verboten Aspirationskriterium: Falls Zug zu besserer Lösung als bisher gefunden führt, überschreibe Tabu-Status Einschränkung der Nachbarschaft: Betrachte nur Farbzuweisungen für Knoten, die in eine Constraintverletzung involviert sind Heuristische Optimierungsverfahren 119 Reactive Tabu Search (Battiti und Tecchiolli, 1994) ursprünglich entwickelt für QAP und 0/1-Rucksack Problem Tabulistenlänge wird adaptiv angepasst: Erhöhung um konstanten Faktor bei Erkennen eines Zyklus Sei m die durchschnittliche Zyklenlänge Erniedrigung um konstanten Faktor, wenn letzte Erhöhung mehr als m Iterationen zurückliegt Diversifikationsmechanismus: Wird ausgeführt, wenn die Anzahl der Lösungen, die öfter als ein vorderfinierter Schwellenwert wiederholt besucht wurden, ein Limit überschreitet. Ausführung einer Anzahl zufälliger Schritte (proportional zu m) Heuristische Optimierungsverfahren 120

31 Mehrstufiges Gedächtnis Kurzzeitgedächtnis (short term memory) wesentlichster Teil der bisher behandelt wurde mittelfristiges Gedächtnis (intermediate term memory) Intensivierung der Suche Neustart von Elitelösungen z.b. mit leerer Tabuliste Lösungsattribute, die in mehreren Elitelösungen vorhanden sind werden fixiert Mehrstufiges Gedächtnis (contd.) Langzeitgedächtnis (long term memory) Diversifizierung der Suche Lenkt Suche zu noch schlecht abgedeckten Bereichen des Suchraums Führt Lösungsattribute ein, die nicht häufig benutzt werden; z.b. durch Bestrafung benutzter oder Bevorzugung seltener Attribute und etliche andere Strategien und etliche andere Strategien Heuristische Optimierungsverfahren 121 Heuristische Optimierungsverfahren 122 Weitere Arten von Gedächtnis Allgemeiner können folgende Arten von Gedächtnis verwaltet und durch vielfältige Regeln ausgenutzt werden. recency-based: Wann wurde ein Attribut zuletzt verwendet? frequency-based: Wie häufig wurde ein Attribut verwendet? quality-based: Wie war der bisher beobachtete Einfluss eines Attributs auf den Zielfunktionswert? influence-based: Wie stark war bisher die Auswirkung eines Attribut in Bezug auf Lösungsstruktur oder Gültigkeit? Heuristische Optimierungsverfahren 123 Zusammenfassung zu TS viele unterschiedliche Strategien für Gedächtnis Diversifizierung Intensivierung viele erfolgreiche Anwendungen oft exzellente Ergebnisse und vergleichsweise schnell meist relativ zeitintensives Fine-Tuning notwendig Heuristische Optimierungsverfahren 124

32 Guided Local Search (GLS) Um lokalen Optima zu entkommen, wird die Evaluierungsfunktion systematisch verändert. Guided Local Search (GLS) Addition von Strafkosten für Attribute von bereits erreichten lokalen Optima: M h(x) = f (x) + λ pi Ii(x) i=1 M: Anzahl der Lösungsattribute Ii(x): Indikatorfunktion die zeigt, ob Lösungsattribut i in x auftritt λ: Steuert Einfluss der Strafkosten pi: Wird erhöht wenn lokales Optimum mit diesem Attribut erreicht auch light-weight tabu search genannt Heuristische Optimierungsverfahren 125 Heuristische Optimierungsverfahren 126 procedure Guided Local Search begin i = 1,..., M : pi 0; x Ausgangslösung; repeat: x lokale Suche (x, f + λ M i=1 pi Ii); i = 1,..., M : util i Ii(x ) ci/(1 + pi); for each i with utili maximal do pi pi + 1; until Abbruchkriterium erfüllt; return beste Lösung bzgl. f (x); end util i: Ausnutzung von Attribut i ci: Kosten von Attribut i Faktor 1/(1 + pi): verhindert zu häufiges Bestrafen der gleichen Attribute Heuristische Optimierungsverfahren 127 Bsp.: Guided Local Search für SAT (Mills, Tsang, 2000) Lokale Suche: 1-flip Nachbarschaft tie-breaking Kriterium zugunsten der am längsten nicht modifizierten Variablen Lösungsattribute sind Klauseln bei lokalen Minima werden für verletzte Klauseln Strafkosten addiert eines der besten Verfahren für gewichtetes MAX-SAT Weitere Anwendungen: TSP, VRP, QAP,... Heuristische Optimierungsverfahren 128

33 Testen von Meta-Heuristiken Suchraumanalyse Testen von Meta-Heuristiken Suchraumanalyse Teil III Analyse von Metaheuristiken Testen von Meta-Heuristiken Heuristische Optimierungsverfahren 129 Heuristische Optimierungsverfahren 130 Testen von Meta-Heuristiken Suchraumanalyse Testen von Meta-Heuristiken Suchraumanalyse Testen Testen (contd.) Um verschiedene Optimierungsverfahren für ein Problem miteinander zu vergleichen, ist man meist auf empirische Tests angewiesen. Performance-Maße: Lösungsqualität Laufzeit Speicherverbrauch Robustheit (in Bezug auf mehrere Durchläufe für gleiche Instanz, unterschiedliche Arten von Instanzen,... ) Insbesondere bei stochastischen Verfahren ist zu beachten: Nie von einem Durchlauf auf das durchschnittliche Verhalten schließen! Immer Ergebnisse mehrere Durchläufe ( 30) heranziehen und Mittelwerte (Mediane) bzw. Standardabweichungen berechnen Nie vom Verhalten bei einer Probleminstanz auf das Verhalten für alle Instanzen schließen! Wird vermutet, dass ein Verfahren X im Durchschnitt bessere Ergebnisse liefert als ein Verfahren Y, so sollte zur Bestätigung ein statistischer Test durchgeführt werden. Heuristische Optimierungsverfahren 131 Heuristische Optimierungsverfahren 132

34 Testen von Meta-Heuristiken Suchraumanalyse Testen von Meta-Heuristiken Suchraumanalyse Bsp.: Student t-test Bsp.: Student t-test Gegeben: Ergebnisse {x1, x2,..., } von nx Durchläufen eines Verfahrens X xnx Ergebnisse {y1, y2,..., } von ny Durchläufen eines Verfahrens Y yny Annahme: Ergebniswerte sind normalverteilt t-wert: t = x y (nx 1)σx 2 + (ny 1)σy 2 nx ny (nx + ny 2) nx + ny Heuristische Optimierungsverfahren 133 Für ein Signifikanzniveau α (Fehlerwahrscheinlichkeit) wird z.b. aus einer Tabelle ein Grenzwert tα,n mit n = nx + ny 2 bestimmt. Gilt t > tα,n, so ist der Unterschied zwischen x und y signifikant (mit der angenommenen Fehlerwahrscheinlichkeit α). Ansonsten lassen die Ergebnisse keinen Schluß zu, d.h. es sind mitunter mehr Durchläufe notwendig, oder die Annahme ist tatsächlich falsch. Z.B. α = 1%: t 1%,10 = 3.17, t 1%,20 = 2.85, t 1%, = 2.58 Alternative, falls nicht von einer Normalverteilung auszugehen ist: z.b. Wilocxon Vorzeichen-Rang Test Heuristische Optimierungsverfahren 134 Testen von Meta-Heuristiken Suchraumanalyse Testen von Meta-Heuristiken Suchraumanalyse Suchraumanalyse: Suchlandschaften Die Analyse der Struktur von Suchräumen kann Aufschluss über die Schwierigkeit der Optimumsuche bzw. Hinweise für geeignete Verfahren und die Parameterwahl geben. Suchraumanalyse Wir definieren eine Distanz d(x, y) zwischen zwei Lösungen x, y S: meist die minimale Anzahl von Zügen, um x in y überzuführen oft aber auch andere problemabhängige Maße, wie z.b. beim TSP die Anzahl unterschiedlicher Kanten Wir stellen uns den Suchraum als (Such-)Landschaft mit Gebirge, Ebenen, Hügeln, Kratern, Tälern usw. vor; die Höhe entspricht der Güte f (x) einer Lösung x. Heuristische Optimierungsverfahren 135 Heuristische Optimierungsverfahren 136

Verbesserungsheuristiken

Verbesserungsheuristiken Verbesserungsheuristiken Bestandteile der Lokalen Suche Für schwierige Optimierungsaufgaben haben Verbesserungsheuristiken eine große praktische Bedeutung. Sie starten mit Ausgangslösungen, die von z.b.

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Das Briefträgerproblem

Das Briefträgerproblem Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................

Mehr

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual! Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual! 0kg 4000 Euro Luster 5,5 kg, 430.- Laptop 2,0 kg, 000.- Schatulle 3,2 kg, 800.- Uhr 3,5 kg, 70.- Schwert,5 kg, 850.- Bild 3,4 kg, 680.- Besteck

Mehr

Algorithmen II Vorlesung am 15.11.2012

Algorithmen II Vorlesung am 15.11.2012 Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales

Mehr

Plotten von Linien ( nach Jack Bresenham, 1962 )

Plotten von Linien ( nach Jack Bresenham, 1962 ) Plotten von Linien ( nach Jack Bresenham, 1962 ) Ac Eine auf dem Bildschirm darzustellende Linie sieht treppenförmig aus, weil der Computer Linien aus einzelnen (meist quadratischen) Bildpunkten, Pixels

Mehr

Algorithmische Mathematik

Algorithmische Mathematik Algorithmische Mathematik Wintersemester 2013 Prof. Dr. Marc Alexander Schweitzer und Dr. Einar Smith Patrick Diehl und Daniel Wissel Übungsblatt 6. Abgabe am 02.12.2013. Aufgabe 1. (Netzwerke und Definitionen)

Mehr

Konzepte der Informatik

Konzepte der Informatik Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens

Mehr

Grundlagen der Künstlichen Intelligenz

Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 22. Constraint-Satisfaction-Probleme: Kantenkonsistenz Malte Helmert Universität Basel 14. April 2014 Constraint-Satisfaction-Probleme: Überblick Kapitelüberblick

Mehr

Anmerkungen zur Übergangsprüfung

Anmerkungen zur Übergangsprüfung DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung

Mehr

Teil II Optimierung. Peter Buchholz 2016. Modellgestützte Analyse und Optimierung Kap. 9 Einführung Optimierung

Teil II Optimierung. Peter Buchholz 2016. Modellgestützte Analyse und Optimierung Kap. 9 Einführung Optimierung Teil II Optimierung Gliederung 9 Einführung, Klassifizierung und Grundlagen 10 Lineare Optimierung 11 Ganzzahlige und kombinatorische Optimierung 12 Dynamische Optimierung Literatur: zu 10-12: Neumann,

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2006 3. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Algorithmen für Graphen Fragestellungen: Suche

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Abschnitt: Algorithmendesign und Laufzeitanalyse

Abschnitt: Algorithmendesign und Laufzeitanalyse Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher

Mehr

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über Güte von s Grundlegendes zum Konzept der Güte Ableitung der Gütefunktion des Gauss im Einstichprobenproblem Grafische Darstellung der Gütefunktionen des Gauss im Einstichprobenproblem Ableitung der Gütefunktion

Mehr

Stackelberg Scheduling Strategien

Stackelberg Scheduling Strategien Stackelberg Scheduling Strategien Von Tim Roughgarden Präsentiert von Matthias Ernst Inhaltsübersicht Einleitung Vorbetrachtungen Stackelberg Strategien Ergebnisse Seminar Algorithmische Spieltheorie:

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke Vorlesungsplan 17.10. Einleitung 24.10. Ein- und Ausgabe 31.10. Reformationstag, Einfache Regeln 7.11. Naïve Bayes, Entscheidungsbäume 14.11. Entscheidungsregeln, Assoziationsregeln 21.11. Lineare Modelle,

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

Mehr

4. Dynamische Optimierung

4. Dynamische Optimierung 4. Dynamische Optimierung Allgemeine Form dynamischer Optimierungsprobleme 4. Dynamische Optimierung Die dynamische Optimierung (DO) betrachtet Entscheidungsprobleme als eine Folge voneinander abhängiger

Mehr

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel 3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel EADS 3.1 Konstruktion von minimalen Spannbäumen 16/36

Mehr

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege Lange Nacht der Wissenschaft Ein Klassiker Die Mathematik der Kürzesten Wege 09.06.2007 schlechte@zib.de Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB) http://www.zib.de/schlechte 2 Überblick

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Grundlagen der Künstlichen Intelligenz

Grundlagen der Künstlichen Intelligenz Grundlagen der Künstlichen Intelligenz 27. Aussagenlogik: Logisches Schliessen und Resolution Malte Helmert Universität Basel 28. April 2014 Aussagenlogik: Überblick Kapitelüberblick Aussagenlogik: 26.

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der

Mehr

Künstliche Intelligenz Maschinelles Lernen

Künstliche Intelligenz Maschinelles Lernen Künstliche Intelligenz Maschinelles Lernen Stephan Schwiebert Sommersemester 2009 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Maschinelles Lernen Überwachtes Lernen

Mehr

WS 2008/09. Diskrete Strukturen

WS 2008/09. Diskrete Strukturen WS 2008/09 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0809

Mehr

Optimierung für Wirtschaftsinformatiker: Analytische Optimierung ohne Nebenbedingungen

Optimierung für Wirtschaftsinformatiker: Analytische Optimierung ohne Nebenbedingungen Optimierung für Wirtschaftsinformatiker: Analytische Optimierung ohne Nebenbedingungen Dr. Nico Düvelmeyer Freitag, 1. Juli 2011 1: 1 [1,1] Inhaltsübersicht für heute 1 Einführung und Wiederholung Beispiel

Mehr

Expander Graphen und Ihre Anwendungen

Expander Graphen und Ihre Anwendungen Expander Graphen und Ihre Anwendungen Alireza Sarveniazi Mathematisches Institut Universität Göttingen 21.04.2006 Alireza Sarveniazi (Universität Göttingen) Expander Graphen und Ihre Anwendungen 21.04.2006

Mehr

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. smichel@cs.uni-kl.de

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. smichel@cs.uni-kl.de Datenbankanwendung Wintersemester 2014/15 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Wiederholung: Anfragegraph Anfragen dieses Typs können als Graph dargestellt werden: Der

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) Wintersemester 2007/08 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät für Informatik Lehrstuhl

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Graphen: Datenstrukturen und Algorithmen

Graphen: Datenstrukturen und Algorithmen Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.

Mehr

6.2 Scan-Konvertierung (Scan Conversion)

6.2 Scan-Konvertierung (Scan Conversion) 6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)

Mehr

Algorithmentheorie. 13 - Maximale Flüsse

Algorithmentheorie. 13 - Maximale Flüsse Algorithmentheorie 3 - Maximale Flüsse Prof. Dr. S. Albers Prof. Dr. Th. Ottmann . Maximale Flüsse in Netzwerken 5 3 4 7 s 0 5 9 5 9 4 3 4 5 0 3 5 5 t 8 8 Netzwerke und Flüsse N = (V,E,c) gerichtetes Netzwerk

Mehr

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen. 13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen. Sie heißt linear, wenn sie die Form y (n) + a n 1 y (n 1)

Mehr

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS) Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,

Mehr

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

Kompetitive Analysen von Online-Algorithmen

Kompetitive Analysen von Online-Algorithmen Kompetitive Analysen von Online-Algorithmen jonas echterhoff 16. Juli 004 1 Einführung 1.1 Terminologie Online-Algorithmen sind Algorithmen, die Probleme lösen sollen, bei denen Entscheidungen getroffen

Mehr

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!. 040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl

Mehr

Einsatz Evolutionärer Algorithmen zur Optimierung der Tourenplanung eines Wachschutzunternehmens

Einsatz Evolutionärer Algorithmen zur Optimierung der Tourenplanung eines Wachschutzunternehmens Fachhochschule Brandenburg Fachbereich Informatik und Medien Kolloquium zur Diplomarbeit Einsatz Evolutionärer Algorithmen zur Optimierung der Tourenplanung eines Wachschutzunternehmens Übersicht Darstellung

Mehr

1 Einleitung. 1.1 Motivation und Zielsetzung der Untersuchung

1 Einleitung. 1.1 Motivation und Zielsetzung der Untersuchung 1 Einleitung 1.1 Motivation und Zielsetzung der Untersuchung Obgleich Tourenplanungsprobleme zu den am häufigsten untersuchten Problemstellungen des Operations Research zählen, konzentriert sich der Großteil

Mehr

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben

Mehr

Die Komplexitätsklassen P und NP

Die Komplexitätsklassen P und NP Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 3. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte 50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien

Mehr

SUDOKU - Strategien zur Lösung

SUDOKU - Strategien zur Lösung SUDOKU Strategien v. /00 SUDOKU - Strategien zur Lösung. Naked Single (Eindeutiger Wert)? "Es gibt nur einen einzigen Wert, der hier stehen kann". Sind alle anderen Werte bis auf einen für eine Zelle unmöglich,

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt SWP Funktionale Programme (2. Teil) Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Interpreter für funktionale Sprache

Mehr

Frankfurt am Main. Dortmund. Stuttgart. Düsseldorf

Frankfurt am Main. Dortmund. Stuttgart. Düsseldorf Aufgabenstellung Ein Handlungsreisender will seine Produkte in den zehn größten Städten Deutschlands verkaufen. Er startet in Berlin und will seine Reise dort beenden. Die zehn einwohnerreichsten Städte

Mehr

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V

Mehr

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 13 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:

Mehr

Wasserfall-Ansätze zur Bildsegmentierung

Wasserfall-Ansätze zur Bildsegmentierung Wasserfall-Ansätze zur Bildsegmentierung von Philipp Jester Seminar: Bildsegmentierung und Computer Vision 16.01.2006 Überblick 1. Problemstellung 2. Wiederholung: Wasserscheiden-Ansätze 3. Der Wasserfall-Ansatz

Mehr

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J Greedy-Strategie Definition Paradigma Greedy Der Greedy-Ansatz verwendet die Strategie 1 Top-down Auswahl: Bestimme in jedem Schritt eine lokal optimale Lösung, so dass man eine global optimale Lösung

Mehr

Konstruktions-Verbesserungsheuristiken. Iterierte lokale Suche (ILS)

Konstruktions-Verbesserungsheuristiken. Iterierte lokale Suche (ILS) Konstruktions-Verbesserungsheuristiken Iterierte lokale Suche (ILS) Idee: 2-Phasen-Suche 1. Phase: Randomisierte Konstruktionsheuristik 2. Phase: Lokale Suche Beispiele: Multi-Start lokale Suche GRASP:

Mehr

Kapitel MK:IV. IV. Modellieren mit Constraints

Kapitel MK:IV. IV. Modellieren mit Constraints Kapitel MK:IV IV. Modellieren mit Constraints Einführung und frühe Systeme Konsistenz I Binarization Generate-and-Test Backtracking-basierte Verfahren Konsistenz II Konsistenzanalyse Weitere Analyseverfahren

Mehr

Statistische Untersuchungen zu endlichen Funktionsgraphen

Statistische Untersuchungen zu endlichen Funktionsgraphen C# Projekt 1 Name: Statistische Untersuchungen zu endlichen Funktionsgraphen Aufgabe: Basierend auf dem Abschnitt 2.1.6. Random mappings, Kap.2, S 54-55, in [1] sollen zunächst für eine beliebige Funktion

Mehr

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen

Mehr

Bestimmung einer ersten

Bestimmung einer ersten Kapitel 6 Bestimmung einer ersten zulässigen Basislösung Ein Problem, was man für die Durchführung der Simplexmethode lösen muss, ist die Bestimmung einer ersten zulässigen Basislösung. Wie gut das geht,

Mehr

Universität Bonn, Institut für Angewandte Mathematik. WS 2012/2013 Prüfung Angewandte Mathematik und Statistik - Agrarwiss. /ELW

Universität Bonn, Institut für Angewandte Mathematik. WS 2012/2013 Prüfung Angewandte Mathematik und Statistik - Agrarwiss. /ELW Universität Bonn, Institut für Angewandte Mathematik Dr. Antje Kiesel WS 2012/2013 Prüfung Angewandte Mathematik und Statistik - Agrarwiss. /ELW 08.03.2013 Matrikelnummer Platz Name Vorname 1 2 3 4 5 6

Mehr

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term

Mehr

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Vollständigkeit halber aufgeführt. Gehen wir einmal davon aus, dass die von uns angenommenen 70% im Beispiel exakt berechnet sind. Was würde

Mehr

Erfüllbarkeit und Allgemeingültigkeit

Erfüllbarkeit und Allgemeingültigkeit Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 3.3 Aussagenlogik Erfüllbarkeit 44 Erfüllbarkeit und Allgemeingültigkeit Def.: eine Formel ϕ heißt erfüllbar, wennesein I gibt, so dass I = ϕ

Mehr

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3

Lineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3 Lineare Funktionen Inhaltsverzeichnis 1 Proportionale Funktionen 3 1.1 Definition............................... 3 1.2 Eigenschaften............................. 3 2 Steigungsdreieck 3 3 Lineare Funktionen

Mehr

Optimierungsprobleme mit Nebenbedingungen - Einführung in die Theorie, Numerische Methoden und Anwendungen

Optimierungsprobleme mit Nebenbedingungen - Einführung in die Theorie, Numerische Methoden und Anwendungen Optimierungsprobleme mit Nebenbedingungen - Einführung in die Theorie, Numerische Methoden und Anwendungen Dr. Abebe Geletu Ilmenau University of Technology Department of Simulation and Optimal Processes

Mehr

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20 Suche in Spielbäumen Suche in Spielbäumen KI SS2011: Suche in Spielbäumen 1/20 Spiele in der KI Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche Einschränkung von Spielen auf: 2 Spieler:

Mehr

Algorithmen und Datenstrukturen. Große Übung vom 29.10.09 Nils Schweer

Algorithmen und Datenstrukturen. Große Übung vom 29.10.09 Nils Schweer Algorithmen und Datenstrukturen Große Übung vom 29.10.09 Nils Schweer Diese Folien Braucht man nicht abzuschreiben Stehen im Netz unter www.ibr.cs.tu-bs.de/courses/ws0910/aud/index.html Kleine Übungen

Mehr

Lineare Differentialgleichungen erster Ordnung erkennen

Lineare Differentialgleichungen erster Ordnung erkennen Lineare Differentialgleichungen erster Ordnung In diesem Kapitel... Erkennen, wie Differentialgleichungen erster Ordnung aussehen en für Differentialgleichungen erster Ordnung und ohne -Terme finden Die

Mehr

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 3.2.07 astian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Organisatorisches / Review is zum 2.2 müssen alle Praxisaufgaben

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

4. Versicherungsangebot

4. Versicherungsangebot 4. Versicherungsangebot Georg Nöldeke Wirtschaftswissenschaftliche Fakultät, Universität Basel Versicherungsökonomie (FS 11) Versicherungsangebot 1 / 13 1. Einleitung 1.1 Hintergrund In einem grossen Teil

Mehr

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

5. Lokale Suchverfahren. Beispiel TSP: k-change Nachbarschaft. Nachbarschaft. k-opt Algorithmus 5. Lokale Suchverfahren Lokale Suche 5. Lokale Suchverfahren Beispiel TSP: k-change Nachbarschaft Optimale Lösungen können oft nicht effizient ermittelt werden. Heuristiken liefern zwar zulässige Lösungen,

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Vorlesung Informatik 2 Algorithmen und Datenstrukturen. (20 Graphen) T. Lauer

Vorlesung Informatik 2 Algorithmen und Datenstrukturen. (20 Graphen) T. Lauer Vorlesung Informatik 2 Algorithmen und Datenstrukturen (20 Graphen) T. Lauer 1 Motivation Wie komme ich am besten von Freiburg nach Ulm? Was ist die kürzeste Rundreise durch eine gegebene Menge von Städten?

Mehr

WS 2013/14. Diskrete Strukturen

WS 2013/14. Diskrete Strukturen WS 2013/14 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws1314

Mehr

Erzeugung zufälliger Graphen und Bayes-Netze

Erzeugung zufälliger Graphen und Bayes-Netze Erzeugung zufälliger Graphen und Bayes-Netze Proseminar Algorithmen auf Graphen Georg Lukas, IF2000 2002-07-09 E-Mail: georg@op-co.de Folien: http://op-co.de/bayes/ Gliederung 1. Einleitung 2. einfache

Mehr

Verkehrsstauspiel: Wieviel Prozent der Autos fahren über blau/grün? Jörg Rambau

Verkehrsstauspiel: Wieviel Prozent der Autos fahren über blau/grün? Jörg Rambau Verkehrsstauspiel: Wieviel Prozent der Autos fahren über blau/grün? Verkehrsstauspiel: Wieviel Prozent der Autos fahren über blau/grün? 1 x x = Anteil der Fahrzeuge, die dort entlang fahren Verkehrsstauspiel:

Mehr

Institut für Leistungselektronik und Elektrische Antriebe. Übungen Regelungstechnik 2

Institut für Leistungselektronik und Elektrische Antriebe. Übungen Regelungstechnik 2 Institut für Leistungselektronik und Elektrische Antriebe Prof. Dr.-Ing. J. Roth-Stielow Übungen Regelungstechnik 2 Inhalt der Übungen: 1. Grundlagen (Wiederholung RT1) 2. Störgrößenaufschaltung 3. Störgrößennachbildung

Mehr

Die Optimalität von Randomisationstests

Die Optimalität von Randomisationstests Die Optimalität von Randomisationstests Diplomarbeit Elena Regourd Mathematisches Institut der Heinrich-Heine-Universität Düsseldorf Düsseldorf im Dezember 2001 Betreuung: Prof. Dr. A. Janssen Inhaltsverzeichnis

Mehr

Heuristische Verfahren

Heuristische Verfahren Heuristische Verfahren Bei heuristischen Verfahren geht es darum in polynomieller Zeit eine Näherungslösung zu bekommen. Diese kann sehr gut oder sogar optimal sein, jedoch gibt es keine Garantie dafür.

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens 1 Organisatorisches Freitag, 05. Mai 2006: keine Vorlesung! aber Praktikum von 08.00 11.30 Uhr (Gruppen E, F, G, H; Vortestat für Prototyp)

Mehr

Informatik-Sommercamp 2012. Mastermind mit dem Android SDK

Informatik-Sommercamp 2012. Mastermind mit dem Android SDK Mastermind mit dem Android SDK Übersicht Einführungen Mastermind und Strategien (Stefan) Eclipse und das ADT Plugin (Jan) GUI-Programmierung (Dominik) Mastermind und Strategien - Übersicht Mastermind Spielregeln

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Kapitel 6: Graphalgorithmen Gliederung

Kapitel 6: Graphalgorithmen Gliederung Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen

Mehr

Berechnung der Erhöhung der Durchschnittsprämien

Berechnung der Erhöhung der Durchschnittsprämien Wolfram Fischer Berechnung der Erhöhung der Durchschnittsprämien Oktober 2004 1 Zusammenfassung Zur Berechnung der Durchschnittsprämien wird das gesamte gemeldete Prämienvolumen Zusammenfassung durch die

Mehr

Optimierung für Nichtmathematiker

Optimierung für Nichtmathematiker Optimierung für Nichtmathematiker Typische Prüfungsfragen Die folgenden Fragen dienen lediglich der Orientierung und müssen nicht den tatsächlichen Prüfungsfragen entsprechen. Auch Erkenntnisse aus den

Mehr

Mathematischer Vorbereitungskurs für Ökonomen

Mathematischer Vorbereitungskurs für Ökonomen Mathematischer Vorbereitungskurs für Ökonomen Dr. Thomas Zehrt Wirtschaftswissenschaftliches Zentrum Universität Basel Gleichungen Inhalt: 1. Grundlegendes 2. Lineare Gleichungen 3. Gleichungen mit Brüchen

Mehr

Rechnerische Komplexität

Rechnerische Komplexität Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit

Mehr

Musterlösungen zur Linearen Algebra II Blatt 5

Musterlösungen zur Linearen Algebra II Blatt 5 Musterlösungen zur Linearen Algebra II Blatt 5 Aufgabe. Man betrachte die Matrix A := über dem Körper R und über dem Körper F und bestimme jeweils die Jordan- Normalform. Beweis. Das charakteristische

Mehr

Mediator 9 - Lernprogramm

Mediator 9 - Lernprogramm Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop

Mehr

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten Gliederung Zusammenhang von Graphen Stark Zusammenhängend K-fach Zusammenhängend Brücken Definition Algorithmus zum Finden von Brücken Anwendung Zusammenhangskomponente Definition Wichtige Aussagen und

Mehr

Im Jahr t = 0 hat eine Stadt 10.000 Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b

Im Jahr t = 0 hat eine Stadt 10.000 Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b Aufgabe 1: Im Jahr t = 0 hat eine Stadt 10.000 Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. (a) Nehmen Sie lineares Wachstum gemäß z(t) = at + b an, wobei z die Einwohnerzahl ist und

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

B 2. " Zeigen Sie, dass die Wahrscheinlichkeit, dass eine Leiterplatte akzeptiert wird, 0,93 beträgt. (genauerer Wert: 0,933).!:!!

B 2.  Zeigen Sie, dass die Wahrscheinlichkeit, dass eine Leiterplatte akzeptiert wird, 0,93 beträgt. (genauerer Wert: 0,933).!:!! Das folgende System besteht aus 4 Schraubenfedern. Die Federn A ; B funktionieren unabhängig von einander. Die Ausfallzeit T (in Monaten) der Federn sei eine weibullverteilte Zufallsvariable mit den folgenden

Mehr

4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum

4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum 4. Lernen von Entscheidungsbäumen Klassifikation mit Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch /Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse zugeordnet werden.

Mehr

Anwendertreffen 20./21. Juni

Anwendertreffen 20./21. Juni Anwendertreffen Verbindungsmittelachsen VBA Allgemein Die Verbindungsmittelachsen werden nun langsam erwachsen. Nach zwei Jahren Einführungszeit haben wir bereits viele Rückmeldungen mit Ergänzungswünschen

Mehr