Randomized Algorithms
南京大学 尹一通
Randomized Algorithms Markov Chain X 0 , X 1 , X 2 , . . . 1 1 - - PowerPoint PPT Presentation
Randomized Algorithms Markov Chain X 0 , X 1 , X 2 , . . . 1 1 1 / 3 2 1 / 3 1 / 3 3 2 / 3 1 / 3 M = ( , P ) ( t ) = (0) P t 1 2 1 2 3 2 1 3 reducible 1 4 1 1 3 1 / 3 2 3 4 1 4 4 1 / 3 1 /
南京大学 尹一通
1/3 1/3 1/3 1/3 2/3 1
M = (Ω, P)
π(t) = π(0)P t
X0, X1, X2, . . .
1/3 1/3 1/3 1/3 2/3 1
1 2 3
1 2 1 2 1 3 2 3 3 4 1 4 3 4 1 4
1 1
If a finite Markov chain is irreducible and aperiodic, then ∀ initial distribution M = (Ω, P)
π(0) lim
t→∞ π(0)P t = π
where is a unique stationary distribution satisfying
π πP = π
Fundamental Theorem of Markov Chain:
If a finite Markov chain is irreducible and aperiodic, then ∀ initial distribution M = (Ω, P)
π(0) lim
t→∞ π(0)P t = π
where is a unique stationary distribution satisfying
π πP = π
Fundamental Theorem of Markov Chain:
finiteness existence irreducibility uniqueness ergodicity convergence
(Perron-Frobenius)
) )
(coupling)
If a Markov chain is irreducible and ergodic, then ∀ initial distribution M = (Ω, P)
π(0) lim
t→∞ π(0)P t = π
where is a unique stationary distribution satisfying
π πP = π
Fundamental Theorem of Markov Chain:
ergodic : aperiodic + non-null persistent
if pointed by more high- rank pages.
greater influence.
influence.
Rank: importance of a page
r(v) =
r(u) d+(u) d+(u) : out-degree of u G(V, E) the web graph rank of a page: r(v) P(u, v) =
d+(u)
if (u, v) ∈ E,
random walk: rP = r stationary distribution: a tireless random surfer
v1, v2, . . . ∈ V that vi+1 ∼ vi
P = D−1A adjacency matrix A
D(u, v) =
u = v u = v
P(u, v) =
d(u)
u v u ⇥ v vi+1 is uniformly chosen from N(vi)
random walk on G(V,E)
irreducible and aperiodic ⇒ converge
P(u, v) =
d(u)
u v u ⇥ v
G(V,E)
At(u, v) > 0 P t(u, v) > 0 bipartite ⇒ no odd cycle ⇒ period =2 non-bipartite ⇒ ∃(2k+1)-cycle undirected ⇒ ∃ 2-cycle
P(u, v) =
d(u)
u v u ⇥ v
G(V,E)
Stationary distribution π: ∀v ∈ V, πv = d(v) 2m
πv =
d(v) 2m = 1 2m
d(v) = 1 =
πuP(u, v) =
d(u) 2m 1 d(u) = d(v) 2m
= πv (πP)v
regular graph uniform distribution
whether to stay adjacency matrix A
D(u, v) =
u = v u = v
P(u, v) =
1 2
u = v
1 2d(u)
u ∼ v
P = 1 2(I + D−1A)
always aperiodic!
G(V,E)
Stationary distribution π: ∀v ∈ V, πv = d(v) 2m
=
πuP(u, v)
= πv (πP)v
P(u, v) =
1 2
u = v
1 2d(u)
u ∼ v
= 1 2 d(v) 2m + 1 2 X
u∈N(v)
d(u) 2m 1 d(u) = d(v) 2m
τu,v = E ⌅ min
⇤ ⇤ Xn = v ⇥ ⇤ ⇤ ⇤ X0 = u ⇧ Cu = E ⌅ min
⇤ ⇤ {X0, . . . , Xn} = V ⇥ ⇤ ⇤ ⇤ X0 = u ⇧ C(G) = max
u∈V Cu
consider a random walk on G(V,E)
C(G) = Θ(n log n) G = Kn C(G) = Θ(n2) C(G) = Θ(n3) G : path or cycle G : “lollipop” K n
2
n 2
τu,v = E ⌅ min
⇤ ⇤ Xn = v ⇥ ⇤ ⇤ ⇤ X0 = u ⇧
stationary distribution π
πv = d(v) 2m τv,v = 1 πv = 2m d(v)
Renewal Theorem:
τv,v = 1 πv = 2m d(v)
random walk on G(V,E)
uv ∈ E τu,v < 2m
Lemma: u v
τv,v = X
wv∈E
1 d(v)(1 + τw,v) 2m = X
wv∈E
(1 + τw,v)
τu,v < 2m
C(G) = max
u∈V Cu
Theorem: C(G) ≤ 4nm
Cu = E h min
i
pick a spanning tree T of G
C(G) = max
u∈V Cu
Theorem: C(G) ≤ 4nm
Cu = E h min
i
pick a spanning tree T of G Eulerian tour:
v1 → v2 → · · · → v2(n−1) → v2n−1 = v1
C(G) ≤
2(n−1)
τvi,vi+1 < 4nm
G s t
undirected
USTCON can be solved by a poly-time Monte Carlo randomized algorithm with bounded one-sided error, which uses O(log n) extra space. Theorem (Aleliunas-Karp-Lipton-Lovász-Rackoff 1979)
return “yes”
4n3 C(G) ≤ 4nm < 2n3
Cover time: Markov’s inequality ⇒ Pr[“no”] < 1/2 unconnected ⇒ “no” space: O(log n) connected ⇒
edge uv : resistance Ruv vertex v : potential
φv
edge orientation :
u → v Cu→v
current flow Kirchhoff’s Law: ∀ vertex v, flow-in = flow-out Ohm’s Law:
∀ edge uv, Cu→v = φu,v
Ruv
potential difference
φu,v = φu − φv
electrical network: u effective resistance R(u,v):
1 1
potential difference between u and v required to send 1 unit of flow current from u to v
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v)
u
each edge e resistance
Re = 1
for every edge e : each vertex u :
Re = 1
inject d(u) units current flow into u remove all 2m units current flow from v
∀u ∈ V, φu,v = τu,v
Lemma: graph G(V,E) construct an electrical network: a special vertex v :
∀u ∈ V, φu,v = τu,v
Lemma:
d(u) = X
uw∈E
Cu→w (Kirchhoff)
(Ohm)
= X
uw∈E
(φu,v − φw,v) = X
uw∈E
φu,w = d(u)φu,v − X
uw∈E
φw,v
φu,v = 1 + 1 d(u) X
uw∈E
φw,v
∀u ∈ V, φu,v = τu,v
Lemma:
τu,v = E ⌅ min
⇤ ⇤ Xn = v ⇥ ⇤ ⇤ ⇤ X0 = u ⇧
τu,v = X
wu∈E
1 d(u)(1 + τw,v) = 1 + 1 d(u) X
wu∈E
τw,v φu,v = 1 + 1 d(u) X
uw∈E
φw,v
∀u ∈ V, φu,v = τu,v
Lemma:
= 1 + 1 d(u) X
wu∈E
τw,v φu,v = 1 + 1 d(u) X
uw∈E
φw,v τu,v
)
has the same unique solution
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v)
u
each edge e resistance
Re = 1
Scenario B
A: B:
∀u ∈ V, φu,v = τu,v
Lemma:
= 1 + 1 d(u) X
wu∈E
τw,v φu,v = 1 + 1 d(u) X
uw∈E
φw,v τu,v
)
has the same unique solution
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v)
Scenario B
A: B:
φA
u,v = τu,v
φB
v,u = τv,u
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v)
Scenario B
Scenario C
A: B: C:
φA
u,v = τu,v
φB
v,u = τv,u
φC
u,v = φB v,u = τv,u
Scenario D
D: D = A + C
φD
u,v = φA u,v + φC u,v = τu,v + τv,u
φD
u,v : potential difference between u and v
to send 2m units current flow from u to v
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v)
Scenario B
Scenario C
A: B: C:
φA
u,v = τu,v
φB
v,u = τv,u
φC
u,v = φB v,u = τv,u
Scenario D
D: D = A + C
φD
u,v = φA u,v + φC u,v = τu,v + τv,u
R(u, v) = φD
u,v
2m
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v)
pick a spanning tree T of G Eulerian tour:
v1 → v2 → · · · → v2(n−1) → v2n−1 = v1
C(G) ≤
2(n−1)
τvi,vi+1 = X
uv∈T
(τu,v + τv,u)
= 2m X
uv∈T
(Ru,v + Rv,u) = 2mn
Theorem: C(G) ≤ 2nm
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v)
G: path
1 n u v
C(G) ≤ 2nm = 2n2 = τv,u τu,v + τv,u = 2mR(u, v) = 2n(n − 1) = Ω(n2) = O(n2) C(G) ≥ τu,v C(G) = Θ(n2)
Theorem (Chandra-Raghavan-Ruzzo-Smolensky-Tiwari 1989)
∀u, v, ∈ V, τu,v + τv,u = 2mR(u, v) K n
2
n 2
C(G) ≥ τu,v
G: lollipop
C(G) ≤ 2nm = O(n3)
u v
τu,v + τv,u = 2mRu,v = Ω(n3) τv,u = O(n2) = Ω(n3) C(G) = Θ(n3)