Knowledge representation is a central problem in arranging knowledge. It is needed for library classification and processing concepts
in an information system.
There are difficulties in the field of artificial intelligence. The problem consists of how to store and manipulate knowledge in an information
system in a formal way so that it may be used by mechanisms to accomplish a given task. Examples of applications are expert systems, machine
translation systems, computer-aided maintenance systems and information retrieval systems (including database front-ends).
Some people think it would be best to represent knowledge in the same way that it is represented in human mind, which is the only known working
intelligence so far, or to represent knowledge in the form of human language. Unfortunately, we don't know how knowledge is represented in
the human mind, or how to manipulate human languages in the same way as the human mind.
For this reason, various artificial languages and notations have been proposed for representing knowledge. They are typically based on logic
and mathematics, and have easily parsed grammars to ease machine processing.
The recent fashion in knowledge representation languages is to use XML as the low-level syntax. This tends to make the output of these KR
languages easy for machines to parse, at the expense of human readability.
First-order predicate calculus is commonly used as a mathematical basis for these systems, to avoid excessive complexity. However, even simple
systems based on this simple logic can be used to represent data which is well beyond the processing capability of current computer systems:
see computability for reasons.
Examples of notations:
DATR is an example for representing lexical knowledge
RDF is a simple notation for representing relationships between objects
Examples of artificial languages intended for knowledge representation include:
Techniques of knowledge representation
Semantic networks may be used to represent knowledge. Each node represents a concept and the arcs are used to define relations between the concepts.
From the 1960s, the knowledge frame or just frame has been used. A frame consists of slots which contain values; for instance, the frame for house
might contain a color slot, number of floors slot, etc.
Frames can behave something like object-oriented programming languages, with inheritance of features described by the "is-a" link. However, there
has been no small amount of inconsistency in the usage of the "is-a" link: Ronald J. Brachman wrote a paper titled "What IS-A is and isn't", wherein
29 different semantics were found in projects whose knowledge representation schemes involved an "is-a" link. Other links include the "has-part" link.
Frame structures are well-suited for the representation of schematic knowledge and stereotypical cognitive patterns. The elements of such schematic
patterns are weighted unequally, attributing higher weights to the more typical elements of a schema (http://moodle.ed.uiuc.edu/wiked/index.php/Schemas). A pattern is activated by certain expectations: If a person sees a big bird, he or she will classify it rather as a sea eagle than a golden eagle, given his or her "sea-scheme" is currently activated.
Frames representations are more object-centeres than semantic networks: All the facts and properties of a concept are located in one place - there
is no need for costly search processes in the database.
Frames suffer from the frame problem of knowledge linking.
A script is a type of frame that describes what happens temporally; the usual example given is that of describing going to a restaurant. The steps
include waiting to be seated, receiving a menu, ordering, etc.
Business Intelligence - Metrics /Key Performance Indicators
Business performance management - Overview
Data warehouse - A Brief Introduction