Initial setup of mini-Shogi


WinBoard Shogi package, including Shokidoki and UCI2WB.

WinBoard Xangqi installer, including UCCI2WB and UCI2WB and 3 sample engines.

Linux binary of Shokidoki ICGA15 version (32-bit or 64-bit version) (July 2015, with Euro- and Tori-Shogi!).

Other links

Enhanced Bonanza engine

HGM's Chess pages

HGM's WinBoard development page.

ICGA Olympiad 2013, mini-Shogi report + Shokidoki download.

ICGA Olympiad 2010, mini-Shogi results.

ICGA Olympiad 2010, regular Shogi results.

Special mini-Shogi package with 6 different mini-Shogi engines.

Shogi-variant package (Dai, Chu, Sho, Heian, Tori, Judkin, Euro- and mini-Shogi) !!! Updated July 2015 !!!


A WinBoard engine for Shogi and Shogi variants (Euro-, Tori, Judkin and mini-Shogi)

On August 1, 2010, I started building an engine for Shogi, to compete in the ICGA Computer Olympiad 2010 in Kanazawa, Japan, for which I had already registered it under the name 'Shokidoki'. I derived it from my Xiangqi engine HaQiKi D, by changing the board representation, and replacing the move generator and evaluation function. The evaluation is still very rudimentary, as I am no Shogi playe myself.

During the Olympiad I adapted Shokidoki to also play mini-Shogi (variant 5x5+5_shogi, in WinBoard terms). To my surprise, the search algorithm I used was much more suitable for mini-Shogi than for regular Shogi (where it tends to overlook tsume mates by drops), and it finished second place there, before the 2007 World Champion Tacos. In 2013 Shokidoki even won the mini-Shogi gold medal in the Olympiad.

In the first half of 2015, two new variants (Tori Shogi and Euro-Shogi) were added to the variants Shokidoki can play. In preparation for the ICGA Computer Olympiad the general playing strength of Shokidoki was significantly improved, by a more aggressive evaluation of King safety, and static detection of mate-in-1 piece drops in quiescence search. As a result it now scores approximately 40% against the SPEAR engine in 20-min games, and 52% in bullet games. (The previous version scored 28% and 48%, respectively.) In addition the implementation of the multi-PV option was completed, so that the engine setting 'Multi-PV margin' can now be used to specify a centi-Pawn range, and moves that are within that range from the best moves will also be reported in the engine output. Some annoying bugs were repaired as well.

Shokidoki implements modern search techniques, such as hash table, null-move pruning, late-move reductions, check extension. Especially drops are heavily reduced unless they prove useful (by making a null-move reply fail low through a move with the dropped piece).

Amongst the downloads above, you can also find a Linux binary for i386 and x64 architectures. To use that, unzip it, and place it in /usr/games. You will then be able to run it in XBoard through the command:

   xboard -fcp shokidoki -variant shogi

WinBoard for Shogi

Shokidoki uses WinBoard protocol, and can thus run natively under WinBoard. Other WinBoard engines are TJshogi and a version of GNU Shogi and Bonanza adapted by me. WinBoard can also run Shogi engines using USI protocol through the UCI2WB adapter. USI-compatible engines that I tested this way are Lesserkai, (which is included in the package of the Shogidokoro GUI), PetitShogi, Laramie, BlunderUSI and SPEAR. Some of these, in particular PetitShogi and SPEAR, are not fully USI compliant, but support some 'Shogidokoro dialect' of USI. This dialect only support byoyomi time control (which is not yet available under WinBoard). They can be run by a kludge (built into UCI2WB for this purpose) of making WinBoard incremental TC look to them as if it was byoyomi. The very strong engine Bonanza can be run as USI engine through the u2b adapter, and thus under WinBoard through UCU2WB and u2b in tandem, but it is recommended to use the Bonanza WB version I created, which does not need adapters, and supports interactive analysis and move exclusion under WinBoard.

Free Shogi engines supporting a standard protocol

engine name supported protocol remarks downloads
GPS-Shogi USI Strongest free engine? Ended 3rd in last CSA Championship direct link to installer
Bonanza USI through u2b.exe, WB Open source! Enhanced WB version! Bonanza download page, u2b (link to zip file) WinBoard version (source)
Ponanza Quartette USI (but resigns at classical TC) Byoyomi TC only Download page
BlunderUSI USI Download page
SPEAR USI/Shogidokoro Does not ponder as USI engine Spear home page
Sunfish USI pondering cannot be switched off Download page
Laramie V3 USI Link to zip file
Shokidoki WB Supports 5x5 and 6x6 mini variants Link to binary (v0.9)
Kuma Shogi USI Only plays 30-min ponder on Download page
Hiyoko Shogi USI non-compliant Download page
Miyako Shogi USI Cannot start with sente Download page
Nebiyu WB Supports 5x5 and 6x6 mini variants Download page
PetitShogi USI/Shogidokoro Supports 5x5 and 6x6 mini variants
Byoyomi TC only
Home page (Japanese, but recommended reading), Download page
TJshogi WB or USI Separate binary supports 5x5 Home page
GNU Shogi WB (or XShogi) Very weak Link to zip file Source code
Lesserkai USI Even weaker, USI demo engine included with Shogidokoro Link to Shogidokoro zip file Source code
Inaniwa USI Non-searching engine, non-compliant Link to zip file

Below is the cross table of a bullet tournament I conducted (1 min + 1sec/move) amongst these engines, where each participant played each opponent 100 times. (A '+' stands for 0.5 point.) GPS Shogi is not really suitable for such fast games, and loses on time a lot, because it sometimes pauses for several seconds to clean up its memory. (E.g. of the 28 losses against Shokidoki 0.9x, 27 were lost on time in a won position.) Spear underperforms badly because uses almost zero time; at long time control it is much stronger. Lesserkai is hard-wired to search 4 ply deep in any position, and ignores all time control. The other engines were using their time in a reasonable way.

CROSS TABLE      Bon GPS Blu Spe Lar Shx Shm TJs Pet GNU Les 
Bonanza Feliz WB ### 65  80  98  100 96  96 
GPS Shogi r2410  35  ### 73  89+ 82  72  77 
Blunder-20091023 20  27  ### 93  97  94  96+ 
SPEAR CSA09v1.5   2  10+  7  ### 77  52  62+ 85  82 
Laramie V3        0  18   3  23  ### 53  52  86  66 
Shokidoki 0.9x    4  28   6  48  47  ### 50  75  74+ 94+ 
Shokidoki 0.9m    4  23   3+ 37+ 48  50  ### 71  78  97 
TJshogiWB 0.03b              15  14  25  29  ### 56  87 
PetitShogi (ssp)             18  34  25+ 22  44  ### 98 
GNU Shogi 1.3.2                       5+  3  13   2  ### 89 
Lesserkai 1.3.3                                      11  ###
Previous   Next
Powered by WebRing.