45#include "learn/evaluationResult.h"
46#include "log/logger.h"
47#include "tpg/tpgGraph.h"
71 std::shared_ptr<std::chrono::time_point<
72 std::chrono::system_clock, std::chrono::nanoseconds>>
const start;
78 std::shared_ptr<std::chrono::time_point<std::chrono::system_clock,
79 std::chrono::nanoseconds>>
116 const std::chrono::time_point<std::chrono::system_clock,
117 std::chrono::nanoseconds>& begin)
125 std::chrono::time_point<std::chrono::system_clock,
126 std::chrono::nanoseconds>
158 std::ostream& out = std::cout);
200 std::multimap<std::shared_ptr<Learn::EvaluationResult>,
220 std::multimap<std::shared_ptr<Learn::EvaluationResult>,
Class used to control the learning steps of a TPGGraph within a given LearningEnvironment.
Definition learningAgent.h:67
Learning Agent logger class that will be called during LearningAgent executions.
Definition laLogger.h:65
double mutationTime
Definition laLogger.h:86
std::chrono::time_point< std::chrono::system_clock, std::chrono::nanoseconds > getTime() const
Gets the current time value, for example to set checkpoint.
Definition laLogger.cpp:48
bool useUtility
Definition laLogger.h:139
virtual void logAfterPopulateTPG()
Method called by the Learning Agent right after PopulateTPG is done.
Definition laLogger.h:188
bool detailedTiming
Boolean telling the logger if the training has additional timers.
Definition laLogger.h:143
void chronoFromNow()
Updates checkpoint to now.
Definition laLogger.cpp:63
double validTime
Definition laLogger.h:98
virtual void logEndOfTraining()
Method called by the Learning Agent when the training is done.
Definition laLogger.h:228
Learn::LearningAgent & learningAgent
LearningAgent logged by the LALogger.
Definition laLogger.h:107
virtual void logNewGeneration(uint64_t &generationNumber)
Method called by the LearningAgent at the start of a generation.
Definition laLogger.h:179
virtual void logAfterEvaluate(std::multimap< std::shared_ptr< Learn::EvaluationResult >, const TPG::TPGVertex * > &results)
Method called by the Learning Agent right after the evaluation is done.
Definition laLogger.h:199
virtual void logAfterDecimate()
Method called by the Learning Agent right after the decimation is done.
Definition laLogger.h:209
LALogger(Learn::LearningAgent &la, std::ostream &out=std::cout)
Constructor defining a given output and setting start and checkpoint as now. Default output is cout.
Definition laLogger.cpp:53
double getDurationFrom(const std::chrono::time_point< std::chrono::system_clock, std::chrono::nanoseconds > &begin) const
Computes the duration from a given time to now.
Definition laLogger.cpp:40
virtual void logAfterValidate(std::multimap< std::shared_ptr< Learn::EvaluationResult >, const TPG::TPGVertex * > &results)
Method called by the Learning Agent right after the validation is done.
Definition laLogger.h:219
double decimationTime
Definition laLogger.h:104
std::shared_ptr< std::chrono::time_point< std::chrono::system_clock, std::chrono::nanoseconds > > const start
Definition laLogger.h:72
std::shared_ptr< std::chrono::time_point< std::chrono::system_clock, std::chrono::nanoseconds > > checkpoint
Definition laLogger.h:80
bool doValidation
Definition laLogger.h:133
double evalTime
Definition laLogger.h:92
virtual void logHeader()
Logs the header (e.g. column names) of this logger.
Definition laLogger.h:168
Abstract class representing the vertices of a TPGGraph.
Definition tpgVertex.h:55
Definition classificationLearningEnvironment.h:44
Definition cycleDetectionLALogger.h:38