De cómo la poesía dio lugar a las cadenas de Markov

Publicado el 18 mayo 2020 por Icmat

Comentábamos en una entrada previa sobre Andrei Markov que su interés al crear las cadenas que hoy llevan su nombre no tenía conexión alguna con posibles aplicaciones, excepto las que desarrolló en literatura por su gran afición a la poesía. Ese interés tan peculiar sigue vigente, como veremos, en nuestros días.

Alexander Pushkin

De la poesía a las cadenas de Markov

De hecho, el trabajo de Andrei Markov se centró sobre la obra en verso “Eugene Onegin”, de Alexander Pushkin. Andrei Markov dedicó horas, muchas horas, a analizar las secuencias de vocales y consonantes. Y en enero de 1913 presentó sus resultados a la Academia de Ciencias, resultados que no fueron tan importantes para la poesía como sí lo fueron para las matemáticas y sus aplicaciones. A continuación, reproducimos un resumen muy breve del análisis de Andrei Markov. Los lectores de este blog que quieran más detalles sobre esta cuestión pueden seguir el enlace para acceder a un interesante artículo firmado por Brian Hayes.

Andrei Markov no entró en la estructura en sí misma del poema, sino que eliminando puntuaciones, espacios, etc. recogió las 20.000 primeras letras del poema de Alexander Pushkin y organizó éstas en 200 bloques de 10 x10 letras, contando vocales y consonantes en cada fila y cada columna (8.638 vocales y 11.362 consonantes). Calculó medias y varianzas para obtener las medidas de dispersión. A continuación, clasificó pares de letras sucesivas y encontró 1.104 pares de vocales y 3.827 consonantes dobles; el resto serían 15.069 pares de vocal y consonante, o de consonante y vocal.

Ahora podríamos calcular la probabilidad de que una letra elegida arbitrariamente sea una vocal,

8.638/20.000 = 0,43.

Si asumiéramos que todas las letras hubieran sido dispuestas de manera independiente unas de otras, la probabilidad de encontrar dos vocales consecutivas sería

0,43 x 0,43 = 0,19.

Pero la realidad, con lo que hemos contado, es que esa probabilidad debería ser tres veces mayor.

Desde esta observación, la conclusión es clara: las letras no son independientes en el poema y en cada una se observa una dependencia de la letra anterior.

Manuscrito de Pushkin

De las cadenas de Markov a la poesía

Cerramos el círculo “cadenas de Markov versus poesía” con algunos ejemplos de cómo este desarrollo probabilístico puede ser usado para crear poesía. Para no ser pretenciosos, vamos a calificarlo como “generar poesía”, pues poca seguridad hay sobre la belleza del resultado final de la composición.

Uno de los instrumentos más interesantes es un generador de poesía llamado Markomposition. Su funcionamiento se inicia cuando, a petición suya, introducimos una frase y el programa, aplicando de manera aleatoria cadenas de Markov, va produciendo el poema.

Recordemos la idea básica de una cadena de Markov: tenemos diferentes estados y las probabilidades de pasar de unos a otros. Para ver cómo se puede aplicar a la literatura, crearíamos estados de modo que cada uno de ellos sea una palabra o una frase, y estableceríamos la probabilidad de pasar de una palabra a otra, o de una palabra a una frase, etc.

En Markomposition se dan algunas instrucciones básicas para su manejo. Por ejemplo, y aunque sea una obviedad, la calidad de lo que obtengamos dependerá no solo de la calidad de los estados posibles, sino también de la variedad de secuenciaciones; es decir, si cada palabra tuviera un solo sucesor, solo habría un poema, así que cuanta mayor variedad en las disposiciones de las palabras introduzcamos, más opciones tendremos de obtener composiciones diferentes. Otra de las variables a considerar se refiere a que debemos fomentar una cierta repetición, base del ritmo poético.

Marie Chatfield Rivas

En la página web de Markomposition, la autora, Marie Chatfield, comenta que ha usado el Proyecto Gutenberg, una biblioteca digital con 60.000 libros electrónicos gratuitos. En particular, para los ejemplos que allí muestra, ha empelado las obras en inglés

  • Poems, de Emily Dickinson
  • The Divine Comedy, de Dante Alighieri
  • Grimm’s Fairy Tales
  • The Sonnets, Triumps, and Other Poems, de Francesco Petrarca
  • The Declaration of Independence of the United States of America
  • Hamlet, Prince of Denmark, de William Shakespeare

Invitamos a que el lector cree su propia biblioteca digital y genere sus propios poemas markovianos.

Otro proyecto similar es el desarrollado por Alexander Raichev, de Auckland, Nueva Zelanda. El lector puede acceder a esta herramienta a través de este enlace. Alexander Raichev llama a su método “Markov, a Game of Poems”, que adaptó como un ejercicio de un libro de texto sobre computación, Exercise 13.8 de Think Python, Downey 2012. En la página de internet se describe con detalle el método y se dan algunas normas para obtener resultados más interesantes.

¡No todo es rigurosidad matemática alrededor de las cadenas de Markov y sus aplicaciones, también hay tiempo para la poesía!

_____

Mario Castro Ponce (Universidad Pontificia Comillas), Manuel de León (Instituto de Ciencias Matemáticas CSIC, Real Academia de Ciencias) y Antonio Gómez Corral (Universidad Complutense de Madrid)