340 likes | 456 Views
Group 1 : Ashutosh Pushkar Ameya Sudhir From. Check to Checkmate !. Motivation. Game playing was one of the first tasks undertaken in AI Study of games brings us closer to : Machines capable of logical deduction Machines for making strategic decisions
E N D
Group 1 : Ashutosh Pushkar Ameya Sudhir From Check to Checkmate !
Motivation • Game playing was one of the first tasks undertaken in AI • Study of games brings us closer to : • Machines capable of logical deduction • Machines for making strategic decisions • Analyze the limitations of machines to human thought process • Games are an idealization of worlds • World state is fully accessible • Actions & outcomes are well-defined
Outline of the presentation • Evaluation Functions • Algorithms • Deep Blue • Conclusions from Deep Blue • Conclusion • References
Chess • Neither too simple • Nor too difficult for satisfactory solution • Requires “thinking” for a skilled player • Designing a chess playing program • Perfect chess playing : INTRACTABLE • Legal Chess : TRIVIAL • Play tolerably good game : SKILLFULLY
Evaluation Function • Utility function • Whole game tree is explored • computationally expensive task !! • Estimates the expected utility of a state • Evaluation functions • cut off the exploration depth by estimating whether a state will lead to a win or loss
Evaluation Function (cont.) • A good evaluation function should • not take too long • Preserve ordering of the terminal states otherwise it will lead to bad decision making • Consider strategic moves that lead to long term advantages
Evaluation Function (cont.) • Typically includes : • Material Advantage (difference in total material of both sides) f (P) = 200(k – k’) + 9(q – q’) + 5(r – r’) + 3(b – b’) + (p – p’) + g(P) + h(P) + … • Positions of pieces • Rook on open file • double rooks • rook on seventh rank etc. and their relative positions. • Pawn Formation • Mobility Evaluation function is an attempt to write a mathematical formula for intelligence
Games as Search Problems • Initial states • Where game starts • Initial position in chess • Successor function • List of all legal moves from current position • Terminal State • Where the game is concluded • Utility function • Numeric value for all terminal states
Minimax Strategy • Optimal strategy • Assumption : opponent plays his best possible move. • An option is picked which • Minimizes damage done by opponent • Does most damage to the opponent • Idea: • For each node find minimum minimax value • Choose the node with maximum of such values • This will ensure best value against most damage done by opponent
Strategy of Minimax • Opponent tries to reduce utility function’s value • For any move made by opponent in reply of computer’s move, choose minimum reduced value by opponent • Find the move with maximum such value
Analysis • Algorithm is complete for complete tree only • Not best strategy against irrational opponent • According to definition • Time complexity :O(bm) • b = max. no. of possible moves • m = max. depth of tree • In chess even in average case, b = 35 and m = 100 => time exceeds practical limits • # of states grows exponentially as per number of moves played
α-β Pruning • The problem of minimax search • # of state to examine: exponential in number of moves • Returns same moves as minimax does • Prunes away branches that can’t influence final decision. • α: the value of the best (highest) choice so far in search of MAX • β: the value of the best (lowest) choice so far in search of MIN • Order of considering successor
Algorithm for α-β Pruning • Current highest β is found and assigned as α • β is current lowest for α’s from that move • For next possible node, while finding β, if some α is found lower than current highest β: • It will only give lesser value of final β • S0, other α’s are not found for that node • After calculating β for this node, α is replaced by max(α,β for this node) • In this way after all possible set of moves final value of α is found
α-β Pruning (2) If m is better than n for Player, we will never get to n in play and just prune it.
Analysis of α-β Pruning: Improvement over minimax algorithm • Does not affect final results • Worthwhile to examine that successor first which is likely to be best • Time complexity: O(b(m/2)) • Effective branching factor = √b • i.e. 6 rather than 35 • In case of random ordering : • Total number of nodes examined is of the order O(b^(3m/4))
Transposition table • Dynamic programming • Multiple paths to the same position • Savings through memorization • Use a hash table of evaluated positions
Iterative Deepening • Sometime chess is played under a strict time • Depth of search depend on time • Use of Breadth first Search • Advantage : program know which move was best at previous level
Horizon Effect • Problem with fixed depth search • Positive Horizon Effect • Negative horizon effect
Quiescence Search • Search till “quiet” position • Quiet Position • Doesn’t affect the current position so much • Example : no capture of any piece, no check, no pawn promotions/threats
Defeats Gary Kasparov • Won a match in 1997 • Brute force computing power • Massive, parallel architecture • Special purpose hardware for chess • Parameters of the evaluation function • Learnt by studying many master games • Different evaluation function for different positions • Utilized heavily loaded endgame databases
Some intricacies of a chess playing system • Should not play the same sequence of moves again • A player wins a match against the computer • Starts playing the same sequence of moves • Hence, a statistical element is required • Opponent can learn the algorithm used by computer • Hence, again the need for a statistical element • Different game play during different phases • Start Game • Mid Game • End Game
Conclusion • Computer chess as a search problem • Good enough decisions • Simulation of “skill” by “knowledge” • Limitations of computers to humans • Future work : • Better evaluation functions through learning • Need for different AI techniques to play chess
References • Claude E. Shannon: Programming a Computer for Playing Chess, Philosophical Magazine, Ser.7, Vol. 41, No. 314, March 1950. • S.Russel & P. Norvig: Artificial Intelligence: A Modern Approach 2/E, Prentice Hall,ISBN-10: 0137903952 • Wikipedia