270 likes | 366 Views
CHALLENGE OF THE GOBOTS. Spring 2009 Midterm Mike Tran Chris Cuneo Arturo Salazar Allen Dunlea. Gobots. Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps. Summary.
E N D
CHALLENGE OF THE GOBOTS Spring 2009 Midterm Mike Tran Chris Cuneo Arturo Salazar Allen Dunlea
Gobots • Summary • PAGE rundown • Block Diagram • Key Algorithms • Demo • Next Steps
Summary Our project is to create an agent that will be able to play the game of Go on a competitive level against the members in our group. The decision making process of the agent will involve using a MAXIMIN tree to evaluate the strengths of each possible move.
Gobots • Summary • PAGE rundown • Block Diagram • Key Algorithms • Demo • Next Steps
Gobots • Summary • PAGE rundown • Block Diagram • Key Algorithms • Demo • Next Steps
Block Diagram placeStone
Gobots • Summary • PAGE rundown • Block Diagram • Key Algorithms • Demo • Next Steps
Key Algorithms We will use a simple heuristic to evaluate the “strength” of a board H(move) = stones captured + white’s actual territory owned + (0.25) white’s loosely owned territory – black’s actual territory owned – (0.25) black’s loosely owned territory – stones lost
MAXIMIN Tree • The agent will use a MAXIMIN tree evaluation algorithm along with alpha-beta pruning to create possible actions. • Decides which stone placement will give the best possible outcome for the GoBot on the current board.
MAXIMIN Tree Each new board will generate a tree of new boards
MAXIMIN Tree Each one of the new boards will be evaluated according to its strength Strength = 4 Strength = 2 Strength = 1
MAXIMIN Tree The strongest new board will be chosen Strength = 2 Strength = 4 Strength = 1
Stone Capturing • H(move) = stones captured + white’s actual territory owned + (0.25) white’s loosely owned territory – black’s actual territory owned – (0.25) black’s loosely owned territory – stones lost • To capture a stone (or stones) surround their immediate sides with • Your stones • Or the edge of the board
Stone Capturing Uh oh!
Stone Capturing BAM!
Stone Capturing SUCCESS
Stone Capturing A weaker move
Stone Capturing Whoops!
Actual Territory • H(move) = stones captured + white’s actual territory owned + (0.25) white’s loosely owned territory – black’s actual territory owned – (0.25) black’s loosely owned territory – stones lost • The actual territory is the number of intersections surrounded by a players stones on the board.
Loosely Owned Territory Loosely owned Territory • H(move) = stones captured + white’s actual territory owned +(0.25) white’s loosely owned territory – black’s actual territory owned – (0.25) black’s loosely owned territory – stones lost Problem • Not all moves capture Opponent Stones • Not all moves gain Territory How do we consider the benefits of such moves?
Loosely Owned Territory No one has Any Territory and No Immediate danger of being captured.
Loosely Owned Territory We can assume that we loosely own territory because it is only a few steps away from being captured Territory.
Loosely Owned Territory How we calculate: • We say we loosely own a territory if we have another stone within 3territories from us that can possible be used to surround. • Meaning if we have a Wall or Similar Stone within 3 Territories in any direction of our stone then we loosely own the area in between them.
Gobots • Summary • PAGE rundown • Block Diagram • Key Algorithms • Demo • Next Steps
Gobots • Summary • PAGE rundown • Block Diagram • Key Algorithms • Demo • Next Steps
Next Steps • Continue implementing algorithms • Strengthen our heuristic • Optimize to improve depth of trees