#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 { double activationSum = 0; for (auto const& link : _inputLinks) { activationSum += link->weightedActivation(); } return sigmoid(activationSum); } void Neuron::addInput(std::unique_ptr&& link) { _inputLinks.push_back(std::move(link)); }