writing about computer generated music

This project will
explore the use of computers to generate music from programs, algorithms, and random numbers in
software.
There are several software libraries available to generate sound using Java [1-3]. These libraries are not
independent – they can be linked together, with each library creating different objects to perform
different tasks.
Max/MSP is the gold standard for software that can be used to programmatically generate music [4]. If
you’re a computer music enthusiast, consider investing in a copy of Max/MSP. There are many ways to
incorporate Java programming into Max/MSP projects [5-6].
Computer Music
Many pioneering musicians have explored mathematical algorithms (Iannis Xenakis), patterns (Steve
Reich), and the role of random chance (John Cage, Xenakis) in music (both before and after the
introduction of computer-generated music). Other pioneers of electronic and experimental music
include Robert Moog, Charles Dodge, Lou Reed, Ramond Scott, and Seattle’s own Richard Maxfield.
(Spotify is a great resouce for listening to these artists’ music, and for discovering playlists with music
from other experimental electronic musicians. There is a musical anthology called “OHM: Early
Pioneers of Electronic Music” that will get you linked up with a long list of other interesting artists
[7].)
Each of these artists explored different ideas through their music. In your project, you will do
something similar: select an idea or a concept that you wish to explore through computer generated
music. Perhaps its turning computational algorithms into sound; perhaps it’s trying to get a machine to
generate the next pop hit. Where you take it, and the complexity of your task, is up to you.
The Project
Utilize a sound generation library in Java to create an original, computer-generated composition that is
at least 10 minutes in length. Your song should have some structure (for example, a chorus and a
bridge), unless you are exploring a different concept with your project. You may incorporate various
sources of randomness (for example, you could write a static method that uses web sockets to obtain
the trading volume of the Dow Jones Industrial Average and utilize it as a source of randomness).
Above all, your project should be interesting to listen to!
Report Content
Read the final project rubric for details on the format of the final project, that is not covered on
this page. This page lists specific topics that must be discussed in your written report.
Include the following in your written report:
• How is it possible to generate music with computers? Discuss the hardware and software
required to do this.
• Discuss the early history of computer-generated music and some early pioneers. What kind of
ideas did they explore? How have those ideas impacted society today?
• Describe the idea that you explored with your music program/song. Did you explore an abstract
concept? An aesthetic concept? Both? Neither?
• Describe how you implemented your program/song, and any libraries that you used. If your
song evolved in stages, describe the process.