private void Button_Click(object sender, RoutedEventArgs e) { enabled = false; int iter; if (!int.TryParse(iter_input.Text, out iter)) { iter = 50000; } for (int i = 0; i < iter; i++) { choice = rnd.Next(3); if (i % 50000 == 0) { CheckForErrors(); } switch (choice) { case 0: { elem = rnd.Next(red_set_top.Length); p.Backpropagation(ref red_set_top[elem], ref ideal_red_top); break; } case 1: { elem = rnd.Next(blue_set.Length); p.Backpropagation(ref blue_set[elem], ref ideal_blue); break; } case 2: { elem = rnd.Next(red_set_bot.Length); p.Backpropagation(ref red_set_bot[elem], ref ideal_red_bot); break; } } } enabled = true; surface.InvalidateVisual(); p.PrintWeights(true); StreamWriter wr = new StreamWriter(@"./ErrorStatistics.txt", false); foreach (KeyValuePair <int, double> er in ErrorStatistics) { wr.WriteLine((1 + er.Key) * 50000 + " - " + er.Value); } wr.Close(); }