Syllabus for
Artificial Intelligence
COSC 561
(MW 5:30-6:45, PH302)
Instructor: Matt Evett
Dept. Computer Science; room 512E Pray-Harrold
Tel: 734-487-1227; e-mail: evett@emunix.emich.edu;
http://emunix.emich.edu/~evett/AI
http://webcaucus.emich.edu (the cosc561_Fall05 caucus).
Office Hours: MW 2:00-4:00, Tu 3:00-5:00
You may drop by at times other than office hours, but in that case I cannot
guarantee that I'll be able to see you.
Prerequisite: Senior-level programming course.
Textbook: George Luger, Artificial Intelligence: Structures and Strategies for Complex Problem Solving, fifth edition. Addison-Wesley, 2005.
Course Summary: The course shall provide students with knowledge of
the rudiments of the main subfields in the study of artificial intelligence.
The course outline will roughly follow Russell & Norvig's book, but we will
spend more time in some areas than does the book, and less in others.
- The History of AI
- Lisp
- Intelligent agents
- Search (graph search, heuristic search [A*], Minimax, monotonicity, acceptability)
- Game playing
- Representation via logic--first order logic, predicate logic, inferencing,
backward-chaining
- Robotics
- Uncertainty & probability
- Learning, neural networks & evolutionary computation
The course is project oriented, with programming assignments spread throughout
the semester.
Course Calendar:
Due dates for projects are underlined
. Exam dates are in bold. Be aware that
due dates sometimes slip. You are responsible for monitoring the course
webcaucus for the latest deadlines. In addition, programming assignments
(particularly the later ones) may be altered to accomodate the interests
of the class as the semester progresses.
Date |
Text |
Projects due |
9/7 |
Ch 1 |
|
9/12,14 |
Ch 2 (Predicate Calculus) |
|
9/19, 21 |
Ch 3, 4 (Uninformed & Heuristic search) |
Logic 1 |
9/26, 28 |
Hand-outs (Adversarial search--game playing) |
|
10/3, 5 |
Ch 5 (Stochastic Methods) |
Search 1 |
10/12, 14 |
Ch 6 (Production Systems) & Lisp |
Checkers |
10/17, 19 |
Ch 7 (Knowledge Representation) |
|
10/24, 26 |
Ch 8 (Strong Reasoning, Planning) |
Midterm Exam |
10/31,
11/2 |
Ch 8 & 9 |
|
11/7, 9 |
Ch 9 (Reasoning amid Uncertainty, Bayesian Networks) |
Planning Project |
11/14, 16 |
Ch 9 & 10 |
|
11/21, Thanksgiving |
Ch 10 (Symbolic Machine Learning, Decision Trees) |
|
11/28, 30 |
Ch 10 & 12 |
Maching Learning |
12/5, 7 |
Ch 12 (Evolutionary Computation) |
|
12/12, 14 |
Ch 11 (Neural Networks) |
EC Project |
12/19, 5:30-7:00 |
|
Final Exam (&Project?) |
Grading Policy:
The final course grade will be a weighted average of the grades received
in each of the following categories, as specified: Small projects & homeworks5%, Programs 45%, Midterm exam 20%, Final exam 30%..
Tardiness Policy: Programming and other homework assignments will
be due at the beginning of class. After that, assignments will be
accepted through the start of the next scheduled class, but will suffer a
full grade penalty. E.g., if a late programming assignment is worthy of an
'A', I will mark it a 'B'. Assignments more than one class late will not
be accepted, and will receive a grade of 'F'.
Attendance Policy: We're all grown-ups, when and whether you attend
class is up to you. However, missed assignments and exams shall only be
excused by a doctor's written note, verifying that the student was medically
indisposed to attend class that day.
Grading of Programs: Grading of programming assignments will reflect
three factors, weighted as shown.
- (70%) Correctness -- does the program run correctly?
- (15%) Style -- does the code adhere to class documentation standards?
Is the code indented properly? Are the variable names mneumonic? How well
has the student followed the basic formatting characteristics for the language?
- (15%) Design -- is the program adequately decomposed (i.e., are the
functions and procedures small enough to be comprehensible)? Are the class
and structure definitions well chosen? How well has the student taken advantage
of the language's capabilities?
Announcements and the Web Page:
Students should view the course web page regularly for announcements regarding
programming assignments, readings, etc. I update course web pages frequently!
Academic Irregularities:
Students are required to attend to the policy on academic irregularity outlined
in the EMU student handbook (see the full policy at http://dsa.emich.edu/sjs/discproces.html).
In addition, collaboration among students in solving programming and homework
assignments is forbidden. If I receive programs or homework assignments that are
substantially equivalent, or which are not the original work of the student submitting
the material, I will not hesitate to punish all involved parties to the fullest
extent, up to and including assignment of a failing grade for the course, and
referral to the Office of Judicial Student Services for possible punitive action
at the University level, which may include expulsion from the University. In addition,
the University and the computer science department maintain policies regarding
proper behavior on its computer systems. Failure to adhere to these policies can
result in loss of computer privileges, and possible legal action.