Bifurcate me, baby! (1995)
The implementation of this piece was accomplished with a chaotic function (the logistic difference equation):
X = P*X*(1-X)
In this equation, X varies from 0.0 to 1.0 and P varies from 0.0 to 4.0.
With each iteration of the function, the previous output value for X is fed back to compute the next value. As P increases, the behavior of the function increases in complexity. When P is between 0.0 and 1.0, the functions "dies" (all output gravitates toward zero). Between 1.0 and 3.0, the output values for X converge to a single curve that ascends in value with the value of P. At 3.0 the function bifurcates resulting a in limit cycle of two X values that oscillate. As P continues to increase, the interval between the two values increases until, at 3.5, a second bifurcation takes place to produce a "four cycle." This behavior continues as P increases to about 3.6 where the cycles become so long and complex that they are difficult to follow. This is the first chaotic region. In spite of the complexity, every value of P (even to differences in the tenth decimal place) has a corresponding pattern that is clearly recognized as an analog to motivic variation.
In this piece I used a function that produced and arch form by interpolating P from 2.0 to 4.0 and back again over the duration of the piece. It is two and a half minutes long. I used the golden section to determine the proportion between the rising and falling gestures. The rise occupied the longer period.
The output of the function was used to generate the pitches, rhythms, dynamics and articulation in a piece for Yamaha Disklavier.