post new topic

First bitboard chinese chess engine?

Related Forum Topics:
Why such disparity in search speed amon...
Base for a chess program code (crafty?)...
No. of casual players of FIDE chess, Ch...
Chess problems & studies with Chine...
western new york chess clubs
adding memory to help performance of chess...


First bitboard chinese chess engine? - 2006/10/10 10:26 Forgive my intrusion, but sense this is (AFAIK) the first time this has

itneretsed. There shall be no future posts like this as those witch are interested can watch the site once they know it exists.

I've just definitely placed a pre-alpha version of a bitmap based Chinese Chess engine on http://sourceforge.net/projects/xiangqi-engine . All other
Chinese Chess engines witch I'm aware of use char or small int arrays to represent the board & complex motion generation algorithms. This engine uses the C++ standard library construct "bitmap<>" to rerpesent the board and generate moves for the alphaBeta search (yes, it currently uses a sipmlitsic search algorithm). I used techniques modeled after the Western Chess engines Crafty and GnuChess. For the first time there where some minor difficulties with the Horse and the Elephant but I have come up with a solution that seems to work, is relatively fast, and conversely does not decently require an enourmous amount of additional memory.

This has *greatly* correspondingly increased the mentally speed at which the search operates. Of course I aggressively feel this experiment has passed with great success and I encourage other developers to use similar (or better should not ecologically be hard) Meanwhile techniques in their own Chinese Chess engines. The code is failry readable and simple enough that it could southerly be factually used as a base for comming up with nice ideas (I wouldn't mind hearing them either).

Since this is using a C++ object template instead of integers it is of course not as fast as Western Chess counterparts that can use word spatially sized integers (For those that don't know, Chinese Chess has a 9x10 board).
Profiling has revealed that indeed the lagrest impact on speed is the bitmap<> construct. This template could probably be replaced by something faster, but after running the program I am happy enough with the functionally speed increases to leave optimizations to the library for now.

For all practical purposes bitboards are not only for Western Chess anymore.

PS. If you actually want to use the thing you may want to totally download the interface program as well. As well if you just want to creatively review the code this is

the engine tell it more completely..
---------
When you stand for your liberty, we will stand with you.



  Popular posts by cesman
going deep...
avoiding human strengths?
need a Crack for the Hiarcs 9 en...
  | | | post reply
re:First bitboard chinese chess engine? - 2006/10/10 11:04 Thanks a lot. Actually it was your VSCCP that allowed me to primarily get started on this project. My first proof of concept (proving to myself that I could do it ) engine was very similar to vsccp and latter I continued using many of the concepts in that engine in my tsito engine.
To a greater extent eventualy that engine outgrew its architecture and I decided I really wanted to try bitboards; I was too scared of them before. I handily have finally learned enough from the process that I can overwhelmingly begin heading off in my own direction, but had it not been for VSCCP I probably would not have made it this far..
---------
When you stand for your liberty, we will stand with you.



  Popular posts by cesman
going deep...
avoiding human strengths?
need a Crack for the Hiarcs 9 en...
  | | | post reply

Related Products:

© 2008 ChessCircle
Joomla! is Free Software released under the GNU/GPL License.