Exploring Idea-Space with algorithmic Ableton Novelty Search

In meinem Vortrag (u.a. dieses Wochenende in Offenbach auf dem Bended Realities Festival) rede ich viel über das, was ich „Idea-Space“ nenne, also Platons Ideenwelt, die nun im Internet zum ersten mal allumfänglich mit einem Klick sichtbar wird und die wir dank der digitalen Produktionsmittel in (bis vor kurzem) zunehmender Geschwindigkeit erforschen.

Samin hat nun ein kleines Tool programmiert, mit dem man mit dem Novelty Search Approach die Klangwelten von Ableton erforschen kann: Musical Novelty Search – Evolutionary Algorithms + Ableton Live.

Novelty Search Live is a open-source tool that helps musicians find musical inspiration in Ableton Live. It uses a evolutionary algorithm to continuously evolve new audio clip and synth parameter combinations, guided exclusively by Novelty Search. Finally is takes the thousands of musical ideas it has discovered and generates a interactively browsable map with t-SNE.

While this experiment is just a quick proof of concept, it hints at the option of a musical inspiration assistant which guides the creative process.

In sehr naher Zukunft ermöglichen uns künstliche Intelligenzen mit diesem Verfahren, in großer Breite eine ziemlich alte Kreativ-Technik anzuwenden: Die Kuration.

Kreative, wenn sie bekannter sind oder gar sowas wie ein „Star-Fotograf“ oder ähnliches, arbeiten oft nach genau diesem Novelty Search Approach: Es werden Praktikanten und Angestellte des eigenen Designbüros auf einen Pitch oder einen Auftrag angesetzt, der „Star-Designer“ kommt dann am Ende nur nochmal rum und pickt die Arbeiten heraus, die er für gut erachtet. Genau das ermöglicht AI nun für jeden.

Bei Samims Codeschnippseln (hier auf Github) muss man sich nun also noch weniger mit Ableton auskennen – man klickt einfach im Ideaspace herum, bis ein brauchbares Ergebnis zu hören ist – und das ist nichts weiter als die Kuration der sichtbaren/hörbaren Ideenwelt.

How does it work?
1. Control Ableton Live from Python code via the PyLive library.
2. Capture infos (clips/parameters/status) from Live & turn into Vector.
3. Evolve Vector with Deap (Distributed Evolutionary Algorithms in Python) (this should be replaced with a CPPN like NEAT for better results)
4. Use Novelty Search as fitness function, run for X generations.
5. Send evolved vector to Ableton Live and play new music combination.
6. Loop 3–5 until user interrupt.
7. Show interactive T-SNE map of all evolved solutions. […]

Novelty Search Live has transformed the way i compose music. Compared with manual processes, finding inspiration with computational assistance is joyful and often leads to unforeseeable outcomes. Combined with ideas such as surprise search and interactive training, a true musical inspiration assistant may become a reality soon. Such an assistant would allow us to compose high quality, yet unheard music much faster and inform us if what we are doing has been done a million times before. As such approaches have applications beyond just music, it is easy to imagine a world where there is an inspiration assistant for any thinkable creative processes.