Objetivos didácticos
¿Puede una sola idea matemática predecir el tiempo, el próximo mensaje de WhatsApp, qué páginas web son importantes y si el Bitcoin seguirá cayendo mañana? Sí — y esa idea es la cadena de Markov: lo que pasa mañana depende únicamente de lo que pasa hoy. Este lab de bachillerato recorre 20 salas que van desde la intuición más concreta (el estado de ánimo propio, el clima de Barcelona) hasta aplicaciones reales como PageRank y series financieras.
Qué se aprende
El alumno construye la intuición de la dependencia sin memoria a partir de datos propios y reales, y luego la formaliza con matrices para predecir, simular y optimizar. La mecánica central es un grafo vivo con una rana saltante y contadores en tiempo real que hacen visible la probabilidad de transición.
- Contar transiciones reales (observaciones climáticas reales hechas durante un mes en Barcelona) y normalizar filas para obtener la matriz de transición P.
- Multiplicar un vector de probabilidad por P para predecir a 1 y 2 pasos; repetir la operación para ver cómo el estado inicial se olvida en ~9 días.
- Identificar la distribución estacionaria (autovector) π tal que π·P = π moviéndola con sliders hasta alcanzar el punto fijo.
- Hacer 100 simulaciones en paralelo y comprobar que la proporción converge a π.
- Distinguir cadenas absorbentes y estado sin retorno.
- Comparar modelos de orden 1 vs. orden 2 (datos de ayer y anteayer frente a datos de ayer) y discutir el compromiso entre capacidad predictiva y cantidad de datos.
- Explorar PageRank (algoritmo de Google de ranking de páginas web) como cadena de Markov.
- Generar texto con un predictor de orden 1/2/3 entrenado sobre 3 millones de palabras en español y elegir el orden óptimo para un teclado real.
- Codificar Bitcoin en 5 estados de variación diaria/semanal/mensual, leer la diagonal de P como inercia del mercado, y hacer un back-test honesto comparando Markov orden 1, orden 2 y buy-and-hold sobre datos de test de 2026.
Ideas matemáticas clave
- Una cadena de Markov es un proceso estocástico donde P(estado siguiente | toda la historia) = P(estado siguiente | estado actual) — la propiedad de Markov o "ausencia de memoria".
- La matriz de transición P tiene filas no negativas que suman 1 (matriz estocástica); cada entrada P[i][j] es la probabilidad de pasar del estado i al estado j.
- La distribución tras n pasos es v·Pⁿ; cuando n→∞ la distribución converge a π independientemente del estado inicial (para cadenas ergódicas).
- La distribución estacionaria π satisface π·P = π y puede hallarse como vector propio izquierdo de P con valor propio 1.
- Un estado absorbente tiene P[i][i] = 1; si existe, cualquier trayectoria larga termina atrapada ahí con probabilidad 1.
- Aumentar el orden del modelo amplía el estado (pares, triples de días) y captura más dependencia, pero requiere exponencialmente más datos para estimar bien cada fila.
Contenidos por salas
Sala 1 · ¿Cómo predecimos el tiempo?
Se presentan dos series reales de enero (Madrid y A Coruña) que muestran el tiempo día a día: Sol, Nublado o Lluvia. El alumno observa los patrones de rachas antes de que el sistema haga una predicción para el día 31.
Tareas para el alumno
- Elegir una ciudad y observar la secuencia de días generada.
- Responder qué tiempo crees que hará el día 31 y ver si el modelo lo anticipa.
Sala 2 · Una cadena de estados
El alumno construye su propia cadena de estados de ánimo (Contento/Triste/Neutro) anotando al menos 50 transiciones. Con ese registro se demuestra la idea clave: el siguiente estado depende solo del actual.
Tareas para el alumno
- Anotar al menos 20 estados distintos y 5 transiciones únicas hasta completar 50.
- Pulsar "Listo" para ver el diagnóstico de la cadena generada.
Sala 3 · Cómo construyo la predicción
Animación que explica cómo convertir una cadena en una tabla de frecuencias (matriz de transición). A continuación el alumno lee su propia tabla y responde una pregunta de probabilidad concreta.
Tareas para el alumno
- Ver la animación de construcción de la tabla.
- Leer la tabla propia y escribir la probabilidad de Sol al día siguiente si hoy llueve (valor entre 0 y 1).
Sala 4 · Datos reales: Barcelona en octubre
Se presentan 30 días reales de Barcelona (primeros del set de entrenamiento 2019-2023). El alumno clasifica cada par de días consecutivos para construir la matriz P1 a mano, y luego reflexiona sobre por qué la muestra de 30 días difiere de la matriz de referencia.
Tareas para el alumno
- Pulsar la casilla correcta para cada par de días consecutivos (Sol→Nub, Nub→Llu, etc.).
- Comprobar la puntuación (máximo 20) y elegir la explicación correcta de la diferencia.
Sala 5 · La rana salta entre nubes
Grafo vivo con la mascota rana saltando según la matriz P1 de Barcelona (Sol/Nublado/Lluvia). Los contadores de visitas se actualizan en tiempo real; el alumno estima a ojo el porcentaje de Sol a largo plazo.
Tareas para el alumno
- Observar el grafo y los contadores mientras la rana salta.
- Escribir el porcentaje de visitas a Sol que esperas a largo plazo (objetivo ≈ 37%).
Sala 6 · Multiplicamos por la matriz
Se introduce la operación v' = v · P: partiendo de un vector de probabilidad de hoy, se obtiene el de mañana. Una demo animada muestra el caso Sol puro; luego el alumno practica con otro punto de inicio.
Tareas para el alumno
- Ver el ejemplo animado de multiplicación vectorial.
- Mover los sliders de "hoy" y comprobar el resultado de "mañana" calculado por la matriz.
Sala 7 · Dos pasos adelante
Extensión del paso anterior: aplicar la matriz dos veces (P²) para predecir pasado mañana. El alumno parte de "hoy llueve" y ajusta los sliders para obtener la probabilidad de Sol en dos días (objetivo ≈ 0,29).
Tareas para el alumno
- Mover los sliders para aplicar P dos veces partiendo de Lluvia.
- Leer la probabilidad de Sol pasado mañana y comprobarla.
Sala 8 · El pasado se olvida
Tres curvas de convergencia, una por cada estado inicial posible (Sol, Nublado, Lluvia), iterando la matriz repetidamente. Las curvas se fusionan: el pasado deja de importar. El alumno identifica a partir de qué día eso ocurre.
Tareas para el alumno
- Observar cómo las tres curvas convergen al mismo valor.
- Escribir a partir de qué día se solapan casi del todo (objetivo ≈ 9).
Sala 9 · Cien ranas
Simulación de 100 ranas independientes partiendo de distintos estados. A largo plazo todas se redistribuyen según la distribución estacionaria π ≈ (0,37 / 0,37 / 0,26). El alumno predice el porcentaje en Sol.
Tareas para el alumno
- Observar la simulación de las 100 ranas saltando en paralelo.
- Estimar y anotar el porcentaje en Sol a largo plazo (objetivo 37 ± 7%).
Sala 10 · El punto fijo
Se introduce la distribución estacionaria π tal que π · P = π. El alumno mueve tres sliders para encontrar esa distribución especial; la pantalla confirma cuando la ha hallado dentro de tolerancia 2%.
Tareas para el alumno
- Mover los sliders hasta que el vector de salida coincida con el de entrada.
- Memorizar o anotar los valores del punto fijo (π ≈ 0,37 / 0,37 / 0,26).
Sala 11 · Orden 1 vs orden 2
Se entrena un modelo de orden 1 (P1) y uno de orden 2 (P2, filas = pares de días) sobre 5 años de octubre en Barcelona, y se evalúan sobre 2024 (31 días no vistos). El orden 2 acierta 4 días más (16 vs 20). El alumno elige la explicación correcta del trade-off.
Tareas para el alumno
- Comparar los aciertos de ambos modelos sobre el set de test.
- Elegir la explicación del por qué más memoria no siempre gana con pocos datos.
Sala 12 · La rana se ahoga
Cadena absorbente: 5 piedras en fila + un charco (estado trampa). Cada salto tiene solo un 5% de probabilidad de caer. El alumno predice dónde estará la rana en 1000 saltos, luego simula y descubre que siempre acaba en el charco porque 0,95^1000 ≈ 0.
Tareas para el alumno
- Hacer una predicción intuitiva antes de simular.
- Simular y contrastar con la predicción; leer la explicación del estado absorbente.
Sala 13 · El surfer aleatorio
Seis páginas web conectadas con la matriz PageRank (damping 0,85). La rana sigue enlaces el 85% del tiempo y se teletransporta el 15%. El alumno observa cuál es la página más visitada (A) y explica por qué a partir de la estructura de enlaces.
Tareas para el alumno
- Dejar correr la simulación y leer las visitas acumuladas.
- Elegir la explicación correcta de por qué A gana (recibe más enlaces).
Sala 14 · Diseña tu Google
Editor interactivo de 5 páginas (A-E): el alumno dibuja enlaces con clic y simula 1000 saltos del surfer. Objetivo fase 1: hacer que E sea la más visitada. Objetivo fase 2: conseguirlo usando solo páginas que ya son "fuentes confiables".
Tareas para el alumno
- Conectar las páginas con enlaces y simular hasta que E sea la más popular.
- En la fase 2, lograr el mismo resultado aprovechando páginas con alta reputación.
Sala 15 · Predictor de WhatsApp
Cadena de Markov entrenada sobre 3 millones de palabras de subtítulos en español. El alumno elige el orden (1, 2 o 3) y una palabra inicial, genera diálogos y compara fluidez; luego responde cuál es el mejor compromiso para un teclado real.
Tareas para el alumno
- Probar los tres órdenes con varias palabras iniciales y leer los textos generados.
- Elegir qué orden ofrece el mejor equilibrio entre coherencia y cobertura de datos.
Sala 16 · Bitcoin en 5 colores
Un año de Bitcoin (2025) codificado en 5 estados de variación: gran subida, subida, plano, bajada, gran bajada. Se puede cambiar entre resolución diaria, semanal y mensual. La matriz muestra la autocorrelación del mercado.
Tareas para el alumno
- Cambiar entre día, semana y mes y observar cómo cambia la diagonal de la matriz.
- Responder qué significa una diagonal alta (clustering: estados similares se encadenan).
Sala 17 · ¿Tiene memoria el mercado?
Test honesto fuera de muestra sobre 2026: el modelo entrenado en 2025 genera curvas de precio con P1 y P2 y se comparan con la curva real (MSE sobre 15 puntos). El alumno repite varias corridas y saca conclusiones sobre la capacidad predictiva del modelo.
Tareas para el alumno
- Lanzar varias simulaciones y observar el MSE de cada modelo.
- Elegir la conclusión más sensata: si Markov predice precios con éxito consistente.
Sala 18 · Back-test honesto
Comparativa de tres estrategias de inversión con 1 bitcoin: comprar y aguantar, Markov orden 1, y Markov orden 2. Cada día los modelos dicen LONG o FUERA. Se simula el resultado económico final sobre el periodo de test 2026.
Tareas para el alumno
- Lanzar varias corridas y comparar el saldo final de las tres estrategias.
- Elegir qué pasa con la estrategia Markov frente al buy-and-hold y razonar por qué.
Sala 19 · Conclusiones
Seis afirmaciones sobre cadenas de Markov (estados absorbentes, predicción de precios, propiedad de Markov, distribución estacionaria, etc.) que el alumno clasifica como cierto o falso; cada respuesta despliega un ejemplo del mundo real.
Tareas para el alumno
- Leer cada afirmación y marcarla como cierto o falso.
- Leer los ejemplos reales que aparecen tras cada respuesta.
Sala 20 · Diseña tu propia cadena
El alumno construye desde cero su propia cadena de Markov: elige entre 2 y 5 estados, les da nombre y define las probabilidades de transición mediante una tabla o grabando una secuencia de estados. Al terminar, la rana salta en su grafo personalizado, se calculan la distribución estacionaria y los estados más y menos visitados.
Tareas para el alumno
- Elegir número de estados (2-5) y ponerles nombre.
- Definir las transiciones con la matriz o grabando una secuencia.
- Observar la simulación y leer la distribución estacionaria, el estado más visitado y el menos visitado.
Salas para proyectar
Las más vistosas para mostrar y discutir en clase.