Ronald J. Brachman, Hector J. Levesque
The range of domains and tasks for "knowledge-based systems" has been expanding at a furious pace. As we move away from trivial domains, such as the "blocks world," the demands on knowledge representation systems used by expert programs are becoming more extreme. For one thing, the domains themselves are getting so complex that specialized technical vocabularies are unavoidable; consequently, the issue of a system talking with un expert in his own language cannot be ignored. For another, tasks such as medical diagnosis, scene analysis, speech understanding, and game playing all have as a central feature an incrementally evolving model representing probably incomplete knowledge of part of the task domain. In this paper, we explore some of the impact of these two critical issues -- complexity and incompleteness -- on knowledge representation systems. We review some aspects of current representation research that offer a foundation for coping with these problems, and finally suggest a way of integrating these ideas into a powerful, practical knowledge representation paradigm.