Generative
Generative Algorithm – Count as Pitch
This post is documentation of practical research done with one of the max patches I have built to generate melodic content within Ableton. My aim is to show what results this specific system allows for, and as I go through and explain the different systems, I will also combine the ones already explained to generate more “finalised” harmonic content. I chose to showcase these algorithms with a very simple synth sound without any modulation, so that the harmonic content is as clear as possible. Please note that the algorithm generates fully chromatic notes that are, in a separate module, restricted to play within a specified scale in order to comply with the easily accessible aesthetic I wish for my installation to have. This system is an attempt to create an algorithm that play a melodic line, rather than set or randomised pitches. I created it as an alternative to the main pitch generator, because I found it to produce quite static, not necessarily musically interesting, fields of notes and I wanted a system that was able to play sequences of a scale in a way that felt more thought through or musical. It works by counting the number of incoming drips, starting at 0 and increasing to a set number of steps. This count will play different notes ranging from the Low / High note specified in the interface. A large number of Steps means that many of the notes in between the Low / High note will be played. A low number of Steps will play larger intervals to get between the Low / High note within the set amount of Steps. At first the results seemed promising, and through developing it I learnt a lot about Max programming. It became the most complex piece of code I had written (and might still be so today) but when using it, I soon found it to lack the musicality I was hoping it to produce. In revisiting it for this documentation, my extended experience seem to have given new hope for this algorithm, as can be heard below. To explain the interface, reading from left to right and top to bottom: All of the controls in the interface can be modified and controlled by the settings page, automation or the custom generative modulation devices I have built. With this setup, each of the five falling drops trigger an upwards count in 12 steps, over two octaves (E2-E4). The result is every second semitone is being played. When the highest count (and note) has been reached, the algorithm starts over. This should make the function of the system clear, however does not produce very interesting results. The result has a slightly random feel to it, but by constraining it to working its way up or down in the scale, produces more controlled note intervals. This, in turn, gives the illusion of a plan or a musical intention. If one experiment with different Low / High notes, and some of the settings, one could potentially use such a simple system as the foundation for a longer piece. This is something I will examine further in upcoming pieces. Another interesting way of generating a full and evolving harmonic piece would be to use the “Simple Pitch” system described in this post for playing a fundamental chord, and making use of the Count as Pitch to play harmonies and melodies on top of the chord. In this example two instances of Count as Pitch are playing on top of an E minor chord, both with some different internal randomisations and Low / High Note settings. One of them is playing notes on every input tigger for the first, fourth and fifth drip, and the other is playing every third trigger on the remaining two drips (second and third). This produces some unpredictability, but within constraints that feel quite musical. This is a similar approach to the one described just above, however it produces slightly different results, as all of the triggers are playing notes. To generate some slightly more musical/human feel, the interval that the Count as Pitch is using to define how often it should play a note is being randomised every time the first drop is triggering. This makes the device make a pause at times, and at times play on every trigger. This is, according to me one of the most well sounding combinations of systems presented so far.
In this example, the device is making use of some of its most useful settings, allowing the device to not only play a simple note progression but more lively generative melodies. It still functions within the same principles, but the settings page has been made use of in order to: