Hubert Dreyfus wrote a book in the 1970s, called What Computers Can’t Do, which is a really interesting counterpoint to the early optimism of researchers in artificial intelligence in that time period. In brief, Dreyfus takes a poop on the hopes and dreams of all computer scientists and states in an extremely final way that a computer program will never simulate the human mind. He makes many good points that are worth exploring, however, he doesn’t want to leave the discussion open at all. I found his discussion on the nature of abstractions, on what it means to be “real”, and on the categorization of “information” (whatever that is) to be very interesting. I don’t want to be pushy, but Buddhist ideas show up all over the place in these very (super-)cerebral discussions of reality, and many of the points made mirror the world that Buddhism describes; the interdependence of all things is probably the most important tenet of Buddhism, and the most ubiquitous in such non-Buddhist, scientific literature. Not that I’ve read that much.
Without any more ranting, there are a couple cool things I wanted to…paraphrase from the book. First, the author describes how our perceptions shape the “reality” of the physical world. Consider a glass of water and a glass of milk. Imagine drinking the glass of water with the intention of doing just that. You’ll taste water. Now imagine putting down the water, accidentally picking up the glass of milk, and drinking the glass of milk with the intention of drinking the glass of water. If you’re not paying attention (or intention), and get a mouthful of milk expecting water, the perceived taste is something not quite water and not quite milk, something in between but not quite either. Perhaps it’s the “raw input”, I don’t really know. But it would seem that your preconceptions of the taste of water have affected your perceptions of the taste of water.
Second, Dreyfus provides at the end of his book analogous problems and activities that help us categorize the kinds of problems that humans and computer programs face and how difficult they are. The table looks like this:
Table reproduced from What Computers Can’t Do, Revised Edition by Hubert Dreyfus, Harper Colophon Books edition, page 292.
| Classification of Intelligent Activities |
| I. Associationistic |
II. Simple-Formal |
III. Complex-Formal |
IV. Nonformal |
| Characteristics of Activity |
| Irrelevance of meaning and situation. |
Meanings completely explicit and situation independent. |
In principle, same as II; in practice, internally situation-dependent, independent of external situation. |
Dependent on meaning and situation which are not explicit. |
| Innate or learned by repetition. |
Learned by rule. |
Learned by rule and practice. |
Learned by perspicuous examples. |
| Field of Activity (and Appropriate Procedure) |
| Memory games, e.g., “Geography” (association). |
Computable or quasi-computable games, e.g. nim or tic-tac-toe (seek algorithm or count out). |
Uncomputable games, e.g., chess or go (global intuition and detailed counting out). |
Ill-defined games, e.g. riddles (perceptive guess). |
| Maze problems (trial and error). |
Combinatorial problems (nonheuristic means/ends analysis). |
Complex combinatorial problems (planning and maze calculation). |
Open-structured problems (insight). |
| Word-by-word translation (mechanical dictionary). |
Proof of theorems using mechanical proof procedures (seek algorithm). |
Proof of theorems where no mechanical proof procedure exists (intuition and calculation). |
Translating a natural language (understanding in context of use). |
| Response to rigid patterns (innate releasers and classical conditioning). |
Recognition of simple rigid patterns, e.g., reading typed page (search for traits whose conjunction defines class membership). |
Recognition of complex patterns in noise (search for regularities). |
Recognition of varied and distorted patterns (recognition of generic or use of paradigm case). |
| Kinds of Programs |
| Decision tree, list search, template. |
Algorithm. |
Search-pruning heuristics. |
None. |
Of course, to make full sense of this table, reading the book may be necessary. Also, a degree in philosophy, cognitive science and/or computer science would also be helpful. I can cut out the tough stuff and summarize, though.
In terms of philosophy, this table shows the apparent difficulty in getting the global, semantic interpretation of a situation without actually having previously been in the situation (i.e. being a human in the universe). This seems to be a paradox, the seemingly insurmountable problem of providing a program with enough rules to build up new rules for itself in an infinite hierarchy (consider creating a fundamental set of rules for solving problems, then creating rules for when and how to use those rules, then creating rules for when and how to use those rules, and so on ad infinitum).
In terms of cognitive science, this table shows the problem of providing a computer program with what we would call “insight”, “intuition”, “understanding”, or “perception” of an arbitrary input (from the domain of the physical world). The methodical, algorithmic ways of solving problems take so long, and we humans don’t seem to do that when we, for example, see a “strong” position as opposed to a “weak” position on a chess board. Checking each possible combination of moves becomes outrageously computationally expensive very quickly; someone smart once said that we live in a world full of probabilistic decisions, and I bet that’s closer to how we actually do it.
In terms of computer science, this table shows from left to right the increasing complexity of each type of problem, from sub-polynomial time algorithms to polynomial time algorithms to more complex heuristics (a heuristic can be considered an algorithm for learning how to learn), and beyond that, we don’t really know how to solve the problem in the way that a human seems to solve it (with intuition). That’s what the “None” is for in the table (my emphasis).
The author points out that we actually start out as human beings in area IV on the table, then we learn how to do things in areas I, II, and III in sequence, “just as natural language is prior to mathematics” (Dreyfus 294). Curiouser and curiouser.
That’s all I have to say about that. I like it. I hope I’ve inspired everyone to take up a career in theoretical computer science.
Also, just want to repeat that a lot of this is paraphrased from Dreyfus’s book, so props to him.