clipped from: www.shiffman.net   
The Nature of Code

Can we capture the unpredictable evolutionary and emergent properties of nature in software? Can understanding the mathematical principles behind our physical world world help us to create digital worlds? This class will focus on the programming strategies and techniques behind computer simulations of natural systems. We’ll explore topics ranging from basic mathematics and physics concepts to more advanced simulations of complex systems. Subjects covered will include forces, trigonometry, fractals, cellular automata, self-organization, and genetic algorithms.

Week 1 — Numbers and Vectors (Jan 17)

Week 2 — Vectors and Forces (Jan 24)

Week 3 — Oscillations (Jan 31)

Week 4 — Particle Systems (Feb 7)

Week 5 — Steering Behaviors (Feb 14)

Week 7 — Fractals and Recursion (Feb 28)

Week 8 — L-Systems and Cellular Automata (March 7)

Week 9 — Genetic Algorithms (March 21)

Week 10 — Neural Networks and Final Project Proposals (March 28)

Reading Materials


The Computational Beauty of Nature,