What Computers Can’t Do: A Critique of Artificial Reason
by Hubert L. Dreyfus
Harper & Row, 259 pp., $8.95
Electronic machines of the kind generically called “computers” can now do a number of things at least as well as human beings, and in some cases better. Many of these tasks are boring, such as finding addresses or counting things. Immunity to boredom is one thing that helps to give computers the edge over human beings in some tasks. Another is speed of operation: only a computer could do the calculations necessary for landing a module on the moon, since only a computer could do the sums in less time than it takes the module to get there.
In some cases, the computer’s program guarantees an answer to the problem in hand. Whether this is so depends on several things: first, whether the problem is one for whose solution a determinate procedure (called an algorithm) can be specified. An algorithm is a set of instructions which when carried out is bound eventually to yield what is required. Looking things up in lists and doing addition are two among many tasks for which there exist algorithms, and computers spend most of their time on just such things.
But even if a task can be specified in an algorithm, there remain vitally important questions of whether a machine could complete the task in an acceptable time or within the limits of the amount of information it can process. These restrictions are so important that the question of whether there is an algorithm for a given task may be of little practical interest. Thus, in principle, there could be programs for playing checkers that involved counting out all possible future combinations of moves and countermoves (though even this would not by itself provide the way to choose the best moves). But assuming that at any given point five moves on the average are possible, the number of possibilities twenty moves ahead is greater than the number of microseconds in a year—which forecloses that way of going about it.
For most interesting tasks either there is no algorithm or it is not a practicable one. So machines must be programmed not to grind through the task but to proceed “heuristically”—to search intelligently (as we would put it), to show some insight into what is relevant and promising, and to learn what is useful and what is not. Such programs, of course, are in themselves as determinate as the others, and the machine’s states are still determined by the program and its earlier states: the difference is that the program does not contain instructions which lead inevitably and by exhaustion to a solution, but rather is designed to throw up routines and strategies which should prove fruitful in finding a solution.
In talking of “computers” here I have in mind, as Dreyfus has throughout his book, digital machines, that is to say, machines that represent all the information they handle by combinations of elements each of which can be either of two states (on or off, for instance), and are thus …