Tucano
Tucano, (TucanoChess)
a Chess Engine Communication Protocol, and since version 8.0, UCI compliant open source engine under the GPL written by Alcides Schulz in C. Tucano was first released in September 2012 [2]. As of version 10, released in January 2022, Tucano uses NNUE evaluation [3].
Contents
Description
Bitboard Infrastructure
Tucano's bitboard infrastructure favors memory versus computation, with the option to gain some linear speedup if that becomes a bottleneck, i.e. using specific processor instructions. However, on recent Intel processors with huge caches, this might be rather insignificant concerning the strength of the engine. Tucano uses magic bitboards to determine sliding piece attacks.
Search
Tucano's search applies PVS alpha-beta with transposition table inside an iterative deepening framework without aspiration windows. Since version 7.00, Tucano performs Lazy SMP using a shared hash table [4].
- Lazy SMP
- Principal Variation Search
- Internal Iterative Deepening at PV-nodes
- Null Move Pruning
- Mate Threat Extensions
- Check Extensions
- Passed Pawn Extensions
- Futility Pruning
- Move Count Based Pruning
- Late Move Reductions
- Killer Heuristic
- History Heuristic
- Static Exchange Evaluation
Evaluation
Starting with the version 10 release in Janauary 2022, Tucano applies NNUE evaluation. The network was trained on about 1.5 billion positions generated by Tucano with handcrafted evaluation at depth 8 using Nodchip's Stockfish NNUE training code, along with probing code from Daniel Shawul's Scorpio NNUE egbbdll library [5].
- NNUE since 10.00
Prior to Tucano 10, the handcrafted evaluation featured most common terms [6] with speculative calculation and aggregation of opening and endgame scores. The final score is interpolated by game phase within a tapered evaluation, with an additional draw adjustment in pawnless endgames.
- Tapered Eval
- Material
- Evaluation of Pieces
- Piece-Square Tables
- Passed Pawn
- Pawn Structure
- King Safety
- Mobility
- Texel's Tuning Method since 7.00
Misc
- Syzygy Bases via Fathom since 8.00
See also
Forum Posts
2012 ...
- Tucano chess engine 1.00 by Alcides Schulz, CCC, September 09, 2012
- Tucano chess engine release 2.00 by Alcides Schulz, CCC, May 12, 2013
- Tucano 3.00 Release by Alcides Schulz, CCC, September 01, 2013
- Tucano 4.00 release by Alcides Schulz, CCC, March 30, 2014
- Tucano 5.00 release by Alcides Schulz, CCC, August 31, 2014
2015 ...
- Tucano 6.00 released ! by Alcides Schulz, CCC, February 14, 2016
- Tucano 7.00 Release - SMP version by Alcides Schulz, CCC, December 16, 2017
- Re: Parallel search/LazySMP question by Alcides Schulz, CCC, December 18, 2017
- Tucano 8.00 release by Alcides Schulz, CCC, October 13, 2019
2020 ...
- Tucano 9.00 by Alcides Schulz, CCC, October 07, 2020
- Tucano 10.00 release - Neural network evaluation by Alcides Schulz, CCC, January 20, 2022
External Links
Chess Engine
- GitHub - alcides-schulz/Tucano: Tucano Chess Engine
- TucanoChess
- Tucano in CCRL 40/15
- Tucano, the Brazilian chess engine, Chessdom, April 21, 2018 » TCEC Season 12
Misc
- Toucan from Wikipedia
- Tucano - Wikipédia.pt (Português)
- Tania Maria, Boto & Helio - Transamazonica, Via Brasil, 1977, YouTube Video
References
- ↑ Keel-billed Toucan (also known as Sulfur-breasted Toucan and the Rainbow-billed Toucan) Faunia, Madrid, Spain, Photo by Raúl Hernández González, April 23, 2009, Wikimedia Commons
- ↑ Tucano chess engine 1.00 by Alcides Schulz, CCC, September 09, 2012
- ↑ Tucano 10.00 release - Neural network evaluation by Alcides Schulz, CCC, January 20, 2022
- ↑ Tucano 7.00 Release - SMP version by Alcides Schulz, CCC, December 16, 2017
- ↑ Tucano/README.md at master · alcides-schulz/Tucano · GitHub
- ↑ Eval development: is it better to tune or add new terms? by Alcides Schulz, CCC, March 17, 2013