Copy of the class homepage from before the suspension of classes

**Course Staff:**- Instructor: Prof. Haym Hirsh
- Head TA: Molly Feldman

**Contact Information**: For all routine course correspondence, please use FAI-L@cornell.edu. Email sent to this address not only goes to Prof. Hirsh but also the the head TA, and all graduate TAs, and whoever is able to answer first will do so, getting you a response more quickly. If the issue is one you prefer to discuss only with Prof. Hirsh, his email is found on his website.**Prerequisites:**Officially it's CS2110/ENGRD2110 and CS2800. The specific topics that the course will assume you know include- Trees and graphs (for example, familiarity with Dijkstra's Algoritm)
- Basic probability (for example, comfort using Bayes Rule)
- Propositional and first-order logic (for example, what satisfiability and soundness mean)
- Multi-variate calculus (for example, minimizing a function of multiple variables).

**Lectures:**Mondays, Wednesdays, and Fridays 1:25pm - 2:15pm EDT.

Links to each lecture will be found in Canvas in the Zoom section, under "Upcoming Meetings". Recordings of prior lectures can be found there under "Cloud Recordings". Copies of slides will be available in the list of lectures below.

(**There will usually be a delay of up to a day before videos get posted.**Videos are put online by a process that inserts closed captioning, so there's a delay until each video appears in my "inbox", and then I need to review the video to make sure nothing surprising happened before they ultimately get posted. I will try to keep the interval as short as I can, but the first part is out of my cotrol.)

**Backup Plan**: If a lecture should ever be cut off, if it is not restarted within 5 minutes please check Piazza for further information.**Online discussion:**We will be using Piazza for class discussions.**Assignment submissions:**Written assignments are submitted via Gradescope (Entry Code: 9B85X2).**Textbook:****Online Chapters**: We will be using draft chapters from the upcoming 4th edition of*Artificial Intelligence: A Modern Approach*by Stuart Russell and Peter Norvig. (You will need to use your NetID to access it.) You do not need to purchase hardcopy of the 3rd edition.**Exercises**: There is also a github repository with exercises for the textbook. Unfortunately it's still organized by the chapters in the 3rd edition, so you need to go by the chapter name rather than the number.**Finding Typos**: You can receive Karma Points for submitting typos that you find. (Karma Points are discussed further below.)

**Office Hours**: Office hours will be kept up-to-date on the online office hours calendar and may be updated week-to-week; check the calendar before you go!**Grading:**Your grade will be determined in the following fashion:**Homework:**25% +/- 5%

There will be 5 homeworks over the course of the semester. Each is worth 5% of your grade, for a total of 25%.**Deadlines:**Homeworks can be submitted up to 48 hours late for a 50% penalty.**If you have extenuating circumstances**, please contact the list serv; we will provide extensions when applicable for injuries, family emergencies, etc., on a case-by-case basis.**Submissions:**Read homework assignments carefully. You have not submitted the assignment on time if you have not submitted it on the proper platform (Gradescope or otherwise) on time.**Format:**Homeworks must be typeset, such as via Microsoft Word or LaTeX. Regardless of the tool you use, use common sense: Is it legible? If we can't read it you get a zero.**Collaboration**: Doing a homework problem typically involves three steps: (1) understanding a question, (2) figuring out a solution and (3) writing it up coherently. For the first step we encourage discussion with classmates. For the second discussion with classmates is also ok, but it is important that it conclude with you understanding how to solve the question, not just copying someone else's solution. You are also allowed to refer to online resources that you might find that might help you understand the question and figure out the solution. However, the third step, writing it up, must be done completely on your own. You are not allowed to share digital or written notes or images of your work in any form with each other. Your work must also include acknowledgements of all students with whom you collaborated at the top of your first page.

(A word to the wise: The homeworks are designed to get you to exercise concepts in a deeper way than is possible in class, and exams will presume your mastery of the homeworks. If you're not capable of independently solving each homework, you won’t understand the material well, and will not do well on the exams and hence the course.)

**Exams**: 75%

There will be no prelim or final exam this semester. These are replaced by Tuesday and Thursday quizzes. Quizzes will be given using Canvas and will be found in the Quizzes section. Quizzes will be released on quiz days at 12:00pm and the window for completing the quiz will remain open for 24 hours. Unless told otherwise, quizzes will be open book, notes, and computer; however, you may not consult with others while taking the quiz, and you may not share a quiz's contents with others until after solutions have been posted.**Tuesday quizzes**: 37.5% +/- 5%

Each Tuesday quiz will cover material from the prior week's lectures. It may, as appropriate, reference material from earlier in the course.**Thursday quizzes**: 37.5% +/- 5%

Each Thursday quiz will cover material from the first half of the course. The topic of each quiz will be announced in advance.

A list of practice questions on topics from the first half of the class are available to help prepare for quizzes.

**The +/- 5% Solution:**Whichever element of your grade is lowest will be decreased by 5% and whichever is highest will be increased by 5%. For example, if your homeworks were your lowest grade and your Tuesday quizzes your highest, your homework would count for 20% and the final Tuesday quizzes 42.5%, with Thursday quizzes remaining 37.5%.**Regrade Requests:**Regrade requests must be submitted within**seven days**of grades being released. They should not be "Why is this wrong?" - that is something you can ask in office hours. Regrade requests should be made because you believe a specific error was made in the grading. Sometimes a student*does*discover either an error in the expected solution or a valid solution that had not been considered. Determine this first in office hours, and submit a regrade request if it is verified there. We reserve the right to lower points on other questions if you submit a regrade request. We would not typically do this except for students who submit an unreasonable number of regrade requests or who submit requests using anything but language respectful of their fellow students who are responsible for grading.**Karma points:**Throughout the semester you will have opportunities to earn “karma points”. These are not counted in computing your overall score for the class, but will be used for students who are borderline between grades. Examples of ways to earn karma points include:- Answering questions and writing helpful posts on Piazza.
- Attending AI seminars that may take place over the course of the semester. You will be asked to submit a list of seminars that you attended at the end of the semester.
- Finding typos in the textbook.
- Submitting a course evaluation at the end of the semester.

**negative karma**, for example by:- Asking questions that have already been answered here
- Asking questions that have already been answered on Piazza
- Abusing the regrade request process.

Lecture # | Date | Topic/Slides | Readings | ||
---|---|---|---|---|---|

1 | 1/22 | Introduction to AI and the course | Skim Chapters 1 and 2 | ||

2 | 1/24 | State Space Search | Section 3.1-3.3 | ||

3 | 1/27 | Depth-First, Breadth-First Search | Section 3.4 | ||

4 | 1/29 | Depth-First, Breadth-First, Iterative Deepening Search | Section 3.4 | ||

5 | 1/31 | A* Search | Sections 3.5-3.6 | ||

6 | 2/3 | A* Search, Local Search | Section 3.6,4.1 | ||

7 | 2/5 | Adversarial Search | Sections 5.1-5.3 | ||

2/7 | Snow Day |
||||

8 | 2/10 | Adversarial Search | Sections 5.1-5.3 | ||

9 | 2/12 | Adversarial Search | Sections 5.1-5.3 | ||

10 | 2/14 | Propositional Logic | Sections 7.1-7.4 | ||

Video Link: click here | |||||

11 | 2/17 | Propositional Logic | Sections 7.4-7.5 | ||

12 | 2/19 | Propositional Logic | Sections 7.5 | ||

13 | 2/21 | Propositional Logic, First-Order Logic | Sections 7.5-7.6 | ||

14 | 2/26 | First-Order Logic | Sections 8.1-8.2, 9.1-9.2 | ||

15 | 2/28 | First-Order Logic | Sections 9.1-9.2, 9.5 | ||

16 | 3/2 | First-Order Logic, Markov-Decision Processes | Sections 9.1-9.2, 9.5, 17.1 | ||

17 | 3/4 | Markov-Decision Processes | Section 17.1 | ||

18 | 3/6 | Markov-Decision Processes | Section 17.2 | ||

19 | 3/9 | Markov-Decision Processes, Reinforcement Learning | Sections 17.2, 22.1, 22.3 | ||

Policy iteration example from class | |||||

20 | 3/11 | Reinforcement Learning | Section 22.3 | ||

21 | 3/11 | Reinforcement Learning | Section 22.3 | ||

Suspension of classes |
|||||

22 | 4/6 | Multi-Armed Bandits | Section 17.3 | ||

23 | 4/8 | Multi-Armed Bandits | Section 17.3 | ||

4/9-10 | Quiz 1: Solutions |
Topic: Uninformed Search |
|||

Review questions: Questions 1a-c and 3a-c | |||||

Review questions: Solutions | |||||

24 | 4/10 | Monte Carlo Tree Search | Section 5.4 | ||

25 | 4/13 | Overview of Machine Learning and Supervised Learning | Sections 19.1-19.2 | ||

4/14-15 | Quiz 2: Solutions |
Topic: Lectures 22-24 |
|||

Review questions: Quiz 2 | |||||

Review questions: Solutions | |||||

26 | 4/15 | Supervised Learning | Section 19.4 | ||

4/16-17 | Quiz 3: Solutions |
Topic: Informed search (A*, Hill Climbing, etc.) |
|||

Review questions: Questions 1d-e, 2c, 3d, and 4-7 | |||||

Review questions: Solutions | |||||

27 | 4/17 | Perceptrons | Sections 19.4, 19.6 | ||

Perceptron spreadsheet from lecture: | |||||

(Create your own copy to edit) Google doc | |||||

(Download to edit): Excel spreadsheet | |||||

28 | 4/20 | Logistic Regression | Sections 19.6 | ||

4/21-22 | Quiz 4: Solutions |
Topic: Lectures 25-27 |
|||

Review questions: Problems and Solutions | |||||

29 | 4/22 | Neural Networks | |||

4/23-24 | Quiz 5: Solutions (Revised) |
Topic: Adversarial Search |
|||

Review questions: Questions 1f and 8-11 | |||||

Review questions: Solutions | |||||

See also Textbook github questions: | |||||

Chapter 5: #1, 9, 10, and 12 | |||||

30 | 4/24 | Neural Networks | |||

31 | 4/27 | Neural Networks | |||

4/28-29 | Quiz 6: Solutions |
Topic: Lectures 28-30 |
|||

Delayed until 4pm EDT |
|||||

Review questions: Problems and Solutions | |||||

32 | 4/29 | Naive Bayes | |||

4/30-5/1 | Quiz 7: Solutions |
Topic: Formal Logic |
|||

Review questions: Questions 1g-j and 12-19 | |||||

See also Textbook github questions: | |||||

Chapter 7: #4, 6, 7, 9, 16 (parts 1 and 2), 20, 21, 23 | |||||

(skip questions with double-headed arrows) | |||||

Chapter 8: #10, 11, 12, 26, 27, 32, 36 | |||||

Chapter 9: #5, 8, 24 | |||||

33 | 5/1 | Naive Bayes | Section 20.2 | ||

34 | 5/4 | k-Means Clustering | https://en.wikipedia.org/wiki/K-means_clustering | ||

5/5-6 | Quiz 8: Solutions |
Topic: Lectures 31-33 |
|||

Review questions: Problems and Solutions | |||||

35 | 5/6 | Natural Language Processing | Chapters 23, 24 | ||

Guest lecturer: Professor Claire Cardie | |||||

5/7-8 | Quiz 9: Solutions |
Topic: Reinforcement Learning |
|||

Review questions: Questions 20-23 | |||||

36 | 5/8 | Computer Vision | Chapter 25 | ||

Guest lecturer: Grant Van Horn, Ph.D. | |||||

37 | 5/11 | Societal implications of AI | Chapters 27-28 | ||

5/12-13 | Quiz 10: Solutions |
Topic: Lectures 34 |
|||

Review questions: Problems and solutions |

Number | Assignment | Due | Late | Solutions | ||||
---|---|---|---|---|---|---|---|---|

Homework 1 | Background knowledge assessment | 1/31 11:59 PM | No late submissions | HW1 Solutions | ||||

Homework 2 | Search Algorithms | 2/17 11:59 PM | 2/19 11:59 PM | HW2 Solutions | ||||

Homework 3 | Game Trees & Logic | 4/8 11:59 PM | 4/8 11:59 PM | HW3 Written Solutions | ||||

.ipynb file | HW3 Example Programming Solution | |||||||

Homework 4 | Learning Approaches | 4/28 11:59 PM | 4/30 11:59 PM | HW4 Solutions | ||||

Homework 5 | Machine Learning | 5/12 11:59 PM | 5/14 11:59 PM | HW5 Solutions |

**Technology:**You are expected to use Internet-connected devices to access all course material, including lectures, homeworks, and quizzes.**Auditing**: There is no official auditing option for this course.**Academic Integrity**: From Cornell's code of academic integrity:

Any distribution or dissemination of course assignment information (such as copies of exams, solutions, etc.) to students not taking the course - whether to students in a subsequent offering of the course, via a website, or any other circmstance - is a violation of the academic intregity policy for this course.*Absolute integrity is expected of every Cornell student in all academic undertakings. Integrity entails a firm adherence to a set of values, and the values most essential to an academic community are grounded on the concept of honesty with respect to the intellectual efforts of oneself and others. Academic integrity is expected not only in formal coursework situations, but in all University relationships and interactions connected to the educational process, including the use of University resources. ... A Cornell student's submission of work for academic credit indicates that the work is the student's own. All outside assistance should be acknowledged, and the student's academic position truthfully reported at all times. In addition, Cornell students have a right to expect academic integrity from each of their peers.***Accommodations**There are various non-academic reasons students can face difficulties in successfully completing a course of study. Some can be short-term, some chronic. If there are any special accommodations that we must be aware of to help you be a successful student in this course it will typically be documented in a letter from the appropriate Cornell office. Please email a copy of the letter to FAI-L@cornell.edu. While it is our responsibility to be mindful of relevant Cornell policies governing such matters, it is your responsibility to notify us of the relevance of these policies to you. Please submit the necessary documentation during the first three weeks of the semester, so that we can ensure that the necessary arrangements can be made as quickly as possible.**Respect:**Everyone, the instructor, TAs, and students, must be respectful of everyone else in this class. All communication, in class and online, will be held to a high standard for thoughtfulness and inclusiveness: it may never target individuals or groups for harassment, and it may not exclude specific groups. That includes everything from outright animosity to the subtle ways we phrase things and even our timing. If any of the communication in this class doesn't meet these standards - whether with a fellow student or with course staff - please contact the instructor; if for whatever reason you don't feel comfortable discussing something directly with the instructor you may also choose to raise it with your advising office or the department chair.