[ODE] Featherstone vs ODE for large-scale ALife project
drvdo@free.fr
drvdo at free.fr
Thu Sep 4 03:53:01 2003
Hello,
I am currently involved in a large project that involves a long-time
simulation of a large number of articulated animats, living together and
interacting in an open space.
Obviously the most important aspect is stability. Second comes speed. Accuracy
is quite a distant third.
Since all animats are essentially tree-like articulated bodies, Featherstone
methods seem highly attractive, but having already used ODE I am unsure
whether the touted advantages of the Featherstone methods are really worth the
effort.
My options are the following:
- Rewriting a physics simulator using the Featherstone algorithm (sounds a bit
frightening)
- Using ODE "as is" (I have been using it for smaller projects and it seems
OK, but I have concerns about stability and speed with more animats involved)
- Using another physics SDK (Darwin2K, maybe Dynamechs but I would have to add
a lot of things)
Note: In order to simplify things, we can go as far as allowing animats to be
self-penetrating (two limbs belonging to the same animat can penetrate and "go
through" each other, but two different animats cannot). This seems to make
things much easier (and more stable) in ODE, most probably because it
eliminates a lot of redundant constraints.
My most important question is: Are Featherstone-based method adapted for this
task ? Are they really more stable or faster, and is it worth the effort ? In
particular, does the need to implement contacts (between animats, or between
animats and the ground) imply "tricks and hacks" that reduce the
attractiveness of Featherstone's algorithm ? (From what I understood, FSTN is
essentially about articulated bodies only, and might not natively allow for
inter-part contact or resting contact on the ground or on each other)
*Any* comments greatly appreciated.
Amicalement,
Thomas Miconi
=============