|
「探索アルゴリズム」「評価関数」の設計と実装
|
Seal Software 著
2003年 6月18日発売
B5変型判
208ページ
[CD-ROM付]
価格 \1,995(本体 \1,900)
|
|
ISBN978-4-87593-428-8 C3055 \1900E
|
 |
テーブルゲームには、洗練されたアルゴリズムが使われています。本書は、テーブルゲーム「リバーシ」のアルゴリズムを題材に、C++とJavaを利用したプログラムの設計と実装について解説しています。
本書では、大きく分けて「ボードの設計と実装」、「探索アルゴリズム」、「評価関数」の順に解説しました。「ボードの設計と実装」では、オブジェクト指向をもとにリバーシのボードを表現するクラスを作成し、「探索アルゴリズム」では、テーブルゲーム必勝法探索の前提となるゲーム木について解説した後、探索の基盤となるアルゴリズムとαβ 法をはじめとするさまざまな高速化手法について解説しています。ソースリストは、C++とJavaで併記し、詳細にコメントしてあるので、入門者や中級者にも大いに参考になるでしょう。
|
|
| ■ 主な内容 ■ |
| 1. 1 リバーシ・プログラミングの概要 | 1. 2 リバーシについて |
| 1. 3 Thellについて | 1. 4 プログラミング言語について |
| 2. 1 石の表現 | 2. 2 ボードの表現 |
| 2. 3 Boardクラス | 2. 4 石を打てるかどうか判定するアルゴリズム |
| 2. 5 データ構造の準備 | 2. 6 moveメソッドの実装 |
| 2. 7 ゲーム終了の判定 | 2. 8 passメソッドの実装 |
| 2. 9 undoメソッドの実装 | 2.10 initメソッド |
| 2.11 その他のメソッド | 2.12 テスト・プログラム |
| 3. 1 最善手決定の概要 | 3. 2 Minimaxアルゴリズム |
| 3. 3 alpha-beta法 | 3. 4 negamax法 |
| 3. 5 NegaScout法 | 3. 6 その他の技法 |
| 3. 7 先読み手数 | 3. 8 AIクラス |
| 3. 9 まとめ | |
| 4. 1 最も単純な終盤の評価 | 4. 2 中盤の評価関数の基礎 |
| 4. 3 得点テーブル | 4. 4 着手可能手数 |
| 4. 5 開放度 | 4. 6 確定石 |
| 4. 7 辺 | 4. 8 パターンを用いたテクニック |
| 4. 9 Evaluatorクラス | 4.10 パラメータの最適化 |
| 4.11 評価関数の実装例 | 4.12 まとめ |
| 5. 1 リバーシの定石 | 5. 2 座標の変換 |
| 5. 3 CoordinatesTransformerクラス | 5. 4 定石探索の実装 |
| 5. 5 まとめ | |
| 6. 1 コマンドライン版 | 6. 2 GUIに向けた指針 |
特別付録CD-ROM
添付CD-ROMの使い方
※ 内容が一部異なる場合があります。発売日は、東京の発売日であり、地域によっては1〜2日程度遅れることがあります。あらかじめご了承ください。
|
|
 |

| 内容見本 |

|

|
| |
|