CS440 Fall 1998: Introduction to Artificial Intelligence
What's New
- Copy the PROLOG SOLUTION KEY directly from my
home directory as follows: cp ~whitley/solution yourfilename
- A shorter version of this page matching the class handout is given
in the class
description .
- All papers are due Tuesday November 30 at 12:30pm in class.
This deadline has no late period. If you cannot make that
date/time, you must obtain prior approval with the instructor.
- Example Assignment 5
Description:
The course objectives are to learn symbolic computation
using Common Lisp and Prolog, to practice techniques for programming
AI applications, and to introduce the fundamental theories, algorithms and
representational structures underlying Artificial Intelligence.
Class discussions will range from Lisp and Prolog programming
fundamentals to philosophical issues in Artificial Intelligence. Lisp
and Prolog are used to illustrate basic data structures and
programming techniques in AI. Common Lisp and Prolog programs
implementing problem-solving search methods, logical reasoning
techniques, rule-based systems, semantic nets, and frames will be
studied and modified. We will also briefly look at machine learning
and neural networks.
Other topics will be covered as time permits.
The class is structured around a lecture format; however, class
discussions, questions and participation are strongly
encouraged.
Logistics
Course Requirements
Textbook:
Artificial Intelligence: A Modern Approach
by Russell and Norvig.
Pre-requisites:
CS253 and CS301.
Students are expected to have introductory knowledge of Common Lisp
and knowledge of discrete structures.
Software Requirements:
Interpreters for Common Lisp and
Prolog. Any Lisp implementation should follow the Common Lisp
standard. At CSU, we will be using Allegro Common Lisp and SBProlog,
both public-domain environments. These can be obtained by off-site
students for a number of machine types. Other implementations may be
acceptable as well; check with the instructor.
Grading:
The course requires demonstration of student's grasp of the concepts
through exams, homework assignments and a paper.
| Assignments (5 to 8) | 21% |
| Paper | 20% |
| Exam 1 | 25% |
| Exam 2 | 25% |
| quiz | 9% |
| Optional Final Exam | 25% |
- Homework:
- Five to eight homework assignments will be
assigned during the semester. Many of the assignments will be
small programming projects. A few assignments may involve writing.
At least one assignment will involve a larger programming project.
- Paper:
- A research paper is required for the class.
Examples of topics include: planning, computer vision,
natural language processing, neural networks, machine learning,
genetic algorithms, computer chess, etc. At least 10
references are required. The paper must be formated
(e.g. latex, word). The paper should be 8 to 10 pages
using 12 point font. The paper should be evaluative in nature.
How does the technology work, what are its strengths and
weaknesses, and what kind of applications does it have?
Copying text (e.g. sentences, paragraphs or minor variations
on the original text) from published works or from other
research papers will result in a zero on the paper.
- Examinations:
- Two exams and one quiz will be given. Note that the
exams, quiz, assignments and paper total 100 points. The final
is optional. If you are not happy with your grade, your
pre-final points will be scaled to 75 percent, and the final
will be worth 25 percent.
Logistics Related to Grading:
Each assignment must be submitted at the beginning of class on the
given deadline for that assignment; late period for assignments will
be the start of the next following class and will incur a
penalty of 10%. Assignments turned in after that time receive no
credit. If you miss one exam, the final will substitute for the
missed exam. If you miss a second exam, you will receive a zero
for the exam. No make-up exams will be given.
I encourage you to talk with other students about your assignments
and questions, but make sure you write your own programs and
assignments. You may not copy another student's program (either with
or without their knowledge) or write code for them. Copying of programs
will result in a grade of zero for ALL assignments. Please read the
departmental policy statement regarding incompletes, cheating, and
class attendance. This policy statement is in the file student info.
We will follow the guidelines outlined in these documents.
Course Topics:
| Date | Topic | Readings |
| 8/24,26 | Class requirements. Introduction to AI. Agents. | |
| 8/31-9/2 | Search basics | Ch.1,2 |
| 9/7 | Search basics, Common Lisp | Ch.3 |
| 9/9,14 | Common Lisp and AI programming | |
| 9/16 | Common Lisp and AI programming | |
| 9/21** | REVIEW | |
| 9/23** | EXAM 1. | |
| 9/28,30 | Search - Strategies | Ch. 4 |
| 10/5,7 | Genetic Algs-Genetic Programming | |
| 10/12,14 | Feedforward Neural Networks | Ch.19 |
| 10/19 | Hopfield Neural Networks | Ch 10. 316-327 |
| 10/21 | Propositional Calculus | Ch 6. 157-174 |
| 10/26,28 | Predicate Calculus and Inferencing | Ch.7 185-201 |
| 11/2,4 | Resolution and Refutation, Prolog | Ch.9 |
| 11/9,11 | Prolog Programming | |
| 11/16,18 | REVIEW and EXAM | |
| 11/23,25 | THANKSGIVING | |
| 11/30, 12/2 | Machine Learning | Ch.18 |
| 12/7 | Decision Trees/QUIZ | Ch.18:525-544 |
| 12/9 | Review and Wrap-up | |
| 12/15 1:30-3:30PM | Final Exam |
|

Resources Available:
- Useful Newsgroups:
- csu.cs.440: you may ask questions of other students here.
- comp.ai: general
discussions on AI from folks around the world
- comp.lang.lisp: discussions about lisp programming environments,
- comp.lang.prolog: discussions about prolog programming
environments.
- LISP:
- Prolog:
- Fun stuff
- Bibliographies and Sources of Literature