Algoritmos musicales

algoritmos

Por fin llega el verano y las vacaciones. Este hecho supone, al menos en España, la proliferación de canciones (no entro a valorarlas) que se disputarán el prestigioso galardón de “La canción del verano” y entrar a formar parte del Olimpo Musical con el gran Zeus de la canción estival (Georgie Dann).

A priori, os puede sorprender que vaya a hablar de la canción del verano; pero no, no voy a hablar de esto, sino de si es posible diseñar algún algoritmo que nos permitiera crear, a priori, una canción que tuviera mayor probabilidad de llevarse este galardón utilizando el mismo o menos presupuesto de marketing que el resto. La respuesta es que, al menos, se podría intentar. Actualmente, los grandes éxitos se consiguen a través de diferentes herramientas de marketing que se basan en mayor o menor medida en la reproducción hasta el agotamiento del personal de ésta en diversos medios.

El mecanismo no sería muy complejo, bastaría con tener un volumen de datos de lo que a la gente le gusta escuchar a lo largo del año, buscar un patrón acertado sobre estos datos y luego gastarse el dinero en diferentes medios para que se conozca la canción. ¿Podría funcionar? Pues entiendo que sí. No es demasiado complejo y dada la existencia de numerosas listas de distribución musical, sería fácil explotarlas para componer un temazo o un tema mediocre que pelee con los titanes de la música veraniega.

Ejemplo de algoritmo

Actualmente, podéis encontrar muchos algoritmos como puede ser Shazam (reconocimiento de canciones). El funcionamiento de Shazam es sencillo y complejo a la vez. Me encantaría explicároslo, pero me llevaría unas cuantas páginas. No obstante, en esencia, su funcionamiento es el siguiente:

  • Genera y analiza un espectrograma del archivo grabado.
  • Construye un mapa de constelaciones basado en el espectrograma.
  • Hace un proceso llamado hash combinatorial en un área determinada del mapa.
  • Búsqueda en la base de datos.
  • Puntuación de posibles coincidencias.

Lo verdaderamente novedoso de este método es que intenta imitar el comportamiento del ser humano en el reconocimiento de una canción, es decir, busca distancias mínimas entre grupos de puntos del espectrograma de la canción que queremos que averigüe y la base de datos. Más o menos como un ser humano, cuando escuchamos una canción que conocemos la relacionamos escuchando algún fragmento de esta misma forma. Lo único es que este algoritmo precisa mucha cantidad de datos para poder funcionar. Afortunadamente, el alojamiento de datos (discos) es francamente barato hoy en día.

Posiblemente, en poco tiempo, nuestros sistemas basados en algoritmos de explotación de datos creen canciones ad hoc en función de cómo nos sentimos, lo que tararea nuestro cerebro o cómo late nuestro propio corazón.

Conclusión

Muchos pensaréis que es imposible o muy complejo, pero no debemos olvidarnos de que la música es pura matemática y los compositores, desde el inicio han usado algoritmos para crear sus piezas. Sin querer dar aquí una clase de composición musical, los algoritmos han sido usados para componer música durante siglos; los procedimientos usados para hacer gráficos de voces en el contrapunto occidental, por ejemplo, pueden ser frecuentemente reducidos a un algoritmo determinado.
De cualquier forma, la música, aún siendo matemática, es maravillosa y os deseo que disfrutéis mucho con ella. ¡Qué sería del ser humano de no haber existido la música! Feliz verano

Antonio PérezLinkedin_circulo