random walks and markov chains nimantha thushan baranasuriya girisha durrel de silva rahul singhal...

90
Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Upload: phillip-green

Post on 27-Dec-2015

220 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Random Walks and Markov ChainsNimantha Thushan BaranasuriyaGirisha Durrel De SilvaRahul SinghalKarthik YadatiZiling Zhou

Page 2: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Outline

Random Walks

Markov Chains

Applications2SAT3SATCard Shuffling

Page 3: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Random Walks

Page 4: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

“A typical random walk involves some value that randomly wavers up and

down over time”

Page 5: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Commonly Analyzed

Probability that the wavering value reaches some end-value

The time it takes for that to happen

Page 6: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Uses

Page 7: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

The Drunkard’s Problem

Will he go home or end up in the river?

Page 8: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Problem Setup

0 u w

Alex

Page 9: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Probability

Ru = Pr(Alex goes home | he started at position u)

Rw = 1

R0 = 0

0 u w

Alex

Page 10: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Probability

Ru = Pr(Alex goes home | he started at position u)

0 u w

Alex

u-1 u+1

Page 11: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Probability

Ru = Pr(Alex goes home | he started at position u)

Ru = 0.5 Ru-1 + 0.5 Ru+1

0 u w

Alex

u-1 u+1

Page 12: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Probability

Ru = 0.5 Ru-1 + 0.5 Ru+1

Rw = 1

Ro = 0

Ru = u / w

Page 13: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Probability

Pr(Alex goes home | he started at position u) = u/w

Pr(Alex falls in the river| he started at position u) = (w –u)/w

0 u w

Alex

Page 14: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Time

Du = Expected number of steps to reach any destination, starting at position u

D0 = 0

Dw = 0

0 u w

Alex

Page 15: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Time

0 u w

Alex

Du = Expected number of steps to reach any destination, starting at position u

Du = 1 + 0.5 Du-1 + 0.5 Du+1

Page 16: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Time

Du = 1 + 0.5 Du-1 + 0.5 Du+1

D0 = 0

Dw = 0

Du = u(w – u)

Page 17: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Markov Chains

Page 18: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Stochastic Process (Random Process)

Definition:A collection of random variables often used to represent the evolution of some random value or system over time

ExamplesThe drunkard’s problemThe gambling problem

Page 19: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Stochastic ProcessA stochastic process X

• For all t if Xt assumes values from a countably infinite set, then we say that X is a discrete space process

• If Xt assumes values from a finite set, then the process is finite

• If T is countably infinite set, we say that X is a discrete time process

• Today we will concentrate only on discrete time, discrete space stochastic processes with the Markov property

TtXX t ,

Page 20: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Markov Chains

A time series stochastic (random) process

Undergoes transitions from one state to another between a finite or countable number of states

It is a random process with the Markov property

Markov property: usually called as the memorylessness

Page 21: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Markov Chains

Markov Property (Definition)A discrete time stochastic process X0,X1,X2…… in which the value of Xt depends on the value of Xt-1 but not on the sequence of states that led the system to that value

Page 22: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Markov ChainsA discrete time stochastic process is a Markov chain if

1,11

00111111

}|Pr{

},,,,|Pr{

nn iinnnn

nnnnnn

PiXiX

iXiXiXiXiX

....,, 210 XXX

Where:

States of the process

State space

Transition prob. from state

110 ,,...,, nn XXXX

1210 ,,...,,, nn iiiii

11 nniinn Pii

Page 23: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Representation: Directed Weighted Graph

0 1 2

3

4

1

2

1

3

1

2

1

6

1

1

4

14

3

4

1

Page 24: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Representation: Transition Matrix

41

41

210

010061

3102

14304

10

P

0 1 2

3

4

1

2

1

3

1

2

1

6

1

1

4

14

3

4

1

Page 25: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Markov Chains: Important Results

Let denote the probability that the process is at state i at time t

Let be the vector giving the distribution of the chain at time i

ijj

ji Ptptp ,0

1

)(tpi

..),.........,,( 210 tptptptp

Ptptp 1

Page 26: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Markov Chains: Important Results

For any m >=0, we define the m-step transition probability

as the probability that the chain moves from state i to state j in exactly m steps

Conditioning on the first transition from i, we have

iXjXP tmtmji |Pr,

1,

0,,

m

jkk

kimji PPP

Page 27: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Markov Chains: Important Results

Let P(m) be the matrix whose entries are the m-step transitional probabilities

)1()( . mm PPP

Induction on mmm PP )(

mPtPmtP .

Thus for any t >=0 and m >=1,

Page 28: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Example (1)

41

41

210

010061

3102

14304

10

P

What is the probability of going from state 0 to state 3 in exactly three steps ?

0 1 2

3

4

1

2

1

3

1

2

1

6

1

1

4

14

3

4

1

Page 29: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

0

1

013 0-1-0-

32 2

3123 0-1-3-

3

3

1023 0-3-1-

32 2

3123 0-3-3-3

0 1 2

3

4

1

2

1

3

1

2

1

6

1

1

4

14

3

4

1

Page 30: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Example (1)

Using the tree diagram we could see there are four possible ways!

0 – 1 – 0 – 3 | Pr = 3/32

0 – 1 – 3 – 3 | Pr = 1/96

0 – 3 – 1 – 3 | Pr = 1/16

0 – 3 – 3 – 3 | Pr = 3/64

All above events are mutually exclusive, therefore the total probability is

Pr = 3/32 + 1/96 + 1/16 + 3/64 = 41/192

Page 31: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Example (1)

Using the results computed before, we could simply calculate P3

19247

192107

9613

161

0100365

14479

245

485

19241

6429

487

163

3P

Page 32: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Example (2)

41

41

210

010061

3102

14304

10

P

What is the probability of ending in state 3 after three steps if we begin in a state uniformly chosen at random?

0 1 2

3

4

1

2

1

3

1

2

1

6

1

1

4

14

3

4

1

Page 33: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Example (2)This could be simply calculated by using P3

28843,1152

737,38447,192

741,4

1,41,4

1 3 P

The final answer is 43/288

Page 34: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Why do we need Markov Chains?

We will be introducing three randomized algorithms

2 SAT, 3 SAT & Card Shuffling

Use of Markov Chains model the problem

Helpful in analysis of the problem

Page 35: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Application 1 – 2SAT

Page 36: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Example: a 2CNF formula

(x y)(y z)(xz)(z y)(x y)(y z)(xz)(z y)

Literals

A 2-CNF formula C1 C2 … Ca

Ci = l1 l2

Clauses

AND

OR

2SAT

Page 37: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

(x1 x2)(x2x3)( x1 x3)

x1 = T x2 = T x3 = F

x1 = F x2 = F x3 = T

Formula Satisfiability

Another Example: a 2CNF

formula

Page 38: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Given a Boolean formula S, with each clause consisting of exactly 2 literals,

Our task is to determine if S is satisfiable

2SAT Problem

Page 39: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Algorithm: Solving 2SAT1. Start with an arbitrary assignment

2. Repeat N times or until formula is satisfiable

(a) Choose a clause that is currently not satisfied

(b) Choose uniformly at random one of the literals in the clause and switch its value

3. If valid assignment found, return it

4. Else, conclude that S is not satisfiable

Page 40: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Start with an arbitrary assignmentS = (x1 x2)(x2x3)( x1 x3)

x1 = F, x2 = T, x3 = F

Choose a clause currently not satisfied

Choose uniformly at random one of the literals in the clause and switch

its value

Choose C1 = (x1 x2)check/loop

Say x1= F now becomes x1 = T

Algorithm Tour

Page 41: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

OR

Only when the formula is satisfiable, but the algorithm fails to find a satisfying assignment

N is not sufficient

Goal: find N

When will the Algorithm Fail?

Page 42: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Let Xt = the number of variables that are assigned the same value in A* and At

S = (x1 x2)(x2x3)( x1 x3) n = 3

Suppose that the formula S with n variables is satisfiable

That means, a particular assignment to the all variables in S can make S true

x1 = T, x2 = T, x3 = F

A*

Let At = the assignment of variables after the tth iteration of Step 2

x1 = F, x2 = T, x3 = F

A4 after 4

iterations

X4 = # variables that are assigned the same value in A* and A4

= 2

Page 43: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

When does the Algorithm Terminate?

So, when Xt = 3, the algorithm terminates with a satisfying assignment

How does Xt change over time?

How long does it takes for Xt to reach 3?

Page 44: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

First, when Xt = 0, any change in the current assignment At must increase the # of matching

assignment with A* by 1.

S = (x1 x2)(x2x3)( x1 x3)

x1 = T, x2 = T, x3 = F A*

x1 = F, x2 = F, x3 = TXt = 0 in At

So, Pr(Xt+1 = 1 | Xt = 0) = 1

Analysis when Xt = 0

Page 45: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

1 ≤ j ≤ n-1

In our case, n = 3, 1 ≤ j ≤ 2,

Say j=1, Xt = 1

Choose a clause that is false with the current assignment At

Change the assignment of one of its variables

Analysis when Xt = j

Page 46: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

What can be the value of Xt+1?

It can either be j-1 or j+1In our case, 1 or 3

Which is more likely to be Xt+1?

Ans: j+1 Confusing?

Analysis when Xt = j

Page 47: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

S = (x1 x2)(x2x3)( x1 x3)

x1 = T, x2 = T, x3 = F

A*

x1 = F, x2 = F, x3 = F

Xt = 1 in At

Pick one false clause

S = F F T

Page 48: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

If we change one variable randomly, at least 1/2 of the time At+1 will match more with A*

(x1 x2)

x1 = T, x2 = T A*

x1 = F, x2 = T

At

False

x1 = F, x2 = FPr(# variables in At

matching with A *) = 0.5

Pr(# variables in At matching with A

*) = 1

Page 49: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

So, for j, with 1 ≤ j ≤ n-1 we havePr(Xt+1 = j+1 | Xt = j) ≥ 1/2Pr(Xt+1 = j-1 | Xt = j) ≤ 1/2

X0, X1, X2…are

stochastic processes

Random

ProcessYes

Markov

ChainNo

Confusing?

Page 50: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Pr(Xt+1 = j+1 | Xt = j) is not a constant

This value depends on which j variables are matching with A*, which in fact depends on the history of how we obtain At

x1 = T, x2 = T, x3 = F

A*

x1 = F, x2 = F, x3 = F

Xt = 1 in At

x1 = F, x2 = T, x3 = TPr(Xt+1 = 2 | Xt = 1) =

0.5

Pr(Xt+1 = 2 | Xt = 1) = 1

Page 51: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

To simplify the analysis, we invent a true Markov chain Y0, Y1, Y2, …as follows:

Y0 = X0

Pr(Yt+1 = 1 | Yt = 0) = 1

Pr(Yt+1 = j+1 | Yt = j) = 1/2

Pr(Yt+1 = j-1 | Yt = j) = 1/2

When compared with the stochastic process X0, X1, X2, … it takes more time for Yt to increase to n (why??)

Creating a True Markov Chain

Page 52: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis - Time

Du = Expected number of steps to reach any destination, starting from position u

Du = 1 + 0.5 Du-1 + 0.5 Du+1

Dv = 1 + 0.5 Dv-1 + Dv+1

0 u w

Alex

Page 53: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Thus, the expected time to reach n from any point is larger for Markov chain Y than for the stochastic process X

So, we haveE[ time for X to reach n starting at X0]

≤ E[ time for Y to reach n starting at Y0]

Question: Can we upper bound the term E[time for Y to reach n starting at Y0] ?

Creating a True Markov Chain

Page 54: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

AnalysisLet us take a look of how the Markov chain Y looks like in the graph representation

Recall that vertices represents the state space, which are the values that any Yt

can take

Page 55: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis

Combining with the previous argument :E[ time for X to reach n starting at X0]

≤ E[time for Y to reach n starting at Y0]

≤ n2, which gives the following lemma:

Lemma: Assume that S has a satisfying assignment. Then, if the algorithm is allowed to run until it finds a satisfying assignment, the expected number of iterations is at most n2

Hence, N = kn2 , where k is a constant

Page 56: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Let hj = E[time to reach n starting at state j]

Clearly,hn = 0 and h0 = h1 + 1

Also, for other values of j, we have

hj = ½(hj-1 + 1) + ½(hj+1 + 1)

By induction, we can show that for all j,

hj = n2 –j2 ≤ n2

Page 57: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis

If N = 2bn2 (k = 2b), where b is constantthe algorithm runs for 2bn2 iterations, we can show the following:

Theorem: The 2SAT algorithm answers correctly if the formula is unsatisfiable. Otherwise, with probability ≥ 1 –1/2b, it returns a satisfying assignment

Page 58: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Break down the 2bn2 iterations into b segments of 2n2

Assume that no satisfying assignment was found in the first i - 1 segments

What is the conditional probability that the algorithm did not find a satisfying assignment in the ith segment?

Z is # of steps from the start of segment i until the algorithm finds a satisfying assignment

Proof

Page 59: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

ProofThe expected time to find a satisfying assignment, regardless of its starting position, is bounded by n2

Apply Markov inequalityPr(Z ≥ 2n2) ≤ n2/2n2 = 1/2Pr(Z ≥ 2n2) ≤ 1/2 for failure of one segment(1/2)b for failure of b segments1 –1/2b for passing of b groups

Page 60: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Application 2 – 3SAT

Page 61: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

ProblemIn a 3CNF formula, each clause contains exactly 3 literals.

Here is an example of a 3CNF, where ¬ indicates negation:

S = (x1 x2 x3)(x1 x2 x4)To solve this instance of the decision problem we must determine whether there is a truth value, we can assign to each of the variables (x1 through x4) such that the entire expression is TRUE.An assignment satisfying the above formula:

x1 = T; x2 = F; x3 = F; x4 = T

Page 62: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Use the same algorithm as 2SAT

1. Start with an arbitrary assignment

2. Repeat N times, stop if all clauses are satisfieda) Choose a clause that is currently not satisfied

b) Choose uniformly at random one of the literals in the clause and switch its value

3. If valid assignment found, return it

4. Else, conclude that S is not satisfiable

Page 63: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

ExampleS = (x1 x2 x3)(x1 x2 x4)

An arbitrary assignment: x1 = F; x2 = T; x3 = T; x4 = F

Choose an unsatisfied clause: (x1 x2 x3)

Choose one literal at random: x1 and make x1 = T

Resulting assignment: x1 = T; x2 = T; x3 = T; x4 = F

Check if S is satisfiable with this assignmentIf yes, returnElse, repeat

Page 64: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

AnalysisS = (x1 x2 x3)(x1 x2 x4)

Let us follow the same approach as 2SATA* = An assignment which makes the formula TRUE

A*: x1 = T; x2 = F; x3 = F; x4 = T

At = An assignment of variables after tth iteration

At : x1 = F; x2 = T; x3 = F; x4 = T

Xt = Number of variables that are assigned the same value in A* and At

Xt = 1

Page 65: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis Contd..When Xt = 0, any change takes the current assignment closer to A*

Pr(Xt+1 = 1 | Xt = 0) = 1

When Xt = j, with 1 ≤ j ≤ n-1, we choose a clause

and change the value of a literal. What happens next?

Value of Xt+1 can become j+1 or j-1

Following the same reasoning as 2SAT, we havePr(Xt+1 = j+1 | Xt = j) ≥ 1/3

Pr(Xt+1 = j-1 | Xt = j) ≤ 2/3; where 1 ≤ j ≤ n-1

This is not a Markov chain!!

Page 66: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis

Thus, we create a new Markov chain Yt to facilitate analysis

Y0 = X0

Pr(Yt+1 = 1 | Yt = 0) = 1

Pr(Yt+1 = j+1 | Yt = j) = 1/3

Pr(Yt+1 = j-1 | Yt = j) = 2/3

Page 67: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis

Let hj = E[time to reach n starting at state j]

We have the following system of equations

hn = 0

hj = 2/3(hj-1 + 1) + 1/3(hj+1 + 1)

h0 = h1 + 1

hj = 2n+2 - 2j+2 - (n-j)On an average, it takes O(2n) – Not good!!

Page 68: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Observations

Once the algorithm starts, it is more likely to move towards 0 than n. The longer we run the process, it is more likely that it will move to 0. Why?

Pr(Yt+1 = j+1 | Yt = j) = 1/3

Pr(Yt+1 = j-1 | Yt = j) = 2/3

Modification: Restart the process with many randomly chosen initial assignments and run the process each time for a small number of steps

Page 69: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Modified algorithm1. Repeat M times, stop if all clauses

satisfieda) Choose an assignment uniformly at

randomb) Repeat 3n times, stop if all clauses

satisfiedi. Choose a clause that is not satisfiedii. Choose one of the variables in the clause

uniformly at random and switch its assigned value

2. If valid assignment found, return it

3. Else, conclude that S is unsatisfiable

Page 70: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Analysis

Let q = the probability that the process reaches A* in 3n steps when starting with a random assignment

Let qj = the probability that the process reaches A* in 3n steps when starting with a random assignment that has j variables assigned differently with A*

For example, At : x1 = F; x2 = T; x3 = F; x4 = T

A*: x1 = T; x2 = F; x3 = F; x4 = T

q2 is the probability that the process reaches A* in ≤ 3n steps starting with an assignment which disagrees with A* in 2 variables.

Page 71: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Bounding qj

Consider a particle moving on the integer line, with a probability 1/3 of moving up by one and probability 2/3 of moving down by one

Then, is the probability of exactly k moves down and (j+k) moves up in a sequence of (j+2k) movesThis is therefore a lower bound on the probability that the algorithm reaches a satisfying assignment within j+2k ≤ 3n steps, starting with an assignment that has exactly j variables not agreeing with A*

Page 72: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Bounding qj

≥ (k = j)

Stirling’s formula: For m > 0

Page 73: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Bounding qj

=

Page 74: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Bounding qj

qj ≥ (From Stirling’s formula) Also, q0 = 1

qj ≥

Page 75: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Bounding qA lower bound for q (which is the probability that the process can reach A* in 3n steps) can be given as

q ≥

≥ (c/n0.5)

= (c/n0.5)(1/2)n (3/2)n = (c/n0.5)(3/4)n

Where = q ≥ (c/n0.5)(3/4)n

Page 76: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Bound for the algorithm

If S is satisfiable, then with probability ≥ (c/n0.5)(3/4)n we obtain a satisfying assignment

Assuming a satisfying assignment existsThe number of random assignments the process tries before finding a satisfying assignment is a geometric random variable with parameter qThe expected number of assignments tried is 1/q

Page 77: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Bound for the algorithm

The expected number of steps until a solution is found is bounded by O(n3/2 (4/3)n)

Less than O(2n)

Page 78: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Satisfiability: Summary

Boolean Satisfiability problem: Given a boolean formula S, find an assignment to the variables x1, x2, …, xn such that S(x1, x2, …, xn) = TRUE or prove that no such assignment exists

Two instances of the satisfiability problem2SAT: The clauses in the boolean formula S contain exactly 2 literals. Expected number of iterations to reach a conclusion – O(n2)3SAT: The clauses in the boolean formula S contain exactly 3 literals. Expected number of iterations to reach a conclusion – O((1.3334)n)

Page 79: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Application 3 – Card Shuffling

Page 80: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Card Shuffling ProblemWe are given a deck of k cards

We want to completely shuffle themMathematically: we want to sample from the uniform distribution over the space of all k! permutations of the deck

Key questions:Q1: Using some kind of shuffle move, is it possible to completely shuffle one deck of cards?

Q2: How many moves are sufficient to get a uniformly random deck of cards?

Depends on how we shuffle the cards

A deck of cards

Shuffled Cards

A number of shuffle moves

Page 81: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Card Shuffling – Shuffle Moves

Shuffle MovesTop in at randomRandom transpositionsRiffle shuffle

We can model them using Markov chains

Each state is a permutation of cardsThe transitions depend on the shuffle moves

Page 82: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Card Shuffling – Markov Chain model

A 3-card example (top-in-at-random)

C1C2C3

C2C3C1

C2C1C3C

3C1C2

C3C2C1

C1C3C2

1/3

1/3

1/3

Page 83: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Card Shuffling – Markov Chain model

Answer Q1:Can top-in-at-random achieve uniform random distribution over the k! permutations of the cards?

Markov Chain’s stationary distribution:

Fundamental Theorem of Markov Chain:If a Markov Chain is irreducible, finite and aperiodic

It has a unique stationary distribution

After sufficient large number of transitions, it will reach the stationary distribution

P

Page 84: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Card Shuffling – Markov Chain model

 

1i

P

Page 85: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Top in at Random – Mixing Time

Answer Q2: How many shuffle steps are necessary to get the stationary distribution?

Key Observation 1: when a card is shuffled, its position is uniformly random.

Key Observation 2:Let card B be on the bottom position before shuffling. When shuffling, all cards below B are uniformly random in their position.

Let T be the r.v. of the number of shuffling steps for B to reach the top. After T+1 steps, the deck is completely shuffled

Page 86: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Top in at Random – Mixing Time

Calculate Mixing time:Let bottom be position 1, and top be position k.Let be the r.v. of the number of shuffles that B moves from position i to i+1.

Page 87: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Card Shuffling ProblemSummation of the harmony series:

top-in-at-random steps are enough to get complete shuffled deck with high probability

With number of steps, the card deck is completely shuffled with probability ≥ 1 –1/2c

Page 88: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

ProofBreak down the steps into c independent groups of

Apply Markov inequality, P( ≥ a) E()/aPr( ) E()/ for failure of one group E(T) Pr() 1/2 for failure of one group(1/2)c for failure of all c groups1 –1/2c for deck is completely shuffled at least by one group

Page 89: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

Thank You

Any Questions ?

Page 90: Random Walks and Markov Chains Nimantha Thushan Baranasuriya Girisha Durrel De Silva Rahul Singhal Karthik Yadati Ziling Zhou

ReferencesMathematics for Computer Science by Eric Lehman and Tom Leighton

Probability and Computing - Randomized Algorithms and Probabilistic Analysis by Michael Mitzenmacher and Eli Upfal

Randomized Algorithms by Rajeev Motwani and Prabhakar Raghavan

http://www.cs.berkeley.edu/~luca/cs174/notes/note8.ps

http://www.cs.berkeley.edu/~luca/cs174/notes/note9.ps