120 likes | 246 Vues
This article delves into the mechanics of adversarial search in two-player, zero-sum board games, focusing on the underlying utility values, such as those in Chess. We discuss key concepts including evaluation functions, alpha-beta pruning, search efficiency, and heuristics that enhance decision-making within time constraints. The effectiveness of famous chess engines like IBM’s Deep Blue, which famously defeated Kasparov, illustrates the importance of hardware and sophisticated algorithms. We also touch on modern adaptations, like the FRITZ program and its matches against grandmasters.
E N D
Adversarial Search Board games
Games • 2 player zero-sum games • Utility values at end of game – equal and opposite • Games that are easy to represent • Chess – average branching factor 35 • Games need to make decisions even when optimal decisions are infeasible in limited time
Evaluation fn for Tic-Tac-Toe • if position p is win for MAX • E(p) = 100 • If position p is win for MIN • E(p) = -100 • If not win position for either • E(p) = open lines for MAX – open lines for MIN
Alpha - beta • Backed up Lower bound is alpha value • Backed up upper bound is beta value • Alpha at max can never decrease • Beta at MIN can never increase
pruning • If beta at any MIN <= alpha of any of its MAX ancestors final backed up value = its beta value • If alpha at any MAX >= beta at any of its MIN ancestors final backed up value = its alpha value
Updating alpha and beta • Alpha at MAX node = current largest final backed up value of its successors • Beta at MIN node = current smallest final backed up value of its successors
Search efficiency • In time alpha-beta search proceeds to depth d, simple minimax just proceeds to depth d/2 • Search reduces effective branching factor from b to √b
Good heuristics • Examine best moves first • Capture piece • take care of threats • Move forward • Move backward • Use Iterative deepening • Evaluate best moves for one ply • Evaluate best moves for 2 ply… • Abort search if time constraint enforced
More efficiency • Take care of repeated states, resulting from different permutations • Use Transposition table • Read 6.6 for state of art news
State of the art • IBM’s Deep Blue defeated grandmaster Gary Kasparov in 1997, in a 6 game match • 30 processors with 480 custom VLSI chess processors • Average search speed – 126 million nodes per second • Evaluation function had 8000 features • Database of 700,000 grandmaster games were used
Power? • IBM contributed the success to hardware • Developers maintained that search extensions and evaluation functions more critical • Deep blue team declined a chance for a rematch with Kasparov.
Chess on PCs • 2002 FRITZ program on a PC against Vladimir Karamnik. The 8 game match ended in a draw