Parallelization in Computer Board Games Ian Princivalli.

Slides:



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

Fuzzy Reasoning in Computer Go Opening Stage Strategy P.Lekhavat and C.J.Hinde.
Learning in Computer Go David Silver. The Problem Large state space  Approximately states  Game tree of about nodes  Branching factor.
Games & Adversarial Search Chapter 5. Games vs. search problems "Unpredictable" opponent  specifying a move for every possible opponent’s reply. Time.
Games & Adversarial Search
Monte Carlo Tree Search: Insights and Applications BCS Real AI Event Simon Lucas Game Intelligence Group University of Essex.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2008.
CS 484 – Artificial Intelligence
Adversarial Search Chapter 5.
Adversarial Search: Game Playing Reading: Chapter next time.
An Introduction to Artificial Intelligence Lecture VI: Adversarial Search (Games) Ramin Halavati In which we examine problems.
1 Adversarial Search Chapter 6 Section 1 – 4 The Master vs Machine: A Video.
Learning Shape in Computer Go David Silver. A brief introduction to Go Black and white take turns to place down stones Once played, a stone cannot move.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 580 Artificial Intelligence Ch.6: Adversarial Search Fall 2008 Marco Valtorta.
EA* A Hybrid Approach Robbie Hanson. What is it?  The A* algorithm, using an EA for the heuristic.  An efficient way of partitioning the search space.
How computers play games with you CS161, Spring ‘03 Nathan Sturtevant.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2006.
1 Game Playing Chapter 6 (supplement) Various deterministic board games Additional references for the slides: Luger’s AI book (2005). Robert Wilensky’s.
Adversarial Search: Game Playing Reading: Chess paper.
Monte Carlo Go Has a Way to Go Haruhiro Yoshimoto (*1) Kazuki Yoshizoe (*1) Tomoyuki Kaneko (*1) Akihiro Kishimoto (*2) Kenjiro Taura (*1) (*1)University.
Othello Sean Farrell June 29, Othello Two-player game played on 8x8 board All pieces have one white side and one black side Initial board setup.
Games & Adversarial Search Chapter 6 Section 1 – 4.
ICS-270a:Notes 5: 1 Notes 5: Game-Playing ICS 270a Winter 2003.
Game Playing State-of-the-Art  Checkers: Chinook ended 40-year-reign of human world champion Marion Tinsley in Used an endgame database defining.
Go An ancient Oriental board game Andrew Simons. Introduction 2 player game of skill. Popular in the Far East, growing in the West. Simple rules, extremely.
Upper Confidence Trees for Game AI Chahine Koleejan.
Computer Go : A Go player Rohit Gurjar CS365 Project Proposal, IIT Kanpur Guided By – Prof. Amitabha Mukerjee.
Development of a Machine-Learning-Based AI For Go By Justin Park.
Position Evaluation in Computer Go Martin Muller Dept. of Computer Science and Information Engineering National Dong Hwa University Reporter : Lo Jung-Yun.
 Summary  How to Play Go  Project Details  Demo  Results  Conclusions.
Adversarial Search Chapter 6 Section 1 – 4. Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
Minimax with Alpha Beta Pruning The minimax algorithm is a way of finding an optimal move in a two player game. Alpha-beta pruning is a way of finding.
Memory and Analogy in Game-Playing Agents Jonathan Rubin & Ian Watson University of Auckland Game AI Group
1 Adversarial Search CS 171/271 (Chapter 6) Some text and images in these slides were drawn from Russel & Norvig’s published material.
GAME PLAYING 1. There were two reasons that games appeared to be a good domain in which to explore machine intelligence: 1.They provide a structured task.
Game Playing Revision Mini-Max search Alpha-Beta pruning General concerns on games.
RADHA-KRISHNA BALLA 19 FEBRUARY, 2009 UCT for Tactical Assault Battles in Real-Time Strategy Games.
Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at.
Learning to Play the Game of GO Lei Li Computer Science Department May 3, 2007.
Solving Tsumego on Computers M2 Hirokazu Ishii Chikayama & Taura Lab.
Artificial Intelligence
A Scalable Machine Learning Approach to Go Pierre Baldi and Lin Wu UC Irvine.
RADHA-KRISHNA BALLA 19 FEBRUARY, 2009 UCT for Tactical Assault Battles in Real-Time Strategy Games.
Applications of Machine Learning to the Game of Go David Stern Applied Games Group Microsoft Research Cambridge (working with Thore Graepel, Ralf Herbrich,
1 Evaluation Function for Computer Go. 2 Game Objective Surrounding most area on the boardSurrounding most area on the board.
AI: AlphaGo European champion : Fan Hui A feat previously thought to be at least a decade away!!!
ConvNets for Image Classification
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.
Understanding AI of 2 Player Games. Motivation Not much experience in AI (first AI project) and no specific interests/passion that I wanted to explore.
A Brief History of Computer Go Dr. Chun Sun (Microsoft Inc, Boston) For HXGNY GO EXPO, June 2013.
Understanding AlphaGo. Go Overview Originated in ancient China 2,500 years ago Two players game Goal - surround more territory than the opponent 19X19.
Game Playing Why do AI researchers study game playing?
Adversarial Search and Game-Playing
AlphaGo and learning methods
Adversarial Search Chapter 5.
AlphaGo and learning methods
Games & Adversarial Search
Games & Adversarial Search
Adversarial Search.
Games & Adversarial Search
Games & Adversarial Search
Games & Adversarial Search
These neural networks take a description of the Go board as an input and process it through 12 different network layers containing millions of neuron-like.
Adversarial Search CS 171/271 (Chapter 6)
Games & Adversarial Search
Adversarial Search Chapter 6 Section 1 – 4.
Presentation transcript:

Parallelization in Computer Board Games Ian Princivalli

Introduction  “Solved” Game  Ultra-weak  Weak  Strong  Current Efforts  Chess  Shogi  Reversi (Othello)  Go

Computer Go  General Overview  19 x 19 board with intersections  Objective: Have the most territory  Black and white stones surround and capture  Programming Challenges  3 N possible board positions where N = size of board (19 x 19 board has 361)  Evaluating function  Endgame

How Parallel Computation fits in  Most popular design philosophies  Tree searching  Application of Monte Carlo methods  Pattern matching and knowledge based systems  Machine learning

Example: MoGo  MCTS (UCT)  UCT (Upper Conditional bounds for Trees)  Balance out exploration and exploitation

Example: MoGo continued  Utilizes both multicore parallelization for shared memory and cluster parallelization with message passing

Example: MoGo final  In a 2008 Taiwan Go tournament MoGo was able to defeat professional Go player Myungwan Kim (8p) 2 out of 4 matches with a 9 stone handicap.  Professionals gave MoGo an approximate ranking of 2d and Kim himself noted that with more time MoGo would have fared better

Limitations of Improvement via Parallelization  Increased computation seems to have diminishing returns  In a 2009 Computer Olympiad, Zen, a program running on a single four-core machine took first place over second place Fuego, running on ten, eight-core machines and third place MoGo, running on twenty, thirty-two core machines  In general MCTS cannot reliably solve certain situations, e.g. cases involving visual elements or other human sophisticated techniques and therefore parallelization of said MCTS does nothing for these cases  Improvement algorithmically seems to proceed improvement via parallelization  e.g. some later iterations of MCTS (UCT) based Computer Go programs have accommodated expert heuristics when these edge cases arise

Questions?