ECJ-INTEREST-L Archives

March 2007

ECJ-INTEREST-L@LISTSERV.GMU.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Sean Luke <[log in to unmask]>
Reply To:
ECJ Evolutionary Computation Toolkit <[log in to unmask]>
Date:
Wed, 21 Mar 2007 11:06:07 -0400
Content-Type:
text/plain
Parts/Attachments:
text/plain (42 lines)
On Mar 21, 2007, at 7:04 AM, Alberto Cuesta wrote:

> Hello all,
>
> why ec.Evolve setups some parameters of the EvolutionState?, namely:

Good question. Some answers:


> evolutionState.parameters

It's not easy to load the parameters parameter from a Parameter
Database which is defined by the parameters parameter. :-)

> evolutionState.output

ECJ needs to be able to output messages if it fails in the very
earliest loading time. So this has to be preset.

> evolutionState.evalthreads
> evolutionState.breedthreads

These variable determine the number of random number generators, see
below.

> evolutionState.random
> evolutionState.randomSeedOffset

This is historical -- there's no particular reason we can't set the
random number generators in EvolutionState I think.

So I think we can easily get rid of all but evolutionState.parameters
and evolutionState.output. Now one problem here is that output and
parameters are both things that you'd want to swap out or subclass.
One option would be to create an interface for each which you can
implement. The simplest option right now is for you to just subclass
directly. A problem with the interface mechanism is that Output has
some static methods, so it'd probably have to be an abstract class
instead.

Sean

ATOM RSS1 RSS2