CS3310 Syllabus, Spring 2017


Course goals


Survey of the main techniques of artificial intelligence, especially knowledge representation, inference, control structures, uncertainty, heuristic search, and learning.  The emphasis is on methods for achieving intelligent behavior in computers, not necessarily modeling human behavior.  A variety of skills will be covered, including programming, simulation of programs on paper, knowledge of key terms, and ability to discuss in writing the application of artificial-intelligence methods to real-world problems.  The ultimate goal is to enable students to write programs exhibiting intelligent behavior.




The official prerequisite for this course is CS2011 and one college-level course in programming.  It is also helpful to have some knowledge of logic (predicate calculus), further programming experience, and some knowledge of data structures.




Homework 1, 70 points

Test 1, 100 points

Homework 2, 70 points

Test 2, 100 points

Homework 3, 70 points

Test 3, 100 points


Tests are open-book but no electronic devices are allowed.  Expected class averages on tests will be around 70%.  Questions will emphasize thinking more than memorization.  Lately the grades have been approximately 20% A, 40% A-, 25% B+, and 15% less than B+.  Note the "quizzes" will be treated as pass-fail towards your course grade, although Sakai does compute a score, it will not be counted, just the fact you completed a quiz.


Many test questions will relate to homework problems.  Some homework will be team problems, and some will be individual.  Individual problems must be done by each student on their own without consulting anyone besides the instructor, and that includes looking online.  Team problems must be done by each team without consulting other teams or consulting anyone else.  Some of the homework will require programming in the language Gnu Prolog which you will download following instructions on the first assignment; and some of it will involve programming in Python or Java (your choice).  When you submit programs, always submit a listing of your code and a script of the run of your code.  The late penalty is 10% after the due time on the due date, but no homework is accepted after solutions are displayed.  Homework should be submitted as hard copy, one copy per team when teams are used, unless it specifically says an electronic copy suffices.  Material for each problem on a homework assignment should be included together (no appendices) in a single document.


Textbook and materials


We will email you copies of the PowerPoint slides used in the lectures (the slides on the Sakai site are outdated).  Required textbook is Luger, Artificial Intelligence, latest edition, Addison-Wesley.  Earlier editions are acceptable but the section numbers to read may be different.  The electronic version is cheaper but you cannot consult it during tests as you can the print version, though you could print key pages in advance.  The CS3310 Sakai site has the quizzes and lecture videos from 2006.  Useful additional references are Rowe, Artificial Intelligence through Prolog (on the Web at faculty.nps.edu/ncrowe/book/book.html), Russell and Norvig, Artificial Intelligence, Prentice-Hall; and Winston, Artificial Intelligence, Addison-Wesley.  The Web site faculty.nps.edu/ncrowe/coursematerials also contains programs discussed in class and Web-page demos.




Prof. Neil Rowe, GE-328, ncrowe@nps.edu, (831) 656-2462, faculty.nps.edu/ncrowe.  Office hours are to be announced or by arrangement.


CS3310 schedule (readings are in Luger, 6th edition)


By 4/6: Overview of AI: Read chapter 1, install Prolog as per instructions on homework #1

By 4/10: Do Quiz 1

By 4/13: Knowledge representation: Read sections 7.0, 7.1, 7.2, and 7.3

By 4/13: Do Quiz 2 and Quiz 3

By 4/18: Do Quiz 4; finish tutor problems on facts and queries

By 4/21: Inference rules: Read sections 2.1, 2.2, 2.3, 2.4, 14.2.1, and 14.3

By 4/24: Do Quiz 5; Finish tutor problems on rules

Homework #1 due Tuesday, 4/25 in class

Test #1: Thursday, 4/27

By 5/4: Do Quiz 6

By 5/11: Control structures: Read sections 8.1, 8.2, 7.4

By 5/12: Do Quiz 9 (note we are skipping Quizzes 7 and 8)

By 5/16: Reasoning with uncertainty: Read sections 9.0, 9.2.1, 9.3, 11.1, 11.2.1, 11.2.2

By 5/18: Do Quiz 10

Homework #2 due Thursday 5/18 in class

Test #2: Monday 5/22 covering mostly material since Test #1

By 5/29: Heuristic search: Read sections 3.0, 3.1, 3.2, 4.0, 4.2

By 6/2: Do Quiz 11

By 6/5: Planning: Read sections 4.3, 4.4, 8.4, 14.1

By 6/6: Do Quiz 12

By 6/8: Machine learning: Read sections 10.1, 10.3, 10.6

By 6/8: Do Quiz 13

Homework #3 due Monday 6/12 at 1700

Test #3: Wednesday 6/14 at time and place to be scheduled, covering mostly material since Test #2



·         The rules for collaboration with other students differ from problem to problem.  Some of the homework is group assignments.  But unless a problem is designated as a group assignment, you may not discuss it with anyone besides the instructor.

·          This is a true graduate-level course. Thus you will be expected to solve minor details on your own without consulting the instructor. However, if you are stuck or spending excessive time on a question, email or talk to the instructor.  You should not feel frustrated by a problem.

·         It is expected that tests will have averages around 70%.  The Sakai quizzes are difficult but they are graded pass/fail.  Other homework will vary in difficulty though usually they should have higher averages than the quizzes.  So perfect scores by students are not possible and students should not feel bad that they are not perfect.  This is education, not training: We are asking you somewhat difficult questions to prepare you better for the real world.