27
CHALLENGE OF THE GOBOTS SPRING 2009 MIDTERM MIKE TRAN CHRIS CUNEO ARTURO SALAZAR ALLEN DUNLEA

CHALLENGE OF THE GOBOTS

  • Upload
    chad

  • View
    40

  • Download
    0

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

Page 1: CHALLENGE OF  THE GOBOTS

CHALLENGE OF THE GOBOTS

SPRING 2009 MIDTERM

MIKE TRANCHRIS CUNEO

ARTURO SALAZARALLEN DUNLEA

Page 2: CHALLENGE OF  THE GOBOTS

Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps

Page 3: CHALLENGE OF  THE GOBOTS

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.

Page 4: CHALLENGE OF  THE GOBOTS

Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps

Page 5: CHALLENGE OF  THE GOBOTS

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

Page 6: CHALLENGE OF  THE GOBOTS

Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps

Page 7: CHALLENGE OF  THE GOBOTS

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

Page 8: CHALLENGE OF  THE GOBOTS

Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps

Page 9: CHALLENGE OF  THE GOBOTS

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

Page 10: CHALLENGE OF  THE GOBOTS

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.

Page 11: CHALLENGE OF  THE GOBOTS

MAXIMIN Tree Each new board will

generate a tree of new boards

Page 12: CHALLENGE OF  THE GOBOTS

MAXIMIN Tree

Strength = 4Strength = 1

Strength = 2

Each one of the new boards will be evaluated according to its strength

Page 13: CHALLENGE OF  THE GOBOTS

MAXIMIN Tree

Strength = 4Strength = 1

Strength = 2

The strongest new board will be chosen

Page 14: CHALLENGE OF  THE GOBOTS

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

Page 15: CHALLENGE OF  THE GOBOTS

Stone CapturingUh oh!

Page 16: CHALLENGE OF  THE GOBOTS

Stone CapturingBAM!

Page 17: CHALLENGE OF  THE GOBOTS

Stone CapturingSUCCESS

Page 18: CHALLENGE OF  THE GOBOTS

Stone CapturingA weaker move

Page 19: CHALLENGE OF  THE GOBOTS

Stone CapturingWhoops!

Page 20: CHALLENGE OF  THE GOBOTS

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.

Page 21: CHALLENGE OF  THE GOBOTS

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?

Page 22: CHALLENGE OF  THE GOBOTS

Loosely Owned Territory

No one has Any Territory and No Immediate danger of being captured.

Page 23: CHALLENGE OF  THE GOBOTS

Loosely Owned Territory

We can assume that we loosely own territory because it is only a few steps away from being captured Territory.

Page 24: CHALLENGE OF  THE GOBOTS

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.

Page 25: CHALLENGE OF  THE GOBOTS

Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps

Page 26: CHALLENGE OF  THE GOBOTS

Gobots Summary PAGE rundown Block Diagram Key Algorithms Demo Next Steps

Page 27: CHALLENGE OF  THE GOBOTS

Next Steps Continue implementing algorithms Strengthen our heuristic Optimize to improve depth of trees