Jump to content

Benson's algorithm (Go)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Zfeinst (talk | contribs) at 15:58, 21 March 2012 (named after). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Template:Distinguish2

In the game Go, Benson's algorithm (named after David Benson) can be used to determine the stones which are safe from capture no matter how many turns in a row the opposing player gets, i.e. unconditionally alive.[1]

Algorithm

Without loss of generality, we describe Benson's algorithm for the Black player.

Let X be the set of all Black chains and R to be the set of all Black-enclosed regions of X. Then Benson's algorithm requires iteratively applying the following two steps until neither is able to remove any more chains or regions:

  1. Remove from X all Black chains with less than two vital Black-enclosed regions in R.
  2. Remove from R all Black-enclosed regions with a surrounding stone in a chain not in X.

The final set X is the set of all unconditionally alive Black chains.[2]

References

  1. ^ Tapani Raiko (May 5, 2005). "Benson's algorithm". Retrieved March 21, 2012.
  2. ^ "Sensei's Library: Benson's Definition of Unconditional Life". Retrieved March 21, 2012.