CSE 40171 is a senior-level Computer Science and Engineering course at the University of Notre Dame that introduces students to the fundamentals of artificial intelligence. Once a topic of merely historical interest, artificial intelligence has re-emerged as one of the most vibrant subfields of computer science. Applications ranging from video games to autonomous vehicles now rely on breakthroughs related to data-driven learning algorithms and massively parallel hardware. And in light of these successes, one might think that the replication of general intelligence in a computer is just around the corner. However, the reality of the situation is quite the opposite: a comprehensive understanding of how the brain works has yet to emerge. While this divide is a significant stumbling block to progress, it also presents an intriguing opportunity to reverse engineer aspects of intelligence to forward engineer artificial solutions to real problems. A grasp of the limits and the potentials of various approaches to do this is essential. In this vein, this course will be a tour of the classic ideas (both good and bad) and state-of-the-art methods in AI, both within the context of our current understanding of how the brain processes information. An emphasis is placed on application domains where AI has achieved the most success: Games, Computer Vision and Natural Language Processing.

Upon successful completion of this course, students will be able to:

  1. Understand the philosophical underpinnings of the field and motivations for pursuing the replication of certain competencies of the brain.

  2. Relate real-life problems to perceptual and cognitive models that are able to solve aspects of them in an efficient manner.

  3. Deploy general search algorithms that can be applied to a wide variety of tasks.

  4. Formulate decision making processes that can be used for planning and classification purposes.

  5. Build intelligent agents that perform simple tasks in an autonomous fashion.

  6. Learn task-specific models from large collections of labeled training data samples using algorithms that are optimized using numeric solvers.

  7. Utilize state-of-the-art software frameworks for building solutions to problems related to games, computer vision, natural language processing, and other general data science applications.

  8. Identify problems that are solvable with today's AI algorithms and others that require novel solutions.

Class Information

Lecture
M/W/F 3:30 PM - 4:20 PM
Location
125 DeBartolo Hall
Slack
#cse-40171-fa18
GitLab
cse-40171-fa18-assignments

Instructor

Instructor
Walter Scheirer (walter.scheirer@nd.edu)
Office Hours
M/W 1:00 PM - 3:15 PM, and by appointment
Office Location
321C Stinson-Remick Hall

Help Protocol

  1. Think
  2. Slack
  3. Think
  4. Email
  5. Think
  6. Office

Teaching Assistants

Graduate Teaching Assistant
Abby Graese (agraese@nd.edu)
Office Hours
FR 10:00 AM - 12:00 PM
Office Location
Engineering Library
Teaching Assistant
Mike Eiseman (meiseman@nd.edu)
Unit Date Topics Assignment
Introduction 08/22 Introduction, Syllabus, History of AI Slides
08/24 Philosophical Perspectives Slides R & N: Chpt. 1
Biological Intelligence
The Brain 08/27 Perception Slides D. Marr on AI
08/29 Cognition Slides To Grow a Mind
08/31 Neural Computation Slides The Connectome
Problem-Solving
Uninformed Search 09/3 Search Spaces Slides R & N: 3.1-3.2; Homework 01
09/5 Search Trees Slides R & N: 3.3-3.4
Informed Search 09/7 A* Search Slides R & N: 3.5
09/10 Search Heuristics Slides R & N: 3.6
Constraint Satisfaction Problems 09/12 Defining CSPs Slides R & N: 6.1; Homework 02
09/14 Inference and Backtracking Search Slides R & N: 6.2-6.3
09/17 Local Search and Problem Structure Slides R & N: 4.1, 6.4-6.5
Adversarial Search 09/19 Games and Optimality Slides R & N: 5.1-5.2
09/21 Game Trees: Alpha-Beta Pruning; Imperfect Decisions Slides R & N: 5.3-5.4; Homework 03
09/24 Game Trees: Expectimax; Partial Observability Slides R & N: 5.5-5.8
Probabilistic Reasoning
Probability 9/26 Review
9/28 Checklist 01 Quiz 01
10/1 Probability Slides R & N: 13.1-13.2; Project Proposal
10/3 Probability Slides R & N: 13.3-13.4
10/5 Probability Distributions Slides Prince, Chpt. 3; Homework 04
Bayesian Networks 10/8 Bayes' Theorem and Knowledge Representation Slides R & N: 14.1-14.3
10/10 Bayesian Networks: Inference Slides R & N: 14.4
10/12 Bayesian Networks: Sampling Slides R & N: 14.5
Fall Break
Reasoning Over Time 10/22 Markov Models Slides R & N: 15.1-15.2; Homework 05
10/24 Hidden Markov Models Slides R & N: 15.3-15.4
10/26 Applications of Hidden Markov Models Slides R & N: 15.5
Machine Learning
Learning from Data 10/29 Supervised Learning Slides R & N: 18.1-18.2
10/31 Unsupervised Learning Slides R & N: 20.3; Homework 06
11/2 Best Practices for Training and Evaluation Slides R & N: 18.11
Learning Algorithms 11/5 Naive Bayes Slides R & N: 13.5 Project Update
11/7 Perceptrons Slides R & N: 18.7.1-18.7.2
11/9 Kernel Machines Slides R & N: 18.8-18.9; Homework 07
11/12 Review
11/14 Checklist 02 Quiz 02
Artificial Neural Networks 11/16 Structure of Neural Networks
11/19 Gradient-based Optimization Homework 08
11/21 Thanksgiving Break
11/23 Thanksgiving Break
11/26 Team Project Presentations Team Presentations
11/28 Team Project Presentations
11/30 Team Project Presentations
12/3 Artificial Neural Network Architectures
12/5 Deep Learning
Final Project 12/12 Project Due

Coursework

Component Points
Participation Participation in class, office hours, and slack discussions. 100
Homeworks Homework assignments. 8 × 100
Project Final group project. 700
Quizzes In-class quizzes. 2 × 200
Total 2000

Grading

Grade Points Grade Points Grade Points
A 1860-2000 A- 1800-1859
B+ 1734-1799 B 1666-1733 B- 1600-1665
C+ 1534-1599 C 1466-1533 C- 1400-1465
D 1300-1399 F 0-1299

Due Dates

All Homeworks are to be submitted to your own private GitLab repository. Unless specified otherwise:

  • Homeworks are due by 11:59pm one week following the release of the assignment.

  • Project deliverables are due by 11:59pm on the assigned deadline.

Policies

Participation

Students are expected to attend and contribute regularly in class. This means answering questions in class, participating in discussions, and helping other students.

Foreseeable absences should be discussed with the instructor ahead of time.

Students with Disabilities

Any student who has a documented disability and is registered with Disability Services should speak with the professor as soon as possible regarding accommodations. Students who are not registered should contact the Office of Disabilities.

Academic Honesty

Any academic misconduct in this course is considered a serious offense, and the strongest possible academic penalties will be pursued for such behavior. Students may discuss high-level ideas with other students, but at the time of implementation (i.e., programming), each person must do his/her own work. Use of the Internet as a reference is allowed but directly copying code or other information is cheating. It is cheating to copy, to allow another person to copy, all or part of an exam or a assignment, or to fake program output. It is also a violation of the Undergraduate Academic Code of Honor to observe and then fail to report academic dishonesty. You are responsible for the security and integrity of your own work.

Late Work

In the case of a serious illness or other excused absence, as defined by university policies, coursework submissions will be accepted late by the same number of days as the excused absence.

Otherwise, a late penalty, as determined by the instructor, will be assessed to any late submission of an assignment. In general, the late penality is -10 points off for each day after the assigned deadline. The instructor reserves the right to refuse any unexcused late work.

Classroom Recording

Notre Dame has implemented a classroom recording system. This system allows us to record and distribute lectures to you in a secure environment. You can watch these recordings on your computer, tablet, or smartphone. The recordings can be accessed within Sakai.

Because we will be recording in the classroom on select occasions, your questions and comments may be recorded. (Video recordings typically only capture the front of the classroom.) If you have any concerns about your voice or image being recorded, please speak to me to determine an alternative means of participating. No content will be shared with individuals outside of your course without your permission except for faculty and staff that need access for support or specific academic purposes.

These recordings are jointly copyrighted by the University of Notre Dame and your instructor. Posting them to other websites, including YouTube, Facebook, Vimeo, or elsewhere without express, written permission may result in disciplinary action and possible civil prosecution.

CSE Guide to the Honor Code

For the assignments in this class, you may discuss with other students and consult printed and online resources. You may quote from books and online sources as long as you cite them properly. However, you may not look at another student's solution, and you may not copy solutions.

For further guidance please refer to the CSE Honor Code or ask the instructor.

Textbook

Artificial Intelligence: A Modern Approach

Peter Norvig and Stuart J. Russell