Each agent consists of a knowledge represented by interpolated sub-models trained on a rather large corpus (~50 tunes) and of a intuition represented by a factor oracle constructed on a small corpus (~1 tune).
The agents interact by using message passing through a cluster graph with a belief propagation algorithm. This aim to emulate the cognitif process of interplay between musicians, but also how a musician creates their improvisation over several dimensions.
In the following examples, we use 2 agents : a melodic agent and a harmonic agent. Therefore both the melody and the chords are improvised (the agents are not following the original chord progression). They are trained using the Omnibook corpus (available here).