編集(管理者用) | 差分 | 新規作成 | 一覧 | RSS | FrontPage | 検索 | 更新履歴

ゲーム木 - ゲームの進行状況を表した木構造。

目次

ゲームの進行状況を表した木構造。

概要

局面(盤面・駒台及び手番)をノードとし、指し手を枝とした仮想的な木構造の事をゲーム木と呼ぶ。

“仮想的な”と記述したのは、コンピュータ将棋の思考ルーチン実装にあたりゲーム木をデータ構造として構築する必要は必ずしも無いからである。

【注】本ページの記述は将棋のゲーム木に関する説明なので、他のゲームの場合には当てはまらない可能性がある。 例えば、双六は3人以上でプレイする可能性があるので、本ページの記述とは異なる。

# 本当は図があったほうが分かりやすいのですが・・・私には時間的に無理です。

MAXプレイヤー・MINプレイヤー

思考ルーチンの事をMAXプレイヤーと呼び、対局相手(人または他のコンピュータ将棋ソフト)の事をMINプレイヤーと呼ぶ。

ルートノード

ゲーム木の根にあたるノードをルートノードと呼ぶ。上記の例ではRがルートノードである。

子ノード・親ノード・兄弟ノード

あるノードから見てルートノードに近く、かつ、枝で結ばれているノードの事を親ノードと呼ぶ。 上記の例では、S11の親ノードはE1である。

あるノードから見てルートノードから遠く、かつ、枝で結ばれているノードの事を子ノードと呼ぶ。 上記の例では、E1の子ノードはS11・S12及びS13である。

あるノードの親ノードの子ノードのうち、そのノード以外のノードを兄弟ノードと呼ぶ。 上記の例では、S11の兄弟ノードはS12及びS13である。

LEAFノード

子ノードを持たないノードの事をLEAFノードと呼ぶ。 上記の例では、S??はLEAFノードである。

内部ノード

少なくとも一つの子ノードと親ノードを持つノードを内部ノードと呼ぶ。 上記の例では、E?は内部ノードである。

MAXノード・MINノード

MAXプレイヤーの手番であるノードをMAXノード、MINプレイヤーの手番であるノードをMINノードと呼ぶ。