breve: a 3D simulation environment

breve is a free software package which makes it easy to build 3D simulations of decentralized systems and artificial life. Users define the behaviors of agents in a 3D world and observe how they interact. breve includes physical simulation and collision detection so you can simulate realistic creatures, and an OpenGL display engine so you can visualize your simulated worlds.

I guess the on-topic bit is this:

breve simulations are written in an easy to use language called steve. The language is object-oriented and borrows many features from languages such as C, Perl and Objective C, but even users without previous programming experience will find it easy to jump in.

but frankly steve is probably not so interesting in itself; rather breve is just a lot of fun to play with.

Apparently, several AI/robotics groups use breve for their research, but it's very easy to get started and comes with a simple IDE and several demos, of which the most interesting is undoubtedly the Walker, a genetic algorithm which evolves four-limbed walking "plates".

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Whimsy

Watching Super Walker is pretty entrancing. It's interesting how many things go through your mind.

For example, if you turn down the gravity, long-legged walkers quickly start to dominate, as they tend to sail spastically through the air. (In fact, they tend to develop jumping and cartwheel behavior, although this comes and goes.) But I'm pretty sure they have an unfair advantage, because their long legs create more torque than short-legged organisms. So one wonders what would happen if you fixed the power available to an organism so that becoming airborne has a cost associated with it. Similarly, what if impact on landing could cause damage?

Also, for example, finer-grained sorts of genomes would be interesting. I want my daddy long-legs to learn how to jump and land, for example, but the demo just seems to loop the limb actions at regular intervals, and air travel is so chaotic and mutation so severe that it is very unlikely my organisms will ever learn that in my lifetime, and if they did, it would be only for a generation, and then mutation would upset the delicate balance required.

So what would be interesting from a programming point of view is to develop a much simpler simulation, with less realistic physics, and a more declarative language, where there is enough information to prune undesirable evolutionary branches, so that we don't spend a lot of time wasting time, and effectively accelerate the sim. I can see fixpoint theory would be handy here.

Anyway, I encourage you to play with this thing. I would if I had the time.

The url is...

http://www.spiderland.org/breve/
(there's a typo in the topic text)

GLUT

And don't forget to download GLUT if you are running Windows. Breve will not complain - I had to look into Readme for explanation, can you imagine that! :-)

Fixed.

Sorry, fixed.