• Keine Ergebnisse gefunden

Randomisierte Algorithmen

N/A
N/A
Protected

Academic year: 2021

Aktie "Randomisierte Algorithmen"

Copied!
43
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Randomisierte Algorithmen

Randomisierte Algorithmen

2. Erste Beispiele

Thomas Worsch

Fakultรคt fรผr Informatik Karlsruher Institut fรผr Technologie

Wintersemester 2019/2020

(2)

รœberblick

Ein randomisierter Identitรคtstest

Vergleich von Wรถrtern

Ein randomisierter Quicksortalgorithmus

(3)

Erste Beispiele

Randomisierter Identitรคtstest

2.1 Aufgabe

I Gegeben:drei๐‘›ร—๐‘› MatrizenA,B,CโˆˆF๐‘›ร—๐‘›. I Gesucht:Antwort auf die Frage: istAB=C? I F: Kรถrper

I Bits: neutrale Elemente0bzw.1

(4)

Erste Beispiele

Randomisierter Identitรคtstest

2.2 Deterministische Lรถsungen

I naiv:ฮ˜(๐‘›3)Schritte I schneller:

I Strassen (1969):ฮ˜(๐‘›2.808...)Schritte

I Coppersmith/Winograd (1987):ฮ˜(๐‘›2.376...)Schritte

(5)

Erste Beispiele

Randomisierter Identitรคtstest

2.2 Deterministische Lรถsungen

I naiv:ฮ˜(๐‘›3)Schritte I schneller:

I Strassen (1969):ฮ˜(๐‘›2.808...)Schritte

I Coppersmith/Winograd (1987):ฮ˜(๐‘›2.376...)Schritte I Vassilevska Williams (2011):ฮ˜(๐‘›2.373...)Schritte

(6)

Erste Beispiele

Randomisierter Identitรคtstest

2.3 Randomisierter Algorithmus (Freivalds, 1977)

hBerechne und vergleicheABrundCri x โ†Br

yโ†Ax zโ†Cr

if (yโ‰ z)then return no else

return yes fi

Offensichtlicher Zeitbedarfฮ˜(๐‘›2).

(7)

Erste Beispiele

Randomisierter Identitรคtstest

2.3 Randomisierter Algorithmus (Freivalds, 1977)

boolโ†is_A_times_B_equal_C(๐ด, ๐ต, ๐ถ):

rโ† hVektor von๐‘›unabhรคngigen Zufallsbitsi

hBerechne und vergleicheABrundCri x โ†Br

yโ†Ax zโ†Cr

if (yโ‰ z)then return no else

return yes fi

Offensichtlicher Zeitbedarfฮ˜(๐‘›2).

(8)

Erste Beispiele

Randomisierter Identitรคtstest

2.3 Randomisierter Algorithmus (Freivalds, 1977)

boolโ†is_A_times_B_equal_C(๐ด, ๐ต, ๐ถ):

rโ† hVektor von๐‘›unabhรคngigen Zufallsbitsi hBerechne und vergleicheABrundCri

zโ†Cr

if (yโ‰ z)then return no else

return yes fi

Offensichtlicher Zeitbedarfฮ˜(๐‘›2).

(9)

Erste Beispiele

Randomisierter Identitรคtstest

2.3 Randomisierter Algorithmus (Freivalds, 1977)

boolโ†is_A_times_B_equal_C(๐ด, ๐ต, ๐ถ):

rโ† hVektor von๐‘›unabhรคngigen Zufallsbitsi hBerechne und vergleicheABrundCri x โ†Br

yโ†Ax zโ†Cr

if (yโ‰ z)then return no else

return yes fi

(10)

2.4 Fingerabdrรผcke

I y=A(Br)โ€žFingerabdruckโ€œ vonAB. I z=Crโ€žFingerabdruckโ€œ vonC

(11)

Erste Beispiele

Randomisierter Identitรคtstest

2.5 Lemma

IstABโ‰  Cundrein Vektor unabhรคngiger Zufallsbits, dann ist die Fehlerwahrscheinlichkeit des Algorithmus

P(ABr=Cr) โ‰ค1/2 .

Beachte: Im FallAB=Ckann kein Fehler passieren.

(12)

2.6 Beweis

I SeiD=ABโˆ’C, alsoDโ‰  0.

Seiy=ABrundz=Cr.

I Dr=0genau dann, wenny=z(Fehler)

I dsei eine Zeile vonD, die nicht der Nullvektor ist.

I drist Eintrag im ProduktvektorDr

I obere Schranke fรผr die Wahrscheinlichkeit, dassdr=0?

(13)

Erste Beispiele

Randomisierter Identitรคtstest

2.6 Beweis (Fortsetzung)

I d =(๐‘‘1, . . . , ๐‘‘๐‘›)und๐‘šder grรถรŸte Index mit๐‘‘๐‘š โ‰ 0 I dr =ร๐‘›

๐‘–=1๐‘‘๐‘–๐‘Ÿ๐‘– =0genau dann, wenn๐‘‘๐‘š๐‘Ÿ๐‘š =โˆ’ร

๐‘–โ‰ ๐‘š๐‘‘๐‘–๐‘Ÿ๐‘–, also

๐‘Ÿ๐‘š = (โˆ’ร•

๐‘–โ‰ ๐‘˜

๐‘‘๐‘–๐‘Ÿ๐‘–)/๐‘‘๐‘š

I Vorstellung:๐‘Ÿ1, . . . , ๐‘Ÿ๐‘šโˆ’1bereits gewรคhlt I die๐‘Ÿ๐‘– mit๐‘š <๐‘– โ‰ค๐‘› sind irrelevant

I Gleichung fรผr hรถchstenseinender beiden mรถglichen Werte fรผr๐‘Ÿ๐‘š richtig.

I also Wahrscheinlichkeit fรผrdr=0hรถchstens1/2 I also Wahrscheinlichkeit fรผrDr=0hรถchstens1/2

(14)

2.7 Korollar

I WennAB =C, liefert Algorithmus 2.3 stets die richtige Antwort.

I WennAB โ‰ C, liefert Algorithmus 2.3

mit Wahrscheinlichkeit grรถรŸer gleich1/2die richtige Antwort.

(15)

Erste Beispiele

Randomisierter Identitรคtstest

2.8 Kleinere Fehlerwahrscheinlichkeit: wie?

I ziehe โ€“ wenn mรถglich โ€“ die zufรคlligen๐‘Ÿ๐‘– aus grรถรŸerer Menge I ๐‘˜unabhรคngige Wiederholungen des Algorithmus

am Ende nur dann Antwort yes, wenn alle Einzelversuche yes geliefert haben I im Fehlerfall:

P(๐‘Œ1=yesโˆง๐‘Œ2=yesโˆง ยท ยท ยท โˆง๐‘Œ๐‘˜ =yes)

=รŽ๐‘˜

๐‘–=1P(๐‘Œ๐‘– =yes) โ‰ค2โˆ’๐‘˜

(16)

2.8 Kleinere Fehlerwahrscheinlichkeit: wie?

I ziehe โ€“ wenn mรถglich โ€“ die zufรคlligen๐‘Ÿ๐‘– aus grรถรŸerer Menge I ๐‘˜unabhรคngige Wiederholungen des Algorithmus

am Ende nur dann Antwort yes, wenn alle Einzelversuche yes geliefert haben I im Fehlerfall:

P(๐‘Œ1=yesโˆง๐‘Œ2=yesโˆง ยท ยท ยท โˆง๐‘Œ๐‘˜ =yes)

=รŽ๐‘˜

๐‘–=1P(๐‘Œ๐‘– =yes) โ‰ค2โˆ’๐‘˜

(17)

Erste Beispiele

Vergleich von Wรถrtern

รœberblick

Ein randomisierter Identitรคtstest Vergleich von Wรถrtern

Ein randomisierter Quicksortalgorithmus

(18)

2.9 Aufgabe

I Gegeben:Zwei โ€žDatenbestรคndeโ€œ in Form von Bitfolgen๐‘Ž1ยท ยท ยท๐‘Ž๐‘›und๐‘1ยท ยท ยท๐‘๐‘›. I Gesucht:Antwort auf die Frage, ob die beiden Bitfolgen gleich sind.

I Anwendung:

Vergleich rรคumlich weit entfernter groรŸer Datenmengen I Sind๐‘Ž=ร๐‘›

๐‘–=1๐‘Ž๐‘–2๐‘–โˆ’1und๐‘=ร๐‘›

๐‘–=1๐‘๐‘–2๐‘–โˆ’1gleich?

I Wieviele Bits muss man wohl รผbertragen, um

mit W.keit1โˆ’1/๐‘›sicher sein zu kรถnnen, dass๐‘Ž=๐‘ist?

(19)

Erste Beispiele

Vergleich von Wรถrtern

2.11 Algorithmus

hรœberprรผfung, ob Bitfolgen๐‘Ž1ยท ยท ยท๐‘Ž๐‘›und๐‘1ยท ยท ยท๐‘๐‘› gleich sindi

๐‘ โ† hPrimzahl kleiner oder gleich๐‘›2ln๐‘›2i

hzufรคllig gleichverteilt aus diesen ausgewรคhlti ๐‘Žโ† ร๐‘›

๐‘–=1๐‘Ž๐‘–2๐‘–โˆ’1 ๐‘โ† ร๐‘›

๐‘–=1๐‘๐‘–2๐‘–โˆ’1

if (๐‘Žmod๐‘ =๐‘ mod๐‘)then return yes

else

return no fi

(20)

2.12 Satz

Bei zufรคlliger gleichverteilter Wahl einer Primzahl๐‘kleiner oder gleich๐‘›2log๐‘›2ist

P(๐‘Žmod๐‘ =๐‘ mod๐‘ |๐‘Ž โ‰ ๐‘) โˆˆ๐‘‚(1 ๐‘›

) .

Fรผr den Beweis werden zwei Ergebnisse benรถtigt . . .

(21)

Erste Beispiele

Vergleich von Wรถrtern

2.13 Satz (Chebyshev)

Fรผr die Anzahl๐œ‹(๐‘›)der Primzahlen kleiner oder gleich๐‘›gilt:

7 8

๐‘› ln๐‘›

โ‰ค ๐œ‹(๐‘›) โ‰ค 9 8

๐‘› ln๐‘› Es ist also๐œ‹(๐‘›) โˆˆฮ˜(๐‘›/ln๐‘›).

(22)

2.14 Lemma

Eine Zahl kleiner oder gleich2๐‘›hat hรถchstens๐‘› verschiedene Primteiler.

(23)

Erste Beispiele

Vergleich von Wรถrtern

2.15 Beweis (von Satz 2.12)

I Sei๐‘ = |๐‘Žโˆ’๐‘|.

I falsche Antwort, wenn๐‘ โ‰  0und von๐‘ geteilt

I da๐‘ โ‰ค 2๐‘›, hat es hรถchstens๐‘›verschiedene Primteiler I sei die gewรคhlte Primzahl aus dem Intervall von2bis๐‘ก I dort gibt es๐œ‹(๐‘ก) โˆˆฮ˜(๐‘ก/ln๐‘ก)Primzahlen

I Die WahrscheinlichkeitP(๐‘Žmod๐‘ =๐‘mod๐‘ |๐‘Žโ‰ ๐‘), ein๐‘ zu wรคhlen, das zu einer falschen Antwort fรผhrt, ist also hรถchstens๐‘‚( ๐‘›

๐‘ก/ln๐‘ก). I Fรผr๐‘ก =๐‘›2ln๐‘›2ergibt sich eine obere Schranke in๐‘‚(1/๐‘›).

(24)

2.16 Pattern Matching

I Gegeben:Text๐‘ฅ =๐‘ฅ1ยท ยท ยท๐‘ฅ๐‘›und kรผrzeresSuchmuster๐‘ฆ =๐‘ฆ1ยท ยท ยท๐‘ฆ๐‘š. I Gesucht:Antwort auf die Frage, ob๐‘ฆin๐‘ฅvorkommt.

I Bezeichne๐‘ฅ(๐‘—) das Teilwort๐‘ฅ๐‘—ยท ยท ยท๐‘ฅ๐‘—+๐‘šโˆ’1(Lรคnge๐‘š).

Frage: Ist fรผr ein1โ‰ค ๐‘— โ‰ค๐‘›โˆ’๐‘š+1das zugehรถrige๐‘ฅ(๐‘—) =๐‘ฆ?

I bezeichne๐‘ฅห†(๐‘—)=ร๐‘š

๐‘–=1๐‘ฅ๐‘—+1+๐‘–โˆ’12๐‘–โˆ’1

(25)

Erste Beispiele

Vergleich von Wรถrtern

2.17 Idee

ห†

๐‘ฅ(๐‘—+1) =

๐‘š

ร•

๐‘–=1

๐‘ฅ๐‘—+1+๐‘–โˆ’12๐‘–โˆ’1

= 1 2

(๐‘ฅ๐‘— โˆ’๐‘ฅ๐‘—) +1 2

๐‘šโˆ’1

ร•

๐‘–=1

๐‘ฅ๐‘—+1+๐‘–โˆ’12๐‘– +๐‘ฅ๐‘—+1+๐‘šโˆ’12๐‘šโˆ’1

= 1 2

๐‘šโˆ’1

ร•

๐‘–=0

๐‘ฅ๐‘—+๐‘–2๐‘–โˆ’๐‘ฅ๐‘—

!

+๐‘ฅ๐‘—+๐‘š2๐‘šโˆ’1

= 1 2

๐‘š

ร•

๐‘–=1

๐‘ฅ๐‘—+๐‘–โˆ’12๐‘–โˆ’1โˆ’๐‘ฅ๐‘—

!

+๐‘ฅ๐‘—+๐‘š2๐‘šโˆ’1

= 1 ห†

๐‘ฅ(๐‘—) โˆ’๐‘ฅ

+๐‘ฅ๐‘—+๐‘š2๐‘šโˆ’1 .

(26)

2.18 Algorithmus

hรœberprรผfung, ob Bitfolge๐‘ฆ1ยท ยท ยท๐‘ฆ๐‘š in๐‘ฅ1ยท ยท ยท๐‘ฅ๐‘›vorkommti hAusgabe: erstes๐‘—, wo das der Fall ist, oderโˆ’1sonst.i

๐‘ โ† hPrimzahl kleiner oder gleich๐‘›2๐‘šln๐‘›2๐‘ši hzufรคllig gleichverteilt aus diesen ausgewรคhlt.i ๐‘ฆ โ† ร๐‘š

๐‘–=1๐‘ฆ๐‘–2๐‘–โˆ’1 mod๐‘ ๐‘ง โ†ร๐‘š

๐‘–=1๐‘ฅ๐‘–2๐‘–โˆ’1 mod๐‘ for ๐‘— โ†1 to๐‘›โˆ’๐‘šdo

if (๐‘ฆ =๐‘ง)then

return๐‘— herste Stelle, an der โ€žรœbereinstimmungโ€œi fi

(27)

Erste Beispiele

Vergleich von Wรถrtern

2.19 Satz

Algorithmus 2.18 liefert hรถchstens mit Wahrscheinlichkeit๐‘‚(1/๐‘›)eine falsche Antwort.

(28)

2.20 Beweis

I Sei wieder๐‘ก die obere Schranke des Intervalls, aus dem Primzahlen gewรคhlt werden.

I Nach Satz 2.13 gibt es dort๐œ‹(๐‘ก) โˆˆ ฮ˜(๐‘ก/ln๐‘ก)Primzahlen.

I WahrscheinlichkeitP(๐‘ฆ mod๐‘ =๐‘ฅ(๐‘—) mod๐‘ |๐‘ฆ โ‰ ๐‘ฅ(๐‘—)), ist hรถchstens๐‘‚( ๐‘š

๐‘ก/ln๐‘ก),

I da|๐‘ฆโˆ’๐‘ฅ(๐‘—) |hรถchstens๐‘šverschiedene Primteiler besitzt.

I Die Wahrscheinlichkeit fรผr falsche Antwort,

weil an irgendeiner der๐‘‚(๐‘›)Stellen der Test versagt, ist hรถchstens๐‘‚( ๐‘›๐‘š

๐‘ก/ln๐‘ก).

(29)

Erste Beispiele

Randomisierter Quicksortalgorithmus

รœberblick

Ein randomisierter Identitรคtstest Vergleich von Wรถrtern

Ein randomisierter Quicksortalgorithmus

(30)

2.21 Annahme

Alle Eingaben seien paarweise verschieden.

(31)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.22 Algorithmus

proc๐‘…[1 . . . ๐‘›] โ†RandQuickSort(๐‘†[1:๐‘›])

hEingabe: ein Feld๐‘†[1:๐‘›] paarweise verschiedener Zahleni hAusgabe: ein Feld๐‘…[1:๐‘›]die Zahlen aus๐‘† sortierti hZwischenablage in Feldern๐‘†1und๐‘†2i

๐‘– โ†random(1, ๐‘›) hgleichverteilt Zahl aus[1 . . . ๐‘›]i ๐‘ฆ โ†๐‘†[๐‘–]

๐‘—1 โ†1; ๐‘—2 โ†1;

for๐‘– โ†1 to๐‘› do

if๐‘†[๐‘–] <๐‘ฆthen๐‘†1[๐‘—1] โ†๐‘†[๐‘–];๐‘—1 โ† ๐‘—1+1fi if๐‘†[๐‘–] >๐‘ฆthen๐‘†2[๐‘—2] โ†๐‘†[๐‘–];๐‘—2 โ† ๐‘—2+1fi od

returnRandQuickSort(๐‘†1[1: ๐‘—1โˆ’1]) ยท๐‘ฆยทRandQuickSort(๐‘†2[1: ๐‘—2โˆ’1])

(32)

2.23 Eigenschaften

I Algorithmus 2.22 liefertimmer die korrekte Ausgabe I Wahl der๐‘ฆbeeinflusst Laufzeit (bei gleicher Eingabe):

I wenn z. B.๐‘ฆimmer das Minimum: Laufzeitฮ˜(๐‘›2). I wenn z. B.๐‘ฆimmer der Median: Laufzeitฮ˜(๐‘›log๐‘›). I DieLaufzeitist hier also eineZufallsvariable.

I Was ist derErwartungswert der Laufzeit?

(33)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.24 Notation

I ๐‘‹๐‘– ๐‘—: Zufallsvariable

๐‘‹๐‘– ๐‘— =1, falls โ€žzwei Zahlenโ€œ miteinander verglichen werden ๐‘‹๐‘– ๐‘— =0, falls nicht

I Beachte: Indizes in derResultatliste(sortierte Reihenfolge)

I Gesuchter Erwartungswert ist gleich E

"๐‘›โˆ’1 ร•

๐‘–=1

ร•

๐‘—>๐‘–

๐‘‹๐‘– ๐‘—

#

=

๐‘›โˆ’1

ร•

๐‘–=1

ร•

๐‘—>๐‘–

E ๐‘‹๐‘– ๐‘—

I ๐‘๐‘– ๐‘—: Wahrscheinlichkeit fรผr Vergleich von๐‘…[๐‘–] und๐‘…[๐‘—], alsoE

๐‘‹๐‘– ๐‘—

=1ยท๐‘๐‘– ๐‘— +0ยท (1โˆ’๐‘๐‘– ๐‘—)=๐‘๐‘– ๐‘—. I Die๐‘๐‘– ๐‘— sindnichtalle gleich! (Indizierung in๐‘…!)

(34)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.24 Notation

I ๐‘‹๐‘– ๐‘—: Zufallsvariable

๐‘‹๐‘– ๐‘— =1, falls๐‘…[๐‘–]und๐‘…[๐‘—]miteinander verglichen werden ๐‘‹๐‘– ๐‘— =0, falls nicht

I Beachte: Indizes in derResultatliste(sortierte Reihenfolge) I Gesuchter Erwartungswert ist gleich

E

"๐‘›โˆ’1 ร•

๐‘–=1

ร•

๐‘—>๐‘–

๐‘‹๐‘– ๐‘—

#

=

๐‘›โˆ’1

ร•

๐‘–=1

ร•

๐‘—>๐‘–

E ๐‘‹๐‘– ๐‘—

I

(35)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.24 Notation

I ๐‘‹๐‘– ๐‘—: Zufallsvariable

๐‘‹๐‘– ๐‘— =1, falls๐‘…[๐‘–]und๐‘…[๐‘—]miteinander verglichen werden ๐‘‹๐‘– ๐‘— =0, falls nicht

I Beachte: Indizes in derResultatliste(sortierte Reihenfolge) I Gesuchter Erwartungswert ist gleich

E

"๐‘›โˆ’1 ร•

๐‘–=1

ร•

๐‘—>๐‘–

๐‘‹๐‘– ๐‘—

#

=

๐‘›โˆ’1

ร•

๐‘–=1

ร•

๐‘—>๐‘–

E ๐‘‹๐‘– ๐‘—

I ๐‘๐‘– ๐‘—: Wahrscheinlichkeit fรผr Vergleich von๐‘…[๐‘–] und๐‘…[๐‘—], alsoE

๐‘‹๐‘– ๐‘—

=1ยท๐‘๐‘– ๐‘—+0ยท (1โˆ’๐‘๐‘– ๐‘—)=๐‘๐‘– ๐‘—.

I nicht

(36)

2.26 Satz

Der Erwartungswert der Laufzeit vonRandQuickSortfรผr Eingaben der Lรคnge๐‘›ist in ๐‘‚(๐‘›log๐‘›).

(37)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.27 Beweis (1)

I Seien๐‘– und๐‘— (1 โ‰ค๐‘– < ๐‘— โ‰ค๐‘›) beliebig.

I Betrachte binรคre Bรคume mit den zu sortierenden Zahlen als Knoten, die durch je eine Ausfรผhrung vonRandQuickSortwie folgt rekursiv festgelegt sind:

I Wurzel des Baumes: zufรคllig gewรคhltes Pivotelement๐‘ฆ.

I linker Teilbaum: rekursiv nach gleicher Regel ausRandQuickSort(๐‘†1[1: ๐‘—1โˆ’1]) und

I rechter Teilbaum: rekursiv nach gleicher Regel ausRandQuickSort(๐‘†2[1:๐‘—2โˆ’1]).

(38)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.27 Beweis (2)

I durchlaufe Baum

I beginnend bei der Wurzel,

I nacheinander absteigend jedes Niveau I jeweils von links nach rechts alle Knoten

I irgendwann erstmals Element๐‘…[๐‘˜] mit๐‘– โ‰ค ๐‘˜ โ‰ค ๐‘— I hier Entscheidung,๐‘…[๐‘–] vor๐‘…[๐‘—]einzusortieren

miteinander verglichen. 2. ๐‘– <๐‘˜ < ๐‘—, d. h.

I ein anderes Element ist Pivot

I ๐‘…[๐‘–]und๐‘…[๐‘—]werden nicht miteinander verglichen I kommen in verschiedene Teilbรคume

I werden folglich auch spรคter nie miteinander verglichen

(39)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.27 Beweis (2)

I durchlaufe Baum

I beginnend bei der Wurzel,

I nacheinander absteigend jedes Niveau I jeweils von links nach rechts alle Knoten

I irgendwann erstmals Element๐‘…[๐‘˜] mit๐‘– โ‰ค ๐‘˜ โ‰ค ๐‘— I hier Entscheidung,๐‘…[๐‘–] vor๐‘…[๐‘—]einzusortieren I zwei Fรคlle:

1. ๐‘˜ =๐‘–oder๐‘˜ = ๐‘—, d. h.๐‘…[๐‘–] oder๐‘…[๐‘—]ist Pivotelement und die beiden werden miteinander verglichen.

2. ๐‘– <๐‘˜ < ๐‘—, d. h.

I ein anderes Element ist Pivot

I ๐‘…[๐‘–]und๐‘…[๐‘—]werden nicht miteinander verglichen I kommen in verschiedene Teilbรคume

(40)

2.27 Beweis (3)

I jedes (noch) mรถgliche Element gleichwahrscheinlich Pivot

I offensichtlich eines der ๐‘—โˆ’๐‘–+1Elemente๐‘…[๐‘–], . . . ,๐‘…[๐‘—]ausgewรคhlt I Im betrachteten Schritt wird also gleichwahrscheinlich

I eines von๐‘— โˆ’๐‘–+1Elementen ausgewรคhlt und

I in zwei Fรคllen (๐‘˜=๐‘–,๐‘˜ =๐‘—) Vergleich von๐‘…[๐‘–]und๐‘…[๐‘—]

I Wahrscheinlichkeit fรผr Vergleich von๐‘…[๐‘–]und๐‘…[๐‘—]:๐‘๐‘– ๐‘— =2/(๐‘—โˆ’๐‘–+1).

(41)

Erste Beispiele

Randomisierter Quicksortalgorithmus

2.27 Beweis (4)

Also:

E

"๐‘›โˆ’1

ร•

๐‘–=1

ร•

๐‘—>๐‘–

๐‘‹๐‘– ๐‘—

#

=

๐‘›โˆ’1

ร•

๐‘–=1

ร•

๐‘—>๐‘–

E ๐‘‹๐‘– ๐‘—

=

๐‘›โˆ’1

ร•

๐‘–=1 ๐‘›

ร•

๐‘—=๐‘–+1

2 ๐‘—โˆ’๐‘–+1

=

๐‘›โˆ’1

ร•

๐‘–=1 ๐‘›โˆ’๐‘–+1

ร•

๐‘˜=2

2 ๐‘˜

โ‰ค 2

๐‘›

ร•

๐‘–=1 ๐‘›

ร•

๐‘˜=1

1 ๐‘˜

=2๐‘›๐ป๐‘› .

๐‘›-te harmonische Zahl:๐ป๐‘› =ร๐‘›

๐‘˜=1 1

๐‘˜ =ln๐‘›+ฮ˜(1).

(42)

2.28

I Manche randomisierten Algorithmen liefern immer die richtige Antwort.

=โ‡’Las Vegas Algorithmen(sofern . . . )

I Manche randomisierten Algorithmen liefern manchmal eine falsche Antwort.

=โ‡’Monte Carlo Algorithmen

(43)

Erste Beispiele

Randomisierter Quicksortalgorithmus

Zusammenfassung

1. Randomisierte Algorithmen enthalten eine Zufallskomponente.

2. Das fรผhrt im Allgemeinen dazu, dass โ€”selbst bei immer gleicher Eingabeโ€” z. B. die Laufzeit eine randomisierten Algorithmus eine Zufallsvariable ist.

3. Manche randomisierten Algorithmen liefern immer das richtige Ergebnis.

4. Manche randomisierten Algorithmen liefern unter Umstรคnden ein falsches Ergebnis.

Dann will man im Allgemeinen kleine Fehlerwahrscheinlichkeiten.

Referenzen

ร„HNLICHE DOKUMENTE

Equations of State Calculations by Fast Computing Machines Journal of Chemical Physics. 1953

I bei schnellem Mischen geht es um ganze Familien von Markov-Ketten (passend zu von Probleminstanzen). I und nicht um eine

I DNF-Problem: betrachte nicht mehr alle Variablenbelegungen sondern nur manche... I DNF-Problem: betrachte nicht mehr alle Variablenbelegungen sondern

Allgemeines zu (deterministischen) Online-Algorithmen Seitenwechselproblem und deterministische Algorithmen Randomisierte Online-Algorithmen und Widersacher Seitenwechsel

I Dieser ist im wesentlichen beschrรคnkt durch den Erwartungswert fรผr die Lรคnge der jeweils zu untersuchenden linearen Liste, der nach Lemma 13.21

I Marsaglia schlรคgt auch noch andere Tests vor, bei denen allerdings nicht klar ist, welches die korrekten theoretischen Werte sind, mit denen die empirischen Ergebnisse

Fakultรคt fรผr Informatik Karlsruher Institut fรผr Technologie.

Falls schlechte Wahl getroffen wird, dauert es lรคnger Lรถsung zu berechnen 2. Falls schlechte Wahl getroffen wird, gibt es