NAME

AI::ANN::Neuron - a neuron for an artificial neural network simulator

VERSION

version 0.008

METHODS

new

AI::ANN::Neuron->new( $neuronid, {$inputid => $weight, ...}, {$neuronid => $weight} )

Weights may be whatever the user chooses. Note that packages that use this one may place their own restructions. Neurons and inputs are assumed to be zero-indexed.

eta_inputs and eta_neurons are optional, required only if you wish to use the Gaussian mutation in AI::ANN::Evolver.

ready

$neuron->ready( [$input0, $input1, ...], [$neuronvalue0, ...] )

All inputs must be provided or you're insane. If a neuron is not yet available, make it undef, not zero. Returns 1 if ready, 0 otherwise.

execute

$neuron->execute( [$input0, $input1, ...], {$neuronid => $neuronvalue, ...} )

You /must/ pass the correct number of inputs and neurons, and undefined values /must/ be zeros, not undef. Returns raw value (linear potential)

AUTHOR

Dan Collins <DCOLLINS@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2011 by Dan Collins.

This is free software, licensed under:

The GNU General Public License, Version 3, June 2007