[music-dsp] Evolutionary oscillators

Bordeaux, Ethan Ethan.Bordeaux at analog.com
Wed Jun 4 08:45:00 EDT 2003


i've written a good chunk of this in asm for the ADSP-218x.  never got
around to writing the adaption portion of it, but i think correlating
against a saw/triangle is a good starting point.  about 50% of the 1st
generation oscillators had some sort of usable output.

one thing i found that should have been obvious is that the allowable
opcodes drmatically affect the output.  when i tended towards bitwise
operations the output was very digital and glitchy, while when i allowed
more multiplies, the output was much smoother (though not necessarily
smooth).

the way i set the frequency of the oscillator was to feed a phase
acumulator into a few processor registers while forcing all other
accessable registers to a known state.  this caused the waveform to be
periodic, though perhaps not as interesting as it could be.
saving/restoring register state would probably allow for more
interesting output, but becomes too computationally intensive for
realtime generation.

so then, anyone else have some nontraditional digital-only oscillators
or fx they'd care to share?

> I found this goodie by accident today:
> http://www.newscientist.com/news/news.jsp?id=ns99992732
> 
> Amusing evolutionary "cheat" aside, has anyone tried evolving an 
> oscillator in software? 
> 
> I considered developing a "virtual machine" with a handful of 
> mathematical operators as instructions,  a small ring buffer for a 
> workspace, and the desired frequency (probably represented as 
> fraction-of-nyquist) as its input. To determine the fitness 
> of a given 
> program in this instruction set you'd feed in a bunch of different 
> frequencies, and for each desired frequency do an autocorrelation 
> test to see how close it came to a periodic signal of moderate 
> amplitude at that frequency. I would guess the most likely thing to 
> evolve would be either a counter-based square or saw wave (if the 
> instruction set included conditionals) or a ringing-resonant-filter 
> sine wave. Perhaps the fitness conditions could be adjusted to 
> get more interesting forms. How many generations would it take 
> to get a recognizable tone? 
> 
> -RB




More information about the music-dsp mailing list