Directions for future work

    As I said in the beginning of the talk, though I've seen some work with Cellular Automatas and sound, most of it has been purely experimental, and there hasn't been any rigorous analysis yet.  Unfortunately, due to time constraints, as well as the wide scope of technologies I covered, I haven't given it a truly rigorous treatment either.  However, I hope that I've managed to set up a system that will allow others to give this topic a more rigorous treatment.  There are lots of different directions that could use further exploration:

Mathematica & CSOUND

    While generating the sounds from within Mathematica is as great way to experiment, I don't think its something to use as a real tool because of the memory overhead and poor performance.  On the other hand, I think that coupling Mathematica to CSOUND is a great way to sonify Cellular Automatas.  The drawback is that the CSOUND score files have to be pre-generated, but this still allows for many complicated experiments.
    I don't think that doing this sort of programming in Mathematica requires you to be an expert in Mathematica at all.  I hope that I've done a lot of the hard work already, and left a good framework that others can run with it, even if they aren't the most experienced with Mathematica.  However, it would probably help a lot if they had at least minimal experience with Mathematica.

Synthesizing more complicated sounds with CSOUND

    Whether using CSOUND from within Mathematica, or to pre-generate the wave files for use with OpenAL, clearly this is the pivotal step in sound generation.  I have only a rudimentary understanding of CSOUND.  From reading online, I've found that many people have used CSOUND to incredibly complicated sounds.  It be would be great if someone (perhaps with slightly more knowledge of music theory than me) would explore sonifying Cellular Automatas with more complex sounds.

Learn more about OpenAL

    As I said in my talk, I was really limited by the capabilities of OpenAL -- all I could do was play WAV files.  However, this may impression from just a cursory reading of the documentation.  It might very well be the case that OpenAL has some very powerful wave-form generating commands.  If someone did a more in-depth study of OpenAL, they might be able to add much more complicated dynamic sonification to my Cellular Automata program.
    The advantage of using OpenAL is that sound creation is dynamic.  My hope is that, after a more in-depth analysis of OpenAL, its limitations can be overcome.  I can say with a fair degree of confidence that making the Mathematica / CSOUND combination dynamic would be very difficult.

    If you're interested in OpenAL, see the notes I made while playing with OpenAL.

Fix up the OpenGL

    There are a lot of places in my program where the OpenGL could really be improved. For instance, it would be great to have window re-sizing affect the behavior of the Cellular Automata, or to be able to have each state represented by squares larger than one pixel.   I have written my code with many of these improvements in mind, so it should be clear where and how others should modify my code.  I simply spent my time exploring OpenAL and other related issues, rather than adding the finishing touches to the graphical portion.


Converted by Mathematica      May 6, 2001