Structure from Chaos: Fractals Generated on the Circle of Fifths via the Chaos Game
AlgoMotion AlgoMotion
26.7K subscribers
40,310 views
0

 Published On Mar 20, 2024

Running the chaos game on the circle of fifths, producing music to accompany the beautiful fractals that result.

We start using a triangle on the notes C, E, and A♭ (forming an augmented chord), and play the chaos game to generate the Sierpiński triangle.

Then we use a hexagon on the notes C, D, E, G♭, A♭, and B♭ (a whole-tone scale). For optimal packing, the ratio used to divide the lines in the chaos game is 0.667 for a hexagon.

Next we use all 12 notes (the chromatic scale) to form a dodecagon fractal. The dodecagon is optimally packed with a ratio of 0.789 to divide the lines.

Finally, we use a square (i.e. a diamond) on the notes C, E♭, G♭, and A (forming a diminished 7th chord). Playing the normal chaos game on a square, however, doesn't yield a fractal. It only produces uniform noise within the square. When a simple restriction is added: not allowing any corner to be repeated twice in a row, a beautiful fractal results.

0:00 Sierpiński Triangle
3:54 Hexagon Chaos Game
7:05 Dodecagon Chaos Game
10:27 Square Chaos Game
________

Interested in learning more about fractals, algorithms, and how to program? Here are some useful and/or classic textbooks that I recommend (these are affiliate links, if you buy one, I get a small commission):

▶ "The Fractal Geometry of Nature" by Benoit B. Mandelbrot: https://amzn.to/4apa7pT
▶ "Fractals Everywhere" by Michael F. Barnsley: https://amzn.to/4apgh9r
▶ “Algorithms” (4th Edition) by Robert Sedgewick & Kevin Wayne: https://amzn.to/3uo25xR
▶ “Effective Java” (3rd Edition) by Joshua Bloch: https://amzn.to/3HOnYJL
▶ “Design Patterns: Elements of Reusable Object-Oriented Software” by Erich Gamma, Richard Helm, Ralph Johnson, & John Vlissides: https://amzn.to/49fpr7R
▶ “Discrete Algorithmic Mathematics” by Stephen B. Maurer & Anthony Ralston: https://amzn.to/4bmsOvG

#fractal #math #music #beauty #art #mathematics #code #programming #computerscience #processing #java #visualization #algorithmicmusic #computermusic #experimental #hypnotic #randomness

show more

Share/Embed