Knowledge Engineering Environment (KEE) is a
frame-based development tool for
expert system
In artificial intelligence (AI), an expert system is a computer system emulating the decision-making ability of a human expert.
Expert systems are designed to solve complex problems by reasoning through bodies of knowledge, represented mainly as ...
s. It was developed and sold by
IntelliCorp, and was first released in 1983. It ran on
Lisp machines, and was later ported to Lucid
Common Lisp
Common Lisp (CL) is a dialect of the Lisp programming language, published in American National Standards Institute (ANSI) standard document ''ANSI INCITS 226-1994 (S2018)'' (formerly ''X3.226-1994 (R1999)''). The Common Lisp HyperSpec, a hyperli ...
with the CLX
library
A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
, an
X Window System
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X originated as part of Project Athena at Massachusetts Institute of Technology (MIT) in 1984. The X protocol has been at ...
(X11) interface for Common Lisp. This version was available on several different UNIX
workstation
A workstation is a special computer designed for technical or computational science, scientific applications. Intended primarily to be used by a single user, they are commonly connected to a local area network and run multi-user operating syste ...
s.
On KEE, several extensions were offered:
* Simkit, a frame-based simulation library
* KEEconnection,
database connection A database connection is a facility in computer science that allows client software to talk to database server software, whether on the same machine or not. A connection is required to send commands and receive answers, usually in the form of a ...
between the frame system and
relational database
A relational database (RDB) is a database based on the relational model of data, as proposed by E. F. Codd in 1970.
A Relational Database Management System (RDBMS) is a type of database management system that stores data in a structured for ...
s
In KEE, frames are called ''units''. Units are used for both individual instances and classes. Frames have ''slots'' and slots have ''facets''. Facets can describe, for example, a slot's expected values, its working value, or its inheritance rule. Slots can have multiple values. Behavior can be implemented using a
message passing
In computer science, message passing is a technique for invoking behavior (i.e., running a program) on a computer. The invoking program sends a message to a process (which may be an actor or object) and relies on that process and its supporting ...
model.
KEE provides an extensive
graphical user interface
A graphical user interface, or GUI, is a form of user interface that allows user (computing), users to human–computer interaction, interact with electronic devices through Graphics, graphical icon (computing), icons and visual indicators such ...
(GUI) to create, browse, and manipulate frames.
KEE also includes a frame-based
rule system. In the KEE knowledge base, rules are frames. Both
forward chaining and
backward chaining inference
Inferences are steps in logical reasoning, moving from premises to logical consequences; etymologically, the word '' infer'' means to "carry forward". Inference is theoretically traditionally divided into deduction and induction, a distinct ...
are available.
KEE supports non-monotonic reasoning through the concepts of ''worlds''. Worlds allow providing alternative slot-values of frames. Through an assumption-based truth or
reason maintenance system, 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.
See also
*
Expert system
In artificial intelligence (AI), an expert system is a computer system emulating the decision-making ability of a human expert.
Expert systems are designed to solve complex problems by reasoning through bodies of knowledge, represented mainly as ...
*
Frame language
*
Inference engine
*
IntelliCorp (software)
*
Knowledge base
In computer science, a knowledge base (KB) is a set of sentences, each sentence given in a knowledge representation language, with interfaces to tell new sentences and to ask questions about what is known, where either of these interfaces migh ...
*
Knowledge-based system
*
Knowledge representation
Knowledge representation (KR) aims to model information in a structured manner to formally represent it as knowledge in knowledge-based systems whereas knowledge representation and reasoning (KRR, KR&R, or KR²) also aims to understand, reason, and ...
References
External links
An Assessment of Tools for Building Large Knowledge-Based Systems
{{Lisp programming language
Knowledge engineering
Knowledge representation
Common Lisp (programming language) software