Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!mcsun!unido!uklirb!powers From: powers@uklirb.informatik.uni-kl.de (David Powers AG Siekmann) Newsgroups: comp.ai Subject: Re: What actually is AI? Message-ID: <6560@uklirb.informatik.uni-kl.de> Date: 3 Sep 90 12:02:27 GMT References: <90241.112651F0O@psuvm.psu.edu> <90243.142616F0O@psuvm.psu.edu> Organization: University of Kaiserslautern, W-Germany Lines: 94 F0O@psuvm.psu.edu writes: > In following the threads of my original posting, it seems that there >is not one definition of what AI is. However, what my original question >was is, what is it that makes one program an AI one, and another one non-AI? >Again, I imagine there is not one magical answer to that, but for instance, >I'm finishing up a prolog program that plays unbeatable tictactoe. Of >course, this is a very simple game, but would it be considered an AI program? >If not, how about a checkers or chess program? And it they would be AI >programs, what would make them AI, but tictactoe not-AI? We have now seen 2 definitions, I prefer to characterize them so: the engineering perspective: to build systems to do the things we can't build systems to do because they require intelligence the psychological perspective: to build systems to do the things we ourselves can do to help us to understand our intelligence The former was the original aim, the latter came from psychology and is represented in Margaret Boden's book: AI and Natural Man. But it is also a natural extension of our familiar introspection. This has now been distinguished with its own name: Cognitive Science. Note that a corollary of the first definition is that once we can build something, then the task no longer lies within artificial intelligence. AI has lost several subfields on this basis, from pattern recognition to chess playing programs to expert systems. I would say the real ai definition is this: the heuristic perspective: to build systems relying on heuristics (rules of thumb) rather than pure algorithms This excludes noughts and crosses (tic-tac-toe) and chess if the progam is dumb and exhaustive (chess) or pre-analyzed and exhaustive (ttt). Unfortunately it could also include expert systems which I see as a spin-off of ai technology and by no means main stream, but expert systems capture conscious knowledge or at least high level knowledge. The capture of the knowledge is straightforward and intrinsically no different from the introspection involved in writing any program - we think "How would I do it by hand?" Of course knowledge engineering techniques can be applied to any domain, even those hard to introspect, by using the techniques with the experts in the field - e.g. on linguists, for natural language. But this won't in general reveal how we are actually really using language. This brings us back to the cognitive science definition. The definition which guides my own work is: to build systems which are capable of modifying their behaviour dynamically by learning This takes the responsibility of acquiring and inputting the heuristics or knowledge from the programmer or knowledge engineer and gives it to the programmer. Machine Learning is a subfield of AI, but somehow central to its future. Expert Systems are also really only still AI in so far as we use AI (=heuristic+learning) techniques in the acquisition of the knowledge base. But there is also a lot of work to be done in establishing the foundations within which learning is possible. Another definition of AI is: Anything written in LISP or PROLOG. This definition (or either half thereof) is believed by some. It is not so silly as it sounds. E.g, PROLOG does have something of the property of automatically finding a way of satisfying specifications, and logic and induction and theorem proving technology are the underpinings of machine learning research. This technology can now be guided by heuristics, and these heuristics can be learned. It's only beginning, but it's exciting! And, of course, you can still misuse any language! I hope this has stirred the pot a bit. David ------------------------------------------------------------------------ David Powers +49-631-205-3449 (Uni); +49-631-205-3200 (Fax) FB Informatik powers@informatik.uni-kl.de; +49-631-13786 (Prv) Univ Kaiserslautern * COMPULOG - Language and Logic 6750 KAISERSLAUTERN * MARPIA - Parallel Logic Programming WEST GERMANY * STANLIE - Natural Language Learning