UCSC: Porter 34B, Chaos, Fractals, and the Arts, Spring 2007

Ralph Abraham, Professor of Mathematics || Ralph's Homepage ||

NetLogo projects from the final show, Wednesday, June 13, 2007

Note: The NetLogo models are created with NetLogo 3.1.4 (or 4.0beta1 if specified). They require NetLogo (with sound extension) to be installed on your machine in order to run. Press the [VIEW CODE] button to view a NetLogo model. They are plain text files; save to your hard drive to run the model in NetLogo.

1. Ben Desai, FireFly

This project utilizes aesthetics, the logistic function, and sound to demonstrate digital harmony via fireflies. The logistic function was used throughout the project to direct movement of the fireflies' direction along with the wiggle function that the fireflies demonstrate. The fireflies change color when they intersect and also play sounds when they hit one of the 8 patches.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]


2. Sara Avery, Lollygagging in the Woods

Abstract I propose to make an animated landscape painting with a dynamic sky. In the sky there are planets, stars, satellites, fighter planes, surveillance planes, and many other dynamic objects. Each is correlated with a different plane of consciousness and a different form of life. The world is so big and full that anything I imagine exists in a real universe.

My graphics window will be set up like a landscape of the ocean at night. I propose to design turtles in the shape of trees and bushes that stand on a cliff in the foreground and middleground. These could have little animals in them such as birds or insects that twitch a bit. Certain patches within the tree can sprout insects. The background color of the patch will match the tree colors. I am considering making a grasshopper or a bird in the foreground the source of the sound component.

In the background there is a vague indication of land (as there always is looking at the Monterrey Bay) that is illustrated with due consideration to the effects of atmospheric perspective. In the dark sky many planets and stars will be animated. I propose to design turtles in the Shapes Editor that are all circular. This is very relevant to my current theme in oil painting. I make little abstract creatures that float in huge abstract landscapes. In this piece there will be little planets floating in a fairly representational seascape.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]


The stars and planets will dance and twinkle to the logistic function. They will move around in the sky. Music will accompany their movement and I am considering the possibility of showing where the sound is coming from (for example from an animal or an unusually musical tapping foot. If it is possible I will animate the waves crashing on the beach.


3. Renee Perry and Daniel Correia,
Wind, Water, Earth, and Fire

Abstract Our project is going to follow the theme of the four elements: wind, water, earth, and fire. We figure with these different elements found in nature, there is the possibility for some great visual as well as audio effects.

So as far as the audio goes, we were thinking about having two different streams. One of the streams would be classical music that is appropriate to the element. For example, fire might use Beethoven's fifth and wind could use Moonlight Sonata. However, the second stream of sounds would be wholly dependent on a function so it would seem random, or at least completely different from the classical. The 'random' sounds would have an industrial edge that is high energy, or at least simulates the theme of the element.

The project would have four different buttons that would run the program for each element. Each element would have its own visual theme as well as audio. For example, for the fire element, we were thinking about having a fire sprite cause sweeping billows of fire to blow across the screen that would catch fire patches of dry grass or dilapidated buildings or something like that. Every time the fairy stops or turns or encounters a patch that is already on fire, it would play the classical music, but for the sweeping flames it would play a flurry of noises. It would be great if we could syncopate the flames with the classical and noises, however, we haven't begun to experiment with any algorithms or anything like that.

Anyway, we can do similar things with water, air, and earth. In short our project would be a mix between classical music and randomly generated noises put to the theme of the four elements. Hopefully, with this theme, it will make for some really interesting visualizations.

There is also a lot of potential to adapt this project into a game. For example, we could make a character who had to escape the fire sprite and her flames. We could also make you play as one of the elements and have to combat the others, water against fire, earth against water, etc. We would expect to keep all the other elements, the cool visuals and the classical music mixed with random sound. We would just be turning it into a game and not just a visualizer. We are not sure if this is the direction

Download: [ NetLogo 3.1.4 Wind ] [ NetLogo 4.0.2 Wind ]
Download: [ NetLogo 3.1.4 Water ] [ NetLogo 4.0.2 Water ]
Download: [ NetLogo 3.1.4 Earth ] [ NetLogo 4.0.2 Earth ]
Download: [ NetLogo 3.1.4 Fire ] [ NetLogo 4.0.2 Fire ]


Wind

Water

Earth

Fire


4. Ryan Samstag and Matt Montanio, Solomon's Musical Seals

For our project, we will start with a black screen and we are planning to continuously place seals of solomon on randomly chosen patches by having an invisible turtle randomly select these patches. Every time a seal is placed a musical note will sound and the seal will be a ceratin color. The sound depends on what color the seal is ,and the color of the seal depends on how many times a patch has been chosen. The first time a patch is randomly chosen, a cyan colored seal will appear and its associated musical note will sound.. The next time the same patch is chosen, another colored seal will replace the previous seal and that associated tone will sound. This will continue to happen until the screen slowly fills up with colorful seals of solomon and different musical notes. Eventually, after a patch has been chosen enough times, the seal will be taken off that patch and that spot will turn black with no musical sounds being made. We will be changing the sounds associated with each colored seal and the pace that the seals will be placed.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]



5. Paul Mekhedjian
Hearing Discrete Chaotic Dynamical Systems

This final project is an extension of homework 6 in that it utilizes a discrete map to express digital harmony in music. I take a look at the Henon map. This follows the last homework (which uses the logistic map) due to being a discrete dynamical system. At certain values of a and b, the system can also be a chaotic discrete dynamical system. The source code illustrates that this was a fairly straightforward process, as the only work involved was moving the logistic map code up a dimension. Although not agreeably aesthetic, the Henon map in NetLogo is a good way to learn how limit cycles are established and how they're a natural consequence of attractors in higher dimensions. Using the "pen down" parameter in NetLogo, one can even see the trip our turtle takes in order to map out its path.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]



6. Justin Bond
Sporadic KL Process Coupling

The concept of this design simply a rendition of the KL Process given to some variable. In this case, the variable is "R" or the rotation of each turtle around its a certain axis. This is what gave an almost living feel to the turtles represented as circles. With my NetLogo model you can see the tendency of the KL process logistic function in relation to a turtles' rotational change. At first, the movements of the circles seem quite random, however, when you set the pen down in this program, you see a certain tendency towards a certain design however it is still seemingly chaotic. The multiple environments was just to add a little bit of extra interaction to the design. You can continue adding circles which will all follow the same pattern, giving a sort of snake like or worm like crawl to them, further showing how the circles' seem as if they are alive. The coupling comes in as just an interesting observation I have noticed with this logistic function and the direction that it turns. It seems at certain values, certain circles get coupled with each other momentarily and then as if some force pulled it or pushed it away, becomes uncoupled. This process occurs relatively sporadically, but still quite often.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]



7. Jared Krogsrud
Hearing the square

The Project I have created is based on a Peano curve. A continuous, surjective mapping from the unit interval to the unit square. In other words, it is a a continuous curve that fills an entire square. There are several of these curves and the one I chose to create for my project is known as the Hilbert Snake or Hilbert Curve. This curve can be created analytically by looking at quaternary numbers and having an explicit formula that maps to a specific coordinate, but I chose the method of a geometric approach. The curve is created iteratively by mapping the unit interval to four sub-squares of the unit square, then the second iteration then maps it to sixteen smaller sub-squares, the third mapping it to 64 sub-squares and the fourth into 256 sub-squares, et cetera. I mentioned these first four iterations because my project shows these four curves. I create a program to create these iterations and show a small turtle to walk along the curve with its pen down to then see it visually. I then have a piano playing with its pitch corresponding to the distance is from the coordinate (1,1). The further the distance the higher the pitch. This creates a type of melody that works on a curve that more and more fills up the entire space of the square, and in effect "hearing" the square. I create four steps so that people not familiar with space-filling curves could get a visual idea of how it can be created. The music almost creates a scale as it moves its way up to one corner of the square and back down to the lower right corner.

The mathematical function involved in created this program was created by the German mathematician David Hilbert, and I learned of this curve out of the book "Space-Filling Curves" by Hans Sagan, a Universitext book.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]



8. Elliot Hoffman
Bachian Eggs

For my final project with NetLogo, I propose to utilize image and musical algorithms to create an animation based off the properties of Euclidian geometry and Bachian counterpoint. I have created a backdrop of a recurring pattern that resembles the techniques used to create many of the amazing patterns of the Alhambra. The music I have chosen for my project is from J.S. Bach, because Bach demonstrated the mathematics in music through his many canons. Bach's 15 two-part musical inventions, BWV 772-786, are simple and clean examples of Bach's propensity to have one musical voice imitate another in a canon frame. Blending these two mediums of sound and image together into one computer program is the real challenge. The amount of musical voices playing the Bach melody are numerous, and if accomplished would be an example of digital harmony.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]



9. Nick Ranish
Dancing on Wind

I am planning to use the logistic function as the driving mathematical algorithm for my project. The logistic function is (r*x*(1-x)), where r is a parameter for the function, and x is the starting value, or previous output of the function in the case of an iteration. Graphically the logistic function with 0 For the image animation I was going to have 3 parts. The first part would be a turtle playing on a one-dimension keyboard in response to the logistic function. The second part would be other turtles dancing to the music played by the first turtle as a two-dimensional function on the output of the logistic function. If I design it correctly, both the turtle playing the music and the turtles dancing to it should reach either a single attractor point or jump between multiple attractor points after enough iterations. The third part of the visual aspect of my project will be the background. I'm hoping to be able to make a scrolling background so it looks like the dancer are floating in the background or being pushed by the wind (thus the title, Dancing on Wind). I think that would add a neat effect in that the wind would make their movements before hitting the attracting point(s) look more chaotic and then after hitting the attracting point(s) make it look as if they've been guided their by some unseen force (really they have been, the logistic function). If I can't find out how to get that idea to work, then I'll just not have that part. As far as what the background would look like, I'm thinking of a fractal cloud type pattern. The musical composition to go along with the animation will be also driven by the logistic function, and will be notes from an instrument played whenever the turtle on the keyboard hit's the corresponding key for that note.

My references are going to be the lecture and the online chapters of: Chaos in Discrete Dynamical Systems Ralph Abraham, Laura Gardini, and Christian Mira, 1997

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]



10. Georgia Tyrrell
Sky Water Chaotic Ballet

This chaotic ballet will feature awesome reoccurring celestial underwater geometric designs such spirals waves. these ever flowing movements come into contact with sedentary objects, such rocks shells, they create almost echo location type reaction that results specific corresponding sound hence chaotic music created. have musical training really what kind sounds will produced, will definitely chaotic. plan using spiral wave logistical functions make vision into reality. these functions from Wikipedia. These functions often fond nature. Spirals seen galaxies, shells unwinding ferns wave preferred mode travel many things earth, like sound waves, waves ocean, light waves, radio wave, etc. Using information learned from Professor Abraham from private tutor will developed procedure using Netlogo programming language that represents vision. will also another type graphic that travels about screen, like underwater creature maybe bird that interact with logistic functions play.

Download: [ NetLogo 3.1.4 Model ] [ NetLogo 4.0.2 Model ]



11. Matt Harra and Devon Green
Breakfast

The NetLogo model "Breakfast" is a collaborative art peice about waking up with a sense of purpose. The protagonist is seen in his bedroom with his cooking utensil raised. In the background we see clusters of sprinkles swarming around his neighbor's house. The sprinkle clusters are moving up and down in tandem with the midi notes played in the key of G. These are played by a turtle moving along the x axis to the logistic function. On the y axis, the sprinkles are mirroring the player turtle's x trajectory and the scale of notes being played in G. The sprinkles' x axis is randomized for visual effect. The chaotic bursts of notes in the G scale are grounded by a steady beat on an acoustic drum and a G drone provided by a reverberated guitar in AIFF format (4.0b only, see below). The model stands as an example of mathmatics-influenced visual art and music, and serves little purpose beyond appealing to its creators' frantic sense of aesthetics. The drawings were provided by Devon Green, and the programming and music was done by Matt Harra.

The R parameter controls the numeric input into the logistic functio, thus movement along the x axis of the player turtle and in turn dictacting the range of notes that will be played while the program is running. Again, also responding to R is the y-axis of the clusters of sprinkles.

Note: I was having trouble getting 'ey.aif' to play smoothly while running "breakfastbeta.nlogo" in NetLogo 4.0b. The original idea was to take advantage of NetLogo 4.0b's support for raw audio files, though my computer locks up when I try to run it. Perhaps because this version of NetLogo is in beta, probably because of my computer's slow processor. At any rate, the only difference between the two files is the inclusion of the "play-sound-then-wait" command in the "setup" procedure in "breakfastbeta.nlogo." The file "breakfast.nlogo" plays well on my computer running 3.1.4, but doesn't have the added AIFF file to provide for an alalog-digital interaction with the logistic function-influenced sequence in G.

References:
Assignment 6: http://www.ralph-abraham.org/courses/porter34b07/assigns/junk6b.nlogo
NetLogo Primitives Directory: http://ccl.northwestern.edu/netlogo/docs/primindex.html
NetLogo Models Library
Wikipedia Logistic Function: http://en.wikipedia.org/wiki/Logistic_function "Logistic Regression": http://luna.cas.usf.edu/~mbrannic/files/regression/Logistic.html

Download: [ NetLogo 3.1.4 Model ] or [ NetLogo 4.0.2 Model ]
Also download this [ Image file] and save as mattH.jpg
In case 4.0.2, also download this [ Sound file ] (5.5 MB) and save as ey.aiff



Revised 14 Jan 2008 by Ralph