2008-10-13 10 views
8

Me gustaría implementar un algoritmo evolutivo interactivo para generar música (probablemente solo melodías simples para empezar).Buscando código de ejemplo de música evolutiva

Me gustaría usar JFugue para esto. Su sitio web afirma que es muy adecuado para la música evolutiva, pero no puedo encontrar ningún ejemplo evolutivo.

Ya tengo a framework para proporcionar la maquinaria evolutonary. Lo que estoy buscando es un código simple y funcional que demuestre enfoques viables para la parte musical (por ejemplo, codificaciones adecuadas y operadores evolutivos para las melodías evolucionadas).

Tengo algunas ideas sobre cómo se puede lograr, pero no estoy particularmente bien informado sobre la teoría de la música, así que, para empezar, me gustaría simplemente reactivar algo que se sabe que funciona.

Entonces, ¿alguien tiene, o conoce, algún código disponible de manera gratuita (cualquier idioma está bien) que demuestre uno o más acercamientos a la música evolutiva?

EDIT: Estoy buscando específicamente el código evolutivo en lugar de otras técnicas que podrían utilizarse para la síntesis de música.

Respuesta

0

Se está investigando el uso de Cellular Automata para generar música. Al igual que con toda la generación de música, es realmente una cuestión de mapeo en lugar de generación. Podría usar casi cualquier cosa como entrada siempre que defina su mapeo para que suene "bien" (bueno, supongo que interesante es una palabra mejor).

Google "celular automata music" da bastantes golpes. Otra buena fuente de información es el Computer Music Journal si puede obtener acceso a sus archivos.

1

Es probable que desee ver en cadenas de Markov - son probablemente más útil para usted que un algoritmo evolutivo para empezar, como juzgar la calidad de la salida con el fin de criar el mejor va a ser una pesadilla (subjetiva y que consume mucho tiempo), y son ideales para combinar con la programación evolutiva.

Hay una buena introducción a ellos en Coding Horror. El artículo explica el concepto y demuestra los resultados notables, los comentarios mencionan la música mucho más (me perdí durante horas en los comentarios y en los sitios a los que vinculaban). Hay algunos detalles más específicos y lecturas adicionales en Wikipedia.

Las cadenas de Markov tienen un elemento de probabilidad para ellas, por lo que aquí es donde puedes combinarlas con la programación evolutiva, mediante la evolución de un método de elección de alternativas que no sea el lanzamiento de un dado.

+0

Gracias. Ya estoy familiarizado con Markov Chains. Estoy buscando específicamente código evolutivo porque quiero usarlo como un ejemplo de lo que puedes hacer con algoritmos evolutivos.He leído muchas cosas que mencionan música evolutiva pero no he encontrado ningún código de ejemplo del mundo real. –

Cuestiones relacionadas