Your trusted source for computer chess information!

Differences

This shows you the differences between two versions of the page.

computer_chess:engines:frank-walter:index 2018/11/15 17:49 computer_chess:engines:frank-walter:index 2019/02/24 12:33 current
Line 1: Line 1:
====== Frank-Walter ====== ====== Frank-Walter ======
-Frank-Walter is a winboard/xboard chess engine written in Java.+**FrankWalter has moved!** 
 + 
 +Please visit the new **[[https://github.com/ljgw/frankwalter/releases | FrankWalter homepage]].** 
 + 
 +This page remains for historical reasons and may be removed in the future. 
 + 
 +--- 
 + 
 +Frank-Walter is a java-based winboard/xboard chess engine written by Laurens Winkelhagen. 
 +\\ 
 +Current version is Frank-Walter 2.2.8-e85fcb4
===== Download ===== ===== Download =====
 +{{frankwalter-2.2.8-dist.zip | Frank-Walter 2.2.8}}
 +\\
 +{{frankwalter-2.2.6-dist.zip | Frank-Walter 2.2.6}}
 +\\
 +{{frankwalter-2.2.3-dist.zip | Frank-Walter 2.2.3}}
 +\\
 +{{frankwalter-2.2.2-dist.zip | Frank-Walter 2.2.2}}
 +\\
===== Usage ===== ===== Usage =====
-Frank-Walter is a java chess engine that requires java 8 or higher to work. Java can be downloaded from https:%%//%%www.java.com/. The engine can be started with the command ''%%java -jar frankwalter.jar <options>%%'' where ''%%<options>%%'' are optional commandline parameters.+Frank-Walter is a java chess engine that requires java 8 or higher to work. Java can be downloaded from https://www.java.com. The engine can be started with the command ''%%java -jar frankwalter.jar <options>%%'' where ''%%<options>%%'' are optional commandline parameters.
Currently the following commandline parameters are available Currently the following commandline parameters are available
  * ''%%-debug%%'' (no arguments, causes logging to be stored in a file called ''%%debug.log%%'' in the current working directory)   * ''%%-debug%%'' (no arguments, causes logging to be stored in a file called ''%%debug.log%%'' in the current working directory)
-  * ''%%-tt <magnitude>%%'' (where ''%%<magnitude>%%'' is a number between 17 and 26 inclusive denoting 1MB up to 1GB memory allocation for the transposition table. The default is 24, which means 256MB)+  * ''%%-nobook%%'' (no arguments, tells the engine not to use its own book) 
 +  * ''%%-book <bookname>%%'' (''%%<bookname>%%'' should be the filename of an openingbook in Beowulf format, located next to the .jar file. The default is ''%%frankwalter.opening%%'' which is included in the engine itself) 
 +  * ''%%-tt <size>%%'' (where ''%%<size>%%'' is the size is the size of the TranspositionTable in mb or gb. Possible values are 1mb, 2mb, 4mb, 8mb, 16mb, 32mb, 64mb, 128mb, 256mb, 512mb, 1gb. The default is 256mb)
  * ''%%-tb <tablebases filepath>%%'' (here ''%%<tablebases filepath>%%'' is the Syzygy-tablebases directory. It is also possible to configure this in xboard)   * ''%%-tb <tablebases filepath>%%'' (here ''%%<tablebases filepath>%%'' is the Syzygy-tablebases directory. It is also possible to configure this in xboard)
Line 21: Line 41:
  * Principle Variation Search with aspiration window.   * Principle Variation Search with aspiration window.
  * Mostly Piece-Square value based evaluation (tuned using texels tuning method)   * Mostly Piece-Square value based evaluation (tuned using texels tuning method)
-  * Easy to understand opening-book format +  * Easy to understand opening-book format (Beowulf format: use your own by adding a frankwalter.openings file next to the .jar file) 
-  * Syzygy Tablebases support (dependant on platform: I have only compiled the native code for linux)+  * Syzygy Tablebases support (dependant on platform: I have only compiled the native code for linux and windows)
===== Syzygy Tablebases ===== ===== Syzygy Tablebases =====
-This java program makes use of Syzygy Tablebases via the Java Syzygy-Bridge: a modification of the Fathom c/c++ program, in combination with a java library that can use this native library. Due to practical constraints, there is only a linux version of the JSyzygy library available. In order to use Syzygy tablebases, the file libJSyzygy.so should be placed next to the frankwalter.jar file, or in the java library directory. The Syzygy tablebases themselves can be generated locally, or downloaded from the internet.+This java program makes use of Syzygy Tablebases via the Java Syzygy-Bridge: a modification of the Fathom c program, in combination with a java library that can use this native library. Due to practical constraints there is no apple macintosh version of the JSyzygy library available. In order to use Syzygy tablebases, the file libJSyzygy.so (linux) or JSyzygy.dll (windows) should be placed next to the frankwalter.jar file, or in a java library directory. The Syzygy tablebases themselves can be generated locally, or downloaded from the internet. 
 + 
 +It should be possible to compile the JSyzygy library on MacOs (and name it libJSyzygy.jnilib I suppose), but I don't have the means nor the experience to test this myself. The JSyzygy library can be compiled of my fork of basil00's Fathom program, located in github: https://github.com/ljgw/Fathom. 
===== Acknowledgements ===== ===== Acknowledgements =====
Line 33: Line 56:
  * Working with magic bitboards and kindergarten bitboards it is hard not to acknowledge Gerd Isenberg, Pradu Kannan en Lasse Hansen.   * Working with magic bitboards and kindergarten bitboards it is hard not to acknowledge Gerd Isenberg, Pradu Kannan en Lasse Hansen.
 +  * The openingbook format is the Beowulf-format. Principle author Colin Frayn also provided the basic book, used with permission.
  * Texels Tuning Method was developed by Peter Österlund, I have made use of the positions provided by the authors of Zurichess (quiet-labeled.epd)   * Texels Tuning Method was developed by Peter Österlund, I have made use of the positions provided by the authors of Zurichess (quiet-labeled.epd)
  * Syzygy Tablebases were developed by Ronald de Man. Basil00 made a c/c++ library for easy integration in c/c++ projects. I’ve taken the fork of Jon Dart and integrated in my Java program via JNI.   * Syzygy Tablebases were developed by Ronald de Man. Basil00 made a c/c++ library for easy integration in c/c++ projects. I’ve taken the fork of Jon Dart and integrated in my Java program via JNI.

Personal Tools