Strasheela by Leonid Vladimirsky1
Strasheela is a highly expressive constraint-based music composition system.2 The Strasheela user declaratively states a music theory and the computer generates music which complies with this theory. A theory is formulated as a constraint satisfaction problem (CSP) by a set of rules (constraints) applied to a music representation in which some aspects are expressed by variables (unknowns). Music constraint programming is style-independent and is well-suited for highly complex theories (e.g. a fully-fledged theory of harmony). User-interface is the programming language Oz. The results can be output into various formats including MIDI, Csound, and Lilypond.
For the lates changes check the development at GitHub.
14 April 2013: Mozart (and thus Strasheela) does not start on MacOS Mountain Lion. Snow Leopard works fine (Lion was not tested). We are investigating how to address this matter. BTW: Mozart 2 will soon be released, but Strasheela would first need to be ported to that completely rewritten platform.
31 May 2012: Strasheela development moved from SourceForge to GitHub (and is now using Git instead of Subversion). Nevertheless, other things stay at SourceForge (e.g., the website, mailing lists, releases).
30 April 2012: Strasheela 0.10.1 released
This is the first release within the last three years. Several important extensions have been added. For example, constraints are available that control the rhythmic accent of notes (their rhythmic weight) depending on a wide range of musical features, including differences in duration, pitch intervals, presence of an anacrusis etc. The metric position of notes can depend on their accent in various ways. Texture constraints control whether a musical section is, say, homophonic, quasi-homophonic, homo-directional etc. Arbitrary regular temperaments including extended just intonation are now supported. Many further features were added, and bug fixes have been made as well (see Changes).
Strasheela Monograph (pdf)
The development of Strasheela began at the Sonic Arts Research Centre at Queen's University Belfast as part of the PhD of Torsten Anders. The development was continued at the Interdisciplinary Centre of Computer Music Research at the University of Plymouth (funded by the Le StruM project), and presently at the University of Bedfordshire.
1. Illustration by Leonid Vladimirsky from: Alexandr M. Volkov (1939, revised in 1959). The Wizard of the Emerald City, Soviet Russia Publishers.
2. Strasheela is also the name of an amicable and stubby scarecrow in the children's novel The Wizard of the Emerald City by Alexandr M. Volkov, in which the Russian author retells The Wonderful Wizard of Oz by L. Frank Baum. The latter inspired the name for the programming language Oz, which forms the foundation for the Strasheela composition system.
The scarecrow's brain consists only in bran, pins and needles. Nevertheless, he is a brilliant logician and loves to multiply four figure numbers at night. Little is yet known about his interest in music, but Strasheela is reported to sometimes dance and sing with joy.