Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Growing an Artificial Musical Society

Mikhail Malt
mmalt@ircam.fr

Abstract

We will explain in this article the implementation of a model of autonomous agents in the MAX / MSP1
environment. This implementation was made in the framework of the development of a real-time installation, the
" Traces " project. This implementation afterwards gave place to a reflection on the use of a certain category of
models in musical composition.

1. Introduction

One of the main problems which comes in a creative process that uses the computer,
concerns the existing difference between the language used by a man to express himself
[LEVY 1987], which is the natural, oral and written language, filled often with analogies,
with metaphors and with ambiguities, and the formal languages which govern the behavior of
computers. The computer belongs to a purely syntactic world2 governed by strict rules of
transformation and calculation. This universe, very particular, does not tolerate any
ambiguity. All sent message to a system should be in accordance with a pre-established code.
The instructions should be formally clear without ambiguity. The machine is not able to take
decisions if it has not been the programmed. Therefore, the composer who would like to use
the computer in his work is asked, more and more, to clarify and to formalize his thought.
What was until now an aesthetic or personal choice, (that is to say formalization) is now a
need and even an imperative to be able to communicate with the machine. The novelty in the
use of the computer in music, in second half of the XX century, did not consisted in the
formalization of the theory, but in the formalization of the practice, the Knowledge, the
traditional kingdom of the personal experience,. The composer who would like to take
advantage of new possibilities that are offered to us by computers should go beyond the

1
© Cycling74&Ircam, http://www.cycling74.com.
2
Let us not forget that we are speaking about computers with a determinist Von-Neumann's architecture, what
excludes all other architecture such as that of networks of neuron, or the very recent molecular computers and
quite other architecture which can manage "fuzzy" information. This voluntary exclusion is due to the only
reason that the great majority, otherwise the totality of available machines on the market, at this time have only a
Von-Neumann.
know-how and reach to formalize the “how-to-do” knowledge. The composer should develop
a new music Solfège: " a Solfège of models " [Malt 2000].
What do we understand by a “Solfège of models”? We are not speaking about a
Solfège in the sense of a catalog of static models, a Solfège resulting from a fixed typology.
We are rather speaking about the development of a knowledge, intellectual and cognitive
abilities of the composer which would allow him to control and to master either the musical
result stemming from a some generative model, or the link between graphic and/or textual
representations of specific musical software, with a musical result. The model is to be more
than an intermediary between different instances of the reality, it is to be more than the
material support of a thought music and more than the explanation of a practice. The model
would be also a tool allowing the computer to be able to handle a part of this artistic thought.
In our case, we wanted to find a model which could be more than a simple simulation of the
possible choices of a composer, which could be a control model of the musical material, by
bringing us closer to a generative model able to simulate a musical writing.
The use of a model based on autonomous agents seemed to us to be an interesting
solution, since it proposes a solution based on the evolution of small musical entities, which
interact between them to produce a complex structure. The only available agent model for a
musical application at the level of the musical writing and in real time, was " boids " by Craig
Reynolds, "implemented" in MAX by E. Singer. However, as the model had an explicit
graphic orientation, he did not allow his extension to other uses, which led us to develop the
present modelisation.

2. The autonomous agents

Since the appearance of this concept, in the middle of the seventies in the field of the
distributed artificial intelligence, the denomination of "agent" is used to point either computer
entity software or material computer entities (as robots or any hardware). Does not exist,
nowadays, a general consensus on the definition of an “agent ". For the needs of our work, we
have used the definition given by Wooldridge:

“An agent is a computer system, situated in some environment, and that is capable of
autonomous action in this environment in order to meet its design objectives “ [Weiss 2000,
29].

We will add that " autonomy " means that the agent must be able to act, react and
interact in its environment without the intervention of other systems (human or data
processing). This brings us to the fact that an agent is an entity having a dynamic internal state
and behavior rules.
3. Why « agents ª?

One interest on use of agent models for the control of musical events comes from the
fact that it is a part of the so-called " individual based models " [Reynolds on 2001]. These
models are simulations based on the global consequences of local interactions between the
members of a population. The action of control is made at the level of the individual, which
means on the rules that command the behavior. This has a major importance if one confronts
this type of model with the statistical models. Although these two types of models intended to
generate information control for global situations, in the statistical models, the control is done
on average characteristics of the population, whereas for the " individual based models ", it is
performed at the level of behavior rules of the individual.
Among the " individual based models ", there is also the cellular automata model,
which was used by several composers [Miranda on 1994]. However, this model not being able
to represent complex data (or multidimensional data), nor to represent a "diversity" of
individuals, because all the "cells" are similar, was not adapted to our needs. On the other
hand, the agent's model allows to handle " n " dimensional spaces and to represent a large
diversity of individuals. From this point of view, this model allows the simulation of the
evolution of musical "entities" in a satisfactory way, with all the necessary parameters for
their representation.

4. The implementation

4.1 The artistic framework

This implementation is a part of a musical project of concert / installation /


performance called "Traces", with the cooperation of the French bassist Jean Pierre Robert.
This project that is a human /digital performance, and would like to be also a meditation on
the concept of life, is divided in two parts, the first one, " In vivo " ( the performance) and
second one, "In vitro" ( the installation). The "In vitro" phase proposes, in real time and
without human intervention, the musical evolution of the material generated by the
instrumentalist and the machine in the first phase " in vivo ", in the same manner that one
cultivates micro-organisms in laboratory. Every musical being will be born, will live, will
interact with its environment, will be influenced by him, will have a name (a genealogy will
be built), will reproduce and will die. The generated musical surface should have as goal the
formalization of certain aspects of our musical writing. This “musical writing” is based on the
use of small musical gestures that evolve in time [Malt 1996].
4.2 The technical framework

The implementation of this model was made in the MAX / MSP environment. The
agents’ environment is a MAX window (figure 1), and every agent is a " patcher 3"
dynamically loaded (figure 2).

Figure 1: The environment

At its birth, each "agent" possesses:


-A name, to allow its identification and to define the different variables for sending
and receiving “personal” messages.
- A fixed spatial position, to allow virtual marks
- A central pitch, which is used to determinate the point from which certain gestures
will be played.
- A region of listening, the radius of which restricts the "cognitive" ability of every
agent.
- A maximal life span, genetically determined4; at each time that an agent becomes
older, the probability of death increases.
- A task (a musical gesture). Currently, there are 10 different tasks5, every one being
associated to a musical gesture (the simple event, the rehearsal, a "proto melody", elements of
synthesis, samples, etc.).
- A behavior. Each agent is able of knowing the agents that are inside its zone of
“listening”, and modify some characteristics of its behavior and its task according to its
neighbors. For example, in a mode of "sociable" behavior, each agent tends to develop his
musical gesture towards the average of " central pitches " of his neighbors. On the other hand,
a mode of "anti-social" behavior will move the agent to the contrary direction of his “mates”.

3
A " patcher " is an " encapsulation " of a process in a graphic object such as
4
This means that the maximal life span is inherited from its “mother”.
5
The current tasks definition are evolving in a way that it is possible that this number changes very soon.
- A reproducing potentiality. The second third of the maximal foreseen life, is the "
fertile period ", at this moment each agent can reproduce by passing its name, its maximal
age, its task and its behavior to his “descendant”.

Figure 2: Inside an agent

Each agent has a maximum time of life, and his action in the environment is always
transitory. Every agent can also reproduce itself transferring a part of its genetic inheritance
(his name, his task, his musical material, his behavior and his spatial position) to its offspring.
The final result of the interaction among the different agents is the construction of a " musical
surface ". Each agent or “individual” can be generated in either two ways. The first is called "
God_generated " and the second is an asexual reproduction, " Self_generated ". The mode "
God_generated " allows the initialization of the system, the control of the number of agents
(avoiding both, the disappearance of the created “society” and overpopulation), and also to
introduce new elements (genes) by favoring the variety. The mode " Self_generated " allows
the agents reproduction the so as to perpetuate names, tasks, behaviors and various genetic
materials6 (MIDI and audio).

Figure 3: Two ways of generation

6
Materials inherited from its “parents”.
These two ways of generation, from a technical point of view, are based on the
possibility of the MAX environment "to load” dynamically " patchers ", using the “newex»
message (see figures 4, 5 and 6). This message takes as parameters the “newex” command (as
symbol), the relative positions in pixels of the patcher (X=511 and Y=590), the parameters
relative to the size of the patcher (width = 49 and size of police, coded as 196617 for " geneva
" 9), the name of the patcher (moineau_013) and the list of parameters which we want to
associate to the agent (central pitch, name, MIDI channel, X and Y positions, maximal age,
index of task and index of behavior). The generated " patcher " can be seen figure 6.

Figure 4: The message « newex »

Figure 5: The data format to « newex »

Centralpitch (75)
X, Y Position (511, 590)

Task (10)

Behavior (7)

"patcher" nam e M axim al age (140)


M ID Ichannel(2)
(m oineau_013)
agent's nam e: (cygto_3)

Figure 6: the « patcher » generated by « newex »


5. Conclusions

According to the preliminary results, we have noticed that the autonomous agent
model offers advantages others than just the control possibilities. It is a model that has a
memory, it allows the evolution of a musical material by the genetic transmission, thus
associating the ideas of variation and interpolation (in the musical way). It also incorporates
the notion of “unity” of the musical material. The fact that each agent can “communicate”
with the other agents allows that the material generated by an entity is always correlated with
materials generated by neighbors. This correlation depends in a large measure on the behavior
rules that were imposed to the agents.
As the action of each agent is always dependent of the other agents, the notion of
emergence was fundamental in this experiment. This notion expresses the appearance of a
new meaning during the aggregation of elements within a given context This new meaning
which was explicitly absent in individual elements, is the result of the interaction between
these elements. The spatial dispersion of the agents also induces the emergence of several
musical plans, characterized by defined “familiar” groups.
From these experiments it is possible to put forth the hypothesis that a “musical
surface”, could be seen as a system to which will correspond an unstable dynamics, driven by
a multiplicity of forces in interaction. The composition will then be seen as a process in
permanent movement, a permanent search for meaning between the different levels of the
considered musical space, with moments of stabilization, a moments of destabilization and
mainly the phenomena of emergence. To compose it is to create /to weave /to give a meaning
to a musical material. The composer needs, in his process, to create or to give a meaning to
the musical "material". He needs that a meaning comes out from the relation between the
multiple dimensions that he is handling (abstract entities like concepts and acoustic material).
The various meanings created are stages, of a compositional process, through which the
composer needs to pass to arrive at the final work. From this point of view we can deduce that
a model (from the composer point of view) is also a support, an assistant of the thought for
the generation of meaning during a process of composition. The produced music, which we
could call " the listened musical surface ", is only one aspect of the process of composition.
Naturally, it is in the majority of the cases the final objective. Nevertheless, this result, from a
global point of view and from the process point of view that has created it, is only a small
aspect of the whole.
The development of this work continues at present with the research for possible
representations for the behavior rules, the implementation of the sexual reproduction, the
representation and the coding of different musical materials (MIDI and audio) to study the
genetic possibilities of transmission and the search for the links between the generated
structures of controls and the musical meaning produced.
6. References

[Langton 1996] Cristopher C. Langton, Artificial Life, an overview, Cristopher C. Langton


editor, MIT Press, 1996.

[LEVY 1987] LEVY P. - La Machine Univers, Editions la Découverte, Paris-France, 1987.

[Malt 1996] M.MALT, « Lambda3.99 (Chaos et Composition Musicale) », in Troisièmes


Journées d’Informatique Musicale JIM 96, Ile de Tatihou, Normandie, France, 1996.

[Malt 2000] M.MALT, « Les mathématiques et la composition assistée par ordinateur,


concepts outils et modèles», PHD thesis in Music and Musicology in the XX Century, Ecole
des hautes Etudes en Sciences Sociales, directeur de thèse Marc Battier, Paris, 2000.

[Miranda 1994] E. R. Miranda, « Music composition using cellular automata », Languages of


Design, Vol. 2, pp. 105-117, USA.

[Miranda 2000] E. R. Miranda (Ed.), Readings in Music and Artificial Intelligence,


Contemporary Music Series Vol. 20, Harwood Academic Publishers, Amsterdam, 2000.

[Reynolds 1987] Craig W. Reynolds, "Flocks, Herds, and Schools: A Distributed Behavioral
Model" in Computer Graphics 21(4) (SIGGRAPH 87 Conference Proceedings) pages 25-34.
http://www.red.com/cwr/boids.html

[Reynolds 1999] Craig Reynolds, "Steering Behaviors For Autonomous Characters" in Con-
ference Proceedings of the 1999 Game Developers Conference, pages 763-782.
http://www.red.com/cwr/steer/

[Reynolds 2001] Craig Reynolds, « Individual-Based Models, an annotated list of links »,


http://www.red3d.com/cwr/ibm.html.

[Weiss 2000] Gerhard Weiss, Multiagent Systems, a modern approach to distributed artificial
inteligence. Edited by Gerhard Weiss, MIT Press, 2000.

You might also like