Great Theoretical Ideas in Computer Science

Slides:



Advertisements
Similar presentations
Lecture 22: April 18 Probabilistic Method. Why Randomness? Probabilistic method: Proving the existence of an object satisfying certain properties without.
Advertisements

Great Theoretical Ideas in Computer Science about AWESOME Some Generating Functions Probability.
Great Theoretical Ideas in Computer Science for Some.
Great Theoretical Ideas in Computer Science.
17.1 CompSci 102 Today’s topics Instant InsanityInstant Insanity Random WalksRandom Walks.
COMPSCI 102 Introduction to Discrete Mathematics.
Random Walks. Random Walks on Graphs - At any node, go to one of the neighbors of the node with equal probability. -
Entropy Rates of a Stochastic Process
Randomized Algorithms and Randomized Rounding Lecture 21: April 13 G n 2 leaves
Random Walks Great Theoretical Ideas In Computer Science Anupam GuptaCS Fall 2005 Lecture 23Nov 14, 2005Carnegie Mellon University.
Great Theoretical Ideas in Computer Science.
The probabilistic method & infinite probability spaces Great Theoretical Ideas In Computer Science Steven Rudich, Anupam GuptaCS Spring 2004 Lecture.
Random Walks Great Theoretical Ideas In Computer Science Steven Rudich, Anupam GuptaCS Spring 2004 Lecture 24April 8, 2004Carnegie Mellon University.
Probability Theory: Counting in Terms of Proportions Great Theoretical Ideas In Computer Science Steven Rudich, Anupam GuptaCS Spring 2004 Lecture.
Lectures prepared by: Elchanan Mossel Yelena Shvets Introduction to probability Stat 134 FAll 2005 Berkeley Follows Jim Pitman’s book: Probability Section.
Entropy Rate of a Markov Chain
Great Theoretical Ideas In Computer Science Steven Rudich, Anupam GuptaCS Spring 2004 Lecture 22April 1, 2004Carnegie Mellon University
Random Walks Great Theoretical Ideas In Computer Science Steven Rudich, Anupam GuptaCS Spring 2005 Lecture 24April 7, 2005Carnegie Mellon University.
Probability III: The probabilistic method & infinite probability spaces Great Theoretical Ideas In Computer Science Steven Rudich, Avrim BlumCS
Great Theoretical Ideas in Computer Science.
Probability III: The Probabilistic Method Great Theoretical Ideas In Computer Science John LaffertyCS Fall 2006 Lecture 11Oct. 3, 2006Carnegie.
Many random walks are faster than one Noga AlonTel Aviv University Chen AvinBen Gurion University Michal KouckyCzech Academy of Sciences Gady KozmaWeizmann.
Great Theoretical Ideas in Computer Science for Some.
COMPSCI 230 Discrete Mathematics for Computer Science.
18.1 CompSci 102 Today’s topics Impaired wanderingImpaired wandering Instant InsanityInstant Insanity 1950s TV Dating1950s TV Dating Final Exam reviewFinal.
Theory of Computational Complexity Probability and Computing Lee Minseon Iwama and Ito lab M1 1.
The Law of Averages. What does the law of average say? We know that, from the definition of probability, in the long run the frequency of some event will.
Theory of Computational Complexity Probability and Computing Ryosuke Sasanuma Iwama and Ito lab M1.
Great Theoretical Ideas in Computer Science.
Krishnendu ChatterjeeFormal Methods Class1 MARKOV CHAINS.
Copyright © Cengage Learning. All rights reserved. Probability and Statistics.
CS498-EA Reasoning in AI Lecture #19 Professor: Eyal Amir Fall Semester 2011.
PROBABILITY AND COMPUTING RANDOMIZED ALGORITHMS AND PROBABILISTIC ANALYSIS CHAPTER 1 IWAMA and ITO Lab. M1 Sakaidani Hikaru 1.
Andrey Markov, public domain image
The NP class. NP-completeness
Umans Complexity Theory Lectures
Statistics 200 Objectives:
3 Discrete Random Variables and Probability Distributions
Chapter 6: Discrete Probability
Probabilistic Algorithms
Random variables (r.v.) Random variable
The Duality Theorem Primal P: Maximize
Introduction to Discrete Mathematics
Introduction to Randomized Algorithms and the Probabilistic Method
Copyright © Cengage Learning. All rights reserved.
Great Theoretical Ideas in Computer Science
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
CHAPTER 6 Random Variables
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN X Chapter 13 (Reed) - Conditional.
CSE 421: Introduction to Algorithms
Great Theoretical Ideas In Computer Science
The Law of Large Numbers
Hash Tables – 2 Comp 122, Spring 2004.
Great Theoretical Ideas In Computer Science
Great Theoretical Ideas In Computer Science
Random Walks.
Data types, assignment statements, and math functions allow you to compute You write a sequence of statements that tell the computer what needs to be done.
Probability Theory: Counting in Terms of Proportions
Great Theoretical Ideas in Computer Science
3.1 Sums of Random Variables probability of z = x + y
13. The Weak Law and the Strong Law of Large Numbers
Random Walks.
Probability Theory: Counting in Terms of Proportions
Great Theoretical Ideas in Computer Science
A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN X Chapter 13 (Reed) - Conditional.
Hash Tables – 2 1.
13. The Weak Law and the Strong Law of Large Numbers
Introduction to Discrete Mathematics
Presentation transcript:

Great Theoretical Ideas in Computer Science 15-251 Great Theoretical Ideas in Computer Science

Alternate Final Date May 10th, 12:00-3:00pm Wean 7500 Those who wish to take the final on the original date (May 16), are welcome to do so!

Cheating! Don’t be stupid: We’re not stupid! Word-for-word identical solutions are always caught People have been caught cheating in this class, and have had to suffer the consequences On programming assignments, we run a check script

Let’s play for an extension of HW #11

Probability Refresher What does this mean: E[X | Y]? Is this true: Pr[ A ] = Pr[ A | B ] Pr[ B ] + Pr[ A | B ] Pr[ B ] Yes! Similarly: E[ X ] = E[ X | Y ] Pr[ Y ] + E[ X | Y ] Pr[ Y ]

Random Walks Lecture 24 (April 13, 2006)

Today, we will learn an important lesson: How to walk drunk home

Abstraction of Student Life No new ideas Eat Hungry Wait Work 0.4 0.3 0.99 0.01 0.3 Solve HW problem Work probability

Abstraction of Student Life No new ideas Solve HW problem Eat Wait Work 0.3 0.4 0.99 0.01 Hungry Like finite automata, but instead of a determinisic or non-deterministic action, we have a probabilistic action Example questions: “What is the probability of reaching goal on string Work,Eat,Work?”

Simpler: Random Walks on Graphs - At any node, go to one of the neighbors of the node with equal probability

Simpler: Random Walks on Graphs - At any node, go to one of the neighbors of the node with equal probability

Simpler: Random Walks on Graphs - At any node, go to one of the neighbors of the node with equal probability

Simpler: Random Walks on Graphs - At any node, go to one of the neighbors of the node with equal probability

Simpler: Random Walks on Graphs - At any node, go to one of the neighbors of the node with equal probability

We’ll just walk in a straight line Let’s start simple… We’ll just walk in a straight line

You leave when you are broke or have $n Random Walk on a Line You go into a casino with $k, and at each time step, you bet $1 on a fair game You leave when you are broke or have $n n k Question 1: what is your expected amount of money at time t? Let Xt be a R.V. for the amount of $$$ at time t

You leave when you are broke or have $n Random Walk on a Line You go into a casino with $k, and at each time step, you bet $1 on a fair game You leave when you are broke or have $n n k Xt = k + d1 + d2 + ... + dt, (di is RV for change in your money at time i) E[di] = 0 So, E[Xt] = k

You leave when you are broke or have $n Random Walk on a Line You go into a casino with $k, and at each time step, you bet $1 on a fair game You leave when you are broke or have $n n k Question 2: what is the probability that you leave with $n?

Random Walk on a Line Question 2: what is the probability that you leave with $n? E[Xt] = k E[Xt] = E[Xt| Xt = 0] × Pr(Xt = 0) + E[Xt | Xt = n] × Pr(Xt = n) + E[ Xt | neither] × Pr(neither) k = n × Pr(Xt = n) + (somethingt) × Pr(neither) As t ∞, Pr(neither)  0, also somethingt < n Hence Pr(Xt = n)  k/n

Another Way To Look At It You go into a casino with $k, and at each time step, you bet $1 on a fair game You leave when you are broke or have $n n k Question 2: what is the probability that you leave with $n? = probability that I hit green before I hit red

Random Walks and Electrical Networks What is chance I reach green before red? - Same as voltage if edges are resistors and we put 1-volt battery between green and red

Random Walks and Electrical Networks - px = Pr(reach green first starting from x) pgreen= 1, pred = 0 And for the rest px = Averagey2 Nbr(x)(py) Same as equations for voltage if edges all have same resistance!

Another Way To Look At It You go into a casino with $k, and at each time step, you bet $1 on a fair game You leave when you are broke or have $n n k Question 2: what is the probability that you leave with $n? voltage(k) = k/n = Pr[ hitting n before 0 starting at k] !!!

Let’s move on to some other questions on general graphs

Getting Back Home Lost in a city, you want to get back to your hotel - Lost in a city, you want to get back to your hotel How should you do this? Depth First Search! Requires a good memory and a piece of chalk

How about walking randomly? Getting Back Home - How about walking randomly?

Will this work? When will I get home? I have a curfew of 10 PM!

What is E[ time to reach home ]? Will this work? Is Pr[ reach home ] = 1? When will I get home? What is E[ time to reach home ]?

Relax, Bonzo! Yes, Pr[ will reach home ] = 1

If the graph has n nodes and m edges, then Furthermore: If the graph has n nodes and m edges, then E[ time to visit all nodes ] ≤ 2m × (n-1) E[ time to reach home ] is at most this

Let us define a couple of useful things: Cover Times Let us define a couple of useful things: Cover time (from u) Cu = E [ time to visit all vertices | start at u ] Cover time of the graph C(G) = maxu { Cu } (worst case expected time to see all vertices)

Cover Time Theorem If the graph G has n nodes and m edges, then the cover time of G is C(G) ≤ 2m (n – 1) Any graph on n vertices has < n2/2 edges Hence C(G) < n3 for all graphs G

We Will Eventually Get Home Look at the first n steps There is a non-zero chance p1 that we get home Also, p1 ≥ (1/n)n Suppose we fail Then, wherever we are, there is a chance p2 ≥ (1/n)n that we hit home in the next n steps from there Probability of failing to reach home by time kn = (1 – p1)(1 – p2) … (1 – pk)  0 as k  ∞

Chance that we don’t hit home by Actually, we get home pretty fast… Chance that we don’t hit home by 2k × 2m(n-1) steps is (½)k

A Simple Calculation True of False: If the average income of people is $100 then more than 50% of the people can be earning more than $200 each False! else the average would be higher!!!

If X is a non-negative r.v. with mean E[X], then Markov’s Inequality If X is a non-negative r.v. with mean E[X], then Pr[ X > 2 E[X] ] ≤ ½ Pr[ X > k E[X] ] ≤ 1/k Andrei A. Markov

Markov’s Inequality Non-neg random variable X has expectation A = E[X] A = E[X] = E[X | X > 2A ] Pr[X > 2A] + E[X | X ≤ 2A ] Pr[X ≤ 2A] ≥ E[X | X > 2A ] Pr[X > 2A] (since X is non-neg) Also, E[X | X > 2A] > 2A A ≥ 2A × Pr[X > 2A]  ½ ≥ Pr[X > 2A] Pr[ X > k × expectation ] ≤ 1/k

E[ time to hit all vertices | start at u ] ≤ C(G) An Averaging Argument Suppose I start at u E[ time to hit all vertices | start at u ] ≤ C(G) Hence, by Markov’s Inequality: Pr[ time to hit all vertices > 2C(G) | start at u ] ≤ ½

So Let’s Walk Some Mo! Pr [ time to hit all vertices > 2C(G) | start at u ] ≤ ½ Suppose at time 2C(G), I’m at some node with more nodes still to visit Pr [ haven’t hit all vertices in 2C(G) more time | start at v ] ≤ ½ Chance that you failed both times ≤ ¼ = (½)2

The Power of Independence It’s like flipping a coin with tails probability q ≤ ½ The probability that you get k tails is qk ≤ (½)k (because the trials are independent!) Hence, Pr[ havent hit everyone in time k × 2C(G) ] ≤ (½)k Exponential in k

Pr[ home by time 4k m(n-1) ] ≥ 1 – (½)k Hence, if we know that Expected Cover Time C(G) < 2m(n-1) then Pr[ home by time 4k m(n-1) ] ≥ 1 – (½)k

Cover Time Theorem If the graph G has n nodes and m edges, then the cover time of G is C(G) ≤ 2m (n – 1) Any graph on n vertices has < n2/2 edges Hence C(G) < n3 for all graphs G

Random walks on infinite graphs

Drunk man will find his way home, but drunk bird may get lost forever - Shizuo Kakutani

Random Walk On a Line t i Flip an unbiased coin and go left/right i Flip an unbiased coin and go left/right Let Xt be the position at time t Pr[ Xt = i ] = Pr[ #heads – #tails = i] = Pr[ #heads – (t - #heads) = i] t (t-i)/2 /2t =

Random Walk On a Line 2t i t /22t Sterling’s approx Pr[ X2t = 0 ] = i 2t t /22t Sterling’s approx Pr[ X2t = 0 ] = ≤ Θ(1/√t) Y2t = indicator for (X2t = 0)  E[ Y2t ] = Θ(1/√t) Z2n = number of visits to origin in 2n steps E[ Z2n ] = E[ t = 1…n Y2t ] ≤ Θ(1/√1 + 1/√2 +…+ 1/√n) = Θ(√n)

In n steps, you expect to return to the origin Θ(√n) times!

Simple Claim If we repeatedly flip coin with bias p E[ # of flips till heads ] = 1/p Theorem: If Pr[ not return to origin ] = p, then E[ number of times at origin ] = 1/p Proof: H = never return to origin. T = we do. Hence returning to origin is like getting a tails E[ # of returns ] = E[ # tails before a head] = 1/p – 1 (But we started at the origin too!)

We Will Return… Theorem: If Pr[ not return to origin ] = p, then E[ number of times at origin ] = 1/p Theorem: Pr[ we return to origin ] = 1 Proof: Suppose not Hence p = Pr[ never return ] > 0 E [ #times at origin ] = 1/p = constant But we showed that E[ Zn ] = Θ(√n)  ∞

How About a 2-d Grid? Let us simplify our 2-d random walk: move in both the x-direction and y-direction…

How About a 2-d Grid? Let us simplify our 2-d random walk: move in both the x-direction and y-direction…

How About a 2-d Grid? Let us simplify our 2-d random walk: move in both the x-direction and y-direction…

How About a 2-d Grid? Let us simplify our 2-d random walk: move in both the x-direction and y-direction…

How About a 2-d Grid? Let us simplify our 2-d random walk: move in both the x-direction and y-direction…

In The 2-d Walk Returning to the origin in the grid  both “line” random walks return to their origins Pr[ visit origin at time t ] = Θ(1/√t) × Θ(1/√t) = Θ(1/t) E[ # of visits to origin by time n ] = Θ(1/1 + 1/2 + 1/3 + … + 1/n ) = Θ(log n)

We Will Return (Again) Theorem: If Pr[ not return to origin ] = p, then E[ number of times at origin ] = 1/p Theorem: Pr[ we return to origin ] = 1 Proof: Suppose not Hence p = Pr[ never return ] > 0 E [ #times at origin ] = 1/p = constant But we showed that E[ Zn ] = Θ(log n)  ∞

But In 3D Pr[ visit origin at time t ] = Θ(1/√t)3 = Θ(1/t3/2) limn ∞ E[ # of visits by time n ] < K (constant) Hence Pr[ never return to origin ] > 1/K

A Cycle Game Suppose we walk on the cycle at random till x we see all the nodes x Start Is x more likely than y to be the last node we see? y