Category Archives: chess4j

Category for posts pertaining to the chess4j project.

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

Posted in chess4j, Computer Chess | Leave a comment

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

Posted in chess4j, Computer Chess | Leave a comment

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

Posted in chess4j, Computer Chess | Leave a comment

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

Posted in chess4j, Computer Chess, Software Development | Leave a comment

chess4j learns some moves from Kasparov

Ok, “learn” is too strong a word. More accurately, chess4j now has a small opening book database populated with a little over 500 Kasparov games. Before doing any thinking on its own, chess4j will consult this database, and if a … Continue reading

Posted in chess4j, Computer Chess, Software Development | Leave a comment

chess4j 2.0 is released

I’m happy to announce the release of version 2.0 of my chess program, chess4j. This version is a good bit stronger than the previous release, though there is still much to do. The focus of this release has been to … Continue reading

Posted in chess4j, Computer Chess | Leave a comment

chess4j gets a little smarter

Over the holidays I managed to find a little time to do some work on chess4j. It felt really good to dust the codebase off and make some improvements that have had real impact on playing strength. Up to this … Continue reading

Posted in chess4j, Computer Chess, Software Development | Leave a comment

chess4j 1.2 is released!

chess4j 1.2 is in the wild. There hasn’t been any new development lately in terms of new features or playing strength, but I have put some effort into improving code quality using the excellent Sonar Source tools. Minimal cyclomatic complexity. … Continue reading

Posted in chess4j, Computer Chess, Software Development | Leave a comment

chess4j 1.0 is released!

chess4j is a Java based chess program I’ve been developing in my copious spare time. It’s finally reached a level that I’m comfortable doing an official release. It is not a strong engine; in fact I’ve done almost nothing to … Continue reading

Posted in chess4j, Computer Chess | Leave a comment

A Groovy way to handle user input

Several weeks ago I wrote about Prophet, my C/C++ chess program. I described in that post the approach I was using in the ParseXBoard( ) method to map user input to a “handler function” using a table of function pointers. … Continue reading

Posted in chess4j | Leave a comment