apple tree logo
apple tree logo
Languages & Structures
(a subtopic of Representation)

Good Places to Start

Readings Online

Related Web Sites

Related Pages

More Readings
(see FAQ)

Recent News about THE TOPICS (annotated)



 

 
hand holding quill with text: How can I represent thee, let me count the ways...

"The use of a representation as a medium of expression and communication matters because we must be able to speak the language to use it. If we can't determine how to say what we're thinking, we can't use the representation to communicate with the reasoning system."

-excerpt from What Is a Knowledge Representation? (at page 31)

Good Places to Start

Knowledge-based Representations. From Stottler Henke Associates' AI Glossary: "The form or structure of databases and knowledge base for expert and other intelligent systems, so that the information and solutions provided by a system are both accurate and complete. Usually involves a logically-based language capable of both syntactic and semantic representation of time, events, actions, processes, and entities. Knowledge representation languages include Lisp, Prolog, Smalltalk, OPS-5, and KL-ONE. Structures include rules, scripts, frames, endorsements, and semantic networks."

Knowledge Representation. A chapter from Chris Welty's Dissertation, 1996. "A successful representation of some knowledge must, then, be in a form that is understandable by humans, and must cause the system using the knowledge to behave as if it knows it. The 'structural ingredients' that accomplish these goals are typically found in the languages for KR, both implemented and theoretical, that have been developed over the years."

Knowledge Representation: Concepts & Semantic Networks. From the Department of Computing and Mathematics, Faculty of Informatics, University of Ulster. "[S]emantic networks are an attempt to model the way we think about concepts, and have been used by psychologists and computer scientists alike in trying to explain, and simulate, intelligent behaviour."

"Language is a knowledge representation language."
- Ramesh Jain. Refining the Search Engine. Ubiquity (Volume 5, Issue 29).

What is A Knowledge Representation? Davis, Randall, Howard Shrobe, and Peter Szolovits. 1993. AI Magazine 14 (1): 17-33. [Also available in HTML] "What is a knowledge representation? We argue that the notion can best be understood in terms of five distinct roles it plays, each crucial to the task at hand: * A knowledge representation (KR) is most fundamentally a surrogate, a substitute for the thing itself, used to enable an entity to determine consequences by thinking rather than acting, i.e., by reasoning about the world rather than taking action in it. * It is a set of ontological commitments, i.e., an answer to the question: In what terms should I think about the world? * It is a fragmentary theory of intelligent reasoning, expressed in terms of three components: (i) the representation's fundamental conception of intelligent reasoning; (ii) the set of inferences the representation sanctions; and (iii) the set of inferences it recommends. * It is a medium for pragmatically efficient computation, i.e., the computational environment in which thinking is accomplished. One contribution to this pragmatic efficiency is supplied by the guidance a representation provides for organizing information so as to facilitate making the recommended inferences. * It is a medium of human expression, i.e., a language in which we say things about the world."

From 2001 to 2001: Common Sense and the Mind of HAL. By Douglas B. Lenat. [From: HAL's Legacy: 2001's Computer as Dream and Reality. Edited by David G. Stork. MIT Press. 1996.] "The real physical universe is not, of course, inside CYC, anymore than it is inside our brains. All we have is a representation of a sliver of the world, and we operate from that representation to acquire new ideas, make decisions, and so forth ... Every representation is a trade-off between expressiveness (how easily you can say complicated things) and efficiency (how easily the machine can reason with what you've told it). English is very expressive but not very efficient. Most computer languages, such as Basic, C, and Fortran, are efficient but not very expressive."

A Framework for Representing Knowledge. By Marvin Minsky. MIT-AI Laboratory Memo 306, June, 1974. Reprinted in The Psychology of Computer Vision, P. Winston (Ed.), McGraw-Hill, 1975. Shorter versions in J. Haugeland, Ed., Mind Design, MIT Press, 1981, and in Cognitive Science, Collins, Allan and Edward E. Smith (eds.) Morgan-Kaufmann, 1992. "Here is the essence of the theory: When one encounters a new situation (or makes a substantial change in one's view of the present problem) one selects from memory a structure called a Frame. This is a remembered framework to be adapted to fit reality by changing details as necessary. A frame is a data-structure for representing a stereotyped situation, like being in a certain kind of living room, or going to a child's birthday party. Attached to each frame are several kinds of information. Some of this information is about how to use the frame. Some is about what one can expect to happen next. Some is about what to do if these expectations are not confirmed."

Logic. Lecture notes from Charles R. Dyer, Professor of Computer Sciences and Biostatistics and Medical Informatics, University of Wisconsin - Madison. "Logic for Knowledge Representation and Reasoning ... Knowledge representation deals with the problem of how to model the world sufficiently for intelligent action ... Logic is one of the oldest representation languages studied for AI, and is the foundation for many existing systems that use logic as either inspiration or the basis for the tools in that system (e.g., rule-based expert systems and the Prolog programming language)."

FOL supplies these primitives:
* Variable symbols. E.g., x, y
* Connectives. Same as in PL: not (~), and (^), or (v), implies (=>), if and only if (<=>)
* Quantifiers: Universal (A) and Existential (E)

First-Order Logic Formulas. From FOLDOC. Here's a sample of what you'll find:

If F1, F2 and F3 are formulas and v is a variable then the following are compound formulas:
F1 ^ F2        conjunction         - true if both F1 and F2 are true,
F1 V F2         disjunction        - true if either or both are true,

Glossary of First-Order Logic. Maintained by Peter Suber, Philosophy Department, Earlham College. "This glossary is limited to basic set theory, basic recursive function theory, two branches of logic (truth-functional propositional logic and first-order predicate logic) and their metatheory."

New Computer Language Taps into AI Technology. By Jennifer LeClaire. TechNewsWorld (June 20, 2005). "The developers said the ISO 18629 language is especially suited for the exchange of process planning, validation, production scheduling and control information for guiding manufacturing processes. Researchers have incorporated approximately 300 concepts, such as 'duration' and 'sequence,' into its software structure. ... A new software language promises to allow computers to consider the consequences of their commands. Analysts said this Artificial Intelligence technology looks promising for both manufacturers and business management processes. ISO 18629 becomes part of what Business Communication Company (BCC) predicts will be at least a US$21 billion market by 2007. While computers today merely respond to user commands without ever 'thinking' about the effects, National Institute of Standards and Technology researchers, along with colleagues in France, Germany, Japan and the United Kingdom, have developed a process specification language that enables computers to reason much more precisely and therefore better reflect subtleties intended by commands of human operators."

Readings Online

The Semantic Web. By Tim Berners-Less, James Hendler, and Ora Lassila. Scientific American (May 2001). "For the semantic web to function, computers must have access to structured collections of information and sets of inference rules that they can use to conduct automated reasoning. Artificial-intelligence researchers have studied such systems since long before the Web was developed. Knowledge representation, as this technology is often called, is currently in a state comparable to that of hypertext before the advent of the Web: it is clearly a good idea, and some very nice demonstrations exist, but it has not yet changed the world. It contains the seeds of important applications, but to realize its full potential it must be linked into a single global system. ... The challenge of the Semantic Web, therefore, is to provide a language that expresses both data and rules for reasoning about the data and that allows rules from any existing knowledge-representation system to be exported onto the Web."

  • See related materials on the Ontologies page and in the Representation section of the General Index to AI in the news.
  • See the first site on the semantic web. From the MINDSWAP Group at the University of Maryland Institute for Advanced Computer Studies' MIND LAB.
    • One of the reasons it's first is: "With the advent of the DARPA Agent Markup Langauge (DAML) program and the Semantic Web Activity at the World Wide Web Consortium (W3C) (and its predecessors), the "Semantic Web" (a term coined by Tim Berners-Lee) has been gaining widespread attention. In November, 2001, the W3C created the Web Ontology Working Group, which has developed the Web Ontology Language OWL, which is used in powering this web site -- making it the first "Owl-compliant" web site to date.

Computer generates verifiable mathematics proof. By Will Knight. NewScientist.com news (April 19, 2005). "A computer-assisted proof of a 150-year-old mathematical conjecture can at last be checked by human mathematicians. ... A proof of the theorem was announced by two US mathematicians, Kenneth Appel and Wolfgang Haken, in 1976. But a crucial portion of their work involved checking many thousands of maps - a task that can only feasibly be done using a computer. So a long-standing concern has been that some hidden flaw in the computer code they used might undermine the overall logic of the proof. But now Georges Gonthier, at Microsoft's research laboratory in Cambridge, UK, and Benjamin Werner at INRIA in France have proven the theorem in a way that should remove such concerns. They translated the proof into a language used to represent logical propositions - called Coq - and created logic-checking software to confirm that the steps put forward in the proof make sense."

Visual Languages for Knowledge Representation. By Rob Kremer, Knowledge Science Institute, University of Calgary. KAW'98: Eleventh Workshop on Knowledge Acquisition, Modeling and Management (1998). Abstrac: "Visual languages of many types are used in many disciplines for many purposes. The use of visual languages is compelling for many reasons, not the least of which is that their graphical nature can act as an analogical representation of the actual domain in a way that is not possible with purely textual systems. Concept mapping languages form a large family of visual languages. Concept maps consist of labeled, typed nodes and typed arcs, and may also include contexts that partition the map. Concept maps appear to be particularly useful for knowledge representation; examples include Peirce's Existential Graphs, Sowa's Conceptual Graphs, and Gaines' KRS."

Computational Intelligence - A Logical Approach. David Poole, Alan Mackworth and Randy Goebel. Oxford University Press, New York (1998). "Logic has been developed over the centuries as a formal (that is, precise not obtuse) way of representing assumptions about a world and the process of deriving the consequences of those assumptions. For simple agents in simple worlds we start with a highly restricted simple logic. Then as our agent/environment requires, we increase the logical power of the formalism. Since a computer is simply a symbol-manipulation engine, we can easily map our formal theories into computer programs that can control an agent or be used to reason about an agent. Everything we describe is implemented that way. Any high-level symbol-manipulation language, such as LISP or Prolog, can be used to support these implementations. We also provide complete implementations in Prolog, a language that is designed around the idea of computations as proof in a simple logic. But this connection is not essential to an understanding or use of the ideas in this book. Our approach, through the development of the power of the agent's representation language, is both simpler and more powerful than the usual approach of surveying and cataloging various applications of artificial intelligence. " - from the Preface. Chapter 1 is also available online.

Knowledge Representation: Logical, Philosophical, and Computational Foundations. By John F. Sowa (2000).In addition to the preface to the book, lots of very useful information (covering subjects such as ontologies and conceptual graphs) can be found at this site. Pacific Grove,CA; Brooks/Cole.

  • Also see his article, Semantic Networks: "A semantic network or net is a graphic notation for representing knowledge in patterns of interconnected nodes and arcs. Computer implementations of semantic networks were first developed for artificial intelligence and machine translation, but earlier versions have long been used in philosophy, psychology, and linguistics. What is common to all semantic networks is a declarative graphic representation that can be used either to represent knowledge or to support automated systems for reasoning about knowledge. Some versions are highly informal, but other versions are formally defined systems of logic. ...The oldest known semantic network was drawn in the 3rd century AD by the Greek philosopher Porphyry in his commentary on Aristotle's categories."

Lesson: Object-Oriented Programming Concepts. Part of The Java Tutorial available from Sun Microsystems. "If you've never used an object-oriented language before, you need to understand the underlying concepts before you begin writing code. You need to understand what an object is, what a class is, how objects and classes are related, and how objects communicate by using messages. The first few sections of this trail describe the concepts behind object-oriented programming. The last section shows how these concepts translate into code."

Semantic Network, an illustrated definition from Bill Wilson's AI Dictionary.

Related Web Sites

Architectures for Commonsense Reasoning projects at Commonsense Computing @ Media [the MIT Media Lab]. "To build systems as resourceful and adaptive as people, we must develop cognitive architectures that support great procedural and representational diversity. No single technique for reasoning or learning is by itself powerful enough to deal with the broad range of domains every ordinary person can understand, for even as children we can effortlessly think about complex problems involving temporal, spatial, physical, bodily, psychological, and social dimensions. Thus we are designing and implementing cognitive architectures that combine the advantages of many different ways to think about things, by making use of many types of mechanisms for reasoning, representation, and reflection."

The Classic Family of Knowledge Representation Systems. Maintained by Peter F. Patel-Schneider. "Classic is a family of knowledge representation (KR) systems designed for applications where only limited expressive power is necessary, but rapid responses to questions are essential. The Classic systems are based on description logics (DLs), which gives them an object-centered flavor, and thus most of the features available in semantic networks are also available in Classic. Classic has a framework that allows users to represent descriptions, concepts, roles, individuals and rules."

Conceptual Graphs Resources. From Harry S. Delugach, Associate Professor Computer Science Department,. University of Alabama in Huntsville. Resources include: FAQs, Introductory Materials, Standard Notation, Conferences, Tools, and links to Individual Researchers.

Description Logics. The Intelligent Information Systems Laboratory, Department of Computer and Information Science. Linkoping University. "Description logics are knowledge representation languages tailored for expressing knowledge about concepts and concept hierarchies." Be sure to see their page of Description Logic Systems, as well as the page with their collection of Description Logic Applications.

KIF - Knowledge Interchange Format. From the Department of Computer Science and Electrical Engineering, University of Maryland, Baltimore County. "Knowledge Interchange Format (KIF) is a computer-oriented language for the interchange of knowledge among disparate programs. It has declarative semantics (i.e. the meaning of expressions in the representation can be understood without appeal to an interpreter for manipulating those expressions); it is logically comprehensive (i.e. it provides for the expression of arbitrary sentences in the first-order predicate calculus); it provides for the representation of knowledge about the representation of knowledge; it provides for the representation of nonmonotonic reasoning rules; and it provides for the definition of objects, functions, and relations."

Knowledge Representation. A collection of links from Enrico Franconi. Be sure to see the section which feaures KR projects.

"Loom™ is a knowledge representation language developed by researchers in the Artificial Intelligence research group at the University of Southern California's Information Sciences Institute. The Loom project's goal is the development and fielding of advanced tools for knowledge representation and reasoning in Artificial Intelligence." "PowerLoom™ is the successor to the Loom™ knowledge representation system. It provides a language and environment for constructing intelligent applications. PowerLoom uses a fully expressive, logic-based representation language (a variant of KIF), and it uses a natural-deduction-style backward and forward chainer as its inference engine."

Related Pages

More Readings

Luger, George F. Artificial Intelligence, Structures and Strategies for Complex Problem Solving, 4th edition. 2002. Addison Wesley. Pages 34 - 41."The function of any representation scheme is to capture the essential features of a problem domain and make that information accessible to a problem solving procedure. ... In general, the problems AI attempts to solve do not lend themselves to the representations offered by more traditional formalisms such as arrays. Artificial intelligence is concerned with qualitative rather than quantitative problem solving, with reasoning rather than calculation, with organizing large and varied amounts of knowledge rather than implementing a single, well-defined algorithm. To support these needs, an AI representation language must: A) Handle qualitative knowledge; B) Allow new knowledge to be inferred from a set of facts and rules; C) Allow representation of general principles as well as specific situation; D) Capture complex semantic meaning; E) Allow for meta-level reasoning. ... To meet the needs of symbolic computing, artificial intelligence has developed representation languages such as the predicate calculus, semantic networks, frames, and objects. LISP and PROLOG are languages for implementing these and other representations."