CSCI 373

Artificial Intelligence

Home

Professor:Andrea Danyluk
email:andrea "at" cs "dot" williams "dot" edu
phone: x2178
Office:TCL 305
Office Hours:Mon 1:30-3:00 PM, Wed 8:00-9:00 PM, Thurs 1:30-3:00 PM, and by appointment. Additional office hours before assignment due dates TBA.
Lectures:MWF 12:00-12:50, TCL 206
Lab:TCL 312

Course Description

Computer Science 373 is an introduction to Artificial Intelligence (AI). Artificial Intelligence is a concept that has been pondered by many, from computer scientists to philosophers to novelists and screenwriters. While many of the popular notions of AI can trace their roots back to the vision of the field's pioneers, the popular view of AI doesn't begin to touch the surface of this rich discipline.

Many familiar concepts in computer science have emerged (either directly or indirectly) from research in AI. Compilers, timesharing, and the object-oriented programming paradigm can all trace roots back to the early days of AI. More recently, the field of AI has expanded considerably to include topics that don't necessarily mimic human thought and behavior, but instead go beyond it. Robots now explore areas that humans can't reach; cars drive themselves without needing coffee to keep them awake late at night; and data-mining algorithms find patterns in terabytes of data that no human could possibly analyze.

The first half to two-thirds of this course will be devoted to the study of core AI topics: problem solving and search, logical and probabilistic reasoning, and learning. In the remainder of the course we will touch on a selection of related topics, focusing our attention on recent research that integrates two or more of the areas addressed earlier in the semester.

There are far too many topics within AI to consider all of them in twelve weeks. Indeed, each topic is rich enough to be a course on its own. Therefore, during the second half of the semester, you will have the opportunity to explore in depth a topic of your choice. The exploration will take the form of an extended project - from initial investigation of readings to the development of a large software system, which you will present to your classmates.

In order to help prepare you for the project, I will have you complete five programming assignments - one warm-up exercise and four more substantial exercises. There will be no final exam. Instead, there will be an in-class exam just before you embark on the final design and programming segments of your project.

To simplify printing of the information about CS 373 found on these pages, a single page on which all the information about CS 373 is grouped together is also available.