Back in November, I wrote about programmed vocabulary learning as a travelling salesman problem.
I'm pleased to say I've finally cleaned up my Python code and made an initial version available at:
http://jtauber.com/2005/08/sa_prereq_ordering.py
UPDATE (2005-08-04): You probably don't want to use the above script. See Ordering Goals Rather Than Prerequisites for why, along with a much improved script.