Good to hear you're on track now, Peter. Responses:
On May 18, 2008, at 4:36 PM, Peter Drake wrote:
> I was a bit disappointed to read that coevolution is not
> multithreaded, but I can see how this would be challenging. Perhaps
> I'll be able to help with that at a later date.
Coevolution involves a lot of interweaving of evaluations, so yeah,
multithreading can be challenging. But not impossible.
Y'know, multithreading is a tricky thing. Over the last few days
I've been trying to nail down why a non-locking multithreaded version
of a particular simulation in MASON (ECJ's sister project, a
multiagent simulator) was *slower* than the single-threaded version
on a multiprocessor machine. My best guess is that our heavy memory
usage pattern was a bad case for the memory controller of the dual
CPU. Oh well.
> Despite the claims in the documentation for ec.Subpopulation,
> ec.subpop does not appear to work as a default base.
On CVS it does now. :-) The default base is "ec.subpop".
> ec.Evaluator doesn't appear to have a default base, which makes for
> some redundancy in the parameter file.
Where was the redundancy? I missed it.
Evaluator wouldn't have a default base because there's only ever one
of them -- it's a singleton.