public void AddNeuron(CPPNNetworkNeuron neuron)
        {
            Neurons.Add(neuron);

            if (neuron is CPPNInputNeuron)
            {
                inputNeurons.Add((CPPNInputNeuron)neuron);
            }
            else if (neuron.GetType() == typeof(CPPNOutputNeuron))
            {
                outputNeuron = (CPPNOutputNeuron)neuron;
            }
            else if (neuron.GetType() == typeof(CPPNHiddenNeuron))
            {
                hiddenNeurons.Add((CPPNHiddenNeuron)neuron);
            }
        }
        public void Update()
        {
            switch (Type)
            {
            case CPPNNeuronType.Input:
                Phene = new CPPNInputNeuron();
                break;

            case CPPNNeuronType.Output:
                Phene = new CPPNOutputNeuron(ActivationFunction.Function);
                break;

            case CPPNNeuronType.Hidden:
                Phene = new CPPNHiddenNeuron(ActivationFunction.Function);
                break;

            case CPPNNeuronType.Bias:
                Phene = new CPPNBiasNeuron();
                break;
            }
        }
        public void Update()
        {
            switch (Type)
            {
                case CPPNNeuronType.Input:
                    Phene = new CPPNInputNeuron();
                    break;

                case CPPNNeuronType.Output:
                    Phene = new CPPNOutputNeuron(ActivationFunction.Function);
                    break;

                case CPPNNeuronType.Hidden:
                    Phene = new CPPNHiddenNeuron(ActivationFunction.Function);
                    break;

                case CPPNNeuronType.Bias:
                    Phene = new CPPNBiasNeuron();
                    break;
            }
        }
        public void AddNeuron(CPPNNetworkNeuron neuron)
        {
            Neurons.Add(neuron);

            if (neuron is CPPNInputNeuron)
            {
                inputNeurons.Add((CPPNInputNeuron)neuron);
            }
            else if (neuron.GetType() == typeof(CPPNOutputNeuron))
            {
                outputNeuron = (CPPNOutputNeuron)neuron;
            }
            else if (neuron.GetType() == typeof(CPPNHiddenNeuron))
            {
                hiddenNeurons.Add((CPPNHiddenNeuron)neuron);
            }
        }