UCT のシミュレーションに対する重みづけに関する研究
里子口陽来,松井利樹,橋本隼ー
北陸先端科学技術大学院大学
概要現在,コンピュータ囲碁では UCT を用いた探索法が主流となっている.その流れの中
で強いプログラムを作るために様々な研究が行われている.大きく二つに分けると UCT
のような木探索アルゴ、リズムの改良と,パターンの使用のようなプレイアウトの改良に
分けられる.本研究では UCT 部分の改良としてプレイアウトの重みを変更することで
UCT の性能向上を図った.その結果勝率を目的の値に近づけることができたが,プログ
ラムの強さを向上させることはできなかった.
A Study about Weighted Simulations on UCT
Haruki Noguchi
,
Toshiki Matsui
,
Junichi Hashimoto
J
apan Advanced I
n
s
t
i
t
u
t
e
of Science Technology
Abstract
Today
,
M
o
n
t
e
-
C
a
r
l
o
method i
s
m
a
i
n
l
y
u
s
e
d
i
n
t
h
e
domain o
f
computer g
o
.
There a
r
e
many s
t
u
d
i
e
s
t
h
a
t
make t
h
e
program s
t
r
o
n
g
e
r
.
There a
r
e
two t
y
p
e
s
o
f
s
t
u
d
y
:
one i
s
f
o
r
improvement o
f
s
e
a
r
c
h
e
f
f
i
c
i
e
n
c
y
o
f
t
r
e
e
s
e
a
r
c
h
algorithms
,
t
h
e
o
t
h
e
r
i
s
f
o
r
improyement
o
f
a
c
c
u
r
a
c
y
o
f
t
h
e
M
o
n
t
e
-
C
a
r
l
o
p
l
a
y
o
u
t
.
I
n
t
h
i
s
paper
,
we change t
h
e
i
m
p
o
r
t
a
n
c
e
o
f
e
a
c
h
p
l
a
y
o
u
t
by u
s
e
o
f
w
e
i
g
h
t
p
a
r
a
m
e
t
e
r
.
The e
x
p
e
r
i
m
e
n
t
a
l
r
e
s
u
l
t
shows t
h
a
t
winning r
a
t
i
o
comes c
l
o
s
e
t
o
p
u
r
p
o
s
e
v
a
l
u
e
by u
s
i
n
g
w
e
i
g
h
t
p
a
r
a
m
e
t
e
r
.
But we c
a
n
n
o
t
make t
h
e
program s
t
r
o
n
g
e
r
.
1.はじめに 従来の方法で囲碁プログラムを作る際,大き な障害となるのが適切な評価関数の設計であ る.しかし 1993 年に評価関数を設計せずにプ ログラム作成を可能とする新しい方法,モンテ カルロ法を囲碁に適用する方法が提案された [11.モンテカルロ法では評価関数は使用せず, ランダムなゲームを多数行いそれらの結果を 局面の評価とする. 単純なモンテカルロ法だけでは強いプログ ラムを作ることはできなかった.しかし現在は 9 路盤でプロと対等に渡り合うだけの実力を 有している.この飛躍的な性能向上の理由のー つにモンテカルロ法と探索アルゴ.リズムを組 み合わせたことが挙げられる.これにより CrazyStone は 2006 年のコンビュータオリン ピアドで優勝という成果を上げた [2]. 現在で は木探索がアルゴ‘リズムとして数学的な裏付 が明確な UCT が主に使われている [3]. UCT ではある局面から末端局面まで木を下 り,必要があれば局面を新たに展開し,そこか らランダムなゲームを行い,その結果を通過し た全ての局面に繰り上げる.この作業を繰り返 すことで探索木を成長させていく.この,ある 局面から末端局面まで下りその局面まで値を 繰り上げる処理を本論文ではシミュレーシヨ-88-を f止法手である可能性が高い手-88-を選びながら 末端まで降りてからランダムなゲームを行っ ている.結果として後に行われたシミュレーシ ヨンほど信頼性が向上する. 本研究では後に行われるシミュレーション の結果を重要視するために,シミュレーション に対する重みを変化させる.これによりプログ ラムが強くなるか検証する. 2. シミュレーションに対する重みづけ 通常の UCT では s の勝率 E は (2)式で表さ れる.ここで C は子供の数, μc は子供の勝率
の期待値を表す.また !(c) は c を通過したプレ
イアウトの集合とする. UCT では式(1)に示寸・術開を用いて若手を選 択し木を降りていく • p, はシミュレーション で勝利すれば 1 .負ければ 0 となる.右辺の第 一項は評価する局而を通ったシミュレーショ ン結果の平均値を表す項であり,第二項は『探 検と収積』のバランスをとるための項である. 平均値を用いるということは全てのシミュレ ーションを同等に扱うことを意味する.問 =5レ,い +C阿 ω
ンと呼ぶ. 円 A 可 lit--'i 『」 μ TJU/
f m v )すム的
μ 「 iz--' ・・ 11 」 cす台
tJυ7
r M v nずし
]J
同E
UCB値を求めたい局面
シミュレーション結果
Sの親局面を通過した
シミュレーションの回数s を通過した
シミュレーションの回数s
P
;
n
(2) を用いると通常 Es く m蹴いJ となる.ゲ
ーム木が Min-Max 的に生長することを考えると E, =m凱(μJ が望ましいと考えられる.
そこで Es に重み W; を導入し. (3)式のように 変形した. (3)式を (2) と同様の表現に変換する UCT では通常後に行われるシミュレーショ ンほど信頼できるため,全てのシミュレーショ ンを同等に扱うのは問題がある.例えば図 1 で 一番上の局面を通るシミュレーションを二つ 示したが,右のシミュレーションの結果の方を 左の結果より重要視して扱うべきである. n sw= 玄 [W;] である
ι= t[w;p;l/t[w;1ω
と(4)式が得られる. 』附躍 、‘、E.= 会[μcZ!w,p,州 ω
(4)式で w; =1 とすれば(2)式と等しくなる.適当な w; を選択することで Es を m似(μJ'こ近
づけることができると考えられる. UCB で勝率が最大の子供を選択する問題を 解くときに. (4)式を用いることで E がどのよ -89-図1.異なる時期に行ったシミュレーション 図 1 は木の成長によってシミュレーション がどのように変化するかを示したものである. 左の木では一番上の局面からランダムなゲー ムを行っているように初期のシミュレーショ ンではある局面で選択される手はほとんどラ ンダムに選択される.対して右の木では探索木 。うに変化するかを支・験した. 川として (5)式を H!\,、た.
w
,
=
i
l
o
g
{
i
+
1)
…
(5)l
e
x
p
{
i
/
I
0
0
)
実験条件として:C=15
,
[0.37278 0.3958 0.41965 0.39566 0.42928 実験結果を表 1 (B),こ示す. log を m \,、たプ ログラムは w,=
1 のプログラムと同じ強さを 示しているを m し、たプログラムは W,=
1 の プログラムより弱くなっている. 表 2. 自己対戦の結果l
o
g
{
i
+
1
)
499 勝 501 敗
i477 勝 523 敗 P. = ~ 0.4383 0.402375 0.43515 0.44111 0.45242' 図I(B) に図 l 仏)のシミュレーション回数 が 60000 回以下のグラフを拡大したものを示す.
w
j=
l
o
g
{
i
+
1) は W
j
=1 に追従するように
変化している.また Es もほとんど変化してい ないため勝率が変わらなかったと考えられる. 10.40368 0.4338 0.44672 0.45395 0.45897m出い~J
=
0
.
4
5
8
9
7
,
プレイアウトの結果はベルヌーイ分布に 従う, を用いた.この勝率は単純モンテカルロ法を用 いて初期局面の各合法手の勝率を計算した値 である. 図 1 仏)に各 Wj
を用いたときの瓦の変化を 示した.グラフはそれぞれ上から叫 =i
,
叫=
l
o
g
{
i
+
1)
,
w
j=
1 の重みにおける Es の値
を示している.重みを変えることで Es がm飢(μJ'こ近づいていることがわかる.
また exp{i/l00) で重みを付けたグラフは振
動して一定値に収束しなかった. 3. 重みづけによる強さの変化W
j=
i
,
w
j=
l
o
g
{
i
+
1) としたプログラムと
Wj =1 としたプログラムを戦わせ性能を評価 した.実験で用いたプログラムの性能を表 1 に 示す. 表1.実験に用いたプログラムの性能 シミュレーション速度 選択方式 プレイアウトにおける 合法手の確率分布 思考時間 4000 回 /secUCB1.TUNED
機械学習を用い て確率を生成5
sec/move
wj=i では追従はしているが,変化の幅が大 きくなっていることがわかる.そのため Es が ぱらつき探索が安定しなくなり,結果プログラ ムが弱くなったと考えられる. 4. まとめと今後の課題 UCT のシミュレーションは後半ほどより重 要となると考え,重み Wj
を導入した.その結 果ノードの評価値を目的の値に近づけること ができた. しかし自己対戦によって効果を確認したと ころ,プログラムを強くすることはできなかっ た.-90-参考文献
[
1
]
B
.
Bruegmann
(1
993)
,
Monte C
a
r
l
o
Go
,
βp ぬ'Ivlv.joy.ne.jp/welcome.勾-s/Golcompllte r必ηcgo.tex.Z[
2
]
R
.
Coulom (2006)
,
E
f
f
i
c
i
e
n
t
S
e
l
e
c
t
i
v
i
t
y
and Backup o
p
e
r
a
t
o
r
s
i
n
M
o
n
t
e
-
C
a
r
l
o
Tree-Search
,
P
r
o
c
e
e
d
i
n
g
s
of t
h
e
5
t
h
I
n
t
e
r
n
a
t
i
o
n
a
l
Con必'renceon C
o
m
p
l
l
t
e
r
s
and
Games
,
Turin
,
I
t
a
l
y
.
「 ILI--h ra 内U 毎日・内 U 5 5 4 4 a 匂・勾 a 邑yaa マo
a
o
o
.::: 0.435 0.430 0.425 0.420 0.415 o[
3
]
L
.
K
o
c
s
i
s
and C
.
S
z
e
p
e
s
v
a
r
i
(2006)
,
B
a
n
d
i
t
b
a
s
e
d
M
o
n
t
e
-
C
a
r
l
o
planning
,
5
t
h
European C
o
n
f
e
r
e
n
c
e
on
Machi・neL
e
a
r
n
i
n
g
(E
CML)
,
Pisa
,
Italy
,
Pages
282・ 293.[
4
]
L
.
K
o
c
s
i
s
and C
.
S
z
e
p
e
s
v
a
r
i
(2006)
,
D
i
s
c
o
u
n
t
e
d
UCB
,
2nd PASCAL C
h
a
l
l
e
n
g
e
s
Workshop
,
Venice
,
I
t
a
l
y
.
ー→
1 倒却∞ 2∞∞o 300000 4000∞ 5∞αJO 60∞∞ 7∞αJO 8ω∞o 90刷却o 10∞αm
シミュレーション回数 r---ュ 日ーーーーー 1--n ・・・・ 10& -ー 図 1 仏).各 W, に対する E., の変化 0.445 0.440 .::: 0.435 0 ..伺O 0.420 0.415 。 1 ∞∞ 2∞∞ 3∞∞ 40000 シミュレーション回懲 ιーーー 1 一- n ・・・・ l唱! 図I(B). 各 W