Vajolet

Home * Engines * Vajolet



Vajolet and Vajolet2, are UCI compliant open source chess engines by Marco Belli, written in C++ and released under the GNU General Public License v3. Vajolet, named after the Vajolet Towers in the Dolomites, started its life in 2010 as C# engine. When Marco worked through Stef Luijten's tutorial on Winglet, Writing a Chess Program in 99 Steps, he rewrote Vajolet in C++. Vajolet 2.03 played the International Gsei Web Tournament 2013 and qualified for the final of 8 Italian and 8 non Italian engines, where it lost from iCE.

=Vajolet2= Vajolet2, first released in May 2014, was another complete rewrite in C++11. Apparently, Texel's Tuning Method worked well for Vajolet2.

=Description=

Board Representation
Vajolet2 is a bitboard engine and used a kindergarten like technique taken from Winglet to determine sliding piece attacks with 32 KiB precalculated lookup tables[64][64] each on ranks, files, diagonals and anti-diagonals, indexed by square and hashed line occupancy - the inner six bits multiplied by a magic factor and shifted right by the strange looking 57, while 58 is more natural to ensure a six bit index range, but factors are designed that the most significant bit of the 64-bit product will be clear. Since June 2016 with Vajolet2 2.2 sliding piece attacks are determined by Pradu Kannan's implementation of Magic Bitboards. Along with piece lists, Vajolet2 performs a staged legal move generation.

Search
The search uses C++ function templates to distinguish between pure alpha-beta and PVS, for the main search as well for quiescence. Vajolet2 2.1, released in January 2016, applies Lazy SMP. The list of selectivity features is quite huge.

Selectivity

 * Check Extensions
 * Delta Pruning
 * Futility Pruning
 * History Leaf Pruning
 * Late Move Reductions
 * Late Move Pruning
 * Mate Distance Pruning
 * Mate Threat Extensions
 * Multi–ProbCut
 * Null Move Pruning
 * Quiescence Search
 * Razoring
 * Restricted Singular Extensions
 * SEE Pruning
 * Sibling Prediction Pruning
 * Static Null Move Pruning

Move Ordering

 * Principal Variation Extraction
 * Killer Heuristic
 * History Heuristic
 * Internal Iterative Deepening
 * MVV-LVA
 * Static Exchange Evaluation

Transposition Table

 * Zobrist Hashing
 * Four Bucket System
 * Depth-preferred Replacement Scheme

Evaluation

 * Material Balance
 * Mobility
 * Piece-Square Tables
 * Tapered Eval

Pawn Structure

 * Backward Pawn
 * Candidate Passed Pawn
 * Doubled Pawn
 * Isolated Pawn
 * Passed Pawn
 * Pawn Chain

King Safety

 * Pawn Shield
 * Pawn Storm
 * Square Control

Caches

 * Evaluation Cache
 * Material Cache
 * Pawn Cache

Misc

 * Center Control
 * Loose Pieces
 * Number of Pawn Rams as Blockage Indicator
 * and more ...

=Forum Posts=

2010 ...

 * Vajolet Chess Engine by Marco Belli, CCC, May 27, 2010
 * Re: Test 071112 by Marco Belli, CCC, November 10, 2012
 * vajolet 2.03 release by Marco Belli, CCC, May 12, 2013
 * vajolet 2.48 released by Marco Belli, CCC, November 21, 2013
 * floating point SSE eval by Marco Belli, CCC, December 13, 2013 » Evaluation, Float, Score
 * where can I make my engine play against human? by Marco Belli, CCC, February 16, 2014
 * Vajolet2 released by Marco Belli, CCC, March 29, 2014
 * vajolet2 1.43 released by Marco Belli, CCC, July 22, 2014
 * advanced tapered evalutation by Marco Belli, CCC, August 08, 2014 » SSE, Tapered Eval
 * vajolet2 1.45 release by Marco Belli, CCC, August 15, 2014

2015 ...

 * Vajolet2 2.0 released by Marco Belli, CCC, April 21, 2015
 * Vajolet 2.1 released by Marco Belli, CCC, January 01, 2016
 * Vajolet, new version 2.2 by Marco Belli, CCC, June 19, 2016
 * vajolet2 2.3 release by Marco Belli, CCC, February 28, 2017
 * Vajolet2 2.4 Release by Marco Belli, CCC, November 19, 2017
 * Vajolet2 2.5 Release by Marco Belli, CCC, January 25, 2018
 * Vajolet2 2.6 Release by Marco Belli, CCC, June 26, 2018
 * Vajolet2 2.7 release by Marco Belli, CCC, April 03, 2019
 * Vajolet2 2.8 release by Marco Belli, CCC, November 01, 2019

=External Links=

Chess Engine

 * GitHub - elcabesa/vajolet
 * vajolet chess engine - Google Project Hosting
 * vajoletChess Blog
 * Vajolet « G 6
 * Vajolet in CCRL 40/40
 * Vajolet in CCRL 40/4

Misc

 * Vajolet Towers from Wikipedia
 * Torri del Vajolet / Vajolet Towers : Climbing, Hiking & Mountaineering : SummitPost
 * Vajolet Towers by Dietrich Belitz, July 29, 2004
 * Rosengarten group from Wikipedia

=References= Up one Level