CS 357 - Introduction to Artificial Intelligence

Fall 2009

 

Instructor: Dr. Tim Andersen

Class Meeting Time:

Tues & Thur 1:40pm – 2:55pm 

Class Location:

ET 238 

Instr. Phone:

ext 5768

Office:

MEC 302e

Email:

Office Hours:

Tues, Thurs 10-11, 12:30-1:30

Homework

Lecture Notes

 

 

 

 

 

Required Text:

Artificial Intelligence: A Modern Approach, 2nd edition, by Stuart J. Russel and Peter Norvig Prentice Hall.  We will (try to) cover most of the text. The order of reading is on the schedule and the assigned sections must be read before the class lecture. Note that the schedule is only tentative.  The lecture will cover topics from the reading where additional help, emphasis, and extensions beyond the text are deemed valuable.  Time will not always allow complete coverage of all aspects of the reading, but you are still expected to read and understand the text.  You will be responsible for all information from assigned reading, even that which is not explicitly covered in class, except where specifically noted, on examinations. 

 


Course Description:

COMPSCI 357 Introduction to Artificial Intelligence.  This course introduces and studies the core areas of artificial intelligence.  Coverage includes intelligent agents, problem solving and search, knowledge based systems and inference, planning, uncertainty, learning, perception, decision trees and neural networks.

Class Objectives:

Understand the motivation, mechanisms, and potential of Artificial Intelligence research and techniques. 

 

Assessment of learning objectives:


Assessment is based on regular homework assignments, programming projects, quizzes, and examinations.  Each of these will be weighted approximately as follows: 

Homework Assignments

Homework will be assigned for most chapters.   No late homework will be accepted. You should not wait until we have finished discussing the chapter before beginning the homework, but should begin working on the homework problems as soon as they are assigned.

Students are encouraged to study together and discuss the homework problems. However, each person must turn in his/her own solutions.  Blatant copying will NOT be tolerated.

While you may work together on homework, you are not allowed to search the internet or look at any other source for homework solutions, nor are you allowed to copy each others answers! In working together on homework, you may discuss solutions, etc., but when it comes time to write up the answer each person must do it themselves.

Since homework assignments must be turned in electronically, they need to be in a digitized format.  In other words, they must be typed in, in general.  If for some reason I have trouble reading whatever file format you choose, I'll notify you and you will be required to turn it in a format I can deal with.

Homework will be graded on clarity, conciseness, correctness, etc. While every homework will receive a grade Not all assigned problems will be graded. I will select a few (or possibly only one) problems from each homework to grade, and your homework grade will be based on this.

Each homework will be graded on a scale of 1 to 5.  The scale has the following meaning: 

0.      You showed little effort, did next to nothing, or in fact did nothing.

1.      You turned something in on time with your name on it, and attempted to do at least some of the problems, but otherwise missed most of the problems or did not do most of the assignment.  This score is for poor quality work.

2.      You didn’t do some of the assignment (but you did most of it), or you missed too many answers on the assignment. This score is for below par work.

3.       You did all of the problems on the assignment, but you missed one or two.  This represents a reasonable score and is for good quality work.   

4.       You did all of the problems on the assignment,  and only missed a few minor details.  This score is for very good quality work.

5.      You did all of the problems and didn’t miss anything.  This score is for excellent quality work.



You should average at least a 3 on your homework assignments.  If you do not average at least a 3 on your homework assignments then you will be looked on with a jaundiced eye when it comes time to assign you a final grade at the end of the semester (In other words you will drop 1 full grade, say from a B to a C for example).  The homework will be worth approximately 10% of the final grade.  A tentative list of homework assignments is given below.



Programming Assignments

There will be ~4 projects/programming assignments.  You are not allowed to work with others on programming assignments unless specifically authorized to do so.  This means that in general you must come up with your own design and implementation for the programming problems.

You should not wait until we have finished discussing the relevant chapter(s) before beginning a programming assignment.

Students may study together and discuss ideas and general principles. However, each person must turn in his/her own solutions.  Blatant copying will NOT be tolerated. If you did obtain help or input from someone in order to complete an assignment, then indicate that in the assignment (write down who helped you and how, for example as a comment in the source code near the top of the file).

All homework and programming assignments MUST be submitted electronically via the submit command on onyx.  I will not accept homework or programming assignments in any other way. 


 

Exams:

We will have two midterm exams and a final. The final will be comprehensive. Exams are open book. Obviously, you may not work together on exams.

 


Course Outline:

        Here is a tentative list of subjects we will cover during the semester:
 

Topics Reading Read by this date
  Intro, Philosophy and History of AI   Chapter 1  
  Intro to Intelligent Agents   Chapter 2  
  Uninformed Search   Chapter 3  
  Informed Search   Chapter 4  
  Constraint Satisfaction   Chapter 5  
  Adversarial Search   Chapter 6  
  Logical Agents, 1st Order Logic   Chapter 7, 8  
  Inference in 1st Order Logic   Chapter 9  
  Uncertainty and Probabilistic Reasoning   Chapter 13  
  Bayesian Networks   Chapter 14  
  Learning from Observations   Chapter 18  
  Neural Networks   Chapter 20.5  
     
  The following chapters may be covered if time permits.    
  Making Simple Decisions   Chapter 16  
  Reinforcement Learning   Chapter 21  

Homework Assignments

  Assignment   Due Date
  Email me from an email address where you would like to receive class info.  
  Chapter 2 hw   Tues, Sept 8
  Chapter 3 hw   Tues, Sept 15
  Chapter 4 hw   Thurs Sept 24
  Chapter 5 hw   Tues Oct 13
  Chapter 6 hw   Thurs Nov 11
  Chapter 7,8 hw   Thurs Nov 19
  Chapter 9 hw  
  Chapter 13 hw  
  Chapter 14 hw  
  Chapter 18 hw  
  Chapter 20 hw  

Programming Projects

  Assignment   Due date
  Constraint Satisfaction   Sunday Oct 11
  Checkers   Sunday Nov 8
  Theorem Prover   Sunday Dec 13