Difference between revisions of "Gull"

From Chessprogramming wiki
Jump to: navigation, search
 
(2 intermediate revisions by the same user not shown)
Line 4: Line 4:
  
 
'''Gull''', (GullChess)<br/>
 
'''Gull''', (GullChess)<br/>
an [[UCI]] compliant [[:Category:Open Source|open source engine]] in the [https://en.wikipedia.org/wiki/Public_domain public domain] by [[Vadim Demichev]] <ref>[https://en.wikipedia.org/wiki/Chess_engine Chess engine from Wikiepdia]</ref>, inspired by ideas and code from other open source engines, notably from [[IvanHoe]] of the [[Ippolit]] family of programs, and from [[Strelka]], whose authors are suspected of [https://en.wikipedia.org/wiki/Reverse_engineering reverse engineering] [[Rybka]], to examine and use her ideas. [[Ron Murawski|Ron Murawski's]] Computer-Chess Wiki mentions GullChess as IvanHoe derivative <ref>[http://computer-chess.org/doku.php?id=computer_chess:wiki:lists:chess_engine_list Chess Engine List] from [[Ron Murawski|Ron Murawski's]] [http://computer-chess.org/doku.php?id=home Computer-Chess Wiki]</ref>. The further socialization of concrete implementations with disputed origin in the public domain, as already started with Ippolit, remains a highly controversial topic.  
+
an [[UCI]] compliant [[:Category:Open Source|open source engine]] in the [https://en.wikipedia.org/wiki/Public_domain public domain] by [[ThinkingALot]] <ref>[https://en.wikipedia.org/wiki/Chess_engine Chess engine from Wikiepdia]</ref>, inspired by ideas and code from other open source engines, notably from [[IvanHoe]] of the [[Ippolit]] family of programs, and from [[Strelka]], whose authors are suspected of [https://en.wikipedia.org/wiki/Reverse_engineering reverse engineering] [[Rybka]], to examine and use her ideas. [[Ron Murawski|Ron Murawski's]] Computer-Chess Wiki mentions GullChess as IvanHoe derivative <ref>[http://computer-chess.org/doku.php?id=computer_chess:wiki:lists:chess_engine_list Chess Engine List] from [[Ron Murawski|Ron Murawski's]] [http://computer-chess.org/doku.php?id=home Computer-Chess Wiki]</ref>. The further socialization of concrete implementations with disputed origin in the public domain, as already started with Ippolit, remains a highly controversial topic.  
  
 
=Description=
 
=Description=
Line 11: Line 11:
 
=Releases & Forks=
 
=Releases & Forks=
 
==Gull 2.1==
 
==Gull 2.1==
Gull '''2.1''', released in June 2013, has [[Evaluation|evaluation]] weights optimized with the use of [[Automated Tuning|automated tuning]] (source code included). Gull's 2.1 evaluation is no longer almost identical to that of IvanHoe. Further, it features some minor search, [[Time Management|time management]] and [[Parallel Search|SMP]] efficiency enhancements <ref>[http://www.open-chess.org/viewtopic.php?f=7&t=109&start=120#p18910 Re: gull chess] by [[Vadim Demichev|ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], June 17, 2013 (Gull 2.1)</ref>.
+
Gull '''2.1''', released in June 2013, has [[Evaluation|evaluation]] weights optimized with the use of [[Automated Tuning|automated tuning]] (source code included). Gull's 2.1 evaluation is no longer almost identical to that of IvanHoe. Further, it features some minor search, [[Time Management|time management]] and [[Parallel Search|SMP]] efficiency enhancements <ref>[http://www.open-chess.org/viewtopic.php?f=7&t=109&start=120#p18910 Re: gull chess] by [[ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], June 17, 2013 (Gull 2.1)</ref>.
 
<span id="Gull2.8"></span>
 
<span id="Gull2.8"></span>
 
==Gull 2.8 beta==
 
==Gull 2.8 beta==
Line 17: Line 17:
 
<span id="Gull3"></span>
 
<span id="Gull3"></span>
 
==Gull 3==
 
==Gull 3==
Gull '''3''', released April 17, 2014, with further [[Automated Tuning|optimization]] of evaluation weights and a rewritten [[Parallel Search|SMP search]], features nonlinear [[King Safety#PawnShield|king shelter evaluation]] and more [[Endgame|endgame knowledge]]. [[Basil Falcinelli]] implemented a [[Linux]] port <ref>[http://www.talkchess.com/forum/viewtopic.php?t=58071 Gull 3 (Linux port) released] by [[Basil Falcinelli]], [[CCC]], October 28, 2015</ref> and [[Syzygy Bases]] support, introducing [[Syzygy Bases#Fathom|Fathom]] <ref>[http://www.talkchess.com/forum/viewtopic.php?t=58299 Gull 3 Linux+Syzygy and Fathom released] by [[Basil Falcinelli]], [[CCC]], November 20, 2015</ref>, while [[Michael Byrne]] worked on a [[Mac OS]] port <ref>[http://www.talkchess.com/forum/viewtopic.php?t=58096 Gull 3 x64 Mac Results] by [[Michael Byrne|Michael B]], [[CCC]], October 30, 2015</ref> dubbed <span id="Hawkeye"></span>'''Hawkeye''' <ref>[http://www.talkchess.com/forum/viewtopic.php?t=60695 Hawkeye 1.01] by [[Michael Byrne|Michael B]], [[CCC]], July 05, 2016</ref>, [[Tom Hyer]] introduced his Gull 3 derivative <span id="Roc"></span>'''Roc''' <ref>[https://github.com/TomHyer/Roc GitHub - TomHyer/Roc: C++ chess engine derived from Gull 3]</ref>, and [[Norman Schmidt]] <span id="SeaGull"></span>'''SeaGull''' also based on Gull 3 <ref>[https://github.com/FireFather/seagull GitHub - FireFather/seagull: chess engine based on Gull 3] by [[Norman Schmidt]]</ref>.
+
Gull '''3''', released April 17, 2014, with further [[Automated Tuning|optimization]] of evaluation weights and a rewritten [[Parallel Search|SMP search]], features nonlinear [[King Safety#PawnShield|king shelter evaluation]] and more [[Endgame|endgame knowledge]]. [[Basil Falcinelli]] implemented a [[Linux]] port <ref>[http://www.talkchess.com/forum/viewtopic.php?t=58071 Gull 3 (Linux port) released] by [[Basil Falcinelli]], [[CCC]], October 28, 2015</ref> and [[Syzygy Bases]] support, introducing [[Syzygy Bases#Fathom|Fathom]] <ref>[http://www.talkchess.com/forum/viewtopic.php?t=58299 Gull 3 Linux+Syzygy and Fathom released] by [[Basil Falcinelli]], [[CCC]], November 20, 2015</ref>, while [[Michael Byrne]] worked on a [[Mac OS]] port <ref>[http://www.talkchess.com/forum/viewtopic.php?t=58096 Gull 3 x64 Mac Results] by [[Michael Byrne|Michael B]], [[CCC]], October 30, 2015</ref> dubbed <span id="Hawkeye"></span>'''Hawkeye''' <ref>[http://www.talkchess.com/forum/viewtopic.php?t=60695 Hawkeye 1.01] by [[Michael Byrne|Michael B]], [[CCC]], July 05, 2016</ref>, [[Tom Hyer]] introduced his Gull 3 derivative [[Roc]], and [[Norman Schmidt]] <span id="SeaGull"></span>'''SeaGull''' also based on Gull 3 <ref>[https://github.com/FireFather/seagull GitHub - FireFather/seagull: chess engine based on Gull 3] by [[Norman Schmidt]]</ref>.
 
<span id="LazyGull"></span>
 
<span id="LazyGull"></span>
 
==LazyGull==
 
==LazyGull==
Line 27: Line 27:
 
=Forum Posts=  
 
=Forum Posts=  
 
==2010 ...==
 
==2010 ...==
* [http://immortalchess.net/forum/showthread.php?t=2354 Проект "Чайка"] by [[Vadim Demichev|ThinkingALot]], [[Computer Chess Forums|immortalchess]], June 07, 2010, [http://translate.google.com/translate?sl=ru&tl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fimmortalchess.net%2Fforum%2Findex.php translated] by [https://en.wikipedia.org/wiki/Google_Translate Google Translate]
+
* [http://immortalchess.net/forum/showthread.php?t=2354 Проект "Чайка"] by [[ThinkingALot]], [[Computer Chess Forums|immortalchess]], June 07, 2010, [http://translate.google.com/translate?sl=ru&tl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fimmortalchess.net%2Fforum%2Findex.php translated] by [https://en.wikipedia.org/wiki/Google_Translate Google Translate]
 
* [http://www.open-aurec.com/wbforum/viewtopic.php?f=2&t=51022 GullChess] by [[Olivier Deville]], [[Computer Chess Forums|Winboard Forum]], June 09, 2010
 
* [http://www.open-aurec.com/wbforum/viewtopic.php?f=2&t=51022 GullChess] by [[Olivier Deville]], [[Computer Chess Forums|Winboard Forum]], June 09, 2010
 
* [http://www.open-chess.org/viewtopic.php?f=7&t=109 gull chess] by Karger, [[Computer Chess Forums|OpenChess Forum]], June 12, 2010
 
* [http://www.open-chess.org/viewtopic.php?f=7&t=109 gull chess] by Karger, [[Computer Chess Forums|OpenChess Forum]], June 12, 2010
: [http://www.open-chess.org/viewtopic.php?f=7&t=109&p=724#p724 Re: gull chess] by [[Vadim Demichev|ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], June 13, 2010 » [[Gaviota]]
+
: [http://www.open-chess.org/viewtopic.php?f=7&t=109&p=724#p724 Re: gull chess] by [[ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], June 13, 2010 » [[Gaviota]]
: [http://www.open-chess.org/viewtopic.php?f=7&t=109&start=120#p18910 Re: gull chess] by [[Vadim Demichev|ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], June 17, 2013 (Gull 2.1)
+
: [http://www.open-chess.org/viewtopic.php?f=7&t=109&start=120#p18910 Re: gull chess] by [[ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], June 17, 2013 (Gull 2.1)
: [http://www.open-chess.org/viewtopic.php?f=7&t=109&start=150#p20221 Re: gull chess] by [[Vadim Demichev|ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], January 26, 2014 (Gull 2.8 beta & Gull 2.9 alpha)
+
: [http://www.open-chess.org/viewtopic.php?f=7&t=109&start=150#p20221 Re: gull chess] by [[ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], January 26, 2014 (Gull 2.8 beta & Gull 2.9 alpha)
 
* [http://www.talkchess.com/forum/viewtopic.php?t=48325 GullChess 2.1] by [[Norbert Raimund Leisner]], [[CCC]], June 18, 2013
 
* [http://www.talkchess.com/forum/viewtopic.php?t=48325 GullChess 2.1] by [[Norbert Raimund Leisner]], [[CCC]], June 18, 2013
* [http://www.open-chess.org/viewtopic.php?f=5&t=2378 DTS-like SMP] by [[Vadim Demichev|ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], July 25, 2013 » [[Parallel Search]]
+
* [http://www.open-chess.org/viewtopic.php?f=5&t=2378 DTS-like SMP] by [[ThinkingALot]], [[Computer Chess Forums|OpenChess Forum]], July 25, 2013 » [[Parallel Search]]
* [http://immortalchess.net/forum/showpost.php?p=464718&postcount=326 Re: Gull] by [[Vadim Demichev|ThinkingALot]], [[Computer Chess Forums|immortalchess]], February 10, 2014
+
* [http://immortalchess.net/forum/showpost.php?p=464718&postcount=326 Re: Gull] by [[ThinkingALot]], [[Computer Chess Forums|immortalchess]], February 10, 2014
 
==2015 ...==
 
==2015 ...==
 
* [https://groups.google.com/d/msg/fishcooking/Xh8p8KXGrso/aguB__krDAAJ Gull's endgame knowledge] by [[Stephane Nicolet]], [[Computer Chess Forums|FishCooking]], October 16, 2015 » [[Rook Endgame]], [[Stockfish]]
 
* [https://groups.google.com/d/msg/fishcooking/Xh8p8KXGrso/aguB__krDAAJ Gull's endgame knowledge] by [[Stephane Nicolet]], [[Computer Chess Forums|FishCooking]], October 16, 2015 » [[Rook Endgame]], [[Stockfish]]
Line 58: Line 58:
 
=External Links=  
 
=External Links=  
 
==Source Code Repositories==
 
==Source Code Repositories==
* [http://gullchess.sourceforge.net/ SourceForge.net: GullChess - Project Web Hosting - Open Source Software] by [[Vadim Demichev|ThinkingALot]]
+
* [http://gullchess.sourceforge.net/ SourceForge.net: GullChess - Project Web Hosting - Open Source Software] by [[ThinkingALot]]
 
* [http://sourceforge.net/projects/gullchess/ GullChess | Free software downloads at SourceForge.net]
 
* [http://sourceforge.net/projects/gullchess/ GullChess | Free software downloads at SourceForge.net]
* [https://bitbucket.org/hyer/sonsofthebird/src/052b62b0c78d11889379d5909bbe617b70274076/Slizzard/?at=default hyer / SonsOfTheBird / source / Slizzard — Bitbucket] by [[Tom Hyer]] <ref> [http://www.talkchess.com/forum/viewtopic.php?t=61195 Future of Gull] by [[Tom Hyer]], [[CCC]], August 23, 2016</ref>
 
 
* [https://github.com/Velmarin/Chess-Gull-Syzygy GitHub - Velmarin/Chess-Gull-Syzygy: Chess uci engine with support Syzygy tablebassses] by [[Jose Mº Velasco]]  
 
* [https://github.com/Velmarin/Chess-Gull-Syzygy GitHub - Velmarin/Chess-Gull-Syzygy: Chess uci engine with support Syzygy tablebassses] by [[Jose Mº Velasco]]  
 
* [https://github.com/MichaelB7/Hawkeye GitHub - MichaelB7/Hawkeye: UCI Chess Engine based on Gull] by [[Michael Byrne]]
 
* [https://github.com/MichaelB7/Hawkeye GitHub - MichaelB7/Hawkeye: UCI Chess Engine based on Gull] by [[Michael Byrne]]
* [https://github.com/TomHyer/Roc GitHub - TomHyer/Roc: C++ chess engine derived from Gull 3]  by [[Tom Hyer]]
+
* [https://bitbucket.org/hyer/sonsofthebird/src/052b62b0c78d11889379d5909bbe617b70274076/Slizzard/?at=default hyer / SonsOfTheBird / source / Slizzard — Bitbucket] by [[Tom Hyer]] <ref> [http://www.talkchess.com/forum/viewtopic.php?t=61195 Future of Gull] by [[Tom Hyer]], [[CCC]], August 23, 2016</ref>
 +
* [https://github.com/TomHyer/Roc GitHub - TomHyer/Roc: C++ chess engine derived from Gull 3]  by [[Tom Hyer]] » [[Roc]]
 
* [https://github.com/basil00/Gull GitHub - basil00/Gull: Gull chess (Linux/Mac port) - The LazyGull Chess Engine] by [[Basil Falcinelli]]
 
* [https://github.com/basil00/Gull GitHub - basil00/Gull: Gull chess (Linux/Mac port) - The LazyGull Chess Engine] by [[Basil Falcinelli]]
 
* [https://github.com/FireFather/seagull GitHub - FireFather/seagull: chess engine based on Gull 3] by [[Norman Schmidt]]
 
* [https://github.com/FireFather/seagull GitHub - FireFather/seagull: chess engine based on Gull 3] by [[Norman Schmidt]]
 
==Rating==
 
==Rating==
* [http://www.computerchess.org.uk/ccrl/4040/cgi/engine_details.cgi?print=Details&each_game=1&eng=Gull%201.2%2064-bit#Gull_1_2_64-bit Gull 1.2 64-bit] in [[CCRL|CCRL 40/40]]
+
* [http://www.computerchess.org.uk/ccrl/4040/cgi/engine_details.cgi?print=Details&each_game=1&eng=Gull%201.2%2064-bit#Gull_1_2_64-bit Gull 1.2 64-bit] in [[CCRL|CCRL 40/15]]
* [http://www.computerchess.org.uk/ccrl/4040/cgi/engine_details.cgi?match_length=30&each_game=1&print=Details&each_game=1&eng=Gull%203%2064-bit%204CPU#Gull_3_64-bit_4CPU Gull 3 64-bit 4CPU] in [[CCRL|CCRL 40/40]]
+
* [http://www.computerchess.org.uk/ccrl/4040/cgi/engine_details.cgi?match_length=30&each_game=1&print=Details&each_game=1&eng=Gull%203%2064-bit%204CPU#Gull_3_64-bit_4CPU Gull 3 64-bit 4CPU] in [[CCRL|CCRL 40/15]]
 
==Misc==
 
==Misc==
 
* [https://en.wikipedia.org/wiki/Gull Gull (Seagull) from Wikipedia]
 
* [https://en.wikipedia.org/wiki/Gull Gull (Seagull) from Wikipedia]
Line 82: Line 82:
 
'''[[Engines|Up one Level]]'''
 
'''[[Engines|Up one Level]]'''
 
[[Category:Open Source]]
 
[[Category:Open Source]]
 +
[[Category:MIT]]
 
[[Category:UCI]]
 
[[Category:UCI]]
 +
[[Category:PC]]
 +
[[Category:X86]]
 +
[[Category:X64]]
 +
[[Category:Windows]]
 +
[[Category:Linux]]
 
[[Category:Mac]]
 
[[Category:Mac]]
 
[[Category:Bird]]
 
[[Category:Bird]]

Latest revision as of 08:47, 7 October 2021

Home * Engines * Gull

Scheveningen Gulls [1]

Gull, (GullChess)
an UCI compliant open source engine in the public domain by ThinkingALot [2], inspired by ideas and code from other open source engines, notably from IvanHoe of the Ippolit family of programs, and from Strelka, whose authors are suspected of reverse engineering Rybka, to examine and use her ideas. Ron Murawski's Computer-Chess Wiki mentions GullChess as IvanHoe derivative [3]. The further socialization of concrete implementations with disputed origin in the public domain, as already started with Ippolit, remains a highly controversial topic.

Description

Gull applies magic bitboards to determine sliding piece attacks, a material table indexing scheme with disjoint light and dark bishops, PVS with aspiration windows, and a parallel search based on processes. Version 1.2 is written in compact and neat C++ code and consists of only one single source file. It features generic function templates in recursive search routines as well in various functions called by search, i.e. for move generation, with side to move and hash-move exclusion for singular extensions as boolean template parameters, delegating conditions on these to compile-time.

Releases & Forks

Gull 2.1

Gull 2.1, released in June 2013, has evaluation weights optimized with the use of automated tuning (source code included). Gull's 2.1 evaluation is no longer almost identical to that of IvanHoe. Further, it features some minor search, time management and SMP efficiency enhancements [4].

Gull 2.8 beta

Gull 2.8 beta, released in January 2014 and competing TCEC Season 6, comes with minor search tweaks but a full evaluation rewrite, being back an original engine [5]. A BMI2 build provides a small speedup on Haswell architecture due to the replacement of magic bitboards by PEXT bitboards.

Gull 3

Gull 3, released April 17, 2014, with further optimization of evaluation weights and a rewritten SMP search, features nonlinear king shelter evaluation and more endgame knowledge. Basil Falcinelli implemented a Linux port [6] and Syzygy Bases support, introducing Fathom [7], while Michael Byrne worked on a Mac OS port [8] dubbed Hawkeye [9], Tom Hyer introduced his Gull 3 derivative Roc, and Norman Schmidt SeaGull also based on Gull 3 [10].

LazyGull

LazyGull is a free UCI chess engine under the MIT License derived from Gull 3 by Basil Falcinelli [11]. LazyGull features Syzygy Bases support via Fathom, Lazy SMP, and PDEP bitboards for modern x86-64 CPUs, and is portable to Windows, Linux and MacOSX [12].

See also

Forum Posts

2010 ...

Re: gull chess by ThinkingALot, OpenChess Forum, June 13, 2010 » Gaviota
Re: gull chess by ThinkingALot, OpenChess Forum, June 17, 2013 (Gull 2.1)
Re: gull chess by ThinkingALot, OpenChess Forum, January 26, 2014 (Gull 2.8 beta & Gull 2.9 alpha)

2015 ...

2016

2017

External Links

Source Code Repositories

Rating

Misc

feat. Kosuke Mine, Mikio Masuda, John Scofield, Clint Houston, Motohiko Hino, James Mtume

References

Up one Level