* チュートリアル [#rfd270fa]
----
工事中
#contents
----
** ランダムプレイヤー [#i664008e]
sample/random_play.cc 参照
http://gps.tanaka.ecc.u-tokyo.ac.jp/osl/osl/doc/html/random__play_8cc-source.html
- 将棋番
- 手生成

** 目的別手生成 [#td45d470]
[[解説/指手生成]]
** 詰将棋を呼ぶ手順 [#w8a10ffe]
[[サンプルプログラムの紹介/checkstat]]も参照.
- 必要なファイルをincludeしておく
- namespace利用宣言をしておく
 using namespace osl;
 using namespace osl::checkmate;
- 局面を用意する 
   HashEffectState state;
- パスエンコーディングを用意する
  const PathEncoding path(state.getTurn());
-- なお、真面目にGHI対策をするには指手の履歴からパスエンコーディングを作る必要がある
- 探索用オブジェクトを用意する
 DualCheckMateSearcher<HashEffectState,DominanceTable> searcher;
- 詰将棋を呼ぶ
-- 先手が後手を詰める手順があるかどうかを調べる場合、は以下のように呼ぶ
 Move checkMateMove;
 const bool win = searcher.
   isWinningStateSlow(limit, state, path, checkMateMove);
-- 真偽値で詰むかどうかの結果が返る
-- limit は探索ノード数
-- 詰む場合はcheckMateMove に指手が代入される
** 探索 [#nb95da81]
** 評価関数 [#g17be3ae]
- 駒割 [[Doxygen:PieceEval]]
- 駒の関係 [[Doxygen:PiecePairEval]]
- 定跡 [[Doxygen:OpeningBook]]
** その他 [#qe675bbc]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS