Machine Learning Laboratory Experiences for Introducing Undergraduates to Artificial Intelligence
NSF DUE CCLI-A&I Award Number 0409497


Character Recognition and Learning with Neural Networks




Neural networks have been applied to a wide variety of areas including speech synthesis, diagnostic problems, medicine, business and finance, robotics control, and signal processing. Neural networks have been shown to be particularly useful in solving problems where traditional artificial intelligence techniques involving symbolic methods have failed or proved inefficient. Such networks have shown promise in problems involving low-level tasks that are computationally intensive, including vision, character recognition, speech recognition, and many other problems that fall under the category of pattern recognition.


For some application areas including pattern recognition, neural models show promise in achieving human-like performance over more traditional artificial intelligence techniques.


This project introduces students to the basic neural network concepts and to neural models and learning. Students will implement basic types of neural networks as well as some important approaches to learning in order to solve a number of typical pattern recognition problems. 




The aim of this project is to provide students with knowledge and skills to understand implement and use basic neural network models. This will allow students to understand the role that neural networks play in the more general context of AI techniques and tools. In particular, the learning objectives of the project are the following: 

  • Learning the basics of single-layer neural networks and perceptron type models and their use as pattern associators.
  • Understanding the limitations of single-layer networks and introducing the basic types of multilayer networks as well as the backpropagation training algorithm.
  • Learning the mathematical foundations of the neural network computation.
  • Better understanding of the nature of problems that neural networks can solve.
  • Gaining experience in implementing neural network algorithms for solving basic pattern recognition problems.
  • Better understanding of the differences between the neural network approach to solving AI problems and those based on classical symbolic knowledge representation, Search and Learning.


Students should have basic knowledge of algebra and discrete mathematics. Another prerequisite is the data structures course which will help in the design of the neural network programs. Experience with a programming language such as Java or C++ is required so that the students can implement and test the neural network models and successfully complete the project deliverables.



For an introduction to neural networks, students can read the corresponding chapter in any good AI book. For example, one might assign Section 20.5 of:

or read an Introduction to Neural Networks at:


More in depth readings are the following:

  • McClelland, J., D. Rumelhart, and the PDP Research Group. 1986. Parallel Distributed Processing: Explorations in the Microstructure of Cognition. Vol. 1: Foundations. Cambridge, MA: MIT Press.
  • Russell, I., Neural Networks, The Journal of Undergraduate Mathematics and its Applications, Vol. 14, No.1.
  • McClelland, J., and D. Rumelhart. 1988. Explorations in Parallel Distributed Processing. Cambridge, MA: MIT Press.
  • Minsky, M., and S. Papert. 1969. Perceptrons. Cambridge, MA: MIT Press.
  • Rumelhart, D., G. Hinton, and R. Williams. 1988. Learning internal representations by error propagation. In Neurocornputing, edited by J. Anderson and E. Rosenfeld, 75-695. Cambridge, MA: MIT Press.


Some useful resources can be found on the web too. We recommend the following:

  • Neural Network FAQ at
  • Introductions by Ingrid Russell ( and Leslie Smith (



The detailed project description is available in PDF format from the file CharacterRecognition.pdf. You will need the free Adobe Acrobat Reader to view this file.Get Adobe Reader logo

The project is customizable to accommodate different approaches to teaching and different implementations. Additional exercises are also included for Students seeking more extended challenges.



A sample syllabus used at the University of Hartford when this project was assigned is available at:



A sample syllabus used at Central Connecticut State University when this project was assigned is available at:

Syllabus for AI Course at Central Connecticut State University

Additional readings are included in the Background section above.