Explicadas visualmente

Por Victor Powell

con texto de Lewis Lehe

Las cadenas de Markov, llamadas así por Andrey Markov, son sistemas matemáticos que saltan de un «estado» (una situación o conjunto de valores) a otro. Por ejemplo, si se hiciera un modelo de cadena de Markov del comportamiento de un bebé, se podrían incluir como estados «jugar», «comer», «dormir» y «llorar», que junto con otros comportamientos podrían formar un «espacio de estados»: una lista de todos los estados posibles. Además, sobre el espacio de estados, una cadena de Markov le indica la probabilidad de saltar, o «transicionar», de un estado a otro, por ejemplo la probabilidad de que un bebé que está jugando se duerma en los próximos cinco minutos sin llorar primero.

A continuación se muestra una simple cadena de Markov de dos estados.

velocidad

Con dos estados (A y B) en nuestro espacio de estados, hay 4 transiciones posibles (no 2, porque un estado puede hacer una transición hacia sí mismo). Si estamos en ‘A’ podemos hacer la transición a ‘B’ o quedarnos en ‘A’. Si estamos en «B», podemos pasar a «A» o quedarnos en «B». En este diagrama de dos estados, la probabilidad de transición de cualquier estado a cualquier otro es de 0,5.

Por supuesto, los modeladores reales no siempre dibujan diagramas de cadena de Markov. En su lugar, utilizan una «matriz de transición» para contabilizar las probabilidades de transición. Cada estado del espacio de estados se incluye una vez como fila y otra como columna, y cada celda de la matriz indica la probabilidad de transición del estado de su fila al estado de su columna. Así, en la matriz, las celdas hacen el mismo trabajo que las flechas en el diagrama.

velocidad

A B

A
P(A|A): {{ transitionMatrix | number:2 }}
P(B|A): {{ transitionMatrix | number:2 }}

B
P(A|B): {{ transitionMatrix | number:2 }}
P(B|B): {{ transitionMatrix | number:2 }}

Si el espacio de estados añade un estado, añadimos una fila y una columna, añadiendo una celda a cada columna y fila existentes. Esto significa que el número de celdas crece cuadráticamente a medida que añadimos estados a nuestra cadena de Markov. Por lo tanto, una matriz de transición resulta muy útil rápidamente, a menos que quieras dibujar un diagrama de cadena de Markov de gimnasio de la selva.

Un uso de las cadenas de Markov es incluir fenómenos del mundo real en simulaciones por ordenador. Por ejemplo, podríamos querer comprobar la frecuencia con la que se desborda una nueva presa, que depende del número de días de lluvia seguidos. Para construir este modelo, empezamos con el siguiente patrón de días lluviosos (R) y soleados (S):

Una forma de simular este clima sería simplemente decir «La mitad de los días son lluviosos. Por lo tanto, todos los días de nuestra simulación tendrán un cincuenta por ciento de posibilidades de lluvia». Esta regla generaría la siguiente secuencia en la simulación:

¿Has notado cómo la secuencia anterior no se parece a la original? La segunda secuencia parece dar saltos, mientras que la primera (los datos reales) parece tener una «pegada». En los datos reales, si un día hace sol (S), es mucho más probable que el día siguiente haga sol.

Podemos minimizar esta «rigidez» con una cadena de Markov de dos estados. Cuando la cadena de Markov está en el estado «R», tiene una probabilidad de 0,9 de quedarse y una probabilidad de 0,1 de irse al estado «S». Del mismo modo, el estado «S» tiene 0,9 probabilidades de quedarse y 0,1 de pasar al estado «R».

velocidad

En manos de metereólogos, ecologistas, informáticos, ingenieros financieros y otras personas que necesitan modelar grandes fenómenos, las cadenas de Markov pueden llegar a ser bastante grandes y potentes. Por ejemplo, el algoritmo que utiliza Google para determinar el orden de los resultados de las búsquedas, llamado PageRank, es un tipo de cadena de Markov.

Arriba hemos incluido un «patio de recreo» de cadenas de Markov, donde puedes crear tus propias cadenas de Markov jugando con una matriz de transición. Aquí hay algunas para trabajar como ejemplo: ex1, ex2, ex3 o generar una al azar. El texto de la matriz de transición se pondrá en rojo si la matriz proporcionada no es una matriz de transición válida. Las filas de la matriz de transición deben sumar 1. También tiene que haber el mismo número de filas que de columnas.

También puedes acceder a una versión a pantalla completa en setosa.io/markov

Deja una respuesta

Tu dirección de correo electrónico no será publicada.