George:
a Lego Mindstorms Intelligent Robot


Visual C++ source code
Note: it requires GLUT package, which is comprised in the zip archive, but it needs to be "installed" in the system (i.e. move the files to the proper locations). Let me know if you need help (stefano@ucsd.edu).

Structure of the code:

george.c	All the OpenGL graphics code and the insterface to the
		user.

path.c		The library of functions used to handle the path composed
		or Bezier curves. Functions to draw it and to detect
		the distance from a point to the curve.

simulation.c	The library of functions used to simulate the world.
		The functions that update George's position basing on
		the forces applied to the wheels, and so on...

nnet.c		The neural network. Activation, backpropagation,
		reinforcement, mutation and so on...

nnet-util.c	nnet related stuff: loading and saving nnet to the disk,
		creating random nnets, and so on...

experiment.c	The various experiments: reinforcement learning, genetic
		evolution, and so on...
PostScript documentation (or LaTeX sources)