up previous
Up: CSS485 Home Page

Computing & Software Systems 485:
Introduction to Artificial Neural Networks
Fall 2002

Computing systems have grown more and more powerful, yet with this increasing power has come increasing complexity and decreasing reliability and usability. One possible solution to this problem is to make these systems more like biological computers: nervous systems and brains. Neurocomputing is the study of biological computing principles for application to machines. This course is an introduction to artificial neural networks (ANNs) and brain modeling. Topics covered include basic neuroscience concepts, optimization, heuristic search, dynamics, control, learning, and genetic algorithms and genetic programming. Applications surveyed include vision, motor control, data analysis, and game playing. Prerequisites include CSS 342 and prior exposure to linear algebra, probability, and calculus.

Lectures
Mondays and Wednesdays, 5:45-7:50PM, room UW2-240.

Instructor
Michael Stiber <stiber@u.washington.edu>, room UW1-341, phone (425) 352-5280, office hours Wednesdays 3:30-4:30PM or by appointment.

Course Web
http://courses.washington.edu/css485/.

Textbook
Dana H. Ballard, An Introduction to Natural Computation, MIT Press, 2000. (Ballard)

Readings on reserve
José P. Segundo, ``What can neurons do to serve as integrating devices?'', J. Theoret. Neurobiol. 5, 1-59, 1986.

Grading
20% homework + 25% midterm + 25% final or final project + 20% oral quizzes + 10% class participation.

Oral Quizzes
You will be expected to prove that you have mastered the subject matter of this course by progressing through a series of individual quizzes. Quizzes will consist of private discussions of the subject matter with me. When you feel you are ready, you will arrange a time for taking your next quiz with me. The quiz topics will be:
Basic Concepts, part 1
You should be familiar with basic biological neuron structure and function. You should understand what learning is, ways to evaluate problem solutions, state-space search as a problem solving method, and ways to encode input data so as to reveal it essential structure.
Basic Concepts, part 2
You should understand how to model the evolution of a system's state along time. You should also be familiar with methods for finding optimal solutions.
Memories
You should know about basic artificial neural network architectures and learning paradigms. ANN architectures you should know include Hopfield, perceptrons, backpropagation, and self-organizing maps.

Final Project
You have a choice of doing a final project or taking a final exam. The final project can be individual or team. I strongly advise you to not hand in a mediocre project, however. I will only assign grades of ``excellent'' or ``good'' to projects; mediocre (or worse) will receive a failing grade. If you are doing a project, please make an appointment to see me early third week.

Assignments
Assignments are due at the beginning of class on the due date, unless specified otherwise. Late work will not be accepted. Of course, in special circumstances, such as medical and other emergencies, arrangements should be made for an extension in advance of the due date, if possible.

Submitting work
Your name, student number, and email address should be written on everything you submit. Please strive to write clearly; I cannot give you credit for what I cannot read. You are more than welcome to submit work before the due date.

Special needs
To request academic accommodations due to a disability, please contact Disabled Student Services (DSS), room 106 of the Library Annex building, (425) 352-5307, TDD: (425) 352-3132. If you have a documented disability on file with the DSS office, please have your DSS counselor contact me and we can discuss accommodations you might need in class.

Collaboration
You are expected to do your work on your own. If you get stuck, you may discuss the problem with other students, provided that you don't copy from them. Assignments must be written up independently. You may always discuss any problem with the instructor. You are expected to subscribe to the highest standards of honesty. Failure to do this constitutes plagiarism. Plagiarism includes copying assignments in part or in total, debugging computer programs for others, verbal dissemination of algorithms and results, or using solutions from other students, solution sets, other textbooks, etc. without crediting these sources by name. Plagiarism will not be tolerated in this class. Any student guilty of plagiarism will be subject to disciplinary action.

Class attendance
I strongly encourage you to come to class (and, in fact, a portion of your grade will depend on attendance and active participation). You will be held responsible for all material covered in class, regardless of its presence (or lack thereof) in the textbook. Please come to class on time.

Problems
If you have problems with anything in the course, please come and see me during office hours, or send email. I want to make you a success in this course. If you have trouble with the assignments, see me before they are due. If you fall behind, it will be difficult to catch up.

Tentative Course Schedule

Week Topics Reading Assignments
1 Introduction, natural vs. artificial computation Ballard, Ch. 1; Segundo, 1986  
2 Core Concepts: fitness, state-space search Ballard, Chs. 2 & 3 HW1 assigned
3 Core concepts: data representation, system dynamics Ballard, Chs. 4 & 5 HW1 due, HW2 assigned, project conferences
4 Core concepts: optimization Ballard, 6.1, 6.2, 6.4.2 HW2 due; HW3 assigned
5 Memories: content addressable, supervised learning Ballard, 7.1, 7.2, Ch. 8 HW3 due
6 Memories: unsupervised learning Ballard, Ch. 9 midterm
7 Unsupervised learning, cont'd Ballard, Ch. 9 HW4 assigned
8 Markov Models; reinforcement learning Ballard, Chs. 10 & 11 HW4 due; HW5 assigned
9 Reinforcement learning, cont'd Ballard, Ch. 11 HW5 due
10 Genetic algorithms & programming (briefly); course wrap-up Ballard, Ch. 12-14 project demos
Finals     projects due


up previous
Up: CSS485 Home Page
Prof. Michael Stiber
2002-09-30