next up previous
Next: Failure assignment Up: Failure-based reasoning Previous: Introduction

Methodology

Our system employs no explicit heuristic to aim for any particular result in tic-tac-toe. It plays neither to win, lose, or to draw. Also, no type of search algorithm is used to aid in the selection of a move. The system knows how to play a legal game of tic-tac-toe, and the system knows whether the current game is still in progress, whether the current game has ended in a tie-game or draw, whether the current game has finished with 'X' as the victor, or whether the current game has ended with 'O' as the victor.

When a game is lost, or when a loss is unavoidable, a failure assignment is made. The failure assignment identifies the losing move in the critical position in which the losing move was made. The critical position and the losing move made in the critical position are added to the failure database.

On any given turn in any particular game of tic-tac-toe, whether it is X's turn to play, or whether it is O's turn to play, we generate all possible legal moves for the current player. From this list of all possible legal moves, moves which have led to failure in the past are excluded. Only a simple search of the failure database is required to exclude these moves. In this manner, our system, as best as possible, avoids failure. Failure in the context of tic-tac-toe is, of course, loss of the current game by the current player. Of the remaining available moves for play which have not led to failure in the past, one is chosen randomly and played.



Subsections
next up previous
Next: Failure assignment Up: Failure-based reasoning Previous: Introduction
James Riechel 2007-12-12
Hosted by www.Geocities.ws

1