Content-Type: |
text/plain; charset=utf-8; format=flowed |
Date: |
Sun, 9 Dec 2018 22:35:09 +0100 |
Reply-To: |
|
Subject: |
|
MIME-Version: |
1.0 |
Message-ID: |
|
Content-Transfer-Encoding: |
8bit |
Sender: |
|
From: |
|
Parts/Attachments: |
|
|
Hello!
I have implemented a new betterThan operator into a CustomFitness class,
which is an extended class of MultiObjectiveFitness. I wrote
pop.subpop.0.species.fitness = ec.multiobjective.CustomFitness inside my
experiment param file. Once the execution starts, after the first
generation fails, returning the next error:
Exception in thread "main" java.lang.ClassCastException:
ec.multiobjective.CustomFitness cannot be cast to
ec.multiobjective.nsga2.NSGA2MultiObjectiveFitness
at
ec.multiobjective.nsga2.NSGA2Breeder.assignFrontRanks(NSGA2Breeder.java:185)
at
ec.multiobjective.nsga2.NSGA2Breeder.buildArchive(NSGA2Breeder.java:121)
at
ec.multiobjective.nsga2.NSGA2Breeder.loadElites(NSGA2Breeder.java:82)
at ec.simple.SimpleBreeder.breedPopulation(SimpleBreeder.java:225)
at
ec.multiobjective.nsga2.NSGA2Breeder.breedPopulation(NSGA2Breeder.java:113)
at
ec.simple.SimpleEvolutionState.evolve(SimpleEvolutionState.java:104)
at ec.EvolutionState.run(EvolutionState.java:482)
at ec.Evolve.main(Evolve.java:771)
I forgot something? Is it the right way to extend the betterThan operator?
Thanks in advance,
Adrián.
|
|
|