From f7f8fe9b22670589f24083d67b5b3a8f4c0cc953 Mon Sep 17 00:00:00 2001 From: "Bernhard J. Berger" <bernhard.berger@uni-bremen.de> Date: Wed, 8 Feb 2023 13:14:34 +0100 Subject: [PATCH] Use optimisation-output-specification instead of target to determine the fitness values. --- .../core/main/statistics/fitness/FitnessStatistics.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/core/de.evoal.core.main/src/main/java/de/evoal/core/main/statistics/fitness/FitnessStatistics.java b/src/core/de.evoal.core.main/src/main/java/de/evoal/core/main/statistics/fitness/FitnessStatistics.java index d7a058b1..7b8c64e6 100644 --- a/src/core/de.evoal.core.main/src/main/java/de/evoal/core/main/statistics/fitness/FitnessStatistics.java +++ b/src/core/de.evoal.core.main/src/main/java/de/evoal/core/main/statistics/fitness/FitnessStatistics.java @@ -4,6 +4,7 @@ import de.evoal.core.api.board.CoreBlackboardEntries; import de.evoal.core.api.cdi.BlackboardValue; import de.evoal.core.api.ea.fitness.comparator.FitnessValue; import de.evoal.core.api.properties.Properties; +import de.evoal.core.api.properties.PropertiesSpecification; import de.evoal.core.api.statistics.*; import de.evoal.languages.model.instance.Instance; import io.jenetics.Phenotype; @@ -28,8 +29,9 @@ import java.util.List; public class FitnessStatistics implements StatisticsWriter { @Inject + @Named("optimization-function-output") @BlackboardValue(CoreBlackboardEntries.TARGET_PROPERTIES) - private Provider<Properties> targetSpecification; + private Provider<PropertiesSpecification> targetSpecification; @Inject private WriterStrategy strategy; @@ -51,7 +53,7 @@ public class FitnessStatistics implements StatisticsWriter { columns.add(new Column("index", ColumnType.Integer)); for(int i = 0; i < targetSpecification.get().size(); ++i) { - columns.add(new Column("fitness-value-" + targetSpecification.get().getSpecification().get(i).name(), ColumnType.Double)); + columns.add(new Column("fitness-value-" + targetSpecification.get().get(i).name(), ColumnType.Double)); } writer = strategy.create("fitness-by-individual", columns); -- GitLab