xqbase/eleeye
ElephantEye - a XiangQi (Chinese Chess) Engine for XQWizard with Strong AI
何を解決するか
ElephantEye は、高水準で象棋(中国将棋)をプレイできる無料でオープンソースのゲームエンジンです。盤面の状態を分析し、最善の手を決定し、人間プレイヤーや他のエンジンと対戦するための計算論的ロジックを提供します。
動作方法
ElephantEye は「ブルートフォース」アプローチと厳密なゲーム理論アルゴリズムを組み合わせています。主な技術的要素は以下の通りです:
- 探索アルゴリズム: 反復深化を伴う再帰的 Alpha-Beta 探索、キラー手、履歴ヒューリスティクスを用いて、将来の手を効率的に探索します。
- 手の生成: 滑走駒(飛車と砲)の手を高速に生成し、駒のピン状態を判定するために BitRanks と BitFiles(ビットボード)を使用します。
- 最適化: 冗長な計算を避けるために、2段階の置換表(深さ優先と常に上書き)を実装し、Null Move Pruning(R=2)を用いて探索を高速化します。
- 評価: 探索ロジックと盤面評価関数を API を介して分離しており、開発者が評価関数を交換または改善できるようにしています。
- プロトコル対応: UCCI 3.0 プロトコルをサポートしており、XQWizard などの GUI フロントエンドと統合可能です。
対象ユーザー
- 象棋愛好家: 強力な AI 相手を探しているプレイヤー、または自分の対局を分析するツールが必要な人。
- ゲームAI開発者: 伝統的なゲーム木探索アルゴリズムやボードゲームAIアーキテクチャに興味があるプログラマー。
特徴
- UCCI 3.0 対応: 標準的な中国将棋エンジンインターフェースとシームレスに連携可能。
- 豊富なオープニングブック: 上位プロの対局から導かれた 10,000 通りの対称的手を収録。
- モジュール設計: 探索エンジンと評価関数を分離しており、他の開発者が容易に拡張または修正できる構造になっています。
- 包括的なツールセット: オープニングブックの作成、探索木の分析、対局記法フォーマットの変換などに使えるユーティリティが付属。
関連
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト