• 検索結果がありません。

コンピュータ将棋における実現確率探索の研究

N/A
N/A
Protected

Academic year: 2021

シェア "コンピュータ将棋における実現確率探索の研究"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

4-3

コンビュータ将棋における実現確率探索の研究

竹歳正史 1 橋本剛 2 梶原羊一郎 1 長嶋淳 1 飯田弘之 1 ,3

1 静岡大学情報学部

2 静岡大学工学部

3 科学技術振興事業団さきがけ研究 2

1

E

-

m

a

i

l

:

{cs7051 ,h邸imoto,cs6501 ,ω8066,iida}@cs

.

i

n

f

.

s

h

i

z

u

o

k

a

.

a

c

.

j

概要

実現確率探索は今後のコンピュータ将棋の飛躍につながるのではないかと期待されている.この探索法は 局面の実現確率を閥値とした縦型探索のアルゴリズムである.大きな特徴としてカテゴリ分けされた指し 手の確率を決めるために,実際のプロ棋士の棋譜から統計情報を採取している.したがって指し手の分類 は実現確率探索において非常に重要である.本研究では,いくつかの分類の詳細化の手法を提案する.将 棋プログラム TACOS に実現確率探索における指し手の分類の詳細化の手法を実装し,従来のプログラム と対戦させると 6 割程度の勝率を得ることができた.

R

e

a

l

i

z

a

t

i

o

n

-

P

r

o

b

a

b

i

l

i

t

y

S

e

a

r

c

h

i

n

Computer S

h

o

g

i

Masahumi T

a

k

e

t

o

s

h

i

1

Tsuvoshi H

a

s

h

i

m

o

t

o

2.

Y

o

i

c

h

i

r

o

Kaiihara

1•

J

un N

a

g

a

s

l

ima

1

,

H

i

r

o

y

u

k

i

I

i

da

1 ,3

1

Departments of Computer Science

,

Shizuoka U

n

i

v

e

r

s

i

t

y

2

Faculty of Engineering

,

Shizuoka University

3

"Information and Systems"

,

PRESTO

,

JST

E-m出1: {cs7051 ,h部imoto ,cs6501 ,cs8066 ,iida}@cs.inf.shizuoka.ac .j

abstract

The r

e

a

l

i

z

a

t

i

o

n

-

p

r

o

b

a

b

i

l

i

t

y

s

e

a

r

c

h

i

s

a

p

r

o

m

i

s

i

n

g

app

l'O

a

c

h

i

n

t

h

e

domain o

f

s

h

o

g

i

.

I

t

i

s

u

s

i

n

g

a

d

e

p

t

h

-

f

i

r

s

t

s

e

a

r

c

h

b

a

s

e

d

on 出e probability 邸 a

t

h

r

e

s

h

o

l

d

w

i

t

h

w

h

i

c

h

a

p

o

s

i

t

i

o

n

w

i

l

l

be r

e

a

l

i

z

e

d

f

r

o

m

t

h

e

r

o

o

t

p

o

s

i

t

i

o

n

o

f

a

game t

r

e

e

.

To d

e

t

e

r

m

i

n

e

m

o

v

e

-

c

a

t

e

g

o

r

y

p

r

o

b

a

b

i

l

i

t

i

e

s

t

h

a

t

a

p

o

s

i

t

i

o

n

w

i

l

l

be r

e

a

l

i

z

e

d

f

r

o

m

t

h

e

rooも of agame 七ree ,

s

t

a

t

i

s

t

i

c

s

o

f

v

a

r

i

o

u

s

moves i

n

a

c

t

u

a

l

games h

a

v

e

b

e

e

n

a

n

a

l

y

s

e

d

.

The c

a

t

e

g

o

r

i

z

a

t

i

o

n

o

f

moves

i

s

t

h

u

s

v

e

r

y

i

m

p

o

r

t

a

n

t

i

n

t

h

e

realizωion-probability

s

e

a

r

c

h

.

The p

r

e

s

e

n

t

c

o

n

t

r

i

b

u

t

i

o

n

p

r

o

p

o

s

e

s

an

i

d

e

a

s

f

o

r

t

h

e

c

a

t

e

g

o

r

i

z

a

t

i

o

n

o

f

m

o

v

e

s

.

A

c

o

m

p

u

t

e

r

s

h

o

g

i

program TACOS b

a

s

e

d

on t

h

e

r

e

a

l

i

z

a

t

i

o

n

-

p

r

o

b

a

b

i

l

i

t

y

s

e

a

r

c

h

u

s

i

n

g

t

h

e

p

r

o

p

o

s

e

d

m

o

v

e

-

c

a

t

e

g

o

r

y

i

s

s

u

p

e

r

i

o

r

t

o

t

h

e

o

l

d

v

e

r

s

i

o

n

.

(2)

1

背景

現在の将棋プログラムの多くは,深さ打ち切りの Min-Max 法を基本とし前向き枝刈りや探索延長を 加えて探索を行うのが一般的であるが,人間の手作 業に依存する事が多いのが現状で一般化しにくくわ かりづらい. これに対し, r激指J は実現確率探索と呼ぶ新し い手法 [1] ~用いて今年の世界コンピュータ将棋選 手権で優勝し,注目を集めている. 実現確率探索はプロ棋士の棋譜から採取した統計 情報をもとにして実装されており,碕率的に展開さ れやすい局面を中心に読むととができ,縦型探索で ありながら最良優先探索のようなふるまいをするこ とを特徴としている.このアルゴリズムに対する研 究はまだ始まったばかりであり,今後のコンビュー タ将棋の飛躍につながるのではないかと期待されて いる. 本研究では我々が開発した将棋プログラム TACOS に実現確率探索を実装し,その評価と改 良点を示す.

2

指し手の分類

指し手の確率はプロ棋士の棋譜から統計情報を抽 出して計算されている [1]. このとき指し手の意味 に基づく分類が必要になる.具体的には「駒を取る 手」や「両取りをかける手」という具合にカテゴリ 分けをする.これらの指し手が可能な局面撤と実際 に指された回数から確率を計算する.統計的によく 指される手は積率カ鳴くなり,あまり指されない手 は砲率カ唱くなる.確率の高い手には「直前に動い た駒を取る手J などがあり,確率の低い手は「無駄 な駒捨てJ など大きく駒損をしてしまう手がほとん どである.

3

分類の実装

TACOS では次のような指し手の分類を行って いる. -動かす駒の種類 歩から玉までの駒別に統計情報を取る.駒種は 生駒と成駒を区別する. -指し手の意味 指し手の意味に基づいて分類する.このカテゴ リは大きく分けて「駒を取る手J. r攻撃する 手J .r防御する手J , rその他」の 4 種類がある. -玉まわり 王手関係や玉のまわりに利きをつける手など を分類する. -指し手の種類 ただの移動,成る移動,駒を打つ手など駒の移 動に関して分類する. -駒の損得 その指し手による駒の損得を分類している.駒 を取る手の場合は取った駒の価値,防御する手 なら防いだ駒損,攻撃する手ならその駒を取っ たときに生じる損得を計算する. これらの 5 つのカテゴリは基本的に互いに独立 しており, ζ れらの分類を組み合わせて確率の統計 情報を抽出する.たとえば初期局面からお互いに角 道をあけて先手が角交換するときには,動かす駒の 種類が角,指し手の意味は駒を取る手,玉まわりは 分類されず,指し手の種類は成り,損得はなし,と なる.ただし,空き王手など実戦で指されるととが 少ない手などは動かした駒の種類は見ない,といっ たような例外が存在する.また,分類の組み合わせ によっては指された事例が少ないために確率が 100 %になってしまう手が出てくる.このような確率 100%の指し手はすべて確率を 50%に修正する.

(3)

表 1: TACOS に実装されている指し手の分類 動かす駒 指し手の意味 玉 直前に動いた駒を取る手 飛 上記以外の駒を取る手 角 攻防の手 金 直前に狙われた駒が逃げる手 銀 上記以外の逃げる手 桂 逃げる手以外の防御する手 香 直前に動いた駒を含む両取り 歩 上記以外の両取り 龍 直前に動いた駒へ利きをつける手 馬 上記以外の攻撃する手 成銀 味方の利きの有無による区別 成桂 成香 と金 表 1 に 5 つのカテゴリごとの分類要素を示す. TACOS では指し手の統計情報を抽出するのに約 10000 局のプロ棋士の棋譜を使用している.

4

実装時に判明した問題点

将棋プログラム TACOS に実現確率探索を実装 したところ,次のような指し手の分類に関係した問 題点が判明した 将棋では終盤になると「駒の損得より速度」とい うように駒を損しても王に迫る手がいい手になる場 合が多くなるが,このような手をなかなか読めない 乞いう問題がある. また指し手の分類は人聞の経験的な知識によって, 表面的な性質に基づいていくつかのカテゴリに分け られる.駒を取る手など,すぐに駒得とわかる手は 確率が高くなるが,いったん駒損してから後に駒得 をする手の確率は低くなる.表面的な指し手の分類 だけでは「送りの手筋J などの後で駒得をする手筋 でも,実現確率の低さからその後の展開が読めなく 玉まわり 指し手の種類 損得 王手 移動 プラス高 王手防ぎ手 成り プラス中 空き王手 打ち プラス低 自玉近傍 プラス微 敵玉近傍 損得なし マイナス微 マイナス低 マイナス中 マイナス高 なり指せなくなることがある.

5

指し手の分類の詳細化

指し手の分類の問題点を解決するために,進行状 況に応じた分類の細分化と,送りの手筋などの詳細 な分類をするためのルーチンを作成した.進行状況 による分類の細分化のことを rPh舗e

C

a

t

e

g

o

r

i

z

a

tion(PC)J. 詳細な手筋の分類を行う二つのルーチ ンを rpossibility Analyser(PA)J と rHistory

A

n

a

l

yser(HA)J と名づけた.

• P

h

a

s

e

C

a

t

e

g

o

r

i

z

a

t

i

o

n

(

P

C

)

TACOS では局面を序中盤,終盤,最終盤の三 段階に分け,各段階での分類の確率を取る事に よってより状況に適した探索を行えるようにし た例えば敵玉の近傍で少し駒損をしながら駒 を取る手は序中盤では 1%未満だが,終盤では 2.3% ,最終盤では 5%を超える.

• P

o

s

s

i

b

i

l

i

t

y

An

a

l

y

s

e

r

(

P

A

)

(4)

図 2: 連打の歩の例・ 8 三歩打。同飛まで 9 8 7 6 5 4 3 2 1

-持駒歩

2 一二三四五六七八九 曇事 事 欝事 曇 欝 主 苓 さ存主催

#

4存 当幹

# #

当字

f

&

歩 歩 飛

歩 歩 歩 歩

香 銀 玉金銀桂香

r

p

o

s

s

i

b

i

l

i

t

y

AnalyserJ は駒損するが将来好手 になりそうな指し手を判別し分類するルーチン である.これにより「送りの手筋J や「利きを 通すことによる素抜きj などのような指し手の 分類が可能になった.

z#

摘録ロ 例えば,図 l において.2 二金と打つ手は従 来の分類では確率が 0.592%だった.確率が低 いのは,駒損する指し手と分類されるためで ある.これを PA をによって分類すると確率が 5.44% となる.

滞一%一隅

同一 5-vv の一 5 一Z 打一一 歩一り一し

四一あ一な

8 一 A 一 AA --H 一 H

実験

6

.

Hisもory

An

a

.

l

y

s

e

r

(

H

A

)

r

H

i

s

t

o

r

y

An乱ly関rJ はそれまでの指し手の履 歴から指し手の連続性を考慮した分類を行う ルーチンである.これにより「連打の歩」や 「歩のつき捨てからの歩のたらし」などのよう な指し手の分類が可能になった 将棋プログラム TAC08 を使って指し手の分類の 詳細化の効果を確認するために実験を行った.実験 に使用したマシンの CPU は Athlon 1.2GHz,メモ リは 512Mby七e, 08 は Windows2000 である.以下 にプログラムのおもな仕様を以下に示す. 図 2 において.8 四歩と打つ手は普通に分類 すると確率が 2.54% となる.この場合,二手前 に指された・ 8 三歩打は考蔵されない.これを HA をによって分類すると二手前の・ 8 三歩打 から連打の歩と分類され,確率が 5.5% となる. 1.各プログラムに共通した仕様 (a) 探索を始める前に詰み探索を行っている. (b) 反復深化法を使用している. (c) 各ノードにおいて重要そうな指し手を生成し た後,全ての合法手を生成している. (d) 末端近くでは駒損する指し手は読まない. (e) 末端局面で王手がかかっていた場合には無条 件に一手延長する. (f) 末端の評価では静的な評価関数による評価値 と相手側の最大交換値 [3Pを足している. 2. 深さ打ち切りプログラムの仕様 (a) 探索深さを闇値として反復深化を行ってお り,毎回闘値を 1 づっ増やしている. (b) 指し手の仮評価によって読む手の数を制限し ている [4]. 深さ 1 と 2 ではすべての合法手 を読み,深さ 3 と 4 では 50 手,深さ 5 以下 では 10 手とした.ただしハッシュ表の最善

o

4 二銀打まで 3 2 1

-持駒金歩

一二三四五六七八九 曇韓 欝 書曇

欝 茎

#

当字

#

4件

#

#

4存

#

歩 笛 桂 歩

歩 歩

歩 銀

金 玉

銀 香 耳是 金 桂 香 図 1: 送りの手筋の例 9 8 7 6 5 4

毒事繍錨ロ

.2 二金打の確率 PA あり

5

.4

4%

PA なし

0.592%

(5)

手や直前に動いた駒を取る手などの重要そう な指し手はこの制限にあてはまらない. 3. 実現確率探索プログラムの仕様 (a) 局面の実現確率を闘値として反復樹投行つ ており,毎回閥値を 0.5 倍して減らしている. (b) 基本的に探索中の各深さにおいて読む手の数 を制限していない.

6

.

1

連続自動対戦による評価

対局条件を以下に示す. 1.対戦する前に毎回異なった中断局面を読み込ん で展開が異なるようにした. 2. 中断局面はプロ棋士の棋譜の 31 手目の局面を 50 局面だけランダムに選び,一つの局面に対 して先後を入れ替えて対戦させることで合計 100 回の対戦を行った. 3. 対局手数が 300 手を超えた場合は引き分けと した. 4. 一手あたりの時間制限は 10 秒とした.

6

.

1

.

1

PC による詳細化の評価 表 2 に実験結果を示す. PC を実装したプログラ ムと実装していないプログラムを複数回対戦させる と結果は 53 勝 44 敗 3 分けとわずかに勝ち越した. との結果だけをみて評価するのは難しいが,少なく とも性能は落ちていないといえる. 表 2: PC あり対 PC なし 勝ち負け引き分け勝率 53 44

3

0

.

5

3

6

.1

.

2

PA と HA による詳細化の評価 表 3 に実験結果を示す. PA と HA を実装したプ ログラムと実装していないプログラムを複数回対戦 させた.なお両方のプログラムにはともに PC によ る詳細化を実装している.結果は 61 勝 38 敗 1 分 けとなり,およそ 6 割の勝率となった. 次に深さ打ち切りプログラムと複数回対戦させ た.表 4 に実験結果を示す.結果は PA,HA を実装 したプログラムが 74 勝 24 敗 2 分けとなり,

PA

,

HA

を実装していないプログラムが 70 勝 29 敗 1 分けと なった.この対戦では明確に差がでることはなかっ たが, PA と HA を実装したプログラムの成績がわ ずかに良くなった. 表 3: PA,HA あり対 PA,HA なし 勝ち負け引き分け勝率

6

1

3

8

1

0

.

6

1

表 4: 実現確率探索対深さ打ち切り プログラム 勝ち負け引き分け勝率 P'A,HA あり

7

4

24

2

0

.

7

4

PA,HA なし

7

0

2

9

1

0

.

7

0

6

.

2

次の一手形式問題による評価

コンピュータ将棋用の標準問題として知られてい る文献 [5] に掲載されている問題を使用した.次の 一手形式の問題を解かせるのに制限時聞を 10 秒と して行った. 表 5 ~こ実験結果を示す.実現確率探索と深さ打 ち切りのプログラムの他に,指し手の確率をすべて 50%にしたプログラムの結果も併せて示す. PA,HA を実装したことによる正解教の差はあま り出なかった. 図 3 に 48 聞の問題を 10 秒打ち切りで読ませた ときの深さ別の合計ノード数を示す.この結果をみ ると PA,HA ありなしではほとんど読みの深さに差 がないことがわかる.深さ打ち切りのプログラムが 深くノードを展開しているのは,指し手の生成数に 制限をつけたためである. 今回の実験では,実現確率探索と探さ打ち切りの プログラムとの聞に,ノードを展開した深さに顕

(6)

著な遭いはなかった.しかし連続対戦の結果などか ら,その強さには明確な差があると考えられる. 表 5: 次の一手形式の問題の正解数

PA,HA あり I PA,HA なし

hν き

目=併

-

-

-

1

-

8

すべて 50%

1

6

1

2

10.000.000 '訓10.000 8.000.000 mωsω 鍾 8.000.000

T

5脚側 、 4.000.000 3.000.0ω 2.0ωsω 1.000.000 。 嘗 - -PA.HAあり -o- PA.HAなし ・i ¥ e 深さ打ち切り

.

...すべて50略

明、主 ,,

"-r\

.~ t Jマ..,‘~匹、 ーー.ι.ト>.・.J..悼...炉」

o

2 4 8 8 10 12 14 18 18 深さ 図 3: 次の一手問題での合計ノード数

7

まとめ

本研究では実現確率探索における指し手の分類 の詳細化の手法を評価した.局面の進行状況による 分類 (PC) や詳細な手筋の分類 (PA,HA) といった. 妥当な確率を算出するルーチンを作ることカ『効果的 であることがわかった.実現確率探索は指し手の分 類の仕方によってその強さが大きく左右されるとい える.より人聞の感覚に近い確率を算出するととが 強さの向上につながるだろう.

8

最近の成果

最近オランダで行われた Compu旬r

O

l

ympi

.

a

d

[

6

]

という思考ゲームの大会では,コンピュータ将棋部 門で出場した金沢将棋と I8 将棋(商品名:東大将 棋)にそれぞれ 1 勝 1 敗ずっと健闘した 将棋クラブ 24[司というインターネット将棋道場 ではレーティングが 800 程度から 18∞以上まで上 昇した.これは将棋の段位でいうと 8 級から 2 段程 度まで棋力が上がったことになる.通常は両者 30 秒打ちきりの早指しだが TAC08 はマウスによる 手入力で指し手を送るために余裕をもって 15 秒打 ち切りに設定している.

参考文献

[1] 鶴岡慶雄,横山大作,丸山孝志,近山隆.局面 の実現確率に基づくゲーム木探索アルゴリズム.

Th

e 6th Game Prc穆ramming Workshop,pp.17・

24

,

200

1.

[

2

]

激指開発チーム. 将棋プログラム「激指J の ページ. http://www.logosふu・ 加kyo・ac.jprgekis甜:hi/

.

[3] 山下宏. Y88-そのデータ構造,およびアル ゴリズムについて.コンピュータ将棋の進歩 2,pp.112・ 142. 共立出版, 1998. [4] 金沢伸一郎.金沢将棋のアルゴリズム.コンピ ュータ将棋の進歩 3 ,pp.15・26. 共立出版,2∞1. [5] 松原仁,飯田弘之.次の一手形式によるコンピ ュータ将棋の評価(そのー) .コンピュータ将 棋の進歩 2. pp.61-11 1.共立出版, 1998.

[

6

]

Computer

Olympiad のページ.

h

t

t

p

:

/

jwww.cs.unim蹴.nl/Olympiad2002/

.

[7] 将棋倶楽部 24 のページ. htもp://www油ogidojo.com/

.

表 1: TACOS に実装されている指し手の分類 動かす駒 指し手の意味 玉 直前に動いた駒を取る手 飛 上記以外の駒を取る手 角 攻防の手 金 直前に狙われた駒が逃げる手 銀 上記以外の逃げる手 桂 逃げる手以外の防御する手 香 直前に動いた駒を含む両取り 歩 上記以外の両取り 龍 直前に動いた駒へ利きをつける手 馬 上記以外の攻撃する手 成銀 味方の利きの有無による区別 成桂 成香 と金 表 1 に 5 つのカテゴリごとの分類要素を示す
図 2: 連打の歩の例・ 8 三歩打。同飛まで 9 8 7  6  5 4  3 2 1   -持駒歩 2一二三四五六七八九曇事事欝事 曇欝主 苓さ存主催# 4存 当幹#  # 当字 f &  歩 歩 飛 桂 歩 歩 歩 歩 歩 角 金 香 銀 玉金銀桂香rpossibility AnalyserJ は駒損するが将来好手になりそうな指し手を判別し分類するルーチンである.これにより「送りの手筋J や「利きを通すことによる素抜きj などのような指し手の分類が可能になった.z#摘録ロ例えば,図 l におい

参照

関連したドキュメント

なお︑本稿では︑これらの立法論について具体的に検討するまでには至らなかった︒

このように,先行研究において日・中両母語話

ヒュームがこのような表現をとるのは当然の ことながら、「人間は理性によって感情を支配

 このようなパヤタスゴミ処分場の歴史について説明を受けた後,パヤタスに 住む人の家庭を訪問した。そこでは 3 畳あるかないかほどの部屋に

海なし県なので海の仕事についてよく知らなかったけど、この体験を通して海で楽しむ人のかげで、海を

夜真っ暗な中、電気をつけて夜遅くまで かけて片付けた。その時思ったのが、全 体的にボランティアの数がこの震災の規

大村 その場合に、なぜ成り立たなくなったのか ということ、つまりあの図式でいうと基本的には S1 という 場

自分ではおかしいと思って も、「自分の体は汚れてい るのではないか」「ひどい ことを周りの人にしたので