囲碁AI対戦
対戦相手がいなくても大丈夫。CPUを相手に1局打てます。盤は5路・7路・9路・13路盤から選べます。 強さは初級・中級・上級の3段階。会員登録もアプリのインストールも必要ありません。
このCPUは、盤面を「読んで」いません
将棋やオセロのCPUは、盤面を点数にして数手先まで読みます。囲碁でそれをやろうとすると、最初の一歩でつまずきます——囲碁の盤面を簡単に点数にする方法が、誰にも分かっていないからです。
駒の損得はありません。石は取られないかぎり盤上に残り続けます。では地の大きさで測ればいいかというと、どの石が最後まで生きているかを判断すること自体が、囲碁の一番難しい部分です。 評価関数を作ろうとすると、囲碁を解くのと同じ問題に突き当たります。
そこでこのCPUは、盤面の評価をあきらめました。かわりにそこから最後までランダムに打ってみることを、 1手につき数百〜1万回以上繰り返し、いちばん勝率の高かった手を選びます。 ランダムな碁はひどい碁ですが、2つの手を比べたときの勝率の差には意味があります。
モンテカルロ木探索と呼ばれる方法で、2006年以降のコンピュータ囲碁を大きく変えた考え方です。 「良い形」を1つも教えなくても、それらしく打てるようになります。
強さの違い
- 初級
- 1手につき400回試します(9路盤の場合)。石を取る手には反応しますが、先のことは考えていません。囲碁が初めての方向け。
- 中級
- 1手につき3,000回試します(9路盤の場合)。生き死にのかかった場所で手が変わります。
- 上級
- 1手につき12,000回試します(9路盤の場合)。9路盤なら、始めたばかりの方には十分手強い相手です。
回数がそのまま強さです。上級でも1手あたり0.5秒ほどで返ってくるように上限を決めています—— それ以上考えさせると、待っているあいだ盤が固まってしまうためです。 盤を大きくすると1回あたりの時間が延びるぶん回数を減らすので、どの大きさでも待ち時間は同じくらいです (上級なら5路盤で約39,000回、13路盤で約5,700回)。13路盤では、そのぶん読みは薄くなります。
終わり方に、ひとつだけ約束があります
両者が続けてパスすると終局し、その時点の盤面をそのまま数えます(中国ルールに近い「地+石」の数え方です)。死んでいる石も、盤の上にあるかぎり1目として数えます。
なので取れる石は取り切ってからパスしてください。「この石は死んでいる」という合意を自動で判定するには、生き死にを解く必要があり、 それはこのCPUにもまだできないことだからです。CPUのほうも、打つ場所が自分の眼しか残っていない状態になるまでパスしません。
友達と対戦することもできます
囲碁のトップページから対局用のURLを発行して、相手に送ってください。