R. Luke DuBois
e-mail: luke@music.columbia.eduphone: 212-854-9266 (Computer Music Center, Columbia University)
Introduction
Hi there. Algorithmic Composition is a production class aimed at getting everyone generating music usingalgorithmic procedures. This is to serve two purposes: first, to get everyone used to the idea that music is ahighly procedural art form that can be used to expressively present a dense amount of information in apleasing way; second, the course aims to provide a fun and stimulating excuse (making music) to learnmore about designing and implementing algorithms in both physical practice and procedural code. We’llbe looking at examples of algorithmic thinking in music dating from the distant past to the present, both inpre-compositional and performance situations, listening to as much repertoire as we can. Along the waywe’ll look at and learn to implement a wide variety of algorithmic techniques.Prerequisites / Software
This class assumes no specific knowledge of music theory and musicianship, Western or non-Western;along the way we’ll learn just enough music theory to make ourselves dangerous. However, as aproduction class it’s extremely useful if you’ve had some basic exposure to MIDI, digital sound, and someof the software tools that exist for manipulating sound and music on the computer. We’ll look at our classexercises using a wide variety of musical tools, but most of our procedural programming will be done in theProcessing environment, using it to write instructions for a computer music language called Csound. We’llalso look at some examples of real-time compositional interaction in ChucK and Max/MSP.
Texts / Resources
In order to save everyone the time and money of books and whatnot, I’ll be scanning a few readings, aswell as posting links to articles and whatever code we use in class on the course website:
http://itp.nyu.edu/~rd64/ac
In addition, we have both a discussion list for the class (itp-ac). I’ll show everyone how to sign up as soonas I have the list configured and the class roster is finalized.
Assignments and Grades
For this class I’d like everyone to create a number of short musical studies as part of the journey towards afinal piece of a few minutes duration. Your final piece can be a tape work (i.e. we play it off of a CD), agenerative piece (we run a computer program that plays it) or an interactive work that requires user input(from a musician or otherwise) to run. Whatever the case, there will be a class performance at the end ofthe semester at a gallery location in New York where we can all play our final pieces for each other and ourfriends. As a result, the work breakdown for the class is as follows:
• Everyone needs to show up and participate in class. (30%)
• Everyone needs to complete three out of the twelve-or-so weekly ‘meditations’ which I will post to theweb site starting the third week of class. These sketches are simple conceptual assignments involving workwith algorithmic composition. (20%)
• I’d like everyone to keep an online journal/blog/wiki/whatever containing information about their finalproject goals and progress as it emerges. (20%)
• Everyone needs to create a final project in the form of a musical work that can be played/ran/performed infront of an audience. Everyone will be expected to participate in a mid-term critique as well as a groupperformance / show at the end of the term. Group work is welcome as is the integration of your work intoprojects for other classes / your thesis / etc, though for the class performance a more scaled-down executionof the work that concentrates on the musical aspect may be necessary. If you work in a group pleaseremember that everyone in the group will receive the same grade; I will not attempt to discern anydifference in contribution among the members of a group. (30%)
Class Schedule
This schedule is subject to change depending on the interests and pace of the class, etc. In addition, threeguest speakers will come in and talk about their work to the class; which specific class they appear ondepends on their scheduling and availability.
Class 1: The problem of perception. The problem of mapping. An overview of the class and the historyand repertoire of procedural composition.
Class 2: Indeterminacy and aleatoric music. Dice games and the legacy of divination theory. Introductionto procedural programming for classical CM languages (Csound).
Class 3: Stochastic music and probability systems. Random distributions and Markov chains.
Class 4: Data mining. The world as your noise source.
Class 5: Rule-based composition. Generative (process) music, automata, and formal grammars.
Class 6: Guest speaker.
Class 7: Midterm critique / discussion.
Class 8: Equation-mining and iterative functions. Playing with real-time systems.
Class 9: Guest speaker.
Class 10: Neural nets and genetic algorithms.
Class 11: Mapping for synthesis, sound collage, and signal processing.
Class 12: Mapping for interactive works. Machine musicianship.
Class 13: Guest speaker. Private meetings.
Class 14: Final critique and preparations for performance.
CLASS FINAL PERFORMANCE TBA!!!Enjoy the class!
No comments:
Post a Comment