KEE
Encyclopedia
KEE is a frame-based
Frame language
A frame language is a metalanguage. It applies the frame concept to the structuring of language properties. Frame languages are usually software languages.-Description:...

 development tool for Expert Systems
Expert system
In artificial intelligence, an expert system is a computer system that emulates the decision-making ability of a human expert. Expert systems are designed to solve complex problems by reasoning about knowledge, like an expert, and not by following the procedure of a developer as is the case in...

. KEE was developed and sold by IntelliCorp
IntelliCorp (Software)
IntelliCorp is a software company that provides, develops, and markets SAP application lifecycle management, business process management and data management software for SAP customers and partners...

. It was first released in 1983 and ran on Lisp Machine
Lisp machine
Lisp machines were general-purpose computers designed to efficiently run Lisp as their main software language. In a sense, they were the first commercial single-user workstations...

s. KEE was later ported to Lucid Common Lisp with CLX
CLX (Common Lisp)
CLX is the standard X Window System protocol client library for the Common Lisp programming language,1:3 the C equivalence of which is Xlib....

 (X11 interface for Common Lisp
Common Lisp
Common Lisp, commonly abbreviated CL, is a dialect of the Lisp programming language, published in ANSI standard document ANSI INCITS 226-1994 , . From the ANSI Common Lisp standard the Common Lisp HyperSpec has been derived for use with web browsers...

). This version was available on various Workstations.

On top of KEE several extensions were offered:
  • Simkit, a frame-based simulation library
  • KEEconnection, database connection between the frame system and relational databases.


Frames are called Units in KEE. Units are used for both individual instances and classes. Frames have slots and slots have facets. Facets for example describe the expected values of a slot, the inheritance rule for the slot or the value of a slot. Slots can have multiple values. Behavior can be implemented using the message-passing paradigm.

KEE provides an extensive graphical user interface to create, browse and manipulate frames.

KEE also includes a frame-based rule system
Production system
A production system is a computer program typically used to provide some form of artificial intelligence, which consists primarily of a set of rules about behavior. These rules, termed productions, are a basic representation found useful in automated planning, expert systems and action selection...

. Rules themselves are frames in the KEE knowledge base. Both forward and backward chaining inference is available.

KEE supports non-monotonic reasoning through the concepts of worlds. Worlds allow provide alternative slot-values of frames. Through an assumption-based Truth maintenance system
Truth maintenance system
Reason maintenance is a knowledge representation approach to efficient handling of inferred information that is explicitly stored. Reason maintenance distinguishes between base facts, which can be defeated, and derived facts. As such it differs from belief revision which, in its basic form,...

inconsistencies can be detected and analyzed.

ActiveImages allows graphical displays to be attached to slots of Units. Typical examples are buttons, dials, graphs and histograms. The graphics are also implemented as Units via KEEPictures - a frame-based graphics library.

External references

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK