Sanction of the Victim, abbreviated SoV, is a composition for LAN (local area network) of two or more computers. There have been a few iterations, some performed and some installed. SoV consists of two strategies that struggle for control over the network: a flock and a virus. Sociopolitical language is intentionally used to enrich the narrative worlds the composition implies.
A binaural recording of the installation (192kbps MP3) is available for audition and download below:
tactics
-
swarm
On each computer is a simulated flock of individual agents. The agents perform a simple flocking algorithm derived from the work of Craig Reynolds. Each agent applies three basic processes to their movement, resulting in behavior that is coherent both on the scale of the group and the individual. These processes are cohesion, separation, and alignment. The computers also communicate with one another about the average position and heading of their flocks, and applies the same rules to form a superflock, to which all computers on the network contribute.
These swarming agents are sonified. Each agent represents the potential for a unique tone in a constellation to occur at a given time. Their positions in a two-dimensional field determine whether the tone is to be 'struck', relating the position to a hyperbolic wave-terrain. Perhaps this is best explained with the following video:
The green regions in the above clip are where the duty-cycle of each agent is 'on', which results in striking that agent's tone. In later versions, the agents were sonified using a physical model of struck metal. In that case, they contained a good deal of inharmonic partials, and their 'fundamental' was occasionally ambiguous. However, the sizes of the metal pieces are related to a just scale that is close to 5TET. The same scale was used in the above video, represented as sine tones.
-
infection
Each computer also has the potential to receive a specific kind of UDP message, unrelated to the system of messages related to flocking. The receptors to this message immediately broadcast the message back to the neighboring computers, and measure a time differential. The result of distributing these receptors and sending a single message to any computer is known as a DDOS (distributed denial-of-service) attack on the router. Certain parties have an affinity for this tactic as it is very effective in taking out specific resources and nearly impossible to trace. The activity of this pathogen should increase exponentially, and happens almost instantaneously. If left unchecked, the virus would take over the network in under a second and possibly crash a few computers in the process. In later iterations, I added a few constraints to the way the virus spreads, in the hopes of reaching a balance.
This process has been presented a few different ways. At first, it grew from a desire to directly represent the network-time-constant for a packet travelling across the LAN. These first implementations often treated the network like an analogue oscillator circuit, the RC time-constant replaced with network latency. In this model, messages have a single binary value, Hi or Lo. On receiving a message, the computer inverts the value and broadcasts the result. When the value is applied to speaker position (dc) the result is a pulse-oscillator whose frequency is related to the network-time-constant. This system does not always result in astable (oscillating) behavior. A system with only two nodes is a good example.

Consider the two-node system at the top-left. In order to produce an oscillation, the nodes cannot be homogenous. One node inverts the signal, while the other just passes it on. It turns out this is true of loops that consist of an even number of edges. If there are four nodes, fully connected, which invert and pass their message according to a markovian process, then loops with an odd number of edges will cause a change in DC while loops with an even number will not. In later pieces this behavior was enhanced with a Karplus-Strong algorithm that used the oscillations to excite a string. The frequency of the string would change proportionately to the time differential. In even later versions, I tempered this approach by sonifying events within a certain range of this differential. I imagine this range and the mapping within it will change based on the size of the network and speed of the router.
struggle
The result is a aleatoric process for use in computer music which is not based on pseudorandom number generators. I found this to be very attractive as a compositional tool. Furthermore, the narrative surrounding the two systems provided me with another layer of meaning. In performative situations, I give a verbal explanation of the components as they are introduced to the network, and physically disconnect the computers to quarantine them. There is a nice dose of theatricality to this. In installed settings, a brief description of the sounds and their roles in the narrative must suffice.
Related blog entries.
(The LAN I compose / perform with is called the Cattri.)