RODIN v8.0

'Rodin' Chess Engine by Fermin Serrano. Madrid, Spain
------------------------------------------------------
Engine version: 8.0
Release date : 7-Feb-2016
Download v8.0 and old versions: End of this page.

Table of Contents:
---------------------------------------
1) Introduction and history.
2) General description.
3) Future plans
4) Running Rodin. System requirements.
5) Known problems.
6) License.
7) Credits.
8) Version history.


1) INTRODUCTION AND HISTORY
---------------------------------------

I have been a chess enthusiast since I was 5 years old. I am a computer science engineer who likes programming, so a few years ago I decided to write a chess engine. This was around 10 or 11 years ago, and that engine was based on the fantastic TSCP engine. It was a very educational experience. Now I have
been programming Rodin from seven years now. I hope this engine could be interesting to you.

Rodin is written in C. I have used CodeBlocks with MinGW, as it is free and very good compiler.

At the moment, Rodin has improved his play from previous versions. It plays a decent and enjoyable game. I estimate it has around 2600 ELO in accordance with CCRL 40/40 rating list (based on my own tests).

If you want to stay tuned about the release of new versions of the engine, please contact me by email at clonfsp<at>gmail.com and let me know.


2) GENERAL DESCRIPTION
---------------------------------------

Rodin has the following features:

- Magic moves bitboard generator. Own implementation (previous version it was to Pradu Kannan's).
- Alpha-Beta search.
- PVS.
- Null Move Pruning.
- MVV/LVA move ordering, combined with a (slow) SEE move ordering
- Hash Table.
- Pawn Hash Table.
- History and killers heuristics for move ordering.
- Extensions and reductions..
- Tapered eval.
- Evals function takes into account mobility, king security, pawn
formations, piece placement and other minor considerations ....
- Support for winboard protocol and ponder.
- Tested with Winboard.
- Algebraic (Nf3) and coordinate (g1f3) notation support.
- Native EPD Suites support.
- Own book based on Polyglot file format.
- Bitbases support. Thanks to Daniel Shawul.
- Book learning (disabled by default), but this code is not fully tested and can have bugs.
- Draw offers.
- Material imbalance tables.
- Detection of draws by perpetual check.
- Personalities.

3) FUTURE PLANS
---------------------------------------

These are the features I would like to develop in the future (roadmap), in no special order:

- Fix bugs
- Better UCI support (Currently may has bugs).
- Improve the eval function (chess knowledge).
- Improve optimization and code speed.
- Improve the time management module.
- Multithread.
- An many other ideas I have
......


4) RUNNING Rodin. SYSTEM REQUERIMENTS
---------------------------------------

The Rodin "package" cames with the following files:

- Rodin.exe          -> This is the Windows OS engine.
- Rodin_ARM -> This is the ARM-Linux OS engine.
- Rodin_Android      -> This is the Android OS engine.
- Rodin.cfg          -> Configuration file.
- readme.txt         -> This file.
- book_file_v1.1.bin -> Opening book file.
- logo.bmp           -> Rodin logo in bmp format.
- logo.jpg           -> Rodin logo in jpq format.

Rodin is a winboard engine. I have test it with Winboard/Xboard 4.7.3
UCI support is implemented but it may has bugs and I have noted a decrease in
playing strength, so I would recommend using xboard.

You can download winboard from the Winboard forum
at http://www.open-aurec.com/wbforum/viewtopic.php?f=19&t=51528

To play against the program, under winboard, the command line is:
winboard /cp /fcp Rodin.exe

There is a configuration "cfg" file that cames with Rodin. The
content of the file has comments that explain different features
to configure the engine.


5) KNOWN PROBLEMS
---------------------------------------

Maybe some. If you see one, please, let me know.


6) LICENSE
---------------------------------------

Rodin is provided "as is". No warranty is provided, although I will
do what I can if you have issues running the engine.

You may redistribute unmodified executables freely as long as this
readme file remains with the executables.


7) CREDITS
---------------------------------------

I am very grateful to the following people (among others!):

- My family. They are always there....
- My wife Susana for her love and support.
- Programmers of the CC Forum (http://www.talkchess.com).
- Tom Kerrigan for his didactic(learning) TCSP engine. Was my first inspiration, altought the current version has none from it.
- Bruce Moreland and his excellent guide: http://web.archive.org/web/20070707012511/http://www.brucemo.com/compchess/programming/index.htm
- Andres Valverde, Pedro Castro and Sergio Martínez, for his support.
- Daniel Shawul for bitbases.
- My chess club colleagues.
- Users of the http://www.cprogramming.com forum.


8) VERSIONS HISTORY
---------------------------------------

*** Feb 2015

8.0 : Tenth release
- Own magics.
- Eval and search improvements (lots of them).
- Bug fixes.
- Learning.
- Personalities.


*** May 2014

7.0 : Nineth release
- Eval tuned.
- Better time management.
- Improves in some search parts.
- Speed optimizations.


*** Apr 2013

6.0 : Eighth release.
- Eval tuned.
- Better time management.
- Improves in some search parts.
- Speed optimizations.
- New move ordering function.
- Book learning (not fully tested, can have bugs).

*** Sep 2012

5.1 : Bug fix, altought can continue crashing as it looks like a compiler bug.

5.0 : Seventh release.
- More chess knowledge added to eval function.
- Better time management.
- Improves in some search parts.
- Speed optimizations.

*** Jul 2011

4.0 : Sixth release.
- Changes in internal data structures.
- Tappered eval.
- More chess knowledge added to eval function.
- Improves in extensions and reductions.
- Opening book based on polyglot file format. Own book.
- Speed optimizations.

*** Apr 2010

3.0 : New release stronger than before
- Tunning of lots of parameters and variables to increase strenght.
- Ponder bug fix.
- New chess knowledge.
- Delete parts which dont make any good to the results.
- New comand 'skill" to reduce playing strenght.
- New 'eval' command shows positional features score.
- Small tweaks.
- New web site and logo.

*** Ago 2009

2.3a : Fourth release
- Transposition table bug fix
- Opponent fast response bug fix
- Pawn hash table
- Evaluation function re-writed.
- New chess knowledge.

*** Apr 2009

2.1h : Temporary release for playing in Chesswar, not publically available.
- Time management bug fix and routine improvement.
- Adjust bishop pair score

2.1b : Third release. Main features:
- Bugs fix
- New chess knowledge
- Ponder
- Speed code improvements.
- Delete counterproductive code.

*** Nov 2008

1.17 : Second release. Main updates:
- Bugs fix.
- New chessknowledge.
- Delta pruning and lazy-eval improve.
- Better opening phase detection routine.

*** Aug 2008

1.14 : This is the first version of the engine. It has no many features but it can play a decent game.

I hope you enjoy using Rodin as much as I enjoy writing it!
Thanks

Fermin Serrano
clonfsp<at>gmail.com 
http://sites.google.com/site/clonfsp/
ċ
Rodin_v5.1.zip
(1007k)
Fermin,
21 sept. 2012 9:27
ċ
Rodin_v6.0.zip
(1050k)
Fermin,
25 abr. 2013 10:24
ċ
Rodin_v7.0.zip
(1023k)
Fermin,
12 may. 2014 9:14
ċ
Rodin_v8.0.zip
(1332k)
Fermin,
7 feb. 2016 2:08
Comments