Overview

Artificial Intelligence is the area of computer science that concerns itself with "smart" solutions to problems. How can we find solutions faster than typical brute-force approaches by using knowledge about the problem? How can we use higher-orders of representation such as logic, graph structures, and others to solve problems? How can we learn from data or from the environment? How can we adapt the biological mechanisms of intelligence for computational purposes?

We'll consider all of the above as we examine a variety of problems in AI, including agent-based behavior (as in robotics), heuristic search, strategy game playing, supervised learning, reinforcement learning, logical deduction, and others.

Instructor Information

Graders:

Textbook

Important Dates

Your Grade

Assignments & Class Project

Collaboration, Plagiarism, and the Difference Between the Two

There are two different kinds of working together: collaborating and plagiarism.

Collaborating

Plagiarism

The following are examples of plagiarism:

I am compelled by Carleton policy to submit plagiarism cases that I find to the Dean of Students, who in turns brings the evidence before the Academic Standing Committee. The academic penalty for a finding of responsibility can range from a grade of zero in the specific assignment to a F in the course.

Working from your own computer

Most of the programming that we do will be in Python, which will be set up for use in the Computer Science labs. You should feel free to install Python on your home machine and work from there if you wish. If you do so, you are responsible for making sure that your programs work under the version of the compiler that we have installed in the labs. I am glad to informally provide whatever advice I can to help you get the software running on your own machine, but home use is technically "unsupported." We will be using Python 2, not Python 3.

Homework Policy

Details

We will cover selected material potential from within the following chapters in Russell & Norvig: