This course is taught by
Margaret Fleck
mfleck@illinois.edu
3214 Siebel Center
Neither office has a working phone, so please use email to contact me or post on our piazza forum
This course provides an introductory survey of concepts and techniques in artificial intelligence. We will cover methods for search, classification, reasoning, and machine learning. We will also look at applications including core AI (games, planning), robotics, computer vision, and natural language understanding.
This course assumes that you have taken data structures (CS 225) and probability and statistics (CS 361, ECE 313, STAT 400, MATH 461, or BIOE 310). Notice that our data structures course implies that you have taken discrete math (CS 173) and Calculus I. CS 440 is intended to be a first course in AI. If you have already taken a specialized AI course (e.g. CS 446), be prepared for a repeat of some familiar material.
Our meeting time is MWF 9-9:50 in 0027/1025 Campus Instruction Facility (aka the big auditorium).. In-class lectures will be recorded and lecture notes posted. Some pre-recorded lecture material may be used, especially to handle technical glitches (e.g. classroom projector won't turn on).
There will be in-class quizzes every other Wednesday starting with week 3. MPs will be due Monday evenings starting week 3. See the schedule page for details.
An office hour schedule (instructor and TAs) will be posted during the first week of classes. Meanwhile, catch Margaret at the end of lecture to talk or set up a time to talk. The plan is to run these in person, primarily in the Tutoring Center in the basement of the Siebel Center. Some may be moved online if necessary or more convenient.
Lecture notes, videos, and any required redings will be posted on the schedule page. Supplementary (optional) readings are posted on the readings page.
You will need a reference for Python, which we will use to write the MPs. A good place to start is the the Python Tutorial. You should install version 3.8. If you'd like a hardcopy reference for the basics, the hardcopy version 3.6 tutorial is still a good place to start because it covers features that haven't changed much.
Quizzes will will require a portable device. They will be browser-based, so a wide range of devices should work ok. However, it's best to have a real keyboard because you'll need to be able to type extended (e.g. 1-2 paragraph) answers.
As long as we have enough seats, it's ok for non-registered students to sit in on lectures. You can (obviously) also do MPs on your own. However, non-registered students may not take the quizzes.
Students may not add the class after add date (10 day of classes).
Please tell me right away if you change your credit hours (3 vs. 4 hours) so that I can ensure you are given the appropriate version of the quiz on moodle.
You may change from 3 to 4 credit hours up until you take the first quiz. After that, I will only approve the change in emergency situations.
You may change from 4 to 3 credit hours as late as drop date (end of the 8th week of classes). However, I will not adjust the scores for quizzes you have already taken.
See the top menu for links to piazza, gradescope, and moodle.
If you registered at least a week before the start of classes, you should find that you are enrolled in the class on moodle. If not, use the direct link above and enroll with the self-enrollment key "Hedwig".
On the external sites (Gradescope and Piazza), please enroll using your illinois.edu email address. The Gradescope access key is NYGW5R. If you would prefer not to do this, e.g. for privacy reasons, contact the instructor to be added under an alternate email address. We need to be able to match your external email to the roster for purposes such as moving MP grades from Gradescope to Moodle.
We plan 12 MPs, 6 quizzes, and a short final exam (aka Quiz 7). 4-hour students will take modified quizzes which also include questions on technical reading (approximately one accessible conference paper for each quiz). See the quiz page for more details.
Grading Formula
The final has the same weight as one quiz.
For students taking the course for 3 credit hours, the two lowest MP scores will be dropped. Be aware that some MPs build on previous MPs, notably pairs of adjacent MPs with similar names. This means that it's safe to skip some MPs and unwise to skip others. We will make these dependencies clear as the MPs are posted.
To get a letter grade of A+, you must complete all MPs with a grade of at least 80% on each (in addition to having a high course average).
The translation into letter grades will be at least as generous as the standard high school scale. That is,
I may move some or all of these cutoffs downwards (i.e. raising the letter grades) if the raw scores seem to be running lower than I intended. Because the work is different, the adjustments for the 4-hour students may differ from those for the 3-hour students.
A makeup for each quiz will be held in class on the following Monday. Makeups are for students who have not yet taken the quiz. You may not use the makeup time to retake a quiz you have already taken. You do not need special permission or documentation to take the makeup.
Making up a quiz after its regularly scheduled makeup requires explicit permission and a compelling reason. Ad-hoc makeup times will be arranged only in rare cases (e.g. extended illness).
For each MP, we expect you to have preliminary submissions well ahead of the deadline. Each MP deadline has a two-day grace period for managing most normal problems that may arise close to the deadline (e.g. short illness). The grace period will not be extended if you start the MP very late and then have some other problem arise. See below for discussion of major problems that may be beyond your control.
Regrade requests should be posted to the regrade folder on piazza. They must be submitted within a week after the grade and feedback comments have been released. The course staff reserves the right to regrade not only the items questioned by the student, but also the other parts of the assignment or test.
Programs and reports that you submit must be your own work. You may not look at another student's code or copy from it. You may not copy significant quantities of material from external sources except as specifically directed in the instructions for the assignment. You may not use tools (e.g. ChatGPT) to write significant quantities of text/code for you.
You are encouraged to discuss assignments at a high level with other students (e.g. how is a perceptron supposed to work?). You should also feel free to share information about basic utilities (e.g. how do I open a file in Python?). It is ok to conduct this discussion online, e.g. on piazza. Similarly, you may look at external sources for general tips and copy small fragments of code (e.g. an example of how to invoke some standard utility).
There is a grey area where you may be copying something that is interesting but seems small within the context of the whole assignment, e.g. an interesting algorithm trick or formula. In this case, you must properly acknowledge the source, e.g. using comments in your code. Be aware that the MPs in this course are intended to be built largely from scratch, so your grade will be reduced if these external aides make the assignment significantly easier.
If you aren't sure, ask the instructor.
Similarly, do not make your work available to other students. Extended fragments of code should be shown only to course staff, not to other students, and they should not be posted on piazza. Instead, submit your code to Gradescope so staff can refer to it when they answer your piazza question. If you store your code on github, make sure your repo is set to private. Be aware that some other students may have significant extensions, e.g. due to an extended illness.
Discuss quiz questions and solutions with other students only after both of you have taken the quiz. Do not post information about quizzes in public places.
If you have reason to worry that someone may have copied your work, keep good notes and consider informing the course staff. A good way to document your authorship is to submit preliminary work on gradescope as you develop your code.
See the college statement and the student code for other types of actions that would be considered academic integrity infractions.
For academic integrity infractions such as cheating on a quiz or plagiarizing MP code, the standard sanction is either a 5% reduction in your course average or a non-droppable zero on the assignment(s) or quiz(zes) involved, whichever is larger. This assumes a misdeed of some significance, and will be adjusted appropriately for minor technical mistakes or misunderstandings. The minimum penalty for a second infraction is a 10% reduction in your course average.
It is also an academic integrity infraction ("facilitation") to make your work available for other students to copy, either deliberately or negligently. The sanctions may be as large as the ones quoted above for copying someone else's work, but may be lower depending on the circumstances.
If you need disability accommodations, please send a copy of your DRES letter to the instructor. Usually it's fairly easy to work out something appropriate. Similarly please tell the instructor if you need privacy protections beyond what we normally provide. (See here for the college's official statements.)
We expect that you can arrange your work so that minor problems (e.g. a short virus, planned travel) do not stop you from meeting the deadlines. In particular, you are expected to submit preliminary versions of MPs ahead of the deadline, so that last-minute problems will not have catastrophic consequences. You are expected to take quizzes at the regularly scheduled date unless you have a conflict, so that the regular makeup time is available to cover last-minute problems (e.g. illness).
We will make special arrangements for the usual range of official excuses (e.g. illness, religious holidays), serious extenuating circumstances, university-sponsored travel (e.g. athletic, academic conferences), and situations that you could not reasonably have avoided by good preparation (e.g. illness on the day of an exam/quiz). 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 in advance. On the other hand, there might be unavoidable delays informing us about a serious illness or 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 significant accommodations (some of which need college approval) such as incompletes, late drops, light load.
Occasionally there are problems affecting a large number of people, e.g. network outages, snowstorms, TA strikes. In that case, we'll make appropriate adjustments. Watch for announcements (e.g. piazza). Do not make unsafe choices, e.g. driving into campus when the roads are dangerous.