Administrative Details
CS B552:  Knowledge Based Artificial Intelligence

(This information is subject to change)



David Leake

Office: Info West 203 (inside the 205 suite).  Please knock for office hours, even if someone is with me, so I will know you are there.

Email: leake at

Appointments (in addition to office hours): For appointments, please email my assistant Michele Dompke, mdompke at Occasionally I have to attend meetings on short notice; if I have to miss office office hours, please email me with your constraints and I’ll be glad to set up a makeup meeting as soon as possible.

Associate instructor

Eriya Terada

Email: eterada at



Office hours

David Leake’s office hours start immediately; Eriya Terada’s office hours will start after the first homework is assigned.   Dates with adjustments will be noted below. 


9:00-10:30, David Leake, IW203

12:45-2:15, Eriya Terada, IW205


12:45-2:15, Eriya Terada, IW205




9-10:30  David Leake, IW203 


B551, or a similar introduction to artificial intelligence and permission of the instructor.

To do well in the course and to benefit fully from the material it's essential to have the AI equivalent of what mathematicians call "mathematical maturity," for at least a semester of AI, to be able to bring that to bear on assessing problems and in designing and executing the projects. 

Homeworks will assume knowledge of B551 topics such as search and planning. Homework programming will be in python.  Projects may be programmed in other languages with permission of the instructor/AI.


There is no required textbook, but Russell & Norvig's Artificial Intelligence: A Modern Approach, Third edition, Prentice Hall, 2009, may be useful.  There is a copy of the text on 2-hour reserve at Swain Library.  Many readings will be from current papers.


Homework and in-class exercises


There will be both long homework assignments (generally programming) and shorter assignments, which may be due as soon as the next class after they are assigned. Consequently, if you must miss a class, be sure to check with others in the class about the material covered and any assignments you missed.  There will also be short in-class exercises during the semester, done and submitted during the class session.   


There will be one in-class exam.  No make-up exams will be given except for extreme circumstances and if permission is granted before the exam. 

Academic Integrity

Homeworks, including programming projects, are to be completed individually unless specified as a group assignment. You may discuss the material with other students, but all written work (code, etc.) must be your own and must be written independently.  You may not share anything written, show copies of code, or take written notes/code away from your discussions. You may not consult online code resources or other sources concerning the solutions to homework problems.

Any interactions with other students concerning an assignment or use of materials beyond Russell and Norvig or class assignments or resources must be documented in your submission

For more detail and examples, everyone should read the Computer Science Graduate Program Academic Integrity Guideline.

Please discuss any questions on this with us before submitting your assignments.

Homework Submission, Due Dates, Lateness Policies

Homework assignments are due by midnight on the due date unless otherwise specified.  Assignments will normally be submitted on CanvasBe sure to verify after submission that you have uploaded the desired file!

Keep a copy of the submission until it is graded and you have verified the score recorded on canvas.  You must notify us of any problems within a week of posting of grades.

Some homework assignments may be due at the start of class and discussed the day of submission, and will not be accepted late (this will be stated on those assignments).  For other assignments, each student will start the semester with 3 “lateness days”, each allowing a submission up to 24 hours late without penalty.  We recommend conserving these for when they’re needed for other classes have similar deadlines or unexpected circumstances.  After those are used, assignments allowing late submission may be submitted up to 48 hours late, with a penalty of 15% per 24 hours.

Missed in-class exercises:  There will not be make-ups for in-class exercises, but the lowest 20% (approximately) of the in-class exercises will be dropped from the final grade calculation.   

If you have to miss a class, you are still responsible for any readings and homeworks assigned there, so be sure to check with other students to find out what material you missed.

Default Grading Scale

The default grading scale is the IU oncourse scale:

Grade             Minimum %

A+       97.0

A         93.0

A-        90.0

B+       87.0

B         83.0

B-        80.0

C+       77.0

C         73.0

C-        70.0

D+       67.0

D         63.0

D-        60.0

F          0.0

Email Questions

Email questions can be sent to either the instructor or AI. Please begin the subject line with "B552". Email will be responded to within 24 hours, unless otherwise noted (absence due to travel, etc.). Please allow sufficient time for responses before assignment deadlines.  The AI will be the primary support for questions on programming assignments.


A note about artificial intelligence and the goals of the course


As we will see throughout the course, AI is not a field in which there is a set of neatly defined problems to solve, nor one in which it is always obvious what constitutes the "right" solution. Consequently, learning about AI involves not only learning about methods but also developing a viewpoint on what constitutes an AI question, how to define AI questions, which AI questions to explore, and how to recognize good answers. Rather than simply learning the approaches, we will be thinking critically about their goals and methods, analyzing their strengths and weaknesses, and attacking AI problems to find ways to improve them.  This makes it an exciting and challenging area that may be quite different from what you are used to studying in other courses.


This also makes studying AI a good preparation for attacking real-world problems: A programmer or consultant's first task is often to determine the key goals and to decide which method(s) to bring to bear, before designing and implementing a system.


Program Expectations


The programs that you write for assignments should be designed to apply to a broad class of examples beyond those stated. Programming assignments will specify a few test cases on which to demonstrate your program, but your solutions should apply to a broad class of examples beyond those stated.  This is described more completely in the on-line handout ``Guidelines for programming assignments.'' Please ask if you are unsure about the level of generality for a specific portion of the code.


Programs should be well-documented program and submitted with output demonstrating their processing.


Semester Project


A major part of the course will be a semester research project involving developing a knowledge-based system, writing a paper on that research, and presenting your work in a course “mini-conference”. This is expected to be a significant project going deeply into an area. For some past students, this project has produced published conference papers and long-term research topics continuing beyond the class. Projects will be done in small groups (normally 3 students).  Each student should contribute a clearly identifiable portion of the project.  


Students interested in AI are strongly encouraged to select projects that will provide a basis for future AI research. Students not intending to focus on AI are encouraged to select projects that are relevant to their research interests in other areas.  Your final project can be an excellent addition to the portfolio of accomplishments you can show prospective employers.


During the semester, students will prepare brief progress reports on their projects.



Paper Presentations and discussants



The class will be divided into groups to examine a topic in current knowledge-based AI research, critically analyze it, present it to the class, and lead a class discussion.


The jumping-off point for the class session will be a paper that the entire class will read.  However, the presenters will go beyond that to do a deeper analysis, bring in additional material, argue for their own view of the material, and propose how it could be improved. The paper presentation must go well beyond simply summarizing the paper and must include leading class discussion. Presentation groups will normally be graded as a team, but members may be graded individually, with input from the group, if necessary due to major differences in contributions.


For each presentation, some students not in the presentation group will be assigned as discussants. The discussants will make a brief presentation after the main presentation, giving their own ideas and responding to the points raised in the presentation. 


Calculation of Final Grades


Homework and in-class exercises will count 20%, the exam will count 22%, in-class presentations and related work will count 25%, and the final project (including presentations and written materials) will count 33%.


For group work, team members may be asked to provide an assessment of the team members' relative contributions and/or to have an oral exam on their code. It is expected that different members may make different types of contributions, but overall contributions are expected to be equivalent, for each team member to receive the same project score. If the instructor determines that there were significantly different levels of contribution, relative contributions may be used to weight the distribution of points within a project group.


Special accommodation


Students who need any special accommodation must contact the professor during the first week of class to discuss arrangements.




Incompletes will be handled in accordance with Computer Science Department policy. In particular, incompletes will only be given to students who have successfully completed most of the coursework, and who have an acceptable reason for the incomplete. Unexpected difficulty with other classes is not an acceptable reason for an incomplete.



Computer Use in Class


Students are asked not to do e-mail or other computer work in class.



Other questions


If you have any questions that this doesn't cover, please ask!