GEGELATI

Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
Selector::SelectionMetrics Class Reference

Class to extract metrics from either the agent or the environment. More...

`#include <selectionMetrics.h>`

Inheritance diagram for Selector::SelectionMetrics:

## Public Member Functions
| SelectionMetrics ()=default
| Default constructor.
| SelectionMetrics (double score, double utility=0)
| Constructor with score and utility initialization.
virtual double | getScore () const
virtual double | getUtility () const
virtual void | initMetrics (const TPG::TPGVertex *agent, const Learn::LearningEnvironment &learningEnvironment)
| Init the metrics for the agent in the learning environment.
virtual void | extractMetricsStep (const TPG::TPGVertex *agent, std::vector< double > actionValues, const Learn::LearningEnvironment &learningEnvironment)
| Extract metrics from the agent in the learning environment.
virtual void | extractMetricsEpisode (const TPG::TPGVertex *agent, size_t nbStepsExecuted, const Learn::LearningEnvironment &learningEnvironment)
| Extract metrics from the agent in the learning environment.
virtual void | weightedSum (std::shared_ptr< SelectionMetrics > other, size_t nbEvaluation, size_t nbEvaluationOther)
| Perform a weighted sum between this SelectionMetrics and another.

## Protected Attributes
double | score = 0
double | utility = 0

## Detailed Description

Class to extract metrics from either the agent or the environment.

This metrics can be used to specify the selection of the selector. This class does not implement any metrics, it need to be override by the different selection methods.

## Constructor & Destructor Documentation

## ◆ SelectionMetrics()

Selector::SelectionMetrics::SelectionMetrics | ( | double | score,
|  | double | utility = 0 )
| inline

Constructor with score and utility initialization.

Parameters

  [in] | score | the score obtained by the agent.
  [in] | utility | the utility obtained by the agent.

## Member Function Documentation

## ◆ extractMetricsEpisode()

void Selector::SelectionMetrics::extractMetricsEpisode | ( | const TPG::TPGVertex * | agent,
|  | size_t | nbStepsExecuted,
|  | const Learn::LearningEnvironment & | learningEnvironment )
| virtual

Extract metrics from the agent in the learning environment.

This method is called at the end of every episode of the environment evaluation.

Parameters

  [in] | agent | the TPGVertex representing the agent.
  [in] | nbStepsExecuted | number of steps executed at the end of the episode.
  [in] | learningEnvironment | the learning environment in which the agent is evaluated.

Reimplemented in Selector::ClassificationSelectionMetrics, and Selector::MapElites::MapElitesSelectionMetrics.

## ◆ extractMetricsStep()

virtual void Selector::SelectionMetrics::extractMetricsStep | ( | const TPG::TPGVertex * | agent,
|  | std::vector< double > | actionValues,
|  | const Learn::LearningEnvironment & | learningEnvironment )
| inline virtual

Extract metrics from the agent in the learning environment.

This method is called at every step of the environment evaluation.

Parameters

  [in] | agent | the TPGVertex representing the agent.
  [in] | actionValues | the action values taken by the agent.
  [in] | learningEnvironment | the learning environment in which the agent is evaluated.

Reimplemented in Selector::MapElites::MapElitesSelectionMetrics.

## ◆ getScore()

double Selector::SelectionMetrics::getScore | ( |  | ) | const
| virtual

Return the score of the agent.

## ◆ getUtility()

double Selector::SelectionMetrics::getUtility | ( |  | ) | const
| virtual

Return the utility of the agent.

## ◆ initMetrics()

virtual void Selector::SelectionMetrics::initMetrics | ( | const TPG::TPGVertex * | agent,
|  | const Learn::LearningEnvironment & | learningEnvironment )
| inline virtual

Init the metrics for the agent in the learning environment.

This method is called at the beginning of the evaluateJob method.

Parameters

  [in] | agent | the TPGVertex representing the agent.
  [in] | learningEnvironment | the learning environment in which the agent is evaluated.

Reimplemented in Selector::ClassificationSelectionMetrics, and Selector::MapElites::MapElitesSelectionMetrics.

## ◆ weightedSum()

void Selector::SelectionMetrics::weightedSum | ( | std::shared_ptr< SelectionMetrics > | other,
|  | size_t | nbEvaluation,
|  | size_t | nbEvaluationOther )
| virtual

Perform a weighted sum between this SelectionMetrics and another.

Parameters

  [in] | other | the other SelectionMetrics to combine with this.
  [in] | nbEvaluation | the number of evaluation used to obtain this SelectionMetrics.
  [in] | nbEvaluationOther | the number of evaluation used to obtain the other SelectionMetrics.

Reimplemented in Selector::ClassificationSelectionMetrics, and Selector::MapElites::MapElitesSelectionMetrics.

## Member Data Documentation

## ◆ score

double Selector::SelectionMetrics::score = 0
| protected

Score obtained by the agent at the end of an episode

## ◆ utility

double Selector::SelectionMetrics::utility = 0
| protected

Double value for the utility. Utility is used only if the LearningEnvironment override the specific method. The utility represent a score needed for logs but not for learning.

It can be used for comparison with different score rules for example.

The documentation for this class was generated from the following files:

- D:/a/gegelati/gegelati/gegelatilib/include/selector/selectionMetrics.h
- D:/a/gegelati/gegelati/gegelatilib/src/selector/selectionMetrics.cpp