CS63 Artificial Intelligence
Spring 2018

Schedule | Grading | Course Policies | Resources

Announcements


Course Information

Class: M/W/F 9:30–10:20am SCI 181
Lab A: W 1:15–2:45pm Clothier 016
Lab B: W 3:00–4:30pm Clothier 016

Office Hours: M/T 1:30–4:00, Th 10:00–12:00 SCI 262
Piazza Forum: piazza.com/swarthmore/spring2018/cs63

Please make a note of the office hour times and the Piazza link. Take advantage of them to ask a question if something I said in lecture didn't make sense, or you're stuck on a lab, or for any other reason. If you want to talk in person but can't make it during office hours, you can send me an email to set up alternate time, or just drop by any time my door is open. I'm always happy to answer questions, but it's up to you to come and ask.


Course Overview

Artificial Intelligence (AI) is the branch of computer science that is concerned with the automation of intelligent behavior. Intelligent behavior encompasses a wide range of abilities. As a result, AI has become a very broad field that includes search, game playing, reasoning, planning, optimization, natural language processing, modeling human performance (cognitive science), machine learning, and robotics. This course will focus on the topics of search and machine learning, while also drawing connections to several others.

We will begin by formulating abstract reasoning as a search problem, and exploring algorithms for solving such problems. The first search techniques we will encounter (breadth-first and depth-first) should be familiar, but will be followed by new techniques for heuristic search and local search. We will also consider how search works with multiple agents, leading to exploration of game tree search and Monte Carlo search methods. Finally, we will consider search with ucertain actions and in unknown environments, which will lead us into reinforcement learning.

After spring break, we will start to consider agents that learn from data about the world around them. We will see that the task of machine learning encompases neural networks, reinforcement learning, and much more. We will proceed to study several problems in supervised and semi-supervised learning, focusing on deep learning approaches. The semester will conclude on a more philisophical note, considering past, present, and future progress toward and the implications of true AI.


Goals for the course

After completing this course, you should be able to:


Readings

The reading for this class will be posted on this web page. You are expected to read assigned pages prior to the class meeting on which they are assigned. There will be occasional reading quizzes, so be sure to check the schedule each week and stay up to date.



Schedule



Prerequisites

The only official prerequisite to AI is CS35. However, from time to time, I will refer to concepts that will be more familiar to students who have taken certain other classes previously. You certainly don't need to have taken courses in the following subjects to succeed in AI, but I recommend giving the following videos a quick skim and watching fully any that don't seem already familiar. If you have questions after watching any of these videos, please stop by office hours; I am more than happy to help fill in the details.

Grading

Grades will be weighted as follows:
50%Labs
20%Exam 1
20%Exam 2
5%Class Participation
5%Reading Quizzes


Course Policies

Lab Assignments

Labs will be assigned on Wednesdays, during the scheduled lab time, and will be due on Tuesdays by midnight. Even if you do not fully complete a lab, you should submit what you have done to receive partial credit.

You are encouraged to work with a partner on all labs after lab 0. If you wish to work with a partner, you must inform me by Monday of week 2 (Jan. 22). If you wish to work with a partner, but have not found one, you should inform me by the same deadline, and I will try to assign you one. If you wish to change partners after week 2, please give me plenty of warning. If possible, all members of the affected groups should contact me to confirm the change.

You have three late days that you may use on any lab, for any reason. If you are using one or more late days, you must contact me by email when you submit your assignment.


Academic Integrity

Academic honesty is required in all of your work. Under no circumstances may you hand in work done with (or by) someone else under your own name. Your code should never be shared with anyone; you may not examine or use code belonging to someone else, nor may you let anyone else look at or make a copy of your code. This includes, but is not limited to, obtaining solutions from students who previously took the course or code that can be found online. You may not share solutions after the due date of the assignment.

Failure to abide by these rules constitutes academic dishonesty and will lead to a hearing of the College Judiciary Committee. According to the Faculty Handbook: "Because plagiarism is considered to be so serious a transgression, it is the opinion of the faculty that for the first offense, failure in the course and, as appropriate, suspension for a semester or deprivation of the degree in that year is suitable; for a second offense, the penalty should normally be expulsion."

Discussing ideas and approaches to problems with others on a general level is fine (in fact, I encourage you to discuss general strategies with each other), but you should never read any other student's code or let another student read your code. All code you submit must be your own with the following permissible exceptions: code distributed in class, code found in the course readings, and code worked on with a partner. In these cases, you should always include comments that indicate on which parts of the assignment you received help, and what your sources were.


Academic Accommodations

If you believe that you need accommodations for a disability, please contact the Office of Student Disability Services (Parrish 113W) or email studentdisabilityservices@swarthmore.edu to arrange an appointment to discuss your needs. As appropriate, the Office will issue students with documented disabilities a formal Accommodations Letter. Since accommodations require early planning and are not retroactive, please contact the Office of Student Disability Services as soon as possible. For details about the accommodations process, visit the Student Disability Service Website. You are also welcome to contact me privately to discuss your academic needs. However, all disability-related accommodations must be arranged through the Office of Student Disability Services.



Online Resources

Neural Net Review Videos: General AI textbooks: Machine learning textbooks: Other books: Tutorials: Papers: Visualizations: Code/Tools: For Future Reference: AlphaGo: