Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re: Re: Artificial Intelligence Programming in Perl

by Sifmole (Chaplain)
on Jul 02, 2002 at 13:10 UTC ( #178835=note: print w/replies, xml ) Need Help??

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

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.

  • Comment on Re: Re: Artificial Intelligence Programming in Perl

Replies are listed 'Best First'.
by ariels (Curate) on Jul 03, 2002 at 07:47 UTC


    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'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.

Re: Artificial Intelligence Programming in Perl
by Abigail-II (Bishop) on Jul 03, 2002 at 09:20 UTC
    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".


      You are correct, it values the resulting position it was merely a misstatement and hardly worthy of devoting your response to pointing out that one word.

      What do you do when you (meaning whoever is reading, or most people not specifically Abigail-II) play a game of chess? You have a knowledge of a set of openings, pick one and start. As each move results in a position you evaluate the current position, you examine the list of possible moves and evaluate each resulting position through some set of logical rules. How is this different than what a computer based chess player does? If its reliance on heuristics makes it "shallow and not very meaningful", then what does that say about the human playing chess?

        As I indicated, the difference is that a computer examines all possible moves, while (good) human players only examine a few moves. They instinctly know what good moves are, and don't waste time even considering bad moves. How humans make this (pre)selection of moves to examine isn't known, but it's good enough to beat computers who can examine millions of positions per second.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://178835]
[Marshall]: Hi folks - can't sleep - just hanging out
marto waves
[Marshall]: marto howdy!
[marto]: Hey there

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (4)
As of 2018-03-18 12:51 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (230 votes). Check out past polls.