BU Logo

GRS CS 640 Artificial Intelligence - Fall 2020

Course Objectives - Course Materials - Requirements
Collaboration and Academic Integrity - Help - Schedule - Homework and Labs - Links


Lectures: Tu, Th 9:30 - 10:45 am in LAW AUD (Law School Auditorium)
Labs: Fri 10:10-11 am and 11:15-12:05 am in CAS 228
Instructor: Prof. Margrit Betke
Teaching Fellows: Yiwen Gu and Stan (Sha) Lai
Class web page:
http://www.cs.bu.edu/faculty/betke/cs640
Piazza page:
http://piazza.com/bu/fall2020/cs640/home
Class mailing list:
grscs640a1-l@bu.edu
Contact Information:
Staff Best Way to Contact Zoom Office Hours Zoom Link
Margrit Betke betke@bu.edu Mon 16:00-18:00, Tue 10:45-11:45 https://bostonu.zoom.us/my/margritbetke
Yiwen and Stan Piazza. But note that there is a 24-hour timer on your Piazza questions to encourage other students to answer questions before TFs will able to see your question.
Only send an email if your question is urgent and requires an answer earlier than 24 hours. In that case, send an email to both TFs: yiweng@bu.edu and lais823@bu.edu
(Yiwen) Tue 19:00-21:00 EST,
(Stan) Wed 8:00-10:00 EST
https://bostonu.zoom.us/j/93417619114

Seeing Me on Zoom:
Please feel free to stop by my zoom office hours. I'm happy to talk with you about the course, research in AI, computer vision, machine learning, your plans for the future, or anything else. Check out my personal web page (in need of updating...) to get to know me a little.

Responsibilities of the Teaching Fellows:
Yiwen and Stan are responsible for teaching the two laboratory sections and helping you out during their office hours. They will also help me design the written homework and programming projects, and they will manage the graders. Please contact the TFs first if you have questions about your homework grades.


Course Objectives

Our goal is to learn about computer systems that exhibit intelligent behavior, in particular, perceptual and robotic systems. Topics include human computer interfaces, computer vision, robotics, machine learning, game playing, knowledge representation, planning, pattern recognition, and natural language processing.

Prerequisites: Calculus, Linear Algebra, 1 Year Programming Experience (CS 112 level, Python, Java, or C++).



Course Materials

The syllabus below will be updated throughout the semester with lecture notes, videos, and reading materials. Links to homework assignments will come alive when the assignment is ready for you to work on.

Textbook: You are not required to buy a text book. For background reading, you may want to check out the following two books from which I will use materials: Artificial Intelligence by Patrick H. Winston Amazon) and Artificial Intelligence A Modern Approach by Russell and Nordiv, Edition 2 or Edition 3. Both books provide a fundamental background of AI. I will follow, for example, the chapters about Expert Systems and Neural Nets in the Winston book and about Robotics in the Russell and Norvig book, and then augment the materials with newer articles, especially with regards to deep learning.

Computing Environment: You will use the Computer Science Department's main server csa2.bu.edu to submit programming solutions. If you do not have a CS account yet, you may activate your account online at http://www.bu.edu/cs/account. You can also access csa2 remotely using scp and ssh (linux) or putty and WinSCP (Windows). You also have the opportunity to use GPUs provided by the BU IST Department's Scientific Computing Cluster.



Requirements

Class Engagement: Come to class and participate regularly -- either remotely on zoom or in person. Reading the assigned texts and listening in lectures and labs will only give you a "passive understanding" of the material. We encourage discussions during lectures and labs to help you acquire an "active understanding" of the material so that you can evaluate existing computer systems critically and learn to develop your own creative solutions. For students who attend the lectures on zoom, please make sure your zoom profile is professional. It should have your full name and a profile picture. While on zoom, enable your video camera so that we and other students can interact with you more easily during the lecture and labs. If you have bandwidth issues, find other ways of interacting with the instructors and your classmates, for example, answer students' questions on Piazza. Fortunately, our early lecture time in the Boston time zone makes it possible for our remote students in Europe, Africa, and Asia to participate in real time.

Homework: Guidelines for submission will be provided with each assignment. We allow teams of two students for the programming assignments. Each student must prepare their own written homework. Late solutions will be levied a late penalty of 20% per day (up to three days). After three days, no credit will be given.

Course Team Project: The project involves developing a computer vision system in a team. More details will be announced shortly. We will discuss your project's scope, design, and presentation with you in class, labs, and office hours. The project has three due dates: (1) your plan, (2) your initial results, and (3) your final results (see schedule).

Colloquia: You are encouraged to attend the weekly BU AI Seminar series, Mondays, 11 am - 12 noon. You may also check out AI talks in other departments and at other local universities. A partial list includes: BU College of Engineering Seminar Calendar, CSAIL lab at MIT, Northeastern College of Computer and Information Science, Tufts Department of Computer Science Colloquium, and UMass Boston Department of Computer Science.

Talk Reports: You must attend at least three talks on subjects related to Artificial Intelligence and write a summary on each talk. One of these talks must be by a distinguished speaker in our AI lecture series: Juergen Gall (September 21, 11-12 EST) and Serge Belongie (October 19, 11-noon). (Kamilka Chaudhuri's talk had to be cancelled due to a family emergency.) Your writeup should give a problem definition, summarize the methods and results, discuss the work critically, and also briefly explain how the work relates to material discussed in class. One page is sufficient, do not submit more than two pages. Check your text for typographical and grammatical errors, especially if English is not your native language. Use tools to check for errors (e.g., grammarly.com). You will lose points if you simply copy the speaker's abstract, your review is late, contains typographical and grammatical errors, does not contain a discussion, and does not contain a statement how the talk relates to class material.

Exams: There will be two exams on the material discussed in the class and practiced with homeworks. The exams will be quite easy for students who attend class (in person or remotely), participate in our discussions, and keep up with homework assignments and programming projects. The take-home midterm quiz will be during October 20-21, 2020, final exam will be during the finals period in December and will be determined by the University.

Grading Policy: Your final grade will be determined as follows:

Midterm quiz: 10%
Final exam 20%
Programming Assignments 20%
Written Problem Sets 20%
Class Participation/Engagement (Lecture, Lab, Piazza) 10%
Project and its Presentation 10%
AI Talk Reports 10%



Collaboration and Academic Integrity

You are encouraged to collaborate on the solution of the homework. If you do, you must acknowledge your collaborators. Each student must submit his or her own electronic version of the solutions. If you use algorithms or code that are not your own original work and that were not provided in class or discussed in the reading materials, you must give a detailed acknowledgment of your source.

Cheating and plagiarism are not worthy of Boston University students. I expect you to abide by the rule stated above and the standards of academic honesty and computer ethics policy described in http://www.bu.edu/computing/ethics/ and http://www.bu.edu/academics/policies/academic-conduct-code.



Help

Artificial Intelligence is a very exciting topic, and the course should be fun and not too much of a struggle for you. Make sure that you have had the prerequisites. Depending on your level of programming experience and/or mathematics background, the course may be challenging for you. If you do not understand the material, ask for help immediately. Ask questions in class. If one student is confused about something, then maybe others are also confused and grateful that someone asked. Please interact with the TFs and me for help. Our task is to help you learn a very interesting topic. Also interact on Piazza with your classmates. This is your chance to build your network of AI colleagues.



Course Project

Please check this page for the instruction of course project.


Course Schedule

.
Lecture Dates Topics and Lecture Materials Additional Readings Homework & Talk Reviews Programming Assignments & Final Project
2020 Thu 9/3 Introduction: What is AI? Turing Test. Industry Successes Turing test. Russell: Intro, Intelligent Agents. Talk reviews 1--3 assigned. .
2020 Tue 9/8 Research in AI at BU.
Interfaces for people with disabilities: Camera Mouse.
ROC analysis, sensitivity & specificity, precision & recall, F1-measure, confusion matrices.
Camera Mouse
Fawcett, Wiki on F1-measure
H1 (ROC analysis, fairness) Solution .
2020 Th 9/10 Responsible AI: Racial Bias in Emotion Recognition AI Systems, Facially Invalid ML.
Rule-based Systems, Knowledge Bases, Expert Systems, Expert System Example.
Rhue's article
On the use of ML and facial inferences to classify people
Wikipedia: 1, 2, 3
. .
Tu 9/15, Th 9/17, Tu 9/22 Rule-based Deduction Systems, Forward and Backward Chaining, Conflict Resolution Strategies. Logic and Planning, Resolution Proofs. Situation Variables. Planning and Acting in the Real World.

Last day to ADD class: Wednesday, 9/16/2020
Russell: First-Order Logic, Inference, Classical Planning, Planning and Acting in the Real World (Ch 8, 9, 10.1, 10.4, 11.4). Wikipedia: 1, 2, 3. Assigned 9/17: H2 (Rule-based systems) Solution
Assigned 9/24: H3 (Logic, Planning) Solution
.
2020 Th 9/24, Tu 9/29 Machine Learning and Neural Nets.
Learning from Examples, part 1. Learning by Training Neural Nets -- An Example.
Backpropagation: Partial Derivative Examples, Backprop Derivation , Backprop Derivation Notes
Wikipedia 1, 2, 3 Activation functions Assigned 9/29: H4 (ML) Solution .
2020 Th 10/1, Tu 10/6 Backprop Characteristics
Shallow and Deep Convolutional Neural Networks.
Last Day to DROP Classes (without a 'W' grade): Wed 10/7/2020
LeCun 1990 paper, Convolutional Nets, Collard, Sejnowski and NetTalk.mp3, SexNet, Pomerleau, MANIAC, Object Recognition under Affine Transformation 10/1: P1 (NN)
2020 Th 10/8 Computer Vision and Neural Nets: Looking at People and Face Recognition, Image Net 2013-ImageNet, Russell: Perception. 10/7: H4 due .
2020 Tu 10/13 No class. Monday schedule. . . W 10/14 18:00 EST: P1 due
2020 Th 10/15 Kids Room & Computer Vision Lecture Slides, Computer vision introduction. Interactive Rooms. Bobick et al. Russell: Perception. . .
2020 Tu 10/20 Midterm Quiz: Tue 10/20 11:00 EST to Wed 10/21 17:00 EST. . Midterm Quiz
Solution

.
2020 Tu 10/20, Th 10/22, Tu 10/27, Th 10/29 Image Formats Lecture Slides, Computer Vision for interactive graphics (image moments for object area, position & orientation, orientation histograms, template matching, SSD, NCC). Freeman 1, Freeman 2. "How to Program with Images" Lecture Slides. More Computer Vision: 2D Motion, Perspective Projection. 3D Motion Freeman et al., Bruss and Horn (until page 7) H5 (Computer Vision)
Solution
.
2020 Tu 11/3 Markov Models, Hidden Markov Models with Discrete Observations, Rabiner (up to p. 275) 11/6: H5 due 11/4: Project Plan due
2020 Th 11/5 Training HMMs (Baum-Welch Reestimation). HMMs with Continuous Output Densities, HMM Outputs, Applications of HMMs: American Sign Language Recognition, Hand Tracking
Last Day to DROP Classes (with a 'W' grade) : Fr 11/6/2020
ASL & HMMs: Vogler H6 (HMMs)
Solution
Project Start
2020 Tu 11/10, Th 11/12 Game Playing: Minimax Alpha-Beta Algorithm for Adversarial Games. Lecture notes on Adversarial Search. Example. Heuristic Pruning of Game Trees (progressive deepening, tapered search, horizon effect, continuation heuristics). Stochastic Games. Partially Observable Games. . Russell: Adversarial Search (Ch 5), Wikipedia: Minimax. Alpha-Beta, Iterative Deepening,
IBM's Chess Playing Computer versus Kasparov. FIDE, World Chess Federation Network.
Global Games Market 2016, 2017, 2018, 2020.
AI with ChineseCharacteristics
H7 (Games)
Solution
11/14: P2 (Game) out
2020 Tu 11/17, Th 11/19 Speech Recognition, Multimodal News Analysis.
Search Strategies (A*, etc) and Robot Path Planning Lecture Notes.
Watson, IBM's Jeopardy! playing computing system, 11/18: H7 due
.
2020 Tu 11/24 Robotics, Robot Path Planning, Robotics Lecture Notes. Lozano-Perez, Robot Motion Planning, Visibility Graph. . Tue 11/24: P2 due
2020 Wed 11/25- Sun 11/29 Thanksgiving Recess . . .
2020 Tu 12/1 Robotics, Likable Robots. ABOT. Moral Competence of Robots. Mars Robots. Article on Pepper Russell: Robotics (Ch 25), What Makes a Robot Likable? Learning How to Behave: Moral Competence for Social Robots H8 (Robotics)
Solution
12/4: 640 Final Project Report due
2020 Tu 12/8, Th 12/10 Announcing Winner of Game Competition
Natural Language Processing
. 12/9: H8 due Talk review 1 2 3 due
2020 December 15-16 Final Exam will be a 1-day take-home exam: Tue 12/15, 8:00 EST to Wed 12/16, 11 EST. . . .


Links

Check out http://www.cs.bu.edu/faculty/betke/links.html if you need ideas for your class project, if you are looking for a job, or if you are interested in research related to AI and computer vision. You will find a list of links to conferences, journals, research groups, and companies.

Images of AI Research
Margrit Betke, Professor
Computer Science Department
Boston University
111 Cummington Mall (campus map)
Boston, MA 02215
Email: betke@bu.edu
URL: http://www.cs.bu.edu/faculty/betke
Phone: 617-353-8919, Fax: 617-353-6457
Last updated: November 18, 2020