Upload
chad
View
40
Download
0
Tags:
Embed Size (px)
DESCRIPTION
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. - PowerPoint PPT Presentation
Citation preview
CHALLENGE OF THE GOBOTS
SPRING 2009 MIDTERM
MIKE TRANCHRIS CUNEO
ARTURO SALAZARALLEN DUNLEA
Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps
SummaryOur 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
PAGE Rundown•Moves from the user given as Strings (i.e. “A1”, “C5”)Percepts•placeStone(String color, int x, int y);•pass();Actions•By the end of the game:•Maximize territory owned by the Gobot•Maximize stones captured by the Gobot•Minimize stones captured by the opponentGoals•A 2D array of vertices owned by white, black or neither•We will focus on a 9x9 boardEnvironment
Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps
Block Diagram
Percepts:Opponent places
stone(i.e. “C1”, “E6”)
Generate best move
Actions:genmove
orpass
(i.e. “= A3”, “= B5”)
Update board
Build MINMAX tree
Request a
move
placeStone
Board status
placeStone
Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps
Key AlgorithmsWe 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
Strength = 4Strength = 1
Strength = 2
Each one of the new boards will be evaluated according to its strength
MAXIMIN Tree
Strength = 4Strength = 1
Strength = 2
The strongest new board will be chosen
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 stonesOr the edge of the board
Stone CapturingUh oh!
Stone CapturingBAM!
Stone CapturingSUCCESS
Stone CapturingA weaker move
Stone CapturingWhoops!
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 TerritoryLoosely 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 TerritoryHow 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