summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJustin Worthe <justin.worthe@gmail.com>2015-08-16 00:18:29 +0200
committerJustin Worthe <justin.worthe@gmail.com>2015-08-16 00:18:29 +0200
commit82a21657fb29ae8afba479fb821b47b5eeb608fb (patch)
tree5643cc274bd050b49ac94f83d347df0d7d2751d7 /include
parent43e9f647533d239d68d06fe96867c033dd7504c5 (diff)
Made neural net recurrent
Diffstat (limited to 'include')
-rw-r--r--include/brain/bias_node.h7
-rw-r--r--include/brain/neural_node.h14
-rw-r--r--include/brain/neuron.h5
-rw-r--r--include/brain/sensor.h11
4 files changed, 15 insertions, 22 deletions
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<NeuralLink>&& link);
+ void calculateActivation();
private:
std::vector<std::unique_ptr<NeuralLink>> _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;
};