public void WymyślPrzykładyUczące() { przykłady = new PrzykładUczący[Globals.IlośćPrzykładówUczących]; for (int i = 0; i < przykłady.Length; ++i) { przykłady[i] = new PrzykładUczący(); } }
public void UczSię() { for (int i = 0; i < Globals.IlośćKrokówUczenia; ++i) { PrzykładUczący przykład = LosujPrzykład(); double[] x = new double[] { przykład.Punkt.X, przykład.Punkt.Y, 1 }; PrzebiegajWprzód(x); double[] t = new double[] { przykład.Kąty.Alfa, przykład.Kąty.Beta }; PrzebiegajDoTyłu(t); ZmieńWagi(); } }
internal RękaRobota DajOdpowiedź(Point p) { var znormalizowany = PrzykładUczący.NormalizujPunkt(p); //Debug.WriteLine("punkt na wejściu: {0}, {1}", p.X, p.Y); int Ostatnia = Warstwy.Count - 1; double[] x = new double[] { znormalizowany.X, znormalizowany.Y, 1 }; PrzebiegajWprzód(x); Kąty kąty = new Kąty(Warstwy[Ostatnia][0].Wyjście, Warstwy[Ostatnia][1].Wyjście); Debug.WriteLine("wynik: {0}, {1}", kąty.Alfa.ToString(), kąty.Beta.ToString()); var zdenormalizowane = PrzykładUczący.DenormalizujKąty(kąty); //Debug.WriteLine("wynik: {0}, {1}", kąty.Alfa.ToString(), kąty.Beta.ToString()); return(RękaRobota.ZamieńKątyNaRękęRobota(zdenormalizowane)); }