GeoGebra is dynamic mathematics software for all levels of education that joins arithmetic, geometry, algebra and calculus. On the one hand, GeoGebra is an interactive geometry system. You can do constructions with points, vectors, segments, lines, conic sections as well as functions and change them dynamically afterwards. On the other hand, equations and coordinates can be entered directly. Thus, GeoGebra has the ability to deal with variables for numbers, vectors and points, finds derivatives and integrals of functions and offers commands like Root or Extremum. These two views are characteristic of GeoGebra: an expression in the algebra view corresponds to an object in the graphics view and vice versa.
A. Brew, D. Greene, and P. Cunningham. Proceedings of the 19th European Conference on Artificial Intelligence, volume 215 of Frontiers in Artificial Intelligence and Applications, page 145--150. Amsterdam, The Netherlands, The Netherlands, IOS Press, (2010)
J. Werfel, X. Xie, and H. Seung. In, MIT Press, (2003)Discussion of learning curves for stochastic gradient descent.
Besides gradient based approaches, the paper shortly describes (with additional references) weight perturbation and node perturbation approaches..