From dec879498fc0b74ba3da8e111d2cbe0f1249c228 Mon Sep 17 00:00:00 2001 From: Rowan Torbitzky-Lane Date: Tue, 25 Feb 2025 14:59:34 -0600 Subject: [PATCH] more gpLoop' progress --- src/HushGP/GP.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/HushGP/GP.hs b/src/HushGP/GP.hs index f805a80..5f74f19 100644 --- a/src/HushGP/GP.hs +++ b/src/HushGP/GP.hs @@ -33,7 +33,7 @@ gpLoop pushArgs = do unEvaledPopulation <- generatePopulation pushArgs -- let evaledPop = evaluatePopulation pushArgs unEvaledPopulation -- print evaledPop - print "gamer" + print "placeholder for now" -- | The guts of the GP loop. Where the work gets done after the initialization happens -- in the main gpLoop function. The first Int holds the generation count. The second Int @@ -58,7 +58,7 @@ gpLoop' pushArgs generation evaluations population indexedTrainingData = do print "Incomplete Run, saving the best so far." | otherwise = gpLoop' pushArgs (succ generation) (evaluations + (populationSize pushArgs * length (fst $ trainingData pushArgs)) + (if generation `mod` downsampleParentsGens pushArgs == 0 then length parentReps * (length (fst indexedTrainingData) - length (fst $ trainingData pushArgs)) else 0) + (if bestIndPassesDownsample then length (fst indexedTrainingData) - length (fst $ trainingData pushArgs) else 0)) - (if elitism then ) + (if elitism then bestInd : ) nextAction where -- \| This will have downsampling added to it later.