Es un proceso estocastico sobre los entros como espacio de estados.
\[ \psi_n = \sum_{i=1}^n X_i\]
Una variable aleatoria que depende de la posicion del proceso al cabo del tiempo \(n\).
\[ P(\psi_{n+1} = j | \psi_n = i) = \begin{cases} p & j = i + 1 \\ q & j = i - 1 \\ 0 & \text{en otro caso}\end{cases}\] Sea \(X_1, X_2, \dots\) v-a i.i.d tal que \(P(X_i = 1) = p \land P(X_i = -1) = q\) Supongamos que \(X_0 = 0\) y sea \(\psi_n = \sum_{i = 0}^nX_i\) luego \[\mathbb{E}[\psi_n] = \mathbb{E}\left[\sum_{i = 0}^nX_i\right] = \sum_{i=0}^n \mathbb{E}[X_i] = \sum_{i=0}^n p - q = n(p - q)\]
Ahora la varianza de \(\psi_n\) \[ var[\psi_n] = var\left[\sum_{n=1}^n X_i\right] = \sum_{n=1}^n var[X_i] = n \cdot var[X_i] = n\cdot[\mathbb{E}[X^2] - \mathbb{E}[X] \] \[= n\cdot(p + q - (p - q)^2) = n\cdot(1 - p^2 - 2pq + q^2) = n\cdot(1 - p^2 + 2pq - q^2) \] \[= n\cdot(1 - p^2 + 2pq - q^2 + 2pq - 2pq) = n\cdot(1 - 4pq - (p + q)^2) = 4npq\]
# Simulacion de caminata aleatoria
library(ggplot2)
for(i in 1:1000){
p <- 0.5
n <- 500
U <- runif(n)
y <- cumsum((U <= p) - (U > p)) - y[1]
Z[i] <- y[n]
}
qplot(Z, geom="histogram", binwidth=2)

Calculemos: \[ P(\psi_n = x) \] Sea \[ I_n = \text{numero de moviminetos a la izquierda} \] \[ D_n = \text{numero de moviminetos a la derecha} \] \[ I_n + D_n = n \quad D_n = \sum \frac{X_i + 1}{2} = \frac{\sum X_i}{2} + \frac{n}{2}\] \[ P(\psi_n = x) = P\left(D_n = \frac{x + n}{2}\right) = \binom{n}{\frac{x+n}{2}}
p^{\frac{x+n}{2}} q^{\frac{n-x}{2}}\]
Probabilidad de volver a pasar por el punto inicial
\[ 1 - | p - q | = \begin{cases} 1 & p = q\\ < 1 & p\neq q\end{cases} \]
Caminata aleatoria bidimensional
# Parameters
n <- 10
steps <- 1000
left <- 0.5
up <- 0.5
# Simulation
route <- matrix(ncol = 2)
for(x in 1:n){
walker <- matrix(c(0,0), nrow = steps+1, ncol = 2, byrow = T)
for(i in 1:steps){
hor <- rbinom(1, 1, left)
if(!hor){
walker[i+1,1] <- walker[i,1] + 1
}
if(hor){
walker[i+1,1] <- walker[i,1] - 1
}
ver <- rbinom(1, 1, up)
if(ver){
walker[i+1,2] <- walker[i,2] + 1
}
if(!ver){
walker[i+1,2] <- walker[i,2] - 1
}
}
route <- rbind(route, walker)
}
id <- rep(1:n, each = 1001)
colnames(route) <- c("x" , "y")
route <- as.data.frame(route)
route <- cbind(route[2:nrow(route),], org = factor(id))
# Plot
p <- ggplot(route, aes(x = x, y = y, colour = org))
p <- p + geom_path()
print(p)

LS0tCnRpdGxlOiAiQ2FtaW5hdGEgQWxlYXRvcmlhIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgpFcyB1biBwcm9jZXNvIGVzdG9jYXN0aWNvIHNvYnJlIGxvcyBlbnRyb3MgY29tbyBlc3BhY2lvIGRlIGVzdGFkb3MuCgokJCBccHNpX24gPSBcc3VtX3tpPTF9Xm4gWF9pJCQKClVuYSB2YXJpYWJsZSBhbGVhdG9yaWEgcXVlIGRlcGVuZGUgZGUgbGEgcG9zaWNpb24gZGVsIHByb2Nlc28gYWwgY2FibyBkZWwgdGllbXBvICRuJC4KCiQkIFAoXHBzaV97bisxfSA9IGogfCBccHNpX24gPSBpKSA9IFxiZWdpbntjYXNlc30gcCAmIGogPSBpICsgMSBcXCBxICYgaiA9IGkgLSAxIFxcIDAgJiBcdGV4dHtlbiBvdHJvIGNhc299XGVuZHtjYXNlc30kJApTZWEgJFhfMSwgWF8yLCBcZG90cyQgdi1hIGkuaS5kIHRhbCBxdWUgJFAoWF9pID0gMSkgPSBwIFxsYW5kIFAoWF9pID0gLTEpID0gcSQKU3Vwb25nYW1vcyBxdWUgJFhfMCA9IDAkIHkgc2VhICRccHNpX24gPSBcc3VtX3tpID0gMH1eblhfaSQgbHVlZ28KJCRcbWF0aGJie0V9W1xwc2lfbl0gPSBcbWF0aGJie0V9XGxlZnRbXHN1bV97aSA9IDB9Xm5YX2lccmlnaHRdID0gXHN1bV97aT0wfV5uIFxtYXRoYmJ7RX1bWF9pXSA9IFxzdW1fe2k9MH1ebiBwIC0gcSA9IG4ocCAtIHEpJCQKCkFob3JhIGxhIHZhcmlhbnphIGRlICRccHNpX24kCiQkIHZhcltccHNpX25dID0gdmFyXGxlZnRbXHN1bV97bj0xfV5uIFhfaVxyaWdodF0gPSAgXHN1bV97bj0xfV5uIHZhcltYX2ldID0gbiBcY2RvdCB2YXJbWF9pXSA9IG5cY2RvdFtcbWF0aGJie0V9W1heMl0gLSBcbWF0aGJie0V9W1hdICQkCiQkPSBuXGNkb3QocCArIHEgIC0gKHAgLSBxKV4yKSA9IG5cY2RvdCgxIC0gcF4yIC0gMnBxICsgcV4yKSA9IG5cY2RvdCgxIC0gcF4yICsgMnBxIC0gcV4yKSAkJAokJD0gblxjZG90KDEgLSBwXjIgKyAycHEgLSBxXjIgKyAycHEgLSAycHEpID0gblxjZG90KDEgLSA0cHEgLSAocCArIHEpXjIpID0gNG5wcSQkCmBgYHtyfQojIFNpbXVsYWNpb24gZGUgY2FtaW5hdGEgYWxlYXRvcmlhIApsaWJyYXJ5KGdncGxvdDIpCmZvcihpIGluIDE6MTAwMCl7CiAgcCA8LSAwLjUKICBuIDwtIDUwMAogIFUgPC0gcnVuaWYobikKICB5IDwtIGN1bXN1bSgoVSA8PSBwKSAtIChVID4gcCkpIC0geVsxXQogIFpbaV0gPC0geVtuXQp9CnFwbG90KFosIGdlb209Imhpc3RvZ3JhbSIsIGJpbndpZHRoPTIpCmBgYApDYWxjdWxlbW9zOgokJCBQKFxwc2lfbiA9IHgpICQkClNlYSAKJCQgSV9uID0gXHRleHR7bnVtZXJvIGRlIG1vdmltaW5ldG9zIGEgbGEgaXpxdWllcmRhfSAkJAokJCBEX24gPSBcdGV4dHtudW1lcm8gZGUgbW92aW1pbmV0b3MgYSBsYSBkZXJlY2hhfSAkJAokJCBJX24gKyBEX24gPSBuIFxxdWFkIERfbiA9IFxzdW0gXGZyYWN7WF9pICsgMX17Mn0gPSBcZnJhY3tcc3VtIFhfaX17Mn0gKyBcZnJhY3tufXsyfSQkCiQkIFAoXHBzaV9uID0geCkgPSBQXGxlZnQoRF9uID0gXGZyYWN7eCArIG59ezJ9XHJpZ2h0KSA9IFxiaW5vbXtufXtcZnJhY3t4K259ezJ9fQpwXntcZnJhY3t4K259ezJ9fSBxXntcZnJhY3tuLXh9ezJ9fSQkCgojIyMjIFByb2JhYmlsaWRhZCBkZSB2b2x2ZXIgYSBwYXNhciBwb3IgZWwgcHVudG8gaW5pY2lhbAokJCAxIC0gfCBwIC0gcSB8ID0gXGJlZ2lue2Nhc2VzfSAxICYgcCA9IHFcXCA8IDEgJiBwXG5lcSBxXGVuZHtjYXNlc30gJCQKCgojIyBDYW1pbmF0YSBhbGVhdG9yaWEgYmlkaW1lbnNpb25hbAoKYGBge3J9CiMgUGFyYW1ldGVycwpuIDwtIDEwCnN0ZXBzIDwtIDEwMDAKbGVmdCA8LSAwLjUKdXAgPC0gMC41CgojIFNpbXVsYXRpb24Kcm91dGUgPC0gbWF0cml4KG5jb2wgPSAyKQpmb3IoeCBpbiAxOm4pewogIHdhbGtlciA8LSBtYXRyaXgoYygwLDApLCBucm93ID0gc3RlcHMrMSwgbmNvbCA9IDIsIGJ5cm93ID0gVCkKICBmb3IoaSBpbiAxOnN0ZXBzKXsKICAgIGhvciA8LSByYmlub20oMSwgMSwgbGVmdCkKICAgIGlmKCFob3IpewogICAgICB3YWxrZXJbaSsxLDFdIDwtIHdhbGtlcltpLDFdICsgMQogICAgfQogICAgaWYoaG9yKXsKICAgICAgd2Fsa2VyW2krMSwxXSA8LSB3YWxrZXJbaSwxXSAtIDEKICAgIH0KICAgIHZlciA8LSByYmlub20oMSwgMSwgdXApCiAgICBpZih2ZXIpewogICAgICB3YWxrZXJbaSsxLDJdIDwtIHdhbGtlcltpLDJdICsgMQogICAgfQogICAgaWYoIXZlcil7CiAgICAgIHdhbGtlcltpKzEsMl0gPC0gd2Fsa2VyW2ksMl0gLSAxCiAgICB9CiAgfQogIHJvdXRlIDwtIHJiaW5kKHJvdXRlLCB3YWxrZXIpCn0KCgppZCA8LSByZXAoMTpuLCBlYWNoID0gMTAwMSkKY29sbmFtZXMocm91dGUpIDwtIGMoIngiICwgInkiKQpyb3V0ZSA8LSBhcy5kYXRhLmZyYW1lKHJvdXRlKQpyb3V0ZSA8LSBjYmluZChyb3V0ZVsyOm5yb3cocm91dGUpLF0sIG9yZyA9IGZhY3RvcihpZCkpCgojIFBsb3QKcCA8LSBnZ3Bsb3Qocm91dGUsIGFlcyh4ID0geCwgeSA9IHksIGNvbG91ciA9IG9yZykpCnAgPC0gcCArIGdlb21fcGF0aCgpCnByaW50KHApCmBgYAo=