Seminar: Randomisierte Algorithmen Auswerten von Spielbäumen Nele Küsener

Größe: px
Ab Seite anzeigen:

Download "Seminar: Randomisierte Algorithmen Auswerten von Spielbäumen Nele Küsener"

Transkript

1 Seminar: Randomisierte Algorithmen Auswerten von Sielbäumen Nele Küsener In diesem Vortrag wird die Laufzeit von Las-Vegas-Algorithmen analysiert. Das Ergebnis ist eine obere und eine untere Schranke für die maximal erwartete Laufzeit. Als Beisiel schauen wir uns einen randomisierten Algorithmus an, der Sielbäume auswertet. Inhaltsverzeichnis 1 Das Auswerten von Sielbäumen 1 2 Das Minimax-Prinzi Grundlegende Begriffe aus der Sieltheorie Beisiel von Neumann s Minimax-Theorem Anwendung des Minimax-Prinzi Berechnung der unteren Schranke für den Algorithmus von Snir 7 1 Das Auswerten von Sielbäumen Was ist ein Sielbaum? Ein Sielbaum ist ein verwurzelter und beschrifteter Baum mit einer gerade Anzahl von Generationen. Die Knoten, die einer geradzahligen Generation angehören, werden mit MIN beschriftet, die inneren Knoten aus einer ungeraden Generation werden mit MAX beschriftet. An jedem Blatt steht ein reeller Wert. Die Auswertung eines Sielbaumes ist das Bestimmen des Wertes an der Wurzel. Ein Knoten der mit MAX beschriftet ist, nimmt den maximalen Wert seiner Kinder an. Ein Knoten, der mit MIN beschriftet ist, entsrechend den minimalen Wert. Wir betrachten Binäre Sielbäume. Dort haben die Blätter entweder den Wert 0 oder 1. Die Boolschen Oerationen AND und OR ersetzen dort die Funktionen MIN und MAX. Notation t k = (v 1,..., v 4 k) {0, 1} 4k ist der Sielbaum der Höhe 2k. v i ist der Wert des i-ten Blattes bzgl. einer beliebigen, aber festen Abzählung der Blätter. Den Wert der Wurzel bezeichnet man mit w (t k ). Ein Sielbaum beschreibt folgendes Siel: Sieler A und Sieler B bestimmen abwechselnd von Knoten zu Knoten einen Weg von oben nach unten durch den Sielbaum. Den Wert des ausgewählten Blattes muss Sieler B an Sieler A bezahlen. Sieler B beginnt. Die inneren Knoten bezeichnen den maximalen Gewinn bzw. minimalen Verlust bei geschickter Sielweise. Ein Algorithmus zur Auswertung eines Sielbaums liest bei jedem Schritt den Wert eines Blattes ein, wobei die Wahl des als nächstes einzulesenden Blattes von den Werten der bereits insizierten Blätter abhängen darf. Als Maß für die Laufzeit eines

2 solchen Algorithmus nimmt man nur die Anzahl der eingelesenen Werte, da das Berechnen von Minimum und Maximum sehr schnell geht. Wir betrachten randomisierte Algorithmen, da diese den Vorteil haben, dass man ihnen keine gezielte Eingabebelegung geben kann, die sie zwingt alle Eingaben zu rüfen. Die deterministische Komlexität eines Algorithmus zum Auswerten eines Sielbaums ist n = 4 k. Man kann diese Laufzeit erzwingen, indem man dem Algorithmus an einem MAX/OR Knoten zuerst eine 0 liefert und bei einem MIN/AND Knoten zuerst eine 1. Randomisierter Algorithmus von Snir zur Auswertung eines Sielbaums Zur Auswertung eines AND-Knoten wähle man rein zufällig eines der beiden Kinder und bestimme rekursiv dessen Wert (= Wert eines in einem OR-Knoten verwurzelten Teilbaums). Ist der Wert des Kindes 0, so ist dies auch der zu bestimmende Wert des AND-Knoten. Ist der Wert des Kindes 1, dann bestimme man auch noch den Wert des anderen Kindes. Die Auswertung eines OR-Knoten verläuft analog mit vertauschten Rollen von 0 und 1. Der nächste Satz gibt eine obere Schranke für die maximal erwartete Anzahl der insizierten Blätter an: Satz 1.1: Sei L (t k ) die Anzahl der bei der Auswertung des Sielbaums t k insizierten Blätter, dann gilt max t k {0,1} 4k EL (t k) 3 k, k N. Beweis Wir beweisen den Satz er Induktion und fangen an mit k = 1. Unterteilung in zwei Fälle: w (t 1 ) = 0 und w (t 1 ) = 1: Im Fall, dass die Wurzel den Wert 0 annimmt, wählt der Algorithmus mit einer Wahrscheinlichkeit von 1 2 zuerst ein Kind mit dem Wert 0 und muss dann das zweite Kind nicht mehr auswerten. Jedes Kind der Wurzel hat zwei Blätter. Man kann also folgende Abschätzung machen: L (t 1 ) 2 (#insizierte Kinder). E [L (t 1 )] 2 E [#ins. Kinder] = 2 (P (ein ins. Kind) 1 + P (zwei ins.kinder) 2) = 2 (1 + 2 (1 )) = = Im Fall, dass die Wurzel den Wert 1 annimmt, müssen beide Kinder ausgewertet werden. Sie haben beide den Wert 1 und mit einer Wahrscheinlichkeit 1 2 ist das

3 erste Blatt eines Kindes eine 1. E [L (t 1 )] = 2 E [#ins. Blätter ro Kind] = 2 (1 + 2 (1 )) = 3 1 Nun folgt der Induktionsschritt von k zu k + 1: Seien t (i) k, i = 1,..., 4, die in den Enkeln der Wurzel von t k+1 verwurzelten binären Sielbäume der Höhe 2k. E [L (t k+1 )] = = = 4 E ( ) #ins. Blätter in Teilbaumi I {Teilbaum i ausgew.} i=1 4 E [#ins. Blätter in TB i] P (TB i ins.) i=1 4 3 k P (TB i ins.) i=1 4 3 k 3 4 i=1 = 3 k = 3 k+1 Bemerkung: Die Eingabe hat die Länge n = 4 k. Die erwarteten Kosten des rand. Algorithmus sind also durch n log 4 3 nach oben beschränkt. (log 4 3 = ) 2 Das Minimax-Prinzi Wie ist die Güte des Algorithmus von Snir zu beurteilen? Was ist die randomisierte Komlexität? Im folgenden Abschnitt wird allgemein eine Technik zur Herleitung einer unteren Schranke für die maximale erwartete Laufzeit von Las-Vegas-Algorithmen dargestellt. 2.1 Grundlegende Begriffe aus der Sieltheorie Bei einem Zwei-Personen-Nullsummen-Siel gewinnt der eine Sieler genau den Betrag, den der andere Sieler verliert. Sieler A verfügt über die reinen Strategien a i, 1 i n und Sieler B über die reinen Strategien b j, 1 j m. Bei Sielen der Strategien a i und b j, erhält Sieler A von Sieler B den Betrag c ij. c ij ist die Auszahlungs- oder Gewinnmatrix. Bei dem

4 bekannten Siel Schere, Stein, Paier ist eine Strategie die Auswahl von z.b. Schere. Wenn eine Strategie a i bzw. b j zufällig (mit Wahrscheinlichkeit i bzw. j ) ausgewählt wird, sricht man von einer gemischten Strategie. Sieler A wählt die Strategien (a i ) 1 i n mit den Wahrscheinlichkeiten = ( 1,..., n ) und Sieler B davon unabhängig die Strategien (b j ) 1 j m mit den Wahrscheinlichkeiten = ( 1,..., m ). Es gilt i i = j j = 1. Beisiel: Bei Schere, Stein, Paier ist eine mögliche gemischte Strategie: = = ( 1 3, 1 3, 1 ) 3 D.h. jeder Sieler bestimmt vor jeder Runde durch Zufall welche Strategie er sielt. In diesem Fall wählt er jede der Möglichkeiten mit der Wahrscheinlichkeit 1 3. Was ist der erwartete Gewinn von Sieler A? E c (I, J) = i,j i j c ij, wobei = ( 1,..., n ) und = ( 1,..., n ). A gewinnt in Erwartung mindestens min E c (I, J) ( ) V A := max min E c (I, J) ist der untere Wert des Siels. In Worten bedeutet dies: Sieler B bemüht sich die Auszahlung so klein wie möglich zu halten und Sieler A versucht dies zu maximieren. Eine Strategie *, die ( ) maximiert, nennt man eine otimale gemischte Strategie für Sieler A. V A ist bei Verwendung von * eine untere Schranke für den erwarteten Gewinn von Sieler A. Für Sieler B sieht es ähnlich aus: max E c (I, J) zu leistenden Zahlung bei Verfolgen der Strategie. ( ) ist die maximale Höhe der V B := min max E c (I, J) ist der obere Wert des Siels. Eine Strategie *, die ( ) minimiert, ist eine otimale gemischte Strategie für B. Bei Verwendung von * muss Sieler B in Erwartung einen maximalen Betrag in Höhe von V B an Sieler A bezahlen. V A V B, denn: min E E max min E max E Bemerkung: Existieren Strategien und, so dass E c (I, J) E c (I, J) E c (I, J) für alle und gilt, dann kann man zeigen, dass auch V B V A gilt V B max E c (I, J) E c (I, J) min E c (I, J) V A

5 V A = V B Wenn V A = V B gilt, dann ist das Siel otimal und es hat die Lösung (, ); V A bzw. V B werden als der Wert des Siels bezeichnet. 2.2 Beisiel Das Siel Schere, Stein, Paier hat die Gewinnmatrix: c ij = Sie beschreibt den Gewinn/Verlust aus der Sicht von Sieler A Die erste Zeile steht für die Strategie Schere, die zweite für Stein und die dritte für Paier. Die Strategien von Sieler B zeigen die Salten an. Wie hoch ist der erwartete Gewinn? = ( 1, 2, 3 ), = ( 1, 2, 3 ) E c (I, J) = = 1 ( 2 3 ) + 2 ( 3 1 ) + 3 ( 1 2 ) ( 1 = 0, falls = 3, 1 3, 1 ) 3 < 0, sonst Ein symmetrisches Zwei-Personen-Nullsummensiel ist otimal, wenn der Erwartungswert 0 ist. Bei reinen Strategien können V A und V B unterschiedlich sein: min c (i, j) = 1 für alle i max min c (i, j) = 1 = V A j i j max i c (i, j) = 1 für alle j min j max c (i, j) = 1 = V B i 2.3 von Neumann s Minimax-Theorem Satz 2.1 (von Neumann s Minimax-Theorem) Jedes durch eine endliche Matrix (c ij ) beschriebene Zwei-Personen-Nullsummen-Siel mit gemischten Strategien besitzt eine Lösung und hat den Wert max min E c (I, J) = min max E c (I, J) Bei festem ist die Funktion E c (I, J) = j i c ij linear in und nimmt ihr Minimum in einem der Extremalunkte des Simlex der Verteilung auf {1,..., m} an. Also gilt: min E c (I, J) = min j E c (I, j).

6 In Worten: Wenn der Sieler B die gemischte Strategie von A kennt, kann er eine reine Strategie sielen um seinen Verlust zu minimieren. (Entsrechendes gilt für Sieler A, wenn er die Strategie von B kennt.) Am Beisiel von Schere, Stein, Paier bedeutet dies, dass Sieler B immer Stein sielt, wenn in der Strategie von Sieler A Paier die größte Wahrscheinlichkeit hat. Eine Variante des Minimax-Theorems ist der Satz von Loomis max min E c (I, j) = min max E c (i, J). j i j und i sind die reinen und und die gemischten Strategien. 2.4 Anwendung des Minimax-Prinzi Nun wollen wir das Minimax-Prinzi zur Analyse der Güte von Las-Vegas-Algorithmen benutzen. Die Kosten des Algorithmus soll die Höhe der Zahlung sein, die der Sieler, der den Algorithmus entwirft, an den Sieler zahlen muss, der die Eingabe wählt. Bei den folgenden Überlegungen soll die Zahl der möglichen Eingaben und die Zahl der deterministischen Algorithmen (immer korrekt, in endlicher Zeit terminierend) zur Lösung des Problems endlich sein. A sei die Menge der deterministischen Algorithmen zur Lösung eines Problems und I die Menge der möglichen Eingaben. Für a A und i I bezeichne c (i, a) die Kosten des Algorithmus a bei Eingabe i. Kleiner Einschub: In diesem Abschnitt ist es zweckmäßig einen randomisierten Algorithmus als eine Wahrscheinlichkeitsverteilung auf einer Menge von deterministischen Algorithmen aufzufassen. Salo ausgedrückt: Bei einem randomisierten Algorithmus wird zufällig ein Weg für die Auswertung bestimmt. Danach kann man sagen, dass es genau einen deterministischen Algorithmus gibt, der diesen Weg geht. Wie sehen V A und V B jetzt aus und was bedeuten sie? Die Komlexität in Verteilung ist definiert als c dist := max min E c (I, a) = V A a Es wird das Maximum über alle Verteilungen auf I gebildet (also die schlimmste Eingabe ), bei dem Algorithmus, der die erwarteten Kosten minimiert. Die randomisierte Komlexität ist definiert als c rand := min max E c (i, A) = V B i Das ist das Minimum über alle Verteilungen auf A, bzw. bestes Worst-case-Verhalten eines zufälligen Algorithmus.

7 Das Minimax-Prinzi in der Form des Satz von Loomis besagt, dass die beiden Komlexitätsbegriffe übereinstimmen. Insbesondere gilt: Proosition 2.2 (Yao s Minimax-Theorem) Für alle Verteilungen auf der Menge I der möglichen Eingaben und alle Verteilungen auf der Menge A der deterministischen Algorithmen zur Lösung eines endlichen Problems gilt min E c (I, a) max E c (i, A). a A i I Wir können also sagen: Die erwartete Laufzeit eines randomisierten Algorithmus bei schlechtester Eingabe ist nach unten abgeschätzt durch die erwartete Laufzeit eines otimalen Algorithmus bei beliebiger aber fest gewählter Eingabe. Wir haben jetzt also eine untere Schranke für die maximal erwartete Laufzeit. 3 Berechnung der unteren Schranke für den Algorithmus von Snir Nun schauen wir uns wieder die Sielbäume an und berechnen eine untere Schranke für die maximal erwartete Laufzeit des Algorithmus von Snir. Zuerst müssen einige Dinge festgelegt werden. Man kann leicht zeigen, dass die Werte der Wurzel eines Sielbaums gleich bleiben, wenn man die AND/OR-Oerationen durch NOR-Oerationen ersetzt. Diese logische Oeration gibt nur dann eine 1 aus, wenn beide Eingaben 0 sind. Für Bäume der Höhe 2 ist dies leicht zu zeigen und dann erinnere man sich daran, dass Bäume der Höhe 2 (k + 1) im Prinzi Bäume der Höhe 2 sind, an deren 4 Blättern Bäume der Höhe 2k hängen. Um eine untere Schranke für die maximal erwartete Anzahl der durch einen zufälligen Algorithmus insizierten Blätter herzuleiten, brauchen wir eine bestimmte Verteilung der Blattbelegung und wir müssen eine untere Schranke für die maximal erwartete Anzahl der insizierten Blätter bei einem otimalen deterministischen Algorithmus beweisen. Die Blattbelegung: Den Blättern wird unabhängig mit Wahrscheinlichkeit der Wert 1 zugewiesen. = (1 ) 2 = Wir wählen so, da jetzt die Wahrscheinlichkeit, dass ein innerer Knoten den Wert 1 annimmt, auch ist. Die Werte von Knoten, die nicht in einer Vorfahr-Nachkomme-Beziehung stehen, sind unabhängig. Dies gilt insbesondere für benachbarte Knoten in einer Generation. Wie sollte ein otimaler deterministischer Algorithmus vorgehen? Der Algorithmus sollte immer zuerst den Nachbar eines Knoten angucken, bevor er den Rest des Baumes anschaut. Der Baum wird also nach einer Deth-first-search durchlaufen. Wenn der Wert eines Teilbaums bestimmt ist, werden die anderen Blätter nicht mehr eingelesen. Was ist die erwartete Laufzeit dieses Algorithmus? Sei Z h := # Blätter, die der Algorithmus zur Bestimmung des Wertes eines Knotens in der Generation 2k h insiziert. Dann gilt:

8 Z h = Z (1) h 1 + Z(2) h 1 I A h 1 und Z (i) h 1, i = 1, 2 unabh. Koien von Z h 1 Die Anzahl der insizierten Blätter in Generation 2k h setzt sich zusammen aus der Anzahl der insizierten Blätter in einem Teilbaum der Generation 2k h 1 und, falls dieser den Wert 0 annimmt, auch noch aus der Anzahl der insizierten Blätter im anderen Teilbaum. Das Ereignis A h 1 ist unabhängig von Z (2) h 1. Man kann also den Erwartungswert berechnen: EZ h = EZ h 1 + EZ h 1 EI Ah 1 = EZ h 1 + (1 )EZ h 1 = (2 )EZ h 1 Durch Induktion kann man zeigen, dass EZ 2k = (2 ) 2k gilt. Aus Yao s Minimax-Prinzi folgt nun: Satz 3.1 Die maximale erwartete Anzahl der von einem zufälligen Algorithmus bei der Auswertung eines binären 0-1 Sielbaums insizierten Blätter ist mindestens n α. Dabei ist n die Anzahl der Blätter des Baums und α = log 2 (2 ) = Dabei ist n die Anzahl. Nun kennen wir also eine obere und eine untere Schranke für die maximal erwartete Laufzeit von randomisierten Algorithmen. Für den Algorithmus von Snir kann man man die Komlexität des Auswertens exakt berechnen: Satz 3.2 Der randomisierte Algorithmus von Snir zur Auswertung binärer 0-1 Sielbäume ist otimal. Die Komlexität ( des Auswertens eines binären Sielbaums mit n Blättern ist n β ), wobei β = log =

Spieltheorien und Theoreme

Spieltheorien und Theoreme Sieltheorien heoreme Für das Seminar: Randomized Algorithms bei Prof. Dr. R. Klein on Daniel Herrmann (Anknüfend an den Beitrag von Alexander Hombach) Inhalt: Blickunkt auf randomisierte Strategien von

Mehr

5 Zwei spieltheoretische Aspekte

5 Zwei spieltheoretische Aspekte 5 Zwei spieltheoretische Aspekte In diesem Kapitel wollen wir uns mit dem algorithmischen Problem beschäftigen, sogenannte Und-Oder-Bäume (kurz UOB) auszuwerten. Sie sind ein Spezialfall von Spielbäumen,

Mehr

Randomisierte Algorithmen

Randomisierte Algorithmen Randomisierte Algorithmen Randomisierte Algorithmen 5. Zwei spieltheoretische Aspekte Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2015/2016 1 / 36 Überblick

Mehr

Das Suchproblem 4. Suchen Das Auswahlproblem Suche in Array

Das Suchproblem 4. Suchen Das Auswahlproblem Suche in Array Das Suchproblem Gegeben. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.-3,2.2-3,2.3-] Menge von Datensätzen. Beispiele

Mehr

Das Suchproblem. Gegeben Menge von Datensätzen. Beispiele Telefonverzeichnis, Wörterbuch, Symboltabelle

Das Suchproblem. Gegeben Menge von Datensätzen. Beispiele Telefonverzeichnis, Wörterbuch, Symboltabelle 122 4. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.1-3,2.2-3,2.3-5] 123 Das Suchproblem Gegeben Menge von Datensätzen.

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am..03 Randomisierte Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum

Mehr

Das Suchproblem. Gegeben Menge von Datensätzen. Beispiele Telefonverzeichnis, Wörterbuch, Symboltabelle

Das Suchproblem. Gegeben Menge von Datensätzen. Beispiele Telefonverzeichnis, Wörterbuch, Symboltabelle 119 4. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Exponentielle Suche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.1-3,2.2-3,2.3-5] 120 Das Suchproblem Gegeben

Mehr

Das Suchproblem 4. Suchen Das Auswahlproblem Suche in Array

Das Suchproblem 4. Suchen Das Auswahlproblem Suche in Array Das Suchproblem Gegeben. Suchen Lineare Suche, Binäre Suche, Interpolationssuche, Exponentielle Suche, Untere Schranken [Ottman/Widmayer, Kap. 3.2, Cormen et al, Kap. 2: Problems 2.-3,2.2-3,2.3-] Menge

Mehr

Randomisierte Algorithmen 2. Erste Beispiele

Randomisierte Algorithmen 2. Erste Beispiele Randomisierte Algorithmen Randomisierte Algorithmen 2. Erste Beispiele Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2016/2017 1 / 35 Randomisierter Identitätstest

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 18. März

Mehr

Nash-Gleichgewichte in 2-Spieler Systemen. Katharina Klost Freie Universität Berlin

Nash-Gleichgewichte in 2-Spieler Systemen. Katharina Klost Freie Universität Berlin Nash-Gleichgewichte in 2-Spieler Systemen Katharina Klost Freie Universität Berlin Seminar über Algorithmen, 29.10.2013 Grundlegende Definitionen A Gewinnmatrix für Spieler 1, B Gewinnmatrix für Spieler

Mehr

Wir wollen nun die Behauptung beweisen, dass die Laufzeit von SELECT linear ist, also dass T (n) = O(n) gilt.

Wir wollen nun die Behauptung beweisen, dass die Laufzeit von SELECT linear ist, also dass T (n) = O(n) gilt. Abschätzung für die Rekursion von SELECT Wir wollen nun die Behauptung beweisen, dass die Laufzeit von SELECT linear ist, also dass T (n) = O(n) gilt. Wir nehmen erst einmal an, dass eine Konstante d existiert,

Mehr

3.3 Optimale binäre Suchbäume

3.3 Optimale binäre Suchbäume 3.3 Optimale binäre Suchbäume Problem 3.3.1. Sei S eine Menge von Schlüsseln aus einem endlichen, linear geordneten Universum U, S = {a 1,,...,a n } U und S = n N. Wir wollen S in einem binären Suchbaum

Mehr

Randomisierte Algorithmen

Randomisierte Algorithmen Randomisierte Algorithmen Kapitel 2 Markus Lohrey Universität Leipzig http://www.informatik.uni-leipzig.de/~lohrey/rand WS 2005/2006 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/2006

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Untere Schranken für Sortieren Sortieren mit linearem Aufwand Mediane und Ranggrössen 2 Wie schnell können wir sortieren?

Mehr

Statistische Entscheidungstheorie

Statistische Entscheidungstheorie KAPITEL 6 Statistische Entscheidungstheorie 6.1. Verlustfunktion, Risiko, Minimax Schätzer Es sei (, A, (P θ ) θ ) ein statistisches Modell. Das heißt, ist die Menge aller möglichen Stichproben, A ist

Mehr

Binärbäume und Pfade

Binärbäume und Pfade Binärbäume und Pfade Bevor wir uns dem Pumping Lemma für Typ-2 Sprachen widmen, wollen wir einen einfachen Satz über Binärbäume beweisen. Als Binärbaum bezeichnen wir hier einen Baum, bei dem jeder Knoten,

Mehr

Kapitel 7: Optimalcodierung und Huffman Coding

Kapitel 7: Optimalcodierung und Huffman Coding Kapitel 7: codierung und Huffman Coding Ziele des Kapitels Auftreten von Fehlern bei zu starker Kompression Konstruktion optimaler Codes Huffman Coding 2 Bisher Theorem (Shannon I): Die mittlere Codewortlänge

Mehr

Der Alpha-Beta-Algorithmus

Der Alpha-Beta-Algorithmus Der Alpha-Beta-Algorithmus Maria Hartmann 19. Mai 2017 1 Einführung Wir wollen für bestimmte Spiele algorithmisch die optimale Spielstrategie finden, also die Strategie, die für den betrachteten Spieler

Mehr

Kapitel 7 und Kapitel 8: Gleichgewichte in gemischten Strategien. Einleitung. Übersicht Teil 2 2. Übersicht 3

Kapitel 7 und Kapitel 8: Gleichgewichte in gemischten Strategien. Einleitung. Übersicht Teil 2 2. Übersicht 3 Übersicht Teil 2 Kaitel 7 und Kaitel 8: Gleichgewichte in gemischten Strategien Übersicht Teil 2 2 Übersicht Einleitung Was ist eine gemischte Strategie? Nutzen aus gemischten Strategien Reaktionsfunktionen

Mehr

6 Quicksort. die mittlere Laufzeit Θ(n log n) beträgt und. die in der asymptotischen Notation verborgenen Konstanten sehr klein sind.

6 Quicksort. die mittlere Laufzeit Θ(n log n) beträgt und. die in der asymptotischen Notation verborgenen Konstanten sehr klein sind. Algorithmen und Datenstrukturen 132 6 Quicksort In diesem Abschnitt wird Quicksort, ein weiterer Sortieralgorithmus, vorgestellt. Trotz einer eher langsamen Worst-Case Laufzeit von Θ(n 2 ) ist Quicksort

Mehr

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1} 1. Berechne für jeden Knoten i in BFS-Art eine Liste S i von von i aus erreichbaren Knoten, so dass (i) oder (ii) gilt: (i) S i < n 2 + 1 und Si enthält alle von i aus erreichbaren Knoten (ii) S i = n

Mehr

Die Höhe von binären Suchbäumen Ausarbeitung zum Seminar zu Stochastischen Rekursionsgleichungen im WS 2011/2012

Die Höhe von binären Suchbäumen Ausarbeitung zum Seminar zu Stochastischen Rekursionsgleichungen im WS 2011/2012 Die Höhe von binären Suchbäumen Ausarbeitung zum Seminar zu Stochastischen Rekursionsgleichungen im WS 011/01 Sandra Uhlenbrock 03.11.011 Die folgende Ausarbeitung wird, basierend auf Branching Processes

Mehr

Die mittlere Höhe eines Binärbaumes. h(t) = 1 e(t) mit E(t) = Menge der Blätter von t, h(b, t) = Höhe des Blattes b in t

Die mittlere Höhe eines Binärbaumes. h(t) = 1 e(t) mit E(t) = Menge der Blätter von t, h(b, t) = Höhe des Blattes b in t Höhe von Binärbäumen Die mittlere Höhe eines Binärbaumes h(t) = 1 e(t) b E(t) mit E(t) = Menge der Blätter von t, h(b, t) = Höhe des Blattes b in t h(b, t), Höhe von Binärbäumen Die mittlere Höhe eines

Mehr

Aufgabe 1: Betrachtet werde das Matrixspiel mit der Auszahlungsmatrix a. 1. Für welche Werte von a gibt es ein Nash sches Gleichgewicht?

Aufgabe 1: Betrachtet werde das Matrixspiel mit der Auszahlungsmatrix a. 1. Für welche Werte von a gibt es ein Nash sches Gleichgewicht? Lösungen zu den Übungsaufgaben im Kapitel 7 des Lehrbuches Operations Research Deterministische Modelle und Methoden von Stephan Dempe und Heiner Schreier Aufgabe : Betrachtet werde das Matrixspiel mit

Mehr

Randomisierte Algorithmen und probabilistische Analyse

Randomisierte Algorithmen und probabilistische Analyse Randomisierte Algorithmen und probabilistische Analyse S.Seidl, M.Nening, T.Niederleuthner S.Seidl, M.Nening, T.Niederleuthner 1 / 29 Inhalt 1 Randomisierte Algorithmen 2 Probabilistische Analyse S.Seidl,

Mehr

3. Suchen. Das Suchproblem. Suche in Array. Lineare Suche. 1 n. i = n Gegeben Menge von Datensätzen.

3. Suchen. Das Suchproblem. Suche in Array. Lineare Suche. 1 n. i = n Gegeben Menge von Datensätzen. Das Suchproblem Gegeben Menge von Datensätzen. 3. Suchen Beispiele Telefonverzeichnis, Wörterbuch, Symboltabelle Jeder Datensatz hat einen Schlüssel k. Schlüssel sind vergleichbar: eindeutige Antwort auf

Mehr

Kommunikationskomplexität

Kommunikationskomplexität Kommunikationskomplexität Seminar über Algorithmen, Prof. Dr. Alt, Sommersemester 2010, Freie Universität Berlin Matthias Rost 13. Juli 2010 1 von 37 Matthias Rost Kommunikationskomplexität Inhaltsverzeichnis

Mehr

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

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum

Mehr

Lernmodul 7 Algorithmus von Dijkstra

Lernmodul 7 Algorithmus von Dijkstra Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer

Mehr

Übersicht: 6.1 Einleitung 6.2 Klassische Theorie nichtkooperativer Spiele 6.3 Egoistisches Routing 6.4 Mechanismen-Entwurf 6.

Übersicht: 6.1 Einleitung 6.2 Klassische Theorie nichtkooperativer Spiele 6.3 Egoistisches Routing 6.4 Mechanismen-Entwurf 6. 6. Algorithmische Spieltheorie Übersicht: 6.1 Einleitung 6.2 Klassische Theorie nichtkooperativer Spiele 6.3 Egoistisches Routing 6.4 Mechanismen-Entwurf 6.5 Auktionen 561 6.1 Einleitung Übliche Modelle:

Mehr

Randomisierte Algorithmen

Randomisierte Algorithmen Randomisierte Algorithmen Kapitel 1 Markus Lohrey Universität Leipzig http://www.informatik.uni-leipzig.de/~lohrey/rand WS 2005/2006 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/2006

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Weitere Grundlagen Maike Buchin 20.4.2017 Wiederholung wir interessieren uns für effizienten Algorithmen und Datenstrukturen Laufzeiten messen wir asymptotisch in der Oh-Notation

Mehr

1 Kürzeste Pfade in Graphen

1 Kürzeste Pfade in Graphen Praktikum Algorithmen-Entwurf (Teil 3) 03.11.2011 1 1 Kürzeste Pfade in Graphen Es sei ein gerichteter Graph G = (V, E) mit V = n Knoten, E = m Kanten und Kantengewichten c : E R gegeben. Ein Pfad in G

Mehr

4 Probabilistische Analyse und randomisierte Algorithmen

4 Probabilistische Analyse und randomisierte Algorithmen Algorithmen und Datenstrukturen 96 4 Probabilistische Analyse und randomisierte Algorithmen Bei der Algorithmenanalyse ist es sehr hilfreich, Aspekte berücksichtigen zu können, die vom Zufall abhängen.

Mehr

Spieltheorie. Nash-Gleichgewichts-Berechnung. Bernhard Nebel und Robert Mattmüller. Arbeitsgruppe Grundlagen der Künstlichen Intelligenz 14.

Spieltheorie. Nash-Gleichgewichts-Berechnung. Bernhard Nebel und Robert Mattmüller. Arbeitsgruppe Grundlagen der Künstlichen Intelligenz 14. Spieltheorie Nash-Gleichgewichts-Berechnung Albert-Ludwigs-Universität Freiburg Bernhard Nebel und Robert Mattmüller Arbeitsgruppe Grundlagen der Künstlichen Intelligenz 14. Mai 2012 14. Mai 2012 B. Nebel,

Mehr

Übungen zur Vorlesung Datenstrukturen und Algorithmen SS 2006 Blatt 13

Übungen zur Vorlesung Datenstrukturen und Algorithmen SS 2006 Blatt 13 Übungen zur Vorlesung Datenstrukturen und Algorithmen SS 2006 Blatt 13 Sven Grothklags University of Paderborn 10. Juli 2006 Sven Grothklags (University of Paderborn) DuA Übungsblatt 13 10. Juli 2006 1

Mehr

Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik. 8. Aufgabenblatt

Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik. 8. Aufgabenblatt Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Künstliche Intelligenz: Grundlagen und Anwendungen Albayrak, Fricke (AOT) Oer, Thiel (KI) Wintersemester 2014 / 2015 8. Aufgabenblatt

Mehr

7 Weitere Baumstrukturen und Heapstrukturen

7 Weitere Baumstrukturen und Heapstrukturen 7 Weitere Baumstrukturen und Heapstrukturen Man kann kurze Suchzeiten in Baumstrukturen erreichen durch Rebalancierung bei Einfügungen und Löschungen (AVL Bäume, gewichtsbalancierte Bäume, Bruderbäume,

Mehr

n t(2k + 1) in den P k s r = n t(2k + 1) Rest

n t(2k + 1) in den P k s r = n t(2k + 1) Rest Kette von P k s: Gesamtzahl der Elemente: top P k bottom P k P k }{{} t n t(2k + 1) in den P k s r = n t(2k + 1) Rest EADS 4 Schönhage/Paterson/Pippenger-Median-Algorithmus 365/530 Wenn r < t 1, dann wissen

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 6 FS 14

Datenstrukturen & Algorithmen Lösungen zu Blatt 6 FS 14 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 2. April

Mehr

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.

8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. 8. A & D - Heapsort Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. Genauer werden wir immer wieder benötigte Operationen durch Datenstrukturen unterstützen.

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 (Th. Ottmann und P. Widmayer)

Algorithmen und Datenstrukturen (Th. Ottmann und P. Widmayer) Algorithmen und Datenstrukturen (Th. Ottmann und P. Widmayer) Folien: Suchbäume Autor: Stefan Edelkam Institut für Informatik Georges-Köhler-Allee Albert-Ludwigs-Universität Freiburg 1 Bäume Idee: Bäume

Mehr

Schriftliche Ausarbeitung zum Seminarvortrag: Einführung in die Perfekte Simulation. Propp-Wilson-Algorithmus

Schriftliche Ausarbeitung zum Seminarvortrag: Einführung in die Perfekte Simulation. Propp-Wilson-Algorithmus Technische Universität Berlin Schriftliche Ausarbeitung zum Seminarvortrag: Einführung in die Perfekte Simulation Propp-Wilson-Algorithmus Lisa Brust Matrikelnummer: 330793 Master Mathematik 30. Juni 2016

Mehr

1. Musterlösung. Problem 1: Average-case-Laufzeit vs. Worst-case-Laufzeit ** i=1

1. Musterlösung. Problem 1: Average-case-Laufzeit vs. Worst-case-Laufzeit ** i=1 Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 05/06 ITI Wagner. Musterlösung Problem : Average-case-Laufzeit vs. Worst-case-Laufzeit ** (a) Im schlimmsten Fall werden für jedes Element

Mehr

Geometrische Spannbäume minimalen Durchmessers

Geometrische Spannbäume minimalen Durchmessers Aroximationsschemata in Ablauflanung, Grahentheorie und Geometrie (engl.: Geometric Minimum-Diameter Sanning Tree, GMDST) SS 2004 Überblick Begriffsdefinitionen Eigenschaften von GMDSTs Exakter Algorithmus

Mehr

Graphische Spiele. M i (p) M i (p[i : p i]) M i (p) + ε M i (p[i : p i])

Graphische Spiele. M i (p) M i (p[i : p i]) M i (p) + ε M i (p[i : p i]) Seminar über Algorithmen 19. November 2013 Michael Brückner Graphische Spiele Wolfgang Mulzer, Yannik Stein 1 Einführung Da in Mehrspielerspielen mit einer hohen Anzahl n N an Spielern die Auszahlungsdarstellungen

Mehr

9. Rekursion. 1 falls n 1 n (n 1)!, andernfalls. Experiment: Die Türme von Hanoi. Links Mitte Rechts. Mathematische Rekursion

9. Rekursion. 1 falls n 1 n (n 1)!, andernfalls. Experiment: Die Türme von Hanoi. Links Mitte Rechts. Mathematische Rekursion Experiment: Die Türme von Hanoi. Rekursion Mathematische Rekursion, Terminierung, der Aufrufstapel, Beispiele, Rekursion vs. Iteration Links Mitte Rechts Mathematische Rekursion Viele mathematische Funktionen

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 11 (1.6.2016) Binäre Suchbäume III Algorithmen und Komplexität Tiefe eines binären Suchbaums Worst-Case Laufzeit der Operationen in binären

Mehr

Algorithmen für schwierige Probleme

Algorithmen für schwierige Probleme Algorithmen für schwierige Probleme Britta Dorn Wintersemester 2011/12 24. November 2011 Farbkodierung Beispiel Longest Path Longest Path gegeben: G = (V, E) und k N. Frage: Gibt es einen einfachen Pfad

Mehr

11.1 Grundlagen - Denitionen

11.1 Grundlagen - Denitionen 11 Binärbäume 11.1 Grundlagen - Denitionen Denition: Ein Baum ist eine Menge, die durch eine sog. Nachfolgerrelation strukturiert ist. In einem Baum gilt: (I) (II) 1 Knoten w ohne VATER(w), das ist die

Mehr

Zufall oder Absicht?

Zufall oder Absicht? Zufall oder Absicht? Randomisierung und Derandomisierung Prof. Markus Bläser Universität des Saarlandes 4. Januar 2010 1 / 21 Zufall oder Absicht? 1 Randomisierte Algorithmen 2 Polynom-Identitätstests

Mehr

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck Lemma 15 KLP 1 ist genau dann lösbar, wenn das dazugehörige LP KLP 2 eine Lösung mit dem Wert Z = 0 besitzt. Ist Z = 0 für x 0, x 0, dann ist x eine zulässige Lösung von KLP 1. Beweis von Lemma 15: Nach

Mehr

Binäre Suchbäume. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps

Binäre Suchbäume. Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps Binäre Suchbäume Mengen, Funktionalität, Binäre Suchbäume, Heaps, Treaps Mengen n Ziel: Aufrechterhalten einer Menge (hier: ganzer Zahlen) unter folgenden Operationen: Mengen n Ziel: Aufrechterhalten einer

Mehr

Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8

Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 ETH Zürich Institut für Theoretische Informatik Prof. Dr. Angelika Steger Florian Meier, Ralph Keusch HS 2017 Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 Lösungsvorschlag zu Aufgabe 1

Mehr

Wiederholung. Divide & Conquer Strategie

Wiederholung. Divide & Conquer Strategie Wiederholung Divide & Conquer Strategie Binäre Suche O(log n) Rekursives Suchen im linken oder rechten Teilintervall Insertion-Sort O(n 2 ) Rekursives Sortieren von a[1..n-1], a[n] Einfügen von a[n] in

Mehr

12 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang

12 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang 12 (2-4)-Bäume (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang 2. Die Ordnung (maximale Anzahl der Söhne eines Knotens) ist gleich 4 3. Innere Knoten haben 2 Söhne

Mehr

3.1 Sukzessive Minima und reduzierte Basen: Resultate

3.1 Sukzessive Minima und reduzierte Basen: Resultate Gitter und Codes c Rudolf Scharlau 4. Juni 2009 202 3.1 Sukzessive Minima und reduzierte Basen: Resultate In diesem Abschnitt behandeln wir die Existenz von kurzen Basen, das sind Basen eines Gitters,

Mehr

Grundlagen: Algorithmen und Datenstrukturen

Grundlagen: Algorithmen und Datenstrukturen Technische Universität München Fakultät für Informatik Lehrstuhl für Effiziente Algorithmen Dr. Hanjo Täubig Tobias Lieber Sommersemester 2011 Übungsblatt 1 16. September 2011 Grundlagen: Algorithmen und

Mehr

D-MAVT Lineare Algebra I HS 2017 Prof. Dr. N. Hungerbühler. Lösungen Serie 10

D-MAVT Lineare Algebra I HS 2017 Prof. Dr. N. Hungerbühler. Lösungen Serie 10 D-MAVT Lineare Algebra I HS 2017 Prof. Dr. N. Hungerbühler Lösungen Serie 10 1. Für a 1 : 1 1 0, a 2 : 1 1, a 3 : 1 1 1, b : 2 2 2 1 und A : (a 1, a 2, a 3 ) gelten welche der folgenden Aussagen? (a) det(a)

Mehr

13 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang

13 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang 13 (2-4)-Bäume (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang 2. Die Ordnung (maximale Anzahl der Söhne eines Knotens) ist gleich 4 3. Innere Knoten haben 2 Söhne

Mehr

Relationen und DAGs, starker Zusammenhang

Relationen und DAGs, starker Zusammenhang Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind

Mehr

Datenstrukturen und Algorithmen (SS 2013)

Datenstrukturen und Algorithmen (SS 2013) Datenstrukturen und Algorithmen (SS 2013) Übungsblatt 10 Abgabe: Montag, 08.07.2013, 14:00 Uhr Die Übungen sollen in Gruppen von zwei bis drei Personen bearbeitet werden. Schreiben Sie die Namen jedes

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 10 (27.5.2016) Binäre Suchbäume II Algorithmen und Komplexität Zusätzliche Dictionary Operationen Dictionary: Zusätzliche mögliche Operationen:

Mehr

Algorithmische Geometrie: Delaunay Triangulierung (Teil 2)

Algorithmische Geometrie: Delaunay Triangulierung (Teil 2) Algorithmische Geometrie: Delaunay Triangulierung (Teil 2) Nico Düvelmeyer WS 2009/2010, 2.2.2010 Überblick 1 Delaunay Triangulierungen 2 Berechnung der Delaunay Triangulierung Randomisiert inkrementeller

Mehr

Informatik II Prüfungsvorbereitungskurs

Informatik II Prüfungsvorbereitungskurs Informatik II Prüfungsvorbereitungskurs Tag 4, 9.6.2017 Giuseppe Accaputo g@accaputo.ch 1 Aufbau des PVK Tag 1: Java Teil 1 Tag 2: Java Teil 2 Tag 3: Algorithmen & Komplexität Tag 4: Dynamische Datenstrukturen,

Mehr

Algorithmen und Datenstrukturen Heapsort

Algorithmen und Datenstrukturen Heapsort Algorithmen und Datenstrukturen 2 5 Heapsort In diesem Kapitel wird Heapsort, ein weiterer Sortieralgorithmus, vorgestellt. Dieser besitzt wie MERGE-SORT eine Laufzeit von O(n log n), sortiert jedoch das

Mehr

Vorlesung: Nicht-kooperative Spieltheorie. Teil 4: 2-Personen-Nullsummenspiele

Vorlesung: Nicht-kooperative Spieltheorie. Teil 4: 2-Personen-Nullsummenspiele Vorlesung: Nicht-kooperative Spieltheorie Teil 4: 2-Personen-Nullsummenspiele Dr. Thomas Krieger Wintertrimester 2009 Dr. Thomas Krieger Vorlesung: Nicht-kooperative Spieltheorie 1 Definition 2-Personen-Nullsummenspiele

Mehr

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss.

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. (a, b)-bäume / 1. Szenario: Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. Konsequenz: Kommunikation zwischen Hauptspeicher und Festplatte - geschieht nicht Byte für Byte,

Mehr

Übungsklausur Algorithmen I

Übungsklausur Algorithmen I Jun.-Prof. Hofheinz, Jun.-Prof. Meyerhenke (ITI, KIT) 08.06.2015 Übungsklausur Algorithmen I Aufgabe 1. (Algorithm Engineering) Nennen Sie zwei Konzepte, die Algorithm Engineering im Gegensatz zu theoretischer

Mehr

Praktikum Algorithmen-Entwurf (Teil 7)

Praktikum Algorithmen-Entwurf (Teil 7) Praktikum Algorithmen-Entwurf (Teil 7) 28.11.2005 1 1 Vier gewinnt Die Spielregeln von Vier Gewinnt sind sehr einfach: Das Spielfeld besteht aus 7 Spalten und 6 Reihen. Jeder Spieler erhält zu Beginn des

Mehr

1.3 Erinnerung: Mergesort

1.3 Erinnerung: Mergesort Mergesort 1.3 Erinnerung: Mergesort Um n Zahlen/Objekte a 1,..., a n zu sortieren, geht der Mergesort-Algorithmus so vor: Falls n n 0 : Sortiere mit einem naiven Algorithmus (z. B. Insertion Sort). Sonst:

Mehr

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.

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. 2.5 Suchen Eine Menge S will nach einem Element durchsucht werden. Die Menge S ist statisch und S = n. S ist Teilmenge eines Universums auf dem eine lineare Ordnung definiert ist und soll so gespeichert

Mehr

2.2 Allgemeine (vergleichsbasierte) Sortierverfahren

2.2 Allgemeine (vergleichsbasierte) Sortierverfahren . Allgemeine (vergleichsbasierte) Sortierverfahren Vergleichsbaum: Der Aufbau des Verbleichsbaum ist für jeden Algorithmus und jede Eingabelänge n gleich. Jede Permutation der Eingabe, muss zu einem anderen

Mehr

Kapitel 4: Gemischte Strategien. Literatur: Tadelis Chapter 6

Kapitel 4: Gemischte Strategien. Literatur: Tadelis Chapter 6 Kapitel 4: Gemischte Strategien Literatur: Tadelis Chapter 6 Idee In vielen Spielen gibt es kein Nash Gleichgewicht in reinen Strategien (und auch kein Gleichgewicht in dominanten Strategien) Darüber hinaus

Mehr

Untere Schranke für allgemeine Sortierverfahren

Untere Schranke für allgemeine Sortierverfahren Untere Schranke für allgemeine Sortierverfahren Prinzipielle Frage: wie schnell kann ein Algorithmus (im worst case) überhaupt sein? Satz: Zum einer Folge von n Keys mit einem allgemeinen Sortierverfahren

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 11 (4.6.2014) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch sein

Mehr

Informatik II Bäume zum effizienten Information Retrieval

Informatik II Bäume zum effizienten Information Retrieval lausthal Informatik II Bäume zum effizienten Information Retrieval. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Binäre Suchbäume (binary search tree, BST) Speichere wieder Daten als "Schlüssel

Mehr

a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein:

a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein: 1 Aufgabe 8.1 (P) (2, 3)-Baum a) Fügen Sie die Zahlen 39, 38, 37 und 36 in folgenden (2, 3)-Baum ein: Zeichnen Sie, was in jedem Schritt passiert. b) Löschen Sie die Zahlen 65, 70 und 100 aus folgendem

Mehr

Typischerweise sind randomisierte Algorithmen einfacher zu beschreiben und zu implementieren als deterministische Algorithmen.

Typischerweise sind randomisierte Algorithmen einfacher zu beschreiben und zu implementieren als deterministische Algorithmen. Kapitel Randomisierte Algorithmen Einleitung Definition: Ein Algorithmus, der im Laufe seiner Ausführung gewisse Entscheidungen zufällig trifft, heisst randomisierter Algorithmus. Beispiel: Bei der randomisierten

Mehr

lim log 2n n = > 0 Da es einen Limes gibt, gibt es auch einen Limes inferior, der gleich diesem Limes ist.

lim log 2n n = > 0 Da es einen Limes gibt, gibt es auch einen Limes inferior, der gleich diesem Limes ist. Prof. aa Dr. Ir. Joost-Pieter Katoen Christian Dehnert, Jonathan Heinen, Thomas Ströder, Sabrina von Styp Aufgabe 1 (O-Notation): Beweisen oder widerlegen Sie die folgenden Aussagen: (3 + 3 + 4 = 10 Punkte)

Mehr

Kapitel 2: Sortier- und Selektionsverfahren Gliederung

Kapitel 2: Sortier- und Selektionsverfahren Gliederung Gliederung 1. Laufzeit von Algorithmen 2. Sortier- und Selektionsverfahren 3. Paradigmen des Algorithmenentwurfs 4. Ausgewählte Datenstrukturen 5. Algorithmische Geometrie 6. Randomisierte Algorithmen

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 22 (20.7.2016) Greedy Algorithmen - Datenkompression Algorithmen und Komplexität Greedy Algorithmen Greedy Algorithmen sind eine Algorithmenmethode,

Mehr

Beweis: Annahme: T (n) c n, wobei c = c(m) konstant ist. Die Annahme ist ok, falls T (n)

Beweis: Annahme: T (n) c n, wobei c = c(m) konstant ist. Die Annahme ist ok, falls T (n) Beweis: Annahme: T (n) c n, wobei c = c(m) konstant ist. Die Annahme ist ok, falls T (n) ( ( ) n 3 T + T m ) 4 n n 3 c + m 4 n c + n n + C m + cn; dies gilt, falls m 2 n m C m + n 2 (bis auf, ) c m + 3

Mehr

Algorithmen und Zufall

Algorithmen und Zufall Algorithmen und Zufall Jochen Geiger 20 Februar 2006 Contents II I Randomisierte Algorithmen 1 Such- und Sortieralgorithmen 2 11 Der randomisierte Quicksort 2 12 Der Lazy Select Algorithmus 6 2 Das Beschleunigen

Mehr

b liegt zwischen a und c.

b liegt zwischen a und c. 2 DIE ANORDNUNGSAXIOME 5 (2.4) a, b, c R : (a < b 0 < c) ac < bc Monotoniegesetz der Multiplikation Bezeichnungen a > b : b < a (> wird gelesen: größer als ) a b : a < b oder a = b a b : a > b oder a =

Mehr

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). 8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame

Mehr

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V. Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.

Mehr

Effiziente Algorithmen I

Effiziente Algorithmen I 9. Präsenzaufgabenblatt, WiSe 2013/14 Übungstunden am 13.01. & 15.01.2014 Aufgabe Q Gegeben sei ein Fluss-Netzwerk mit Digraph D = (V, A), Knotenkapazitäten c(u, v) 0, Quelle s und Senke t. Kann sich der

Mehr

Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =.

Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n i =. 2. Der Blum-Floyd-Pratt-Rivest-Tarjan Selektions-Algorithmus Definition 77 Sei n N. Der Median (das mittlere Element) einer total geordneten Menge von n Elementen ist deren i-kleinstes Element, wobei n

Mehr

Online Algorithmen. Online Kürzeste Wege Probleme. Online Algorithmen Kompetitivität

Online Algorithmen. Online Kürzeste Wege Probleme. Online Algorithmen Kompetitivität Online Algorithmen Wiederholung Eigenschaften von Online Algorithmen Unvollständige (Vorab-)Information Sequentielle Anfragen Abarbeitung der aktuellen Anfragen ohne Information über zukünftige Anfragen

Mehr

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung

Punktlokalisation 1. Trapez-Zerlegungen. 2. Eine Suchstruktur. 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung Punktlokalisation 1. Trapez-Zerlegungen 2. Eine Suchstruktur 3. Randomisierter, inkrementeller Algorithmus zur Konstruktion der Trapez-Zerlegung 4. Analyse Punktlokalisation Einteilung in Streifen Anfragezeit:

Mehr

Untere Schranken, Entscheidungsbäume, Yao s Min-Max-Lemma

Untere Schranken, Entscheidungsbäume, Yao s Min-Max-Lemma Untere Schranken, Entscheidungsbäume, Yao s Min-Max-Lemma Proseminar: Die P-ungleich-NP-Vermutung (SS 2012) Yassine Marrakchi, Yuanfan Wang 15. Juni 2012 INSTITUT FÜR THEORETISCHE INFORMATIK KIT Universität

Mehr

Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur vom Seite 1. Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15.

Kurs 1663 Datenstrukturen Musterlösungen zur Klausur vom Seite 1. Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15. Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur vom 15.08.98 Seite 1 Musterlösungen zur Hauptklausur Kurs 1663 Datenstrukturen 15. August 1998 Kurs 1663 Datenstrukturen" Musterlösungen zur Klausur

Mehr

Das Problem des Handlungsreisenden

Das Problem des Handlungsreisenden Seite 1 Das Problem des Handlungsreisenden Abbildung 1: Alle möglichen Rundreisen für 4 Städte Das TSP-Problem tritt in der Praxis in vielen Anwendungen als Teilproblem auf. Hierzu gehören z.b. Optimierungsprobleme

Mehr

Effiziente Algorithmen (SS2015)

Effiziente Algorithmen (SS2015) Effiziente Algorithmen (SS205) Kapitel 5 Approximation II Walter Unger Lehrstuhl für Informatik 2.06.205 07:59 5 Inhaltsverzeichnis < > Walter Unger 5.7.205 :3 SS205 Z Inhalt I Set Cover Einleitung Approximation

Mehr