Sunday, May 29, 2011

Simulating Mathematics?

Bret Victor, in his online essay Simulation as a Practical Tool, critiques a classic IMP problem, which I'll paraphrase here:
A skateboarder hangs on to a merry-go-round turning at a constant rate.  At a given instant, he lets go, and travels in a straight line at a constant speed, until he runs into a (straight) wall a given distance away.  How much time does it take him to hit the fence?
As I read Victor's essay, he has three main critiques of the problem:
  1. The problem is contrived, and fundamentally uninteresting (who would care how long it takes to hit the wall?), especially with the original data in the problem (all triangles are 30-60-90, etc., etc.). 
  2. The solution relies entirely on symbolic mathematics, and so is hard to generalize to other situations, e.g. varying speeds, curved walls, etc.
  3. A more interesting--and, for many students, more valuable--approach would be to simulate the situation on a computer, so that students can appreciate how changing the parameters in the problem affects the answer.
While the first of these is valid, I think the second and third miss the point entirely, for reasons I'll explain.

Criticism #1:  The problem is contrived and boring.  I think Victor's right about this, and an analysis that stops at "it takes 4.7 seconds to hit the wall" isn't necessarily worth the time it takes to get there.  But used as a springboard for generalization and extension -- I'm imagining one of Dan Meyer's WCYDWT videos -- this could be really cool.  In fact, Victor's own suggested rephrasing of the problem, "What release point minimizes the time to hit the wall?" is one obvious extension.

Here's another approach that we don't ordinarily take:  start with the general problem in roughly the way that I've stated it above, and have students make it specific enough to solve as a first approximation to a general solution.  The task is now "Can we (always) compute the time it takes for the skateboarder to hit the wall?" and the students--much like mathematicians or engineers in real life--start by filling in the variables with plausible initial conditions to see what a solution might look like, before attempting a solution (or a model) with variables.

Criticisms #2 and #3 seem weird to me, for three reasons:
  • One goal of mathematics is the creation (or identification) of general, true statements.  Victor's proposed simulation doesn't really allow for those.  At a philosophical level, it could be argued that the simulator itself is equivalent to a set of true statements that describe all possible behaviors of the system, but without some way of tying those together, we lose what philosophers would call the "propositionality" of mathematics.  Victor is claiming that our goal should not be a single answer or set of answers, but rather a computational model that allows us to find answers given a particular set of initial conditions. I'll concede that in some areas of mathematics--dynamical systems, for example--often such models are the best we can hope for.  But even in those we want to make general statements about a system's behavior, and it's hard to imagine how we might do that without invoking symblic mathematics.
  • If our goal is to empower students to do more and more interesting mathematics, we can't just hand them simulators and tell them to go play: we need to teach them how to create those simulators.  Doing that requires a lot of math and a lot of programming.  So Victor's "simulation" model of doing math ultimately requires teaching kids a lot of traditional mathematics.
  • Even if we do give students a simulation that they can use to find a particular outcome, I think it's natural for students to ask "Why?" and "How can we be sure?"  Those questions ask for justification and generalization that require ... traditional symbolic mathematics.
I think simulations are terrific ways for students to experiment, to learn, and to generate and answer interesting questions.  But what we need to do is not replace traditional math with simulations, but use the power of models and simulations as an incentive to do, test, and generate exciting mathematics.

== pjk

1 comment:

  1. Keep in mind the novel thing Victor is wanting to do is make the "programming a simulation" aspect completely programming-free. I admit I'm skeptical this can be done with any flexibility; if we take the most abstracted of simulators (like GameMaker or some other program intended to help non-programmers make games) even with lots of visual design there's still elements of raw programming involved. It's just impossible to anticipate every possible scenario without some programming.

    ReplyDelete