Off-line evaluation. How to do?

Clark E. Dorman dorman at s3i.com
Tue Mar 23 10:10:22 EST 1999


Greetings,
	I am trying to solve an allocation problem within a large-scale
simulation.  My input vector are percentages of resources to various areas
within the simulation.  My problem is that the evaluation takes a while,
so I want to do off-line evaluations.  I already have a parallel algorithm
that runs the simulation and does evaluations.  My algorithm should look
like: 

	1.  Create initial population
	2.  Evaluate them
	3.  Run GALib
		A.  Read in population and evaluations for each individual
		B.  Evolve one generation
		C.  Write out population.
	4.  Go to 2 until done.

I cannot seem to get GAlib to do step 3.  The way that I am presently
using GALib is:  create the genome, create the GASteadyStateGA, get a
reference to the population, set the population values to the appropriate
values, set GAEvalData to the evaluated scores, define the objective to be
the value in GAEvalData, evolve by one generation, write it out.

Unfortunately, this does not work quite right.  The population that I read
seems to go into the GASteadyStateGA.  If I print out immediately, it
prints out the population I just read in.  If I call evolve() though, the
population that evolves is the original population that was created when
the GA was created.  I have tried a number of variations, creating the
GASteadyState from a population, calling update on the statistics, and
others, but it does not seem to work.  For testing, I have reverted to a
simple problem where I'm just trying to read and write each generation but
no luck so far.

Does someone have a simple example where the population is being read in? 
Or is there an example with a derived genome where the read and write
member functions do so? 

Thanks. 

--
Clark









More information about the galib mailing list