メインコンテンツまでスキップ

囲碁はなぜ難しいのか?

AlphaGo が登場する前、囲碁は人工知能における「最後の砦」と見なされていました。数十年にわたり、研究者たちはあらゆる方法を試みましたが、コンピュータをプロ棋士のレベルに到達させることはできませんでした。

これは研究者の努力が足りなかったからではなく、囲碁が本質的に極めて困難な計算問題だからです。

本稿では、囲碁はどこが難しいのか、なぜ「AIの聖杯」と呼ばれるのかを深く探ります。


状態空間の爆発:10^170 の意味

状態空間とは?

あらゆるボードゲームにおいて、状態空間(State Space)とは、すべての可能な盤面の総数を指します。この数値が力任せの探索の実現可能性を決定します。

囲碁の場合、この数値は:

囲碁の状態空間 ≈ 10^170

これはどのような概念でしょうか。いくつかの比較をしてみましょう。

宇宙の原子数との比較

物理学者の推定によると、観測可能な宇宙に存在する原子の総数は約:

宇宙の原子数 ≈ 10^80

これは何を意味するのでしょうか:

囲碁の可能な局面数は、宇宙の原子数の 10^90 倍です。

宇宙のすべての原子をスーパーコンピュータとして、各コンピュータが毎秒10億の局面を処理できるとしても、ビッグバンから現在まで(約138億年)かけてもすべての局面を列挙することは不可能です。

数字の直感的理解

数値意味
10^910億、人類の総人口のオーダー
10^121兆、地球上の蟻の数
10^231モルの分子数
10^80宇宙の原子数
10^120チェスの状態空間
10^170囲碁の状態空間

なぜ囲碁の状態空間はこれほど大きいのか?

囲碁の状態空間が巨大な理由はいくつかあります:

1. 盤面のサイズ

囲碁は19×19の盤を使用し、361の交点があります。比較すると:

  • チェス:8×8 = 64マス
  • シャンチー(中国将棋):9×10 = 90の交点
  • 五目並べ:15×15 = 225の交点

2. 各交点に3つの状態

各交点は以下のいずれかになります:

  • 空(石がない)
  • 黒石
  • 白石

大まかに推定すると、可能な組み合わせ数は 3^361 ≈ 10^172 です。囲碁のルール(コウ、呼吸点の制限など)を考慮すると、実際の合法局面は約 10^170 です。

3. 石は移動しない

チェスと異なり、囲碁の石は一度置かれると移動しません(取られない限り)。これは各手が既存の石を移動するのではなく追加することを意味し、可能な経路がより多くなります。

コード例:状態空間の推定

import math

# 盤面サイズ
BOARD_SIZE = 19
TOTAL_POINTS = BOARD_SIZE ** 2 # 361

# 各交点に3つの状態(空、黒、白)
# 大まかな上限
upper_bound = 3 ** TOTAL_POINTS
print(f"大まかな上限: 3^{TOTAL_POINTS} ≈ 10^{math.log10(upper_bound):.0f}")
# 出力: 大まかな上限: 3^361 ≈ 10^172

# ルール制約を考慮した実際の推定
# Tromp-Taylorの精密計算では約 2.08 × 10^170
actual_estimate = 2.08e170
print(f"実際の推定: {actual_estimate:.2e}")

# 宇宙の原子数との比較
universe_atoms = 1e80
ratio = actual_estimate / universe_atoms
print(f"囲碁の局面数 / 宇宙の原子数 = 10^{math.log10(ratio):.0f}")
# 出力: 囲碁の局面数 / 宇宙の原子数 = 10^90

分岐係数の呪い:平均250通りの選択肢

分岐係数とは?

分岐係数(Branching Factor)とは、ゲームの任意の手において、平均して何通りの合法手があるかを指します。この数値が探索木の幅を決定します。

ゲーム平均分岐係数
三目並べ~4
チェス~35
シャンチー~38
オセロ~10
囲碁~250

探索木の爆発的成長

木探索アルゴリズムで N 手先を読むとします。考慮すべき局面数は約:

ノード数bN\text{ノード数} \approx b^N

ここで b は分岐係数です。

チェスと囲碁を比較してみましょう:

N 手先チェス (b=35)囲碁 (b=250)
1 手352507倍
2 手1,22562,50051倍
4 手150 万39 億2,600倍
6 手18 億2.4×10^141.3 億倍
10 手2.8×10^159.5×10^233.4 億倍

10手先を読む場合、囲碁で考慮すべき局面はチェスの 3億倍 です。

なぜディープ・ブルーの手法は囲碁で失敗したのか

1997年にカスパロフを破ったディープ・ブルーが使用したコア技術は:

  1. アルファ・ベータ枝刈り:探索ノードを削減
  2. ハードウェア高速化:毎秒2億局面を評価
  3. 人工評価関数:専門家が設計した局面評価

しかし同じ手法を使っても:

  • チェス:12-14手先を読むには約 10^18 ノードの評価が必要
  • 囲碁:12手先を読むには約 10^29 ノードの評価が必要

差は10億の10億倍。どんなハードウェアでもこの差を埋めることはできません。

序盤の選択肢は天文学的数字

囲碁の序盤では、分岐係数はさらに高くなります:

  • 第1手:361通りの選択肢
  • 第2手:360通りの選択肢
  • 第3手:359通りの選択肢
  • ...

最初の10手だけを見ても:

361×360×359×...×3525.5×1025361 \times 360 \times 359 \times ... \times 352 \approx 5.5 \times 10^{25}

これが「定石」がなぜ重要なのかという理由です—人間の棋士は多くの序盤変化を記憶する必要があります。なぜなら、その場で計算することができないからです。


評価の困難さ:単純な駒の価値がない

チェスの駒得

チェスでは、局面の評価は比較的直感的です:

価値(伝統的)
ポーン1
ナイト3
ビショップ3
ルーク5
クイーン9

実際の評価はより複雑(位置、構造など)ですが、「駒得」は良い出発点です。相手のクイーンを取れば、ほぼ確実に良いことです。

囲碁:すべての石は平等

囲碁では、すべての石の内在的価値は完全に同じです—どれも単なる石です。

石の価値は完全に以下に依存します:

  • 盤上の位置
  • 他の石との関係
  • 全体局面への影響

これが評価を極めて困難にします。

厚みと勢力の抽象性

囲碁には多くの抽象的な概念があります:

厚み(Thickness)

「厚み」とは、一団の石が堅実で、安定していて、影響力があることを指します。しかし「厚み」を定量化するのは難しいです:

  • 厚い形は何目の価値があるのか?
  • いつ厚みを利用して攻撃すべきか?
  • 厚みはいつ「愚形」(効率の悪い形)になるのか?

トップ棋士は「この石は厚いから、だいたい15目くらいの価値かな」と言うかもしれません。しかしこれは数十年の経験に基づく直感であり、精密な計算ではありません。

勢力(Influence)

囲碁の勢力とは、石が周囲の空間に対して持つ潜在的な支配力を指します。この支配力は「バーチャル」です—実地に変換されるかもしれませんし、攻防で役立つかもしれませんし、最終的に何にもならないかもしれません。

「潜在的」な価値をどう評価するのか?これはコンピュータにとって極めて困難です。

味(Aji)

「味」は囲碁で最も抽象的な概念の一つです。盤上のある位置の潜在的な可能性を指します。

「死んだ石」でも「利用価値」があるかもしれません—それ自体を救うことはできませんが、将来の戦いで干渉を生み出すことができます。この「潜在的可能性」は数値でほとんど表現できません。

なぜ手作りの評価関数は失敗したのか

ディープ・ブルー以前のコンピュータチェスでは、人間の専門家が設計した評価関数を使用していました:

評価値 = 駒得スコア + 位置スコア + キングの安全性 + ポーン構造 + ...

これらの項目は定量化し、重みを調整することができ、効果は悪くありませんでした。

しかし囲碁は?

研究者たちは様々な特徴を試しました:

  • 支配している交点の数
  • 石の「自由度」(呼吸点の数)
  • 連結の強さ
  • 眼形の完全性
  • ...

しかしこれらの特徴の組み合わせは、アマチュア高段者のレベルに到達することさえできませんでした。

核心的な問題:囲碁の局面評価は、高度に非線形で、全局的な問題です。

一つの石の価値は、局所的な特徴の単純な合計ではなく、盤面全体の状態に依存します。


長期計画の必要性:一局150手

囲碁の3つの段階

標準的な囲碁の対局は通常、3つの段階を経ます:

段階手数(約)特性
布石1-50地の確保、枠組みの構築、全局の方向性を定める
中盤50-200戦い、攻防、局所と全局のバランス
ヨセ200-300収束、計算、精度

平均して一局は約 250-300手 で、最初の150手が勝敗の大局を決めます。

布石:30手先の計画

布石段階の各手は、数十手、さらには百手以上先の準備をしています。

例えば、「三連星」布石:

. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . ● . . . . . ● . . . . . ● . . .
. . . . . . . . . . . . . . . . . . .
...

これら3つの黒石は「勢力型」布石を構成し、その意図は:

  1. 急いで地を囲わない
  2. 白が入ってきたら攻撃する
  3. 攻撃を通じて実地または勢力を得る
  4. 最終的に終盤で優勢を実現する

この「計画」は50-100手先の局面を見通す必要があります。どんな探索アルゴリズムもそこまで先を読むことはできません。

中盤:局所と全局のバランス

中盤の戦いは囲碁で最も複雑な部分です。棋士は各手で以下を考慮する必要があります:

  1. 局所計算:この戦いは誰が勝つか?
  2. 全局判断:ここで戦う価値があるか?
  3. 手順選択:どこから打つのが最も効率的か?
  4. 放棄の判断:いつ石を捨てて転換すべきか?

典型的な中盤の判断:

「ここで切断すれば、相手は反撃し、私は一群の石を活きなければならず、それで相手が先手で大場を占める...最終的に約5目損する。しかし先に補強してから切断すれば、先手を失うが...」

この多層的、多次元的な思考は、局所と全局、短期と長期を同時に処理する必要があります。

ヨセ:精密計算と逆転

ヨセ段階は一見単純に見えます—ただの収束です。しかし実際には:

  • 各手の「目数価値」を精密に計算する必要がある
  • 先手後手の差が勝敗を決めることもある
  • 「コウ争い」は局面を完全に変えることができる

プロ棋士のヨセ段階での計算精度は0.5目に達し、一局の勝敗は1目差で決まることもあります。

なぜ先を読めないことが致命的なのか

簡単な計算をしてみましょう:

  • 一局は平均250手
  • 結果を完璧に予測するには、理論上すべての250手を読む必要がある
  • 分岐係数が100に下がっても(ヨセ段階)、探索空間は 100^250 ≈ 10^500

これはどんなコンピュータの能力もはるかに超えています。

これが囲碁AIが局面を「評価」することを学ばなければならず、「計算」だけに頼れない理由です。


直感の重要性:「この手は正しいと感じる」

人間の棋士の思考方法

トップクラスの囲碁棋士は、思考過程を説明する際によくこのような言葉を使います:

"この手は正しいと感じる。"

"この形は心地よい。"

"彼のあの石は味が悪い。"

"ここには言葉にできない危険な感じがある。"

これは詩的な表現ではなく、実際の認知プロセスです。人間の棋士はパターン認識直感的判断を使って囲碁の複雑さに対処しています。

パターン認識:一秒で要点を見る

実験によると、プロ棋士は盤面を一瞥する(1秒未満)だけで:

  1. 重要な領域を識別
  2. 可能な「好手」を発見
  3. 局面の大まかな形勢を感知

この能力は数万局の経験の蓄積から生まれ、「棋感」を形成します。

AlphaGo以前のコンピュータ囲碁における最大の困難は、まさにこの直感を複製できないことでした。

直感の数学的記述

機械学習の観点から、人間の囲碁の直感は以下のように理解できます:

P(好手盤面局面)P(\text{好手} | \text{盤面局面})

訓練された脳は、盤面の局面に基づいて、各位置が「好手」である確率分布を即座に出力できます。

これがまさに Policy Network が学習するもの—そしてこれには深層ニューラルネットワークが必要です。


なぜ「AIの聖杯」と呼ばれるのか

ボードゲームのマイルストーン

人工知能の歴史において、ボードゲームは常に重要なマイルストーンでした:

出来事意義
1951最初のチェッカープログラム最初のゲームAI
1997ディープ・ブルーがカスパロフに勝利力任せ探索の勝利
2007チェッカーが完全解析される完全情報ゲームの限界
2016AlphaGoがイ・セドルに勝利深層学習の勝利

なぜ囲碁は特別なのか

囲碁が「AIの聖杯」と呼ばれるのは、すべての困難な特性を兼ね備えているからです:

特性囲碁チェス
状態空間10^17010^120
分岐係数~250~35
平均手数~250~40
評価難易度極めて高い中程度
直感依存度非常に高い高い

AIが囲碁を解決できれば、それは:

  1. 極めて大きな探索空間を処理できる
  2. 抽象的な評価を学習できる
  3. 長期計画ができる
  4. 「直感」を形成できる

これらの能力は「ゲームをプレイする」ことをはるかに超え、汎用知能の核心的特徴です。

学術界の予測

2016年以前、学術界の「AIはいつ人間の囲碁チャンピオンに勝てるか」という予測は一般的に:

"少なくともあと 10-20年。"

— 多くのAI研究者(2015年)

この予測は当時の技術進歩の速度に基づいていました。囲碁プログラムは毎年約1-2段進歩し、人間のプロ九段との間には18段の実力差がありました。このペースでは、確かに10-20年必要でした。

深層学習が飛躍的なブレークスルーをもたらすとは誰も予想していませんでした。


アニメーション対応

本稿で扱う核心概念とアニメーション番号:

番号概念物理/数学的対応
A3分岐係数の比較グラフ理論、木構造
B2状態空間の爆発組み合わせ数学、指数成長
B5評価関数のジレンマ非線形写像
B8組み合わせ爆発階乗成長、探索木

重要ポイントのまとめ

囲碁が「AIの聖杯」と呼ばれる理由は、3つの大きな難題を組み合わせているからです:

1. 空間の呪い

  • 10^170 通りの可能な局面、宇宙の原子数をはるかに超える
  • 分岐係数 ~250、探索木の爆発的成長
  • 力任せ探索は物理的に不可能

2. 評価の困難さ

  • すべての石の価値は等しく、駒得がない
  • 「厚み」「勢力」「味」などの抽象概念は定量化が困難
  • 局面評価は高度に非線形で、全局的な問題

3. 時間の挑戦

  • 一局 ~250手、長期計画が必要
  • 布石の判断は50-100手先の局面に影響
  • 局所の戦いと全局のバランスを同時に考慮する必要がある

まさにこれらの難題の組み合わせが、従来のAI手法(力任せ探索 + 手作り評価)を囲碁で完全に失敗させました。

そしてAlphaGoの突破は、深層ニューラルネットワークで評価問題を解決し、モンテカルロ木探索で計画問題を解決し、強化学習で人間を超える問題を解決したからです。


関連記事


参考文献

  1. Tromp, J. (2016). "Number of legal Go positions." — 囲碁の状態空間の精密計算
  2. Allis, L.V. (1994). "Searching for Solutions in Games and Artificial Intelligence." PhD thesis, University of Limburg. — ゲーム複雑性の理論分析
  3. Muller, M. (2002). "Computer Go." Artificial Intelligence, 134(1-2), 145-179. — コンピュータ囲碁の初期研究概説
  4. Silver, D., et al. (2016). "Mastering the game of Go with deep neural networks and tree search." Nature, 529, 484-489. — AlphaGo原論文