Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411588 Posts in 69386 Topics- by 58443 Members - Latest Member: Mansreign

May 06, 2024, 11:30:32 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperTechnical (Moderator: ThemsAllTook)A simple article on AI
Pages: [1]
Print
Author Topic: A simple article on AI  (Read 1203 times)
Aquin
Level 10
*****


Aquin is over here.


View Profile WWW
« on: June 22, 2009, 10:50:00 AM »

I wrote an article about some simple AI created for a board game.  I would put it in Announcements, but it seems more appropriate here.  I talk about how she learned to think for herself and how to analyze the board like a human being (instead of like a computer.)

http://www.dreamofwinds.com/aquin/?p=25

The AI nerds here won't learn anything new just from the post, but there is a source download to show exactly how she operates... if you're interested.




Logged

I'd write a devlog about my current game, but I'm too busy making it.
Epitaph64
Level 1
*



View Profile WWW
« Reply #1 on: June 23, 2009, 01:31:43 PM »

Ah yeah, it's a good approach to AI to add humanistic qualities, especially for games meant to be more social, although having the best possible moves for a chess program is understandable, since people want to increase their skills for real competition. Overall, a good article, and makes me want to program AI for something Wink
Logged

Aquin
Level 10
*****


Aquin is over here.


View Profile WWW
« Reply #2 on: June 23, 2009, 01:47:58 PM »

It is possible to have expert-like AI without resorting to 'brute force calculations'.

A really good example is the AI used for CPUs in Go.  Programs, like AyaGo (my personal trainer), are really quite good at the game.  Unless you're a real pro, you'll have a lot of trouble overcoming the AI.

And yet the AI can't rely on typical Chess-like tactics, because the number of possible moves is simply staggering.  Instead, programmers have to teach the CPU to recognize shapes and how to properly determine 'life-or-death' scenarios.

There's a lot of interesting stuff out there!  :D
Logged

I'd write a devlog about my current game, but I'm too busy making it.
BorisTheBrave
Level 10
*****


View Profile WWW
« Reply #3 on: June 23, 2009, 01:59:57 PM »

The brute force part is the easy part, obviously. AI for board games comes down to using resources efficiently, which is hard. But it's completely different from teaching an AI to play like you do. Firstly, it's impossible to actually vocalize how you play, and secondly, you do a certain amount of brute forcing as well, you just don't want to admit it.

The amount of moves in chess is staggeringly large too, well beyond that a computer can handle. The difference between chess and go is it is easier to judge a good/bad board quickly in chess, so I can give up on analysing moves. In go, a single piece placed in early game can only become critical later, and it's hard to say why.

Lemme add the usual disclaimers that it's a huge subject, and I've only just touched the surface, but all the same I felt the OPs article was only an academic exercise, and doesn't really have any bearing on making either a good AI or a smart one. Such experiences could be helpful in the "board judgement" I was referring to, but this wasn't really addressed.
Logged
Aquin
Level 10
*****


Aquin is over here.


View Profile WWW
« Reply #4 on: June 23, 2009, 02:17:58 PM »

Boris, I don't really mind brute forcing... as long as *I* do it too.  When I look at a piece, I compare the surrounding pieces to see if I'm looking at a threat.

When I talk about 'brute force calculations' I mean more the whole, "Hey let's look at a hundred thousand possible moves and get back maybe two good moves."

I'd rather teach the program to learn efficiently from the get-go and not consider some ridiculous amount of, in the end, unnecessary calculations.

---

You're right about it being tough to 'vocalize' the thought process in the human brain.  I spent hours playing the game with a friend and just thinking about what I do and how I approach each scenario.

Even after all that, my AI still made a lot of mistakes that I wouldn't do myself.  It took a long time to teach her to think like me.  It was a lot of fun though.  Smiley
Logged

I'd write a devlog about my current game, but I'm too busy making it.
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic