Home Creators Posts Import Register Favorites Logout
haven't archived this post yet. have a subscription? use the importer!

Downloads

  • 01 MountainRender260917.mp3

Missing 1 full-res photo, 1 file, as this post has not yet been imported.

Content

Before 65LABS rented out our deep underground caverns of Svalbard to some noble scientists who wanted to safely store seeds so they might survive the slow motion catastrophe of the anthropocene, we used to house thousands of technicians down in those holy depths for months at a time, getting them to study the operatic movements of planet earth and the brutal, almost zombie-like persistence of glaciers in relation to noise. Emerging after their stint, throats dry from recycled air, squinting in the dim, Norwegian sun, the first thing every technician mumbled was the same:

"What if music was made of mountains? What would that be like?"

Construction on the 65LABS Mountain algorithm began back in 2017 to investigate answers to this question. It was first used, briefly, in our Decomposition Theory live shows. Its development was inspired by a research paper titled Techniques for Algorithmic Composition (Aplern, 1995). The paper describes something called  'Contour', a computer program made by the author as a way of generating melodies "by expanding existing melodies based on an analysis of their contour". The word 'contour' implies a subtlety or elegance often lacking in the various reconnaissance and R&D divisions here at 65LABS so we jettisoned the specifics, but the concept of analysing melodies based on their shapes seemed like something we could put to use. And so, we built the Mountain algorithm.

Here's how it works.


  • 1. A selection of songs, chosen because they are built around long, ascending/descending chord structures, are pulled from the 65daysofstatic archive.
  • 2. Their signature chord progressions are turned into arrays of MIDI note numbers.
  • 3. The Mountain algorithm parses each melody. It pays attention to the jump between each note and registers whether this jump is ascending, descending, or in fact a repetition of the previous note.
  • 4. From this collected data, it generates an average jump distance and a dictionary of weighted probabilities on whether notes should ascend, descend or repeat.
  • 5. A 65LABS technician communicates with the algorithm via a medium. They can specify a root note to the Mountain, and request that it returns a progression of a given length.
  • 6. The pattern that Mountain returns always begins with the root note. It then proceeds to build the remainder of the pattern by calculating an amount to jump based on a Gaussian distribution around the average jump distance and the weighted probabilites as to whether this should be a jump up or down.
  • 7. If necessary, it then corrects the note to the closest note in the correct key based on a standard minor scale.


A supplementary algorithm was also made: Mountain Streams. This was based on the same logic, except the pattern didn’t necessarily have to start on the root note, and instead of creating one pattern it created four of them, each an octave higher than the previous one. Additionally, instead of feeding this algorithm with the root notes of the chord progressions from the chosen 65daysofstatic songs, it was fed the lead melodic phrases as arrays of MIDI numbers. The idea was that these streams could sit atop the Mountain's tectonic shifts at its base without causing too much disruption.

There's an example of output from the Mountain algorithm at the top of this post, from circa 2017, generated at some point in the Decomposition Theory development process. (You might have heard excerpts of this audio buried deep in one of the releases from A Year of Wreckage.)

In a previously posted video that showed a glimpse of the Decomposition Theory development process, you can see the Mountain algorithm playing a mechanical piano.


Wreckage Systems V1 does not actually feature Mountain, but it is currently being resurrected and updated for use in V2, as with this overhaul we are able to improve the logic and therefore variability of the various systems.


There are countless sub systems like Mountain within Phase Two of Wreckage Systems. Small little systems given one quite particular job. And that's why this Wreckage Systems Technical Overview series may go on for quite some time, and these posts will continue to hop between the overall phases outlined last week as the mood or ongoing work takes us.


Finally, it is perhaps worth noting that while technicians at places like Google (check out MAGENTA Labs, for example) are working on bleeding edge machine learning and AI systems that teach computers how to write music, we here at 65LABS are taking a different approach. Compared to state of the art generative computer music, the Mountain algorithm is almost laughably basic. There's no machine learning or neural networks. At its heart is some relatively basic statistical analysis. But at 65LABS, one of the many inspirational mottos that we yell at each other for an hour every morning is: "WHO CARES IF COMPUTERS CAN WRITE MUSIC!?" And the answer is: not us, friends! Music doesn't even exist anyway. Any and all meaning or experience that we all call 'music' is created in and through the endless social relations that we all produce by existing with and for each other. How would human life be helped if anyone could press a button and then, without any further input or agency, the computer gave them a perfect pop song?


So from that perspective, 65LABS stands resolutely by the simplicity of the Mountain algorithm. Because, like all algorithms, shorn of its context it is useless anyway. Everything depends on what you put into it, WHY you are putting anything into it in the first place, and then what you do with what comes out the other end.

Files

Previews only

Comments

Simon Golland

Those concerns that these technical posts would rob the Wreckage Systems project of its mystery and romance turned out, predictably, to be entirely misplaced.

Jonathan Sartin

The algorithm is oddly soothing at the end of a difficult day. Unexpected results?