CS 540 - Introduction to Artificial Intelligence (Fall 2016)
This page contains information specific to Prof. Shavlik's section of CS 540 (Fall 2016).
Click here for general information about CS 540.
Office: 6393 CS Building
Office Hours: Tuesday 2-3pm and Thursday 2-3pm (also for undergraduate advising on Thursday). Also by appointment (send email).
Office: 5384 CS Building
Office Hours: Wednesdays 2:30-3:30pm and Thursdays 11:00am-noon. Also by appointment (send email)
Table of Contents
Course Overview and Requirements This course provides an introduction to artificial intelligence. Topics covered include knowledge representation, heuristic search, game playing, deductive reasoning, reasoning under uncertainty, planning, learning, (natural) language understanding, and philosophical foundations.
The work in the course will consist of 5-6 homework assignments (about one every two weeks), a midterm exam, and a final exam. Your programs will be partially automatically graded, so they must be written to run on the instructional Unix machines. Two or three of the homework assignments will involve programming tasks that are to be done in Java. You may write your code on any computer you wish, but it is your responsibility to ensure it runs on the CS Dept's instructional Unix machines (located in Rooms 1350 and 1370, and running Red Hat Enterprise Linux).
Homeworks will count for 35% of the grade, the 'midterm' exam for 30%, and the final for 35%. Quality class participation will have an impact on borderline cases. The course will be graded on the conventional (A-F) system.
HW5 - Logic-Based Representation and Reasoning
Due 11:55pm 12/13/16 (not accepted after 11:55pm 12/15/16) |
HW4 - ANNs and SVMs
Due 11:55pm 11/22/16 (not accepted after 11:55pm 12/1/16) |
| Grading Sheet
| Perceptron Testbeds
HW3 - Bayesian Reasoning
Due 11:55pm 11/8/16 (not accepted after 11:55pm 11/15/16)
Nannon is a simplified version of the board game Backgammon and was created by Jordan Pollack, who gave me permission to use its design for educational purposes.
See the final problem on this HW.
Here is a video demo of an algorithm learning to play Nannon
and another showing machine learning (a Bayesian Network) beating a hand-coded solution.
Solution (for paper-and-pencil problems)
HW 2 - Ensembles and Searching for Solutions
Due 11:55pm 10/13/16 (not accepted after 11:55pm 10/20/16)
| More on Question 1
| grading scheme
HW 1 - Learning Decision Trees from Training Examples
Due 11:55pm 9/27/16 (not accepted after 11:55pm 10/4/16)
Solution for Problem 1
and for Problem 2 |
zip file of testbeds used to evaluate ID3 code |
HW 0 - Hand-in Practice and Parsing ML Datasets
Due 11:55pm 9/13/16 (not accepted after 11:55pm 9/20/16)
- Academic Misconduct
All examinations, programming assignments, and written homeworks must be done individually. Cheating and plagiarism will be dealt with in accordance with University procedures (see the Academic Misconduct Guide for Students). Hence, for example, code for programming assignments must not be developed in groups, nor should code be shared. You are encouraged to discuss with your peers, the TA or the instructor ideas, approaches and techniques broadly, but not at a level of detail where specific implementation issues are described by anyone. If you have any questions on this, please ask the instructor before you act.
- Late policy on HWs
- HWs are due at 11:55 pm. Turn in HWs via your Moodle account.
- Each student will have FIVE "free" late days for use over the semester, for delays due to illness, especially hectic weeks, interview trips, etc. Once these are exhausted, there will be a penalty of 10 points per day (starting at 12:01am; weekends and official university holidays are free).
- To make the TA's job tractable, no HWs will be accepted more than one week late. Note that some HWs will have less than a full week for late days (usually because we want to post the solution for one reason or another).
- Supplemental lecture notes emailed via Moodle on 12/16/16:
Some Notes on MLNs
- Assigned Dec 13, 2016:
- Chapters 26 and 27 of Russell & Norvig. Skim Sections 19.5 and 18.5.
- Assigned Decemeber 8, 2015:
- Section 20.3.1 of Russell & Norvig. "Standard Algorithm" section of the Wikpedia article on K-Means Clustering
- Assigned November 17, 2016:
- Chapters 7-9 of Russell & Norvig; skim Section 7.7 and Sections 9.4.3-9.4.6.
Some Notes on Debugging Translations of English to FOPC.
- Assigned November 1, 2016:
- Section 18.7 and Section 18.9 of Russell & Norvig. You might want to skim the other sections of Chapter 18, especially 18.6.
- Assigned October 11, 2016:
- Chapter 13, Sections 14.1 - 14.3, Subsection 14.4.1, and Section 20.2.2 of Russell & Norvig
- Assigned September 20, 2016:
- Chapter 3 & Section 4.1 of Russell & Norvig (Skim Section 3.6 and rest of Chapter 4) plus
Sections 5.1, 5.2, 5.3, 5,7, 5.8, & 5.9 of Russell & Norvig (skim rest of Chapter 5)
- Assigned September 8, 2016:
- Section 18.8.1 of Russell & Norvig.
(You might also want to read this Wikpedia page
and you might also want to check out the broader perspective of 'case-based reasoning'
- the material on these Wikpedia pages will not be on the final, unless it was also covered in lecture or in Section 18.8.1.)
- Assigned September 6, 2016:
- Skim Chapters 1 & 2 and Read Sections 18.1-18.3 plus Appendices A & B of Russell & Norvig
- Skim Artificial Intelligence and Life in 2030
- Read Pedro Domingos' paper "A Few Useful Things to Know About Machine Learning" (you can access this paper for free if you are on a UW-Madison network; if you use DoIT's VPN I believe you can also access this from a non-UW network, such as a computer in your apartment).
- Read the Algorithm section of the Wikipedia page on Random Forests (I will typically call these 'decision forests', ie a set of decision trees).
I'll post some DRAFT lecture notes before class, BUT I'll post edited versions after the class. The draft notes will be more slides than I think we'll cover, but one never knows. You might want to print them out just before class, using something like three slides to page and leaving half of each the printed page empty for writing notes during class.
Lecture notes will partitioned at conceptual points, rather than after every 75-minutes of class. So the number of lectures per week will likely vary.
- Presented Week 1:
- Presented Week 2:
- Presented Week 3:
- Presented Week 4:
- Presented Week 5:
- Presented Week 6:
- Presented Week 7 (exam review on Thursday - see Fall 2015 midterm linked to this page):
some midterm notes
- Presented Week 8 (exam on Tuesday - linked near botton of this page):
- Presented Week 9:
- Presented Week 10:
- Presented Week 11:
- Presented Week 12 (Thanksgiving week):
- Presented Week 13:
- Presented Week 14:
- Presented Week 15 (exam review this week as well - see Fall 2015 final linked to this page):
- Midterm: TUESDAY October 25, 4:00-5:30pm, Room Van Vleck B130
ONE (8.5x11) page of notes (you can write on both sides of sheet) and a calculator allowed.
- Final (cumulative, though with emphasis on material covered since midterm):
December 21, 8:15-9:45am, Room 132 Noland
TWO (8.5x11) pages of notes (you can write on both sides of sheets) and a calculator allowed.
Previous Exams (PDF unless otherwise noted)
Midterm 2016 (Word,
Final 2016 (Word,
Midterm 2015 (Word,
Final 2015 (Word,
Midterm 2014 (Word,
Final 2014 (Word,
Midterm 2013 (Word,
Final 2013 (Word,
Midterm 2011 (Word,
Final 2011 (Word,
Midterm 2008 (Word,
Final 2008 (Word,
Midterm 2002 (Word,
Final 2002 (Word,
Midterm 2000 (Word,
Final 2000 (Word,
Midterm 1999 (Word,
Final 1999 (Word,
Exam 1 (1998) |
Exam 2 (1998) |
Exam 1 (1995) |
Exam 2 (1995) |
Exam 1 (1994) |
Exam 2 (1994) |
Exam 1 (1992) |
Exam 2 (1992) |
Some General AI Articles and Sites
This page was created by