Tiempo hasta la ruina en el paseo aleatorio en tiempo discreto: Por su pregunta, entiendo que se refiere a una versión en tiempo discreto del problema de la ruina del jugador. Sin pérdida de generalidad, podemos considerar la riqueza del jugador denominada en unidades equivalentes a la cantidad apostada. Supondremos que la riqueza del jugador es un número entero positivo de tales unidades, y denotamos la riqueza inicial como $w_0 \in \mathbb{N}$ . Entonces el tiempo hasta la ruina se define como:
$$T \equiv \min \{ t \in \mathbb{N} | w_t = 0 \},$$
donde la riqueza sigue el proceso de paseo aleatorio unitario:
$$w_t = w_0 + \sum_{i=1}^t \Delta_i \quad \quad \quad \mathbb{P}(\Delta_i = -1) = \mathbb{P}(\Delta_i = 1) = \frac{1}{2}.$$
El tiempo para la ruina es el "tiempo de golpe" para el estado $w=0$ en este proceso estocástico. Se puede determinar la distribución del tiempo hasta la ruina observando las distribuciones de los tiempos de golpeo. En este caso es útil apelar a un resultado especial para los paseos aleatorios llamado "teorema del tiempo de golpeo" (véase, por ejemplo Van Der Hofstad y Keane 2008 y Kager 2017 ), lo que demuestra que:
$$\mathbb{P}(T=t) = \frac{w_0}{t} \cdot \mathbb{P}(w_t = 0).$$
A continuación utilizaremos este resultado para derivar una distribución útil que está estrechamente relacionada con la distribución del tiempo hasta la ruina. El resultado es una distribución de tipo de fase discreta , que es un tipo de distribución utilizada para modelar el tiempo de llegada al estado de absorción de una cadena de Markov.
Derivación de la distribución del tiempo hasta la ruina: Observando la naturaleza del paseo aleatorio, es fácil ver que el tiempo hasta la ruina debe ocurrir en algún lugar del soporte $t = w_0, w_0 + 2, w_0 + 4, w_0 + 6, ...$ . Este es un resultado bastante intuitivo: necesitamos tener al menos $w_0$ apuestas para perder la riqueza inicial, y cualquier apuesta adicional que lleve a la ruina debe venir en pares, cada uno con una ganancia y una pérdida que se anulen mutuamente. Así, para facilitar nuestro análisis, es útil trabajar con el número total de ganador apuesta en el tiempo de la ruina:
$$R \equiv \frac{T - w_0}{2},$$
que tiene soporte $r = 0,1,2,3,...$ . Ahora, aplicando el teorema del tiempo de golpeo anterior, obtenemos:
$$\begin{align} \mathbb{P}(R=r) = \mathbb{P} \Bigg( \frac{T - w_0}{2} = r \Bigg) &= \mathbb{P} ( T = w_0 + 2r ) \\[6pt] &= \frac{w_0}{w_0 + 2r} \cdot \mathbb{P} ( w_{w_0 + 2r} = 0 ) \\[6pt] &= \frac{w_0}{w_0 + 2r} \cdot \mathbb{P} \Bigg( w_0 + \sum_{i=1}^{w_0 + 2r} \Delta_i = 0 \Bigg) \\[6pt] &= \frac{w_0}{w_0 + 2r} \cdot \mathbb{P} \Bigg( \sum_{i=1}^{w_0 + 2r} \mathbb{I}(\Delta_i=1) = r \Bigg) \\[6pt] &= \frac{w_0}{w_0 + 2r} \cdot \text{Bin} ( r | w_0 + 2r, \tfrac{1}{2} ) \\[6pt] &= \frac{w_0}{w_0 + 2r} \cdot \frac{(w_0 + 2r)!}{(w_0+r)! r!} \cdot \frac{1}{2^{w_0 + 2r}} \\[6pt] &= \frac{w_0}{2^{w_0}} \cdot \frac{(w_0 + 2r - 1)!}{(w_0+r)! r!} \cdot \frac{1}{4^r} \\[6pt] \end{align}$$
Lo más sencillo es enmarcar el problema de la ruina del jugador en términos de esta distribución. Sin embargo, podemos volver a la distribución para $T$ . Para cualquier valor $t = w_0, w_0 + 2, w_0 + 4, w_0 + 6, ...$ en el soporte para el tiempo de la ruina, tenemos:
$$\mathbb{P}(T=t) = w_0 \cdot \frac{(t - 1)!}{(\tfrac{t+w_0}{2})! (\tfrac{t-w_0}{2})!} \cdot \frac{1}{2^t}.$$
Aplicación en R
: Podemos programar esta función de densidad utilizando la sintaxis estándar para la distribución de la probabilidad de la siguiente manera. En esta función la entrada t
es una entrada vectorizada para el tiempo de la ruina. La función produce valores de densidad por defecto, pero se puede utilizar la función log
para producir densidades logarítmicas en su lugar.
druintime <- function(t, w, log = FALSE) {
#Check inputs
if (!is.numeric(t)) { stop('Error: Input t should be numeric') }
if (!is.numeric(w)) { stop('Error: Input w must be a positive integer') }
if (length(wealth) != 1) { stop('Error: Input w must be a single value') }
if (as.integer(w) != w) { stop('Error: Input w must be a positive integer') }
if (min(wealth) < 1) { stop('Error: Input w must be a positive integer') }
if (!is.logical(log)) { stop('Error: Input log must be a logical value') }
if (length(log) != 1) { stop('Error: Input log must be a single value') }
#Compute number of successes in each time-to-ruin
#and set indicators for integer values
n <- length(t)
r <- (t - w)/2
IND <- (as.integer(r) == r)&(r >= 0)
#Compute log-density
LOGDEN <- rep(-Inf, n)
LOGDEN[IND] <- log(w) - log(w + 2*r[IND]) +
dbinom(r[IND], size = w + 2*r[IND], prob = 1/2, log = TRUE)
#Give output
if (log) { LOGDEN } else { exp(LOGDEN) } }
Implementar esto con la riqueza inicial $w_0 = 6$ da la siguiente función de masa de probabilidad.
#Compute probability mass function over a set of input values
t <- 0:200
w0 <- 6
DENS <- druintime(t, w = w0)
#Plot the mass function
t.names <- rep(NA, length(t))
for (i in 0:20) { t.names[1+10*i] <- t[1+10*i] }
barplot(DENS, names.arg = t.names,
main = 'Probability Mass Function for Time-to-Ruin', col = 'red',
xlab = 'Time-to-Ruin', ylab = 'Probability')