UI logo
CS 440/ECE 448
Fall 2025
Margaret Fleck

Syllabus


Instructor

This course is taught by

Margaret Fleck
mfleck@illinois.edu
3214 Siebel Center

My university phone number goes only to voicemail. So please use email to contact me or post on our piazza forum

Course description

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 is sequenced after two terms of programming, discrete math (CS 173), and Calculus I. Our probability and statistics classes are sequenced after linear algebra. If you do not have a reasonable approximation to this background, you will likely struggle in this course.

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.

Class meetings and office hours

Our meeting time is MWF 9-9:50 in 0027/1025 Campus Instruction Facility (aka the big auditorium). Some recorded lecture material may be used, especially to handle technical glitches (e.g. classroom projector won't turn on).

Lecture notes will be posted soon after class. Please use these to catch up if you missed lecture. Preliminary versions of the notes will frequently be posted ahead of lecture, but be aware that they may be revised to include new material from lecture.

There will be in-class quizzes every other Wednesday starting with week 3. MPs will be due Friday 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.

Readings and equipment

Lecture notes and any required readings 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. We'll probably be using version 3.12. A good place to start is the Python Tutorial. 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 basic features that haven't changed much.

Quizzes will require a laptop or tablet. 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. Phones may be only used in emergency situations, after discussion with the proctors.

Late registration, auditing, and changes of credit hours

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.

Electronic tools

See the top menu for links to piazza, gradescope, and moodle.

Please check your moodle login a couple days before the first quiz. If classes have started and you have been registered for at least a couple days, you should find that you have been automatically added to the course. If you need to get onto moodle before this happens automatically, 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 KDGZV5 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.

Graded work

We plan 11 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 1-2 accessible conference papers for each quiz). See the quiz page for more details.

Grading Formula

The final has the same weight as one quiz.

Your lowest two MP scores and the lowest of your quiz scores (including the final exam) will be dropped.

Be aware that some MPs build on previous MPs, notably pairs of adjacent MPs with similar names. These dependencies will be indicated on the MP page. The quizzes also have questions related to each MP. So you are advised to put some work into understanding each MP even if you don't expect to fully complete it.

This course does not give out A+ grades.

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.

Regrades, makeups, late submissions

If you miss a quiz, you may either use your drop or make the quiz up at one of the two makeup dates on the schedule page. You can make up only one quiz at each makeup date. You do not need special permission or documentation to use these two makeup dates. Contact the instructor if there is a compelling reason why you need a special makeup arrangement.

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.

Each MP has a one-week grace period. However, if you submit code during the grace period, your maximum score will be capped at 90%. Since you also have two MP drops, the 90% cap will be waived only under unusual circumstances. We expect to see that you have submitted preliminary work before the deadline, unless you can present compelling reasons why you were unable to even get started in a timely manner.

Quiz regrade requests should be posted to the regrade folder on piazza. They must be submitted within a week after we release the grade and feedback comments for your quiz. The course staff reserves the right to regrade not only the items questioned by the student, but also the other parts of the quiz.

Academic integrity

Programs and reports that you submit must be your own work. Except as specifically allowed by MP instructions, you may not:

When applying these rules, an AI tool such as ChatGPT is considered to be another person. You should not be relying on these tools so heavily that your submission gets flagged as unusually similar to someone else's submission.

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 or utility function. 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.

It is good practice to document your authorship by submitting your preliminary work on Gradescope as you develop your code. If you have reason to worry that someone may have copied your work, keep good notes and consider informing the course staff.

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 a non-droppable zero on the assignment(s) or quiz(zes) involved. 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.

Circumstances beyond your control

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) and planned events (e.g. athletics, religious holidays) do not stop you from meeting the deadlines. In particular, you are expected to start work on MPs before the last minute, so that last-minute problems will not have catastrophic consequences. You are expected to take each quiz at the regularly scheduled date unless you have a conflict, so that you will be able to use the posted makeup dates to handle last-minute problems (e.g. illness).

When necessary, 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).

Requests for special arrangements must be made in a timely manner and contain key information such as the dates involved, the name of the holiday or event, why you can't use the posted makeup dates. 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.

Repeatedly oversleeping class (esp. on quiz days) is a sign that you have taken on too much load. Please consult your advisor before you get yourself into serious trouble.

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 (e.g. incompletes, late drops) which may require college approval.

Circumstances beyond anyone's control

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.