2
$\begingroup$

Suppose I have a directed graph with cycles, not fully connected. And say I start at some vertex $s$ and I wish to determine the probability of a path $s \to u \to t$ under some random walk, where $s \to u$ means that I start at $s$, and arrive at $u$ through an arbitrarily long path, but without hitting $s$ first, how would I express this?

I thought about breaking it down to $s \to u, u \to t$, where $s \to u$ is computed using personalized page rank. But this does not make sense since it does not preclude the possibility of a path $s \to \ldots s \ldots \to u$.

1 Answers 1

1

Let $P(s, t, F)$ be the probability of going from $s$ to $t$ without passing through any member of the forbidden set $F$. Your inputs (defining the random walk) is the 2D matrix with elements $P(s, t, \Omega)$ where $\Omega$ is the set of all nodes.

Your $s \to t$ function is the 2D matrix with elements $P(s, t, \{s\})$, not $P(s, t, \{s, t\})$, correct? I.e. I'm allowed to go through $t$ as often as I like as long as I end up at $t$? It sounds like you already know how to compute these probabilities from the input.

I interpret $s \to u \to t$ as $P(s, t, \{s\}) - P(s, t, \{s, u\})$. This probability includes paths that visit $u$ several times. Is that what you want? Otherwise $P(s, u, \{s, u\}) P(u, t, \{s, u\})$ might be what you want. Either way, I think you have to use $F$ values that are not singleton sets, i.e. you have to stray outside the $\to$ function.

For fixed $u$, computing $P(s, t, \{s, u\})$ is no harder than computing $s \to t$ (simply delete $u$ from the graph and use the familiar algorithm). If $u$ is not fixed, I don't see how to get away from the fact that the matrix of values is now 3D.