Difference between revisions of "Seer"

From Chessprogramming wiki
Jump to: navigation, search
 
(12 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
an [[UCI]] compliant [[:Category:Open Source|open source chess engine]] by [[Connor McMonigle]], written in [[Cpp|C++]],  
 
an [[UCI]] compliant [[:Category:Open Source|open source chess engine]] by [[Connor McMonigle]], written in [[Cpp|C++]],  
 
licensed under the [[Free Software Foundation#GPL|GNU GPL]] and first released in October 2020.  
 
licensed under the [[Free Software Foundation#GPL|GNU GPL]] and first released in October 2020.  
Seer uses a custom [[NNUE]] implementation with training code written in [https://en.wikipedia.org/wiki/PyTorch PyTorch] and inference code relying on [https://en.wikipedia.org/wiki/OpenMP OpenMP] [[SIMD and SWAR Techniques|SIMD]] for auto vectorization <ref>[https://github.com/connormcmonigle/seer-nnue GitHub - connormcmonigle/seer-nnue: UCI chess engine using NNUE for position evaluation]</ref>.
+
Seer uses a custom [[NNUE]] implementation based on [[Float|32-bit float]] weights with training code written in [https://en.wikipedia.org/wiki/PyTorch PyTorch] and inference code relying on [https://en.wikipedia.org/wiki/OpenMP OpenMP] [[SIMD and SWAR Techniques|SIMD]] for auto vectorization <ref>[https://github.com/connormcmonigle/seer-nnue GitHub - connormcmonigle/seer-nnue: UCI chess engine using NNUE for position evaluation]</ref>.
 +
Due to [[BMI2#PEXTBitboards|PEXT Bitboards]], Seer requires [[BMI2]] for a reasonable performance, as well as either [[SSE]], [[AVX]], [[AVX2]] or [[AVX-512]] to calculate the NNUE. More recently, Seer supports [[ARM NEON]] via '''sse2neon''' <ref>[https://github.com/DLTcollab/sse2neon GitHub - DLTcollab/sse2neon: A translator from Intel SSE intrinsics to Arm/Aarch64 NEON implementation]</ref> to run on many [[Android]] devices  <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77187&start=32 Re: Seer 2.0.0] by Archimedes, [[CCC]], August 06, 2021</ref>.
  
 
=Features=
 
=Features=
Line 23: Line 24:
 
* [[Move Ordering]]
 
* [[Move Ordering]]
 
** [[Static Exchange Evaluation|SEE]] for [[Captures]]
 
** [[Static Exchange Evaluation|SEE]] for [[Captures]]
 +
** [[Killer Heuristic]]
 
** [[History Heuristic]]
 
** [[History Heuristic]]
 
** [[History Heuristic#CMHist|Counter Moves History]]
 
** [[History Heuristic#CMHist|Counter Moves History]]
Line 39: Line 41:
 
* [[Oracle]]
 
* [[Oracle]]
 
* [[Prophet]]
 
* [[Prophet]]
 +
* [[Minic#Minic 3|Minic 3]]
  
 
=Forum Posts=
 
=Forum Posts=
 +
==2020==
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72613&start=427 Re: New engine releases 2020] by [[Connor McMonigle]], [[CCC]], October 18, 2020
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72613&start=427 Re: New engine releases 2020] by [[Connor McMonigle]], [[CCC]], October 18, 2020
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=75433 Seer] by [[Gerd Isenberg]], [[CCC]], October 18, 2020
 +
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=75433&start=58 Re: Seer] by [[Connor McMonigle]], [[CCC]], November 02, 2020 » Seer 1.1
 +
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=75433&start=109 Re: Seer] by [[Connor McMonigle]], [[CCC]], November 18, 2020 » Seer 1.2
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72613&start=469 Re: New engine releases 2020] by [[Connor McMonigle]], [[CCC]], November 02, 2020
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=75665&start=9 Re: Minic version 3] by [[Connor McMonigle]], [[CCC]], November 03, 2020 » [[Minic#Minic 3|Minic 3]] <ref>[[Gao Huang]], [[Zhuang Liu]], [[Laurens van der Maaten]], [[Kilian Q. Weinberger]] ('''2016'''). ''Densely Connected Convolutional Networks''. [https://arxiv.org/abs/1608.06993 arXiv:1608.06993]</ref>
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=75890&start=6 Re: Speculations about NNUE development (was New engine releases 2020)] by [[Connor McMonigle]], [[CCC]], November 12, 2020 » [[Dragon by Komodo Chess]], [[Halogen]]
 +
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=75890&start=9 Re: Speculations about NNUE development (was New engine releases 2020)] by [[Connor McMonigle]], [[CCC]], November 12, 2020
 +
==2021 ...==
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77187 Seer 2.0.0] by [[Connor McMonigle]], [[CCC]], April 27, 2021
 +
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77187&start=32 Re: Seer 2.0.0] by Archimedes, [[CCC]], August 06, 2021 » Seer 2.2.0 for [[Android]]
 +
: [https://www.talkchess.com/forum3/viewtopic.php?f=2&t=77187&start=60 Re: Seer 2.0.0] by [[Connor McMonigle]], [[CCC]], April 25, 2022 » Seer 2.5.0
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77503&start=55 Re: will Tcec allow Stockfish with a Leela net to play?] by [[Connor McMonigle]], [[CCC]], June 17, 2021 » [[NNUE]]
  
 
=External Links=
 
=External Links=
 
==Chess Engine==
 
==Chess Engine==
 
* [https://github.com/connormcmonigle/seer-nnue GitHub - connormcmonigle/seer-nnue: UCI chess engine using NNUE for position evaluation]
 
* [https://github.com/connormcmonigle/seer-nnue GitHub - connormcmonigle/seer-nnue: UCI chess engine using NNUE for position evaluation]
 +
* [https://github.com/connormcmonigle/seer-nnue/releases/tag/v2.5.0 Release seer-v2.5.0 · connormcmonigle/seer-nnue · GitHub]
 
==Misc==
 
==Misc==
 
* [https://en.wiktionary.org/wiki/seer seer - Wiktionary]
 
* [https://en.wiktionary.org/wiki/seer seer - Wiktionary]
Line 62: Line 79:
 
[[Category:Windows]]
 
[[Category:Windows]]
 
[[Category:Linux]]
 
[[Category:Linux]]
 +
[[Category:Android]]
 
[[Category:NNUE]]
 
[[Category:NNUE]]
 
[[Category:Metaphysics]]
 
[[Category:Metaphysics]]
 
[[Category:Music]]
 
[[Category:Music]]

Latest revision as of 19:47, 25 April 2022

Home * Engines * Seer

Greek Seer [1]

Seer,
an UCI compliant open source chess engine by Connor McMonigle, written in C++, licensed under the GNU GPL and first released in October 2020. Seer uses a custom NNUE implementation based on 32-bit float weights with training code written in PyTorch and inference code relying on OpenMP SIMD for auto vectorization [2]. Due to PEXT Bitboards, Seer requires BMI2 for a reasonable performance, as well as either SSE, AVX, AVX2 or AVX-512 to calculate the NNUE. More recently, Seer supports ARM NEON via sse2neon [3] to run on many Android devices [4].

Features

[5]

Board Representation

Search

Evaluation

See also

Forum Posts

2020

Re: Seer by Connor McMonigle, CCC, November 02, 2020 » Seer 1.1
Re: Seer by Connor McMonigle, CCC, November 18, 2020 » Seer 1.2
Re: Speculations about NNUE development (was New engine releases 2020) by Connor McMonigle, CCC, November 12, 2020

2021 ...

Re: Seer 2.0.0 by Archimedes, CCC, August 06, 2021 » Seer 2.2.0 for Android
Re: Seer 2.0.0 by Connor McMonigle, CCC, April 25, 2022 » Seer 2.5.0

External Links

Chess Engine

Misc

References

Up one level