Argh - forget about my ramblings on the Step function - it is indeed implemented correctly. I made the mistake of specifying a range outside of -5.12, 5.12 - which works fine for the other EC functions, but not that one. In trying to figure out what was wrong, I looked up a definition of the Step function which was illustrated in a very grainy image - and thus mistook the floor symbol in that image for an absolute symbol. Mea culpa! Sorry about that. Still - would be great to get some feedback on the best GA implementations to use. Cheers, Michael On 25/01/2008, at 9:33 PM, Michael Hart wrote: > Hi All, > > I'm really enjoying using ECJ - it's a wonderfully sophisticated > library. > > First off - I think the Step function in the ECSuite is implemented > incorrectly and leads to a min that's actually below 0 (ie, fitness > becomes > 0) - it should be using Math.abs instead of Math.floor. > > Secondly, I was wondering whether there's a best practices guide > when it comes to using GA with ECJ. The basic GA set is useful, but > it looks like there's many different ways to implement it (Simple, > Steady State, DE, Coevolution, Mu-Lambda, etc). Are any of these > techniques on average better than others? If that question is a > little too broad, then which of the aforementioned methods (or any > of the others included in ECJ) performs best on the ECSuite set of > functions? When I say "best" I guess I'm talking on-average best > result for a given number of evolutions. > > Are there any papers, websites or any other documentation which > compare all of these techniques? > > Cheers, > > Michael