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 --- include/brain/bias_node.h | 7 +++++-- include/brain/neural_node.h | 14 +++++--------- include/brain/neuron.h | 5 +---- include/brain/sensor.h | 11 ++++------- 4 files changed, 15 insertions(+), 22 deletions(-) (limited to 'include') diff --git a/include/brain/bias_node.h b/include/brain/bias_node.h index 501a0a0..8920eb3 100644 --- a/include/brain/bias_node.h +++ b/include/brain/bias_node.h @@ -5,6 +5,9 @@ class BiasNode: public NeuralNode { public: - BiasNode(); - virtual double activation() const { return 1; } + BiasNode() + { + _activation = 1; + _activationChanged = false; + } }; diff --git a/include/brain/neural_node.h b/include/brain/neural_node.h index c7b4335..57523eb 100644 --- a/include/brain/neural_node.h +++ b/include/brain/neural_node.h @@ -3,13 +3,9 @@ class NeuralNode { public: - NeuralNode(char type, int id); - - virtual double activation() const = 0; - - char type() const { return _type; } - int id() const { return _id; } -private: - char _type; - int _id; + double activation() const { return _activation; } + bool activationChanged() const { return _activationChanged; } +protected: + double _activation; + bool _activationChanged; }; diff --git a/include/brain/neuron.h b/include/brain/neuron.h index d017b0d..2746372 100644 --- a/include/brain/neuron.h +++ b/include/brain/neuron.h @@ -9,11 +9,8 @@ class Neuron : public NeuralNode { public: - Neuron(int id); - virtual ~Neuron() {} - virtual double activation() const; - void addInput(std::unique_ptr&& link); + void calculateActivation(); private: std::vector> _inputLinks; diff --git a/include/brain/sensor.h b/include/brain/sensor.h index b33080b..652ce07 100644 --- a/include/brain/sensor.h +++ b/include/brain/sensor.h @@ -5,12 +5,9 @@ class Sensor: public NeuralNode { public: - Sensor(int id); - virtual ~Sensor() {} - + Sensor() + { + _activationChanged = false; + }; void setActivation(double activation) { _activation = activation; } - virtual double activation() const { return _activation; } - -private: - double _activation; }; -- cgit v1.2.3