Intro to AI Ch. 3 - Adversarial Game Playing

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/17

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

18 Terms

1
New cards

Brief History of AI and Games

1952 - Samuel Checkers Playing Program

1997 - IBM’s Deep Blue beats reigning world champion at chess

2017 - AlphaGO beats world champion at GO

2
New cards

Perfect Opponent Assumption

Each player plays optimally to execute the result that is best in their favor.

3
New cards

Game Tree

A search tree that corresponds to a game. For example, for a board game, nodes denote board configurations and branches indicate how one board configuration can be transformed into another by a single move.

4
New cards

Ply

A turn taken by a player

5
New cards

Complete Move

Consists of 2 ply - a turn is taken by each player

6
New cards

Terminal Test

Goal test

7
New cards

Utility Function

Evaluation function

8
New cards

MiniMax Strategy

MAX is trying to maximize its payoff and MIN is trying to prevent this by minimizing its moves.

Uses a depth-first exploration of a complete game tree

Time and space complexity the same as DFS

9
New cards

Static Evaluation Approach with MiniMax

Cuts off search according to some cut-off test, usually a depth limit. Evaluate the pre-terminal leaf nodes using a static evaluation heuristic (estimates chances of winning from that node).

10
New cards

Static Evaluation Heuristic

Estimates chances of winning from a given node. Must agree with the payoff function at the terminal states. Must not take long to compute. Should be accurate enough.

11
New cards

Quiescent vs. Non-quiescent State

A quiescent state is a stable state - i.e., one in which no captures are possible.

12
New cards

Quiescence Search

Only apply evaluation functions in quiescent positions

13
New cards

Horizon Problem

In a fixed-depth search, damaging moves may be “delayed” beyond the search horizon and not seen. The program may choose moves that seem better at the time but ultimately result in more total damage.

Negative Horizon Effect - MAX may try to avoid a bad situation which is actually inevitable

Positive Horizon Effect - Max may not realize that something good is achievable and and does not make the right choices to realize this possibility

14
New cards

Horizon Problem Solutions

Search until quiescent - extend the normal search to look for quiescent states

Singular extension - If a single move appears considerably better than others, search its sub-tree a little deeper

15
New cards

Progressive Deepening

Iteratively repeat search and continue to increase the lookahead depth until time runs out. Same as Iterative Deepening Search.

Maximizes available time

16
New cards

Alpha-Beta Pruning

Basic idea - if you know halfway through a calculation that it will succeed/fail, you do not have to do the rest of it.

Compute the MiniMax decision without looking at every node and prune away branches that cannot possibly influence the final decision.

Keep track of:

  • Alpha - the highest value seen so far on a maximizing level

  • Beta - the lowest value seen so far on a minimizing level

When minimizing, do not expand any more daughter nodes once a node has been seen whose evaluation is smaller than Alpha

When maximizing, do not expand any daughter nodes once a node has been seen whose evaluation is greater than Beta

17
New cards

Move Ordering

Used in conjunction with progressive deepening to improve the effectiveness of pruning.

Ex. First search 1-ply deep and record the best path of moves. Then search 1-ply deeper but use the recorded path to influence move ordering

In the best case, complexity goes from O(b^d) to O(b^(d/2))

18
New cards

Transposition Table

A hashtable of previously seen positions, which allows faster searches.