artificial intelligence in chesschess.ssmu.ca/wp-content/uploads/2012/05/aiinchess.pdf · -think...

Post on 30-May-2018

251 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Artificial Intelligencein ChessDan Pomerantz

AI in Chess 2

Outline• Brief history of Artificial Intelligence in chess

• Why are computers good at chess?

• Basic techniques for writing a chess AI

AI in Chess 3

The first AI – 1770 ! “The Turk”

AI in Chess 4

The first AI – 1770 ! “The Turk”

AI in Chess 5

The Turk

• Able to play chess “automatically”• Appeared to work like a clock• Turned out to be illusion using magnets

and a real human underneath• No one figured out the secret for 50

years!

AI in Chess 6

• In the 1940s and 1950s, mathematicians and computer scientists came up with algorithms or descriptions of HOW to program a computer to play chess.

• Problem : Computers weren't powerful enough to follow these descriptions!

AI in Chess 7

Finally.....

• Around the late 1950s, we finally were able to create programs that played FULL games of chess.

• Turing test : Can we train a computer to make us think there is a human?

AI in Chess 8

Deep Blue (mid 1990s)

AI in Chess 9

AI in Chess 10

AI in Chess 11

“It was an impressive achievement, of course, and a human achievement by the members of the IBM team, but Deep Blue was only intelligent the way your programmable alarm clock is intelligent. Not that losing to a $10 million alarm clock made me feel any better.” - Garry Kasparov

AI in Chess 12

AI in Chess 13

AI in Chess 14

AI in Chess 15

AI in Chess 16

State of various games• Chess – computers can beat world

champions• Checkers – solved by Jonathan Schaeffer• Bridge – computers can compete with top

players but don't normally win• Go – computers not even close to top

players

AI in Chess 17

Why is AI Chess “easier”• Small “branching” factor• Perfect information• Positions can be evaluated with reasonably

simple heuristics• “Chess mastery essentially consists of

analyzing chess positions accurately.” - Mikhail Botvinnik

AI in Chess 18

What makes AI better than human?

• Key factor : Emotions lead to inconsistency

AI in Chess 19

What makes computers stronger than humans?

• Key factor : Emotions lead to inconsistency• Computers don't experience fatigue• “Chess is thirty to forty percent psychology.

You don't have this when you play a computer. I can't confuse it.” - Judit Polgar

• “Few things are as psychologically brutal as chess.” - Garry Kasparov

AI in Chess 20

Emotion and fatigue : Kotov• “I was Black and had a completely

won position. I was annoyed that my opponent – a certain Golubev – did not resign although he was a whole rook down. It was my turn to move and I realized that the joy of victory could not be long delayed. My opponent had already folded his score sheet in two, written “Resigns” on it and put it in his pocket. With an air of hopelessness he was looking round and seemed to express with his whole demeanor that as soon as I made my move he would resign.”

AI in Chess 21

Emotion and fatigue

AI in Chess 22

Emotion and fatigue

AI in Chess 23

Emotion and fatigue

AI in Chess 24

Emotion and fatigue

AI in Chess 25

Emotion and fatigue• So I made my move – the most

obvious one there was – taking his bishop with my rook. Immediately the other bishop whizzed through the air and landed with a bang on d8. Again with a bang my opponent started my clock and looked round in triumph at the people who were watching the game. Then he took out his score sheet, wrote down his move and mine and crossed out the word “Resigns”. I was the one who had to resign!

AI in Chess 26

How to Create an AI : Search (minimax algorithm)

AI in Chess 27

●Key idea: Choose the move that maximizes your position in the WORST case

Qb6 here is aterrible move for white!

AI in Chess 28

Chess is way too complex●Tree is just too large●Heuristic search●Choosing the best moves without searching!●Transpositions

AI in Chess 29

Heuristic Search●Search up until a certain point using this approach●At some point, stop and evaluate the position.●How to evaluate a position?

AI in Chess 30

Horizon Effect●5 move combination that wins a piece!●Unfortunately it's also a 6 move combination to lose a piece!●Try to determine “interesting” position

AI in Chess 31

Trimming Search Tree:“Alpha-beta” pruning

●Idea: ●1)Suppose I am debating between choice a,b,c for move.●2)Now suppose I searched choice a) and determined it won a pawn.●3)I am looking at choice b and I notice that ONE of my opponent's moves in response leave the position even. I can now conclude there is no point of looking at all of my opponent's responses

AI in Chess 32

Trimming Search Tree:“Alpha-beta” pruning

●Order of searching is now important.●This matches the way humans try to search.

AI in Chess 33

Trimming Search Tree:Transposition tables

●Many positions occur via transpositions.If the computer has an evaluation for:

1.e4 e5 2.f4

it should be able to use that for

1.f4 e5 2.e4

Trade off of search time vs storage time

AI in Chess 34

Current State

• Computer AIs now teach us!• Big part of challenge is making the AI

levels varying so that people can use them to get better

• Is chess solvable? Difficult to say if we'll ever have enough power to solve chess?

AI in Chess 35

Kramnik

“I don’t know whether computers are improving the style of play, I know they are changing it. Chess has become a different game, one could say that computers have changed the world of chess. That is pretty clear.” - Vladimir Kramnik

AI in Chess 36

What can we learn from computers?

“Let us suppose that at one point in your game you have a choice between two moves, Rd1 or Ng5. Which should you play? You settle down comfortably in your chair and start your analysis by silently saying to yourself the possible moves. 'All right, I could play Rd1 and he would probably play ...Bb7, or he could take my a-pawn, which is now undefended. What then? Do I like the look of the position then?' You go one move further in your analysis and then you pull a long face—the rook move no longer appeals to you. Then you look at the knight move. 'What if I go NG5?

AI in Chess 37

What can we learn from computers?

“He can drive it away by ...h6, I go Ne4, he captures it with his bishop. I recapture and he attacks my queen with his rook. That doesn't look very nice...so the knight move is no good. Let's look at the rook move again. If he plays ...Bb7 I can reply f3, but what if he captures my a-pawn. What can I play then? No, the rook move is no good. I must check the knight move again. So, Ng5, h6; Ne4, Bxe4; Qxe4, Rd4. No good! So I mustn't move the knight. Try the rook move again. Rd1, Qxa2.' At this point you glance at the clock. 'My goodness! Already 30 minutes gone on thinking whether to move the rook or knight.'

AI in Chess 38

What can we learn from computers?

“If it goes on like this you'll really be in time trouble. And then suddenly you are struck by the happy idea—why move the rook or knight? 'What about Bb1?' And without any more ado, without any analysis at all you move the bishop, just like that, with hardly any consideration at all”

-Think Like a Grandmaster, Alexander Kotov

AI in Chess 39

What can computers learn from us?

AI in Chess 40

Kickboxing

“A computer once beat me at chess, but it was no match for me at kick boxing.”-Emo Phillips

AI in Chess 41

Thank you

top related