Print

Print


In the run described below, it looks like the evolutionary process is
favoring low fitness values, but whatever is keeping track of the
"best individual" prefers high fitnesses.  Am I missing something?

(I should note that I'm using a new version of
ec.coevolve.CompetitiveEvaluator that Liviu sent me.)

Thanks,

Peter Drake
Assistant Professor of Computer Science
Lewis & Clark College
http://www.lclark.edu/~drake/


I modified coevolve1.params to use a random-two-ways tournament:

eval.style =                            rand-2-ways
eval.group-size =                       7

Then I ran:

java ec.Evolve -file ec/app/coevolve1/coevolve1.params

Here's the beginning and end of the resulting out.stat file:

Generation: 0
Best Individual:
Evaluated: T
Fitness: 53.0
  1 0 0 0 1 1 1 0 1 1 1 1 0 0 1 1 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1 0 1 1
1 1 0 1 1 0 0 0 1 1 1 1 0 0 1 1

Generation: 1
Best Individual:
Evaluated: T
Fitness: 35.0
  1 0 0 0 1 1 1 0 1 1 1 1 0 0 1 1 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1 0 1 1
1 1 0 1 1 0 0 0 1 1 1 1 1 0 1 1

Generation: 2
Best Individual:
Evaluated: T
Fitness: 40.0
  1 0 0 0 1 1 1 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 1 1 1
1 1 1 1 1 1 0 0 1 0 1 1 1 0 1 1

...

Generation: 99
Best Individual:
Evaluated: T
Fitness: 5.0
  1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Best Individual of Run:
Evaluated: T
Fitness: 53.0
  1 0 0 0 1 1 1 0 1 1 1 1 0 0 1 1 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1 0 1 1
1 1 0 1 1 0 0 0 1 1 1 1 0 0 1 1