From 7d59da2dbed2cf4268eceb0312a5c46f6494ecbf Mon Sep 17 00:00:00 2001 From: BrunoDatoMeneses <bruno.dato.meneses@gmail.com> Date: Thu, 25 Jul 2019 15:29:09 +0200 Subject: [PATCH] ADD: calculate averageRegressionPerformanceIndicator once --- AMOEBAonAMAK/src/agents/head/Head.java | 12 ++++++++++-- AMOEBAonAMAK/src/kernel/AmoebaData.java | 2 ++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/AMOEBAonAMAK/src/agents/head/Head.java b/AMOEBAonAMAK/src/agents/head/Head.java index 13c44544..b4dd18b1 100644 --- a/AMOEBAonAMAK/src/agents/head/Head.java +++ b/AMOEBAonAMAK/src/agents/head/Head.java @@ -89,6 +89,7 @@ public class Head extends AmoebaAgent { setContextFromPropositionWasSelected(false); getAmas().data.oldOracleValue = getAmas().data.oracleValue; getAmas().data.oracleValue = getAmas().getPerceptions("oracle"); + setAverageRegressionPerformanceIndicator(); /* The head memorize last used context agent */ lastUsedContext = bestContext; @@ -1887,6 +1888,12 @@ public class Head extends AmoebaAgent { public Double getAverageRegressionPerformanceIndicator() { + return getAmas().data.averageRegressionPerformanceIndicator; + + } + + public void setAverageRegressionPerformanceIndicator() { + int numberOfRegressions = 0; if(activatedNeighborsContexts.size()>0) { double meanRegressionPerformanceIndicator = 0.0; @@ -1895,13 +1902,14 @@ public class Head extends AmoebaAgent { numberOfRegressions+=1; } assert numberOfRegressions != 0; - return (meanRegressionPerformanceIndicator/numberOfRegressions > getAmas().data.initRegressionPerformance) ? meanRegressionPerformanceIndicator/numberOfRegressions : getAmas().data.initRegressionPerformance; + getAmas().data.averageRegressionPerformanceIndicator = (meanRegressionPerformanceIndicator/numberOfRegressions > getAmas().data.initRegressionPerformance) ? meanRegressionPerformanceIndicator/numberOfRegressions : getAmas().data.initRegressionPerformance; } else{ - return getAmas().data.initRegressionPerformance; + getAmas().data.averageRegressionPerformanceIndicator = getAmas().data.initRegressionPerformance; } } + public void proposition(Context c) { activatedContexts.add(c); diff --git a/AMOEBAonAMAK/src/kernel/AmoebaData.java b/AMOEBAonAMAK/src/kernel/AmoebaData.java index d843af0d..5f2e57a8 100644 --- a/AMOEBAonAMAK/src/kernel/AmoebaData.java +++ b/AMOEBAonAMAK/src/kernel/AmoebaData.java @@ -78,4 +78,6 @@ public class AmoebaData implements Serializable { public double[] executionTimesSums = new double[20]; public double initRegressionPerformance = 1.0; + + public double averageRegressionPerformanceIndicator; } \ No newline at end of file -- GitLab