In 2007, I supervised an internship for the Adaptive Music Systems Research group under Jan IJzermans. The group  researched adaptive sound design and composition for games and developed the Adeptive toolkit, which helps composing in nonlinear settings.
To make things clear: we’re not talking about composing a song from the beginning to the end (linear music); the composer makes a large amount of musical ‘cells’ and the system selects new cells based on the rules of the composer (nonlinear music). Such an approach can be highly suitable for games, that mostly have a nonlinear character, as the music is able to correspond with the narrative or the presupposed experience of the player. And at least, we’re preventing the repetitive background track that drives players crazy.
The adeptive toolkit is still being developed, and now the developers have published a demonstration video of the toolkit with music composed by Than van Nispen. This is an interesting annotated video which shows the value of this system. What you see is an overview screen with music cells and a two-dimensional dipolar state diagram, which triggers the music. Notice the real-time “Notepad”-information which shows what is going on (real-time!).
The research focused on a basic nonlinear (adaptive) music structure, with a composer (non programmer) friendly approach to use any audio with a basic data design for nonlinear music, to enable prototyping and communication between game developers and composers.
 Vincent Akkermans, Bertus van Dalen, Siebe Domeijer, Than van Nispen tot Pannerden and Pınar Temiz.
Update: the adeptive toolkit has been published here. Read info from the devs below the cut:
The Adeptive Toolkit is an interface to a nonlinear music structure.
At the Utrecht School of Music and Technology, Bernard Herrmann’s flexible film composition methods were researched: a method of ‘cell composition’ – a cell being a small musical element or motif. Cells can be succeeded by different other cells, the choice depending on the demand of the (game/interactive) system (for example: more tension).
Cells are connected by transitions. The connections give the sense of a network, hence the term ‘cellnetwork’. Composers can chop their music into flexible cell-pieces, connect these with conditional transitions and value the cells with some variable, for example: “tension – 5”.
A flexible and responsive continuity in music can be created. A composer will then typically find himself making more and different transitions and ‘musical paths’ when he finds out how to serve the demands of the game better.
A video game engine communicates a request to the music structure, for example: avatar health 1. In this case, the music will transition to the ‘almost dead’ music IF the composer indeed provided a convenient transition network through his material.
Generally the ‘cellnetwork method’, reflected in the Toolkit, has been found an interesting way to deal with nonlinear music in contexts.The use of an open-source Max/MSP elaboration of the Cellnetwork Method could provide quick access to editing and expanding the system, as Max/MSP is used by many music technologists, sound designers and composers.
If you like to evaluate this toolkit, I’d suggest to contact the developers. They are interested in collaborating with other parties in order to expand this toolkit.