Best node search
Best node search (BNS), originally known as fuzzified game tree search, is a minimax search algorithm developed in 2011 that optimizes decision-making in game trees. BNS differentiates itself from traditional algorithms by identifying which moves (subtrees) are relatively better than others before calculating their exact minimax values, allowing for more efficient pruning of the search space.
First an initial guess at the minimax value must be made—often derived from statistical heuristics. Then BNS conducts searches that determine whether the minimax of the subtree is smaller or bigger than the guess. It changes the guessed value until either the bounds (alpha and beta) are close enough, or only one subtree remains that can potentially contain the optimal value. These two outcomes mirror the established "prove best" and "disprove rest" strategies in heuristic search theory, respectively. The former establishes tight bounds around the best move's value, while the latter eliminates all suboptimal alternatives.
Notably, BNS yields the optimal node (move) and bounds on its minimax value, but not necessarily the exact minimax value itself.[1] This characteristic makes it particularly suitable for applications where identifying the optimal move is more important than knowing its precise value. Empirical evaluations using random trees suggest that BNS achieves superior efficiency compared to other minimax algorithms.[citation needed]
Pseudocode
function nextGuess(α, β, subtreeCount) is
return α + (β − α) × (subtreeCount − 1) / subtreeCount
function bns(node, α, β) is
subtreeCount := number of children of node
do
test := nextGuess(α, β, subtreeCount)
betterCount := 0
for each child of node do
bestVal := −alphabeta(child, −test, −(test − 1))
if bestVal ≥ test then
betterCount := betterCount + 1
bestNode := child
(update number of sub-trees that exceeds separation test value)
(update alpha-beta range)
while not (β − α < 2 or betterCount = 1)
return bestNode
The default nextGuess function above may be replaced with one which uses statistical information for improved performance.
Generalization
Tree searching with Murphy Sampling[2] is an extension of Best Node Search to non-deterministic setting.
External links
References
- ^ Rutko, Dmitrijs (2011). "Fuzzified Algorithm for Game Tree Search with Statistical and Analytical Evaluation" (PDF). Scientific Papers, University of Latvia. 770: 90–111. Retrieved 5 November 2022.
- ^ Kaufmann, Emilie; Koolen, Wouter; Garivier, Aurelien (2018). "Sequential Test for the Lowest Mean: From Thompson to Murphy Sampling". arXiv:1806.00973 [stat.ML].
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.