Game Playing

Games vs. Search Problems

Types of Games

Two-Person Zero-Sum Games

Formal Parts of a Game

Partial Game Tree for Tic-Tac-Toe

One Version of the Game of Nim

Partial Game Tree for Nim with N=7

Complete State Space for Nim (7)

A Forced Win for MAX (Bold Lines)

Game Tree Terminology

Interpreting the Game Tree

The Minimax Procedure for Simple Games

Exhaustive Minimax for Nim

A Forced Win for MAX (Bold Lines)

Implementing Minimax (Pseudocode)

Implementing Minimax (cont'd)

Recall Example Tree

Trace of Minimax on Example Tree

Efficiency of Minimax

Efficiency Comparisons

Comparison of Big-O Rates of Growth

Properties of Minimax

When the Game Tree Cannot Be Exhaustively Searched

Minimax Modified

Evaluation Functions

Chess Board Evaluations

Chess Board Evaluations (cont'd)

Weighted Linear Functions As Evaluation Functions

Problems with Search Cutoff

Problems with Search Cutoff (cont'd)

The Need for Game Tree Pruning

Game Tree Pruning

Game Tree Pruning (cont'd)

Game Tree Pruning (cont'd)

Game Tree Pruning (cont'd)

Game Tree Pruning (cont'd)

- Pruning

- Pruning Example

- Pruning Example (cont'd)

- Pruning Example (cont'd)

- Pruning Example (cont'd)

- Pruning Example (cont'd)

General - Principle

Implementation of - Search

- Implementation (cont'd)

Minimax Modified for - Pruning

- Implementation (cont'd)

Properties of - Search

History of Chess Programs

History of Chess Programs (cont'd)

History of Chess Programs (cont'd)

Ratings of Human and Machine Chess Champions

Other Games