Artificial Intelligence (CS 07.450 1)
Spring 2007
Rowan University


Instructor: Dr. Nancy Tinkham
Office: Computer Science Department, Robinson
Phone: 256-4500 ext. 3869 (office), 863-0124 (home)
E-Mail: nlt@elvis.rowan.edu
Web: http://elvis.rowan.edu/~nlt
Office Hours: Monday & Wednesday 1:00-3:00; and by appointment

Class meeting times:

Monday & Wednesday:  5:00-6:15, Robinson 211
Text:
Luger, Artificial Intelligence, 5th edition, ISBN 0-321-26318-9 (required)
Clocksin & Mellish, Programming in Prolog, 5th ed., ISBN 3-540-00678-8 (recommended)
Grading:
Homework: 25%
Semester project: 30%
Exam 1: 15%
Exam 2: 15%
Final Exam: 15%
Homework and exam policy:

Grade points will be deducted for late homework at the rate of 5 points per weekday.  (For example, a homework assignment that is due on Wednesday and received the following Monday will receive a maximum grade of 85.)

Some of the homework assignments will be paper-and-pencil, and others will be programming assignments. In addition to the smaller programming assignments, there will be a semester project, in which you will be writing a large program in a programming language of your choice. Some assignments will be individual assignments; in others, you will be allowed to work in groups. See the individual assignments for details.

Programs will be graded not only on correctness but also on style and on the quality of the solution.

Prerequisites:
  1. Foundations of Computer Science (CS 07.210)

    You should be comfortable with propositional logic and formal grammars, and you should be familiar with first-order predicate logic.

  2. Data Structures (CS 04.222) or Data Structures for Engineers (CS 04.225)

    You should be comfortable programming in a high-level language, including the use of trees, lists, and recursion. Knowledge of Java or C++ is not required. Knowledge of Prolog is helpful but is not required.

  3. Discrete Structures (MATH 03.160) or Discrete Math (MATH 03.150)

    You should have the mathematical maturity that comes from completing a Discrete Structures or Discrete Math course. You should also be familiar with trees, graphs, sets, and relations.

  4. You will need some familiarity with the UNIX operating system for the Prolog programming portion of the course -- how to use one of the editors, how to print files, and how to do basic file management (copying files, creating directories, and so on). If you have never used UNIX before, see me and I will recommend some references.
Course Topics:

Basic tools for AI problem solving: Knowledge representation (including the predicate calculus), state space search, heuristic search.

One language for AI problem solving: Prolog.

Application areas, including: Puzzle-solving, game-playing, theorem-proving, expert systems, natural language processing, learning and inference (including genetic algorithms).


Nancy Tinkham
Computer Science Department, Rowan University

Valid HTML 4.0!