This page is part of the edition ring, it describes:
  • Gke engines: Summary of links
  • Analysis: Game state functions
  • Analysis: Territory maps
  • Analysis: What if?
  • Analysis: Enquire for moves
  • Analysis: Other functions

    The next page on the ring describes SGF file issues.

    Other related subjects are: Using the timer and board options.


Gke engines: Summary of links


    The following describes basic facts of gke any user should know:
  • "What is a GKE Engine?" inside the fundamental Q&A.
  • "What a user needs to understand about engines" at this page.

    Only if you are interested in writing engines:
  • See "Gke guidelines" at this page.
  • Gke for developers starts here.

    How to play against the engine:
  • See "Basic playing: Play, pass, answer each move" here.


Analysis: Game state functions


    Press <F5> (or select "Brief game state") to let the engine evaluate the position. The result is given as a standard SGF4 RE (result) property.

    Example:

    Board evaluation : B+11.5

    Means, Black is leading by 11.5 points.

    The result is directly evaluated by the engine, without any GoKnot intervention, so it is as "intelligent" as the engine is. Ideally, if the engine evaluates a position, then, black does the move the engine expected, after that, white also plays what the engine expected. The evaluation should be the same: 1. before black moves, 2. after black moves and 3. after white moves. Don't expect such intelligent behavior from current engines.

    Evaluation includes everything: territory, prisoners, dead stones and komi. Japanese rules are always assumed.

    Press <Alt>+<F5> (or select "Verbose game state") to see a complete evaluation.

    The first line is the same as in the previous case, the second line is an evaluation range, also returned by the engine. Third line: GoKnot considers that a game is finished, if the evaluation range returned by the engine has identical minimum and maximum values and the engine's best moves list is empty. The remaining lines try to addition the evaluation by counting each point: territory, prisoners, dead stones and komi. The correct evaluation of the territory requires the game to be played to the end. The difference between "Black total" and "White total" should be the same as "Board evaluation". This will only be true when the game is finished and the engine uses the same (Japanese) rules as GoKnot.


Analysis: Territory maps


    Press <Ctrl>+<M> (or select "Territory map") to let the engine evaluate territory. The engine only returns the dead stone list. Territory is computed by GoKnot using the dead stone list and the following predictable and unambiguous rules:

1. A connected area of void board cells is indivisible
2. It is either Black, White or Nothing.
3. Black, if and only if, surrounded by black or dead white stones.
4. White, iff, surrounded by white or dead black stones.
5. It is nothing in any other case.

    This is why, when a game is not finished, few, if any, territory is drawn. But you can still use this function to see if a stone is (considered) dead.

    This way of estimating territory applies to both "territory maps" and "verbose game estimation".
Territory should not be confused with influence. Influence is a theoretical idea involved in position analysis. Human players use the term in a sense that is not the same as when used about Go programs. Territory, here, is used in the same sense as in the ruleset: Basically "board cells counting as points" if it is not delimited, it is not territory. Pretending to make the program smarter would only make is less understandable.

    The option "Territory map style" inside "Board options" lets you choose between two different styles of displaying territory.


Analysis: What if?


    Look at the following position (How to read annotation hints is explained below under "Enquire for moves").



    Note: Before its actual state, the circle indicating the best move, was placed at the cell which is now labeled "a1".

    The user wanted to study what would happen if he played at [A]. The engine takes the place of the opponent, and answers "a1" (the best White move if Black plays at [A]) and "a2" (the 2nd best).

    This is how "What if" is normally used (together with "Annotation hints during play"). The engine tells you what are your "best" options. You want to know what is going to be the (estimated) next move of your opponent. Press <Alt>+<I> (or select "See what if?") and click on any (labeled or unlabeled) cell which is a legal move. The engine will place [A] (for the first) [B], [C], .. labels on the moves you are asking and "a1", "a2", .. "b1", "b2", .. on the (estimated) best answers to your moves.

    As explained later, the engine gives values to the moves. Only the moves which are within 10 points of the best move are shown.

    Example: In a best move list (whose size depends on the engine, but has typically ten moves) the values are: (25, 23, 19, 13 ..) you will see three answers: a1 (the 25 pt. move), a2 (23), a3 (19). The move worth 13 is not shown because 25 - 13 > 10.


Analysis: Enquire for moves


    The easiest way to make an efficient use of the "best move" list computed by the engine is to enable "Annotation hints during play". This function automatically annotates the best moves available to the local player when you are playing against the engine or against another player via the Internet on the board as follows:



    The engine computes values for the moves in its "best moves" list. The list is sorted in descending value order.
  • The best move is labeled with a circle.
  • All other values in the list whose difference with the best move is less than 20 points are labeled with their value minus that of the best move. Note: -.3 means the the move is only 0.3 points worse than the best move, while -3. means the move is 3 points worse than the best move.
  • All other values in the list whose difference with the best move is more than 20 points are labeled with a cross.

    To enquire more information about the moves (the precise value estimated by the engine and the reason to play the move), press <Alt>+<M> (or select "Enquire for moves"). Note: Move reasons are not supported by GnuGo.

    This function expects that you click on board cells containing labels placed by automatic annotation.


Analysis: Other functions


    The other analysis functions:
  • Enquire for chains
  • Enquire for relations

    Are not supported by GnuGo. Since at the moment of releasing this version (2.0) GnuGo is the only engine released, this functions are only provided for testing new engines. They should be considered experimental. See this for becoming a gke developer.



  G o K n o t   H e l p
Version   2.0  
Help index
Download GoKnot at  
www.dybot.com/GoKnot