Sunday, January 12, 2025

On the Steeper Trails

Here is a new piece in 99edo. I am continuing to explore the capabilities of the new interval similarity cost function that I've added to my algorithmic composition software. My first test was in the Bohlen-Pierce tuning, which is so unconventional that really I couldn't judge how well the code was working! It was just what the code was set up to do, so it was mostly just to check that anything reasonable could be generated. The next two tests were in 34edo, using quite conventional notions of consonance. These helped me tweak various parameters to coax the system into generating music that sounds somewhat reasonable. This 99edo piece extends the notion of consonance to include intervals like 7:6. I tried to tweak parameters even further to make the output intelligible.

I chose 99edo as a compromise between tuning precision and temperament potential. I like to provide harmonic interest by way of comma traversals. 99edo tempers out a few relatively simple commas, such as 2400:2401, 3136:3125, 5120:5103, and 6144:6125. These commas provide several opportunities for traversals to arise. The way I am generating these first trial pieces with the interval similarity score, I just start the system at a very high temperature and slowly cool it until a phase transition is detected: the heat capacity spikes at the transition. I hold the system a bit longer at the spike, and then write out the result. Whatever order or shape is in the system will have arisen spontaneously; this is what a phase transition is about.

The graph above is a score for this piece. The vertical axis shows the pitch classes, from 0 to 98. The horizontal axis is the time in seconds. This piece has 512 measures that are 6.9 seconds long. They are arranged in an 8x8x8 matrix. Sides of length 8 should be large enough that comma traversals have a chance to survive. Yet 8 is small enough... after about a minute, the loop comes back around, so a listener might be able to connect one pass through the matrix with the next pass.

The score makes it clear that a fair degree of order has emerged in the cooling process. Some pitch classes are very frequent while other pitch classes are almost absent. There is also a strong hint of some periodic behavior: there is a pitch class, perhaps it's number 30, that looks like it fluctuates 8 times through the piece. This is indicative of a comma traversal.

I use a variety of measures to check whether the software is on track to generating a coherent output that has a decent chance of sounding like music. One of these is a histogram of vertical intervals. This piece has three voices, so much of the time there are three notes sounding simulataneously, but I only capture pairwise relationships; indeed, the cost function only tallies pairwise relationships.

The table above lists the 20 most common pairwise vertical relationships. The most common vertical relationship, that occurs 870 times in the piece, is 99 steps of 99edo, i.e. an octave, a frequency ratio of 2:1. This list is a bit odd - most simple ratios are in the list, but how 49:20 ends up used so often... it might be a consequence of whatever comma was getting traversed.

Yeah, a piece like this can sound so strange that it might sound like pure noise. But it actually has a lot of order... to what extent that order makes musical sense, well, that's the point of the exploration!

No comments:

Post a Comment