コード例 #1
0
ファイル: Shepherd.cs プロジェクト: michalRomanowski/Herding
        public Shepherd(
            int numberOfSeenShepherds,
            int numberOfSeenSheep,
            int numberOfNeuronsInHiddenLayer,
            int numberOfHiddenLayers,
            EPerceptionType perceptionType,
            bool randomizeNeuralNet)
            : this()
        {
            NumberOfSeenShepherds = numberOfSeenShepherds;
            NumberOfSeenSheep     = numberOfSeenSheep;
            perception            = PerceptionFactory.GetPerception(perceptionType);

            Brain = NeuralNetsFactory.GetMultiLayerNeuralNet(new NeuralNetParameters()
            {
                InputLayerSize       = (numberOfSeenShepherds + numberOfSeenSheep) * 2 + 2,
                OutputLayerSize      = NEURAL_NET_OUTPUT_LAYER_SIZE,
                HiddenLayerSize      = numberOfNeuronsInHiddenLayer,
                NumberOfHiddenLayers = numberOfHiddenLayers
            });

            if (randomizeNeuralNet)
            {
                Brain.Randomize();
            }
        }
コード例 #2
0
ファイル: Shepherd.cs プロジェクト: michalRomanowski/Herding
        public Shepherd(
            int numberOfSeenShepherds,
            int numberOfSeenSheep,
            EPerceptionType perceptionType,
            NeuralNet brain)
            : this()
        {
            NumberOfSeenShepherds = numberOfSeenShepherds;
            NumberOfSeenSheep     = numberOfSeenSheep;
            perception            = PerceptionFactory.GetPerception(perceptionType);

            Brain = brain;
        }
コード例 #3
0
 public static IPerception GetPerception(EPerceptionType perceptionType)
 {
     return(perceptionMap[perceptionType].Invoke());
 }