Older Version
Newer Version
GerdIsenberg
Jan 25, 2018
**[[Home]] * [[Engines]] * Vajolet** || [[image:320px-Torri_del_Vaiolet.JPG link="http://en.wikipedia.org/wiki/File:Torri_del_Vaiolet.JPG"]] ||~ || **Vajolet** and **Vajolet2**, are [[UCI]] compliant [[Open Source Engines|open source chess engines]] by [[Marco Belli]], written in [[Cpp|C++]] and released under the [[Free Software Foundation#GPL|GNU General Public License v3]]. Vajolet, named after the [[https://en.wikipedia.org/wiki/Vajolet_Towers|Vajolet Towers]] in the [[https://en.wikipedia.org/wiki/Dolomites|Dolomites]], started its life in 2010 as [[C sharp|C#]] engine <ref>[[http://www.talkchess.com/forum/viewtopic.php?t=34545|Vajolet Chess Engine]] by [[Marco Belli]], [[CCC]], May 27, 2010</ref>. When Marco worked through [[Stef Luijten|Stef Luijten's]] tutorial on [[Winglet]], //Writing a Chess Program in 99 Steps// <ref>[[http://web.archive.org/web/20120621100214/http://www.sluijten.com/winglet/|Winglet, Writing a Chess Program in 99 Steps]] by [[Stef Luijten]], [[http://en.wikipedia.org/wiki/Wayback_Machine|Wayback Machine]]</ref> <ref>[[http://www.talkchess.com/forum/viewtopic.php?t=38787|Writing a chess program in xx steps]] by [[Stef Luijten]], [[CCC]], April 18, 2011</ref>, he rewrote Vajolet in [[Cpp|C++]] <ref>[[http://www.talkchess.com/forum/viewtopic.php?t=52709&start=18|Re: where to start chess programming?]] by [[Marco Belli]], [[CCC]], June 22, 2014</ref>. Vajolet 2.03 played the [[IGWT 2013|International Gsei Web Tournament 2013]] and qualified for the final of 8 Italian and 8 non Italian engines, where it lost from [[iCE]]. || || [[https://en.wikipedia.org/wiki/Vajolet_Towers|Vajolet Towers]] <ref>The Torri del Vaiolet in the [[https://en.wikipedia.org/wiki/Dolomites|Dolomites]], [[https://en.wikipedia.org/w/index.php?title=Fassa_Valley|Fassa Valley]], [[https://en.wikipedia.org/wiki/Trentino|Trentino]], [[https://en.wikipedia.org/wiki/Italy|Italy]], seen descending from the [[https://it.wikipedia.org/wiki/Rifugio_Passo_Santner|Rifugio Passo Santner]]. In the bottom at the right the [[https://it.wikipedia.org/wiki/Rifugio_Re_Alberto|Rifugio Re Alberto]], Photo by [[http://commons.wikimedia.org/wiki/User:Vincenzo_Gianferrari_Pini|Vincenzo Gianferrari Pini]], August 8, 2000, [[https://en.wikipedia.org/wiki/Vajolet_Towers|Vajolet Towers from Wikipedia]]</ref> ||~ ||^ || [[toc]] =Vajolet2= [[#2]]**Vajolet2**, first released in May 2014, was another complete rewrite in [[Cpp#11|C++11]] <ref>[[http://www.talkchess.com/forum/viewtopic.php?t=51786|Vajolet2 released]] by [[Marco Belli]], [[CCC]], March 29, 2014</ref>. Apparently, [[Texel's Tuning Method]] worked well for Vajolet2 <ref>[[http://www.talkchess.com/forum/viewtopic.php?t=51786&start=22|Re: Vajolet2 released]] by [[Marco Belli]], [[CCC]], March 31, 2014</ref>. =Description= ==Board Representation== Vajolet2 is a [[Bitboards|bitboard]] engine and used a [[Kindergarten Bitboards|kindergarten like]] technique taken from [[Winglet]] <ref>[[http://web.archive.org/web/20120621060943/http://www.sluijten.com/winglet/11movegen03.htm#Move_generation_for_sliding_pieces_-_magic_bitboards_|Writing a chess program in 99 steps - Move generation for sliding pieces]] by [[Stef Luijten]], [[http://en.wikipedia.org/wiki/Wayback_Machine|Wayback Machine]]</ref> to determine [[Sliding Piece Attacks|sliding piece attacks]] with 32 [[https://en.wikipedia.org/wiki/Kibibyte|KiB]] precalculated lookup tables[64][64] each on [[Ranks|ranks]], [[Files|files]], [[Diagonals|diagonals]] and [[Anti-Diagonals|anti-diagonals]], indexed by [[Squares|square]] and hashed line [[Occupancy|occupancy]] - the [[First Rank Attacks#TheOuterSquares|inner six bits]] multiplied by a [[Magic Bitboards|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 <ref>see Macros RANKATTACKS, FILEATTACKS, SLIDEA8H1ATTACKS, SLIDEA1H8ATTACKS, etc. in [[https://code.google.com/p/vajolet2/source/browse/movegen.h|vajolet2/source/browse/movegen.h]], or inline functions attackFromRook and attackFromBishop in the more recent [[https://code.google.com/p/vajolet/source/browse/movegen.h|vajolet/source/browse/movegen.h]]</ref>. Since June 2016 with Vajolet2 2.2 [[Sliding Piece Attacks|sliding piece attacks]] are determined by [[Pradu Kannan|Pradu Kannan's]] implementation of [[Magic Bitboards]]. Along with [[Piece-Lists|piece lists]], Vajolet2 performs a [[Move Generation#Staged|staged]] [[Move Generation#Legal|legal move generation]] <ref>[[http://vajoletchess.blogspot.it/2013/11/first-achievement-move-generator.html|first achievement: MOVE GENERATOR]]</ref>. ==Search== The [[Search|search]] uses C++ [[https://en.wikipedia.org/wiki/Template_%28C%2B%2B%29#Function_templates|function templates]] to distinguish between pure [[Alpha-Beta|alpha-beta]] and [[Principal Variation Search|PVS]], for the main search as well for [[Quiescence Search|quiescence]]. Vajolet2 2.1, released in January 2016, applies [[Lazy SMP]] <ref>[[http://www.talkchess.com/forum/viewtopic.php?t=58762|Vajolet 2.1 released]] by [[Marco Belli]], [[CCC]], January 01, 2016</ref>. The list of [[Selectivity|selectivity]] features is quite huge. ===Selectivity=== * [[Check Extensions]] * [[Delta Pruning]] * [[Futility Pruning]] * [[History Leaf Pruning]] * [[Late Move Reductions]] * [[Futility Pruning#MoveCountBasedPruning|Late Move Pruning]] * [[Mate Distance Pruning]] * [[Mate Threat Extensions]] * [[ProbCut#MPC|Multi–ProbCut]] * [[Null Move Pruning]] * [[Quiescence Search]] * [[Razoring]] * [[Singular Extensions#RestrictedSE|Restricted Singular Extensions]] * [[Static Exchange Evaluation|SEE Pruning]] * [[Sibling Prediction Pruning]] * [[Reverse Futility Pruning|Static Null Move Pruning]] ===[[Move Ordering]]=== * [[Principal Variation|Principal Variation Extraction]] * [[Killer Heuristic]] * [[History Heuristic]] * [[Internal Iterative Deepening]] * [[MVV-LVA]] * [[Static Exchange Evaluation]] ===[[Transposition Table]]=== * [[Zobrist Hashing]] * [[Transposition Table#Bucket|Four Bucket System]] * [[Transposition Table#ReplacementStrategies|Depth-preferred Replacement Scheme]] ==[[Evaluation]]== * [[Material#Balance|Material Balance]] * [[Mobility]] * [[Piece-Square Tables]] * [[Tapered Eval]] ===[[Pawn Structure]]=== * [[Backward Pawn]] * [[Candidate Passed Pawn]] * [[Doubled Pawn]] * [[Isolated Pawn]] * [[Passed Pawn]] * [[Pawn chain|Pawn Chain]] ===[[King Safety]]=== * [[King Safety#PawnShield|Pawn Shield]] * [[King Safety#PawnStorm|Pawn Storm]] * [[King Safety#SquareControl|Square Control]] ===[[Hash Table|Caches]]=== * [[Evaluation Hash Table|Evaluation Cache]] * [[Material Hash Table|Material Cache]] * [[Pawn Hash Table|Pawn Cache]] ===Misc=== * [[Center Control]] * [[Loose Piece|Loose Pieces]] * [[Pawn Rams (Bitboards)|Number of Pawn Rams]] as [[Blockage Detection|Blockage Indicator]] > and more ... =See also= * [[Various Classifications#Geography|Geography]] =Forum Posts= ==2010 ...== * [[http://www.talkchess.com/forum/viewtopic.php?t=34545|Vajolet Chess Engine]] by [[Marco Belli]], [[CCC]], May 27, 2010 * [[http://www.talkchess.com/forum/viewtopic.php?t=45918&start=4|Re: Test 071112]] by [[Marco Belli]], [[CCC]], November 10, 2012 * [[http://www.talkchess.com/forum/viewtopic.php?t=47974|vajolet 2.03 release]] by [[Marco Belli]], [[CCC]], May 12, 2013 * [[http://www.talkchess.com/forum/viewtopic.php?t=50170|vajolet 2.48 released]] by [[Marco Belli]], [[CCC]], November 21, 2013 * [[http://www.talkchess.com/forum/viewtopic.php?t=50472|floating point SSE eval]] by [[Marco Belli]], [[CCC]], December 13, 2013 » [[Evaluation]], [[Float]], [[Score]] * [[http://www.talkchess.com/forum/viewtopic.php?t=51302|where can I make my engine play against human?]] by [[Marco Belli]], [[CCC]], February 16, 2014 * [[http://www.talkchess.com/forum/viewtopic.php?t=51786|Vajolet2 released]] by [[Marco Belli]], [[CCC]], March 29, 2014 * [[http://www.talkchess.com/forum/viewtopic.php?t=53048|vajolet2 1.43 released]] by [[Marco Belli]], [[CCC]], July 22, 2014 * [[http://www.talkchess.com/forum/viewtopic.php?t=53220|advanced tapered evalutation]] by [[Marco Belli]], [[CCC]], August 08, 2014 » [[SSE]], [[Tapered Eval]] * [[http://www.talkchess.com/forum/viewtopic.php?t=53299|vajolet2 1.45 release]] by [[Marco Belli]], [[CCC]], August 15, 2014 ==2015 ...== * [[http://www.talkchess.com/forum/viewtopic.php?t=56086|Vajolet2 2.0 released]] by [[Marco Belli]], [[CCC]], April 21, 2015 * [[http://www.talkchess.com/forum/viewtopic.php?t=58762|Vajolet 2.1 released]] by [[Marco Belli]], [[CCC]], January 01, 2016 * [[http://www.talkchess.com/forum/viewtopic.php?t=60535|Vajolet, new version 2.2]] by [[Marco Belli]], [[CCC]], June 19, 2016 * [[http://www.talkchess.com/forum/viewtopic.php?t=63301|vajolet2 2.3 release]] by [[Marco Belli]], [[CCC]], February 28, 2017 * [[http://www.talkchess.com/forum/viewtopic.php?t=65770|Vajolet2 2.4 Release]] by [[Marco Belli]], [[CCC]], November 19, 2017 * [[http://www.talkchess.com/forum/viewtopic.php?t=66412|Vajolet2 2.5 Release]] by [[Marco Belli]], [[CCC]], January 25, 2018 =External Links= ==Chess Engine== * [[https://github.com/elcabesa/vajolet/|GitHub - elcabesa/vajolet]] * [[https://code.google.com/p/vajolet/|vajolet chess engine - Google Project Hosting]] * [[http://vajoletchess.blogspot.it/|vajoletChess Blog]] * [[http://www.g-sei.org/category/chess-engines/vajolet/|Vajolet]] « [[G 6]] * [[http://www.computerchess.org.uk/ccrl/4040/cgi/compare_engines.cgi?family=Vajolet&print=Rating+list&print=Results+table&print=LOS+table&print=Ponder+hit+table&print=Eval+difference+table&print=Comopp+gamenum+table&print=Overlap+table&print=Score+with+common+opponents|Vajolet]] in [[CCRL|CCRL 40/40]] * [[http://www.computerchess.org.uk/ccrl/404/cgi/compare_engines.cgi?family=Vajolet&print=Rating+list&print=Results+table&print=LOS+table&print=Ponder+hit+table&print=Eval+difference+table&print=Comopp+gamenum+table&print=Overlap+table&print=Score+with+common+opponents|Vajolet]] in [[CCRL|CCRL 40/4]] ==Misc== * [[https://en.wikipedia.org/wiki/Vajolet_Towers|Vajolet Towers from Wikipedia]] * [[http://www.summitpost.org/torri-del-vajolet-vajolet-towers/150951|Torri del Vajolet / Vajolet Towers : Climbing, Hiking & Mountaineering : SummitPost]] * [[http://physics-server.uoregon.edu/~belitz/db_virtual/db_climbing/peaks/vajolet_towers.html|Vajolet Towers]] by [[http://physics-server.uoregon.edu/~belitz/|Dietrich Belitz]], July 29, 2004 * [[https://en.wikipedia.org/wiki/Rosengarten_group|Rosengarten group from Wikipedia]] =References= <references /> =What links here?= [[include page="Vajolet" component="backlinks" limit="40"]] **[[Engines|Up one Level]]**