UMBC CMSC 771 Theory and Practice of Knowledge Representation
offerings: 97 99 00 01 02 03 04| notes | resources | software | papers | hw | help | mail

UMBC CMSC 771 Spring 2004

Theory and Practice of Knowledge Representation

Overview: This course will cover some basic techniques and algorithms for representing and reasoning about symbolic information and knowledge. It is designed to be useful and relevant for students interested in artificial intelligence, databases, and web-based information systems. Topics will include: rule-based systems, frame-based representation languages, description logics, constraints, truth maintenance systems, representing and reasoning about time, processes, uncertainty, etc, using and marinating ontologies, knowledge sharing, etc. We'll also look at how some of these techniques are being used in in support of intelligent agents, advanced databases, ecommerce applications, advanced web systems, and software engineering tools. Students will learn to use one of more advanced software tools for building and maintaining large ontologies and we'll examine several large general purpose ontologies.

Prerequisites: Students should have taken a graduate level AI course (e.g., CMSC 671) or a graduate level database class (e.g., CMSC 661).

When: Tuesday and Thursday from 5:30pm to 6:45pm. I would also like to schedule a day and time that we can use to make up classes that will have to be canceled due to my travel obligations. We will try to find a time that is convenience for most of the class.

Where: 346ITE

Instructor: Tim Finin,

TA: none

Text books and papers: We will use two text books:

  • Knowledge Representation: Logical, Philosophical, and Computational Foundations, John F. Sowa, Brooks Cole Publishing Co., Pacific Grove, CA, ©2000. Actual publication date, 16 August 1999. ISBN: 0534949657
    web site, Amazon, Walmart, AddAll
  • Computational Intelligence - a logical approach, David Poole, Alan Makworth and Randy Goebel, Oxford University Press, New York, 1998. ISBN: 0195102703
    web site, Amazon, AddAll
and will also read some papers distributed in class.

Structure: Class time will be spent with about 60% lecture and 40% student-led presentation and discussion of readings. We will use the discussion lists on the 771 balckboard site to carry out additional discussion, comment and interactions. This will be a required part of the course and the quality and level of your participation in online discussions will play a part in determining your grade. So, please read, think about and respond to postings on the 771 discussion board.

Assignments: Students will be required to prepare and present material to the class, complete a number of short assignments and engage in a longer project, either individually or as part of a group. I believe that the material in this course is best learned by use it, so the short assignments will be designed to give you opportunities to use the concepts and technologies we cover. Presentations should be done in Powerpoint and will be added to a collection for the course and posted to the web.

Software: We will use one or more of the following software systems: Concept Map, Loom, Ontolingua, Classic, OKBC, XSB, Prolog, Rational Rose, and Visio.

Syllabus: The syllabus is ambitious and we won't be able to cover it all, but we will try.

Blackboard: We'll make use of the UMBC Blackboard system for discussion lists and some other features.

Resources: There is a page of links to useful web resources.

Academic Honesty: Please read this statement on academic honesty.