[ODE] First phase of program finished.

whitt013 whitt013 at bama.ua.edu
Sat Mar 1 16:58:01 2003


Hi guys,

I've gotten the first phase of my genetic algorithm program done.  It reads in 
the xml file that represents a creature, and runs the simulation with the 
initial parameters for the joints.  You can view a pair of screenshots and 
their accompanying xml files at http://www.csworkbench.com/ or use 
http://207.99.108.244/ if that hasn't resolved in your area yet.  Notice that 
both xml files are almost identical, except for the recursion parameter.  It 
allows a body to point to itself, copying the body (or chain of bodies) until 
it has been seen <recursion> times.  That idea comes straight from the guy who 
started it all.... Karl Sims.  There's also a mirror parameter, which negates 
the output of the brain controlling the joint, making it possible to use the 
same brain on both sides of the body for things that need to go in the same 
direction (like wheels).

The second simulation, with 37 bodies and 36 joints (32 hinges, 4 fixed), just 
barely keeps up with realtime.  I know some of that is my rendering functions, 
but I think I'm missing something in my profiling setup, because gprof shows 
no gl* calls at all....  I'm using NVidia-glx drivers if that makes a 
difference.  But back to ODE.  Assuming I get the graphics optimized, can 
anyone give me a ballpark estimate of how many bodies/joints I could expect to 
simulate in real-time on a 1.2 GHz machine (in release mode), so I can have a 
good target to shoot for?  If there are n bodies, there will be n-1 joints, 
due to the hierarchical structure of my file format.

Thanks a bunch,
David Whittaker