opening it up with Common Lisp
Book review: Darwinia
Summer reading: Spin
the Omnivoire's Delimma
the Golem's Eye
A Visual Representation for Knowledge Structures
Michael Travers (who wrote LiveWorld) and has done interesting work in applying AI to the search for pharmaceuticals presents a knowledge representation interface designed to make understanding Cyc easier and using it more efficient. Cyc is a great big knowledge base (i.e., a database of facts) coupled with a slew of inference engines, etc. It is one of the older examples of Good Old Fashioned AI (GOFAI) and is the subject of both adulation and derision. Putting aside for the moment whether Cyc will ever "go meta", start reading newspapers and rename itself SkyNet, there is no doubt that a lot of human knowledge is formalized (for what it's worth) and contained in the Cyc Knowledge Base (KB). The knowledge is represented in a sort of Lisp like language (CycL) along with lots of documentation (english text). At the time of Traver's work, the main way to interact with Cyc was via the command line and web browser like tools. They were pretty bad.
Traver's Museum Unit Editor (MUE) was designed to force Cyc into a spatial metaphor (along the lines of Christopher Alexander's 1964 Notes on the Synthesis of Form). Much of this was abandoned because, frankly, Cyc doesn't fit into a spatial metaphor very well. However, the basic idea of seeing facts as rooms within rooms (containing facts), containing rooms (sub-facts) and objects (examples), and with gateways to still other rooms (related facts) is powerful enough to represent Cyc with a structure more amenable to the human mind (at least that's the claim, there aren't any real experiments described in the work... it does, however, seem plausible that such an interface would be cool, useful and fun to be in). MUE also used color, allowed objects (facts) to be in multiple places at once (that's just the way knowledge is, dammit!), and provided nice re-rooting operators to move from one "place" to another.
MUE was also used to browse other graphical structures like e-mail, text and program structure. It is part of a long line of similar work involved with finding useful representations of non-physical things. The big question, I think, is why so much of our time is still spent dealing with text. This paper is from 1989 -- 16 years ago! Why isn't it easier to graph stuff I care about (e.g., program source code, bibliographies of papers, pictures of my cats,...) and view / interact with it using tools beyond hierarchical file browsers and text editors? Something here is hard. What is it?
My answer is that there are two hard parts:
The first problem has seen lots of work and there are lots of techniques. Few techniques have, however, been seen as useful enough to make the leap from the lab to the masses. Furthermore, there is not (as far as I know and, hey, what do I know?) any body of knowledge that says which techniques are best used in which situations and why.
The second problem in its full generality is equivalent to understanding natural language. On the other hand, it is also trivially about lots and lots of parsers that give there best shot to things like "all the headings in chapter three of my books" and "the sub-folders of 'People' are in the format 'last-name, first-name'." This seems related to my personal take on the Feyerabend project -- having many solutions, always active, always computing, and always competing. Yes, many will fail, and crash, and cause errors but somehow enough will succeed to get a good answer.
Copyright -- Gary Warren King, 2004 - 2006