UNIVERSITY OF DAYTON

 

CPS 480/580: Artificial Intelligence

Winter Semester 2006 3 credits

Meets: T,Th 3:00-4:15pm

201 Miriam Hall

 

Professor: Dr. Jennifer Seitzer

Office: 144 Anderson Hall

Email: seitzer@udayton.edu

Course Web Page: http://homepages.udayton.edu/~seitzer/cps480

Phone: (937) 229-2197

*Office Hours:

  • Tuesday: 12-1 pm
  • Thursday: 12-1 pm
  • Friday 2-4 pm
  • BY APPOINTMENT arrange with instructor

*These are tentative and will possibly change due to departmental meetings and other college events as they arise.

 

Mailing Address:

Dr. Jennifer Seitzer, Assistant Professor

Computer Science Department

University of Dayton

300 College Park

Dayton, OH 45469-2160

Prerequisites:

CPS 350 Data Structures and Algorithms.

 

 

Catalog Description:

Basic concepts and techniques of intelligent systems. Emphasis on representations, problem solving, search strategies, expert systems, logic systems, and AI programming. Design and implementation of AI applications.

 

Motivation:

Artificial Intelligence is the area of computer science that attempts to endow intelligence to computer systems. Although a precise definition of intelligence is still elusive, one way we may characterize intelligent entities is as those entities that are capable of using language, solving problems, planning, learning, and remembering. These skills applied to computer systems make up a large part of artificial intelligence. Indeed, Russell and Norvig, the authors of the textbook we will be studying, emphasize that not only does AI strive to understand intelligent entities, it strives to build them.

 

The authors tell us that an agent is any entity that perceives its environment through sensors and acts upon or changes its environment through actuators or effectors. In this class, we will consider many manifestations of agents. We will approach the fundamental techniques of classical artificial intelligence, knowledge representation and heuristic search strategies, using agents to implement, understand, and elucidate. We will learn the basics of the programming language PROLOG, and examine how expert systems are built and used. We will finalize our study by considering embodied intelligent agents in the form of robots.

 

Objectives:

         To learn basic heuristic search strategies and algorithms

         To understand the techniques underlying game programs such as chess and bridge

         To learn knowledge representation techniques including logic, fuzzy logic, non-monotonic reasoning, frames

         To understand strategies of reasoning: forward chaining, backward chaining.

         To be exposed to intelligent agents, both software and physical robots

         To program the techniques and algorithms studied in class into working systems

Subject Matter (Tentative list and schedule of coverage):

Week

Topics

Readings

 

1 Week of 01/01/06

Introduction to AI; Turing Test

Chapter 1

2 -- Week of 01/08/06

Agents

Chapter 2

3 -- Week of 01/15/06

State Space Search,

Heuristic Search Techniques

Chapters 3

4 -- Week of 01/22/06

A* Algorithm

Games - Minimax with Alpha Beta Cutoffs

Chapters 4 and 5

Last Day to Withdraw with no record Wednesday 1/25/2006

 

 

5 Week of 01/29/06

Computers and Chess; Midterm 1

Chapter 6

Midterm #1 --

Thursday, February 2, 2006

Covered Material so far

 

6 -- Week of 02/05/06

Propositional Logic; CNF and DNF Normal forms, and Predicate Logic

Chapter 7

7 -- Week of 02/12/06

Reasoning with Resolution; Forward/Backward

Chapter 9

8 -- Week of 02/19/06

Logical Reasoning Systems

Chapter 10

9 Week of 02/26/06

PROLOG and more Reasoning Systems

Chapters 10

10 -- Week of 03/05/06

Fuzzy Logic

Chapter 18

Mid-Term Break

No Class 3/14//06 and 3/16/06

 

A good novel J

11--- Week of 03/19/06

Nonmonotonic Reasoning Systems

Class Notes

Last Day to Withdraw with a W; Wednesday, 3/22/06

 

 

12--- Week of 03/26/06

Expert Systems and Midterm 2

Class Notes

Midterm #2

Thursday, 3/31/2006

Covered Material since last midterm

 

Easter Break

No Classes Thur 4/13/06

Happy Easter!

A good science fiction book J

13 Week of 04/02/06

Introduction to Knowledge Discovery in Databases and Data Mining

Chapter 25

14-- Week of 04/09/06

Machine Learning

 

 

15 -- Week of 04/16/06

Special Topic and

Graduate Student Presentations

16 Week of 04/23/06

Annual Game Competition

 

FINAL EXAMINATION

Tuesday, May 2, 2006

10:10 am---12:00 noon

 

 

Grading Undergraduate Students (Approximate distribution of credit):

Midterm #1 20 %

Midterm #2 20 %

Final Exam 25 %

Homework and Programming Assignments 25%

Quiz 05%

In-Class Grade 05%

(includes class participation, pop quizzes, and in-class exercises)

note: these cannot be made up

 

Grading Graduate Students (Approximate distribution of credit):

Midterm #1 12 %

Midterm #2 -- 12 %

Final Exam 25 %

Class Assignments 25 %

Graduate Assignment 15 %

Quiz 6 %

In-Class Grade 5 %

(includes class participation, pop quizzes, and in-class exercises)

note: these cannot be made up

 

Required Text: Artificial Intelligence A Modern Approach

By, Stuart Russell and Peter Norvig

ISBN # 0-13-103805-2

 

Graduate Student Project

Graduate students are required to produce a final project for the course. This entails choosing a topic of Artificial Intelligence not presented in class (or extending what was presented in class) and doing the following:

1.        read at least two articles on the topic

2.        write a short term paper (10 pages) in your own words describing the topic

3.        write a software program or hardware project (such as a LEGO robot) demonstrating some aspect of the topic

4.        present your paper in a 10-15 minute Powerpoint presentation to the class

5.        demonstrate your simulation or demonstration object to the class in a 5-10 minute demo

6.        Submit term paper, Powerpoint slides, simulation/demonstration object

 

Policy on Makeups, Missed and Late Work:

1.        Late Work: Work will usually be accepted late and recorded as such. Work is due at the beginning of class. A 10% penalty is applied for every class day the assignment is late. No work will be accepted after solutions have been given out, or after the assignment has been graded and returned.

2.        Make-ups: Tests are expected to be taken on the test date. Any make-ups must be established with me ahead of time. There are no make-ups for in-class pop quizzes, exercises, or participation. To get these points, you must come to class.

3.        Attendance: Students are expected to come to class. If a class must be missed, however, students are responsible for all material, assignments, and announcements made during class. For this reason, you are encouraged to find a colleague with whom you can communicate to share such important information.

 

 

 

 


Programming Conduct Rules:

       Programming assignments are dispensed to reinforce concepts presented in class. Good programming skills comprise a fundamental component of being a computer scientist. Your code should be generated by you, by hand; it should not be automatically generated by a code generator or wizard (such as that provided by Microsoft Visual 6.0). Assignments in this class are short enough to write by yourself. As I am trying to endow in you the fundamental techniques and algorithms of artificial intelligence, no graphical user interface (GUI) is necessary or required.

       Students may share ideas in composing programs, but may not code them together. There is no sharing of code, only ideas. Any collaborative work should be acknowledged in the comments. Plagiarizing code will result in a zero for the program.

 

Email Communication and Class Computer Accounts:

         Email: I prefer to conduct communication through email. My email address (as indicated above) is seitzer@.udayton.edu. Please feel free to write me anytime. I try to check my email many times through the day. If you do not have an email account, I ask that you get one. Student email accounts can be acquired from the Systems Administrator. For information, you may call (937)229-3858.

 

         Lab Work and Programs: Programming assignments may be written using the platform of your choice in any lab of your choice so long as the system on which you are working has an operational C , C++, or Java compiler.

 

 

Course Web Pages:

         The course has its own web page that can be found at URL http://homepages.udayton.edu/~seitzer/cps480. You are responsible for consulting this page regularly. Most handouts and other communications will be posted on this page. Additionally, the textbook has a web page. Many slides used in class can be procured from the textbook site that can be found at URL http://www.cs.berkeley.edu/~russell/aima.html .

 

Class Email List:

         Along with web page postings, I regularly send my classes email via the respective Class Email List. Please make sure you have the correct address logged with the university to received all class emails. These lists are maintained by the university.