Xref: utzoo talk.philosophy.misc:3892 comp.ai:6550 Path: utzoo!attcan!uunet!mcsun!ukc!tcdcs!swift.cs.tcd.ie!maths.tcd.ie!ftoomey From: ftoomey@maths.tcd.ie (Fergal Toomey) Newsgroups: talk.philosophy.misc,comp.ai Subject: Re: Why the Chinese Room doesn't convince Message-ID: <1990Apr10.114201.5909@maths.tcd.ie> Date: 10 Apr 90 11:42:01 GMT Organization: Dept. of Maths, Trinity College, Dublin, Ireland. Lines: 138 [This is my response to the second half of Dean's article] In article <1990Apr8.191524.6565@cs.umn.edu> hougen@cs.umn.edu (Dean Hougen) writes: >Why is it unfortunate that we cannot distinguish >between the "'understanding' program" and the brute-force program on >the basis of their behavior? Obviously you wish to say that the >"'understanding' program" understands, but the brute-force program >does not. But simply putting the 'undertanding' label on the one and >not the other does not mean that the one actually does understand or >that the other does not. I'm not simply putting on a label. I'm arguing that there is some yet-to-be-understood difference between the programs which distinguishes the two. I'm saying that one understands and the other does not by virtue of some algorithmic difference. >In fact, let's use your own analogy here. >We write a speech program for the computer running the "'understanding' >program". It can now speek fluently in English. You play a game of >chess with it. > >You ask it, "Why do you think you won/lost/drew?" >"Well, uhmm, yes, ... er," > >My point is this new system has *no understanding of the game*, although >sometimes it beats you. You may argue that being able to expalain why >you won/lost/drew is not all there is to understanding chess; that this >system can still have a partial understanding of the game without being >able to answer this question. In this case you agree with my point above, >that we have yet to find a reason for saying that the novice+list doesn't >understand and therefore have found no reason not to define 'understanding' >by functional behavior. Assuming that the program really does understand chess, and that it can speak, then it will be able to explain its game. I can understand chess to some extent, and I know that when I lose or win, I can usually pick out some defect in either my opponent's or my own strategy, and I can do this by virtue of my ability to understand chess strategy. Therefore, when I speak of an "understanding" program, I mean one which is capable of analysing a game and picking out reasons for victory/defeat. >Or you may agree with me that this system is has no understanding; that >it is just like the brute-force system - in direct contradiction to your >assertion above that it is unfortunate that we cannot distinguish between >the two. In this case we agree that this discussion has yet to find a >reason for not defining 'understanding' by functional behavior. I don't agree with you, but it is a sticky point. In a later post, I will give a new, in my opinion much stronger, argument for my position. >>IMO, there is a fuzzy boundary between the two, and I do not see >>at all why this should be highly suspect. People make all kinds of >>distinctions between algorithms already, for example between >>"brute force" algorithms and "insight" algorithms. > >That people do this does not make it correct. "Correct" doesn't apply here. People do this because it is useful. But again, if you ignore the amount of time and resources required by a brute-force algorithm and an insight algorithm, the two are indistinguishable. This is getting off the point anyhow, since I don't think insight algorithms have much to do with "understanding". (Sorry for bringing it up). >>Why shouldn't we be able to say: >> >>"This computer has been programmed to play chess, and this computer >>has been programmed to *understand* how to play chess (and in fact >>the first computer has beaten Kasparov, but the second computer >>has given Kasparov some hints to improve his game next time)." > >Do you realize that you just asked us to believe that the second >computer has been programmed to *understand* chess based on its >functional behavior? Would a brute-force chess-hint machine (one >which contains a list of all possible games and a hint associated >each one) understand chess? I mentioned the hint-giving abilities of the "understanding" machine only to highlight the difference between the two. If the "understanding" machine were designed to use its own hints to play chess, rather than to advise Kasparov, then there would be no way of telling the difference between the two machines without looking at their algorithms. Giving hints to Kasparov constitutes a kind of meta-behaviour which will always distinguish the "understanding" machine from the "brute-force" model. >Is it necessary to take your strategy >a step further and ask the hint-machine, "Why do you think you came >up with that hint?" "Well, uhmm, yes, ... er," That hint-machine >has *no understanding of the game*, although it can give advice on >how to improve your game. But, when you ask for an explanation of the hints themselves, you are in effect asking the machine to understand how it understands chess. This it cannot do, although if you believed that understanding is defined by behaviour, you would expect it to be able to do this. The hint-machine has *no understanding of how it understands the game*. Similarly, I understand some mathematics, but I don't understand how I understand maths. If I did, I'd have made a fortune selling intelligent computers. >>>To my mind, there can only be a _functional_ definition of >>>"understanding". How do you know that Kasparov uses a different >>>algorithm for playing chess than the computer? Better yet, how >>>do you know that Kasparov "understands" chess -- except by virtue >>>of his behavior? >> >>I don't. > >In fact, you seemed not to flinch at the idea of Kasparov providing >the list of all possible board configurations. He understands chess >therefore he would have/could create such a list? Hmmm. It was a gedanken experiment, after all. >No one is forcing you to use brute-force methods or trying to stop you >from understanding how humans understand. But, when you do create an >artificial intelligence, don't be surprised when some one peaks inside >and says, "I don't think like that, your system doesn't understand, I >don't care what it can do." What kind of person would do a horrible thing like that, I wonder? Probably the same sort of person who looks at aeroplanes in the sky and says: "Oh dear, that aeroplane is not flying like a bird, therefore it must be disobeying the laws of aerodynamics." My argument is simply that there are "laws of thought" which a program must obey in order to "understand", in the same way that there is a law of gravity which both birds and planes must obey. This does not mean that an intelligent computer must think in the same way as a human mind, anymore than it means that planes must fly in the same way as birds. >Dean Hougen Fergal Toomey.