complexity 1 mazes and random walks. complexity 2 can you solve this maze?
Post on 21-Dec-2015
217 views
TRANSCRIPT
Complexity4
What Will We Do?
• Our task is to show an algorithm for general mazes.
• We have memory which is logarithmic in the size of the maze.
Complexity5
Introduction
• Objectives:– To explore the undirected connectivity
problem– To introduce randomized computations
• Overview:– Undirected Connectivity– Random Walks
Complexity6
Undirected Connectivity
• Instance: An undirected graph G=(V,E) and two vertices s,tV
• Problem: To decide if there is a path from s to t in G
Complexity7
What Do We Know?
Theorem: Directed Connectivity is NL-
Complete
Corollary: Undirected Connectivity is in NL.
Complexity8
Undirected Connectivity is in NL: Revisit
Our non-deterministic algorithm:
At each node, non-
deterministically choose a
neighbor and jump to it
Complexity9
What If We Don’t Have “Magic Coins”?
• Non-deterministic “algorithms” use “magic coins” to lead them to the right solution if one exists.
• In real life, these are unavailable…
Complexity10
Idea!
• What if we have plain coins?• In other words, what if we
randomly choose a neighbor?
Complexity11
Random Walks
Add a self loop to each vertex.• Start at s.
• Let di be the degree of the current node.
• Jump to each of the neighbors with probability 1/di.
• Stop if you get to t.s t
Complexity12
Notations
• Let vt denote the node visited at time t (v0=s).
• Let pt(i) = Pr[vt=i]
p0(s)=1
p1(a)=0.5s ta
Complexity13
Stationary Distribution
Lemma: If G=(V,E) is a connected graph, for any iV,
it
t
dlimp i
2 E i
tt
dlimp i
2 E
Complexity14
Weaker Claim
We’ll prove a weaker result:
Lemma: If for some t, for any iV,
then for any iV,
it
dp i
2 E i
t
dp i
2 E
it 1
dp i
2 E it 1
dp i
2 E
Complexity15
Proof
Proof: di=2|E|. If the ith node has weight di at time t, then it retains this weight at time t+1 (it’s reachable (only) from its di neighbors).
Complexity17
Using the Asymptotic Estimate
Corollary: Starting from some node i, we will revisit i within expectedly 2|E|/di steps.
Proof: Since the walk has no “memory”, the expected return time is the same as the asymptotic estimate
Complexity18
One-Sided Error
• Note that if the right answer is ‘NO’, we clearly answer ‘NO’.
• Thus, a random walk algorithm has one-sided error.
• Such algorithms are called “Monte-Carlo” algorithms.
Complexity19
How Many Steps Are Needed?
If the right answer is ‘YES’, in how many steps do we expect to discover that?
s t
. . .
The probability we head in the right direction is 1/ds
But every time we get here, we get a
second chance!
Complexity20
How Many Steps Are Needed?
• Since expectedly we return to each vertex after 2|E|/di steps,
• We expect to head in the right direction after |E| steps (w.p. ½).
• By the linearity of the expectation, we expect to encounter t in d(s,t)|E||V||E| steps.
Complexity21
Randomized Algorithm for Undirected Connectivity
1. Run the random walk from s for 2|V||E| steps.
2. If node t is ever visited, answer “there is a path from s to t”.
3. Otherwise, reply “there is probably no path from s to t”.
Complexity22
Main Theorem
Theorem: The above algorithm - uses logarithmic space- always right for ‘NO’ instances.- errs with probability at most ½ for
‘YES’ instances.
To maintain the current position we
only need log|V| space
Markov: Pr(X>2E[X])<½
PAP 401-404