Category Archives: chess4j
chess4j + Prophet integration status 5/17/20
Several months ago I wrote about a proof-of-concept JNI integration between chess4j and Prophet4. At the time I had managed to compile Prophet4 as a static library, load that library into chess4j and write a JNI layer. The only function … Continue reading
Prophet4 rewrite status 2/16/20
Added a simple depth first search. The search uses the alpha/beta algorithm and recognizes checkmated and stalemated positions but otherwise has no “intelligence.” It is a simple fixed depth search without iterative deepening or timing. The next phase of work … Continue reading
chess4j + Prophet4 POC
I just wrapped up a successful proof-of-concept to marry up my two chess engines – the Java based chess4j and the C based Prophet4 . Note, Prophet4 isn’t even a complete engine yet – it doesn’t even have a search! … Continue reading
chess4j 3.5 is released
I’m releasing version 3.5 of my Java based chess engine, chess4j. The only changes since 3.4 are some bugfixes to the ponder search and changes in some logging levels. As always the source code is available on the project website … Continue reading
chess4j 3.4 is released
chess4j 3.4 is officially released. The main changes in this release are the hashing related changes that I discussed some time back in this post. Other than that, there are many smaller changes, many of which I’m sure I’ve lost … Continue reading
Hashing in chess4j
Hashing is an area I’ve meant to revisit in chess4j since it was originally implemented, for a couple of reasons. (1) The hash entries consume too much space, limiting the number of entries the hash table can store, and (2) … Continue reading
chess4j 3.2 is released and it’s magic!
I just released chess4j 3.2. This release is purely about optimizing for speed. That is, there are no changes to the search or evaluation terms. chess4j is now a bitboard engine, and uses magic bitboards for move generation. Simply by … Continue reading
chess4j 3.1 is released
I just released version 3.1 of chess4j, my Java based chess engine. This version is about 100 elo stronger than 3.0. The key differences are: The Groovy language is no longer used. Groovy is a fine language for some purposes. … Continue reading
chess4j 3.0 is released!
After a long period of inactivity I’m happy to announce the release of version 3.0 of my Java chess program, chess4j. This version is a good bit stronger than the previous version, though still not as strong as my C/C++ … Continue reading
chess4j + SQLite
The last time I wrote anything about chess4j, way back in November, I reported that chess4j was using a small in-memory database of opening moves. The program was reading a library of about 500 games from GM Kasparov, which it … Continue reading