CMSC 671: Introduction to Artificial Intelligence
Last revised 8/19/10
Instructor: Marie desJardins
mariedj @ cs.umbc.edu
Office Hours: Mondays/Wednesdays 1:30-2:30.
Teaching Assistant: Xianshu Zhu
Office Hours: Mondays/Wednesdays 3:45-4:45.
This course provides an introduction to artificial intelligence concepts
Specific topics we will cover include the agent
paradigm in AI systems, search, game playing, knowledge representation
and reasoning, logical reasoning, planning,
uncertain reasoning and Bayes nets, multi-agent systems, machine
learning, the history and philosophy of AI, and the
Lisp programming language.
The equivalent of an undergraduate degree in computer
science. In particular, students should have completed
CMSC 341 (or the equivalent) and have strong programming skills.
CMSC 441 or exposure to the theory
of complexity of algorithms will also be useful.
You should know the fundamentals of propositional and first-order logic, probability
theory, and big-O complexity analysis.
A pretest will be given to assess your familiarity with this material.
This course schedule is
subject to change. We will follow the Russell
and Norvig textbook fairly closely, with some additional background material
on other topics of interest.
When and Where
Monday and Wednesday from 2:30-3:45 in Sondheim 110.
We will be using the following textbooks:
I will provide a number of online resources for learning Lisp, in
addition to the reference manual listed above, so you
may choose whether you would like to purchase the Paul Graham textbook.
Required: Artificial Intelligence:
A Modern Approach, 3/e, Stuart J. Russell and Peter Norvig. Prentice Hall,
2009. The website for this
book has links to many useful online AI resources.
ANSI Common Lisp, Paul Graham. Prentice Hall, 1995. ISBN: 0-13-370875-6.
- Online manual:
Lisp : The Language, Guy L. Steele, Jr. Digital Press, 1990. ISBN: 1555580416.
Text available online at http://www.cs.cmu.edu/Groups/AI/html/cltl/cltl2.html
. This is the reference manual for Common Lisp. Not required
for the course, and most of you will find the online version sufficient
as a resource, but handy to own if you like real books.
As you will learn, I am a strong believer in two-way 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, I maintain an open-door policy:
you should feel to stop by to ask questions, or just say hello, whenever
my door is open (which it generally will be unless I am out of the office,
in a meeting, or deep in thought). (I'm not that great at remembering names,
so please don't be offended if I ask you several times to re-introduce
yourself!) I will also make a concerted effort to answer e-mail within
Course grades will be based on the following work. The final weighting
may be changed slightly.
|Homework (five assignments)
|In-class research article presentation
Please refer to the class grading
There will be five written homework assignments and a "mini-project"
that will have the same late policy as the homeworks. Each assignment will
have a due date and is expected to be turned in on time. Extensions of
up to one week may be granted on an individual basis, if requested in advance. Repeated requests for extensions,
or requests for extensions at the last minute, will be denied other than
in extraordinary circumstances.
Homeworks will be due at the beginning of class on the due date. A
late homework will be applied as follows:
0 to 24 hours late: 25% penalty
24 to 48 hours late: 50% penalty
48 to 72 hours late: 75% penalty
More than 72 hours late: no credit will be given
Please do not walk into class 20 minutes late and expect your homework to
be counted as on time. Homeworks
must be handed in as hardcopy.
(For the mini-project, you will need to print and turn in
your documented code, along with the project writeup,
as explained in the project handout.)
Students will be expected to complete a course project
that follows the structure of a research exploration of
a particular topic in AI. These projects can be completed
individually or in pairs. Students will
(1) identify a concept or
algorithm from the course to explore in more depth, (2)
submit a proposal describing the planned project, (2) implement a
working AI system based on their topic, (3) carry out an empirical analysis
of their work, (4) demonstrate their implemented system to
the course staff, and (5) write a formal research paper
summarizing their findings.
Note that the mini-project (which must be completed
individually) is designed to be a smaller-scale (and
more structured) version of the course project, for students
to get some practice in the expectations for the larger project.
Each student will be required to select a research paper from the recent
AI literature and to give a short presentation on the
paper at the end of the semester. The papers can be based on one
of the course topics, or on an AI topic that is not
covered in the main part of the course; students must have
their selected paper approved by Dr. desJardins. The goals
of this assignment are:
(1) to give the students in the course
a broader sense of the current directions of
AI research, (2) to give you some practice in reading
and understanding technical papers, and (3) to give you
an opportunity to practice the skill of making formal
There will be one in-class midterm examination and a final examination. 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
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."
Cheating in any form will not be tolerated. All work submitted must be your own
work, and use of any outside sources or help must be clearly documented. The
penalty for violation of the class policy on academic honesty will be, at a minimum,
a zero on the entire assignment. All students must read the course academic
honesty policy and sign a statement saying that they have read and understood
We will be using CLISP, a public-domain
implementation of Common Lisp that is installed on the department and
machines, in /usr/local/bin/clisp. You can also download a version that will
run on a PC (Linux or Windows) or a Mac.
671 Mailing List
You should subscribe to the class mailing list by
visiting lists.umbc.edu and searching for the list
Class announcements, hints, and discussion of assignments will be posted
on this list. You can also send messages to the list to ask questions of
your fellow students and/or TA and professor.
General questions (i.e., anything that another student may also be wondering
about) should be sent to the list, so that everyone will be able to benefit
from the answers. Students are welcome to post answers to questions, even
if the questions were directed at the instructor. However, the academic integrity
policy above must be strictly adhered to. Clarifications of homework questions
and pointers to useful resources are fine; answers (or even hints at answers)
to homework questions are not. When in doubt, ask the professor.
requests for extensions, questions about individual grades, and the
should be sent directly to Prof. desJardins.
Thanks to Tim Finin (UMBC), Berthe Choueiry (University of Nebraska
- Lincoln), Daphne Koller (Stanford University),
Eric Eaton (formerly of UMBC), and Don Miner (formerly of UMBC)
for making their course
materials publicly available on the web. Some of the course materials (slides
and homeworks) have been adapted from those sources.