The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

AI::FANN::Evolving - artificial neural network that evolves

METHODS

new

Constructor requires 'file', or 'data' and 'neurons' arguments. Optionally takes 'connection_rate' argument for sparse topologies. Returns a wrapper around AI::FANN.

template

Uses the object as a template for the properties of the argument, e.g. $ann1->template($ann2) applies the properties of $ann1 to $ann2

recombine

Recombines (exchanges) properties between the two objects at the provided rate, e.g. $ann1->recombine($ann2,0.5) means that on average half of the object properties are exchanged between $ann1 and $ann2

mutate

Mutates the object by the provided mutation rate

defaults

Getter/setter to influence default ANN configuration

clone

Clones the object

train

Trains the AI on the provided data object

enum_properties

Returns a hash whose keys are names of enums and values the possible states for the enum

error

Getter/setter for the error rate. Default is 0.0001

epochs

Getter/setter for the number of training epochs, default is 500000

epoch_printfreq

Getter/setter for the number of epochs after which progress is printed. default is 1000

neurons

Getter/setter for the number of neurons. Default is 15

neuron_printfreq

Getter/setter for the number of cascading neurons after which progress is printed. default is 10

train_type

Getter/setter for the training type: 'cascade' or 'ordinary'. Default is ordinary

activation_function

Getter/setter for the function that maps inputs to outputs. default is FANN_SIGMOID_SYMMETRIC