algorithmiccomposition – Parerga und Paralipomena http://www.michelepasin.org/blog At the core of all well-founded belief lies belief that is unfounded - Wittgenstein Wed, 10 Feb 2021 18:13:18 +0000 en-US hourly 1 https://wordpress.org/?v=5.2.11 13825966 Extempore functions explorer updated to latest release (v0.8.7) http://www.michelepasin.org/blog/2021/02/01/extempore-functions-explorer-updated-to-latest-release-v0-8-7/ Mon, 01 Feb 2021 13:07:55 +0000 http://www.michelepasin.org/blog/?p=3435 The Extempore functions explorer has been updated with the latest version of the Extempore programming language: v0.8.7

Try it out at: http://hacks2019.michelepasin.org/extempore/

The Extempore functions explorer is a little webapp I built a while ago in order to make it easier to browse (and learn about) the Extempore music-programming language.

For more background, see also the project homepage.

xtm-explorer.gif

 

 

 

]]>
3435
A new livecoding project: ‘The Musical Code’ http://www.michelepasin.org/blog/2020/11/23/a-new-livecoding-project-the-musical-code/ Mon, 23 Nov 2020 05:58:29 +0000 http://www.michelepasin.org/blog/?p=3446 I’ve started a new livecoding project on Github called The Musical Code, where I’ll be adding experimental musical code/algorithms created the amazing Extempore programming language (as well as it precursor Impromptu).

I have accumulated so much musical-code ideas so I’ve finally resolved to clean it up, reorganise it and publish it somewhere. Github seemed the best option, these days:

Turns out that just the code by itself won’t do it. Especially considering that the environments I use to ‘run it’ (and to make sounds) can rapidly disappear (become obsolete, or get out of fashion!).

Hence there’s a YouTube channel as well, where one can find a screencast recording of each of the ‘musical codes’.

Hope someone will find something of interest in there. Comments and feedback totally welcome!

]]>
3446
Composing at the metalevel http://www.michelepasin.org/blog/2012/03/09/composing-at-the-metalevel/ http://www.michelepasin.org/blog/2012/03/09/composing-at-the-metalevel/#comments Fri, 09 Mar 2012 12:20:17 +0000 http://www.michelepasin.org/blog/?p=1109 I’ve started reading “Notes from the Metalevel: An Introduction to Computer Composition“, by Heinrich Taube, and realised I should have done that a long time ago!

Notes From the Metalevel is a practical introduction to computer composition. It is primarily intended for student composers interested in learning how computation can provide them with a new paradigm for musical composition.

I happened to have a pdf version of the book, but the good news is that there’s an html version of it too, which includes also all the midi files of the numerous examples included in the book. So make sure you check that out, if you’re interested in computer-based composition. You might also be interested in this review on computer music journal, and this course materials from Taube’s class at Illinois.

The preface to the fist chapter contains this suggestive excerpt from Leonard Schlain’s book, The Alphabet Versus the Goddess, which Taube (page 19-20) uses as a metaphor of what algorithmic composition (i.e., metalevel composition) is::

The one crowded space in Father Perry’s house was his bookshelves. I gradually came to understand that the marks on the pages were trapped words. Anyone could learn to decipher the symbols and turn the trapped words loose again into speech. The ink of the print trapped the thoughts; they could no more get away than a doomboo could get out of a pit. When the full realization of what this meant flooded over me, I experienced the same thrill and amazement as when I had my first glimpse of the bright lights of Konakry. I shivered with the intensity of my desire to learn to do this wondrous thing myself.
(spoken by Prince Modupe, a west African prince who learned to read as an adult)

It is impossible to know exactly how Prince Modupe felt when he discovered a process by which his very thoughts could be trapped and released at will again into speech. But I think his epiphany must be close to what I experienced when, as a young composer, I was first shown how I could use a computer to represent my musical ideas and then “release them” into musical compositions.
At that instant it became clear to me that there was an entire level of notation above the scores that I had been writing in my regular composition classes, a level I knew nothing about! But I could see that in this level it was possible to notate my compositional ideas in a precise manner and work with them in an almost physical way, as “trapped words” that could be unleashed into musical sound whenever I wanted.

So what does it meant to compose at the meta level?

Given the existence of the acoustic and score representations one might ask if there is yet another representation that constitutes a level of abstraction above the performance score? The answer, of course, is yes; it is what this book terms the metalevel. If the score represents the composition then the metalevel represents the composition of the composition. A metalevel representation of music is concerned with representing the activity, or process, of musical composition as opposed to its artifact, or score.

This book is about using the computer to instantiate this level: to define, model and represent the compositional processes, formalism and structures that are articulated in a musical score and acoustic performance but are not literally represented there. By using a computer the composer can work with an explicit metalevel notation, or language, that makes the metalevel as tangible as the performance and acoustic levels.

 

]]>
http://www.michelepasin.org/blog/2012/03/09/composing-at-the-metalevel/feed/ 1 1109
Article: Algorithmic Composition: Computational Thinking in Music http://www.michelepasin.org/blog/2011/10/06/article-algorithmic-composition-computational-thinking-in-music/ http://www.michelepasin.org/blog/2011/10/06/article-algorithmic-composition-computational-thinking-in-music/#comments Thu, 06 Oct 2011 12:36:51 +0000 http://www.michelepasin.org/blog/?p=1069 An article by Michael Edwards on algorithmic composition has been published last month on the Communications of the ACM journal. The article is titled Algorithmic Composition: Computational Thinking in Music.

Although the article is quite introductory (Edwards makes it clear that the article “is more illustrative than all-inclusive, presenting examples of particular techniques and some of the music that has been produced with them”) it is defintely an interesting read. I found quite a few nice ideas in it and also references to musics and musicians I wasn’t familiar with.

Follows a list of ‘highlights’ from my iPad reader, to which I added hyperlinks to relevant explanatory materials:

  • SERIALISM AS A CONTINUATION OF EARLY ALGORITHMIC COMPOSITION
  • After World War II, many Western classical music composers continued to develop the serial technique invented by Arnold Schönberg (1874–1951) et al. Though generally seen as a radical break with tradition, in light of the earlier historical examples just presented, serialism’s detailed organization can be viewed as no more than a continuation of the tradition of formalizing musical composition. Indeed, one of the new generation’s criticisms of Schönberg was that he radicalized only pitch structure, leaving other parameters (such as rhythm, dynamic, even form) in the 19th century. They looked to the music of Schönberg’s pupil Anton von Webern for inspiration in organizing these other parameters according to serial principles. Hence the rise of the total serialists: Boulez, Stockhausen, Pousseur, Nono, and others in Europe, and Milton Babbitt and his students at Princeton.

  • COMPOSERS: HILLER AND “THE ILLIAC SUITE FOR STRING QUARTET”
  • Lejaren Hiller (1924–1994) is widely recognized as the first composer to have applied computer programs to algorithmic composition. The use of specially designed, unique computer hardware was common at U.S. universities in the mid-20th century. Hiller used the Illiac computer at the University of Illinois, Urbana-Champaign, to create experimental new music with algorithms. His collaboration with Leonard Isaacson resulted in 1956 in the first known computer-aided composition, The Illiac Suite for String Quartet (wiki | video), programmed in binary, and using, among other techniques, Markov Chains in “random walk” pitch generation algorithms.

  • CAGE ON THE DIFFERENCE BETWEEN TRADITIONAL AND COMPUTER- ASSISTED COMPOSITION
  • Cage said in an interview during the composition of HPSCHD (wiki | video), “Formerly, when one worked alone, at a given point a decision was made, and one went in one direction rather than another; whereas, in the case of working with another person and with computer facilities, the need to work as though decisions were scarce—as though you had to limit yourself to one idea—is no longer pressing. It’s a change from the influences of scarcity or economy to the influences of abundance and – I’d be willing to say—waste.”

  • COMPOSERS: XENAKIS
  • Known primarily for his instrumental compositions but also as an engineer and architect, Iannis Xenakis was a pioneer of algorithmic composition and computer music. Using language typical of the sci-fi age, he wrote, “With the aid of electronic computers, the composer becomes a sort of pilot: he presses buttons, introduces coordinates, and supervises the controls of a cosmic vessel sailing in the space of sound, across sonic constellations and galaxies that he could formerly glimpse only in a distant dream.
    […]
    Xenakis’s approach, which led to the Stochastic Music Programme (henceforth SMP) and radically new pieces (such as Pithoprakta, 1956), used formulae originally developed by scientists to explain the behavior of gas particles (Maxwell’s and Boltzmann’s Kinetic Theory of Gases). He saw his stochastic compositions as clouds of sound, with individual notes as the analogue of gas particles.
    […]
    His Eonta (1963–1964) for two trumpets, three tenor trombones, and piano was composed with SMP. The program was applied in particular to the creation of the massively complex opening piano solo.

  • COMPOSERS: KOENIG
  • Koenig saw transcription (from computer output to musical score) as an important part of the process of algorithmic composition, writing, “Neither the histograms nor the connection algorithm contains any hints about the envisaged, ‘unfolded’ score, which consists of instructions for dividing the labor of the production changes mode, that is, the division into performance parts. The histogram, unfolded to reveal the individual time and parameter values, has to be split up into voices.”

  • THE CONTEMPORARY LANDSCAPE: A DIVISION BETWEEN COMPOSERS AND AI RESEARCHERS
  • Contemporary (late 20th century) techniques tend to be hybrids of deterministic and stochastic approaches. Systems using techniques from artificial intelligence (AI) and/or linguistics..
    […]
    While naturally significant to AI research, linguistics, and computer science, such systems tend to be of limited use to composers writing music in a modern and personal style that perhaps resists codification because of its notational and sonic complexity and, more simply, its lack of sufficient and stylistically consistent data
    […]
    Thus we can witness a division between composers concerned with creating new music with personalized systems and researchers interested in developing systems for machine learning and AI. The latter may quite understandably find it more useful to generate music in well-known styles not only because there is extant data but also because familiarity of material simplifies some aspects of the assessment of results. Naturally though, more collaboration between composers and researchers could lead to fruitful, aesthetically progressive results.

  • ALGORITHMIC COMPOSITION OUTSIDE ACADEMIA: BRIAN ENO
  • Application of algorithmic-composition techniques is not restricted to academia or to the classical avant garde. Pop/ambient musician Brian Eno (1948–) is known for his admiration and use of generative systems in Music for Airports (1978) [wiki | video] and other pieces. Eno was inspired by the American minimalists, in particular Steve Reich (1936–) and his tape piece It’s Gonna Rain (1965) [wiki | video].
    […]
    Eno said about his Discreet Music (1975) [wiki | video], “Since I have always preferred making plans to executing them, I have gravitated towards situations and systems that, once set into operation, could create music with little or no intervention on my part. That is to say, I tend towards the roles of planner and programmer, and then become an audience to the results”.

  • LIGETI ON THE RELATION BETWEEN MUSIC AND MATHEMATICS
  • After leaving his native Hungary in the late 1950s, Ligeti worked in the same studios as Cologne electronic music pioneers Karlheinz Stockhausen and Gottfried Michael Koenig though produced little electronic music of his own. However, his interest in science and mathematics led to several instrumental pieces influenced by, for example, fractal geometry and chaos theory. But these influences did not lead to a computer-based algorithmic approach. He was quoted in Steinitz saying, “Somewhere underneath, very deeply, there’s a common place in our spirit where the beauty of mathematics and the beauty of music meet. But they don’t meet on the level of algorithms or making music by calculation. It’s much lower, much deeper—or much higher, you could say.”

  • EXAMPLE: AN ALGORITHMIC MODEL OF LIGETI’S DESORDRE
  • I have implemented algorithmic models of the first part of Désordre in the open-source software system Pure Data, which, along with the following discussion, is based on analyses by Tobias Kunze,26 used here with permission, and Hartmut Kinzler. It is freely downloadable from my Web site http://www.michael-edwards.org/software/desordre.zip
    […]
    The main argument of Désordre consists of foreground and background textures..
    […]
    In Désordre we experience a clear, compelling, yet not entirely predictable musical development of rhythmic acceleration coupled with a movement from the middle piano register to the extremes of high and low, all expressed through two related and repeating melodic cycles with slightly differing lengths resulting in a combination that dislocates and leads to metrical disorder. I invite the reader to investigate this in more detail by downloading my software implementation.

  • ON THE NEGATIVE RECEPTION OF ALGORITHMIC COMPOSITION
  • There has been (and still is) considerable resistance to algorithmic composition from all sides, from musicians to the general public. This resistance bears comparison to the reception of the supposedly overly mathematical serial approach introduced by the composers of the Second Viennese School of the 1920s and 1930s. Alongside the techniques of other music composed from the beginning of the 20th century onward, the serial principle itself is frequently considered to be the reason the music—so-called modern music, though now close to 100 years old — may not appeal.
    […]
    Algorithmic composition is often viewed as a sideline in contemporary musical activity, as opposed to a logical application and incorporation of compositional technique into the digital domain. Without wishing to imply that instrumental composition is in a general state of stagnation, if the computer is the universal tool, there is surely no doubt that not applying it to composition would be, if not exactly an example of Luddism, then at least to risk missing important aesthetic developments that only the computer can facilitate, and that other artistic fields already take advantage of.

  • COMPOSING USING ALGORITHMIC METHODS: MISCONCEPTIONS
  • Much of the resistance to algorithmic composition that persists to this day stems from the misguided bias that the computer, not the composer, composes the music. In the vast majority of cases where the composer is also the programmer, this is simply not true. As composer and computer musician Curtis Roads pointed out more than 15 years ago, it takes a good composer to design algorithms that result in music that captures the imagination.
    […]
    Furthermore, using algorithmic-composition techniques does not by necessity imply less composition work or a shortcut to musical results; rather, it is a change of focus from note-to-note com- position to a top-down formalization of compositional process. Composition is, in fact, often slowed by the requirement that musical ideas be expressed and their characteristics encapsulated in a highly structured and non-musical general programming language. Learning the discipline of programming is itself a time-consuming and, for some composers, an insurmountable problem.

     

    ]]>
    http://www.michelepasin.org/blog/2011/10/06/article-algorithmic-composition-computational-thinking-in-music/feed/ 1 1069
    New Impromptu screencast and a few lessons learned http://www.michelepasin.org/blog/2009/10/07/new-impromptu-screencast/ Wed, 07 Oct 2009 14:08:43 +0000 http://magicrebirth.wordpress.com/?p=353

    Initially this song was called ‘Voices Slowly Talk To Me‘ – then.. as usual.. I lost control of its direction! So I don’t know anymore how much the title would apply. Anyways, it’s my second experiment with recording an Impromptu performance (by the way I also played it live the other night at the Shunt in London, with various mistakes and delays, but somehow I got to the end – thanks to the toplap crew for their support!).

    Somehow I’m becoming wiser with doing this type of stuff, you know, just trying to learn from past experiences. So here’re a few tips I matured in the last weeks:

    • keep it simple. Especially when playing live. Long and convoluted functions are a giant source of errors especially when you’re a bit tense
    • use ‘paste’ templates. Stuff like the pb:cb function that comes by default with Impromptu. At the beginning I thought it wouldn’t look too good, cause you’ve gotta show that you’re coding the whole thing from scratch. But actually, when you’re livecoding time is very very precious and what you want to focus on is sound, primarily (well at least this is what I like to do). It’s also important to remember that many other environments for live performance are much much higher level than Impromptu – meaning that it’s quicker to emit sounds or musical structures and change their properties… so let’s make sure we’re not comparing apple and oranges here!
    • make variations often. Even if they look stupid to you, change something, add another melody, double the drumkit, stuff like that. The audience is more interested in new audio-visual things happening that in seeing you code a Bach’s prelude.
    • exercise a lot. I initially felt weird about this, mainly because playing with Impromptu means coding, and when I code I usually take my time and think. But livecoding transforms the coding practice into a musical performance. Which means that you don’t have time to think, things should just come out automatically and sound good. Only then you can take the freedom of ‘jamming’ without a plan. I play guitar, and that’s exactly how it works there… I must have forgotten about it. When playing a song I can’t lose time trying to remember how to lay out the fingers on the neck, that has to happen automatically.

    That’s it for now – I’ll touch base again about this when the next live coding performance will happen! Rock on live-coders!

    ]]>
    353
    Algorithmic music: exercise #1 http://www.michelepasin.org/blog/2009/06/23/algorithmic-music-exercise-1/ Tue, 23 Jun 2009 10:12:09 +0000 http://magicrebirth.wordpress.com/?p=221 Picture 1

    I finally managed to find time to play more seriously with the fantastic impromptu – here’s a first screencast, it doesn’t sound that good but it made my day! (and maybe it’ll help others better understand how impromptu works..)

    p.s.
    I’m intending to start posting more stuff about impromptu (e.g. little libraries and code samples), stay tuned!

    ]]>
    221