118. Groover

Carolan has continued exploring how it feels  to accompany AI-composed folk-tunes. Our experiences of using the FolkRNN system to first compose a set of jigs (which we performed back at the MusAIc festival in Stockholm last November – Post 114) and then a set of reels (Post 116) was intriguing. Often the tunes felt like a mix of the familiar, even cliched, but with some interesting surprises thrown in. What was most definitely boring however was how the technology performed them. Playing out ‘flat’ midi files with no responsiveness to our accompaniment felt soulless, both to us as an accompanist and to the audience.

In response, Marco Amerotti, a student of Bob’s Sturm’s at KTH, Sweden, has created Folk RNN Groover, a system that attempts to perform FolkRNN’s tunes (or indeed other Celtic tunes encoded as Midi files) with greater variation, feel, and potential responsiveness to human players.

Before we get into the technical detail of how this is done, here’s an example of Groover in action from a first performance at Nottingham’s Taphouse as part of the 2023 Pint of Science festival. We’re accompanying the Stockholm reels like we did in Post 116, but this time with Groover adding variations.

So how does it work? Given the lack of an available dataset to learn from, it wasn’t possible to use the machine learning approach to AI that underpins FolkRNN. Instead, Groover works as symbolic AI, employing a set of statistical rules to determine how and when to add variations to a stream of incoming midi notes to try and produce a more human-feeling output. These rules allow it to add more or less of:

  • Ornamentation – versions of the rolls, cuts and slides that human players add to the bare bones of a tune in order to improvise variations each time they repeat it. In practice, these are specific to particular instruments, whereas Groover introduces generic cross-instrument forms.
  • Volume variation – increasing or decreasing the volume of individual notes.
  • Timing variation – slowing down and speeding up the tempo.
  • ‘Errors’ – changing individual notes, both diatonically (within the current scale) and chromatically (not within the scale). While these might be heard as errors, they might also be heard as improvisations.
  • Dropped notes – choosing not to play some notes which might also potentially be heard as errors or stylistic improvisations.

The extent to which any of these variations occurs depends on rules that are derived from expert musical knowledge, for example based on the strong beats on the bar or most frequently occurring pitches in the tune. These rules can we tweaked by setting various individual parameters. They can also be manipulated jointly through two higher-level parameters:

  • Intensity – expresses the overall intensity with which Groover will try to perform the tune, ranging from 0 to 1. Rising intensity follows a contour that generally adds more ornamentation and volume, but also more timing variation and dropping of notes.
  • Autonomy – the extent to which a human player and/or Groover gets to control the intensity. This can range from 0 (Groover fully in control) to 1 (human fully in control).

For our Pint of Science performance we set the autonomy to 1 (full human control) and configured a Helix LT floor pedal as a midi controller so we could use four foot switches to trigger different levels of intensity. Following some experimentation, we arrived at four distinct intensity levels that we named Straight (0.16), Solid (0.38), On the Edge (0.66), and Over the Top (0.87) as being interesting. For the nerdily inclined, there’s a table at the end of this post that shows how Groover’s intensity setting varied throughout the above performance of the Stockholm Reels.

Reflecting on the experience, Groover feels like an important step forward, but that there is still much to do before it becomes a performing partner. First, is whether we can now ‘close the loop’ and get it to respond to my playing, so that we are both able to vary our intensity somehow in response to each other? This requires figuring out how Groover might detect changes in my intensity, perhaps from the sound it hears, or from some other aspect of my playing. Second is the question of what kinds of variations in its performance will inspire an interesting experience for me as a human accompanist? This requires further experimentation and performances. Finally, there are longer term considerations about what it really takes to perform at a traditional session – what about the ability to choose what tunes to play and then stitch them together into sets? Or cam it learning new tunes that it hears? These are important skills possessed by experienced human session players. So there is still a long way to go.

Table of intensity settings through the Stockholm Reels above

SectionGroover intensity
Reel1 first timestraight
Reel1 second timesolid
Reel1 third time on the edge
Reel2 first timeon the edge
Reel2 second timestraight but with pitch errors
Reel 3 first timesolid
Reel 3 second timeon the edge (when Groover plays solo)
Reel 4 first timesolid
Reel 4 second timeover the top
Reel 4 third time solid

3 thoughts on “118. Groover

  1. Pingback: 121. Stretchy Strap – Carolan Guitar

  2. Pingback: 122. The Butterfly – Carolan Guitar

  3. Pingback: 127. Saorga – Carolan Guitar

Leave a comment