# Types

## Equations

Equations are specified as binary trees with the Node type. Operators defined in Base are re-defined for Node types, so that one can use, e.g., t=Node(1) * 3f0 to create a tree.

## Population

Groups of equations are given as a population, which is an array of trees tagged with score, loss, and birthdate–-these values are given in the PopMember.

## Population members

SymbolicRegression.PopMemberModule.PopMemberMethod
PopMember(t::Node, score::T, loss::T)

Create a population member with a birth date at the current time.

Arguments

• t::Node: The tree for the population member.
• score::T: The score (normalized to a baseline, and offset by a complexity penalty)
• loss::T: The raw loss to assign.
source
SymbolicRegression.PopMemberModule.PopMemberMethod
PopMember(dataset::Dataset{T}, baseline::T,
t::Node, options::Options)

Create a population member with a birth date at the current time. Automatically compute the score for this tree.

Arguments

• dataset::Dataset{T}: The dataset to evaluate the tree on.
• baseline::T: The baseline loss.
• t::Node: The tree for the population member.
• options::Options: What options to use.
source

## Hall of Fame

SymbolicRegression.HallOfFameModule.HallOfFameMethod
HallOfFame(options::Options)

Create empty HallOfFame. The HallOfFame stores a list of PopMember objects in .members, which is enumerated by size (i.e., .members[1] is the constant solution). .exists is used to determine whether the particular member has been instantiated or not.

source