Game Playing for a Variant of Mancala Board Game (Pallanguzhi)

Size: px
Start display at page:

Download "Game Playing for a Variant of Mancala Board Game (Pallanguzhi)"

Transcription

1 Game Playing for a Variant of Mancala Board Game (Pallanguzhi) Varsha Sankar (SUNet ID: svarsha) 1. INTRODUCTION Game playing is a very interesting area in the field of Artificial Intelligence presently. Pallanguzhi, a south Indian Variant of the Mancala Board game, has not been attempted to be solved by an AI agent. It is a two-player strategy game which is also a non-zero sum game, thus making it interesting for applying AI strategies to it. In this project, I have implemented different algorithmic strategies for the AI agent and analyzed the performance against each other. 2. BACKGROUND Pallanguzhi is a very ancient and traditional game of South India which is similar to the more popular Mancala Board games which is said to have originated in Africa. The board for the game consists of 14 bins, with 7 on each side, belonging to either player. The centre bins on both sides are reserved and act like banks which the players could win the ownership of, during the game. Initially, all the bins (except for the centre ones) are filled with a fixed number of seeds (or stones).the player who has collected the maximum number of seeds at the end of the game is the winner. Images of sample boards can be seen below. Fig 1. Empty Board Fig 2. Board with bins filled with seeds 2.1. GAME RULES When a player s turn comes up; 1. He has to choose one of his bins (excluding the banks), which is non-empty. 2. Remove all the seeds from that bin. 3. Drop these seeds one by one into the consecutive bins in clockwise order, including the banks and the opposite player s bins. 4. When he runs out of seeds, he should pick up the seeds from the next bin and continue (Step 3), till he reaches the end of his turn. 5. End of turn could be marked by one of the following; The last dropped seed ends in a bin just before one of the banks.

2 The last dropped seed ends in a bin, such that the next bin is empty. The player gets the seeds in the bin next to the empty bin and the bin opposite to it. A special case is when the bin next to the empty bin (of the previous case) is a bank. In this case, that player is said to have gained the ownership of the bank. He cannot get the seeds in the bank until the end of the game and both the players can own the same bank(s), in which case the seeds are split between the players at the end of the game SAMPLE GAME MOVE To begin with, the game board looks like Figure below (here, using 6 seeds per bin initially, but it could be any number though it is 6 or 12 usually). Let the lower row correspond to player one and the upper row correspond to player 2. It is player 1 s turn and he has to choose one of his non-empty bins (excluding the bank) and play according to the rules mentioned above. Bin 1 Bin 2 Bin3 Bank 2 Bin 5 Bin 6 Bin 7 Player Player Bin 7 Bin 6 Bin 5 Bank 1 Bin 3 Bin 2 Bin 1 Say Player 1 chooses Bin 1. After removing the 6 seeds from Bin 1 and dropping them in consecutive bins, the board looks like; Bin 1 Bin 2 Bin3 Bank 2 Bin 5 Bin 6 Bin 7 Player Player Bin 7 Bin 6 Bin 5 Bank 1 Bin 3 Bin 2 Bin 1 The last seed was dropped into Bin 7 on his side and it is not one of the end turn states. So he continues by removing seeds from Bin 1 of Player 2. Bin 1 Bin 2 Bin3 Bank 2 Bin 5 Bin 6 Bin 7 Player Player Bin 7 Bin 6 Bin 5 Bank 1 Bin 3 Bin 2 Bin 1

3 The last seed was dropped into Bin 7 of Player 2 and the next bin (Bin 1 of Player 1) is empty. So it marks the end of Player 1 s turn. He gets the seeds from Bin 2 and Bin 6 which adds to his score at the end of the first turn. At the end of the first move, the board looks as shown below; Bin 1 Bin 2 Bin3 Bank 2 Bin 5 Bin 6 Bin 7 Player Player Bin 7 Bin 6 Bin 5 Bin 3 Bin 2 Bin 1 Bank 1 The score of Player 1 at the end of this turn is 14. The valid moves for Player 2 now are, choosing Bin 2 or 3 or 5 or TASK DEFINITION For this project, I first developed the game engine for Pallanguzhi and then defined the baseline approach and oracle. The baseline was a greedy agent which tries to maximize the rewards at that particular turn without thinking about the future. The oracle was an expert human player who is assumed to know opponent s action. The task is to implement different agents, Minimax, Expectimax and Minimax with alpha beta pruning and analyze their performance when pitted against each other and against random agents by using different Evaluation functions which correspond to different heuristics (strategies), in terms of the win rate and win margin, by starting as the first player or second player. 4. RELATED WORK There has been no attempt to solve this particular variant, Pallanguzhi. However there have been many AI agents to solve the general Mancala. Though the boards look the same, the two games are different in that, Pallanguzhi s single turn goes on and on with wrap around till one of end turn states are reached. Also, the concept of the bank in pallanguzhi results in adding up a reward at the end of the game, which may sometimes change the game completely when only immediate rewards are concerned. [1] deals with solving Mancala using heuristics with Minimax and alphabeta pruning. Though the game is similar, most of the heuristics are not meaningful in our scenario. So, I have tried with other appropriate heuristics. 5. INFRASTRUCTURE Building the Game Engine: Since Pallanguzhi is an old and dying game, there existed no game engines, so I developed one from scratch by incorporating the game rules into it. After building the game engine, I tested if it is working correctly by playing it in Human Vs Human mode and then in Human Vs Computer mode, where the computer agent was my baseline greedy agent. After verifying the correctness of the game engine, I went on to implement other agents.

4 6. APPROACH The game was first modeled as a state space search. Then different agents were implemented. The agents were made to play against each other and their performance was analyzed based on the win rates, average number of moves to game over, average winning score and win margin GAME MODEL Pallanguzhi, as it can be seen is an adversarial game. Thus it was modeled as a state-space search model, which consists of a Start State, a set of legal actions that can be taken at a given state, the successor state given an action and possible end states. Each transition from a state to Successor state is associated with a score update. The state model is given as follows; State s (player ID, boardconfig, score, bank) player ID: -1 indicates player1, 1 indicates player2 boardconfig: List of 14 values, representing number of seeds in each bin. score: Dictionary to hold cumulative scores. bank: Dictionary to hold banks of both players. s start Actions(s) Succ(s,a) IsEnd(s) (-1, [N N N 0 N N N N N N 0 N N N], {-1: 0, 1: 0}, {-1: [ ], 1: [ ]}) Index of the non-empty bins that a player can choose. The modified state after player in state s chooses to start with bin marked by a (action) Checks if state s is an end state; player ID = -1 and boardconfig[0:3], boardconfig[4:7] are 0. (or) player ID = 1 and boardconfig[7:10], boardconfig[11:14] are BASELINE AND ORACLE Base Line - Greedy Approach: The agent tries to maximize its score (i.e, the number of seeds collected or owning of a bank) at the end of its one full turn without looking at the actions that the opponent would take in the future. The opponent was a human player. When two different actions lead to the same increase in score, the agent chooses randomly. The win rate of the greedy agent was 20% by starting as the second player. Oracle - Experienced Human player: The experienced human player is assumed to know the opponent s action at every state and thus obtains a win rate of 100% when starting as the first or the second player. The gap between the baseline and the oracle is significant enough to apply other techniques and analyze the problem.

5 6.3. AGENTS The different agents that were implemented include minimax agent, expectimax agent, faster minimax agent using alpha-beta pruning and modified minimax agent which work as depthlimited searches and were tested using different evaluation functions. 1. Minimax agent: The agent tries to maximize its utility approximated by the Evaluation function, assuming that the opponent tries to minimize agent s utility. 2. Expectimax Agent: The agent tries to maximize its expected utility approximated by the Evaluation function, considering that the opponent could uniformly choose any of its valid actions. 3. Alpha-beta Agent: To reduce the search space on the game tree and hence to speed up minimax search, alpha beta pruning was used. 4. Modified Minimax Agent: In this game, as each player try to maximize their own score (utility) in reality, thus implemented modified version of minimax where the opponent tries to maximize its own utility instead of minimizing the agent s utility EVALUATION FUNCTIONS AND HEURISTICS: When I tried performing a complete search on the tree for the different agents, the recursion depth exceeded, thus requiring to restrict to depth-limited search. This needed good evaluation functions to approximate the future rewards. 1. Eval1 This just returns the current scores of the player and this is measure of how good it is to be at that state. Eval1(s) score [player] 2. Eval2 At a given state, this takes into account the information about the banks. Since the points are not going to reduce later, the current number of seeds in the banks owned by the players are also added to the current state score and returned. This is a measure how close the agent is to winning, as if the current score + seeds in bank is almost half the total number of seeds initially, it implies that the agent would win with a very high probability. Eval2 score[player] + numseeds(banks[player]) 3. Eval3 It evaluates a given state in terms of further maximum possible increase in score by considering all possible actions in that state. If an action leads to ownership of a bank, that is chosen and the current score is updated to include increase in score or the seeds in the bank and this value is returned Eval3 score[player] + increase_in_score[player] + numseeds(banks[player]) While these evaluation functions just tell how good a given state is, in actual playing of the game the strategy relies on the actions which are taken from a state. So, evaluating the state-action pair might act as a better approximation to the future rewards. The heuristics are used to evaluate the

6 state-action pair after evaluating the next_state by using one of the above-mentioned evaluation functions. They are; 1. Heuristic1 How far is the chosen bin (action) from the opponent s side of the board? This adds penalty based on the relative position of the chosen bin (action) from opponent s side. This would help in distributing the seeds within one s own bins and thus help to retain the seeds which might at the end add to one s score. 2. Heuristic2 How many seeds are there in the chosen bin? Lesser the number of seeds in the bin being chosen, lesser will be the distribution to the opponent s bin, thus it helps in limiting the number of seeds which could later go to the opponent. Thus, the function adds more penalty if the chosen bin has more seeds. 7. EXPERIMENTS AND RESULTS Since the game involves a lot of counting, human players, playing strategically tend to look only at the current action which maximizes the immediate score. So, a reflex agent would model the human player well. On running the 1000 trials of game between random and reflex agent, following are the statistics obtained. TABLE I First player Random Agent, Second player Reflex Agent Random Agent Reflex Agent Win Rate% Avg. Score while winning Avg. Win margin Avg. no. of rounds to game over 9 TABLE II First player Reflex Agent, Second player Random Agent Random Agent Reflex Agent Win Rate% Avg. Score while winning Avg. Win margin Avg. no. of rounds to game over 8 The next experiment was to make the minimax and expectimax agents play against the random and reflex agents and themselves and look at their win rates, starting as the first player and the second player. Since the minimax agent becomes slow for even a depth of 3, alpha-beta pruning was used to reduce the search space and speed up minimax.

7 Minimax, expectimax and modified minimax agents were made to play for the different evaluation functions and heuristics and the performance was analyzed. TABLE III Second Player: Minimax, depth = 3 Eval1 Eval2 Eval3 Win Rate% Loss Rate% Tie Rate% The above table (Table III) shows the Win rate%, Loss Rate% and Tie Rate% for the Minimax Agent when it plays against a random agent, by starting as the second player. The columns show the different Evaluation functions used with using any of the other heuristics. Similar statistics is shown for Expectimax agents in Table IV. TABLE IV Second Player: Expectimax, depth = 3 Eval1 Eval2 Eval3 Win Rate% Loss Rate% Tie Rate% Similar statistics for modified minimax is shown in Table V. TABLE V Second Player: Modified Minimax, depth = 3 Eval1 Eval2 Eval3 Win Rate% Loss Rate% Tie Rate% The effectiveness of the other Heuristics, which evaluate a given state, action pair were observed by making the Modified Minimax and Expectimax agents use them when playing against a random agent. The Tables VI and VII show the Win Rate%, Loss Rate% and Tie Rate% for Modified Minimax and Expectimax respectively for the different heuristics. TABLE VI Second Player: Modified Minimax, depth = 3 using Eval1 Heuristic 1 Heuristic 2 Win Rate% Loss Rate% Tie Rate%

8 TABLE VII Second Player: Expectimax, depth = 3 using Eval1 Heuristic 1 Heuristic 2 Win Rate% Loss Rate% Tie Rate% All these statistics have been computed by running repeatedly 100 trials. Another observation was that Minimax, expectimax and modified minimax yielded 100% win rates when they started as the first agent and played against random agent. Since modified minimax best models the game, the same was made to play against Random, Reflex, Expectimax and itself. The win rates can be seen from the plot, below; It can be seen that the Modified Minimax starting as the second player gives a high win rate of 81% when made to play against random agent. When the First player is a reflex agent (models a normal human player), Modified Minimax gets a 100% win rate. When the first agent is Expectimax, it still performs well and gets 25.67% win rate over a 0% as in case of the other agents. But when it plays against itself, the first player always wins. ALTERNATIVE APPROACH: Instead of using heuristics which are crafted from domain knowledge, Reinforcement Learning could be used. Machine Learning could be used to learn from several trials of the game, the Value associated with each state, action pair, i.e, the Q-value. Then each time the AI agent plays the game, at each state, all possible actions are evaluated by making the model predict the value of the state, action at hand and make a decision accordingly. I implemented the above approach, where I chose the AI player to be the second player and had randomized policy for the opponent and Epsilon-greedy policy for the AI player. After

9 running several trials of the game, a large number of state, action pairs were generated and the the Q-value was approximated by taking average of the expected utility from different episodes. A neural network was trained on this data. The Inputs to the neural network were features extracted from given (state, action), which consisted of number of seeds in each bin, indicator on whether each of the center bins are on the bank and the action which indicates how far the bin is from the opponent. The output from the neural network is supposed to be Q-values. But it yielded weaker results, where Modified Minimax (which captures the essence of the game) was losing 85% of the games to random agent. A good future work would be to select an appropriate model that would fit the data well and hence act as a good evaluation function. 8. ANALYSIS 8.1. Is starting the game as the first player advantageous? From Table II, it can be seen that even a simple agent like a reflex agent gets a win rate of 90% when playing against a random agent. It was also observed that any other AI agent (Minimax, Expectimax and Modified Minimax) results in almost 100% win rate if started as the first agent. So, I have limited the analysis to only performance of AI agent when it starts as the second agent. If an AI agent is made to play against itself, the one which started first wins. Thus, another future work could be to analyze this behavior and come with a solution for the same Performance of the agents: By fixing the Evaluation function to be Eval1 and the depth to be 3, it can be seen that the win rates for Minimax, Expectimax and modified minimax agents against random agent are 59.67, and 79, respectively. Since minimax takes an action that maximizes its utility by assuming that the opponent is trying to minimize its utility, it doesn t capture the game well. This is because the opponent generally try to maximize their utility instead of minimizing the agent s utility. This idea is presented in the modified Minimax agent, which results in the highest win rate. The Expectimax agent which assumes a random policy of the opponent performs almost equally well when it is against a random agent Performance of the Evaluation Functions: From Tables III and IV, it can be seen that the improvement of the performance of the Minimax and Expectimax agents changes only by small amounts when different Evaluation functions are used. These functions just evaluate a given state (i.e, how good it is to be at a state), without taking into account the actions. It can be seen that for a depth of 3 (above which the speed decreases), both Minimax and Expectimax agents get highest Win rate for Eval3, followed by Eval2 and Eval1. But Modified Minimax gets highest win rate for Eval1 followed by Eval2 and Eval3 as seen in Table V. This may be because, in Eval2 and Eval3, information about current banks is used and all the cons in the bank owned by the agent are added to the score, but it is possible that later the opponent also acquires the same bank, as it maximizes its utility and the

10 value returned does not consider this. But since Eval1 requires the minimal amount of processing when compared to Eval2 and Eval3, the Modified Minimax with Eval1 at depth 3 is a good choice for the Agent Performance of the Other Heuristics: Table VI and VII show the win rates for modified Minimax and Expectimax when Heuristic1 and Heuristic2 are used along with the current score (Eval1). It can be seen that Heuristic1 gives a better performance than Heuristic2 for both the agents from the Win rates. This shows that by choosing a bin away from the opponent s side improves the performance more than by choosing the bin that has lesser number of seeds in it. This is because if the bin has a large number of seeds, it is possible to distribute them back into one s own bins and thus retain a portion of it. When both the heuristics are combined additively they result in weaker performance, as it would be preferable to choose a bin which is close to the opponent, but has only a less number of seeds. When the heuristics on current (state, action) pair are made to run along with other evaluation functions (Eval2 and Eval3) on the next state, it results in lesser win rates. So, the best performance out of these is obtained when Heuristic1 is used with Eval1 in Modified Minimax agent. 9. CONCLUSION By running each of the agents, random, reflex, minimax, expectimax and modified minimax against each other for different evaluation functions and heuristics, it can be concluded that Modified Minimax with a search depth of 3 using Eval1 and Heuristic1 results in the highest win rate of 81% when it plays as the second agent against a random agent. When it starts the game as the first agent, irrespective of the policy followed it results in a 100% win. In case of Expectimax and Minimax, though win rates close to 80% have been reached, they do not get a 100% win rate as the first player when the opponent is modified minimax. Also they get a 0% win rate when they start as the second player and the first player is already one of the AI agents. The statistics for Expectimax and Minimax against all agents has not been tabulated as they are similar and result in poor performance when played with agents other than random and reflex. From this project, I was able to implement different agents and experiment with different heuristics and analyze their performance and conclude which performs well. This work can be continued to find if it would be possible to improve the win rates when the agent starts as the second player against an AI agent or it is just the nature of this game, which is advantageous to the first player, if he is optimal. 10. REFERENCES [1] Chris Gifford, James Bley, Dayo Ajayi, and Zach Thompson, Searching and Game Playing: An Artificial Intelligence Approach to Mancala, [2] Matthew Bardeen, Coevolution of Mancala Players, COGS, University of Sussex. [3] Stanford University, CS221, Multi-agent Pacman Assignment (2016)

ARTIFICIAL INTELLIGENCE (CS 370D)

ARTIFICIAL INTELLIGENCE (CS 370D) Princess Nora University Faculty of Computer & Information Systems ARTIFICIAL INTELLIGENCE (CS 370D) (CHAPTER-5) ADVERSARIAL SEARCH ADVERSARIAL SEARCH Optimal decisions Min algorithm α-β pruning Imperfect,

More information

CS188: Artificial Intelligence, Fall 2011 Written 2: Games and MDP s

CS188: Artificial Intelligence, Fall 2011 Written 2: Games and MDP s CS88: Artificial Intelligence, Fall 20 Written 2: Games and MDP s Due: 0/5 submitted electronically by :59pm (no slip days) Policy: Can be solved in groups (acknowledge collaborators) but must be written

More information

mywbut.com Two agent games : alpha beta pruning

mywbut.com Two agent games : alpha beta pruning Two agent games : alpha beta pruning 1 3.5 Alpha-Beta Pruning ALPHA-BETA pruning is a method that reduces the number of nodes explored in Minimax strategy. It reduces the time required for the search and

More information

2048: An Autonomous Solver

2048: An Autonomous Solver 2048: An Autonomous Solver Final Project in Introduction to Artificial Intelligence ABSTRACT. Our goal in this project was to create an automatic solver for the wellknown game 2048 and to analyze how different

More information

Using Artificial intelligent to solve the game of 2048

Using Artificial intelligent to solve the game of 2048 Using Artificial intelligent to solve the game of 2048 Ho Shing Hin (20343288) WONG, Ngo Yin (20355097) Lam Ka Wing (20280151) Abstract The report presents the solver of the game 2048 base on artificial

More information

Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! Due (in dropbox) Tuesday, September 23, 9:34am

Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! Due (in dropbox) Tuesday, September 23, 9:34am Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! Due (in dropbox) Tuesday, September 23, 9:34am The purpose of this assignment is to program some of the search algorithms

More information

Five-In-Row with Local Evaluation and Beam Search

Five-In-Row with Local Evaluation and Beam Search Five-In-Row with Local Evaluation and Beam Search Jiun-Hung Chen and Adrienne X. Wang jhchen@cs axwang@cs Abstract This report provides a brief overview of the game of five-in-row, also known as Go-Moku,

More information

CS 188: Artificial Intelligence Spring Announcements

CS 188: Artificial Intelligence Spring Announcements CS 188: Artificial Intelligence Spring 2011 Lecture 7: Minimax and Alpha-Beta Search 2/9/2011 Pieter Abbeel UC Berkeley Many slides adapted from Dan Klein 1 Announcements W1 out and due Monday 4:59pm P2

More information

Artificial Intelligence. Minimax and alpha-beta pruning

Artificial Intelligence. Minimax and alpha-beta pruning Artificial Intelligence Minimax and alpha-beta pruning In which we examine the problems that arise when we try to plan ahead to get the best result in a world that includes a hostile agent (other agent

More information

AI Plays Yun Nie (yunn), Wenqi Hou (wenqihou), Yicheng An (yicheng)

AI Plays Yun Nie (yunn), Wenqi Hou (wenqihou), Yicheng An (yicheng) AI Plays 2048 Yun Nie (yunn), Wenqi Hou (wenqihou), Yicheng An (yicheng) Abstract The strategy game 2048 gained great popularity quickly. Although it is easy to play, people cannot win the game easily,

More information

AI Agent for Ants vs. SomeBees: Final Report

AI Agent for Ants vs. SomeBees: Final Report CS 221: ARTIFICIAL INTELLIGENCE: PRINCIPLES AND TECHNIQUES 1 AI Agent for Ants vs. SomeBees: Final Report Wanyi Qian, Yundong Zhang, Xiaotong Duan Abstract This project aims to build a real-time game playing

More information

For slightly more detailed instructions on how to play, visit:

For slightly more detailed instructions on how to play, visit: Introduction to Artificial Intelligence CS 151 Programming Assignment 2 Mancala!! The purpose of this assignment is to program some of the search algorithms and game playing strategies that we have learned

More information

CS221 Project Final Report Gomoku Game Agent

CS221 Project Final Report Gomoku Game Agent CS221 Project Final Report Gomoku Game Agent Qiao Tan qtan@stanford.edu Xiaoti Hu xiaotihu@stanford.edu 1 Introduction Gomoku, also know as five-in-a-row, is a strategy board game which is traditionally

More information

COMP3211 Project. Artificial Intelligence for Tron game. Group 7. Chiu Ka Wa ( ) Chun Wai Wong ( ) Ku Chun Kit ( )

COMP3211 Project. Artificial Intelligence for Tron game. Group 7. Chiu Ka Wa ( ) Chun Wai Wong ( ) Ku Chun Kit ( ) COMP3211 Project Artificial Intelligence for Tron game Group 7 Chiu Ka Wa (20369737) Chun Wai Wong (20265022) Ku Chun Kit (20123470) Abstract Tron is an old and popular game based on a movie of the same

More information

Learning to Play like an Othello Master CS 229 Project Report. Shir Aharon, Amanda Chang, Kent Koyanagi

Learning to Play like an Othello Master CS 229 Project Report. Shir Aharon, Amanda Chang, Kent Koyanagi Learning to Play like an Othello Master CS 229 Project Report December 13, 213 1 Abstract This project aims to train a machine to strategically play the game of Othello using machine learning. Prior to

More information

CMSC 671 Project Report- Google AI Challenge: Planet Wars

CMSC 671 Project Report- Google AI Challenge: Planet Wars 1. Introduction Purpose The purpose of the project is to apply relevant AI techniques learned during the course with a view to develop an intelligent game playing bot for the game of Planet Wars. Planet

More information

CS 188: Artificial Intelligence. Overview

CS 188: Artificial Intelligence. Overview CS 188: Artificial Intelligence Lecture 6 and 7: Search for Games Pieter Abbeel UC Berkeley Many slides adapted from Dan Klein 1 Overview Deterministic zero-sum games Minimax Limited depth and evaluation

More information

CS 229 Final Project: Using Reinforcement Learning to Play Othello

CS 229 Final Project: Using Reinforcement Learning to Play Othello CS 229 Final Project: Using Reinforcement Learning to Play Othello Kevin Fry Frank Zheng Xianming Li ID: kfry ID: fzheng ID: xmli 16 December 2016 Abstract We built an AI that learned to play Othello.

More information

Programming an Othello AI Michael An (man4), Evan Liang (liange)

Programming an Othello AI Michael An (man4), Evan Liang (liange) Programming an Othello AI Michael An (man4), Evan Liang (liange) 1 Introduction Othello is a two player board game played on an 8 8 grid. Players take turns placing stones with their assigned color (black

More information

AI Approaches to Ultimate Tic-Tac-Toe

AI Approaches to Ultimate Tic-Tac-Toe AI Approaches to Ultimate Tic-Tac-Toe Eytan Lifshitz CS Department Hebrew University of Jerusalem, Israel David Tsurel CS Department Hebrew University of Jerusalem, Israel I. INTRODUCTION This report is

More information

Adversarial Search. Rob Platt Northeastern University. Some images and slides are used from: AIMA CS188 UC Berkeley

Adversarial Search. Rob Platt Northeastern University. Some images and slides are used from: AIMA CS188 UC Berkeley Adversarial Search Rob Platt Northeastern University Some images and slides are used from: AIMA CS188 UC Berkeley What is adversarial search? Adversarial search: planning used to play a game such as chess

More information

game tree complete all possible moves

game tree complete all possible moves Game Trees Game Tree A game tree is a tree the nodes of which are positions in a game and edges are moves. The complete game tree for a game is the game tree starting at the initial position and containing

More information

Othello/Reversi using Game Theory techniques Parth Parekh Urjit Singh Bhatia Kushal Sukthankar

Othello/Reversi using Game Theory techniques Parth Parekh Urjit Singh Bhatia Kushal Sukthankar Othello/Reversi using Game Theory techniques Parth Parekh Urjit Singh Bhatia Kushal Sukthankar Othello Rules Two Players (Black and White) 8x8 board Black plays first Every move should Flip over at least

More information

Adversarial Search. CS 486/686: Introduction to Artificial Intelligence

Adversarial Search. CS 486/686: Introduction to Artificial Intelligence Adversarial Search CS 486/686: Introduction to Artificial Intelligence 1 Introduction So far we have only been concerned with a single agent Today, we introduce an adversary! 2 Outline Games Minimax search

More information

CS 380: ARTIFICIAL INTELLIGENCE MONTE CARLO SEARCH. Santiago Ontañón

CS 380: ARTIFICIAL INTELLIGENCE MONTE CARLO SEARCH. Santiago Ontañón CS 380: ARTIFICIAL INTELLIGENCE MONTE CARLO SEARCH Santiago Ontañón so367@drexel.edu Recall: Adversarial Search Idea: When there is only one agent in the world, we can solve problems using DFS, BFS, ID,

More information

HUJI AI Course 2012/2013. Bomberman. Eli Karasik, Arthur Hemed

HUJI AI Course 2012/2013. Bomberman. Eli Karasik, Arthur Hemed HUJI AI Course 2012/2013 Bomberman Eli Karasik, Arthur Hemed Table of Contents Game Description...3 The Original Game...3 Our version of Bomberman...5 Game Settings screen...5 The Game Screen...6 The Progress

More information

Intuition Mini-Max 2

Intuition Mini-Max 2 Games Today Saying Deep Blue doesn t really think about chess is like saying an airplane doesn t really fly because it doesn t flap its wings. Drew McDermott I could feel I could smell a new kind of intelligence

More information

CS 2710 Foundations of AI. Lecture 9. Adversarial search. CS 2710 Foundations of AI. Game search

CS 2710 Foundations of AI. Lecture 9. Adversarial search. CS 2710 Foundations of AI. Game search CS 2710 Foundations of AI Lecture 9 Adversarial search Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square CS 2710 Foundations of AI Game search Game-playing programs developed by AI researchers since

More information

1 Introduction. 1.1 Game play. CSC 261 Lab 4: Adversarial Search Fall Assigned: Tuesday 24 September 2013

1 Introduction. 1.1 Game play. CSC 261 Lab 4: Adversarial Search Fall Assigned: Tuesday 24 September 2013 CSC 261 Lab 4: Adversarial Search Fall 2013 Assigned: Tuesday 24 September 2013 Due: Monday 30 September 2011, 11:59 p.m. Objectives: Understand adversarial search implementations Explore performance implications

More information

2 person perfect information

2 person perfect information Why Study Games? Games offer: Intellectual Engagement Abstraction Representability Performance Measure Not all games are suitable for AI research. We will restrict ourselves to 2 person perfect information

More information

Adversarial Search 1

Adversarial Search 1 Adversarial Search 1 Adversarial Search The ghosts trying to make pacman loose Can not come up with a giant program that plans to the end, because of the ghosts and their actions Goal: Eat lots of dots

More information

Documentation and Discussion

Documentation and Discussion 1 of 9 11/7/2007 1:21 AM ASSIGNMENT 2 SUBJECT CODE: CS 6300 SUBJECT: ARTIFICIAL INTELLIGENCE LEENA KORA EMAIL:leenak@cs.utah.edu Unid: u0527667 TEEKO GAME IMPLEMENTATION Documentation and Discussion 1.

More information

Adversary Search. Ref: Chapter 5

Adversary Search. Ref: Chapter 5 Adversary Search Ref: Chapter 5 1 Games & A.I. Easy to measure success Easy to represent states Small number of operators Comparison against humans is possible. Many games can be modeled very easily, although

More information

CS 4700: Artificial Intelligence

CS 4700: Artificial Intelligence CS 4700: Foundations of Artificial Intelligence Fall 2017 Instructor: Prof. Haym Hirsh Lecture 10 Today Adversarial search (R&N Ch 5) Tuesday, March 7 Knowledge Representation and Reasoning (R&N Ch 7)

More information

More on games (Ch )

More on games (Ch ) More on games (Ch. 5.4-5.6) Alpha-beta pruning Previously on CSci 4511... We talked about how to modify the minimax algorithm to prune only bad searches (i.e. alpha-beta pruning) This rule of checking

More information

CS 1571 Introduction to AI Lecture 12. Adversarial search. CS 1571 Intro to AI. Announcements

CS 1571 Introduction to AI Lecture 12. Adversarial search. CS 1571 Intro to AI. Announcements CS 171 Introduction to AI Lecture 1 Adversarial search Milos Hauskrecht milos@cs.pitt.edu 39 Sennott Square Announcements Homework assignment is out Programming and experiments Simulated annealing + Genetic

More information

Adversarial Search. CS 486/686: Introduction to Artificial Intelligence

Adversarial Search. CS 486/686: Introduction to Artificial Intelligence Adversarial Search CS 486/686: Introduction to Artificial Intelligence 1 AccessAbility Services Volunteer Notetaker Required Interested? Complete an online application using your WATIAM: https://york.accessiblelearning.com/uwaterloo/

More information

Learning from Hints: AI for Playing Threes

Learning from Hints: AI for Playing Threes Learning from Hints: AI for Playing Threes Hao Sheng (haosheng), Chen Guo (cguo2) December 17, 2016 1 Introduction The highly addictive stochastic puzzle game Threes by Sirvo LLC. is Apple Game of the

More information

Monte Carlo Tree Search

Monte Carlo Tree Search Monte Carlo Tree Search 1 By the end, you will know Why we use Monte Carlo Search Trees The pros and cons of MCTS How it is applied to Super Mario Brothers and Alpha Go 2 Outline I. Pre-MCTS Algorithms

More information

CS151 - Assignment 2 Mancala Due: Tuesday March 5 at the beginning of class

CS151 - Assignment 2 Mancala Due: Tuesday March 5 at the beginning of class CS151 - Assignment 2 Mancala Due: Tuesday March 5 at the beginning of class http://www.clubpenguinsaraapril.com/2009/07/mancala-game-in-club-penguin.html The purpose of this assignment is to program some

More information

Module 3. Problem Solving using Search- (Two agent) Version 2 CSE IIT, Kharagpur

Module 3. Problem Solving using Search- (Two agent) Version 2 CSE IIT, Kharagpur Module 3 Problem Solving using Search- (Two agent) 3.1 Instructional Objective The students should understand the formulation of multi-agent search and in detail two-agent search. Students should b familiar

More information

Algorithms for Data Structures: Search for Games. Phillip Smith 27/11/13

Algorithms for Data Structures: Search for Games. Phillip Smith 27/11/13 Algorithms for Data Structures: Search for Games Phillip Smith 27/11/13 Search for Games Following this lecture you should be able to: Understand the search process in games How an AI decides on the best

More information

Announcements. Homework 1. Project 1. Due tonight at 11:59pm. Due Friday 2/8 at 4:00pm. Electronic HW1 Written HW1

Announcements. Homework 1. Project 1. Due tonight at 11:59pm. Due Friday 2/8 at 4:00pm. Electronic HW1 Written HW1 Announcements Homework 1 Due tonight at 11:59pm Project 1 Electronic HW1 Written HW1 Due Friday 2/8 at 4:00pm CS 188: Artificial Intelligence Adversarial Search and Game Trees Instructors: Sergey Levine

More information

CS221 Project: Final Report Raiden AI Agent

CS221 Project: Final Report Raiden AI Agent CS221 Project: Final Report Raiden AI Agent Lu Bian lbian@stanford.edu Yiran Deng yrdeng@stanford.edu Xuandong Lei xuandong@stanford.edu 1 Introduction Raiden is a classic shooting game where the player

More information

Artificial Intelligence Adversarial Search

Artificial Intelligence Adversarial Search Artificial Intelligence Adversarial Search Adversarial Search Adversarial search problems games They occur in multiagent competitive environments There is an opponent we can t control planning again us!

More information

CS 188 Fall Introduction to Artificial Intelligence Midterm 1

CS 188 Fall Introduction to Artificial Intelligence Midterm 1 CS 188 Fall 2018 Introduction to Artificial Intelligence Midterm 1 You have 120 minutes. The time will be projected at the front of the room. You may not leave during the last 10 minutes of the exam. Do

More information

CS188 Spring 2011 Written 2: Minimax, Expectimax, MDPs

CS188 Spring 2011 Written 2: Minimax, Expectimax, MDPs Last name: First name: SID: Class account login: Collaborators: CS188 Spring 2011 Written 2: Minimax, Expectimax, MDPs Due: Monday 2/28 at 5:29pm either in lecture or in 283 Soda Drop Box (no slip days).

More information

CS 188: Artificial Intelligence

CS 188: Artificial Intelligence CS 188: Artificial Intelligence Adversarial Search Instructor: Stuart Russell University of California, Berkeley Game Playing State-of-the-Art Checkers: 1950: First computer player. 1959: Samuel s self-taught

More information

CS188 Spring 2014 Section 3: Games

CS188 Spring 2014 Section 3: Games CS188 Spring 2014 Section 3: Games 1 Nearly Zero Sum Games The standard Minimax algorithm calculates worst-case values in a zero-sum two player game, i.e. a game in which for all terminal states s, the

More information

Game-playing: DeepBlue and AlphaGo

Game-playing: DeepBlue and AlphaGo Game-playing: DeepBlue and AlphaGo Brief history of gameplaying frontiers 1990s: Othello world champions refuse to play computers 1994: Chinook defeats Checkers world champion 1997: DeepBlue defeats world

More information

CS 4700: Foundations of Artificial Intelligence

CS 4700: Foundations of Artificial Intelligence CS 4700: Foundations of Artificial Intelligence selman@cs.cornell.edu Module: Adversarial Search R&N: Chapter 5 1 Outline Adversarial Search Optimal decisions Minimax α-β pruning Case study: Deep Blue

More information

Mutliplayer Snake AI

Mutliplayer Snake AI Mutliplayer Snake AI CS221 Project Final Report Felix CREVIER, Sebastien DUBOIS, Sebastien LEVY 12/16/2016 Abstract This project is focused on the implementation of AI strategies for a tailor-made game

More information

Games CSE 473. Kasparov Vs. Deep Junior August 2, 2003 Match ends in a 3 / 3 tie!

Games CSE 473. Kasparov Vs. Deep Junior August 2, 2003 Match ends in a 3 / 3 tie! Games CSE 473 Kasparov Vs. Deep Junior August 2, 2003 Match ends in a 3 / 3 tie! Games in AI In AI, games usually refers to deteristic, turntaking, two-player, zero-sum games of perfect information Deteristic:

More information

CSC 380 Final Presentation. Connect 4 David Alligood, Scott Swiger, Jo Van Voorhis

CSC 380 Final Presentation. Connect 4 David Alligood, Scott Swiger, Jo Van Voorhis CSC 380 Final Presentation Connect 4 David Alligood, Scott Swiger, Jo Van Voorhis Intro Connect 4 is a zero-sum game, which means one party wins everything or both parties win nothing; there is no mutual

More information

Announcements. CS 188: Artificial Intelligence Spring Game Playing State-of-the-Art. Overview. Game Playing. GamesCrafters

Announcements. CS 188: Artificial Intelligence Spring Game Playing State-of-the-Art. Overview. Game Playing. GamesCrafters CS 188: Artificial Intelligence Spring 2011 Announcements W1 out and due Monday 4:59pm P2 out and due next week Friday 4:59pm Lecture 7: Mini and Alpha-Beta Search 2/9/2011 Pieter Abbeel UC Berkeley Many

More information

More on games (Ch )

More on games (Ch ) More on games (Ch. 5.4-5.6) Announcements Midterm next Tuesday: covers weeks 1-4 (Chapters 1-4) Take the full class period Open book/notes (can use ebook) ^^ No programing/code, internet searches or friends

More information

Artificial Intelligence. 4. Game Playing. Prof. Bojana Dalbelo Bašić Assoc. Prof. Jan Šnajder

Artificial Intelligence. 4. Game Playing. Prof. Bojana Dalbelo Bašić Assoc. Prof. Jan Šnajder Artificial Intelligence 4. Game Playing Prof. Bojana Dalbelo Bašić Assoc. Prof. Jan Šnajder University of Zagreb Faculty of Electrical Engineering and Computing Academic Year 2017/2018 Creative Commons

More information

CS 771 Artificial Intelligence. Adversarial Search

CS 771 Artificial Intelligence. Adversarial Search CS 771 Artificial Intelligence Adversarial Search Typical assumptions Two agents whose actions alternate Utility values for each agent are the opposite of the other This creates the adversarial situation

More information

CMPUT 396 Tic-Tac-Toe Game

CMPUT 396 Tic-Tac-Toe Game CMPUT 396 Tic-Tac-Toe Game Recall minimax: - For a game tree, we find the root minimax from leaf values - With minimax we can always determine the score and can use a bottom-up approach Why use minimax?

More information

CS 188: Artificial Intelligence

CS 188: Artificial Intelligence CS 188: Artificial Intelligence Adversarial Search Prof. Scott Niekum The University of Texas at Austin [These slides are based on those of Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley.

More information

Games (adversarial search problems)

Games (adversarial search problems) Mustafa Jarrar: Lecture Notes on Games, Birzeit University, Palestine Fall Semester, 204 Artificial Intelligence Chapter 6 Games (adversarial search problems) Dr. Mustafa Jarrar Sina Institute, University

More information

CSC 396 : Introduction to Artificial Intelligence

CSC 396 : Introduction to Artificial Intelligence CSC 396 : Introduction to Artificial Intelligence Exam 1 March 11th - 13th, 2008 Name Signature - Honor Code This is a take-home exam. You may use your book and lecture notes from class. You many not use

More information

Project 1. Out of 20 points. Only 30% of final grade 5-6 projects in total. Extra day: 10%

Project 1. Out of 20 points. Only 30% of final grade 5-6 projects in total. Extra day: 10% Project 1 Out of 20 points Only 30% of final grade 5-6 projects in total Extra day: 10% 1. DFS (2) 2. BFS (1) 3. UCS (2) 4. A* (3) 5. Corners (2) 6. Corners Heuristic (3) 7. foodheuristic (5) 8. Suboptimal

More information

Adversarial Search. Robert Platt Northeastern University. Some images and slides are used from: 1. CS188 UC Berkeley 2. RN, AIMA

Adversarial Search. Robert Platt Northeastern University. Some images and slides are used from: 1. CS188 UC Berkeley 2. RN, AIMA Adversarial Search Robert Platt Northeastern University Some images and slides are used from: 1. CS188 UC Berkeley 2. RN, AIMA What is adversarial search? Adversarial search: planning used to play a game

More information

CSE 473: Artificial Intelligence Fall Outline. Types of Games. Deterministic Games. Previously: Single-Agent Trees. Previously: Value of a State

CSE 473: Artificial Intelligence Fall Outline. Types of Games. Deterministic Games. Previously: Single-Agent Trees. Previously: Value of a State CSE 473: Artificial Intelligence Fall 2014 Adversarial Search Dan Weld Outline Adversarial Search Minimax search α-β search Evaluation functions Expectimax Reminder: Project 1 due Today Based on slides

More information

CS510 \ Lecture Ariel Stolerman

CS510 \ Lecture Ariel Stolerman CS510 \ Lecture04 2012-10-15 1 Ariel Stolerman Administration Assignment 2: just a programming assignment. Midterm: posted by next week (5), will cover: o Lectures o Readings A midterm review sheet will

More information

Monte Carlo based battleship agent

Monte Carlo based battleship agent Monte Carlo based battleship agent Written by: Omer Haber, 313302010; Dror Sharf, 315357319 Introduction The game of battleship is a guessing game for two players which has been around for almost a century.

More information

CSE 573: Artificial Intelligence Autumn 2010

CSE 573: Artificial Intelligence Autumn 2010 CSE 573: Artificial Intelligence Autumn 2010 Lecture 4: Adversarial Search 10/12/2009 Luke Zettlemoyer Based on slides from Dan Klein Many slides over the course adapted from either Stuart Russell or Andrew

More information

Game-playing AIs: Games and Adversarial Search I AIMA

Game-playing AIs: Games and Adversarial Search I AIMA Game-playing AIs: Games and Adversarial Search I AIMA 5.1-5.2 Games: Outline of Unit Part I: Games as Search Motivation Game-playing AI successes Game Trees Evaluation Functions Part II: Adversarial Search

More information

More Adversarial Search

More Adversarial Search More Adversarial Search CS151 David Kauchak Fall 2010 http://xkcd.com/761/ Some material borrowed from : Sara Owsley Sood and others Admin Written 2 posted Machine requirements for mancala Most of the

More information

CS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010 Lecture #5

CS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010 Lecture #5 CS 440 / ECE 448 Introduction to Artificial Intelligence Spring 2010 Lecture #5 Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Topics Game playing Game trees

More information

ADVERSARIAL SEARCH. Today. Reading. Goals. AIMA Chapter Read , Skim 5.7

ADVERSARIAL SEARCH. Today. Reading. Goals. AIMA Chapter Read , Skim 5.7 ADVERSARIAL SEARCH Today Reading AIMA Chapter Read 5.1-5.5, Skim 5.7 Goals Introduce adversarial games Minimax as an optimal strategy Alpha-beta pruning 1 Adversarial Games People like games! Games are

More information

Programming Project 1: Pacman (Due )

Programming Project 1: Pacman (Due ) Programming Project 1: Pacman (Due 8.2.18) Registration to the exams 521495A: Artificial Intelligence Adversarial Search (Min-Max) Lectured by Abdenour Hadid Adjunct Professor, CMVS, University of Oulu

More information

CSE 40171: Artificial Intelligence. Adversarial Search: Game Trees, Alpha-Beta Pruning; Imperfect Decisions

CSE 40171: Artificial Intelligence. Adversarial Search: Game Trees, Alpha-Beta Pruning; Imperfect Decisions CSE 40171: Artificial Intelligence Adversarial Search: Game Trees, Alpha-Beta Pruning; Imperfect Decisions 30 4-2 4 max min -1-2 4 9??? Image credit: Dan Klein and Pieter Abbeel, UC Berkeley CS 188 31

More information

COMP219: COMP219: Artificial Intelligence Artificial Intelligence Dr. Annabel Latham Lecture 12: Game Playing Overview Games and Search

COMP219: COMP219: Artificial Intelligence Artificial Intelligence Dr. Annabel Latham Lecture 12: Game Playing Overview Games and Search COMP19: Artificial Intelligence COMP19: Artificial Intelligence Dr. Annabel Latham Room.05 Ashton Building Department of Computer Science University of Liverpool Lecture 1: Game Playing 1 Overview Last

More information

Adversarial Search and Game Playing

Adversarial Search and Game Playing Games Adversarial Search and Game Playing Russell and Norvig, 3 rd edition, Ch. 5 Games: multi-agent environment q What do other agents do and how do they affect our success? q Cooperative vs. competitive

More information

Creating an Agent of Doom: A Visual Reinforcement Learning Approach

Creating an Agent of Doom: A Visual Reinforcement Learning Approach Creating an Agent of Doom: A Visual Reinforcement Learning Approach Michael Lowney Department of Electrical Engineering Stanford University mlowney@stanford.edu Robert Mahieu Department of Electrical Engineering

More information

Adversarial Reasoning: Sampling-Based Search with the UCT algorithm. Joint work with Raghuram Ramanujan and Ashish Sabharwal

Adversarial Reasoning: Sampling-Based Search with the UCT algorithm. Joint work with Raghuram Ramanujan and Ashish Sabharwal Adversarial Reasoning: Sampling-Based Search with the UCT algorithm Joint work with Raghuram Ramanujan and Ashish Sabharwal Upper Confidence bounds for Trees (UCT) n The UCT algorithm (Kocsis and Szepesvari,

More information

Today. Types of Game. Games and Search 1/18/2010. COMP210: Artificial Intelligence. Lecture 10. Game playing

Today. Types of Game. Games and Search 1/18/2010. COMP210: Artificial Intelligence. Lecture 10. Game playing COMP10: Artificial Intelligence Lecture 10. Game playing Trevor Bench-Capon Room 15, Ashton Building Today We will look at how search can be applied to playing games Types of Games Perfect play minimax

More information

CPS 570: Artificial Intelligence Two-player, zero-sum, perfect-information Games

CPS 570: Artificial Intelligence Two-player, zero-sum, perfect-information Games CPS 57: Artificial Intelligence Two-player, zero-sum, perfect-information Games Instructor: Vincent Conitzer Game playing Rich tradition of creating game-playing programs in AI Many similarities to search

More information

CS 188: Artificial Intelligence Spring 2007

CS 188: Artificial Intelligence Spring 2007 CS 188: Artificial Intelligence Spring 2007 Lecture 7: CSP-II and Adversarial Search 2/6/2007 Srini Narayanan ICSI and UC Berkeley Many slides over the course adapted from Dan Klein, Stuart Russell or

More information

Automated Suicide: An Antichess Engine

Automated Suicide: An Antichess Engine Automated Suicide: An Antichess Engine Jim Andress and Prasanna Ramakrishnan 1 Introduction Antichess (also known as Suicide Chess or Loser s Chess) is a popular variant of chess where the objective of

More information

Optimal Yahtzee performance in multi-player games

Optimal Yahtzee performance in multi-player games Optimal Yahtzee performance in multi-player games Andreas Serra aserra@kth.se Kai Widell Niigata kaiwn@kth.se April 12, 2013 Abstract Yahtzee is a game with a moderately large search space, dependent on

More information

Artificial Intelligence 1: game playing

Artificial Intelligence 1: game playing Artificial Intelligence 1: game playing Lecturer: Tom Lenaerts Institut de Recherches Interdisciplinaires et de Développements en Intelligence Artificielle (IRIDIA) Université Libre de Bruxelles Outline

More information

Real-Time Connect 4 Game Using Artificial Intelligence

Real-Time Connect 4 Game Using Artificial Intelligence Journal of Computer Science 5 (4): 283-289, 2009 ISSN 1549-3636 2009 Science Publications Real-Time Connect 4 Game Using Artificial Intelligence 1 Ahmad M. Sarhan, 2 Adnan Shaout and 2 Michele Shock 1

More information

Adversarial Search. Human-aware Robotics. 2018/01/25 Chapter 5 in R&N 3rd Ø Announcement: Slides for this lecture are here:

Adversarial Search. Human-aware Robotics. 2018/01/25 Chapter 5 in R&N 3rd Ø Announcement: Slides for this lecture are here: Adversarial Search 2018/01/25 Chapter 5 in R&N 3rd Ø Announcement: q Slides for this lecture are here: http://www.public.asu.edu/~yzhan442/teaching/cse471/lectures/adversarial.pdf Slides are largely based

More information

CS 5522: Artificial Intelligence II

CS 5522: Artificial Intelligence II CS 5522: Artificial Intelligence II Adversarial Search Instructor: Alan Ritter Ohio State University [These slides were adapted from CS188 Intro to AI at UC Berkeley. All materials available at http://ai.berkeley.edu.]

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Adversarial Search Instructors: David Suter and Qince Li Course Delivered @ Harbin Institute of Technology [Many slides adapted from those created by Dan Klein and Pieter Abbeel

More information

An Intelligent Agent for Connect-6

An Intelligent Agent for Connect-6 An Intelligent Agent for Connect-6 Sagar Vare, Sherrie Wang, Andrea Zanette {svare, sherwang, zanette}@stanford.edu Institute for Computational and Mathematical Engineering Huang Building 475 Via Ortega

More information

CS 331: Artificial Intelligence Adversarial Search II. Outline

CS 331: Artificial Intelligence Adversarial Search II. Outline CS 331: Artificial Intelligence Adversarial Search II 1 Outline 1. Evaluation Functions 2. State-of-the-art game playing programs 3. 2 player zero-sum finite stochastic games of perfect information 2 1

More information

2/5/17 ADVERSARIAL SEARCH. Today. Introduce adversarial games Minimax as an optimal strategy Alpha-beta pruning Real-time decision making

2/5/17 ADVERSARIAL SEARCH. Today. Introduce adversarial games Minimax as an optimal strategy Alpha-beta pruning Real-time decision making ADVERSARIAL SEARCH Today Introduce adversarial games Minimax as an optimal strategy Alpha-beta pruning Real-time decision making 1 Adversarial Games People like games! Games are fun, engaging, and hard-to-solve

More information

Computer Science and Software Engineering University of Wisconsin - Platteville. 4. Game Play. CS 3030 Lecture Notes Yan Shi UW-Platteville

Computer Science and Software Engineering University of Wisconsin - Platteville. 4. Game Play. CS 3030 Lecture Notes Yan Shi UW-Platteville Computer Science and Software Engineering University of Wisconsin - Platteville 4. Game Play CS 3030 Lecture Notes Yan Shi UW-Platteville Read: Textbook Chapter 6 What kind of games? 2-player games Zero-sum

More information

Adversarial Search and Game Playing. Russell and Norvig: Chapter 5

Adversarial Search and Game Playing. Russell and Norvig: Chapter 5 Adversarial Search and Game Playing Russell and Norvig: Chapter 5 Typical case 2-person game Players alternate moves Zero-sum: one player s loss is the other s gain Perfect information: both players have

More information

Experiments on Alternatives to Minimax

Experiments on Alternatives to Minimax Experiments on Alternatives to Minimax Dana Nau University of Maryland Paul Purdom Indiana University April 23, 1993 Chun-Hung Tzeng Ball State University Abstract In the field of Artificial Intelligence,

More information

Homework Assignment #2

Homework Assignment #2 CS 540-2: Introduction to Artificial Intelligence Homework Assignment #2 Assigned: Thursday, February 15 Due: Sunday, February 25 Hand-in Instructions This homework assignment includes two written problems

More information

Generalized Game Trees

Generalized Game Trees Generalized Game Trees Richard E. Korf Computer Science Department University of California, Los Angeles Los Angeles, Ca. 90024 Abstract We consider two generalizations of the standard two-player game

More information

CS188 Spring 2010 Section 3: Game Trees

CS188 Spring 2010 Section 3: Game Trees CS188 Spring 2010 Section 3: Game Trees 1 Warm-Up: Column-Row You have a 3x3 matrix of values like the one below. In a somewhat boring game, player A first selects a row, and then player B selects a column.

More information

CS61B Lecture #22. Today: Backtracking searches, game trees (DSIJ, Section 6.5) Last modified: Mon Oct 17 20:55: CS61B: Lecture #22 1

CS61B Lecture #22. Today: Backtracking searches, game trees (DSIJ, Section 6.5) Last modified: Mon Oct 17 20:55: CS61B: Lecture #22 1 CS61B Lecture #22 Today: Backtracking searches, game trees (DSIJ, Section 6.5) Last modified: Mon Oct 17 20:55:07 2016 CS61B: Lecture #22 1 Searching by Generate and Test We vebeenconsideringtheproblemofsearchingasetofdatastored

More information

AI Learning Agent for the Game of Battleship

AI Learning Agent for the Game of Battleship CS 221 Fall 2016 AI Learning Agent for the Game of Battleship Jordan Ebel (jebel) Kai Yee Wan (kaiw) Abstract This project implements a Battleship-playing agent that uses reinforcement learning to become

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence Adversarial Search Vibhav Gogate The University of Texas at Dallas Some material courtesy of Rina Dechter, Alex Ihler and Stuart Russell, Luke Zettlemoyer, Dan Weld Adversarial

More information