PySR / julia /run.jl
AutonLabTruth's picture
Refactored run
515c017
raw
history blame
975 Bytes
# Cycle through regularized evolution many times,
# printing the fittest equation every 10% through
function run(
pop::Population,
ncycles::Integer,
curmaxsize::Integer,
frequencyComplexity::Array{Float32, 1};
verbosity::Integer=0
)::Population
allT = LinRange(1.0f0, 0.0f0, ncycles)
for iT in 1:size(allT)[1]
if annealing
pop = regEvolCycle(pop, allT[iT], curmaxsize, frequencyComplexity)
else
pop = regEvolCycle(pop, 1.0f0, curmaxsize, frequencyComplexity)
end
if verbosity > 0 && (iT % verbosity == 0)
bestPops = bestSubPop(pop)
bestCurScoreIdx = argmin([bestPops.members[member].score for member=1:bestPops.n])
bestCurScore = bestPops.members[bestCurScoreIdx].score
debug(verbosity, bestCurScore, " is the score for ", stringTree(bestPops.members[bestCurScoreIdx].tree))
end
end
return pop
end