• Advertisement
Sign in to follow this  

evolving the stability of a body

This topic is 1817 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi all!

 

I've been trying to "evolve" some creatures that are built up of circles and joints, and can also have a "booster" that propels them in a certain direction.

 

I've been using genetic algorithms to try and do this but I'm not really able to define what "stability" is. As in, I'm not able to identify if a structure is stable or not

 

As of now, I'm checking if it's able to stand on it's own for 20 seconds. If it can, then it's considered stable. But I'm finding it *really* hard to integrate movement into it. the AI isn't able to place the motors in effective positions so that they move :/

 

any ideas?

Thanks

Bollu

Share this post


Link to post
Share on other sites
Advertisement

Hi there,

 

It's a bit hard to comment on your post without atleast seeing a demo program or a video clip that exemplify your problem.

 

Cheers,

Mike

Share this post


Link to post
Share on other sites

Could you perhaps describe for us precisely and in detail what these unstable bodies do, that you find undesireable. I believe that if you can answer this question you are already halfway at the solution.

 

Cheers,

Mike

Share this post


Link to post
Share on other sites

If by "unstable" you mean "wobbling around and it may be able to stand up but it won't stay still," then you can use a few reference points on the creature's main polygon (or body or whatever you want to call it) and check for movement deltas. If the averae is above a set threshold, then it can be deemed unstable.

 

Additionally, you can use this as a more refined fitness amount (for your GA).

 

Good luck,

 

Selenaut

Edited by Selenaut

Share this post


Link to post
Share on other sites

If you want to evolve walking "legs", you can split the problem into three stages: first legs with a decent shape and position, then an assignment of motors that can move the legs arbitrarily enough, then a motor activation schedule that causes walking.

 

To make legs, you could probably graft standard pieces to the "body": for example you can start with a rather short outer edge facing down and triangulate the trapezoid between it and its projection on the ground plane with close to equilateral triangles with edge lengths in a certain range; motors that contract or extend struts (SODA Constructor style) can be placed in the almost vertical front and back edges to bend, shorten or lengthen the "leg".

 

How to move legs might allow a direct solution (deformed leg shape -> altered strut lengths -> forces), while making the whole model walk can be approached with genetic algorithms or the like.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement