Barbarossa

Home * Engines * Barbarossa

[ Barbarossa [1] Barbarossa,

an UCI compliant open source chess engine by Nicu Ionita, first released in Fall 2013 as successor of Abulafia [2] , both written in Haskell [3] [4]. It uses bitboards to represent the board, and magic bitboards [5] to determine sliding piece attacks. Barbarossa applies an alpha-beta search [6] utilizing a transposition table indexed by Zobrist keys, and uses the functional programming concept of monad transformers [7] [8] in continuation passing style to control the search. Some evaluation parameters were tuned by Rémi Coulom’s CLOP, and more recently by MMTO as introduced by Kunihito Hoki and Tomoyuki Kaneko in the domain of Shogi [9] [10]. Discrete SPSA (DSPSA), introduced by Qi Wang [11] was applied in pawn evaluation tuning [12] .

See also

Forum Posts

2012 …

2020 …

Chess Engine

Misc

References

  1. Bust of Friedrich I., “Barbarossa”, gilded bronze, ca. 1160, given to his godfather Count Otto of Cappenberg in 1171. It was used as a reliquary in Cappenberg Abbey, St. Johannes Evangelist Church, Wikimedia Commons
  2. Barbarossa 0.1.0 by Nicu Ionita, CCC, November 24, 2013
  3. Abulafia, chess, Haskell and some (new?) ideas by Nicu Ionita, CCC, April 20, 2012
  4. Haskell (programming language) from Wikipedia
  5. Barbarossa/Magics.hs at master · nionita/Barbarossa · GitHub
  6. Barbarossa/Albeta.hs at master · nionita/Barbarossa · GitHub
  7. Haskell/Monad transformers - Wikibooks
  8. Haskell/Understanding monads - Wikibooks
  9. Kunihito Hoki, Tomoyuki Kaneko (2014). Large-Scale Optimization for Evaluation Functions with Minimax Search. JAIR Vol. 49, pdf
  10. MMTO for evaluation learning by Jon Dart, CCC, January 25, 2015
  11. Qi Wang (2013). Optimization with Discrete Simultaneous Perturbation Stochastic Approximation Using Noisy Loss Function Measurements. Ph.D. thesis, Johns Hopkins University, advisor James C. Spall
  12. DSPSA eval weights for pawns · nionita/Barbarossa@b9ba4de · GitHub

Up one level