6 research outputs found
A new paradigm for minimax search
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
Evaluation of a Simple, Scalable, Parallel Best-First Search Strategy
Large-scale, parallel clusters composed of commodity processors are
increasingly available, enabling the use of vast processing capabilities and
distributed RAM to solve hard search problems. We investigate Hash-Distributed
A* (HDA*), a simple approach to parallel best-first search that asynchronously
distributes and schedules work among processors based on a hash function of the
search state. We use this approach to parallelize the A* algorithm in an
optimal sequential version of the Fast Downward planner, as well as a 24-puzzle
solver. The scaling behavior of HDA* is evaluated experimentally on a shared
memory, multicore machine with 8 cores, a cluster of commodity machines using
up to 64 cores, and large-scale high-performance clusters, using up to 2400
processors. We show that this approach scales well, allowing the effective
utilization of large amounts of distributed memory to optimally solve problems
which require terabytes of RAM. We also compare HDA* to Transposition-table
Driven Scheduling (TDS), a hash-based parallelization of IDA*, and show that,
in planning, HDA* significantly outperforms TDS. A simple hybrid which combines
HDA* and TDS to exploit strengths of both algorithms is proposed and evaluated.Comment: in press, to appear in Artificial Intelligenc