summaryrefslogtreecommitdiff
path: root/include/brain
diff options
context:
space:
mode:
authorJustin Wernick <justin@worthe-it.co.za>2022-04-19 21:24:15 +0200
committerJustin Wernick <justin@worthe-it.co.za>2022-04-19 21:24:15 +0200
commit8eebf1079fbed2848ee47cf990f5def5926a0c1f (patch)
treeb51a6cc24fb900c717bf479d357a9ae8a98e07ef /include/brain
parent550caeee11086bd56db69176b3149ddfa160ee30 (diff)
Refile for merging repos
Diffstat (limited to 'include/brain')
-rw-r--r--include/brain/bias_node.h12
-rw-r--r--include/brain/neural_link.h17
-rw-r--r--include/brain/neural_network.h41
-rw-r--r--include/brain/neural_node.h18
-rw-r--r--include/brain/neuron.h22
-rw-r--r--include/brain/sensor.h10
6 files changed, 0 insertions, 120 deletions
diff --git a/include/brain/bias_node.h b/include/brain/bias_node.h
deleted file mode 100644
index 77c5884..0000000
--- a/include/brain/bias_node.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#pragma once
-
-#include "brain/neural_node.h"
-
-class BiasNode: public NeuralNode
-{
-public:
-BiasNode() : NeuralNode("b0")
- {
- _activation = 1;
- }
-};
diff --git a/include/brain/neural_link.h b/include/brain/neural_link.h
deleted file mode 100644
index 14f58b9..0000000
--- a/include/brain/neural_link.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#pragma once
-
-#include "neural_node.h"
-
-class NeuralLink
-{
-public:
- NeuralLink(NeuralNode* input, double weight);
- double weightedActivation() const;
-
- double weight() const { return _weight; }
- std::string inputIdentifier() const { return _input->identifier(); }
-
-private:
- NeuralNode* _input;
- double _weight;
-};
diff --git a/include/brain/neural_network.h b/include/brain/neural_network.h
deleted file mode 100644
index 7fcf5f4..0000000
--- a/include/brain/neural_network.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#pragma once
-
-#include <memory>
-#include <istream>
-#include <vector>
-#include <map>
-#include <string>
-
-#include "brain/neural_node.h"
-#include "brain/sensor.h"
-#include "brain/bias_node.h"
-#include "brain/neuron.h"
-
-class NeuralNetwork
-{
-public:
- NeuralNetwork(std::istream &&networkConfigFile, unsigned int numberOfSensors, unsigned int numberOfOutputs);
- NeuralNetwork(std::istream &&networkConfigFile, std::vector<bool> sensorInitialValues, unsigned int numberOfOutputs);
-
- void setInput(unsigned int inputIndex, double activation);
- unsigned int findMaxOutputIndex() const;
-
- unsigned int numberOfSensors() const { return _sensors.size(); }
- unsigned int numberOfOutputs() const { return _outputs.size(); }
- unsigned int numberOfNeurons() const { return _neurons.size(); }
-
- bool linkExists(std::string srcIdentifier, std::string destIdentifier, double weight) const;
-
-private:
- std::vector<std::shared_ptr<Sensor>> _sensors;
- std::shared_ptr<BiasNode> _biasNode;
- std::vector<std::shared_ptr<Neuron>> _neurons;
- std::vector<std::shared_ptr<Neuron>> _outputs;
-
- void parseFile(std::istream &&file);
-
- void addLink(std::shared_ptr<NeuralNode> source, std::shared_ptr<Neuron> destination, double weight);
- std::shared_ptr<Sensor> findOrAddSensor(unsigned int id);
- std::shared_ptr<Neuron> findOrAddNeuron(unsigned int id);
-};
-
diff --git a/include/brain/neural_node.h b/include/brain/neural_node.h
deleted file mode 100644
index 2684146..0000000
--- a/include/brain/neural_node.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#pragma once
-
-#include <string>
-
-class NeuralNode
-{
-public:
- double activation() const { return _activation; }
- std::string identifier() const { return _identifier; }
-
-NeuralNode(std::string identifier): _identifier(identifier) {}
-
-protected:
- double _activation;
-
-private:
- std::string _identifier;
-};
diff --git a/include/brain/neuron.h b/include/brain/neuron.h
deleted file mode 100644
index ca26c73..0000000
--- a/include/brain/neuron.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#pragma once
-
-#include <memory>
-#include <vector>
-
-#include "neural_node.h"
-#include "neural_link.h"
-
-class Neuron : public NeuralNode
-{
-public:
- void addInput(NeuralLink&& link);
- bool calculateActivation();
-
-Neuron(int index) : NeuralNode('n'+std::to_string(index)){};
-
- bool hasInputWithWeight(std::string srcIdentifier, double weight) const;
-
-private:
- std::vector<NeuralLink> _inputLinks;
- double sigmoid(double input) const;
-};
diff --git a/include/brain/sensor.h b/include/brain/sensor.h
deleted file mode 100644
index 10f62a7..0000000
--- a/include/brain/sensor.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#pragma once
-
-#include "brain/neural_node.h"
-
-class Sensor: public NeuralNode
-{
-public:
-Sensor(int index) :NeuralNode('s'+std::to_string(index)){}
- void setActivation(double activation) { _activation = activation; }
-};