754 research outputs found

    Solution trees as a basis for game tree search

    Get PDF
    A game tree algorithm is an algorithm computing the minimax value of the root of a game tree. Many algorithms use the notion of establishing proofs that this value lies above or below some boundary value. We show that this amounts to the construction of a solution tree. We discuss the role of solution trees and critical trees in the following algorithms: Principal Variation Search, alpha-beta, and SSS-2. A general procedure for the construction of a solution tree, based on alpha-beta and Null-Window-Search, is given. Furthermore two new examples of solution tree-based algorithms are presented, that surpass alpha-beta, i.e., never visit more nodes than alpha-beta, and often less

    Another view on the SSS* algorithm

    Get PDF
    A new version of the SSS* algorithm for searching game trees is presented. This algorithm is built around two recursive procedures. It finds the minimax value of a game tree by first establishing an upper bound to this value and then successively trying in a top down fashion to tighten this bound until the minimax value has been obtained. This approach has several advantages, most notably that the algorithm is more perspicuous. Correctness and several other properties of SSS* can now more easily be proven. As an example we prove Pearl's characterization of the nodes visited by SSS*. Finally the new algorithm is transformed into a practical version, which allows an efficient use of memory

    Trends in game tree search

    Get PDF
    This paper deals with algorithms searching trees generated by two-person, zero-sum games with perfect information. The standard algorithm in this field is alpha-beta. We will discuss this algorithm as well as extensions, like transposition tables, iterative deepening and NegaScout. Special attention is devoted to domain knowledge pertaining to game trees, more specifically to solution trees. The above mentioned algorithms implement depth first search. The alternative is best first search. The best known algorithm in this area is Stockman's SSS*. We treat a variant equivalent to SSS* called SSS-2. These algorithms are provably better than alpha-beta, but it needs a lot of tweaking to show this in practice. A variant of SSS-2, cast in alpha-beta terms, will be discussed which does realize this potential. This algorithm is however still worse than NegaScout. On the other hand, applying a similar idea as the one behind NegaScout to this last SSS version yields the best (sequential) game tree searcher known up till now: MTD(f)

    A new paradigm for minimax search

    Get PDF
    This paper introduces a new paradigm for minimax game-tree search algorithms. MT is a memory-enhanced version of Pearl's Test procedure. By changing the way MT is called, a number of best-first game-tree search algorithms can be simply and elegantly constructed (including SSS*). Most of the assessments of minimax search algorithms have been based on simulations. However, these simulations generally do not address two of the key ingredients of high performance game-playing programs: iterative deepening and memory usage. This paper presents experimental data from three game-playing programs (checkers, Othello and chess), covering the range from low to high branching factor. The improved move ordering due to iterative deepening and memory usage results in significantly different results from those portrayed in the literature. Whereas some simulations show alpha-beta expanding almost 100% more leaf nodes than other algorithms [Marsland, Reinefeld & Schaeffer, 1987], our results showed variations of less than 20%. One new instance of our framework MTD(f) out-performs our best alpha-beta searcher (aspiration NegaScout) on leaf nodes, total nodes and execution time. To our knowledge, these are the first reported results that compare both depth-first and best-first algorithms given the same amount of memory

    Game tree algorithms and solution trees

    Get PDF
    In this paper, a theory of game tree algorithms is presented, entirely based upon the concept of solution tree. Two types of solution trees are distinguished: max and min trees. Every game tree algorithm tries to prune nodes as many as possible from the game tree. A cut-off criterion in terms of solution trees will be formulated, which can be used to eliminate nodes from the search without affecting the result. Further, we show that any algorithm actually constructs a superposition of a max and a min solution tree. Finally, we will see, how solution trees and the related cutoff criterion are applied in major game tree algorithms, like alpha-beta and MTD

    Searching informed game trees

    Get PDF
    Well-known algorithms for the evaluation of the minimax function in game trees are alpha-beta and SSS*. An improved version of SSS* is SSS-2. All these algorithms don't use any heuristic information on the game tree. In this paper the use of heuristic information is introduced into the alpha-beta and the SSS-2 algorithm. Extended versions of these algorithms are presented. The subset of nodes which is visited during execution of each algorithm is characterised completely

    A theory of game trees, based on solution trees

    Get PDF
    In this paper a complete theory of game tree algorithms is presented, entirely based upon the notion of a solution tree. Two types of solution trees are distinguished: max and min solution trees respectively. We show that most game tree algorithms construct a superposition of a max and a min solution tree. Moreover, we formulate a general cut-off criterion in terms of solution trees. In the second half of this paper four well known algorithms, viz., alphabeta, SSS*, MTD and Scout are studied extensively. We show how solution trees feature in these algorithms and how the cut-off criterion is applied
    • …
    corecore