About CMSC 471

This course serves as an introduction to Artificial Intelligence concepts and techniques. We will cover most of the material in our text, Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig, including the agent paradigm in AI systems, search, game playing, knowledge representation and reasoning, natural language processing, planning, machine learning, and philosophical issues. See the schedule for more details.

This is an upper-level undergraduate Computer Science course and we will assume that you will have a good grounding in algorithms and adequate programming skills. Many of the homework assignments will involve programming and you will be expected to do them in Python.

Text Books

We will be using Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig, second edition. This edition has been out for many years, so you should be able to find used copies available to borrow or buy. You can also buy it online here.

Q&A and Discussion

We wil use Slack for online discussions outside of class. The TA and I will monitor slack, but if you really want an answer to something quickly you should mention our usernames in the post or use a direct message. The slack channel is umbc-cmsc471-fall2017.slack.com.

Schedule

A schedule is available.

Grading

Grades will be based on performance on quizes, assigned homework, a mid-term examination and a final examination as follows:

  • quizes: 10%
  • homework: 55%
  • midterm: 15%
  • final: 20%

As per University policy, incompletes will be granted only under extraordinary circumstances; students who are enrolled after the last day to drop a class should be prepared to receive a grade of A-F on a standard 10 point scale.

Quizes

We'll have periodic quizes on Balckboard based on the reading. Answering the quiz questions should be easy if you have done the reading.

Homework

There will be seven short homework assignments. Each assignment will have a due date and it is expected to be turned in on time. A penalty for late homework will be applied.

Exams

The material covered by the exams will be drawn from assigned readings in the text, from lectures, and from the homework. Material from the readings that is not covered in class is fair game, so you are advised to keep up with the readings.

Academic Honesty

We will follow a policy described in this statement adopted by UMBC's Undergraduate Council and Provost's Office.

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.

Written answers on essay questions for homeworks and papers must be your own work. If you wish to quote a source, you must do so explicitly, using quotation marks and proper citation at the point of the quote. Plagiarism (copying) of any source, including another student's work, is not acceptable and will result in at a minimum a zero grade for the entire assignment. Please review this overview of how to correctly cite a source and these guidelines on acceptable paraphrasing.

Software

Many of the assignments will involve programming and/or using software packages and we will assume that everyone has a basic familiarity with Python.