Beispiel #1
0
        static void Main(string[] args)
        {
            Console.Title = "Neural Network Testing";

            // Testing Neural Network giving it 3 input values for 100 times (testing with 520 neurons)
            Random random = new Random();

            for (int i = 0; i < 100; i++)
            {
                NeuroNetwork net    = new NeuroNetwork(3, new int[] { 100, 200, 200, 20 }, 1, random);
                double[]     result = net.elaborate(new double[] { 0, .5, 0 });
                foreach (double r in result)
                {
                    if (r < .3)
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                    }
                    else if (r > .7)
                    {
                        Console.ForegroundColor = ConsoleColor.Green;
                    }
                    else
                    {
                        Console.ForegroundColor = ConsoleColor.White;
                    }
                    Console.WriteLine(r);
                }
                System.Threading.Thread.Sleep(10);
            }

            Console.ForegroundColor = ConsoleColor.White;
            Console.Write("\nPress a key to exit...");
            Console.ReadLine();
        }
Beispiel #2
0
 private void GenerateWeights(int weights)
 {
     for (int i = 0; i < weights; i++)
     {
         Weights[i] = NeuroNetwork.GetRandomWeight();
     }
 }
Beispiel #3
0
        public void NtwrkSolve()
        {
            StringBuilder sb = new StringBuilder();

            NeuroNetwork n = new NeuroNetwork();

            Dictionary <int, NeuroSignal> input  = new Dictionary <int, NeuroSignal>();
            Dictionary <int, NeuroSignal> output = new Dictionary <int, NeuroSignal>();

            input.Add(0, new NeuroSignal(0, 0.9)); output.Add(0, new NeuroSignal(0));
            input.Add(1, new NeuroSignal(1, 0.1)); output.Add(1, new NeuroSignal(1));
            input.Add(2, new NeuroSignal(2, 0.8)); output.Add(2, new NeuroSignal(2));

            #region -> Log input data
            {
                sb.Append("Input data:   {");
                foreach (INeuroTransmitter val in input.Values)
                {
                    sb.AppendFormat("  {0}", val);
                }
                sb.Append("  }");
                sb.AppendLine();
            }
            #endregion

            n.ProcessData(input.Values);

            #region -> Log output data
            {
                sb.Append("Iteration #1: {");
                foreach (INeuroTransmitter val in n.SynapticKnobs)
                {
                    sb.AppendFormat("  {0}", val);
                }
                sb.Append("  }");
                sb.AppendLine();
            }
            #endregion

            string txActual = sb.ToString();
            string txExpctd = Data.CalculationLog;

            CompareResult(
                txActual, txExpctd, subDirName,
                "Calculation", "Calculation log changed");
        }