Hello all, I have been fooling around with framsticks for a couple weeks now
(and am still unable to explain why to my roomates...) and am running into
After reading the newsgroup a couple times, I realized that the reason none
of my evolved frams were doing anything interesting was that I wasn't
attempting to guide evolution enough - so, like everyone else, I've taken to
just letting Fram work on either the body or brain and turned my back on
coevolution for the time being. I will probably return to it when I have
some good designs and see if heavily restricting mutation will tighten them
up a bit.
One of my current projects is giving me fits, though. I have been trying to
design the rudiments of what will eventually look like a sea-monkey. To
date this has consisted of a sine/square-wave network driven fram with 2
"arms" and a tail that is _supposed_ to swim with a modified breast-stroke
with the tail rearward.
I'm guessing some explanation is in order:
Forwardswimmer, a bad work-in-progress
XXX[6:-4][-1:4][-1:4, -2:-3.8][-1:4, -2:-3.8][-1:4, -2:-3.8][-1:4, -2:-3.8][
You'll notice that the 7 neurons set before the branching are linked up
into somethat that vaguely resembles the sine-wave network from other.gen.
This is intentional. I _suck_ at neural network design, and this seemed the
only way to get some sort of rythym into my fram.
My questions are thus: how do I go about simulating an efficient breast
stroke? Optimally, I want to have the outer part of the arm "tucked in"
during the forward stroke, but anything vaguely efficient would work. Let
me explain what sort of motion I am looking for in steps:
1. (ideally) starting with the 2-segment arms branched off at a 90-degree
angle from the 3-segment body, the entire arm should swing back until it is
parallel with the 3-segment body. A smooth, curving motion would be nice,
but not neccesary for the prototype.
2. The inner segments should pause all bending movement while up close to
the body while the outer segments in each arm fold themselves into the
inner. (from the fram above, "(X[@G:1,-3:-1][|-7:5]" should ideally have
something to make it pause until "(RX[|-3:-5])" folds itself completely in.
3. The arms should now bend completely the other way (remaining folded in
half) until they are parallell with the main body again and directly (or as
close as possible) in front of the main body.
4. The outer arms should then unfold completely, turning the entire fram
into one long stick.
5. Finally the 2-segment arms should swing back towards the main body,
propelling the entire thing forward and repeat form step 2.
sorry if I'm a bit wordy, but I figured erring on the side of caution would
save some reposting.