Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Re: Re: Artificial Intelligence Programming in Perl

by kiat (Vicar)
on Jul 02, 2002 at 12:45 UTC ( #178831=note: print w/ replies, xml ) Need Help??


in reply to Re: Re: Artificial Intelligence Programming in Perl
in thread Artificial Intelligence Programming in Perl

Hi Monks

Isn't Deep Blue (the chess program) an excellent example of an application in AI? From what I know of the program, it can make novel decisions based on past "experience", which means that there's some "learning" taking place.

kiat


Comment on Re: Re: Re: Artificial Intelligence Programming in Perl
Re: Artificial Intelligence Programming in Perl
by Abigail-II (Bishop) on Jul 02, 2002 at 13:05 UTC
    No, I would not consider any chess program to be an example of an application in AI. Most, if not all, chess programs are just brute force algorithms, combined with extensive libraries for the opening game. After the opening, they just explore all possible plies (a ply is a half-move) to a certain depth, evaluate the postions, and prune to select the best moves so far. Then they repeat the process of "try all, evaluate, prune to select best so far" zero or more times.

    This doesn't even come close to how a human chess player works. Not much is know how exactly a human chess mind works, but (grand)masters only explore a few moves in depth when its their turn to move.

    As for the learning process of Deep Blue, the only ones that are "learning" are the programmers.

    Abigail

      After the opening, they just explore all possible plies (a ply is a half-move) to a certain depth, evaluate the postions, and prune to select the best moves so far.

      This process of examining and evaluating usually uses some set of heuristics to value each move.This process is an example of applied AI. I have however heard it said, that once AI become applied it ceases to be AI.

        Me

        Cool! Many of the problems I've worked with have been (provably) NP-hard. Of course, the first thing you learn as an algorithms guy in the industry is that NP-hard problems are not insurmountable: typically the instances of the problem which actually show up are easy (in some appropriate sense), and a good heuristic handles most of them quite well (although not optimally).

        I designed and coded some heuristics to speed up such searches. Does that make my work "an example of applied AI"? Or is it just a solution to a practical problem?

        Perl

        Perl's regexp pattern matching is NP-hard (I believe Abigail-II wrote about this very topic). But ingenious heuristics (coupled with occasional "better" choices of regexps) make Perl's regexp matcher indecently fast for most practical applications. Is the Perl regexp matcher "an example of applied AI"? Or is it just a solution to a practical problem?

        What intelligence?

        Ask yourself this: Are these programs displaying anything like intelligent behaviour? Or are they just glorified adding machines?

        Once AI becomes applied, I'll start believing in it. For the time being, the burden of proof is upon its proponents.

        Actually, it values each position, not each move. But if you call this technique "applied AI", then that term because shallow and not very meaningful anymore. From there on, it would be easy to call any algorithm "AI".

        Abigail

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://178831]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (6)
As of 2014-09-15 10:08 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite cookbook is:










    Results (146 votes), past polls