From 82a21657fb29ae8afba479fb821b47b5eeb608fb Mon Sep 17 00:00:00 2001 From: Justin Worthe Date: Sun, 16 Aug 2015 00:18:29 +0200 Subject: Made neural net recurrent --- src/brain/neuron.cpp | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'src/brain/neuron.cpp') diff --git a/src/brain/neuron.cpp b/src/brain/neuron.cpp index 527e7da..f4fa12f 100644 --- a/src/brain/neuron.cpp +++ b/src/brain/neuron.cpp @@ -1,25 +1,23 @@ #include "brain/neuron.h" #include -Neuron::Neuron(int id) - :NeuralNode('n', id) -{ -} - double Neuron::sigmoid(double input) const { double slope = 4.924273; return (1/(1+(std::exp(-(slope*input))))); } -double Neuron::activation() const +void Neuron::calculateActivation() { - double activationSum = 0; + double newActivation = 0; for (auto const& link : _inputLinks) { - activationSum += link->weightedActivation(); + newActivation += link->weightedActivation(); } - return sigmoid(activationSum); + newActivation = sigmoid(newActivation); + + _activationChanged = newActivation != _activation; + _activation = newActivation; } void Neuron::addInput(std::unique_ptr&& link) -- cgit v1.2.3