Randomisierte Algorithmen

Größe: px
Ab Seite anzeigen:

Download "Randomisierte Algorithmen"

Transkript

1 Randomisierte Algorithmen Kapitel 2 Markus Lohrey Universität Leipzig WS 2005/2006 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

2 Spieltheoretische Methoden Ein Spielbaum ist ein gewurzelter Baum mit folgenden Eigenschaften: Jedes Blatt ist mit einer reellen Zahl markiert. Knoten mit gerader (bzw. ungerader) Distanz von der Wurzel sind mit MIN (bzw. MAX) markiert. Beispiel: MIN 3 MAX 2 5 MAX MIN MIN 4 Auswertung des obigen Spielbaums MAX Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

3 Spieltheoretische Methoden Hier: 2 Einschränkungen Blätter sind mit 0 oder 1 beschriftet, d.h. MIN =AND und MAX =OR. = AND-OR-Bäume Sei T d,k der Baum mit: Jedes Nicht-Blatt hat genau d Kinder. Jedes Blatt hat Distanz 2k zur Wurzel. Zum Beispiel: T 3,1 =, = T d,k hat d 2k Blätter INPUT: Baum T d,k und d 2k 0/1-Werte für die Blätter ( = eindeutiger AND-OR-Baum) Ziel: Werte Wurzel von T d,k aus. Wir wollen dabei möglichst wenige der 0/1-Werte an den Blättern lesen. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

4 Spieltheoretische Methoden Beispiel: AND OR OR Nach Lesen dieser beiden Blätter müssen diese nicht mehr gelesen werden. Man kann folgendes zeigen: Sei A ein beliebiger deterministischer Auswertungsalgorithmus. Dann gibt es eine 0/1-Beschriftung der Blätter von T d,k, bei der A alle d 2k Blätter lesen muss. Im Folgenden: d = 2 = T 2,k hat 4 k Blätter Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

5 Spieltheoretische Methoden Algorithmus randeval eval(v) % v ist ein Knoten von T 2,k if v ist ein Blatt then return Wert von v else endif Seien v 0 und v 1 die Kinder von v. Wähle zufällig ein i {0, 1}. b := eval(v i ) if v ist ein AND-Knoten then if b = 0 then return (0) else return eval(v 1 i ) endif elseif % v ist also ein OR-Knoten if b = 1 then return (1) else return eval(v 1 i ) endif endif Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

6 Spieltheoretische Methoden Satz Für jede 0/1-Beschriftung der Blätter von T d,k ist der Erwartungswert für die Anzahl der gelesenen Blätter in einem Ablauf von randeval höchstens 3 k. k = 0 T 2,0 = v (ein Blatt) = Anzahl der auszuwertenden Blätter bei Aufruf eval(v) = 1 = 3 0 k > 0 T 2,k: AND OR OR T 2,k 1 T 2,k 1 T 2,k 1 T 2,k 1 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

7 Spieltheoretische Methoden Betrachte zuerst den folgenden Baum: y x OR z T 2,k 1 T 2,k 1 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

8 Spieltheoretische Methoden 1. Fall: eval(x) = 1 = eval(y) = 1 oder eval(z) = 1. Sei z.b. eval(y) = 1. Bei Aufruf eval(x) wird mit Wahrscheinlichkeit 1 /2 eval(y) als erstes aufgerufen. Induktionshypothese: Für v {y, z} E[Anzahl der ausgewerteten Blätter bei Aufruf eval(v)] 3 k 1 = E[Anzahl der ausgewerteten Blätter bei Aufruf eval(x)] 1 /2 3 k /2 2 } {{ 3 k 1 } = 3 /2 3 k 1 (1) Kosten für den Fall eval(y) = 1, eval(z) = 0 und eval(z) wird als erstes aufgerufen. Bemerkung: Wir gehen hier von einem Worst-Case-Input aus: eval(y) = 1 und eval(z) = 0. Der Fall eval(y) = eval(z) = 1 würde einen Erwartungswert für die Anzahl der ausgewerteten Blätter bei Aufruf eval(x) von 3 k 1 < 3 /2 3 k 1 liefern. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

9 Spieltheoretische Methoden 2. Fall: eval(x) = 0 = eval(y) = eval(z) = 0 = E[Anzahl der ausgewerteten Blätter bei Aufruf eval(x)] 2 3 k 1 (2) Nun betrachten wir T 2,k: v OR u AND w OR 1. Fall: eval(u) = 1 = eval(v) = eval(w) = 1 = E[Anzahl der ausgewerteten Blätter bei Aufruf eval(u)] 3 /2 3 k 1 + } {{ } 3 /2 3 k 1 } {{ } = 3k 1 Kosten für Auswertung von v und w nach (1) Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

10 Spieltheoretische Methoden 2. Fall: eval(u) = 0 = eval(v) oder eval(w) = 0 Sei z.b. eval(v) = 0. Mit Wahrscheinlichkeit 1 /2 wird eval(v) als erstes aufgerufen. E[Anzahl der ausgewerteten Blätter bei Aufruf eval(u)] 1 /2 2 } {{ 3 k 1 } + 1 /2(2 } {{ 3 k 1 } + 3 /2 3 k 1 ) } {{ } Kosten für Kosten für Kosten für Auswertung Auswertung Auswertung von v nach von v nach von w, falls (2) (2) eval(w) = 1, nach (1) = 3 k k /4 3 k 1 < 3 k randeval ist ein Las Vegas Algorithmus Im Folgenden wollen wir eine untere Schranke für den Erwartungswert der Laufzeit eines beliebigen Las Vegas Algorithmus für ein Problem ableiten. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

11 MinMax-Prinzip, Spieltheorie Beispiel: Stein-Schere-Papier mit 2 Spielern: Roberta, Charles Darstellung als Gewinn-Matrix: Strategien von Charles Schere Papier Stein Strategien Schere von Papier Roberta Stein Auszahlungsbetrag von Charles an Roberta (Gewinn für Roberta) Stein-Schere-Papier ist ein Null-Summen-Spiel: Gewinn für Roberta = Verlust für Charles Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

12 MinMax-Prinzip, Spieltheorie Jedes Null-Summen Spiel kann durch eine (n m) Gewinn-Matrix M dargestellt werden. n = Anzahl der Zeilen von M = Anzahl der Strategien für Roberta m = Anzahl der Spalten von M = Anzahl der Strategien für Charles M ij = Gewinn für Roberta, falls sie Strategie i und Charles Strategie j wählt Angenommen Roberta wählt Strategie i. = Sie wird mindestens Gewinn min j M ij machen. = i ist optimale Strategie für Roberta, falls min j M ij maximal. Sei V R = max i min j M ij = Mindestgewinn für Roberta, falls sie optimal spielt. j ist optimale Strategie für Charles, falls max i M ij minimal. Sei V C = min j max i M ij = Maximalbetrag den Charles zahlen muss, falls er optimal spielt. Übung: max i min j M ij min j max i M ij Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

13 MinMax-Prinzip, Spieltheorie Bemerkung: Es kann max i min j M ij < min j max i M ij gelten. Für Stein-Schere-Papier gilt z.b. V R = max i min j M ij = 1 und V C = min j max i M ij = 1. Falls V R = V C, dann existiert ein Paar (ρ, γ) mit min j M ρ,j = V R = V C = max i M i,γ = M ρ,γ. (ρ, γ) ist eine reine Lösung des Spiels oder ein Sattelpunkt. Beispiel: V R = 0, V C = 0 (1, 1) ist ein Sattelpunkt für dieses Spiel. Vorsicht: M 1,1 = M 2,2 = M 3,3, aber (2, 2) oder (3, 3) sind keine Sattelpunkte. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

14 MinMax-Prinzip, Spieltheorie Eine randomisierte Strategie für Spieler A {Roberta, Charles} ist eine Wahrscheinlichkeitsverteilung auf den möglichen Strategien von A. randomisierte Strategie für Roberta: p = (p 1,..., p n ) [0, 1] n mit n i=1 p i = 1 p i = Prob[Roberta wählt Strategie i aus] randomisierte Strategie für Charles: q = (q 1,..., q m ) [0, 1] m mit m j=1 q j = 1 q j = Prob[Charles wählt Strategie j aus] Gewinn für Roberta (= Verlust für Charles) ist nun eine Zufalls variable G n m E[G] = p i M ij q j = p M q T i=1 j=1 Wieder seien V R = max p min q p M q T und V C = min q max p p M q T. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

15 MinMax-Prinzip, Spieltheorie Satz (von Neumann's MinMax Theorem) Für jedes 2-Spieler Null-Summen Spiel mit Gewinnmatrix M gilt: max p min q p M q T = min q max p M q T p Ein Paar von randomisierten Strategien (ˆp, ˆq) mit min q ˆp M q T = V R = V C = max p p M ˆq T heiÿt ein Sattelpunkt. ˆp und ˆq sind optimale gemischte Strategien (sind nicht unbedingt eindeutig). Beobachtung: Für eine feste Verteilung p (etwa ˆp) ist p M q T eine lineare Funktion α 1 q 1 + α 2 q α m q m mit α i R, q i [0, 1], q 1 + q q m = 1. Diese wird minimiert durch die Verteilung q = (q 1,..., q m ) mit { 1 falls αi = min{α 1,..., α m } q i = 0 sonst Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

16 MinMax-Prinzip, Spieltheorie Sei e k = (0,..., 0, 1, 0,..., 0). k-te Komponente Also: max p min q p M q T = max p min j p M e T j. Analog: min q max p p M q T = min q max i e i M q T. Konsequenz: Satz (Loomis Theorem) Für jedes 2-Spieler Null-Summen Spiel mit Gewinnmatrix M gilt: max min p p M ej T = min j q max e i M q T i Yaos Prinzip Sei P ein Berechnungsproblem (z.b. Auswerten von AND-OR-Bäumen). Fixiere eine endliche Menge A von deterministischen Algorithmen zur Lösung von P. Sei I die Menge aller Inputs der Länge n für P. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

17 MinMax-Prinzip, Spieltheorie Charles = Algorithmendesigner Eine (reine) Strategie für Charles ist ein deterministischer Algorithmus A A. Eine randomisierte Strategie für Charles ist eine Wahrscheinlichkeitsverteilung q über der Menge A von deterministischen Algorithmen. Diese kann als ein Las Vegas Algorithmus A q betrachtet werden. Roberta = Gegner (Adversary) Eine (reine) Strategie für Roberta ist ein Input I I. Eine randomisierte Strategie für Roberta ist eine Wahrscheinlichkeitsverteilung p auf der Inputmenge I. Sei I p ein Zufallsinput, der gemäÿ der Verteilung p aus I ausgewählt wird. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

18 MinMax-Prinzip, Spieltheorie E[C(I p, A q )] = Erwartungswert für die Laufzeit des Las Vegas Algorithmus A q für einen Zufallsinput I p = p I C(I, A) q A I I A A p i = Prob[Roberta wählt Input I ], C(I, A) = Laufzeit des determinisitschen Algorithmus A bei Input I, q A = Prob[Charles wählt Algorithmus A] = max p min E[C[I p, A q )] = min q q E[C(I p, A)] = min A A q max min p max E[C(I p, A q )] p max I I E[C(I, A q)] (von Neumann) (Loomi) Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

19 MinMax-Prinzip, Spieltheorie Konsequenz: Satz (Yaos MinMax Prinzip) Für jede feste Inputverteilung p über I und jede feste Verteilung q über A ( = Las Vegas Algorithmus) gilt: min E[C(I p, A)] max E[C(I, A q)] A A I I } {{ } } {{ } erwartete laufzeit eines optimalen det. Al- des Las Vegas Algo- worst case Laufzeit gorithmus für Inputverteilunrithmus A q p Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

20 MinMax-Prinzip, Spieltheorie Allgemeines Vorgehen Sei P ein Berechnungsproblem. Sei R ein beliebiger Las Vegas Algorithmus zur Lösung von P. R kann als eine Wahrscheinlichkeitsverteilung q über einer endlichen Menge A von deterministischen Algorithmen angesehen werden (alle Münzen zu Beginn werfen). Wähle nun eine geeignete Verteilung p auf Inputs der Länge n. Yao = Es gibt einen Input I der Länge n mit E[Laufzeit von R auf Input I ] min A A E[C(I p, A)] min A B E[C(I p, A)] wobei B = Menge aller deterministischen Algorithmen zur Lösung von P. Flexibilität von Yaos Methode: Inputverteilung p kann frei gewählt werden. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

21 MinMax-Prinzip, Spieltheorie Anwendung von Yaos MinMax Prinzip auf das Auswerten von AND-OR-Bäumen Beobachtung: Folgende 2 Bäume werten sich zum gleichen Wert an der Wurzel aus: T 2,k, wobei Knoten mit gerader (ungerader) Distanz zur Wurzel mit AND (OR) beschriftet sind. T 2,k, wobei alle Knoten mit NOR (NOT-OR) beschriftet sind. NOR NOR NOR u v w x = NOR NOT OR NOT OR u v w x = AND OR OR u v w x Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

22 MinMax-Prinzip, Spieltheorie Im Folgenden betrachten wir T 2,k wobei alle internen Knoten mit NOR beschriftet sind. Sei p = 3 5 [0, 1]. 2 Markiere jedes Blatt von T 2,k unabhängig mit Wahr-scheinlichkeit p mit 1 (und mit Wahrscheinlichkeit ( ) 1 p mit 0). Beobachtung: Betrachte folgenden Baum: NOR z x y Setze x und y unabh. voneinander mit Wahrscheinlichkeit p jeweils auf 1. = Prob[z = 1] = Prob[x = 0 y = 0] = Prob[x = 0] Prob[y = 0] = (1 p) 2 = p = Jeder Knoten in T 2,k wertet sich mit Wahrscheinlichkeit p zu 1 aus. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

23 MinMax-Prinzip, Spieltheorie Sei nun A ein beliebiger deterministischer Algorithmus zum Auswerten von NOR-Bäumen. Wir beweisen eine untere Schranke für E[Laufzeit von A, falls Input zufällig nach Methode ( ) gewählt wird]. Ein deterministischer Algorithmus A zum Auswerten von NOR-Bäumen ist ein depth-rst pruning Algorithmus, falls für jeden Knoten v mit Kindern v 0, v 1 gilt: Es gibt ein i {0, 1}, so dass A erst nur Blätter unterhalb von v i und danach nur Blätter unterhalb von v 1 i besucht. Satz (ohne Beweis) Für jeden deterministischen Algorithmus A zum Auswerten von NOR-Bäumen gibt es einen depth-rst pruning Algorithmus B mit: [ ] [ ] Laufzeit von A, falls Input zufällig nach ( ) gewählt wird fällig nach ( ) gewählt Laufzeit von B, falls Input zu- E E wird Wir können uns also auf depth-rst pruning Algorithmen beschränken. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

24 MinMax-Prinzip, Spieltheorie Sei A ein depth-rst pruning Algorithmus. Sei w(h) = E [ Anzahl der Blätter eines NOR-Baums der Tiefe h, die A auswertet, falls jedes Blatt mit Wahrscheinlichkeit p auf 1 gesetzt wird ] = w(h) = w(h 1) } {{ } + (1 p) } {{ } w(h 1) } {{ } Aufwand zum Auswerten des ersten dass sich erstes Wahrscheinlichkeit, Kinds der Wurzel Kind der Wurzel zu 0 auswertet = w(h) = (2 p) w(h 1) Da w(0) = 1, folgt w(h) = (2 p) h. h = log 2 (n), wobei n = Anzahl der Blätter. Aufwand zum Auswerten des zweiten Kinds der Wurzel = w(h) = (2 p) log 2 (n) = n log 2 (2 p) n 0,694 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

25 MinMax-Prinzip, Spieltheorie Satz Für jeden randomisierten Las Vegas Algorithmus R zum Auswerten von AND-OR-Bäumen gibt es eine Belegung I der Blätter von T 2,k mit 0/1-Werten, so dass: [ ] Anzahl der Blätter von T2,k die R bei Belegung der Blätter gemäÿ I E n 0,694 auswertet wobei n = 4 k. Erinnerung: Für randeval war der Erwartungswert für die Anzahl der ausgewerteten Blätter von T 2,k bei jeder Belegung der Blätter mit 0/1-Werten 3 k. n = 4 k = 3 k n 0,793 Kann Yaos Methode so angewendet werden, dass wir eine untere Schranke von 3 k erhalten? Ja: Wahrscheinlichkeitsverteilung auf Inputmenge muss cleverer gewählt werden. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

26 Derandomisierung und Nicht-Uniformität Derandomisierung und Nicht-Uniformität Ein Boolescher Schaltkreis mit n Inputs ist ein gerichteter azyklischer Graph mit den folgenden Eigenschaften: 1 Es gibt genau n Knoten mit Eingangsgrad 0 (Inputgatter), diese sind mit x 1,..., x n markiert. 2 Es gibt genau einen Knoten mit Ausgangsgrad 0 (Ausgabegatter). 3 Jeder Knoten, der kein Eingabegatter ist, ist mit AND, OR oder NOT markiert. Ist v mit NOT markiert, so hat v Eingangsgrad 1. Ein Boolescher Schaltkreis mit n Inputs berechnet auf natürliche Weise eine n-stellige Boolesche Funktion f : {0, 1} n {0, 1}. Ein randomisierter Boolescher Schaltkreis mit n Inputs hat zusätzlich zu den n Inputgattern noch m weitere Zufallsgatter r 1,..., r m (m ist hier beliebig) mit Eingangsgrad 0. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

27 Derandomisierung und Nicht-Uniformität Ein randomisierter Boolescher Schaltkreis B mit n Inputs berechnet eine Funktion f : {0, 1} n {0, 1}, falls für jede Belegung von x 1,..., x n mit 0/1-Werten gilt: f (x 1,..., x n ) = 0 = B wertet sich zu 0 aus für jede Belegung der Zufallsgatter. f (x 1,..., x n ) = 1 = B wertet sich zu 1 aus für mindestens die Hälfte aller Belegungen der Zufallsgatter, d.h. [ ] B wertet sich bei zufälliger Belegung Prob 1 der Zufallsgatter zu 1 aus 2 Sei nun f : {0, 1} {0, 1}. Für n 0 sei f n die Einschränkung von f auf {0, 1} n, d.h. f n : {0, 1} n {0, 1} und für alle x {0, 1} n : f n (x) = f (x). Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

28 Derandomisierung und Nicht-Uniformität Sei (B n ) n 0 eine Folge von (randomisierten) Booleschen Schaltkreisen, wobei B n n Inputgatter hat. (B n ) n 0 berechnet f : {0, 1} {0, 1}, falls für alle n 0 gilt: B n berechnet f n. Die Folge (B n ) n 0 ist polynomiell, falls ein Polynom p(n) existiert mit: Anzahl der Gatter von B n p(n). Satz (Adlemans Theorem) Sei f : {0, 1} {0, 1} eine Funktion, die von einer polynomiellen Folge von randomisierten Booleschen Schaltkreisen berechnet wird. Dann wird f von einer polynomiellen Folge von Booleschen Schaltkreisen berechnet. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

29 Derandomisierung und Nicht-Uniformität Beweis: Sei (B n ) n 0 eine polynomielle Folge von randomisierten Booleschen Schaltkreisen, die f : {0, 1} {0, 1} berechnet. Betrachte B n : n Inputgatter x 1,..., x n, m Zufallsgatter r 1,..., r m. Eine 0/1-Belegung der Inputgatter x 1,..., x n (bzw. Zufallsgatter r 1,..., r m ) wird mit einer Zahl x {0,..., 2 n 1} (bzw. r {0,..., 2 m 1}) identiziert. Wir schreiben B n (x, r) = 1, falls sich der Schaltkreis B n unter diesen Belegungen zu 1 auswertet. Deniere Boolesche Matrix M wie folgt: 2 m Spalten 0,..., 2 m 1 M = x M x,r 2 n Zeilen 0,..., 2 n 1 M x,r = { 1 falls Bn (x, r) = 1 0 sonst r Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

30 Derandomisierung und Nicht-Uniformität Lösche in M jede Zeile x mit f (x) = 0. = Danach sind in M in jeder Zeile mindestens die Hälfte aller Einträge 1. = Es existiert Spalte r(1) {0,..., 2 m 1} in der mindestens die Hälfte aller Einträge 1 ist. Sei B n (1) der Schaltkreis, der aus B n entsteht, indem die Zufallsgatter r 1,..., r m entsprechend der Belegung r(1) {0,..., 2 m 1} gesetzt werden. Lösche nun in M Spalte r(1) jede Zeile x {0,..., 2 n 1} mit M x,r(1) = 1 (d.h. B n (x, r(1)) = 1) Danach ist immer noch die Hälfte aller Einträge in jeder Zeile x von M gleich 1: Ist x eine Zeile, die nicht gelöscht wurde, so war M x,r(1) = 0, aber vor dem Löschen war M x,r für mindestens die Hälfte aller r gleich 1. Iteriere obigen Vorgang = Belegungen r(1),..., r(k) {0,..., 2 m 1} (unrandomisierte) Schaltkreise B n (1), B n (2),..., B n (k): B n (i) entsteht aus B n, indem Zufallsgatter r 1,..., r m entsprechend der Belegung r(i) gesetzt werden. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

31 Derandomisierung und Nicht-Uniformität In jeder Phase wird die Anzahl der Zeilen von M mindestens halbiert. = k n Sei nun B n = k i=1 B n(i) (polynomiell groÿer Schaltkreis). (B n) n 0 ist eine polynomielle Folge von (unrandomisierten) Schaltkreisen, die f berechnet. Bemerkung: Der Beweis von Adlemans Theorem ist ein Beispiel für Derandomisierung: Wandle einen randomisierten Algorithmus in einen deterministischen Algorithmus um, wobei eine polynomielle Zeitschranke beibehalten wird. Ist Derandomisierung immer möglich? Antwort: Wahrscheinlich nicht. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

32 Derandomisierung und Nicht-Uniformität Sei C eine Komplexitätsklasse (z.b. P, RP, NP). Deniere die nicht-uniforme Version C /poly von C wie folgt: Eine Sprache L {0, 1} gehört zur Klasse C /poly, falls eine Funktion α : N {0, 1} existiert mit: Es existiert ein Polynom p(n) mit n 0 : α(n) p(n) {(x, α( x )) x L} C α( x ) = Advice-String für Inputs der Länge n = x Satz L P /poly L RP /poly Es existiert eine polynomielle Folge von Booleschen Schaltkreisen, welche χ l (charakteristische Funktion von L) berechnet. Es existiert eine polynomielle Folge von randomisierten Booleschen Schaltkreisen, welche χ l (charakteristische Funktion von L) berechnet. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

33 Derandomisierung und Nicht-Uniformität Beweisidee: 1 Sei (B n ) n 0 eine polynomielle Folge von Booleschen Schaltkreisen, welche χ L berechnet. Deniere Advice-String α(n) wie folgt: α(n) = binäre Kodierung des Schaltkreises B n = {(x, α( x )) x L} P = L P /poly 2 Sei L P /poly. = {(x, α( x )) x L} P wobei α(n) p(n) für ein Polynom p(n). Für jedes n 0 kann ein polynomiell groÿer Schaltkreis B n mit n + p(n) Inputgattern konstruiert werden, der alle Eingaben der Form x α(n) mit x = n, x L akzeptiert (und sonst nichts akzeptiert). Idee: Berechnungen von Turing-Maschinen können durch Boolesche Schaltkreise beschrieben werden (siehe Beweis für SAT ist NP-vollständig). Belege nun die letzten α(n) vielen Inputgatter von B n mit dem Advice-String α(n). = Schaltkreis B n (B n ) n 0 ist eine polynomielle Folge von Booleschen Schaltkreisen, welche χ L berechnet. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

34 Derandomisierung und Nicht-Uniformität Reformulierung von Adlemans Theorem P /poly = RP /poly insbesondere: RP P /poly In einer nichtuniformen Welt kann also stets derandomisiert werden. Andererseits wird vermutet, dass P RP gilt. Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/ / 34

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

Spieltheorien und Theoreme

Spieltheorien und Theoreme Spieltheorien und Theoreme Seminar: Randomisierte Algorithmen Prof. Dr. R. Klein Alexander Hombach Eine bilinguale Ausarbeitung von Alexander Hombach, Daniel Herrmann und Ibraguim Kouliev (Teil 1) Rheinische

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

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

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5) Einführung 3 Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Univ.-Prof. Dr. Christoph Meinel Hasso-Plattner-Institut Universität Potsdam, Deutschland Hatten den Reduktionsbegriff

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

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra Effiziente Algorithmen und Datenstrukturen I Kapitel 10: Lineare Algebra Christian Scheideler WS 2008 19.02.2009 Kapitel 10 1 Überblick Notation Arithmetik auf großen Zahlen (Addition und Multiplikation)

Mehr

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012 Die Klassen P und NP Dr. Eva Richter 29. Juni 2012 1 / 35 Die Klasse P P = DTIME(Pol) Klasse der Probleme, die sich von DTM in polynomieller Zeit lösen lassen nach Dogma die praktikablen Probleme beim

Mehr

Einführung in die klassische Spieltheorie

Einführung in die klassische Spieltheorie Einführung in die klassische Spieltheorie Seminar Algorithmische Spieltheorie, Wintersemester 2007/2008 Martin Sauerhoff Lehrstuhl 2, Universität Dortmund Übersicht 1. Einleitung 2. Zwei-Personen-Nullsummenspiele

Mehr

Teil I: Einführung Motivation Einführendes Beispiel Merkmale eines Spiels Teil II: Mathematische Spieltheorie. Einführung

Teil I: Einführung Motivation Einführendes Beispiel Merkmale eines Spiels Teil II: Mathematische Spieltheorie. Einführung c by Rolf Haenni (2006) Seite 170 Teil I: Motivation Einführendes Beispiel Merkmale eines Spiels Teil II: Mathematische Spieltheorie Neutrale Spiele Die Conway-Theorie Teil III: Spielalgorithmen in der

Mehr

IV. Spieltheorie. H. Weber, FHW, OR SS07, Teil 7, Seite 1

IV. Spieltheorie. H. Weber, FHW, OR SS07, Teil 7, Seite 1 IV. Spieltheorie 1. Gegenstand der Spieltheorie 2. Einführung in Matrixspiele 3. Strategien bei Matrixspielen 4. Weitere Beispiele 5. Mögliche Erweiterungen H. Weber, FHW, OR SS07, Teil 7, Seite 1 1. Gegenstand

Mehr

Binäre lineare Optimierung mit K*BMDs p.1/42

Binäre lineare Optimierung mit K*BMDs p.1/42 Binäre lineare Optimierung mit K*BMDs Ralf Wimmer wimmer@informatik.uni-freiburg.de Institut für Informatik Albert-Ludwigs-Universität Freiburg Binäre lineare Optimierung mit K*BMDs p.1/42 Grundlagen Binäre

Mehr

Wortproblem für kontextfreie Grammatiken

Wortproblem für kontextfreie Grammatiken Wortproblem für kontextfreie Grammatiken G kontextfreie Grammatik. w Σ w L(G)? Wortproblem ist primitiv rekursiv entscheidbar. (schlechte obere Schranke!) Kellerautomat der L(G) akzeptiert Ist dieser effizient?

Mehr

16. All Pairs Shortest Path (ASPS)

16. All Pairs Shortest Path (ASPS) . All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e

Mehr

Optimierung. Optimierung. Vorlesung 7 Lineare Programmierung II. 2013 Thomas Brox, Fabian Kuhn

Optimierung. Optimierung. Vorlesung 7 Lineare Programmierung II. 2013 Thomas Brox, Fabian Kuhn Optimierung Vorlesung 7 Lineare Programmierung II 1 Lineare Programme Lineares Programm: Lineare Zielfunktion Lineare Nebenbedingungen (Gleichungen oder Ungleichungen) Spezialfall der konvexen Optimierung

Mehr

8 Diskrete Optimierung

8 Diskrete Optimierung 8 Diskrete Optimierung Definition 8.1. Ein Graph G ist ein Paar (V (G), E(G)) besteh aus einer lichen Menge V (G) von Knoten (oder Ecken) und einer Menge E(G) ( ) V (G) 2 von Kanten. Die Ordnung n(g) von

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

Spieltheorie. Sebastian Wankerl. 16. Juli 2010

Spieltheorie. Sebastian Wankerl. 16. Juli 2010 Spieltheorie Sebastian Wankerl 16. Juli 2010 Inhalt 1 Einleitung 2 Grundlagen Extensive Form choice functions Strategien Nash-Gleichgewicht Beispiel: Gefangenendillema 3 Algorithmen Minimax Theorem Minimax

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

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn Ein 5.55-Approximationsalgorithmus für das VPND-Problem Lars Schäfers Inhalt Einführung:

Mehr

Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen

Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen Christian Scheideler SS 2009 16.07.2009 Kapitel 2 1 Übersicht Notation Paging Selbstorganisierende Suchstrukturen Finanzielle

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

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Tardos Janick Martinez Esturo jmartine@techfak.uni-bielefeld.de xx.08.2007 Sommerakademie Görlitz Arbeitsgruppe 5 Gliederung

Mehr

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) 5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!

Mehr

Guten Morgen und Willkommen zur Saalübung!

Guten Morgen und Willkommen zur Saalübung! Guten Morgen und Willkommen zur Saalübung! 1 Wie gewinnt man ein Spiel? Was ist ein Spiel? 2 Verschiedene Spiele Schach, Tic-Tac-Toe, Go Memory Backgammon Poker Nim, Käsekästchen... 3 Einschränkungen Zwei

Mehr

2. Lernen von Entscheidungsbäumen

2. Lernen von Entscheidungsbäumen 2. Lernen von Entscheidungsbäumen Entscheidungsbäume 2. Lernen von Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch Attribut/Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse

Mehr

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20.

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20. Übersicht Datenstrukturen und Algorithmen Vorlesung 5: (K4) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.informatik.rwth-aachen.de/i2/dsal12/ 20.

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume Effiziente Algorithmen und Datenstrukturen I Kapitel 9: Minimale Spannbäume Christian Scheideler WS 008 19.0.009 Kapitel 9 1 Minimaler Spannbaum Zentrale Frage: Welche Kanten muss ich nehmen, um mit minimalen

Mehr

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland. 1 Programmierung 2 Dynamische Programmierung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 2 Übersicht Stammt aus den Zeiten als mit Programmierung

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen

Mehr

Grundlagen der Programmierung 2. Bäume

Grundlagen der Programmierung 2. Bäume Grundlagen der Programmierung 2 Bäume Prof. Dr. Manfred Schmidt-Schauÿ Künstliche Intelligenz und Softwaretechnologie 24. Mai 2006 Graphen Graph: Menge von Knoten undzugehörige (gerichtete oder ungerichtete)

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

Komplexität und Komplexitätsklassen

Komplexität und Komplexitätsklassen Dr. Sebastian Bab WiSe 12/13 Theoretische Grundlagen der Informatik für TI Termin: VL 21 vom 21.01.2013 Komplexität und Komplexitätsklassen Die meisten Probleme mit denen wir zu tun haben sind entscheidbar.

Mehr

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling Approximationsalgorithmen: Klassiker I Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling VO Approximationsalgorithmen WiSe 2011/12 Markus Chimani

Mehr

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis Optimierungsprobleme Instanz eines Optimierungsproblems zulässiger Bereich (meist implizit definiert) Zielfunktion Optimierungsrichtung opt {max, min} Optimierungsproblem Menge von Instanzen meist implizit

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

Graphen: Einführung. Vorlesung Mathematische Strukturen. Sommersemester 2011

Graphen: Einführung. Vorlesung Mathematische Strukturen. Sommersemester 2011 Graphen: Einführung Vorlesung Mathematische Strukturen Zum Ende der Vorlesung beschäftigen wir uns mit Graphen. Graphen sind netzartige Strukturen, bestehend aus Knoten und Kanten. Sommersemester 20 Prof.

Mehr

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Steinerbäume Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Verfasser Flamur Kastrati Betreuer Prof. Dr. habil. Thomas

Mehr

abgeschlossen unter,,,, R,

abgeschlossen unter,,,, R, Was bisher geschah Turing-Maschinen können Sprachen L X akzeptieren entscheiden Funktionen berechnen f : X X (partiell) Menge aller Turing-akzeptierbaren Sprachen genau die Menge aller Chomsky-Typ-0-Sprachen

Mehr

Algorithmentheorie Randomisierung. Robert Elsässer

Algorithmentheorie Randomisierung. Robert Elsässer Algorithmentheorie 03 - Randomisierung Robert Elsässer Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten

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

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

1. Welche Eigenschaften sollte ein Pseudo-Random Generator haben?

1. Welche Eigenschaften sollte ein Pseudo-Random Generator haben? Die Themen 1. Welche Eigenschaften sollte ein Pseudo-Random Generator haben? Er sollte von wirklichen Zufallsgeneratoren nicht unterscheidbar sein?! Eine viel zu starke Forderung: Stattdessen sollte ein

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

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

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

w a is die Anzahl der Vorkommen von a in w Beispiel: abba a = 2

w a is die Anzahl der Vorkommen von a in w Beispiel: abba a = 2 1 2 Notation für Wörter Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg w a is die Anzahl der Vorkommen von a in w Beispiel: abba

Mehr

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984)

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) NP-Vollständigkeit Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) 0 Übersicht: Einleitung Einteilung in Klassen Die Klassen P und NP

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

Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz

Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz Datenstruktur BDD 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer: Booleschen Funktionen)

Mehr

Algorithmen und Datenstrukturen (WS 2007/08) 63

Algorithmen und Datenstrukturen (WS 2007/08) 63 Kapitel 6 Graphen Beziehungen zwischen Objekten werden sehr oft durch binäre Relationen modelliert. Wir beschäftigen uns in diesem Kapitel mit speziellen binären Relationen, die nicht nur nur besonders

Mehr

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1 3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)

Mehr

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

15 Optimales Kodieren

15 Optimales Kodieren 15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen

Mehr

Komplexitätstheorie Einführung und Überblick (Wiederholung)

Komplexitätstheorie Einführung und Überblick (Wiederholung) Literatur C. Papadimitriou UC Berkeley Zum Komplexitätsbegriff Strukturelle Komplexität Average Case Analyse Effiziente Algorithmen Logische Komplexität Beschreibungssprachen: SQL Kolmogorov Komplexität

Mehr

1 Einführung 2 1.1 Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT)... 2 1.2 Notationen und Definitionen... 7 1.3 Übungsaufgaben...

1 Einführung 2 1.1 Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT)... 2 1.2 Notationen und Definitionen... 7 1.3 Übungsaufgaben... Vorwort v I Approximative Algorithmen 1 1 Einführung 2 1.1 Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT).... 2 1.2 Notationen und Definitionen... 7 1.3 Übungsaufgaben..... 18 2 DieKomplexitätsklassen

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

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

Informatik II. PVK Part1 Severin Wischmann wiseveri@student.ethz.ch n.ethz.ch/~wiseveri

Informatik II. PVK Part1 Severin Wischmann wiseveri@student.ethz.ch n.ethz.ch/~wiseveri Informatik II PVK Part1 Severin Wischmann wiseveri@student.ethz.ch n.ethz.ch/~wiseveri KAUM JAVA Kaum Java Viel Zeit wird für Java-spezifisches Wissen benützt Wenig wichtig für Prüfung Letztjähriger Assistent

Mehr

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) Berlin, 21. Februar 2013 Name:... Matr.-Nr.:... Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) 1 2 3 4 5 6 7 8 9 Σ Bearbeitungszeit: 90 min. max. Punktezahl:

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Ausarbeitung zum Thema Approximationsalgorithmen im Rahmen des Fachseminars 24. Juli 2009 Robert Bahmann robert.bahmann@gmail.com FH Wiesbaden Erstellt von: Robert Bahmann Zuletzt berarbeitet von: Robert

Mehr

Einführung in Heuristische Suche

Einführung in Heuristische Suche Einführung in Heuristische Suche Beispiele 2 Überblick Intelligente Suche Rundenbasierte Spiele 3 Grundlagen Es muss ein Rätsel / Puzzle / Problem gelöst werden Wie kann ein Computer diese Aufgabe lösen?

Mehr

Kap. 4.4: B-Bäume Kap. 4.5: Dictionaries in der Praxis

Kap. 4.4: B-Bäume Kap. 4.5: Dictionaries in der Praxis Kap. 4.4: B-Bäume Kap. 4.5: Dictionaries in der Praxis Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 13./14. VO DAP2 SS 2009 2./4. Juni 2009 1 2. Übungstest

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

Codierung, Codes (variabler Länge)

Codierung, Codes (variabler Länge) Codierung, Codes (variabler Länge) A = {a, b, c,...} eine endliche Menge von Nachrichten (Quellalphabet) B = {0, 1} das Kanalalphabet Eine (binäre) Codierung ist eine injektive Abbildung Φ : A B +, falls

Mehr

Effiziente Algorithmen I

Effiziente Algorithmen I H 10. Präsenzaufgabenblatt, Wintersemester 2015/16 Übungstunde am 18.01.2015 Aufgabe Q Ein Reiseveranstalter besitzt ein Flugzeug, das maximal p Personen aufnehmen kann. Der Veranstalter bietet einen Flug

Mehr

Zug Bart Borg Bart Borg Bart Borg Bart. Bart 2 1 1 1 Borg 1 1 2 verloren. Stand 8 7 6 5 4 2 1. Zug Bart Borg Bart Borg Bart Borg

Zug Bart Borg Bart Borg Bart Borg Bart. Bart 2 1 1 1 Borg 1 1 2 verloren. Stand 8 7 6 5 4 2 1. Zug Bart Borg Bart Borg Bart Borg . Das. Einführung Deep Blue Kasparow, Philadelphia 996 Deep Blue, der Supercomputer schlägt Garry Kasparow. So oder ähnlich lauteten die Schlagzeilen 996. Die 6 Partien waren insgesamt ausgeglichen, zum

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

IP=PSPACE. t Joachim Kneis t IP = PSPACE t 16. Dezember 2003 t

IP=PSPACE. t Joachim Kneis t IP = PSPACE t 16. Dezember 2003 t Rheinisch Westfälische Technische Hochschule Aachen Lehr- und Forschungsgebiet Theoretische Informatik Seminar Programmverifikation IP=PSPACE Joachim Kneis Gliederung IP=PSPACE Teil 0 Einführung und Motivation

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

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2007 4. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Traversierung Durchlaufen eines Graphen, bei

Mehr

4. Kreis- und Wegeprobleme Abstände in Graphen

4. Kreis- und Wegeprobleme Abstände in Graphen 4. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 4.4. Es sei G = (V,E) ein Graph. Der Abstand d(v,w) zweier Knoten v,w V ist die minimale Länge eines Weges von v nach w. Falls

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

Organic Computing: Peer-to-Peer-Netzwerke

Organic Computing: Peer-to-Peer-Netzwerke Organic Computing Peer-to-Peer-Netzwerke Rolf Wanka Sommersemester 2015 rwanka@cs.fau.de Inhalte Kurze Geschichte der Peer-to-Peer- Netzwerke Das Internet: Unter dem Overlay Die ersten Peer-to-Peer-Netzwerke

Mehr

Datenstruktur, die viele Operationen dynamischer Mengen unterstützt

Datenstruktur, die viele Operationen dynamischer Mengen unterstützt Algorithmen und Datenstrukturen 265 10 Binäre Suchbäume Suchbäume Datenstruktur, die viele Operationen dynamischer Mengen unterstützt Kann als Wörterbuch, aber auch zu mehr eingesetzt werden (Prioritätsschlange)

Mehr

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

Vier Gewinnt Nicolas Schmidt Matthias Dietsche Bernhard Weiß Benjamin Ruile Datum: 17.2.2009 Tutor: Prof. Schottenloher Spieltheorie Vier Gewinnt Nicolas Schmidt Matthias Dietsche Bernhard Weiß Benjamin Ruile Datum: 17.2.2009 Tutor: Prof. Schottenloher Spieltheorie Präsentation Agenda I. Einführung 1. Motivation 2. Das Spiel Vier Gewinnt

Mehr

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise: Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.4 Prädikatenlogik mit Gleichheit Resolution 192 Beispiel Bsp.: Betrachte Schlussweise in: 1 Wenn es regnet, dann wird die Straße nass. R N

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

Codierungstheorie Rudolf Scharlau, SoSe 2006 9

Codierungstheorie Rudolf Scharlau, SoSe 2006 9 Codierungstheorie Rudolf Scharlau, SoSe 2006 9 2 Optimale Codes Optimalität bezieht sich auf eine gegebene Quelle, d.h. eine Wahrscheinlichkeitsverteilung auf den Symbolen s 1,..., s q des Quellalphabets

Mehr

3. Musterlösung. Problem 1: Boruvka MST

3. Musterlösung. Problem 1: Boruvka MST Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner. Musterlösung Problem : Boruvka MST pt (a) Beweis durch Widerspruch. Sei T MST von G, e die lokal minimale Kante eines

Mehr

Eine Einführung in Online-Algorithmen

Eine Einführung in Online-Algorithmen Eine Einführung in Online-Algorithmen Dennis Komm Skript zur Vorlesung Approximations- und Online-Algorithmen Frühlingssemester 2015, ETH Zürich Stand: 21. Juli 2015 Kontakt: dennis.komm@inf.ethz.ch Nehmen

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

Approximationsalgorithmen

Approximationsalgorithmen Makespan-Scheduling Kapitel 4: Approximationsalgorithmen (dritter Teil) (weitere Beispiele und Illustrationen an der Tafel) Hilfreiche Literatur: Vazarani: Approximation Algorithms, Springer Verlag, 2001.

Mehr

Das P versus N P - Problem

Das P versus N P - Problem Das P versus N P - Problem Dr. Michael Huber Habilitationsvortrag eines der sieben Milleniumsprobleme des Clay Mathematics Institute A gift to Mathematics from Computer Science (Steve Smale) Überblick

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

PageRank-Algorithmus

PageRank-Algorithmus Proseminar Algorithms and Data Structures Gliederung Gliederung 1 Einführung 2 PageRank 3 Eziente Berechnung 4 Zusammenfassung Motivation Motivation Wir wollen eine Suchmaschine bauen, die das Web durchsucht.

Mehr

Seminararbeit für das SE Reine Mathematik- Graphentheorie

Seminararbeit für das SE Reine Mathematik- Graphentheorie Seminararbeit für das SE Reine Mathematik- Graphentheorie Der binäre Rang, der symplektische Graph, die Spektralzerlegung und rationale Funktionen Vortrag am 24.01.2012 Heike Farkas 0410052 Inhaltsverzeichnis

Mehr

Künstliche Intelligenz Unsicherheit. Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln

Künstliche Intelligenz Unsicherheit. Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Künstliche Intelligenz Unsicherheit Stephan Schwiebert WS 2009/2010 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Rückblick Agent in der Wumpuswelt konnte Entscheidungen

Mehr

x 2 x 1 x 3 5.1 Lernen mit Entscheidungsbäumen

x 2 x 1 x 3 5.1 Lernen mit Entscheidungsbäumen 5.1 Lernen mit Entscheidungsbäumen Falls zum Beispiel A = {gelb, rot, blau} R 2 und B = {0, 1}, so definiert der folgende Entscheidungsbaum eine Hypothese H : A B (wobei der Attributvektor aus A mit x

Mehr

k-server-algorithmen Alexander Leider 4. Februar 2007

k-server-algorithmen Alexander Leider 4. Februar 2007 k-server-algorithmen Alexander Leider 4. Februar 2007 1 INHALTSVERZEICHNIS 2 Inhaltsverzeichnis 1 Einleitung 3 1.1 Online-Algorithmen....................... 3 1.2 Kompetitive Algorithmen....................

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet. bei TMs bei Computern Formale Grundlagen der Informatik 1 Kapitel 10 Frank Heitmann heitmann@informatik.uni-hamburg.de Bisher haben wir mit TMs Probleme gelöst/entschieden/berechnet. Dabei war entscheidbar

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

Theoretische Grundlagen der Informatik WS 09/10

Theoretische Grundlagen der Informatik WS 09/10 Theoretische Grundlagen der Informatik WS 09/10 - Tutorium 6 - Michael Kirsten und Kai Wallisch Sitzung 13 02.02.2010 Inhaltsverzeichnis 1 Formeln zur Berechnung Aufgabe 1 2 Hamming-Distanz Aufgabe 2 3

Mehr

Nichtlineare Optimierung ohne Nebenbedingungen

Nichtlineare Optimierung ohne Nebenbedingungen Kapitel 2 Nichtlineare Optimierung ohne Nebenbedingungen In diesem Abschnitt sollen im wesentlichen Verfahren zur Bestimmung des Minimums von nichtglatten Funktionen in einer Variablen im Detail vorgestellt

Mehr

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Kürzeste Wege in Graphen Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Gliederung Einleitung Definitionen Algorithmus von Dijkstra Bellmann-Ford Algorithmus Floyd-Warshall Algorithmus

Mehr

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Stefan Lucks Diskrete Strukturen (WS 2009/10) 57 2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Uhr: Stunden mod 24, Minuten mod 60, Sekunden mod 60,... Rechnerarithmetik: mod 2 w, w {8, 16, 32,

Mehr

Algorithmen und Datenstrukturen Suchbaum

Algorithmen und Datenstrukturen Suchbaum Algorithmen und Datenstrukturen Suchbaum Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Motivation Datenstruktur zur Repräsentation dynamischer Mengen

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

Überblick. Lineares Suchen

Überblick. Lineares Suchen Komplexität Was ist das? Die Komplexität eines Algorithmus sei hierbei die Abschätzung des Aufwandes seiner Realisierung bzw. Berechnung auf einem Computer. Sie wird daher auch rechnerische Komplexität

Mehr