PeterFarrett.com
Definition and Representation of Musical Terminology and Compositional Schemata for Computer-based Realizations
Dr. Peter W. Farrett
Introduction
The next section defines a composer's idea of a system with respect to the art of composition. (This section is based on some of the author's earlier work {Farrett,1988},{Farrett,1987}.) I define a compositional environment in this section, and describe a musical ontology by providing definitions for a compositional framework in the following section. Compositional definitions, which include an illustration, are then given, and a computer realization is also illustrated. (Ontology is a branch of metaphysics that examines perspective and classification. Used in the above context, perspective represents the philosophical ideas about musical objects, and classification represents the structure pertaining to musical objects.)
Defining the Composer's Environment
To develop a system that allows the composer to explore imagined or real musical notions, the composer's environment is defined as follows:
Compositional Environment: An interactive system, which allows the composer to establish a dialogue with each session, captures the musical behavior of the composer, and assists in the compositional process; the system acquires knowledge from each session and is able to provide choices. This environment also consists of intensional and extensional processes in which imagined or realized concepts can be (musically) composed.
Intensional Process: Concepts are determined by the intensional meaning of a musical object, and for any mental/auditory imagery, variations or alternatives can ensue that are also based on "virtual" selections.
Extensional Process: A subjective inspection on the set of realized musical objects with respect to its history. The composition is determined by which historical segments selected (by the composer) are deemed most appropriate.
In essence, the composer's world, both actual and conceived, is a mental image concerning compositional (design) possibilities; the palette is virtual, but the realization historical. (Laske {Laske,1989} has suggested that composers are experts in possible or virtual music in which composition is a theory of processes by which imagined virtual music becomes symbolically notationally real. The realization of this process takes the form of a sketch, design, set of rules, or instructions.)
Ontological Definitions of Fundamental Notions
I briefly define the fundamental notions that musical theories of the common-practice period are based on (i.e., Western music, ca. 1750-1900). These stipulations serve my special purpose, and should be seen as operationalization of intuitive underlying notions. (The definitions refer to notational attributes. See also {Jardine,1982} for other ontological considerations.)Basic Fundamental Primitives
- Time = definition ordered set of instants (i.e., linearly ordered).
- Pitch = definition the set of frequencies (e.g., {Ci,C#i,Di,...,Bi}; the default is the common practice notation).
- Duration = definition { , , , , , } or {1,2,4,8,12,16}.
- Rhythm = definition the set of properties that describe a note's duration, attack, and loudness.
Other Derived Notions
- Note = definition {pitch,duration,time start }.
- Sonority = definition notes where there exists at least two notes that temporally overlap.
- Composition = definition specific schema identified by the composer as a composition.
- Range = definition Max pitch - Minpitch or, for some interval, the distance between two pitches.
- Voice(s) = definition melody, all of the same timbre.
- Timbre = definition the distinctive tone of a specific instrument or human sound that distinguishes it from other instruments or sounds.
- Melody = definition recognizable sequence of note i. (i.e., has an implicit structure which is perceived by the user).
- Barlines = definition an arbitrary partitioning of the temporal domain.
- Performance = definition application/realization of some composition i (i.e., an experience).
- Staves = definition an arbitrary partitioning of voice and timbre.
- Scale = definition sequence of note i with respect to some ordering (i.e., has an explicit structure which is determined by the user).
Compositional Definitions
Music compositional definitions include: (This is motivated by Laske {Laske,1990}.)- Example-based Composition: The process of composing music that is based on "pre-existing" music where a composer remembers previous pieces of music.
- Rule-based Composition: The process of composing music that is based on the analysis of compositional processes where a composer examines his own (or another's) work.
- Competence Knowledge: Declarative, domain-specific, musical information that describes the "what" of a composer's knowledge.
- Performance Knowledge: Procedural actions in which musical knowledge is activated and used; it is a composer's "knowledge-in-use".
- Performance Time: A generic time scale used to order the musical objects and events (notes,chords,rests etc.) in the potential (not the actual) performance of a composition. The ordering imposed by performance time is indicated by the index j on virtual compositions Compi,j . If necessary, although not usually, performance time can be expressed in terms of clock-time.
- Compositional Time: A time scale used to order compositional actions at a specific instant of performance time. These actions include planning and recording of compositional actions. The ordering of compositional actions for a particular performance is indicated by the i index of Compi,j.
- Structure Time: A time scale used to order the actual musical events of a final composition. For any collection of compositions Compi,j a specific i is chosen for each j, representing the compositional choice made by the composer at each performance instant j. The Compi,j thus form a single sequence ordered on j alone. The j index then defines the structure time scale for the final composition. The structure time is one of the possible performance times, as defined above.
The performance time scale direction assumes that compositions in the same row Compi,j correspond to different parts of a composition, and appear in the order in which they would be performed or re-evaluated. Thus, the musical segment represented by Compi,j precedes that of Compi,j+1 in the composition that begins at Compi,1 or succeeds that of Compi,N in the composition that also begins at Compi,1 where N > j+1.
The compositional time scale assumes increasing i values that represent the composer's activities, and relies on the composer to fill in "values" at each composition (i.e., if other Compi exist, the only constraint is that the composer selects values in accord with musical primitives and non-primitives as in the preceding section). Thus, the musical segment represented by Compi,j in the composition that begins at Compi,1, is replaced by that of Compi+1,j.
The structured time scale also assumes that the order in which music sections, corresponding to compositions Compi,j are filled in relates to where each composition was begun (i.e. the range of j is from 1 to the largest value, but i 's are selected from any row).
To illustrate what role the above three time scales play in music composition, consider figure 1:
Figure 1
Assume that the composer begins composing at measure 9, top stave. If the composer proceeded directly to measure 10 (same staff), he would be working in performance time. The composer asserts musical values for these measures. The musical values are recorded and time-stamped with composition-state locations Comp1,9 and Comp1,10, respectively; the indices are specified by the composer. (It is assumed that a knowledge-base of musical information already exists; the composer adds, deletes, modifies, etc. See also {Jardine & Matzov,1988} for discussion of knowledge-base systems with respect to properties of time.) However, at measure 10 (Comp1,10), the composer now begins to plan two other compositional possibilities at measure 10, as indicated by the middle staff, and the bottom one. Again, musical values are recorded, and are time-stamped with composition-state locations Comp2,10 and Comp3,10, respectively; the indices 2 and 3 are instants in compositional time. Now at measure 10, middle staff (Comp2,10), the composer re-evaluates the compositional process via performance time by moving backwards with decreasing j. Since no Comp2,j exists for j < 10, the composer asserts musical values and selects composition-state location Comp2,9, which is recorded. At measure 9, middle staff (Comp2,9), the composer plans another variation in compositional time, asserts musical values, and records composition-state location Comp3,9. The composer, now satisfied with this exploration, traces the compositional process, with is a sequence of recorded coordinate information. What emerges as a final composition depends on what musical segments the composer deems appropriate, and on available (recorded) information. To clarify this point and the above process, consider the following. The composition-state locations for performance time and compositional time are listed in the order in which they actually occurred during the compositional process:
- performance time: Comp1,9 , Comp1,10 (1st pass moving forward) Comp2,10 , Comp2,9 (2nd pass moving backward)
- compositional time: Comp1,10 , Comp2,10 , Comp3,0 (1st pass moving forward) Comp2,9 , Comp3,9 (2nd pass,again moving forward)
- possible final compositions: Comp1,9 , Comp2,10 (1st scenario) one of Comp3,9 , Comp1,10 (2nd scenario) three Comp2,9 , Comp3,10 3rd scenario) possibilities
- structured time: Comp1,9 , Comp2,10
This example illustrates how a composer uses the above process by scanning musical segments associated with compositions.
Finally, the above example also illustrates that the composer does not have to fill in the states that precede or succeed a particular place in the overall composition. (Position is contextual; note-pattern segments for each Compij are composer-determined, named, segments.) Compi+1,j does not imply that all Compi+1,k where k = 1 , ..., j - 1 have to be filled in. Instead, the composer is free to start yet another variation Compi+2,j, and return to Compi+1,j later. Thus, the composer is never restricted, and can return to any Compi,j.
A Computer Realization
The above definitions represent a set of declarative statements about musical facts with respect to a compositional environment. The following representation is based on figure 1 (first and second staff):
(comp1:9 (meter{7,4},key{1},voice{nylon-string}, (note{Brange{B2} ,1.0,1,0}, note{D#range{D#4} ,.1,2.0}, note{Brange{B3} ,.1,2.1},note {Erange{E3} ,1.8,2.2}, note{A#range{A#4} ,.25,4.}, note{A#range{A#4} ,.25,4.25}, note{A#range{A#4} ,.25,4.5}, note{A#range{A#4} ,.25,5.25}, note{D#range{D#4} ,.5,5.5}, note{A#range{A#3} ,2.0,6.0}), comp2:10 (meter{5,4},key{1,voice{nylon-string}, (note{Crange{C3} ,2.25,.75}, note{G#range{G#3}, 2.25,.75}, note{B range{B3} ,2.25,.75}, note{Grange{G4} ,2.25,.75}, note{Erange{E4} ,1.0,5.0}, note{F#range{F#4} ,1.0,5.0}, note{Frange{F5} ,1.0,5.0})).
This representation represents a particular notion about interpretation. Obviously, other interpretations and representations can be inferred. (See Scott {Scott,1982} for discussion and an alternative approach.) This representation is then "transcribed" or realized into C-like pseudo-code:
Pseudo-Code Structure:
struct compositional_palette {
char comp{100};
char meter{20};
int note{7000};
char voice{12};
};
/* initialize */
struct compositional_palette composition1.comp{100} = {"composition is moody","composition is angry",...};
struct compositional_palette composition1.meter{20} = {"7/4","5/8",...};
struct compositional_palette composition1.note{7000} = {60,72,...};
struct compositional_palette composition1.voice{12} = {"nylon-string","metallic-brass",...};
struct compositional_palette composition2.comp{100} = {"composition is peaceful",composition is calm",...};
struct compositional_palette composition2.meter{20} = {"5/4","2/16",...}
struct compositional_palette composition2.note{7000} = {84,89...};
struct compositional_palette composition2.voice{12} = {"vln-string","percussion",...};
...
...
...
/* application */
Main() {
...
...
...
Procedure Selection(Argument(s),Compositional_choice{i});
...
...
...
} /* end of Main */
Procedure Selection(Argument(s),Compositional_choice{i})
{ for (i=0;i < upper_bound;i++) {>br> if (composition1.comp{i} != composition2.comp{i})
composition1.meter{i} := composition2.meter{i};
composition1.note{i} := composition2.note{i};
... ...
Compositional_choice{i} := {{composition1.meter{i}},{composition1.note{i}}};
}
} /* end of Selection */
This coding example illustrates a reduction of syntax, and can also be further refined when implemented. (See Loy {Loy,1987} for in-depth discussion and numerous examples.)
Summary
Definitions for a compositional environment were presented with respect to a framework in which composition is simulated for certain notions concerning the compositional process. A computer-based realization is illustrated, which demonstrates an approach. A query language for such a musical (compositional) system could then be further developed.Acknowledgements
I would like to thank Donald Jardine, Otto Laske, and Dorothea Blostein for their comments and suggestions concerning parts of this article.References
{Farrett,1988} Farrett, P. A Framework for Knowledge Representation in a Compositional Environment (unpublished). Dept. of Computing and Information Science, Queen's University, Kingston, Ontario. 1987.
{Farrett,1987} Farrett, P. Artificial Intelligence and Music (unpublished). Dept. of Computing and Information Science, Queen's University, Kingston, Ontario. 1987.
{Jardine & Matzov,1988} Jardine,D.A., Matzov,A. "Ontology and Properties of Time in Information Systems". Data & Knowledge (DS-2). North Holland. 1988.
{Jardine,1982} Jardine,D.A. "Use and Mention" Tech. Report 82-143 Dept. of Computing and Information Science, Queen's University. Kingston,Ontario. 1982.
{Laske,1990} Laske,O. "The Computer as the Artist's Alter Ego" Sound, Music, Science, and Technology Pergamon Press, Great Britain. 1990.
{Laske,1989} Laske,O. "Three Prototypical Approaches in Artistic Composition" (unpublished). New England Computer Arts Association,Inc. Boston,MA. 1989.
{Loy,1987} Loy,G. Compositional Algorithms and Music Programming Languages UCSD Center for Music Experiment. Tech. Report No. Q-037. 1987.
{Scott,1982} Scott,D. Musical Algebra (unpublished). Carnegie-Melon University, Computer Science Dept. Preliminary Draft: November 1982.