summaryrefslogtreecommitdiff
path: root/include/brain/neural_network.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/brain/neural_network.h')
-rw-r--r--include/brain/neural_network.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/brain/neural_network.h b/include/brain/neural_network.h
new file mode 100644
index 0000000..d62112c
--- /dev/null
+++ b/include/brain/neural_network.h
@@ -0,0 +1,20 @@
+#pragma once
+
+#include <memory>
+#include <istream>
+#include <vector>
+
+class NeuralNetwork
+{
+public:
+ NeuralNetwork(std::istream &&networkConfigFile, int numberOfSensors, int numberOfOutputs);
+
+ void setInput(int inputIndex, double activation);
+ int findOutputIndex();
+
+private:
+ std::vector<std::shared_ptr<Neuron>> _neurons;
+ std::vector<std::shared_ptr<SensorNeuron>> _sensors;
+ std::vector<std::shared_ptr<Neuron>> _outputs;
+};
+