Dakota Ewigman Jacob Zimmermann

Slides:



Advertisements
Similar presentations
Adversarial Search Chapter 6 Sections 1 – 4. Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
Advertisements

Adversarial Search We have experience in search where we assume that we are the only intelligent being and we have explicit control over the “world”. Lets.
Adversarial Search Reference: “Artificial Intelligence: A Modern Approach, 3 rd ed” (Russell and Norvig)
Games & Adversarial Search Chapter 5. Games vs. search problems "Unpredictable" opponent  specifying a move for every possible opponent’s reply. Time.
Games & Adversarial Search
Adversarial Search Chapter 6 Section 1 – 4. Warm Up Let’s play some games!
CptS 440 / 540 Artificial Intelligence Adversarial Search.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2008.
CS 484 – Artificial Intelligence
University College Cork (Ireland) Department of Civil and Environmental Engineering Course: Engineering Artificial Intelligence Dr. Radu Marinescu Lecture.
Lecture 12 Last time: CSPs, backtracking, forward checking Today: Game Playing.
Adversarial Search CSE 473 University of Washington.
Artificial Intelligence for Games Game playing Patrick Olivier
1 Adversarial Search Chapter 6 Section 1 – 4 The Master vs Machine: A Video.
Games CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
G51IAI Introduction to AI Minmax and Alpha Beta Pruning Garry Kasparov and Deep Blue. © 1997, GM Gabriel Schwartzman's Chess Camera, courtesy IBM.
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.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2006.
Games & Adversarial Search Chapter 6 Section 1 – 4.
Computer Chess. Humble beginnings The Turk Ajeeb Mephisto El Ajedrecista.
Group 1 : Ashutosh Pushkar Ameya Sudhir From. Motivation  Game playing was one of the first tasks undertaken in AI  Study of games brings us closer.
ICS-270a:Notes 5: 1 Notes 5: Game-Playing ICS 270a Winter 2003.
1 Adversary Search Ref: Chapter 5. 2 Games & A.I. Easy to measure success Easy to represent states Small number of operators Comparison against humans.
CSC 412: AI Adversarial Search
Chess Applications:Alpha- Beta Search Greg Parker ‘03 Senior Thesis Advisor: Andrew Appel.
Game Playing Chapter 5. Game playing §Search applied to a problem against an adversary l some actions are not under the control of the problem-solver.
Adversarial Search Chapter 6 Section 1 – 4. Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
Games. Adversaries Consider the process of reasoning when an adversary is trying to defeat our efforts In game playing situations one searches down the.
1 Adversarial Search CS 171/271 (Chapter 6) Some text and images in these slides were drawn from Russel & Norvig’s published material.
Game tree search Chapter 6 (6.1 to 6.3 and 6.6) cover games. 6.6 covers state of the art game players in particular. 6.5 covers games that involve uncertainty.
Parallel Programming in Chess Simulations Tyler Patton.
ARTIFICIAL INTELLIGENCE (CS 461D) Princess Nora University Faculty of Computer & Information Systems.
Game-playing AIs Part 2 CIS 391 Fall CSE Intro to AI 2 Games: Outline of Unit Part II  The Minimax Rule  Alpha-Beta Pruning  Game-playing.
Adversarial Search and Game Playing Russell and Norvig: Chapter 6 Slides adapted from: robotics.stanford.edu/~latombe/cs121/2004/home.htm Prof: Dekang.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 5 Adversarial Search (Thanks Meinolf Sellman!)
Artificial Intelligence in Game Design Board Games and the MinMax Algorithm.
Luca Weibel Honors Track: Competitive Programming & Problem Solving Partisan game theory.
Adversarial Search Chapter 5 Sections 1 – 4. AI & Expert Systems© Dr. Khalid Kaabneh, AAU Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
ADVERSARIAL SEARCH Chapter 6 Section 1 – 4. OUTLINE Optimal decisions α-β pruning Imperfect, real-time decisions.
1 Chapter 6 Game Playing. 2 Chapter 6 Contents l Game Trees l Assumptions l Static evaluation functions l Searching game trees l Minimax l Bounded lookahead.
Game Playing Why do AI researchers study game playing?
Adversarial Search and Game-Playing
Games and adversarial search (Chapter 5)
EA C461 – Artificial Intelligence Adversarial Search
PENGANTAR INTELIJENSIA BUATAN (64A614)
Games and adversarial search (Chapter 5)
Adversarial Search and Game Playing (Where making good decisions requires respecting your opponent) R&N: Chap. 6.
Pengantar Kecerdasan Buatan
Optimizing Minmax Alpha-Beta Pruning Real Time Decisions
Game Playing in AI by: Gaurav Phapale 05 IT 6010
Games & Adversarial Search
Artificial Intelligence
Games & Adversarial Search
Adversarial Search.
Chapter 6 : Game Search 게임 탐색 (Adversarial Search)
Games & Adversarial Search
Games & Adversarial Search
Kevin Mason Michael Suggs
NIM - a two person game n objects are in one pile
The Alpha-Beta Procedure
Introduction to Artificial Intelligence Lecture 9: Two-Player Games I
Pruned Search Strategies
Mini-Max search Alpha-Beta pruning General concerns on games
Games & Adversarial Search
Adversarial Search CMPT 420 / CMPG 720.
Adversarial Search CS 171/271 (Chapter 6)
CS51A David Kauchak Spring 2019
Games & Adversarial Search
Adversarial Search Chapter 6 Section 1 – 4.
Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning
Presentation transcript:

Dakota Ewigman Jacob Zimmermann Computer Chess Dakota Ewigman Jacob Zimmermann

History of Computer Chess 1950: “Programming a computer for Playing Chess” – Claude Shannon. 1951: Alan Turing writes first chess playing program (on paper). 1958: First computer program that can play a complete chess game. 1981: Cray Blitz wins a tournament and achieves master rating. 1989: Deep Thought loses 0-2 against World Champion, Kasparov. 1996: Deep Blue wins one game against Kasparov, but loses match 2 – 4. 1997: Upgraded Deep Blue wins 3.5 – 2.5 against Kasparov. 2006: Deep Fritz beats World Champion Kramnik 4 – 2.

Chess Chess is a game with a finite number of outcomes, and no outside input “Game of Complete Information” About 10120 possible outcomes Endgame Tablebases: All Endgames with 3-5 pieces have been determined already

Computer Chess: The Basics Tree structure, nodes represent game states, and edges represent moves Possible states d moves deep is around 40d Position Evaluation Evaluates Position at Leaf Nodes Pruning removing branches which are likely a bad move. allow for deeper searches of the tree

Position Evaluation Many Factors Pieces Remaining Weighted Piece Location King Safety Pawn Structure Checkmate Mobility

Minimax Assume Both players will play best moves, Maximize the computer’s score. Perform depth first search, selecting highest values for computer’s moves and lowest values for opponents moves

Minimax >=2 2 Computer Opponent <=2 2 <=1 1 Computer 2 7 1 8

Horizon Effect The inability of the computer to see past the “horizon” Horizon is how deep the computer looks into the tree Computer cannot see that plays are dangerous if the danger happens past the horizon ex. being forced into losing a piece or missing out on a guaranteed capture

Progressive Deepening b: branching factor d: depth of tree s: states to evaluate s=O(bd) If all states are evaluated: s=(bd+1-1)/(b-1) = O(bd) Helps re-order for Alpha-Beta pruning efficiency

Alpha-Beta Pruning Builds on the Minimax algorithm Prunes branches that lead to lower quality board states Alpha and Beta are the bounds that determine the lowest and highest value board states to consider

Alpha-Beta Pruning >=2 2 Computer Opponent <=2 2 <=1 Computer 7 1

Alpha-Beta Complexity Before: s=O(bd) After: Best case: s=O(2bd/2) Average(Experimentally): s=O(2bd/2) Worst Case: s=O(bd)

Negamax Similar to Alpha-Beta Takes the maximum of the negatives in place of the minimum Removes the need for a min function

Negamax 2 Computer Opponent >=-2 -2 2 >=-1 1 Computer -2 -7 -1

Aspiration Search Addition to the Alpha-Beta algorithm In this search, Alpha and Beta are preset to a narrow window based on the results of the previous iteration Advantage: it can remove more paths Disadvantage: May have to run multiple times if no path is found within the window

Quiescence Search Only evaluates states that are relatively “quiet” Allows for deeper searches in “noisy” paths to see if the outcome is better.