ECJ-INTEREST-L Archives

January 2011

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:
"Nikola N." <[log in to unmask]>
Reply To:
ECJ Evolutionary Computation Toolkit <[log in to unmask]>
Date:
Sun, 30 Jan 2011 19:21:12 -0500
Content-Type:
text/plain
Parts/Attachments:
text/plain (66 lines)
Hello,

I tried lately in my ecj experiments to migrate from ecj19 to ecj20, however
I had problems.
Namely the program in ecj19 is functioning with the given .params file. I
have MultiPopCoevolutionaryEvaluator for co-evolution of two species (bits
and floats).
 However when trying to run the same program with ecj20 with the almost same
.params file there is a problem stating:

"java.lang.ClassCastException: ec.vector.FloatVectorIndividual cannot be
cast to ec.vector.BitVectorIndividual
        at main.SonicApp.MyFitness.evaluate(MyFitness.java:279)
        at
ec.coevolve.MultiPopCoevolutionaryEvaluator.performCoevolutionaryEvaluation(MultiPopCoevolutionaryEvaluator.java:251)
        at
ec.coevolve.MultiPopCoevolutionaryEvaluator.evaluatePopulation(MultiPopCoevolutionaryEvaluator.java:167)
        at ec.simple.SimpleEvolutionState.evolve(SimpleEvolutionState.java:76)
        at main.SonicApp.StartEvolExprThread.run(StartEvolExprThread.java:265)
        at main.SonicApp.StartEvolExprThread.run(StartEvolExprThread.java:200)"

I said "almost same .params" since I am aware that there are some changes in
ecj20, so the change in the .params file was minimal - only to remove the
stuff that is not anymore supported in the new ecj20 version.
Here is the part of the adapted .params file, supposed  to run with ecj20:

"
eval.num-current                        = 4
eval.num-elites                         = 1
eval.num-prev                           = 2
eval.select-current                     = ec.select.RandomSelection
eval.select-prev                        = ec.select.RandomSelection

eval.subpop.0.select                    = ec.select.TournamentSelection
eval.subpop.0.select.size               = 2
#---
#-eval.subpop.0.num-elites = 1
#-eval.subpop.0.num-rand-ind = 5
#-eval.subpop.0.num-ind = 2

eval.subpop.1.select                    = ec.select.TournamentSelection
eval.subpop.1.select.size               = 2
#---
#-eval.subpop.1.num-elites = 1
#-eval.subpop.1.num-rand-ind = 5
#-eval.subpop.1.num-ind = 2

pop.subpops                             = 2
...
"

Only the parts starting with "#-" have been commented out. Everything else
is the same. The program in ecj19 runs. The program with ecj20 doesn't run.
 
I guess that the problem can be probably tracked to the changes in the
"MultiPopCoevolutionaryEvaluator.java" but I am not sure ?!
Any comments/help on how to solve this issue ?


...By the way, I also didn't got reply on my previous questions in message
with subject: "Setting up the genome size and other evolutionary parameters
in the program code" :(


Nikola

ATOM RSS1 RSS2