Syllabus • Schedule • Academic Integrity • Piazza Page

Syllabus


About This Class

Tuesday & Thursday 1-2:15, PAHB 234

Instructor: Dr. Cynthia Matuszek (Dr M)   •   cmat@umbc.edu   •   ITE 331
Office hours: Monday 10:00-11:00, Wednesday 10:30-11:30, or by appointment. These are subject to change; changes will always be posted to Piazza.

TA: Erfan Noury Qarajalar   •  erfan1@umbc.edu   •   ITE 334
Office hours: Tuesday 10:30-11:30, Tuesday 4:30-5:30, or by appointment.

This course will serve as an introduction to artificial intelligence concepts and techniques. We will use Python as a computational vehicle for exploring the techniques and their application. Specific topics we will cover include the history and philosophy of AI, the agent paradigm in AI systems, search, game playing, logical reasoning, uncertain reasoning and Bayes nets, planning, machine learning, and multi-agent systems, robotics, and natural language processing. If time permits, we may also briefly touch on functional programming, perception, and knowledge representation and reasoning.

This class, like the field of AI itself, is very broad. We'll cover a lot of subjects in a relatively short period of time. This means a lot of reading, but also a lot of exposure to neat (and useful) concepts. This is a foundational class—students should expect to come away with a good grasp of the terminology, fundamental approaches, and background of AI broadly, and be prepared for subsequent classes in topics such as machine learning, NLP, robotics, and vision. We will also have several guest lecturers through the semester who will talk about their AI-related research areas; this will help students tie the core ideas we are learning to their applications in research.

Textbook:

Required: Artificial Intelligence: A Modern Approach, 3rd. Edition, Stuart J. Russell and Peter Norvig. Prentice Hall, 2009.
Note: The edition matters!
Note: The website for this book has links to many useful online AI resources.

Prerequisites:

Strong programming skills, especially in Python. We assume you have a solid background in Boolean logic, basic probability theory and combinatorics, complexity analysis, algorithm design, and data structures. If you did not learn much about these topics, you may have to brush up on them on your own. Additional probability theory/statistics, linear algebra, and complexity theory will also be useful.

Academic Integrity:

This course adheres to the Provost's statement on academic integrity:

"By enrolling in this course, each student assumes the responsibilities of an active participant in UMBC's scholarly community in which everyone's academic work and behavior are held to the highest standards of honesty. Cheating, fabrication, plagiarism, and helping others to commit these acts are all forms of academic dishonesty, and they are wrong. Academic misconduct could result in disciplinary action that may include, but is not limited to, suspension or dismissal. To read the full Student Academic Conduct Policy, consult the UMBC Student Handbook, the Faculty Handbook, or the UMBC Policies section of the UMBC Directory."
Make sure you have read and understood the Class Academic Integrity Policy. I take academic integrity very seriously.

Communication

I expect all students to participate in classroom discussions, both by asking questions and by expressing opinions. In return, I will make myself available to answer questions, listen to concerns, and talk to any student about topics related to the class (or not). I welcome your feedback throughout the semester about how the course is going. In addition to regular office hours, you can schedule an appointment with me if you think one-on-one time would help.

Piazza:

We will use the discussion forum Piazza extensively, including important or time-critical updates, questions and discussion, class participation, and links. The only thing we'll use Blackboard for is posting grades and turning in assignments. You are responsible for knowing the information that is posted on Piazza, including class announcements, hints, and discussion of assignments. You should join the class Piazza discussion board right away. Be sure to set your email preferences so that the messages will come regularly to an account that you actually read.

You can, and should, post questions on Piazza to be answered by your fellow students and/or TA and professor. General questions (i.e., anything that another student may also be wondering about) should be posted here, rather than sent to the professor and TA. Responses posted by students to questions on Piazza must follow the academic integrity guidelines outlined above, so it's okay to post about questions about the assignment, resources you're using, clarifications to the question, and general approaches—just don't post code (either in questions or answers).

Email:

Any course-related email must be sent to the professor and the TA. If you send email just to the professor, it may be answered late (or just lost). We will make a concerted effort to answer e-mail that goes to both professor and TA in 24-48 hours; however, Piazza posts will get faster responses.


Coursework and Grading

Course grades will be based on the following work. The final weighting may be changed slightly.

  • Homework: 30% (Either 5 or 6 biweekly assignments that may be worked on individually or, as announced, in small groups)
  • Course project: 28%
  • Midterm exam: 15%
  • Final exam: 20%
  • Class participation: 5%
  • Quizzes and surveys: 2%

Late Work:

I expect good time management, but collisions (such as conference attendance) can always happen. We will address these on a case-by-case basis; the sooner you let us know there's a conflict, the better. Extensions of up to one week may be granted on an individual basis by the instructor in some circumstances, if requested well in advance. Repeated requests for extensions, or requests for extensions less than a week ahead, will be denied other than in extraordinary circumstances.

Homeworks will be due by 11:59pm on the due date unless something else has been posted. They are due the day before the relevant lecture on the schedule.

Work turned in after the due date will accrue a 25% late penalty per day unless arrangements have been made in advance with the professor. Please do not ask us to waive this penalty unless something extraordinary happens; it is firm. There is a 10% penalty for failing to follow turn-in instructions (e.g., sending the wrong file type).


Classroom Policies

  • No devices. Because you will be doing some work in class, you may want to bring a laptop with you. However, except when specified, laptops, computers, and phones must remain closed, down, or put away. For more, read this article.
  • Please don't eat in class, for the same reason: it can be very distracting to other students, especially if people can smell your food.
  • Be courteous to one another. Listen to your classmates' questions and comments without interrupting, and consider what they are saying; when someone is presenting, give them your attention.