Presentation is loading. Please wait.

Presentation is loading. Please wait.

Logging and Replay of Go Game Steven Davis Elizabeth Fehrman Seth Groder.

Similar presentations


Presentation on theme: "Logging and Replay of Go Game Steven Davis Elizabeth Fehrman Seth Groder."— Presentation transcript:

1 Logging and Replay of Go Game Steven Davis Elizabeth Fehrman Seth Groder

2 Outline Introduction Hardware –Sensor –Game board Software –Graphical User Interface –Image Processing –Move Validation Feasibility Testing

3 Introduction This project will automatically log a game of Go between two players. Create a log file that will be able to be saved in the standard SGF format that has the ability to record size of the board being used and each move made. Should also allow games to be reloaded / reviewed by an external program such as GNU Go or CGoBan.

4 Hardware - Sensor Logitech QuickCam Pro 5000 –640 x 480 Image capture size –USB 2.0 interface –Using Java Media Framework (JMF) –Needs to translate the still image using Red Green Blue (RGB) and HSV (HSI) into matrix of understandable data

5 Hardware – Game Board 17”x17” and 30”- 40” in height (variable) 9x9 “Go” board LEDs to illuminate rows and columns Status LEDs located on camera mount Camera located above board in “tripod” brace Level Shift / Voltage Divide Circuit to control LEDs

6 Hardware – Game Board

7

8

9 Software – GUI Allows a player to start, open and save a game session Allows the players to request an undo of a previous move Has the mechanism to allow players to indicate that they have passed on their turn

10 Software - GUI

11 Software – Image Processing A Simplistic Approach –Due to the fact that the board and camera mount are static entities, the digital representation of the board can be decomposed into a series of statically defined regions. Each region can consist of a maximum of 5 states: Unobstructed Section of Ring Obstructed Section of Ring Board Average Black White –The pixel average of each region can be determined and checked against the appropriate tolerance value

12 Software – Move Validation

13 Illegal Moves –Repeating Board Positions (Ko) The two most previous board states will be stored The current board state will be checked against the least previous board state. If they are the same, a Ko has occurred and an error will be generated This reduces to a simple matrix equality check –Suicide Moves A suicide move is when a stone is placed in a position where it has no liberties and no stones would be removed by its placement there

14 Software – Move Validation Illegal Moves –Multiple Piece Placement (in a single turn) Once the current board image has been received, it is checked against the previous board for discrepancies. –There should only be one discrepancy between two boards (before piece removal) for a legal number, any other amount is not. –Inappropriate Piece Removal When a move has been determined to be valid, the appropriate representation will exist in memory. As the pieces are removed, each board position will be checked against the proper board representation. Once they match, the board is in the proper state. Until this goal is achieved, the error light will remain illuminated, and no capturing will be possible

15 Feasibility Obtaining an accurate digital representation of the board –No inconsistencies in image of the board (i.e. no false positives like shadows) –Ability to translate image of board to digital representation of game state Interfacing between hardware and software –Communication through digital I/O board –Communication with the camera

16 Testing Overall design is to build in stages unit testing as we progress As pieces start to come together there is a need to integration test Once everything has come together there is a list of several validation tests

17 Testing Try to start a game and check if ready light comes on when board is cleared Place pieces on board legally and check that they are recorded correctly Save the game and make sure the log file is still correct and closed at the moment Start a new game try to place two pieces at once and observe that the board goes into proper error state Fix the error and see if the error indication in the status lights has been cleared Try to move the only piece on the board and check if the board goes to the new correct error state Remove the piece all together from the board and see if it changes to different error Put it back to where it belongs and see if it returns to normal state with no error status indicated Load original and should ask if current game is to be saved Try to commit suicide and make sure it is indicated as an error state Set up a capture in the middle of the board and make sure it is a valid move Attempt to undo a move and make sure indicator lights point to the correct tile(s) to be removed or added Attempt multiple undo requests in a row Try a capture on an edge of the board and make sure it is a valid move Try a capture in the corner of the board and make sure it is a valid move Get to end of game scenario have both players pass, end game screen should come up and ready light should turn off After the game ends try to undo previous move and it should act like no-op

18 Questions?


Download ppt "Logging and Replay of Go Game Steven Davis Elizabeth Fehrman Seth Groder."

Similar presentations


Ads by Google