Bridging the gap between knowledge engineering and efficient implementation in an intelligent tutoring system

  • Randy M. Kaplan
Knowledge Engineering
Part of the Lecture Notes in Computer Science book series (LNCS, volume 856)


Symbolic manipulation languages, such as LISP and Prolog, are advantageous in that they can describe a problem space symbolically. However, they are inefficient when handling large rule-based systems. In order to create practical and usable implementations, two systems are often implemented. One system is the knowledge engineering prototype in which rules are formulated symbolically and manipulated as such. The other is a production version that guarantees realistic response time and execution profile to an end user. To create the second version it is usually necessary to recode the system in a traditional non-symbolic language like C or C++. This paper describes an automatic approach to transforming a symbolic knowledge base into an efficient non-symbolic representation resulting in an extremely efficient and practical implementation.


expert systems knowledge engineering implementation intelligent tutors 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Brownston, L., Farrell, R., Kant, E., & Martin, N. (1985). Programming expert systems in ops5. Reading: Addison-Wesley.Google Scholar
  2. Forgy, C.L. (1982). Rete: a fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence, 19, 17–38.CrossRefGoogle Scholar
  3. Kaplan, R.M., & Trenholm, H. (1993). A practical and generalizable architecture for an intelligent tutoring system. In Applications of Artificial Intelligence 1993: Knowledge-Based Systems in Aerospace and Industry. April 1993.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Randy M. Kaplan
    • 1
  1. 1.Division of Cognitive and Instructional ScienceEducational Testing ServicePrinceton

Personalised recommendations