Ejemplo n.º 1
0
        public Brain(int input, int hidden1, int hidden2, int output, DNA parent = null)
        {
            Layers = new List <Layer>
            {
                new Layer(input, new Linear(), parent?.FullSequence[0]),

                new Layer(hidden1, new Sigmoid(), parent?.FullSequence[1]),
                new Layer(hidden2, new Sigmoid(), parent?.FullSequence[2]),

                new Layer(output, new Sigmoid(), parent?.FullSequence[3])
            };

            DNA = new DNA(1);
            DNA.Cut(0);
        }
Ejemplo n.º 2
0
        public static DNA CrossOver(DNA a, DNA b)
        {
            DNA parent = new DNA(1);

            parent.Cut(0);

            for (int i = 0; i < a.FullSequence.Count; i++)
            {
                DNA _combined = DNA.Combine(a.FullSequence[i], b.FullSequence[i]);
                parent.Add(_combined);
            }


            return(parent);
        }