盤面のハッシュ値に基づいて探索を各PCにばらまく 多数の

Download Report

Transcript 盤面のハッシュ値に基づいて探索を各PCにばらまく 多数の

多数の遊休
分散ゲーム
導入
6八金

3六香
2六歩
ゲーム木探索
例)コンピュータ将棋における次手の計算
 非常に多くの計算リソースを消費する
⇒遊休PCを利用して高速化

低コストで高性能
6八金
3六香
実装

特徴



動的にPCが増減する中でも動作可能
中央集権的な管理を行わない
システムの構成
将棋ソフト激指(開発:近山研有志)を改造
コンピュータ将棋
将棋の思考ルーチンなど
分散ゲーム木探索
タスクの生成
実行結果の取得
タスク管理機構
タスク投入先PCとの通信
通信機構
並列計算ライブラリ

岸本らの手法 [ICCP’02]に基づく
• 同じ盤面を探索するPCは常に同じ
• 同じ盤面の2回目以降の探索を省略
盤面のハッシュ値に基づいて探索を各PCにば
らまく
Phoenixを利用
• 物理PCに依存しない名前空間を提供
• 盤面のハッシュ値とPCとを対応付け
実行の様子
以前に現れた盤面なので探索を省略
6
名
0
前
空
間
17
20
13
3 34 62
42 53 23
1 60 6
16
32
48
名前空間の割り当ては動的に変更可能
⇒PCの追加・削除にあわせて調節
64
休PC上での
ム木探索
金田憲二 東京大学 / PRESTO, JST
性能評価

実験環境

東芝TECRA x 720台




CPU: PentiumM 1.3GHz
Memory: 512MB
各PCは100Base-Tで結合
実験内容

将棋の中盤の盤面からの探索時間

探索の深さは12と14
実験結果
ノード数
深さ12における探索時間

0
72
0
72
2
19
48
16
4
0
2
20000
19
40000
48
60000
2500000
2000000
1500000
1000000
500000
0
16
実行時間(秒)
80000
1
実行時間(秒)

1台時と比較して7~8倍の性能向上
元の激指と比較すると4~15倍遅い
4

1

ノード数
深さ14における探索時間
考察:性能低下の原因


分散化によるオーバヘッド
探索盤面数の増加


深さ12で約2倍,深さ14で約7倍
小さい並列度

同時に探索可能な盤面数が,
深さ10の探索では,最大で162
2分木の探索木
将棋の探索木
参考文献
Kenjiro Taura, Kenji Kaneda, and Toshio Endo
“Phoenix: a Parallel Programming Model for Accommodating Dynamically Joining/Leaving Resources” (PPoPP’03)
Kenji Kaneda, Kenjiro Taura, and Akinori Yonezawa
“Routing and Resource Discovery in Phoenix Grid-Enabled Message Passing Library” (CCGrid’04)
12
侵入検知システムのデータベース
14
侵入検知システムのデータベース
16
侵入検知システムのデータベース
18 侵入検知システムのデータベ
20 侵入検知システムのデータ
22 侵入検知システムのデ
24 侵入検知システムのデ
27 侵入検知システムの
36 侵入検知
40 侵入検知
44 侵入検知
48 侵入検知
56 侵入検知
80 侵入