GPSshogi

What is this?

GPSFish is a shogi program ported from Stockfish combined with GPSShogi's evaluation function and other shogi stuffs, to play shogi games via a part of USI.

チェスのオープンソースプログラムであるStockfishの、ルールを将棋に変更し、指手生成、評価関数、盤面の構造体、一手詰めをGPS将棋のものに取り替えてUSIの一部のコマンドに対応しました。

stockfishとの差分をなるべく小さくする方針で作成したため、稲庭将棋対策や高速に詰みを発見する機能(df-pn) 等はありません。

Source code

Available under GPL version 3.

元のstockfish同様GPL version 3で公開します

http://gps.tanaka.ecc.u-tokyo.ac.jp/cgi-bin/viewvc.cgi/trunk/gpsfish/?root=gpsfish

How te use

  1. Ubuntu precise または oneiric またはDebian wheezy を用意します (C++0xのlambdaを使っているので、コンパイルにはg++ 4.5以上が必要です)
  2. libboost-all-dev, libbz2-dev 等をインストールします
    • Suggested environment: Ubuntu (precice, oneiric), or Debian wheezy with g++ version 4.5 or higher, libboost-all-dev.
  3. osl, gpsshogi, gpsfish のソースコードをそれぞれダウンロードし、兄弟ディレクトリに配置します
    • なぜか二重にgzipがかかっているので gzip -d < gpsfish-gpsfish.tar.gz|tar xvzf - 等と展開してください (2012年5月12日)
    • Please click "Download GNU tarball" to get each source code of OSL (basic shogi library), GPSShogi (evaluation function data and others) and GPSFish, then extract them in a same directory.
  4. gpsshogi のデータディレクトリをosl にリンクします. Make link from osl/data to gpsshogi/data
    (cd osl; ln -s ../gpsshogi/data .)
  5. oslをコンパイルします. Compilation of OSL
    (cd osl/release; make -j $n) # $nはコア数など (コンパイルの並列度)
    (cd osl; make third-party -j $n)
  6. gpsfishをコンパイルします. Compalation of GPSFish
    cd gpsfish/src
    make -j $n
  7. USIで動きます. Run in USI.
    ./gpsfish
    usi
    ...
    isready
    readyok
    position startpos moves 9i9h
    go byoyomi 10000

その他

自動でコア数を認識しますが、hyper threading は切っておいた方が速いようです

stockfishからの変更点詳細

チェスではpromotionがとても大きな価値を持ちますが、将棋ではそれほどでもないため、(詳細は後日記述されます)



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