Research

All of my research involves live interactive computer systems, using personal software created in Max/MSP/Jitter.

Publications and Presentations

Referred Publications

Presentations

Tutorials

Encoding Knowledge in Software Performance Systems

My most recent research centres upon limiting choices for a live performance systems through prior encoded knowledge. All of my work is done in Max/MSP, which I've used since 1990.

This work has evolved into Musical Metacreation, with Philippe Pasquier - endowing machines with creative behaviours.

Coming Together : Beauty / Truth (2010)

Coming Together is a negotiated series of compositions by autonomous multi-agents. The agents begin playing phrases of a single pitch, at unique tempi and time signatures. They listen to one another, and attempt to converge their phrase beginnings and lengths. At the same time, they negotiate a group harmony by moving their pitches in relation to other agents in order to create a "harmonious" relationship. Once agents acheive initial harmonic success, they add additional pitches around their chord tones: these pitches are also negotiated so as to create a "harmonious" result. Lastly, agents attempt to acheive a collective volume; however, individual agents may "break away" from the group, and play at either a much higher (or lower) level. The end result should be a "coming together" of tempo, tala, volume, and harmony.

Beauty & Truth are the original (and far more poetic) names for Top and Bottom quarks. Quarks are elementary particles of matter with extremely short lifetimes that can only be observed in the most precise conditions (i.e. particle colliders); similarly, the Beauty/Truth agents are only born when specific conditions have evolved within their world. Their lives are beautiful, but extremely short (in comparison to the other agents); similarly, they demonstrate the "truth" of the environment within which they exist.

Coming Together : Freesound (2010)

A different approach to negotiation by autonomous multi-agents - Coming Together : Freesound is an autonomous soundscape composition created by four autonomous artificial agents. Agents choose sounds from a large pre- analyzed database of soundscape recordings (from freesound.org), based upon their spectral content and metadata tags. Agents analyze, in realtime, other agent’s audio, and attempt to avoid dominant spectral areas of other agents, selecting sounds that do not mask one another. Furthermore, selections from the database are constrained by metadata tags describing the sounds. Thus, water sounds may trigger other water sounds, or agents can choose to oppose contextual references. As the composition progresses, convergence is further facilitated by lowering the bandwidth of the agent’s resonant filters, projecting an artificial harmonic field upon the recordings that are derived from the spectral content of the recordings themselves. Finally, each agent adds granulated instrumental tones at the resonant frequencies, thereby completing the “coming together”.

Kinetic Engine (2005- )

Current research project, funded in part by a Canada Council/NSERC New Media Grant (2009, with Philippe Pasquier), SSHRC Research Creation Grant (2007), a Discovery Park Research Grant ( 2005) and a Small SSHRC Grant (2005).

Essentially, a software drum ensemble incorporating aspects of artificial intelligence. An unlimited number of intelligent multi-agent players collaborate to create complex rhythms, under the coordination of a conductor agent.

Version IV (2009- ) is now concerned with harmonic organization.

Version I (nov 2005 - nov 2006)

Operated as an installation, with users interacting with the software via sensors to control overall density. Without any interaction, the program generated its own variations autonomously.

Generated compositions that ranged in length from a minute to fifteen minutes. High level software control shaped the development of the entire composition. Endings left something to be desired, as the software did not create an actual ending but rather simply stopped playing...

Version II (nov 2006 - june 2007)

Moved to a distributed network multi-agent model, in which individual agents can operate on individual networked computers. User controls overall density and influences personality traits.

Version III (june 2007 - )

Uses a dynamic rule base derived from analysis of source input. Uses a Genetic Algorithm (GA) to create a population of rhythms; separates recombinant (real-time composition) and generative (improvisation) creation; realtime input into GA population; and sample selection through a timbral similarity algorithm.

KinetiK (dec 2007 - june 2008)

Kinetic Engine combined with Ajay Kapur's MahaDeviBot drum robot. Originally for a show in Singapore with Ajay and Curtis Bahn as the Karmetik Collective. Now a free-standing application that is actually useable by others.

Version IV (jan 2009 - )

Melodic organization! Using KE2 to generate rhythmic material, and a separate module controls harmonic fields. This uses a (separate) multi-agent model for pitch interaction between voices.

Version V (july 2009 - )

Harmonic organization using a modified Markov model which incorporates user parameters. The system is described here.

  1. Examples
    1. #1 Miles Davis (ESP, Nardis, Nefertiti, Blue In Green)
      1. MIDI
      2. PDF
    2. #2 Miles Davis (ESP, Nardis, Nefertiti, Blue In Green)
      1. MIDI
      2. PDF
    3. #3 Wayne Shorter ( Black Nile, Fee Fi Fo Fum, Fall, House of Jade, Footprints, Armageddon)
      1. MIDI
      2. PDF
    4. #4 A.C. Jobim (Girl from Ipanema, How Insensitive)
      1. MIDI
      2. PDF
    5. Pat Metheny (13 tunes by PMG from the 1970s)
      1. MIDI
      2. PDF
    6. Pat Metheny (13 tunes by PMG from the 1970s)
      1. MIDI
      2. PDF
Software

Silicon/Sand (2005)

A continuing research project, funded by a Discovery Park Research Grant (2005) and a Small SSHRC Grant (2005).

A collaboration with Amir Koushkani, Persian Tar virtuoso. Eight studies in the relationship between ancient and modern; east and west; acoustic and electroacoustic; poetic and abstract.

Two of the eight sections explore encoded knowledge

Follow

Pitch following Amir on the Tar, recording the pitch/velocity/timing information into eight rotating buffers (any of which can be stored and not written over). Four "players" have access to these buffers, and evaluate the information and respond in various ways (determined by me during the performance). MIDI performance information is sent out to Kontakt, a commercial sample player (which is capable of microtuning).

Nastari

This melody is a traditional Persian melody. In a classical Persian ensemble, the lead melody instrument (in this case, the Tar) plays the melody, while the accompanying instruments play slight variations on it. In this case, the software "orchestra" interprets the single melody line in a variety of ways, including filtering of grace notes, which notes to play, and octave. Each instrument is scored (pre-defined) in terms of tendencies, as well as overall amplitude shape, while timing and velocity information is varied randomly (within predefined percentages of the scored melody).

Overall, the effect should be of an "amateur" ensemble accompanying a melody.

About Hafez

The entire work uses the poetry of Hafez as a through-line. In this movement, text is taken from a discussion with Amir about the importance of Hafez's poetry to the culture of Persia. No encoded knowledge in the performance software; instead a more traditional use of constrained random procedures to make micro-decisions.

Silicon/Sand - the 5.1 remix

In order to present the ideas of Silicon/Sand (the combination of Persian musical material with interactive computer music methods) in a more straight-forward way, a 16 minute surround sound (5.1) remix has been made for concert performance. This is an independent, free standing work.

The six mono tracks can be downloaded here:

A stereo mix of the 5.1 remix (!) can be heard here:

English Bluff (2004)

Collaboration with Halifax cellist Norman Armour. Norm requested an interactive work for cello and Max/MSP that he could perform solo, without me being present. Seems straightforward, until you realize that all of my interactive software requires me to "babysit" it and nudge it along.

Thus, new methods of automation were required to initiate change based upon variations in density. A predetermined "score" for density (number of computer voices playing) is interpreted during performance, playing from different combinations of pre-recorded and manipulated recordings of Norm's improvisations.

In performance, Norman improvises over top of the computer's "improvisations". Since the material played back is of his earlier improvisations, there should be both an element of surpirse (not knowing which phrase is coming at any point, since over five dozen phrases are in the performance library) and precognition (he did originally perform them, after all).

This work was instrumental (no pun intended) in forcing me to come up with methods of formal variation and control that were outside of my immediate performance control.

Live Soundscape Composition

Much of my previous work in interactive composition involved note based gestures (MIDI), or live signal processing of acoustic instruments. These projects pursue the notion of studio based composition (using pre-recorded soundscape materials) within an interactive setting.

Funded by a Small SSHRC Grant (2004).

Guna : Rajas (2007)

A work for Ajay Kapur's esitar (an Indian sitar with various sensors), his MahaDeviBot (a 12 armed robotic drummer), and fixed media (Logic). All processing was done "live" through original plug-ins that algorithmically diffuse the sound in eight speakers (as well as intelligent delays and spectral processing).

Stream (2004)

My first exploration into live soundscape composition. It soon became apparent that there were too many variables to control in real-time, and the process was separated into two phases:

Prior to performance, individual recordings were run through a processing engine which involved several parallel processes. Real-time manipulations - including spectral resynthesis, resonant filters, and granular synthesis -were made of the recordings. The output of the individual processes remained discrete, resulting in up to four stereo pairs. In performance, I would trigger these multichannel soundfiles (of parallel processing), mixing their results in real-time. A panning algorithm would individually distribute each pair through eight channels.

Resonant Postcards (2005)

Another exploration into live soundscape composition. This time, only resonant filters were used, and soundfiles were limited to 20-40 seconds in duration. Sounds were divided into categories (outside, inside, transportation, foreigh, walking), and chosen algorithmically in performance. Each sound was passed through a ten-band bandpass filter, with each band then sent to a limited bandwidth resonant filter whose frequency and amplitude were algorithmically set by continually shifting spectral contours. Each frequency band was then passed to a discrete feedback delay line.

In performance, I control two computers (one for audio, one for Jitter processing of images), and control these live by a P5 data glove and Macally joystick. Images are also selected algorithmically, matched to the sounds. Jitter is used to process the static images in various ways algorithmically.

(Example of processed image from Resonant Postcards)

Automated Electronica

My recreational listening in the last few years has concentrated upon electronica, including such artists as Richard James (Aphex Twin), Bill Laswell, Tetsu Inoue, Pete Namlook, et al. These projects were an attempt to explore that genre through automated systems.

Wanting to "test the waters" in terms of their sucess, and not wanting to influence judgements based upon my academic background (for better or for worse), I created a pseudonym, raemus, under which I released the material.

Ambiguous Prophets (2004)

A series of "ambient minimal" works using software created in Max/MSP. Beginning with one or more recordings of world music, the software manipulates the material in various ways (including granular synthesis) in realtime.

Available on nishi

sp*m filt_er (2004)

A series of "ambient minimal" works using software created in Max/MSP. The software generates the melodies, harmonies, and rhythms of the patterns based upon parameters set by me. I control the relationship of the patterns in a real-time (live) performance. The titles are taken from a series of spams I received in the winter of 2003-2004.

Available on kikapu

Nine Days (2003)

A foray into the world of electronica - "ambient minimal", for lack of a better description. All are live studio compositions, realized using software written in Max/MSP.

Available on 2063

Reviewed in Disquiet, February 2004.

Music for Dance

Slam / The Title of Your Book (2008)

Serge Bennathan was asked to create a work for Vancouver's Dancing on the Edge 20th anniversary show, and I was commissioned by Standing Wave to compose a new work that involved dance - this is how combined both into one. The version here is a MIDI realisation created for the dance premiere in July 2008; the musical premiere will occur in 2009.

Skin (2004-2005)

A work for dancers, live musicians, live video, live interactive computer system. Various strategies were employed in the different sections to interact with the live musicians (live signal processing) vs. live algorithmic composition.

Goran Remix (2004)

Music for Serge Bennathan's choreographer for the Off Centre Dancers. Based upon the album "Weddings and Funerals", by the amazing Gypsy composer Goran Bregovich, it is essentially a remix, combining up to six different songs from the album, with the liberal addition of other beats, drones, and sounds.

more