Artificial Intelligence

University of Illinois

Course description

This course provides an introductory survey of concepts and techniques in artificial intelligence. Intelligence is the ability to plan, learn, and communicate; AI is the creation of machines that do these things. We will also look at applications including games, robotics, computer vision, and natural language understanding.

This course assumes that you have taken data structures (CS 225) and therefore, by transitivity, Discrete Structures and Calculus I. A probability and/or statistics course (e.g., CS 361, ECE 313) is strongly recommended. This course is intended to be a first course in AI. If you have already taken a specialized AI course (e.g. CS 446), be prepared to review some familiar material.

Lectures are completely asynchronous: they'll be posted every week by Sunday night at mediaspace. Collabs are synchronous and required, one hour/week beginning week 2.


The textbook is Russell and Norvig, Artificial Intelligence: A Modern Approach, fourth edition.

You will also need a reference for Python, which we will use to write the MPs. A good place to start is the the Python Tutorial (also available in hardcopy form).

Other supplementary readings will be posted, typically from textbooks available online.

Electronic tools

If you have some reason why you don't want gradescope or piazza to know your U. Illinois email, contact the instructor to be added under an alternate email address.

Graded work

There will be 6 MPs, 2 midterms, a final, and weekly collabs. The grading formula for 3cr students is:

Students in the graduate section will also attend a weekly research seminar designed to teach you how to give research presentations. The grading formula for 4cr students is:

Some of the MPs will have extra credit opportunities, each worth up to 10% of the value of the MP. Extra credit, up to 1% of your semester grade, will also be given to students who frequently answer other students' questions on piazza.

Thresholds for letter grades are usually 45/47/58% for D-/D/D+, 60/62/73% for C-/C/C+, 75/78/88% for B-/B/B+, 90/92/99% for A-/A/A+

Academic integrity

You are encouraged to discuss assignments with other students, to share high-level understanding of the design (e.g. how is a perceptron supposed to work?) or basic utilities (e.g. how do I open a file in Python?). It is ok to conduct this discussion online, but do not post code. Programming and writing of reports/papers must be done individually. The important exception to this rule is the Collab worksheet, which should be done collaboratively with your Collab section.

You may look for tips, copy code, or use packages, from external sources. However, this must be explicitly acknowledged in your report and your code comments. Be aware that these MPs are intended to be built largely from scratch, so your grade will be reduced if these external aides make the assignment significantly easier.

It is an academic integrity offense to deliberately or negligently copy from other students, assist other students in copying from you, or use external sources without acknowledgement. It is also an academic integrity offense if a written report significantly misrepresents what your code actually does. See the student code for other types of actions that would be considered violations.

The standard penalty for an academic integrity violation is a zero on the assignment or exam in question. (This assumes an action of some significance rather than a minor technical mistake or misunderstanding.) A second offense will typically cause you to fail the entire course.

Circumstances beyond your control

We expect that you can arrange your work so that minor problems do not stop you from meeting the deadlines. In particular, you are expected to submit preliminary versions of MPs well ahead of the deadline, so that last-minute problems will not have catastrophic consequences.

We will make special arrangements for serious extenuating circumstances, and situations that you could not reasonably have avoided by good preparation (e.g. illness on the day of an exam). However, you must inform the instructor and respond to rescheduling emails in a timely manner. The meaning of "timely" depends on the circumstances. For example, planned travel or religious holidays should be reported a couple weeks in advance. On the other hand, there might be unavoidable delays informing us about a serious injury.

For major and extended problems, we expect you to be in contact with the Dean of Students office. Or, for graduate students, your department's advising office. These offices can help document the problem, help you stay in contact with instructors, and determine if you need accommodations such as incompletes.

Makeups for each exam will be held during the week after the regular sitting. The details are still TBD, but expect the makeup to be at the class time or very early morning, to avoid conflicts. Ad-hoc makeup times will be arranged only in rare cases (e.g. extended illness).