0% found this document useful (0 votes)
42 views

Integrated Algorithmic Composition

Integrated Algorithmic Composition (IAC) uses a fluid system architecture where algorithmic generation of notation is an integral part of the composition process. This approach will allow composers to explore in a flexible way algorithmic solutions for different compositional tasks.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views

Integrated Algorithmic Composition

Integrated Algorithmic Composition (IAC) uses a fluid system architecture where algorithmic generation of notation is an integral part of the composition process. This approach will allow composers to explore in a flexible way algorithmic solutions for different compositional tasks.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Integrated Algorithmic Composition

Fluid systems for including notation in music composition cycle


Andrea Valle
CIRMA, Universit ` a di Torino
via SantOttavio, 20 - 10124
Torino, Italy
[email protected]
ABSTRACT
This paper describes a new algorithmic approach to instru-
mental musical composition that will allow composers to
explore in a exible way algorithmic solutions for dierent
compositional tasks. Even though the use of computational
tools is a well established practice in contemporary instru-
mental composition, the notation of such compositions is
still substantially a labour intensive process for the com-
poser. Integrated Algorithmic Composition (IAC) uses a
uid system architecture where algorithmic generation of
notation is an integral part of the composition process.
Keywords
Algorithmic composition, automatic notation
1. INTRODUCTION
Algorithmic composition can be dened as a composition
practice that employs formalized procedures (algorithms)
for the generation of the representation of a musical piece.
Apart from the many ante litteram examples, algorithmic
musical composition has been proposed and practiced widely
starting from the 50s. In particular, from the late 50s a
computational perspective started spreading across the two
Western continents (see [1] for a detailed discussion). An in-
teresting shift in perspective has occurred roughly from the
60s up to present day. The rst approaches to algorithmic
composition were driven by instrumental scoring. But, even
if computer tools are largely widespread in contemporary in-
strumental scoring through computer-assisted composition
systems (hence on CAC, e.g. PatchWork, Open Music, [2],
PWGL [9], but also Common Music, [11]), the idea of a
purely algorithmic approach, in which a strict formalization
rules the whole composition process, is no more pursued in
its integrity and has migrated from the instrumental domain
to the electroacoustic one. In fact, considering the nal out-
put of the composition process, while in the electroacoustic
domain the synthesis of the audio signal is a trivial task
per se, in the instrumental domain the generation of mu-
sical notation still remains a very dicult task ([4], [10]).
This notational issue has prevented the diusion of real al-
gorithmic practice for instrumental composition. Such an
approach, in which the composition process is turned into a
Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are
not made or distributed for prot or commercial advantage and that copies
bear this notice and the full citation on the rst page. To copy otherwise, to
republish, to post on servers or to redistribute to lists, requires prior specic
permission and/or a fee.
NIME08, Genova, Italy
Copyright 2008 Copyright remains with the author(s).
Input
Compositional
procedures
UI
Output
Audio
In
Stochastic
generator
Notation
Analysis
FFT
Audio
In
GUI
Stochastic
generator Notation
FFT CAC
IAC
GUI
Figure 1: Rackbox v.s uid architecture.
completely algorithmic workow from the rst idea to the
nal score, can be dened as Integrated Algorithmic Com-
position (IAC). An IAC approach pursues the integration
of notation generation with musical data manipulation, so
that any manual process could be removed from the com-
position pipeline.
The paper is organized as follows: rst IAC/CAC approaches
are discussed in relation to dierent software architectures;
then, the need for a specic architecture is motivated in
relation to automatic generation of music notation; nally,
two cases are presented.
2. RACKBOX VS. GLUE ACHITECTURES
CAC systems are intended to aid the composer in the
computational manipulation of musical data: these data,
at the end, can be exploited in traditional score writing.
Typically based on Lisp, CAC systems oer a large body of
functionalities: pitch/rhythm operations remain the core of
the system, with the inclusion of input modules for audio
analysis and sound synthesis modules in output. All this
functionalities are typically accessible through a GUI envi-
ronment. While GUI is the main interface to the system,
oering an easier access for the less programming-oriented
composer, a high degree of exibility is oered by enabling
the user to extend the program via the Lisp language. Still,
CAC architectures are based on the assumption that new
functionalities must in some way be adapted to the host-
ing environment. A CAC application architecture can be
thought as a rackbox containing a certain number of mod-
ules (Figure 1, left): the box can leave large room for other
modules to be inserted in it. Still the container is solid
and consequently rigid, its capacity is nite, and the mod-
ules, in order to be inserted, must meet the requirements of
the box geometry. By reversing the perspective, a dierent
approach to computer-based composition environments can
be conceived. It can be noted that each of the elements
of the diagram in Figure 1 (left) may be replaced by an
undetermined plethora of components. As a consequence,
instead of starting from a solid framework where to insert
modules, it is possible to start from an indenite variety of
available modules to be plunged when necessary into an
open environment (Figure 1, right). Such an environment
is uid because it is intended as a glue capable of attaching
dierent modules together. This reversed perspective im-
plies a dierent approach by the user. By denition, a uid
system such as the discussed one cannot be implemented
in a closed application. On the contrary, a programming
language is the most exible way to glue together dier-
ent software modules. Thus, in a uid system, the com-
munication among the modules can be operated by a glu-
ing language: the language writes scripts addressing each
modules specic interface and executes them by calling the
related program from OS. The language is responsible for
symbolic manipulation representing the selected music fea-
tures and for the communication with the modules in in-
put/output. Not every programming language is suitable
for such a gluing task. Requirements can be summarized
as follows: high-level, dynamic typing, richness in dynamic
data types, interactivity, string processing, interfacing to
many system calls and libraries. The rst two requirements
are needed to let the composer concentrate on composition
algorithms and not to deal e.g. with compilation or complex
project structure issues, and to allow for continuous feed-
back while experimenting in composition. The last two are
necessary in order to ensure the gluing mechanism. The re-
quirements for softwares modules are in fact programmabil-
ity and command line interfacing. Indeed, there is a strong
coupling between CAC systems and rackbox architectures:
CAC applications are oriented toward composers interested
in a computational approach to symbol manipulations but
are not programmers and are not interested in automatic
composition. On the other side, an IAC approach, i.e. a
fully-integrated computational approach to music composi-
tion including notation, can evidently benet from the ex-
ibility of a uid system. More specically, the case of auto-
matic notation generation demonstrates that a completely
algorithmic approach to composition can be achieved only
through a uid architecture.
3. AUTOMATIC MUSICAL NOTATION
Algorithmic composition requires to dene a mapping
from data structures (the output of composition algorithms)
to a subset of notation symbols (the nal output of instru-
mental composition practice). In the classic approach to
algorithmic composition (Figure 2), this sensitive step is
performed in rst person by the composer, whose work de-
nes the two extremes of the workow: s/he provides com-
position parameter in input and denes algorithms; from a
certain data structure the computer generates a data list
in textual form; the composer controls the adequateness of
the output, eventually modifying his/her composition strat-
egy; then, s/he proceeds to transcribe the data list in musi-
cal notation. Finally, s/he evaluates the notational result,
eventually modifying some steps of the process. To sum-
marize, with respect to the computer output, the composer
works both as a compositional/notational controller and as
a transcriber.
The composition cycle thus requires two controls which are
iterated in two dierent moments. Before the transcription,
the composer can evaluate the generated data and foresee
specic issues that would raise up during transcription. Af-
ter the transcription, the same control can be carried out
Compositional
control
Transcription
Notational
control
Compositional
algorithms
Ok?
Compositional
parameters
Ok?
4
1
2
7
5
4, 5, 7: manual operations
2, 9: computational processes
1: input data
6, 8: documents
Data
structure
3
Data list 6
3: data structure
Musical
score
8
Stop
Start
Transcription
algorithms
9
A B
Figure 2: Algorithmic composition cycle.
by looking at the resulting notation. The control processes
are high level musical tasks, and potentially they can be
performed very quickly, even in terms of the few seconds
necessary to have a glance at the resulting notes. On the
other hand, the transcription step is a low level musical
task, which is always very time-consuming its timescale be-
ing typically measurable in hours. This slowness depends
both on the complexity of notation in se and on the dif-
culty to clearly anticipate from a data list the peculiar-
ity of the resulting notation. The crucial move towards
an IAC approach consequently requires to automatize the
transcription step (Figure 2, from A to B). In this way,
the composer can focus on the higher level aspects of con-
trol: this would speed up the composition cycle (1-8) which
can be executed until a satisfying result is obtained, thus
leading to an interactive, trial-and-error methodology. The
task of automatically generating musical notation is a priv-
ileged example of the power and, at the same time, of the
necessity of a glue-connected, uid system. CAC systems
proposes generic transcription algorithms, intended to pro-
vide a draft of a possible notational output. Consequently,
even if the resulting scores can be quite sophisticated, they
are still drafts to be reworked manually by the composer.
In an IAC approach, this handmade notational work is re-
versed into the denition of an algorithmic procedure for
the control of a notation module. It must be stated clearly
that music notation cannot be derived exclusively from mu-
sical data structures because notation information involves
graphic data which are autonomous from musical data, but
are important at the same degree for the nal composition
output: in short, music notation is not only music represen-
tation ([7]), and the composer must take into account both.
More, in real practice composition and notation are related
by a feedback loop, so that any decision on one side has al-
ways to be veried on the other one. A uid architecture is
indeed needed to automate such a task, so that transcrip-
tion modules can be opportunely dened and ne-tuned.
More, specic modules can be plunged into the uid to
meet the requirements of dierent notations: as an exam-
ple, in the case of graphic notation, a drawing module may
t better that a musical notation one, even if the latter is
.058
.025
.043
1
2
3
4
.051
.058
.070
.083
.044
.059
.061
.065
.070
.063
.124
.141
Edges
Labels (edges)
Labels (vertices)
vertices
Graph
Annotations
"Graph I"

pp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

f
3
Music engraving by LilyPond2.5.29 www.lilypond.org

mf
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

mf
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

f
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

p
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

p
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

mf
3
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp 3
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

p
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

p
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp 3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

p
3
Music engraving by LilyPond2.5.29 www.lilypond.org

mf
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp 3
Music engraving by LilyPond2.5.29 www.lilypond.org

mf
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

mf
3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp 3
Music engraving by LilyPond2.5.29 www.lilypond.org

ppp
3
Music engraving by LilyPond2.5.29 www.lilypond.org

f
3
Music engraving by LilyPond2.5.29 www.lilypond.org

pp
Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org
Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org
Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org

Music engraving by LilyPond2.5.29 www.lilypond.org
I
Prestissimo possibile, ma preciso
In ogni arco, letichetta indica il valore a cui deve essere legata lultima nota del vertice da cui larco inizia.
Tutto deve essere suonato alla 15ma superiore.
notation
LilyPond
graphics
MetaPost
text
TeX
Python
( Scalptor )
ConTeXt
Figure 3: A graph model is fed into Scalptor, gluing LilyPond and ConT
E
Xt to generate a graphic notation.
provided with some drawing capabilities. Examples of uid
architectures implementing IAC systems are described in
[13] (where they are referred as Automatic Notation Gen-
erators), [5], and [3]. In the rest of the paper, we discuss
two cases of IAC where dierent uid systems are designed
to t dierent needs, allowing for a complete algorithmic
control over the nal score.
4. GRAPHIC NOTATION
In the rst project, the nal scores (for piano solo) is com-
posed of a page in very large format (A0) containing graph-
ical notation. The formal composition model is a graph
and the notation mirrors visually the graph structure (Fig-
ure 3). All information associated to the graph data struc-
ture in the model has to be mapped into music/notation
information, so that notation can be generated automati-
cally. The score is made up of musical notation (vertices
and edge labels), graphics (graph drawing), text (perform-
ing annotations) (Figure 3, right): all these components
must be provided by programmable modules and their out-
put integrated in an unique document. A strong constraint
is that musical tradition requires high typographic quality
both for the overall document and for the specic musi-
cal notation elements. As all the involved components are
alphabetic or geometric, vector graphic solutions are conse-
quently needed. In generale, as standard GUI applications
are here not relevant, the possible candidates shares a T
E
X-
based approach ([8]), i.e. they are command languages, to
be input via textual interface and to be compiled in order
to generate a vectorial output. Concerning musical nota-
tion, among the possible candidates (for a review see [10]),
LilyPond, while still sharing a T
E
X-oriented approach, en-
sures very high typesetting quality but on the same time
can be tailored for advanced uses, has a simple, human-
readable syntax, it has undergone a fast development and
it is now the most common text-based music notation ap-
plication. LilyPond scripting solves the problems of gener-
ating standard notation for the vertices of the graph, but
the resulting les (one for each vertex, in pdf/ps format)
must then be included into the drawing of the graphic no-
tation. It is interesting to see that many candidates are
tting in this case. L
A
T
E
X and ConT
E
Xt are two typeset-
ting systems for document preparation implemented as a
set of T
E
X macros. Both allow to work together with ad-
vanced graphic packages. ConT
E
Xt ([6]) has been chosen
as it provides direct support for the MetaPost graphic lan-
guage and extends it by adding a superset of macros (named
Metafun) explicitly oriented towards design drawing (e.g.
allowing pdf inclusion). For this particular project, Python
has been chosen as the gluing language: it has a remark-
ably clear syntax and meets all the previously discussed
requirements for an IAC language. Python takes into ac-
count all composition data processing, i.e. graph generation
and manipulation algorithms, and also the gluing, scripting
process. The Python module, named Scalptor (engraver),
generates the score by writing text les containing code for
each of the involved modules and calling each module in
order to render it.
5. SPECTRAL COMPOSITION
As previously noted, an IAC system should provide room
for inserting modules specialized in audio analysis. Analy-
sis parameters can then be processed and used as starting
material for musical composition. Figure 4 represents an
implementation of an IAC uid system for a composition
project involving parameter extraction from audio signals.
In particular, the commission was to use as starting material
an excerpt from Sophocles Antigon, which was read by a
philologist so to respect as possible the reconstructed Greek
classic pronunciation. Three voices sing melodies generated
from data resulting from the analysis of the original au-
dio le, in particular from the fundamental frequency and
the rst two formants. The Praat software has been cho-
sen for the analysis task, being it specialized in phonetic
processing. The SuperCollider application ([12], hence on
SC) has been chosen both as system glue and as an audio
module: as a language, SuperCollider is rich in data struc-
ture, highly expressive, provides an interfaces to the OS
environment, allows for string manipulation; as an audio
server, it provides state-of-the-art sound processing. Most
importantly, from a UI perspective, SC allows for interac-
tive sessions and provides also programmable GUIs. Com-
Praat
Audio data
Audio
analysis
Audio
data
Compositional
data processing
Music
notation
UI
displays
Graphic data
Audio
synthesis
Transcription
LilyPond
PyX
SuperCollider
- input
- processing
- output
Python
Unicode
conversion
Figure 4: From audio to notation: modules.
munications between SC and Praat has been carried out
via text les: Praat can be easily scripted by passing text
les and it can, in turn, export text les, which can be read
back from inside SuperCollider. The whole composition cy-
cle can then be executed interactively from inside SC. As
before, a transcription module is responsible for the gener-
ation of LilyPond les which can then be rendered to nal
pdf score le. The transcription algorithm also performs a
melodic contour evaluation on the input data, so that con-
tinuous pitch increases/decreases are converted into ascend-
ing/descending glissandos (see Figure 5, bottom). For each
note of a voice, a vowel symbol is assigned, as a result of a
global evaluation of the two formants. As SuperCollider ac-
tually does not support Unicode, the LilyPond le has been
post-processed by a Python module replacing special ASCII
strings sequences with necessary Unicode glyphs. SC pro-
vides facilities to sonify in real time all the data, i.e. before
and after processing and, through GUI packages, the same
data can be displayed on screen. For purposes of documen-
tation, high quality, vector graphics has been generated by
writing in SC the opportune modules. Such modules allow
to interface Praat, which is able to create graphics from
all its data, and the PyX Python graphics package, which
has been used to plot compositonal data structure. Figure 5
shows (from top to bottom) a GUI from SC plotting formant
data, the same data exported by Praat into an eps le, and
an excerpt from the nal score by LilyPond. This rich sys-
tem output provides a constant feedback to the composer,
allowing her/him to control interactively the composition
process.
6. CONCLUSIONS
The case of musical notation is particularly relevant in
demonstrating the need (and the strength) of a uid archi-
tecture for an integrated algorithmic composition system.
In itself, notation is not a simple mapping from musical data
to notation symbols, as it requires the composer to provide
specic typographic information. An IAC approach allows
the composer to develop case-specic solutions to such a
problem, by plunging the selected modules into a uid sys-
tem: indeed, these can include not only notation but e.g.
many dierent UIs. The maximum exibility is evidently
gained by using an interactive language as a system glue.
Some examples of automatic generated notation can be
found at
http://www.cirma.unito.it/andrea/compositionNotation/.
Time (s)
F
o
r
m
a
n
t f
r
e
q
u
e
n
c
y
(
H
z
)
0 0.71723
0
1000
2000
3000
4000
5000
0.35861678 Lei

III
!

-
-
-

r
-
,

-
,
_
_
,

,
,
,

sf
,
r

sf
,
r
'
,

,
-
,
e
,
-
_
_

'
s

,
-
,
r

_
_
_

sf
,
pp
e
,
pp
e
,

"

,
fff

,
mf

#
,
-

$
'
-
,
-
-

_
mf
e

"

#
,

$
,
e

ti
_

st'

,
p
-

st'
,
_
Voce 1
Voce 2
Voce 3
,

Soprano
Tenore
Basso
,

t'
_

_
8

_

_
_
_

-
_
,

t'
,
%

"

h
,
pp

,
pp

,
mf

"
-
-
-

st'

r
'
'
,
_
,
o

,
#
,
#

ka
,
,
,
-

x
-
,
-
-

ti
o
_

st'
,

,
,
-

,
,
pp
#
,
pp
#
,
u
,
u
,
,
,
%
,
-
,
p
o
,

,
,
,
o
,
o
,
, ,
,
,
u
-

_
-

_
_
_
pp
#
,
pp
#
,

,
i
-
,
y
-

y
,
,
p
#
, ,
,
,
,

,
_
pp
e
,
pp
e
,
f
e

,
mp
o
,
-

-
,
-
-

,
o

-
,
-

, ,
mp
%
,
,
,
a

sf
,
pi

st'

f
,
mf
#
,
mf
#

t'

-
h

st'

k%

-
-

-
-
,
fff
e
,
,
,
ff
#

s
4
,
,
,
,
mp
e
,
mp
e
,
mp
e
u
,
-

,
,
,
a
,
,
,
,
-
,
a
,
a

sf
,
s

sf
,
s

sf
,
s

"

r
%
-

st'
o
p
, ,
-
,
-
,
%
,
%
-

,
o
_

h
,

12
,
,
y
,
y

,
-
,
mf
i

,
,
,
i
,
i
,
pp
#

ti
-
,
-

,
pp

t&k
,

_
-
,
-

'

'

'
,

m
,
mf
mf

sf
,
(

sf
,
(

sf
,
(
,
_
_
e
,
e
,
f
e

tum

tum

tum
'
-
,
-

s
,
mp
a

f
,
,
#

-
-
-

m
_

,
pp
%
,
-
,
,
,
,

,
,
a
,
mf
a
,
,
,
-
,
#
-

-
,
-
-

,
a
,
%
,
_
_
_
S
T
B
,

V1
V2
V3
,

_
,
_

sf
,
k%

sf
,
k%

sf
,
k%
_
_
8
_
,
p
-

h
_
,
f
e
'
'
,
_
,
mf
e
,
mf
e
-
-
-

,
,
,

-
,
pp
e
-

,
y
,
,
-
-
-
-

-
-
-

,
,
,
-

8
,
o

st'

ps
,
,
-

pp
#
,
pp
#
,

%
_
%

ti
, ,

-
,
,
,

,
p
#
,
p
#
,

o
-
,
-
-

,
-
-
-
-

,
-
,
_
,
mf
#

(
_
,
-
,
o
-

t&k

'

tum

tum

tum

_
'
,
,
,
_
_
_
,
pp
#
,
pp
#
,
sf
,
% ( x

sf
,
% ( x

sf
,
% ( x
'

"
,
,

t'

g
t&k

t&k
,
-

t'
,

tum

ps

r

h

ks

ps

"
,
,
,
,
,
,

st'

t'

"

sf
,
s

,
p
#
,
,
,

sf
,
s

sf
,
s
'

'

st'

st'

t'

t'

"

t'

st'

s
_
,

sf

sf
,
s

sf
,
s

t'

ps
_
_

"

st'

ti
_
_
_


h
,
mp
i
i

"

sf
,

sf
,

sf
,
pi
,
,
,
pp
i
,
pp
i
,
mp
i

pi

,
,
,
20

f
e

"
,

,
e
,
e
,

ks

st'
,
,
,

sf
,
pi

ps

ka
,

-
,


mp
o

"

,
,
,

st'

r
'

r
,
#

"
,

f
'

s
,
pp
o
,
pp
o
,
s

f
S
,

T
_
_
_
B
,

V1
V2
V3

,
,
,
_
'
_
_
8
_
,
pp
y
,
pp
y

h
'
_
'
-
,
-

"
i
,

st'

$
,
pp
-
,

,
mp
,
mp
i

,
f
e

t'
,
k%

st'
,
pp
e

ps

ks

"

sf
,
,
,
mp
-

t'

,
pi

m
'

t'

st'

ps

"

"
,

'

16

f
,

m
,

,
-

"
,
,
,

ps
,
pp
#
,
pp
#
,
p
#

st'
'
'

,
mp
-

ti

t'

st'

st'
,
,

,
mp
-

tum

$
,
pp
-

to

"
,

h
'
' '
,
o
,
,
_

t'

'

,
,
_

sf
,
d#

_
_

!
,
-
,

"
,
-

-
-

$
,
pp

,
h
_

-
,

"

_
,
,
,
_
_
_

,
p
-
_
-

,
a

st'

t'
,
pp
#

t'

st'
,

-
,
p
p
y
,
y
,
sf
,
k%

sf
,
k%

sf
,
k%

,
e

h
-
,

mp
y

_
Figure 5: Dierent outputs. SC GUI, Praat graph-
ics, LilyPond notation.
7. REFERENCES
[1] C. Ames. Automated composition in retrospect:
1956-1986. Leonardo, 20(2):169185, 1987.
[2] G. Assayag, C. Rueda, M. Laurson, C. Agon, and
O. Delerue. Computer-assisted composition at
IRCAM: From PatchWork to OpenMusic. Computer
Music Journal, 23(3):5972, 1999.
[3] T. Baca. Re: Lilypond for serial music? LilyPond
mailing list ([email protected]), Nov. 28 2007.
[4] D. Byrd. Music notation software and intelligence.
Computer Music Journal, 18(1):1720, 1994.
[5] N. Didkovsky. Java Music Specication Language,
v103 update. In Proceedings of the International
Computer Music Conference 2004, Miami, 2004.
[6] H. Hagen. ConTeXt the manual. PRAGMA Advanced
Document Engineering, Hasselt NL, 2001.
[7] K. H. Hamel. A design for music editing and printing
software based on notational syntax. Perspectives of
New Music, 27(1):7083, 1989.
[8] D. Knuth. The TeXbook. Addison Wesley, Reading,
Mass., 1984.
[9] M. Laurson, V. Norilo, and M. Kuuskankare.
PWGLSynth: A visual synthesis language for virtual
instrument design and control. Computer Music
Journal, 29(3):2941, 2005.
[10] H.-W. Nienhuys and J. Nieuwenhuizen. LilyPond, a
system for music engraving. In Proceeding of the XIV
CIM 2003, pages 167172, Firenze, 2003.
[11] H. Taube. An introduction to Common Music.
Computer Music Journal, 21(1):2934, 1997.
[12] S. Wilson, D. Cottle, and N. Collins, editors. The
SuperCollider Book. The MIT Press, Cambridge,
Mass., 2008.
[13] H. Wulfson, G. D. Barrett, and M. Winter. Automatic
notation generators. In Proceedings of the 7th
international conference on New interfaces for musical
expression, pages 346351, New York, 2007. ACM.

You might also like