This class is intended as an overview of programming techniques in cognitive science and an introduction to a selection of artificial intelligence algorithms. Students are expected to have had at least one programming class or some programming experience before this course but are not expected to know Java, the programming language we will use in the course. The course is not appropriate for those with extensive programming experience, including those with undergraduate degrees in Computer Science or a related field. For most of the course we will work within the context of a simulated world in which simple agents live and interact, allowing us to explore some computational approaches to perception, action, learning, and evolution. Programming assignments will consist mainly of building on the existing Java application which implements this artificial world. The course will also cover the use of Java applets and CGI scripts for running experiments on the web. Coursework will consist of programming homework assignments and a programming project.
There is no textbook. The only reading assignments will consist of lecture notes prepared for this class and a few tutorials available on the web.