Crate usiagent

source ·
Expand description

USIプロトコルを用いた将棋AIを実装するためのフレームワーク

Modules

  • USIプロトコル準拠のコマンドを取り扱う
  • 各種エラーの定義
  • イベント処理
  • 局面のハッシュ表現を取り扱う
  • 入力の読み取り
  • USIプロトコルの入力を解釈するインタプリタ
  • ログ出力
  • USIコマンド文字列、エラーメッセージ等の出力
  • AIの本体を実装するためのtrait等
  • USIプロトコル文字列のパース、組み立て機能
  • 合法手の列挙等、将棋のルールに関連した機能
  • 自己対局機能
  • 将棋の盤面や持ち駒等の定義
  • Stringに関連した機能

Structs

  • エラーを受け取ってロガーで出力する構造体
  • 処理を実行した結果発生したエラーを自動で出力するためのサンドボックス
  • USIプロトコルをイベントシステムを用いてやり取りするための機能の実装

Enums

  • go ponderによって生成された手を相手の指し手が決まるまで覚えておくための構造体

Traits

  • queryで表されるものを検索する
  • enumの各項目にインデックスが対応する型の最大のインデックスを取得する