devolve



alias  HiddenLayer = HiddenNeuron[];

Convenience alias


alias  InputLayer = InputNeuron[];

Convenience alias


alias  OutputLayer = OutputNeuron[];

Convenience alias


abstract class  Neuron;

Abstract class used to describe the neurons which make up the net.


abstract const double  eval();

Get the value of neuron.


abstract const Neuron  clone();

Create a copy of this node. The new node will be unconnected


alias  Connection = std.typecons.Tuple!(double, "weight", Neuron, "neuron").Tuple;

Convenience alias


Connection[]  connections;

Connected nodes


class  HiddenNeuron: devolve.net.network.Neuron;

Class for neurons which exist on the hidden, inner layers of the net.


const double  eval();

Find the value of the neuron by calculating the weighted sum of the connections


const HiddenNeuron  clone();

Create a new copy of the neuron


class  InputNeuron: devolve.net.network.Neuron;

Class for neurons which exist on the input side of the graph


const double  eval();

Returns the input neurons current value


const InputNeuron  clone();

Create a copy of the input neuron with its current value


double  val;

The current value of the input


class  OutputNeuron: devolve.net.network.Neuron;

Class for neurons which return the values


const double  eval();

Evaluate the net by calculating the weighted sum of the connections. Hyperbolic tangent is called on the sum to map it onto the range (-1, 1)


const OutputNeuron  clone();

Create a new copy of the neuron


class  Network;

Genome used with netGA. Represents a simple layered neural network with inputs and outputs as doubles


double[]  opCall(in double[] inputs);

Evaluate this network using the given inputs


const Network  clone();

Preform a deep copy of an existing network


HiddenLayer[]  hiddenLayers;

Array of inner layers


InputLayer  inputLayer;

Layer of input neurons


OutputLayer  outputLayer;

Array of output neurons