## Homework Week 8

For the remainder of this semester you should be working on your final project. We’ll do this in three stages.

1. Final Project Experimentation — Create several quick and dirty sketches that implement the beginnings or seeds of an idea.
2. Final Project Proposal — develop a plan and proposal.
3. Final Project — Build the final project and present in class!

For your week 8 homework, do #1 above. We’ll worry about #2 and #3 later. If you are stuck for an idea, I’ll include below a long list of suggestions for exercises that might lead you towards an idea from the material in chapter 6.

• Steering Behaviors

• Implement seeking a moving target, often referred to as “pursuit.“ In this case, your desired velocity won’t point towards the object’s current location, rather its “future“ location as extrapolated based on its current velocity.
• Create a sketch where a Vehicle’s maximum force and maximum speed do not remain constant, but rather vary according to environmental factors.
• Create a flow field that changes over time
• Create a flow field based on image data
• Expand the path following example to have a path that changes over time. Can the points that define the path itself have their own steering behaviors?
• Create something inspired by Braitenberg’s Vehicles
• Flocking

• Implement Flake’s "View" rule, described in Computational Beauty of Nature
• Create a flocking simulation where all of the parameters (separation weight, cohesion weight, alignment weight, maximum force, maximum speed) change over time. They could be controlled by Perlin noise or by user interaction.
• Build a creature with countless steering behaviors (as many as you can reasonably add). Think about ways to vary the weights of these behaviors so that you can dial those behaviors up and down, mixing and matching on the fly. How are creatures' initial weights set? What rules drive how the weights change over time?
• Use applyForce() in Box2D or addForce() in Toxiclibs to create a flocking simulation in one of those physics engines
• Complex systems can be nested. Can you design a single creature out of a flock of boids? And can you then make a flock of those creatures?