In case you didn’t know, knowledge representation (KR) is one of the most important topics in AI. In my opinion KR is *the* most critical topic in AI. Some evidence of my opinion is that Schank lists KR first among his features of the field of AI:
(1) For Schank (1990, p. 13) AI is a distributed phenomenon: “poten-
tially . . . the algorithmic study of processes in every field of enquiry”—
a broad description but one that is narrowed by a list of 10 features which
he considers to be characteristic of AI. The features are:a. Representation—how do we represent what we know in a machine?
b. Decoding—translation from the real world into the representation
selected;
c. Inference—the process of figuring out the significance and full
meaning of a collection of knowledge represented explicitly, or
sensed directly;
d. Control of Combinatorial Explosion—finding ways to limit the po-
tentially limitless inference process;
e. Indexing—organization and labeling of memory such that relevant
items can be located quickly;
f. Prediction and Recovery—ability to predict from current knowledge
and recover from inevitable mistakes;
g. Dynamic modification—“the quintessential AI issue,” learning:
knowledge structures must change over time;
h. Generalization—the process of drawing conclusions from disparate
data, the basis of creativity;
i. Curiosity—a process of probing beyond the known and understood,
of constructing both questions and explanations;
j. Creativity—the process of generating new information, often viewed
as generating useful relationships between known items that were pre-
viously thought to be unrelated.
(“A New Guide to Artificial Intelligence”, Derek Partridge, 1991, page 2)
In neuroscience, learning is sometimes listed first as the primary unsolved mystery of the brain, but I would think that in order to learn something, a system has to first represent the phenomenon, and only then can it change something in its representation to show what changed in time. The following is an example of a list from neuroscience that lists a number of KR-related mysteries, although in different wording. Note that the KR-related topics tend to be at the top of the list.
10 Unsolved Mysteries Of The Brain
...
1. How is information coded in neural activity?
...
2. How are memories stored and retrieved?
...
7. How is time represented in the brain?
http://discovermagazine.com/2007/aug/unsolved-brain-mysteries#.UOeeV3dg-54
Knowledge representation is basically just how you represent knowledge about things or relationships between things. Some familiar examples of knowledge representation are: natural language text, databases, rules/productions, mathematical formulas, formal logic formulas, sets, Venn diagrams, tables, graphs, drawings/illustrations/sketches/photographs/videos, networks/graphs, arrays, lists, software objects. If I understand correctly, all those abstract data types you learn in computer programming classes (linked lists, trees, etc.) are merely more examples of KR methods.
So here was my reasoning: Since the secret of AI quite likely lies in finding a suitable form of KR for representing the real world in all its variety, uncertainty, and changing patterns, then all that needs to be done for a major advancement in AI is to study and think about KR until such a method becomes clear. The obvious way to start is to look at books on KR, especially KR related to AI, understand what has been done, read the author’s hints of what KR the brain likely uses, maybe tweak or extend an existing method, then you’re done!
I wasn’t naive enough to think this path of research would be easy, but I *was* naive enough to think that existing books on KR would be very helpful. In the university library I visited, I found two books solely about KR, which isn’t bad, since KR books aren’t very common. One of those books was “Knowledge Representation” (John F. Sowa, 2000), which had been highly recommended to me by a scientist at one startup company where I worked, a scientist who knew Sowa personally. Because that company had worked me outrageous numbers of hours per week and because the book was quite expensive to buy, it took me about four years to finally get around to finding a free library copy with free time to peruse it.
What a disappointment Sowa’s book was! To be fair, I should state that I was expecting something more like an encyclopedia that listed hundreds of KR diagrams/methods, like a reference book for people trying to push the state of the art in AI. (Why else would somebody write an entire book on KR, if not to be useful in computer science, AI, and neuroscience? Those are the main fields that need it.) I had also expected a lot of exotic KR methods I had heard about over the years, the ones that don’t normally get listed in textbooks, like neural synchronization and signature tables. There was *nothing* like that in Sowa’s book, not even close. The book mostly listed only conventional techniques, and didn’t even list some used in AI.
Also to be fair, I should state that I later began to appreciate the book quite a bit for what it was. It did have some excellent parts, especially the list of six classification features for any kind of logic, which can be combined arbitrarily to produce fuzzy logic, multi-valued logic, and any other type of logic you might want to invent. There were also some great insights into the limitations of logic, the difference between logic and ontology, fields of science using different granularity, etc. But as a fundamental source of ideas for pushing the state of the art in AI, it was close to useless for me.
I then looked at another KR book at that library, one focused on AI: “Knowledge Representation: An AI Perspective” (Han Reichgelt, 1991). It sounded very promising, but it wasn’t. In fact, it was even worse, with such limited coverage of AI KR methods that there wasn’t even so much as an interesting quote I could pull from the book. Then I looked at “Representations of Commonsense Knowledge” (Ernest Davis, 1990), and I also found that to be weak.
I haven’t exhausted all the possibilities, of course. I did see the book “Handbook of Knowledge Representation (Foundations of Artificial Intelligence)” (eds. Frank van Harmelen, Vladimir Lifschitz, and Bruce Porter, 2008) for about $200 on Amazon.com
(http://www.amazon.com/Knowledge-Representation-Foundations-Artificial-Intelligence/dp/0444522115), but that’s not in any library I know of, I’m certainly not going to buy it unseen, and after all my prior disappointments, I’d almost guarantee it’s going to be more of the same.
Therefore I’ve come to the sad conclusion that the state of KR is very weak, at least for what has been published in books. Books won’t give AI enthusiasts a strong enough boost to push them into AGI orbit. I suppose this means there is a needed niche for an encyclopedic book on KR of the type I described, and sadly, I’m probably qualified enough to write it, but considering that I’ve spent the past year just trying to get a single article completed, my writing such a book isn’t going to happen in the foreseeable future. Sorry for all the bad news, but I think heavy AI die-hards should know my opinion of the state-of-the-art of KR. Many other people see the situation differently?
If I’m wrong and there does happen to be a much better book on KR, here is what I believe it should include, at an absolute bare minimum…
(1) many exotic KR methods for AI, including:
signature tables (http://webdocs.cs.ualberta.ca/~sutton/book/ebook/node109.html)
neural synchronization (http://www.scholarpedia.org/article/Binding_by_synchrony)
(2) many KR methods outside of AI, including:
adjacency matrices (http://en.wikipedia.org/wiki/Adjacency_matrix)
Feynman diagrams (http://www.quantumdiaries.org/2010/02/14/lets-draw-feynman-diagams/)
Dirac/bra-ket notation (http://en.wikipedia.org/wiki/Bra-ket_notation)
unfolded box diagrams
group theory
chaotic attractors
photographs
raster patterns
(3) all KR methods for all existing software paradigms, including:
algorithms/flowcharts
logic
software objects (of object-orientated programming)
productions (of expert systems)
Venn diagrams (of set-orientated programming)
aspects (of aspect-oriented programming)
(4) deep relationships between the above methods that allow new methods to be created and compared, as Sowa did with his six organizing attributes of logic
(5) suggestions and recent findings that suggest what KR method biological brains might use—the Holy Grail of KR
Now that would be a great book. If anybody wants to collaborate and knows how I could financially survive while writing part of it, be sure to let me know. Or just go ahead and steal this idea, if you want, if you think you can pull it off by yourself.
(Caveat: This thread of mine isn’t quite up to my normal standards of thorough research, but it’s such a large topic and the timing is so appropriate that I went ahead and posted it tonight anyway. Enjoy.)