Difference between revisions of "Giraffe"

From Chessprogramming wiki
Jump to: navigation, search
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
'''[[Main Page|Home]] * [[Engines]] * Giraffe'''
 
'''[[Main Page|Home]] * [[Engines]] * Giraffe'''
  
[[FILE:The Burning Giraffe.jpg|border|right|thumb|240px|link=https://en.wikipedia.org/wiki/File:The_Burning_Giraffe.jpg| [[Arts#Dali|Salvador Dalí]] - [https://en.wikipedia.org/wiki/The_Burning_Giraffe The Burning Giraffe] <ref>[[Arts#Dali|Salvador Dalí]] - The Burning Giraffe, 1937, [https://en.wikipedia.org/wiki/Oil_painting Oil on panel], [https://en.wikipedia.org/wiki/Kunstmuseum_Basel Kunstmuseum Basel], [https://en.wikipedia.org/wiki/The_Burning_Giraffe The Burning Giraffe from Wikipedia]</ref> ]]  
+
[[FILE:The Burning Giraffe.jpg|border|right|thumb|240px|link=https://en.wikipedia.org/wiki/File:The_Burning_Giraffe.jpg| [[:Category:Salvador Dalí|Salvador Dalí]] - [https://en.wikipedia.org/wiki/The_Burning_Giraffe The Burning Giraffe] <ref>[[:Category:Salvador Dalí|Salvador Dalí]] - The Burning Giraffe, 1937, [https://en.wikipedia.org/wiki/Oil_painting Oil on panel], [https://en.wikipedia.org/wiki/Kunstmuseum_Basel Kunstmuseum Basel], [https://en.wikipedia.org/wiki/The_Burning_Giraffe The Burning Giraffe from Wikipedia]</ref> ]]  
  
 
'''Giraffe''',<br/>
 
'''Giraffe''',<br/>
an experimental [[:Category:Open Source|open source chess engine]] by [[Matthew Lai]] under the [[Free Software Foundation#GPL|GNU General Public License]], compliant to the [[Chess Engine Communication Protocol]], written in [[Cpp|C++11]] and based on [[Deep Learning|deep learning]], which is topic of his Master's thesis in August 2015  <ref>[[Matthew Lai]] ('''2015'''). ''Giraffe: Using Deep Reinforcement Learning to Play Chess''. M.Sc. thesis, [https://en.wikipedia.org/wiki/Imperial_College_London Imperial College London], [http://arxiv.org/abs/1509.01549v1 arXiv:1509.01549v1]</ref> <ref>[http://talkchess.com/forum/viewtopic.php?t=56913 *First release* Giraffe, a new engine based on deep learning] by [[Matthew Lai]], [[CCC]], July 08, 2015</ref> . Giraffe uses the [https://en.wikipedia.org/wiki/Eigen_%28C%2B%2B_library%29 Eigen linear algebra library] <ref>[http://eigen.tuxfamily.org/index.php?title=Main_Page Eigen, a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms]</ref> , and [[Pradu Kannan|Pradyumna Kannan's]] [[Magic Bitboards|magic move generator]] <ref>[http://www.open-aurec.com/wbforum/viewtopic.php?f=4&t=5452 Fastest Magic Move Bitboard Generator ready to use] by [[Pradu Kannan]], [[Computer Chess Forums|Winboard Forum]], August 25, 2006</ref> <ref>[[Pradu Kannan|Pradyumna Kannan]] ('''2007'''). ''Magic Move-Bitboard Generation in Computer Chess''. [http://www.pradu.us/old/Nov27_2008/Buzz/research/magic/Bitboards.pdf pdf]</ref>. As employee of [[Google]] [[DeepMind]], Matthew Lai announced the discontinuation of the Giraffe project in January 2016 <ref>[http://www.talkchess.com/forum/viewtopic.php?t=59003 Death of Giraffe, but hopefully not ML in chess!] by [[Matthew Lai]], [[CCC]], January 21, 2016</ref>.  
+
an experimental [[:Category:Open Source|open source chess engine]] by [[Matthew Lai]] under the [[Free Software Foundation#GPL|GNU General Public License]], compliant to the [[Chess Engine Communication Protocol]], written in [[Cpp|C++11]] and based on [[Deep Learning|deep learning]], which is topic of Matthew's master's thesis in August 2015  <ref>[[Matthew Lai]] ('''2015'''). ''Giraffe: Using Deep Reinforcement Learning to Play Chess''. M.Sc. thesis, [https://en.wikipedia.org/wiki/Imperial_College_London Imperial College London], [http://arxiv.org/abs/1509.01549v1 arXiv:1509.01549v1]</ref> <ref>[http://talkchess.com/forum/viewtopic.php?t=56913 *First release* Giraffe, a new engine based on deep learning] by [[Matthew Lai]], [[CCC]], July 08, 2015</ref> . Giraffe uses the [https://en.wikipedia.org/wiki/Eigen_%28C%2B%2B_library%29 Eigen linear algebra library] <ref>[http://eigen.tuxfamily.org/index.php?title=Main_Page Eigen, a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms]</ref> , and [[Pradu Kannan|Pradyumna Kannan's]] [[Magic Bitboards|magic move generator]] <ref>[http://www.open-aurec.com/wbforum/viewtopic.php?f=4&t=5452 Fastest Magic Move Bitboard Generator ready to use] by [[Pradu Kannan]], [[Computer Chess Forums|Winboard Forum]], August 25, 2006</ref> <ref>[[Pradu Kannan|Pradyumna Kannan]] ('''2007'''). ''Magic Move-Bitboard Generation in Computer Chess''. [http://www.pradu.us/old/Nov27_2008/Buzz/research/magic/Bitboards.pdf pdf]</ref>. As employee of [[Google]] [[DeepMind]], Matthew Lai announced the discontinuation of the Giraffe project in January 2016 <ref>[http://www.talkchess.com/forum/viewtopic.php?t=59003 Death of Giraffe, but hopefully not ML in chess!] by [[Matthew Lai]], [[CCC]], January 21, 2016</ref>.  
  
 
=Description=  
 
=Description=  
Line 10: Line 10:
  
 
=See also=  
 
=See also=  
* [[Neural Networks#engines|Chess Engines with Neural Networks]]
 
* [[Learning#Programs|Learning Chess Programs]]
 
* [[Various Classifications#Mammal|Mammal]]
 
 
* [[Morph]]
 
* [[Morph]]
 
* [[NeuroChess]]
 
* [[NeuroChess]]
Line 40: Line 37:
 
* [http://www.hiarcs.net/forums/viewtopic.php?t=8421&start=1 Re: Why is it so hard for comps to play like people?] by Ben Redic, [[Computer Chess Forums|Hiarcs Forum]], June 03, 2017
 
* [http://www.hiarcs.net/forums/viewtopic.php?t=8421&start=1 Re: Why is it so hard for comps to play like people?] by Ben Redic, [[Computer Chess Forums|Hiarcs Forum]], June 03, 2017
 
* [http://www.talkchess.com/forum/viewtopic.php?t=64929 Giraffe on Threadripper + newest GPUs] by John Margusen, [[CCC]], August 19, 2017 <ref>[https://en.wikipedia.org/wiki/Ryzen Ryzen from Wikipedia] (Threadripper)</ref>
 
* [http://www.talkchess.com/forum/viewtopic.php?t=64929 Giraffe on Threadripper + newest GPUs] by John Margusen, [[CCC]], August 19, 2017 <ref>[https://en.wikipedia.org/wiki/Ryzen Ryzen from Wikipedia] (Threadripper)</ref>
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=69175&start=86 Re: Alphazero news] by [[Matthew Lai]], [[CCC]], December 07, 2018 » [[AlphaZero]]
  
 
=External Links=  
 
=External Links=  
 
==Chess Engine==  
 
==Chess Engine==  
* [https://bitbucket.org/waterreaction/giraffe waterreaction / Giraffe — Bitbucket]
+
* [https://github.com/ianfab/Giraffe GitHub - ianfab/Giraffe: experimental chess engine based on temporal-difference reinforcement learning] hosted by [[Fabian Fichter]]
* [https://en.wikipedia.org/wiki/Deep_learning Deep learning from Wikipedia]
+
* [https://web.archive.org/web/20170713091347/https://bitbucket.org/waterreaction/giraffe waterreaction / Giraffe — Bitbucket] ([https://en.wikipedia.org/wiki/Wayback_Machine Wayback Machine], July 13, 2017)
* [http://www.technologyreview.com/view/541276/deep-learning-machine-teaches-itself-chess-in-72-hours-plays-at-international-master/ Deep Learning Machine Teaches Itself Chess in 72 Hours, Plays at International Master Level] by [http://www.technologyreview.com/contributor/emerging-technology-from-the-arxiv/ Emerging Technology From the arXiv], [https://en.wikipedia.org/wiki/MIT_Technology_Review MIT Technology Review], September 14, 2015 <ref>[http://www.talkchess.com/forum/viewtopic.php?t=59292 Awful paper)] by [[Sergei Markoff|Sergei S. Markoff]], [[CCC]], February 18, 2016</ref>
 
 
* [http://www.popularmechanics.com/technology/robots/a17339/chess-engine-plays-against-itself/ This Chess Engine Learns How to Beat Humans by Playing Against Itself] by [https://www.linkedin.com/in/rollinbishop Rollin Bishop], [https://en.wikipedia.org/wiki/Popular_Mechanics Popular Mechanics], September 15, 2015
 
* [http://www.popularmechanics.com/technology/robots/a17339/chess-engine-plays-against-itself/ This Chess Engine Learns How to Beat Humans by Playing Against Itself] by [https://www.linkedin.com/in/rollinbishop Rollin Bishop], [https://en.wikipedia.org/wiki/Popular_Mechanics Popular Mechanics], September 15, 2015
* [http://hackaday.com/2015/10/02/computer-learns-to-hack-chess/#more-172231 Computer Learns to Hack Chess] by [http://hackaday.com/author/wd5gnr1/ Al Williams], [https://en.wikipedia.org/wiki/Hackaday Hackaday], October 02, 2015 <ref>[http://www.talkchess.com/forum/viewtopic.php?t=57817 Chess hackery] by [[Steven Edwards]], [[CCC]], October 02, 2015</ref>
+
* [https://hackaday.com/2015/10/02/computer-learns-to-hack-chess/#more-172231 Computer Learns to Hack Chess] by [http://hackaday.com/author/wd5gnr1/ Al Williams], [https://en.wikipedia.org/wiki/Hackaday Hackaday], October 02, 2015 <ref>[http://www.talkchess.com/forum/viewtopic.php?t=57817 Chess hackery] by [[Steven Edwards]], [[CCC]], October 02, 2015</ref>
* [http://motherboard.vice.com/read/the-chess-engine-that-died-so-alphago-could-live-giraffe-matthew-lai The Chess Engine that Died So AlphaGo Could Live] by [https://www.linkedin.com/in/rollinbishop Rollin Bishop], [https://en.wikipedia.org/wiki/Vice_(magazine) Motherboard], March 14, 2016 » [[AlphaGo]]  
+
* [https://www.vice.com/en/article/d7ypaz/the-chess-engine-that-died-so-alphago-could-live-giraffe-matthew-lai The Chess Engine that Died So AlphaGo Could Live] by [https://www.linkedin.com/in/rollinbishop Rollin Bishop], [https://en.wikipedia.org/wiki/Vice_(magazine) Motherboard], March 14, 2016 » [[AlphaGo]]  
* [http://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?match_length=30&each_game=1&print=Details&each_game=1&eng=Giraffe%2020150908%2064-bit#Giraffe_20150908_64-bit Giraffe 20150908 64-bit] in [[CCRL|CCRL 40/4]]
+
* [http://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?match_length=30&each_game=1&print=Details&each_game=1&eng=Giraffe%2020150908%2064-bit#Giraffe_20150908_64-bit Giraffe 20150908 64-bit] in [[CCRL|CCRL Blitz]]
 
==Misc==  
 
==Misc==  
 
* [https://en.wikipedia.org/wiki/Giraffe Giraffe from Wikipedia]
 
* [https://en.wikipedia.org/wiki/Giraffe Giraffe from Wikipedia]
 
: [https://en.wikipedia.org/wiki/Giraffe#Internal_systems Giraffe - Internal systems]
 
: [https://en.wikipedia.org/wiki/Giraffe#Internal_systems Giraffe - Internal systems]
* [[Videos#ManuDibango|Manu Dibango]] - [http://www.silent-watcher.net/billlaswell/discography/d/electricafrica.html Electric Africa], [https://en.wikipedia.org/wiki/YouTube YouTube] Video
+
* [[:Category:Manu Dibango|Manu Dibango]] - [http://www.silent-watcher.net/billlaswell/discography/d/electricafrica.html Electric Africa], [https://en.wikipedia.org/wiki/YouTube YouTube] Video
 
: {{#evu:https://www.youtube.com/watch?v=zK69LoCTYus|alignment=left|valignment=top}}
 
: {{#evu:https://www.youtube.com/watch?v=zK69LoCTYus|alignment=left|valignment=top}}
  
Line 60: Line 57:
  
 
'''[[Engines|Up one Level]]'''
 
'''[[Engines|Up one Level]]'''
[[Category:Engine]][[Category:Open Source]][[Category:GPL]][[Category:Salvador Dalí]][[Category:Manu Dibango]]
+
[[Category:WinBoard]]
 +
[[Category:XBoard]]
 +
[[Category:Open Source]]
 +
[[Category:GPL]]
 +
[[Category:NN]]
 +
[[Category:X86]]
 +
[[Category:X64]]
 +
[[Category:PC]]
 +
[[Category:Windows]]
 +
[[Category:Linux]]
 +
[[Category:Thesis]]
 +
[[Category:Mammal]]
 +
[[Category:Salvador Dalí]]
 +
[[Category:Manu Dibango]]

Latest revision as of 16:56, 13 November 2020

Home * Engines * Giraffe

Giraffe,
an experimental open source chess engine by Matthew Lai under the GNU General Public License, compliant to the Chess Engine Communication Protocol, written in C++11 and based on deep learning, which is topic of Matthew's master's thesis in August 2015 [2] [3] . Giraffe uses the Eigen linear algebra library [4] , and Pradyumna Kannan's magic move generator [5] [6]. As employee of Google DeepMind, Matthew Lai announced the discontinuation of the Giraffe project in January 2016 [7].

Description

Giraffe's evaluation function is a deep neural network trained by TDLeaf [8] . Its feature representation includes a map of static exchange evaluations for all squares and sides [9] , a structure already proposed by Russell M. Church and Kenneth W. Church in Plans, Goals, and Search Strategies for the Selection of a Move in Chess [10] . Probability-based evaluation scores are not in centipawns nor linear to material , and span a +-10,000 range, with mate scores of +- 30,000. The search recently changed from traditional depth-based iterative deepening to assigning number of nodes (or time) to child nodes [11] . Node budget allocation will also become neural network based.

See also

Publications

Forum Posts

2015

2016

2017...

Re: Is AlphaGo approach unsuitable to chess? by Peter Österlund, CCC, May 31, 2017 » Texel

External Links

Chess Engine

Misc

Giraffe - Internal systems

References

Up one Level