/// <summary> /// Creates an instance of CompetitiveNeuron with specified input and transfer functions /// </summary> /// <param name="inputFunction">neuron input function</param> /// <param name="transferFunction">neuron ransfer function</param> public CompetitiveNeuron(InputFunction inputFunction, TransferFunction transferFunction) : base(inputFunction, transferFunction) { connectionsFromOtherLayers = new List<Connection>(); connectionsFromThisLayer = new List<Connection>(); this.AddInputConnection(this, 1); }
/// <summary> /// Creates an instance of neuron which can delay output /// </summary> /// <param name="inputFunction">neuron input function</param> /// <param name="transferFunction">neuron transfer function</param> public DelayedNeuron(InputFunction inputFunction, TransferFunction transferFunction) : base(inputFunction, transferFunction) { outputHistory = new List<Double>(5); // default delay buffer size is 5 outputHistory.Add(0); }
/// <summary> /// Creates a neuron with threshold behaviour, and with the specified input /// and transfer functions. /// </summary> /// <param name="inputFunction">input function for this neuron</param> /// <param name="transferFunction">transfer function for this neuron</param> public ThresholdNeuron(InputFunction inputFunction, TransferFunction transferFunction) { this.InputFunction = inputFunction; this.TransferFunction = transferFunction; this.Thresh = ThreadSafeRandom.NextDouble(); }
/// <summary> /// Creates an instance of neuron for Hopfield network with specified input /// and transfer functions /// </summary> /// <param name="inFunc">neuron input function</param> /// <param name="transFunc">neuron transfer function</param> public InputOutputNeuron(InputFunction inFunc, TransferFunction transFunc) : base(inFunc, transFunc) { }
/// <summary> /// Creates an instance of Neuron with the specified input and transfer functions. /// </summary> /// <param name="inputFunction">input function for this neuron</param> /// <param name="transferFunction">transfer function for this neuron</param> public Neuron(InputFunction inputFunction, TransferFunction transferFunction) { this.InputFunction = inputFunction; this.TransferFunction = transferFunction; }