Exemplo n.º 1
0
        public static bool Test_And(Perceptron perceptron, bool verbose = false)
        {
            bool isTrained = true;

            if (verbose)
            {
                ConsoleHelper.WriteYellowLine("Testing perceptron for and function");
                ConsoleHelper.WriteLine("x1 | x2 | y | decision");
            }
            foreach (var to in andTraingData)
            {
                var solution = to.Solution;
                if (perceptron.IsBipolar && solution == 0)
                {
                    solution = -1;
                }
                var decision = perceptron.Feedforward(to.Input);
                if (verbose)
                {
                    ConsoleHelper.Write(to.Input[0].ToString().PadRight(3) + "|");
                    ConsoleHelper.Write(" " + to.Input[1].ToString().PadRight(3) + "|");
                    ConsoleHelper.Write(" " + solution.ToString().PadRight(2) + "|");
                    ConsoleHelper.Write(" " + decision);
                    ConsoleHelper.Write(decision == solution ? "" : " [x]");
                    ConsoleHelper.WriteLine();
                }
                if (isTrained)
                {
                    isTrained = decision == solution;
                }
            }
            return(isTrained);
        }