Download presentation
Presentation is loading. Please wait.
1
Complexity 1 Mazes And Random Walks
2
Complexity 2 Can You Solve This Maze?
3
Complexity 3 The Solution
4
Complexity 4 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.
5
Complexity 5 Introduction Objectives: –To explore the undirected connectivity problem –To introduce randomized computations Overview: –Undirected Connectivity –Random Walks
6
Complexity 6 Undirected Connectivity Instance: An undirected graph G=(V,E) and two vertices s,t V Problem: To decide if there is a path from s to t in G
7
Complexity 7 What Do We Know? Theorem: Directed Connectivity is NL-Complete Corollary: Undirected Connectivity is in NL.
8
Complexity 8 Undirected Connectivity is in NL: Revisit Our non-deterministic algorithm: At each node, non- deterministically choose a neighbor and jump to it
9
Complexity 9 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…
10
Complexity 10 Idea! What if we have plain coins? In other words, what if we randomly choose a neighbor?
11
Complexity 11 Random Walks Add a self loop to each vertex. Start at s. Let d i be the degree of the current node. Jump to each of the neighbors with probability 1/d i. Stop if you get to t. st
12
Complexity 12 Notations Let v t denote the node visited at time t (v 0 =s). Let p t (i) = Pr[v t =i] p 0 (s)=1 p 1 (a)=0.5 sta
13
Complexity 13 Stationary Distribution Lemma: If G=(V,E) is a connected graph, for any i V,
14
Complexity 14 Weaker Claim We’ll prove a weaker result: Lemma: If for some t, for any i V, then for any i V,
15
Complexity 15 Proof Proof: d i =2|E|. If the i th node has weight d i at time t, then it retains this weight at time t+1 (it’s reachable (only) from its d i neighbors).
16
Complexity 16 Illustrated Proof
17
Complexity 17 Using the Asymptotic Estimate Corollary: Starting from some node i, we will revisit i within expectedly 2|E|/d i steps. Proof: Since the walk has no “memory”, the expected return time is the same as the asymptotic estimate
18
Complexity 18 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.
19
Complexity 19 How Many Steps Are Needed? If the right answer is ‘YES’, in how many steps do we expect to discover that? st... The probability we head in the right direction is 1/d s But every time we get here, we get a second chance!
20
Complexity 20 How Many Steps Are Needed? Since expectedly we return to each vertex after 2|E|/d i 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.
21
Complexity 21 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”.
22
Complexity 22 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
23
Complexity 23 Summary We explored the undirected connectivity problem. We saw a log-space randomized algorithm for this problem. We used an important technique called random walks.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.