• Keine Ergebnisse gefunden

7.2 Random Walks

N/A
N/A
Protected

Academic year: 2021

Aktie "7.2 Random Walks"

Copied!
8
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Wir beginnen mit einem motivierenden Beispiel.

7.1 Ein randomisierter Algorithmus für 2 -SAT

Bekanntlich ist3-SAT einNP-vollständiges Problem. Hingegen ist2-SAT auch deterministisch in Polynomialzeit lösbar. Hierbei kommen also in jeder Klausel nurzweiLiterale vor. Wir wollen nun einen randomisierten Algorithmus für2-SAT betrachten.

Im Folgenden seiFeine erfüllbare Formel mitnVariablen (nichtVorkommen von Literalen).

Wie man den nachfolgenden Algorithmus modifizieren sollte, damit auch nicht erfüllbare Formeln sinnvoll behandelt werden, wird in Punkt7.4kurz diskutiert.

7.1 Algorithmus.

B← hzufällige Belegung allerx1,. . .,xnmit Werteni whileF(B) =falsedo

k← hvonBnicht erfüllte Klausel inFi xi← hzufällig gewählte Variable in ki B(xi)←notB(xi)

od

7.2 Für die Analyse des Algorithmus seiAeine fixierte Variablenbelegung, die F erfüllt. (Im all- gemeinen kann es mehrere erfüllende Belegungen geben.) Mitjwerde die Anzahl Variablenx bezeichnet, für dieB(x) =A(x)ist.

Betrachtet man den linearen PfadPn+1, dessen Knoten die möglichen Werte0,1,. . .,nvon jsind, so entspricht die jeweils aktuelle BelegungBdes Algorithmus einem Knoten. Bei jedem Schleifendurchlauf wirdjentweder um1erhöht oder um1erniedrigt, d. h. jede Veränderung vonBentspricht dem Schritt zu einem der beiden Nachbarknoten.

Im schlimmsten Fall beginnt der Algorithmus am Knotenj=0und endet spätestens dann, wenn zum ersten malj=nerreicht wird. (Das Ende kann auch schon vorher erreicht sein, wenn es außerAnoch andere erfüllende Belegungen gibt.)

7.3 Eine Erhöhung der Knotennummer findet mindestens mit Wahrscheinlichkeit1/2statt. Die Frage nach der Laufzeit des Algorithmus ist gleichbedeutend mit der Frage nach der Anzahl Schritte vom Startknoten bis zum Finden einer erfüllenden Belegung. Diese kann nach oben abgeschätzt werden durch die Anzahl Schritte von Knoten0zu Knotenn.

Das ist eine typische Fragestellung beiRandom Walks: Was ist der Erwartungswert für die Anzahl Schritte, um von einem bestimmten Startknoten zu einem bestimmten Zielknoten zu gelangen?

Bevor wir genauer auf Random Walks eingehen, teilen wir schon ein mal mit die Antwort auf die oben angeschnittenen Fragen mit:

(2)

7.4 Der Erwartungswert für die Anzahl Schritte von Knoten0nach Knotennentlang eines einzelnen Pfades ist6n2(vgl. die Argumentation in Beispiel7.13).

Wegen der Markov-Ungleichung ist daher die Wahrscheinlichkeit, dass ein Random Walk der Länge 2n2 nichtzum Ziel führt höchstens 1/2. Das motiviert die folgende Variante des Algorithmus:

B← hzufällige Belegung allerx1,. . .,xnmit Werteni m←0hZähler für die Anzahl Versuchei

whileF(B) =false andm< 2n2do k← hvonBnicht erfüllte Klausel inFi xi← hzufällig gewählte Variable in ki B(xi)←notB(xi)

m←m+1 od

ifF(B) =truethen

returnhFerfüllbar durchBi else

returnhFnicht erfüllbari fi

7.2 Random Walks

7.5 In diesem Kapitel bezeichneG= (V,E)einen endlichen, zusammenhängenden, ungerichteten Graphen mit|V|=n>2Knoten und|E|=mKanten. Für einen Knotenubezeichnen wir mit Γ(u) ={v|(u,v)∈E}die Menge der „Nachbarn“, so dassd(u) =|Γ(u)|der Grad vonuist.

Wir stellen uns vor, dass ein Objekt, Agent, Random Walker, Irrläufer, oder wie auch immer man es oder ihn nennen möchte, auf die folgende Art „auf dem Graphen herumläuft“:

• Zu jedem Zeitpunkt befindet er sich an einem Knoten des Graphen, und

• jeder Schritt besteht darin, dass sich der Random Walker von seinem aktuellen Knoten zufällig zu einem anderen bewegt, zu dem eine Kante führt, wobei jede ausgehende Kante mit gleicher Wahrscheinlichkeit gewählt wird.

7.6 Definition

• Mitmuvwird der Erwartungswert bezeichnet für die Anzahl Schritte, die benötigt wird, um von Knotenuerstmals zu Knotenvzu gelangen.

• DieWechselzeitCuv=muv+mvuist die erwartete Anzahl Schritte für einen Random Walk, der vonunachuführt und unterwegs mindestens einmalvbesucht. 3 Das folgende Beispiel zeigt, dass man z. B. bei muv mit intuitiv erscheinenden Annahmen vorsichtig sein muss.

7.7 Beispiel. Es bezeichneLn= (V,E)den Graphen mit KnotenmengeV={1,. . .,n}, bei dem die erstenn/2Knoten eine Clique bilden, an die ein Pfad mit den anderenn/2Knoten „angeklebt“

ist, alsoE={((u,v)|16u,v6n/2}∪{(u,u+1)|n/26u < n}.

Es bezeichne nunuden Knotenn/2undvden Knotenn(siehe Abbildung7.1für ein Beispiel).

Wie wir weiter unten sehen werden, istmuv∈Θ(n3)währendmvu∈Θ(n2)ist. Die beiden Werte können also „weit“ auseinander liegen. (Man versuche, sich schon einmal klar zu machen,

(3)

L

16

:

u

v

Abbildung 7.1: Der GraphL16.

7.3 Widerstandsnetzwerke

7.8 Jedem ungerichteten zusammenhängenden GraphenGohne Schlingen entspricht ein Netzwerk N(G)elektrischer Widerstände, indem man jede Kante vonGdurch einen Widerstand von1 Ω ersetzt.

Für zwei verschiedene Knoten u und v in N(G) kann man den effektiven Widerstand Ruv zwischen ihnen bestimmen. Das ist (natürlich) der QuotientUuv/Iuvaus einer zwischenuundv angelegten Spannung und dem dann fließenden Strom.

Für die einfache Reihen- bzw. Parallelschaltung von WiderständenRkhat man vermutlich schon früher gelernt, dass der sich ergebende GesamtwiderstandR=P

kRkbzw.R= 1/(P

k1/Rk) ist. In allgemeineren Fällen ist die Bestimmung etwas schwieriger. Was ist z. B. der effektive Widerstand zwischen raumdiagonal gegenüberliegenden Ecken eines Würfels?

Der folgende Satz zeigt, warum wir uns hier für Widerstandsnetzwerke interessieren:

7.9 Satz. Für beliebige KnotenuundvinGgilt:Cuv=2mRuv.

Als vorbereitenden Schritt zeigen wir einen Zusammenhang vonmuv mit einem elektrischen Sachverhalt:

7.10 Lemma. Für zwei KnotenuundvvonGbezeichneϕuvdie Spannung beiurelativ zuv, die man misst, wenn man inN(G)jedem Knotenxein Strom vond(x)Ampere zugeführt wird und der gesamte Strom (von insgesamt2mAmpere) an Knotenvabgeführt wird. Dann istmuvuv. In Abbildung7.2sind für einen Beispielgraphen alle Ströme undϕuvdargestellt. Die Stromstärke ist durch die Pfeillänge wiedergegeben; zufließende Ströme sind blau und der abfließende rot dargestellt.

7.11 Beweis. Da alle Widerstände1 Ωsind, ist der von einem Knotenu∈Vr{v}zu einem Nachbar- knotenw∈Γ(u)fließende Strom geradeϕuv−ϕwv. Nach der Kirchhoffschen Regel muss für jeden Knotenuder dort zufließende Strom gleich dem von dort abfließenden Strom sein. Also ist

d(u) = X

w∈Γ(u)

uv−ϕwv) bzw. d(u) + X

w∈Γ(u)

ϕwv=d(u)ϕuv. Andererseits gilt wegen der Linearität des Erwartungswertes füru∈Vr{v}:

muv= X

w∈Γ(u)

(1+mwv)/d(u) bzw. d(u) + X

w∈Γ(u)

mwv=d(u)muv.

Wie man sieht, liegt hier zweimal das gleiche lineare Gleichungssystem vor. Es hat auch eine eindeutige Lösung. (Wer das genauer dargelegt haben will, werfe einen Blick auf die Vorle- sungsfolien oder lese die schöne Arbeit von Doyle und Snell (2000).) Also gilt muv = ϕuv.

(4)

u

v

ϕuv

Abbildung 7.2: Ströme für die Messung vonϕuv.

7.12 Beweis. (vonSatz7.9) Aus dem vorangegangenen Lemma wissen wir bereits, dass muv = ϕuv ist (Abb. 7.3 (a)). Analog ist mvu = ϕvu die Spannung bei v relativ zuu, wenn dem Widerstandsnetzwerk an jedem Knotenxein Strom vond(x)Ampere zugeführt wird und der gesamte Strom (von insgesamt2mAmpere) an Knotenuabgeführt wird (Abb.7.3(b)). Umdrehen aller Vorzeichen ergibt, dassmvuvuauch die Spannung beiurelativ zuvist, wenn aus dem Widerstandsnetzwerk an jedem Knotenxein Strom vond(x)Ampere abgeführt wird und der gesamte Strom (von insgesamt2mAmpere) an Knotenuzugeführt wird (Abb.7.3(c)).

Widerstandsnetzwerke sind linear. Also istCuv=muv+mvuuvvudie Spannung beiurelativ zuv, wenn an jedem Knotenxjeweilsd(x)Ampere zu- und abgeführt werden (also kein Strom zu- oder abgeführt wird) und außerdem an Knotenu 2mAmpere zu- und an Knoten v 2mAmpere abgeführt werden (Abb.7.3(d)).

Nach dem Ohmschen Gesetz ist diese Spannung aber gerade2mRuv.

7.13 Beispiel. Mit Hilfe der Charakterisierung vonmxymittelsϕxykann man z. B. für den Graphen Ln aus Beispiel7.7die Wertemuvundmvubestimmen.

muv: An jedem der erstenn/2Knoten werdenn/2Ampere injiziert. Dieser Gesamtstrom von Θ(n2) Ampere fließt über u und weitere n/2 Knoten nach v und verursacht an allen Widerständen unterwegs jeweils einen Spannungsabfall vonΘ(n2)Volt. Diese summieren sich also zuΘ(n3).

mvu: An jedem der Knoten1+n/2,2+n/2,. . .,n−1werden2Ampere injiziert, die zu Knoten ufließen. Also fließen durch den Widerstand zwischen Knotenn−iundn−i−1(06i6 n/2+1) gerade2(i+1)Ampere. Die entsprechenden Spannungsabfälle summieren sich also zuΘ(n2).

7.14 Korollar. Für jeden Graphen mitnKnoten und beliebige Knotenuundvgilt:Cuv< n3.

(5)

u

v

muv

u

v

mvu

(a) muv (b) mvu

u

v

mvu

u

v

muv

+mvu

(c) mvubei umgekehrten Vorzeichen (d) Summe von (a) und (c) Abbildung 7.3: Die Beweisschritte am Beispiel eines Graphen mit5Knoten

7.15 Beweis. Ein ungerichteter Graph mit n Knoten hat höchstens m 6 n(n−1)/2 Kanten. Der maximale effektive WiderstandRuv ist nach oben beschränkt durch die Länge der kürzesten Wege vonunachv. Reihenschaltung ist der schlimmste Fall (man überlege sich das). Dann ist Ruv6n−1und folglich insgesamtCuv=2mRuv< n3.

(6)

7.4 Randomisierte Algorithmen für Zusammenhangstests

7.16 Wir betrachten nun das Problem, für einen vorgegebenen ungerichteten Graphen und zwei seiner Knoten festzustellen, ob sie zu der gleichen Zusammenhangskomponente gehören.

Dieses Problem wird üblicherweise mit USTCON bezeichnet (engl. undirecteds–tconnecti- vity). Die Aufgabe besteht mit anderen Worten darin, für zwei beliebige Knotensundteines ungerichteten Graphen festzustellen, ob sie durch einen Pfad miteinander verbunden sind.

Dieses Problem taucht im Zusammenhang mit mehreren Problemen aus der Graphentheorie auf.

Ohne genauer darauf einzugehen, sei auch noch mitgeteilt, dass es auch in der Komplexitäts- theorie von Bedeutung ist. (USTCON ist vollständig fürSL. Für diese Klasse hat Reingold (2005) gezeigt:SL=L.)

7.17 Algorithmus. Wir beschreiben einen randomisierten AlgorithmusA, der USTCON mit logarith- mischem Platz (und in polynomialer Zeit) mit einseitigem Fehler „löst“: Es wird ein Random Walk auf dem eingegebenen Graphen simuliert, der beisstartet, und zwar maximal2n3Schritte.

Wenn man dabei auf Knotenttrifft, wird sofortyesausgegeben. Geschieht das nicht, wird am Endenoausgegeben.

Dass Algorithmus7.17logarithmischen Platz und polynomiale Zeit benötigt, sollte klar sein.

7.18 Lemma. Die Wahrscheinlichkeit, dassAaus Algorithmus7.17fälschlicherweisenoausgibt, ist höchstens1/2.

7.19 Beweis. Es ist nur der Fall zu betrachten, dass sund tin der gleichen Zusammenhangskom- ponente liegen. Wegen Korollar7.14ist offensichtlich der Erwartungswertmst6n3. Nach der Markov-Ungleichung aus Satz4.10ist daher die Wahrscheinlichkeit, dass ein Random Walk mehr als doppelt solange benötigt, um vonsnachtzu gelangen, höchstens1/2.

7.20 Zum Abschluss dieses Kapitels wollen wir noch die Variante des obigen Problems für gerichtete Graphen betrachten. Sie wird üblicherweise mit STCON bezeichnet (engl.s–tconnectivity). Die Aufgabe besteht darin, für zwei beliebige Knotensundteines gerichteten Graphen mit anderen Worten darin festzustellen, ob sie durch einen Pfad miteinander verbunden sind.

Die offensichtliche Anpassung von Algorithmus7.17an den gerichteten Fall ist ungeeignet: Der zu untersuchende Graph kann „Sackgassen“ enthalten, aus denen man mit dem Random Walk nicht mehr herauskommt.

Dies ist aber sozusagen das einzige Problem, dem man entkommt, indem man auf geeignete, noch genau zu spezifizierende Weise gelegentlich an den Ausgangspunktszurückspringt, wenn man noch nichtterreicht hat.

7.21 Algorithmus. Es werden abwechselnd immer wieder die beiden folgenden Phasen ausgeführt, bis der Algorithmus in einer von ihnen anhält:

1. Ausgehend vonswird inGein Random Walk der Länge maximaln−1durchgeführt. Wird dabeiterreicht, hält der Algorithmus sofort mit der Ausgabeyesan.

2. Es werden lognn=nlognZufallsbits „gewürfelt“. Wenn sie alle0sind, hält der Algorith- mus sofort mit der Ausgabenoan.

(7)

7.22 Lemma.

a) Algorithmus7.21kann so implementiert werden, dass der Platzbedarf stets kleiner gleich O(logn)ist.

b) Wenn kein Pfad vonsnachtexistiert, gibt der Algorithmus nieyesaus, also stetsno, sofern er hält.

c) Wenn ein Pfad vonsnachtexistiert, gibt der Algorithmus mit einer Wahrscheinlichkeit größer gleich1/2die Antwortyesaus.

7.23 Beweis.

a) In Phase 1 des Algorithmus muss man im wesentlichen speichern, wie lang der bisherige Random Walk war und bei welchem Knoten man sich gerade befindet. Dafür reichen O(logn)Bits.

Phase 2 kann implementiert werden, indem man zählt, wieviele Bits bislang gewürfelt wurden, und ob alle gleich0waren. Für den Zähler genügen log(nlogn)∈O(logn)Bits.

b) Wenn kein Pfad existiert, wird kein Random Walk vonsnachtführen, also wird auch nie yesausgegeben.

c) Angenommen, es gibt einen Pfad vonsnacht. Da es insgesamt im Graphen höchstens nn Pfade der Längen−1geben kann, ist die Wahrscheinlichkeit, dass in Phase 1 ein Pfad vonsnachtgefunden wird, mindestensn−n. Die Wahrscheinlichkeit, dass in Phase 2 die falsche Antwort gegeben wird, ist(1−n−n)n−n6n−n.

Es seiXdie Zufallsvariable, die angibt, in welchem Durchlauf die richtige Antwort gegeben wird, undpdie Wahrscheinlichkeit, dass überhaupt die richtige Antwort gegeben wird.

Dann ist

p=P(X>1) =P(X=1) +P(X>2)>n−n+ (1−n−n)2p>n−n+ (1−2n−n)p. Auflösen nachpergibt sofortp>1/2.

Zusammenfassung

1. Es gibt Zusammenhänge zwischen Random Walks und elektrischen Widerstandsnetzwer- ken.

2. Random Walks kann man benutzen, um in Graphen zwei Knoten auf Verbundenheit zu testen.

Literatur

Doyle, Peter G. und J. Laurie Snell (2000).Random walks and electric networks. arXiv preprint available at the URL:http://arxiv.org/abs/math.PR/0001057(siehe S.66).

(8)

Reingold, Omer (2005). „Undirected ST-connectivity in log-space“. In: Proceedings of the 37th Annual ACM Symposium on Theory of Computing (STOC). Hrsg. von Harold N. Gabow und Ronald Fagin. ACM, S. 376–385.isbn: 1-58113-960-8 (siehe S.69).

Abbildung

Abbildung 7.2: Ströme für die Messung von ϕ uv .

Referenzen

ÄHNLICHE DOKUMENTE

1 Falls n eine ungerade Primzahl ist, sind s und t eindeutig bestimmt und es gibt genau eine L¨ osung f¨ ur x und y.. 2 F¨ ur allgemeine n kann es mehr als eine L¨ osung

Das Spektrum einer periodischen Schwingung wird durch eine Fourier-Reihe, das Spektrum eines nichtperiodischen Vorgangs durch ein Fourier-Integral dargestellt.. (mehr

© Biodiversity Heritage Library, http://www.biodiversitylibrary.org/; www.zobodat.at... © Biodiversity Heritage Library,

Nach Kuhn gibt es auch viele kleine Revolutionen; als wissenschaftliche Revolution gilt nicht nur, was fr¨ uher als solche bezeichnet wurde, sondern Kuhn spricht auch von

Das Fotoalbum als stummer Zeuge Nun, ganz getilgt sind die Spuren der Johanna Spyri, geborenen Heusser, Tochter der religiösen Dichterin Meta Heusser-Schweizer, und

Hydrostatik (25 Punkte) : Ein schwarzer Schlauch aus dünnem Kunst- stoff wird zu einem „Solarballon“, wenn Sonnenstrahlung die Luft im Inneren erwärmt. Um aufsteigen zu können

Implementieren Sie das Euler- und das Milstein-Verfahren f¨ur skalare stochastische Diffe- rentialgleichungen. F¨uhren Sie f¨ur ¨aquidistante Diskretisierungen

[r]