General Information
Course
:
CSC416
Foundations of Artificial Intelligence
Instructor
:
Craig Graci
Text
:
none
Office
:
114 Snygg Hall
Telephone
:
315.312.2690
Course Description
Elements of Common Lisp will be introduced through examples
and a number of programming exercises. These examples and exercises will
feature basic tools and techniques associated with the field of Artificial
Intelligence (AI), including
state space problem solving
,
problem reduction methodologies
,
minimax game playing
, and
productions systems
. We will commence our study of Lisp with elementary built in data types
and culminate our study with an in depth examination of CLOS, the Common
Lisp Object System. In between we will perform recursive list processing,
program with higher order functions, design macros, and compute with a host
of other language features. In short, we will explore a wealth of programming
language concepts and constructs.
The Prolog language will then be introduced through examples
and a number of programming exercises. The Prolog expierience will benefit
from the earlier Lisp expierience through which numerous important concepts
of a general nature will have been learned. Emphasis will be placed in pattern
matching and the inferential nature of Prolog. Exercises will feature classic
knowledge representations assiciated with the field of Artificial Intelligence.
The important areas of neural networking and evolutionary programming will be introduced, conceptually and computationally.
Throughout the semester readings will be assigned which generally
discuss fragments of AI from a historical perspective. The premise here is
that, as with the learning of a natural language, the learning of an artificial
language can be greatly enriched by a close look at (virtual emersion in)
the culture in which the language thrives. While Lisp and Prolog are both
general purpose programming languages, Artificial Intelligence is the culture
in which these two languages thrive. Main Course Objectives
- To describe foundational elements of Artificial Intelligence, especially aspects of
knowledge representation
and
search
.
- To write programs in the
Lisp programming
language, programs with an AI flavor which implement various foundational
concepts. Common Lisp (including CLOS) will be the featured Lisp dialect.
- To write programs in the
Prolog
programming language, programs with an AI flavor which implement various foundational concepts.
- To introduce the basic ideas associated with
neural networking
and
evolutionary programming
.
- To discuss historical events and cultural elements associated with the field of Artificial Intelligence.
Requirements
You are required to regularly attend class. You are required
to take all exams and quizzes. Beyond this, you are required to satisfactorily
complete two activities.
- Programming Challenges
- Course Web Site
Grading
Your grade will be determined by the following 3 step procedure.
- Establish a grade of A, B, C, D or E, based on the total
number of points you earn on four examinations and a number of quizzes. Three
of the exams will be "regular season" exams, each worth 100 points. The fourth
exam will be your "final exam" , worth 150 points. The quizzes will be "randomly"
administered throughout the semester, and will collectively count 100 points.
- Once your exam has been determined, it will
be lowered one letter grade for each of the following requirements, that
you fail to "satisfactorially" complete them. In this context, "satsifactory
completion" means "C or better".
- Programming Challenges
- Personal Course Web Site
- In the few cases where your grade as determined
by Step 1 is a really close call, it will be "promoted" or "demoted" to fit
squarely within one of the two equidistant grade categories according to
whether or not your grades on each of the requirements mentioned in Step
2 is "very high" or not. In this context, "very high" means "A".
Other Things
- All assignments for which submission is required must
be handed in to me immediately after class in the room where this class regularly
meets. All assignments must be presented in the form of an 8 1/2 x 11 inch
document, bound on the left by three staples. Each must begin with a title
page which includes your name, the number of the assignment, and a brief
description of the assighment.
- Requests to make up exams or assignments
will rarely be considered unless accompanied by a written medical excuse
for your absense.
- It is intended that you complete your work
by yourself. You are, of course, welcome to ask specific technical questions
of others and converse over conceptual issues, but you should be doing your
own work. Compelling evidence that someone other than you contributed conspicuously
to the completion of required work will result in a "maximum negative" grade
for that assignment, failure in the course, or worse.
|