[
Top
]
[
Contents
]
[
Index
]
[
?
]
Table of Contents
1. Introduction
1.1 About GNU Go and this Manual
1.2 Copyrights
1.3 Authors
1.4 Thanks
1.5 Development
2. Installation
2.1 GNU/Linux and Unix
2.2 Configure Options
2.2.1 Ram Cache
2.2.2 Default Level
2.2.3 Other Options
2.3 Compiling GNU Go on Microsoft platforms
2.3.1 Building with older visual studio
2.3.2 Building with Visual Studio project files
2.3.3 Building with Nmake makefiles
2.3.4 Building with MinGW Makefiles
2.3.5 Building with MSYS makefiles (MinGW)
2.3.6 Building on cygwin
2.3.7 Testing on Windows:
2.4 Macintosh
3. Using GNU Go
3.1 Getting Documentation
3.2 Running GNU Go via CGoban
3.3 Other Clients
3.4 Ascii Interface
3.5 GNU Go mode in Emacs
3.6 The Go Modem Protocol and Go Text Protocol
3.7 Computer Go Tournaments
3.8 Smart Game Format
3.9 Invoking GNU Go: Command line options
3.9.1 Some basic options
3.9.2 Monte Carlo Options
3.9.3 Other general options
3.9.4 Other options affecting strength and speed
3.9.5 Ascii mode options
3.9.6 Development options
3.9.7 Experimental options
4. GNU Go engine overview
4.1 Gathering Information
4.2 Move Generators
4.3 Move Valuation
4.4 Detailed Sequence of Events
4.5 Roadmap
4.5.1 Files in ‘
engine/
’
4.5.2 Files in ‘
patterns/
’
4.6 Coding styles and conventions
4.6.1 Coding Conventions
4.6.2 Tracing
4.6.3 Assertions
4.6.4 FIXME
4.7 Navigating the Source
5. Analyzing GNU Go's moves
5.1 Interpreting Traces
5.2 The Output File
5.3 Checking the reading code
5.4 Checking the Owl Code
5.5 GTP and GDB techniques
5.6 Debugging on a Graphical Board
5.7 Scoring the game
5.8 Colored Display
5.8.1 Dragon Display
5.8.2 Eye Space Display
6. Move generation
6.1 Introduction
6.2 Generation of move reasons
6.3 Detailed Descriptions of various Move Reasons
6.3.1 Attacking and defending moves
6.3.2 Threats to Attack or Defend
6.3.3 Multiple attack or defense moves
6.3.4 Cutting and connecting moves
6.3.5 Semeai winning moves
6.3.6 Making or destroying eyes
6.3.7 Antisuji moves
6.3.8 Territorial moves
6.3.9 Attacking and Defending Dragons
6.3.10 Combination Attacks
6.4 Valuation of suggested moves
6.4.1 Territorial Value
6.4.2 Strategical Value
6.4.3 Shape Factor
6.4.4 Minimum Value
6.4.5 Secondary Value
6.4.6 Threats and Followup Value
6.5 End Game
7. Worms and Dragons
7.1 Worms
7.2 Amalgamation
7.3 Connection
7.4 Half Eyes and False Eyes
7.5 Dragons
7.6 Colored Dragon Display
8. Eyes and Half Eyes
8.1 Local games
8.2 Eye spaces
8.3 The eyespace as local game
8.4 An example
8.5 Graphs
8.6 Eye shape analysis
8.7 Eye Local Game Values
8.8 Topology of Half Eyes and False Eyes
8.9 Eye Topology with Ko
8.10 False Margins
8.11 Functions in ‘
optics.c
’
9. The Pattern Code
9.1 Overview
9.2 Pattern Attributes
9.2.1 Constraint Pattern Attributes
9.2.2 Action Attributes
9.3 Pattern Attributes
9.4 Helper Functions
9.5 Autohelpers and Constraints
9.6 Autohelper Actions
9.7 Autohelper Functions
9.8 Attack and Defense Database
9.9 The Connections Database
9.10 Connections Functions
9.11 Tuning the Pattern databases
9.12 Implementation
9.13 Symmetry and transformations
9.14 Implementation Details
9.15 The “Grid” Optimization
9.16 The Joseki Compiler
9.17 Ladders in Joseki
9.18 Corner Matcher
9.19 Emacs Mode for Editing Patterns
10. The DFA pattern matcher
10.1 Introduction to the DFA
10.2 What is a DFA
10.3 Pattern matching with DFA
10.4 Building the DFA
10.5 Incremental Algorithm
10.6 Some DFA Optimizations
11. Tactical reading
11.1 Reading Basics
11.1.1 Organization of the reading code
11.1.2 Return Codes
11.1.3 Reading cutoff and depth parameters
11.2 Hashing of Positions
11.2.1 Calculation of the hash value
11.2.2 Organization of the hash table
11.2.3 Hash Structures
11.3 Persistent Reading Cache
11.4 Ko Handling
11.5 A Ko Example
11.6 Another Ko Example
11.7 Alternate Komaster Schemes
11.7.1 Essentially the 2.7.232 scheme.
11.7.2 Revised 2.7.232 version
11.8 Superstrings
11.9 Debugging the reading code
11.10 Connection Reading
12. Pattern Based Reading
12.1 The Owl Code
12.2 Combination reading
13. Influence Function
13.1 Conceptual Outline of Influence
13.2 Territory, Moyo and Area
13.3 Where influence gets used in the engine
13.4 Influence and Territory
13.5 Details of the Territory Valuation
13.6 The Core of the Influence Function
13.7 The Influence Algorithm
13.8 Permeability
13.9 Escape
13.10 Break Ins
13.11 Surrounded Dragons
13.12 Patterns used by the Influence module
13.13 Colored display and debugging of influence
13.14 Influence Tuning with
view.pike
14. Monte Carlo Go
14.0.1 Final Remarks
15. The Board Library
15.1 Board Data structures
15.2 The Board Array
15.3 Incremental Board data structures
15.4 Some Board Functions
16. Handling SGF trees in memory
16.1 The SGFTree datatype
17. Application Programmers Interface to GNU Go
17.1 How to use the engine in your own program: getting started
17.2 Basic Data Structures in the Engine
17.3 The board_state struct
17.4 Functions which manipulate a Position
17.5 Game handling
17.5.1 Functions which manipulate a Gameinfo
18. Utility Functions
18.1 General Utilities
18.2 Print Utilities
18.3 Board Utilities
18.4 Utilities from ‘
engine/influence.c
’
19. The Go Text Protocol
19.1 The Go Text Protocol
19.2 Running GNU Go in GTP mode
19.3 GTP applications
19.4 The Metamachine
19.4.1 The Standalone Metamachine
19.4.2 GNU Go as a Metamachine
19.5 Adding new GTP commands
19.6 GTP command reference
20. Regression testing
20.1 Regression testing in GNU Go
20.2 Test suites
20.3 Running the Regression Tests
20.4 Running regress.pike
20.5 Viewing tests with Emacs
20.6 HTML Regression Views
20.6.1 Setting up the HTML regression Views
A. Copying
A.1 GNU GENERAL PUBLIC LICENSE
Preamble
TERMS AND CONDITIONS
How to Apply These Terms to your New Programs
A.2 GNU FREE DOCUMENTATION LICENSE
A.3 The Go Text Protocol License
Concept Index
Functions Index
[
Top
]
[
Contents
]
[
Index
]
[
?
]
This document was generated by
Daniel Bump
on
February, 19 2009
using
texi2html 1.78
.