« プログラミング講座(97) 9路盤の集計(途中経過2) | トップページ | プログラミング講座(99) 9路盤の集計結果 »

2012/11/05

プログラミング講座(98) 三コウ

囲碁シミュレータの対局は続いています。現在のところ 5064 局まで行われています。8100 局を目標としているので、対局のほうはこのまま続けます。

対局の中で最も短いものは 78 手で終局し、長いものは 245 手で終局しています。 245 手は棋譜のバッファの関係で打ち切られたものです。棋譜としては両者パスで終了しています。その棋譜を GoGui で表示したものが下図です。
図98 三コウ
【図98 三コウ】

三コウが起きていました。上図の記号で白G4黒F1白A5黒G5白G1黒A4の6手を繰り返していました。日本棋院の囲碁ルールでは同一局面が反復される場合は両者が合意すれば無勝負となりますが、コンピュータの囲碁の場合、合意という手順はなく、この囲碁シミュレータでは双方パスで終局しました。

本来ならばコウを解消することが可能なのですが、囲碁シミュレータのプレイヤー "Randam" のアルゴリズムでは、囲碁のルールどおり打つ他に、自分の(1目の)眼は埋めないように打っています(ただし最後のコウは埋められる)。
三コウの場合、最後から2番目のコウも埋めてよければコウを解消できるのですが、"Randam"は最後から2番目のコウのことを忘れているので上記の手を繰り返していました。

私自身は囲碁の経験が浅いので、実戦で三コウを経験したことはありませんが、シミュレーションを通して体験できたことは、ちょっとした収穫だったと思います。

|

« プログラミング講座(97) 9路盤の集計(途中経過2) | トップページ | プログラミング講座(99) 9路盤の集計結果 »

囲碁」カテゴリの記事

Small Basic」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: プログラミング講座(98) 三コウ:

« プログラミング講座(97) 9路盤の集計(途中経過2) | トップページ | プログラミング講座(99) 9路盤の集計結果 »