Jump to content

Out-of-the-box algorithms

Recommended Posts

I'm interested in having a complete list of the more high-level algorithms that Opusmodus supports out-of-the-box. This is what I found going through the integrated help documentation:

  • Lindmayer systems
  • Cellular automata
  • Working with pitch class sets
  • Euclidean Algorithm
  • Tonality mapping
  • Mandelbrot sets
  • Rubin (Rubin functions)
  • Twelve-tone row (including All-interval twelve-tone row and Twelve Tone Forms)
  • Klangreihen technique

  • Trobes (composer Joseph Hauer )

  • The Time Point System (Babbit)

  • Infinity Series (Nørgård)

  • Messiaen Permutation

  • Stravinsky Rotation

  • Brownian motion

  • Noise generation

    • Gaussian noise

    • Pink noise

    • White noise

  • Markov chain

  • Random generators (including random walk)

  • Schillinger Interference (Schillinger System of Music Composition)

  • Spectral Data

  • Wave forms (sine, sawtooth, square, triangle)


Any help to get this list complete is very much appreciated :-)


Big hug,


Wim Dijkgraaf

Link to comment
Share on other sites

more high-level algorithms


I cannot answer your question concerning built-in algorithms, but if you are looking for further ideas what could be added, here is some related literature. 


A good general overview of algorithmic composition techniques, from a technical point of view. 

  • Nierhaus, G. (2009) Algorithmic Composition: Paradigms of Automated Music Generation. Wien, New York: Springer.
Discussions of compositional applications in OpenMusic (likewise implemented in Common Lisp, though the main interface is a visual language) by various composers.
  • Agon, C. et al. (eds.) (2006) The OM Composer’s Book. 1. Delatour France.
  • Bresson, J. et al. (eds.) (2008) The OM Composer’s Book. 2. Editions Delatour France / Ircam.
  • Hirs, R. & Gilmore, B. (eds.) (2009) Contemporary Compositional Techniques and OpenMusic. Collection Musique/Sciences. IRCAM/Delatour.
  • Bresson, J. et al. (eds.) (2016) The OM Composer’s Book . 3. Paris; Sampzon: Editions Delatour France.


Most of you likely already know the book by Nigel Morgan, containing discussions of compositional applications in Opusmodus itself. 

  • Morgan, N. & Legard, P. (2015) Parametric Composition: Computer-Assisted Strategies for Human Performance. West Yorkshire, UK: Tonality Systems Press.


The perhaps most important algorithmic composition technique of Common Music (also implemented in common Lisp) and SuperCollider are patterns / item streams, which can be nested. 

The libraries of the venerable PatchWork and its successors PWGL and OpenMusic (all Common Lisp) provide ideas for various approaches, some already mentioned above. Below are links to relevant link collections. 
Another successful technique, implemented in multiple PWGL and OpenMusic libraries and beyond is constraint programming. I did a lot of research in this area and therefore quote some own publication here.
Of course, there is much more literature on algorithmic composition (computer-aided composition) out there, but the above literature gives a good starting point to study more general composition techniques and their applications. 
Link to comment
Share on other sites

On 7/17/2017 at 11:53 AM, AM said:

could you tell me your exact definition/specification of OM-"out-of-the-box"-algorithms?


Hi AM,


What I mean with "high level out-of-the-box algorithms" in this context is something along the line of:


- high level: functions to apply specific compositional techniques (so not included are functions for basic type conversion, looping through lists etc.)

- out-of-the-box: without the need for the composer (Opusmodus user) to do additional low level programming in order for the compositional technique to be utilized


Hope this helps,



added 3 minutes later

Thanks a lot Torsten!!!!


Kind regards,


Wim Dijkgraaf


Link to comment
Share on other sites

okay, i understand your wish... you would like to have some code which produces/composes a "nearly complete piece" for you - like a bot (for my own use i call this programs BOTS and code it by myself).


such bots: a nightmare or a dream for a composer :-)


some important books/links TORSTEN already listed. maybe we should not forget DAVID COPE - with his EMMY-things ...




p.s. i am not convinced of such "style exercises" (using TOOLS to imitate musical styles), it is perhaps just as if you translate with the google-translater: you understand what is meant, but it often sounds quite strange (as also this text :-))... 

it is usually more interesting in a scientific/technological or "produce efficient", than in an aesthetic/artistic context; but it does not make it in my opinion generally unimportant, but only the goal or the idea behind it is another. (Google Translate)


best wishes


Edited by AM
Link to comment
Share on other sites

you would like to have some code which produces/composes a "nearly complete piece" for you


Actually, this is not what most of the techniques listed by Wim or me are. Instead, computer-aided composition techniques offer the composer to control the result on a higher level, but by offering various dimensions of control and by often generating intermediate results that are then further processed either by hand or with other algorithms, and not just a single bottom to start the computation of a new piece.  


The opposite can be called automatic composition, and much of David Cope's work is indeed a good example of that. Details on his publications etc. can be found at his website, http://artsites.ucsc.edu/faculty/cope/




Link to comment
Share on other sites

22 hours ago, AM said:

that is clear to me ... I tried only to find out what the motivation / idea behind the question of WIM is.


Hi AM,


A couple of months ago I followed some online courses on http://www.kadenze.com . Especially the generative art courses as well as The Nature Of Code course. So I started wondering which of the techniques form those courses are supported by standard Opusmodus functions. 


That brought me to the idea to make a list of those topics and eventually also have a couple of links to online and free material with inspiring explanations and background info.


Kind regards,



Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...

Important Information

Terms of Use Privacy Policy