public SynapseDomain(NeuronDomain inputNeuron, NeuronDomain outputNeuron, double weight) { InputNeuron = inputNeuron; inputNeuron.OutputSynapses.Add(this); OutputNeuron = outputNeuron; OutputNeuron.InputSynapses.Add(this); Weight = weight; }
//TODO use test fixture private NeuralNetworkDomain GetNeuralNet() { var neuron1 = new NeuronDomain { IdNeuron = 1, DataOut = 1, NeuralNetId = 1, NeuronType = NeuronType.InputNeuronType }; var neuron2 = new NeuronDomain { IdNeuron = 2, DataOut = 0, NeuralNetId = 1, NeuronType = NeuronType.InputNeuronType }; var neuron3 = new NeuronDomain { IdNeuron = 3, NeuralNetId = 1, NeuronType = NeuronType.FirstLayerHiddenNeuronType }; var neuron4 = new NeuronDomain { IdNeuron = 4, NeuralNetId = 1, NeuronType = NeuronType.FirstLayerHiddenNeuronType }; var neuron5 = new NeuronDomain { IdNeuron = 5, NeuralNetId = 1, NeuronType = NeuronType.OutputNeuronType }; var synapse1 = new SynapseDomain(neuron1, neuron3, 0.45) { IdSynapse = 1, NeuralNetId = 1, }; var synapse2 = new SynapseDomain(neuron1, neuron4, 0.78) { IdSynapse = 2, NeuralNetId = 1, }; var synapse3 = new SynapseDomain(neuron2, neuron3, -0.12) { IdSynapse = 3, NeuralNetId = 1, }; var synapse4 = new SynapseDomain(neuron2, neuron4, 0.13) { IdSynapse = 4, NeuralNetId = 1, }; var synapse5 = new SynapseDomain(neuron3, neuron5, 1.5) { IdSynapse = 5, NeuralNetId = 1, }; var synapse6 = new SynapseDomain(neuron4, neuron5, -2.3) { IdSynapse = 6, NeuralNetId = 1, }; return(new NeuralNetworkDomain { Id = 1, LearningSpeed = 0.7, Moment = 0.3, MSEcounter = 0, ErrorMSE = 0, Neurons = new List <NeuronDomain> { neuron1, neuron2, neuron3, neuron4, neuron5, }, Synapses = new List <SynapseDomain> { synapse1, synapse2, synapse3, synapse4, synapse5, synapse6 } }); }