Carballo Chess Engine
Here you can play chess against Carballo Chess Engine. Try also Carballo Chess for Android.
Carballo (the galician word for Oak, well it’s all about trees) is an Open Source Java chess engine hosted at http://sourceforge.net/projects/carballo/, where you can download a UCI binary to play in interfaces like Arena.
Has the following features:
- Simple and clear code (has 5000 lines aprox. excluding tests)
- Maven source code organization
- JUnit used for testing, multiple test suites provided (Perft, BT2630, LCTII, WAC, etc.)
- Based on Bitboards (not so complicated as other people say)
- State-of-the-art magic bitboard move generator (doubles the basic move generator speed!), also code for magic number generation
- Negamax searcher
- Iterative deepening
- Aspiration window, moves only one border of the window if falls out
- Transposition table with Zobrist Keys (two zobrist keys per board, to avoid collisions) and multiprobe/two tier
- Quiescent search with only good captures (acording to SEE) and limited check generation
- Move sorting: two killer move slots, SEE, MVV/LVA and history heuristic
- Also Internal Iterative Deepening to improve sorting
- Fractional Extensions: check, pawn push, mate threat, recapture (4 = 1PLY)
- Reductions: Late Move Reductions (LMR) based on SEE
- Pruning: Null Move, Futility Pruning
- Polyglot Opening Book support; in the code I include Fruit’s Small Book
- FEN notation import/export support, also EPD support for testing
- Pluggable evaluator function, distinct functions provided: the Simplified Evaluator Function, other Complete and other Experimental
- Parametrizable evaluator (only the complete & experimental evaluators)
- Contempt factor
- Cute drag and drop Applet GUI, to fit in web sites
- Also UCI interface with UCI options
It scores about 2330 ELO points at BT2630 tests in my Core2 Duo@2.2GHz. Also solves 275 positions of the 300 WinAtChess test (5 seconds for each).
It is licensed under GPL, and you are free to use, distribute or modify the code but I ask for a mention to the original author and/or a link to my blog. I also put links in my source code to webs were I found information for coding.
I made a Java Engines Tournament to compare Carballo against other chess engines at tournament time 5 minutes. Here are the results:
Engine Score Me Fr Al Ca Br Ar Ch JC Fr Ta S-B
01: Mediocre_034 41,0/45 ····· 11101 0111= 1=1=1 11111 1=111 11111 11111 11111 11111 791,50
02: Frank W. 36,5/45 00010 ····· =1101 ==111 11=11 1111= 10111 11111 11111 11111 658,75
03: Alf109 36,0/45 1000= =0010 ····· 11=11 11011 11111 1111= 11111 11111 11111 627,25
04: Carballo-0.3 27,0/45 0=0=0 ==000 00=00 ····· 11=0= =1=10 1111= 11101 11111 11111 406,00
05: Bremboce 25,5/45 00000 00=00 00100 00=1= ····· 11111 11111 11111 0==== 11111 383,75
06: ArabianKnight 22,0/45 0=000 0000= 00000 =0=01 00000 ····· 01111 11111 11111 11111 262,75
07: Cheoss0649 15,0/45 00000 01000 0000= 0000= 00000 10000 ····· 0111= 1==1= 11111 176,00
08: JChecs 9,5/45 00000 00000 00000 00010 00000 00000 1000= ····· 1=1=1 ==1== 93,50
09: Frittle-0.3 6,5/45 00000 00000 00000 00000 1==== 00000 0==0= 0=0=0 ····· 00001 114,50
10: Talvmenni 6,0/45 00000 00000 00000 00000 00000 00000 00000 ==0== 11110 ····· 45,00
225 games played / Tournament is finished
Name of the tournament: JavaEnginesTournament
Site/ Country: JDEDEVELOPER5, España
Level: Tournament Game in 5 Minutes
Hardware: Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz 2200 MHz with 752 MB Memory
Operating system: Microsoft Windows XP Professional Service Pack 2 (Build 2600)
Entries (RSS)