Complete Implementation of WXF Chinese Chess Rules
This solves the problem of accurate game judgment for Chinese Chess application developers, though it is incremental as it focuses on optimizing an existing rule set.
The paper tackles the challenge of correctly implementing WXF Chinese Chess rules, particularly for handling repetitions that can lead to win, draw, or loss outcomes, by introducing a complete algorithm that correctly rules all 110 example cases from the WXF manual and achieves a +10 point rating increase or 5% winrate improvement in a prototype engine.
Unlike repetitions in Western Chess where all repetitions are draws, repetitions in Chinese Chess could result in a win, draw, or loss depending on the kind of repetition being made by both players. One of the biggest hurdles facing Chinese Chess application development is a proper system for judging games correctly. This paper introduces a complete algorithm for ruling the WXF rules correctly in all 110 example cases found in the WXF manual. We introduce several novel optimizations for speeding up the repetition handling without compromising the program correctness. This algorithm is usable in engines, and we saw a total increase in playing strength by +10 point rating increase, or an increased 5% winrate when integrating this approach into our prototype engine.