[ODE] Re: Virtual creatures (karl sims etc...)

Burton Radons loth at users.sourceforge.net
Wed May 15 03:45:02 2002


Martin C. Martin wrote:

>>>>For example, a freely rotating body in space, without
>>>>any damping (e.g. air resistance), will continuously gain angular momentum.
>>>>
> 
> If strictly conserving energy over a long period of time is your goal,
> then ODE isn't for you.  However, when evolving virtual creatures, this
> usually isn't a problem.  That's because in every time step energy is
> generally added (through muscles) and/or subtracted (through muscles
> and/or friction).  The fact that a little extra energy may be added or
> subtracted each time step won't change your results radically.
> 
> If you intend to add little or no energy of your own, and have little or
> no drag, and need energy to stay the same (e.g. simulating planetary
> motions), then you need a physics engine that emphasizes accuracy over
> stability.
> 
> I'm doing some Karl Sims type work at MIT and using ODE for it, and the
> biggest problem is that constraints aren't added until penetration has
> already happened, i.e. until it's "too late."  Then ODE adds a force to
> separate the two bodies.  With a little bit of cleverness, the virtual
> creatures can extract quite a bit of energy from this in a single time
> step.  For example, check out the video CheatingJumper2_320.mpg here:
> 
> http://www.metahuman.org/martin/eden


Seizure as a means of locomotion.  Would it be enough to damage the 
creature if a contact joint is too deep, lowering fitness?  This would 
encourage a more gliding vault and smoother landing and discourage 
seizing behaviour.  As the generations go on, this could become more 
touchy, to make the leap ever smoother.

Spin abuse could likewise cause fitness hits.  This would not only make 
it hard to exploit over-spinning, but encourage the creature to control 
the situation to keep from accidentally going into a spin.

But I haven't done any work in this field, so what do I know.

As to the FPGA creatures exploiting the physical properties of the chip, 
there was a Discover magazine article a few years back about this, see 
(http://208.245.156.153/archive/output.cfm?ID=1455).  The money shot:

"It wasn't just efficient, the chip's performance was downright weird. 
The current through the chip was feeding back and forth through the 
gates, "swirling around," says Thompson, and then moving on. Nothing at 
all like the ordered path that current might take in a human-designed 
chip. And of the 32 cells being used, some seemed to be out of the loop. 
Although they weren't directly tied to the main circuit, they were 
affecting the performance of the chip. This is what Thompson calls "the 
crazy thing about it."

"Thompson gradually narrowed the possible explanations down to a handful 
of phenomena. The most likely is known as electromagnetic coupling, 
which means the cells on the chip are so close to each other that they 
could, in effect, broadcast radio signals between themselves without 
sending current down the interconnecting wires. Chip designers, aware of 
the potential for electromagnetic coupling between adjacent components 
on their chips, go out of their way to design their circuits so that it 
won't affect the performance. In Thompson's case, evolution seems to 
have discovered the phenomenon and put it to work."


> So, I'm toying around with adding the constraint a timestep early, i.e.
> on any timestep where two things would otherwise start to
> interpenetrate.