Difference between revisions of "Gromit"

From Chessprogramming wiki
Jump to: navigation, search
(Created page with "'''Home * Engines * GromitChess''' FILE:Wallace, Gromit, and creator Nick Park.jpg|border|right|thumb| [https://en.wikipedia.org/wiki/Wallace_and_Gromit G...")
 
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
'''[[Main Page|Home]] * [[Engines]] * GromitChess'''
 
'''[[Main Page|Home]] * [[Engines]] * GromitChess'''
  
[[FILE:Wallace, Gromit, and creator Nick Park.jpg|border|right|thumb| [https://en.wikipedia.org/wiki/Wallace_and_Gromit Gromit, Wallace], and creator [https://en.wikipedia.org/wiki/Nick_Park Nick Park] <ref>Creator [https://en.wikipedia.org/wiki/Nick_Park Nick Park] with his characters in 2005 promoting [https://en.wikipedia.org/wiki/Wallace_%26_Gromit:_The_Curse_of_the_Were-Rabbit Wallace & Gromit: The Curse of the Were-Rabbit], [https://commons.wikimedia.org/wiki/File:Wallace,_Gromit,_and_creator_Nick_Park.jpg Photo] by [https://www.flickr.com/photos/43671133974@N01 Sam Felder], September 19, 2005, originally posted on [https://en.wikipedia.org/wiki/Flickr Flickr], [https://en.wikipedia.org/wiki/Wikimedia_Commons Wikimedia Commons], [https://creativecommons.org/licenses/by-sa/2.0/deed.en CC BY-SA 2.0]</ref> ]]  
+
[[FILE:Wallace, Gromit, and creator Nick Park.jpg|border|right|thumb|280px| [https://en.wikipedia.org/wiki/Wallace_and_Gromit Gromit, Wallace], and creator [https://en.wikipedia.org/wiki/Nick_Park Nick Park] <ref>Creator [https://en.wikipedia.org/wiki/Nick_Park Nick Park] with his characters in 2005 promoting [https://en.wikipedia.org/wiki/Wallace_%26_Gromit:_The_Curse_of_the_Were-Rabbit Wallace & Gromit: The Curse of the Were-Rabbit], [https://commons.wikimedia.org/wiki/File:Wallace,_Gromit,_and_creator_Nick_Park.jpg Photo] by [https://www.flickr.com/photos/43671133974@N01 Sam Felder], September 19, 2005, originally posted on [https://en.wikipedia.org/wiki/Flickr Flickr], [https://en.wikipedia.org/wiki/Wikimedia_Commons Wikimedia Commons], [https://creativecommons.org/licenses/by-sa/2.0/deed.en CC BY-SA 2.0]</ref> ]]  
  
'''GromitChess''', (Gromit)<br/>
+
'''GromitChess''', (Gromit, Gromit Chess)<br/>
a  chess engine by [[Frank Schneider]] and [[Kai Skibbe]]. '''Gromit''', later renamed to '''GromitChess''', was initially written by Frank. In 1999 former tester Kai Skibbe joined the development.
+
a  chess engine by [[Frank Schneider]] and [[Kai Skibbe]]. '''Gromit''', later renamed to '''GromitChess''', was initially written by Frank. In 1999 former tester Kai Skibbe joined the development <ref>[http://www.pocketgrandmaster.com/english/about.html PocketGrandmaster About]</ref>.
Gromit and GromitChess played several [[IPCCC|IPCCCs]], the [[WMCCC 1995]], [[WCCC 1999]] in Paderborn and the [[WMCCC 2001]] in Maastricht, where it won the title of the Amateur World Microcomputer Chess Champion.  Early versions (1.2) were standalone engines with an own [[GUI]], later versions (> 2.0) were [[WinBoard]]/[[XBoard]] compatible, a dedicated version (3.1) was available as [[ChessBase#YoungTalents|Young Talent]] by [[ChessBase]] running under the [[Fritz#FritzGUI|Fritz6 GUI]] <ref>[https://www.stmintz.com/ccc/index.php?id=207034 Re: Anyone using the Gromit engine?] by [[Frank Schneider]], [[CCC]], January 13, 2002</ref> <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=51588 ChessBase native engines (freeware)] by [[Norbert Raimund Leisner]], [[CCC]], March 13, 2014</ref>. GromitChess (3.10.3) was incorporated into the [[PocketGrandmaster]] for [[Pocket PC]] <ref>[https://www.stmintz.com/ccc/index.php?id=240495 Re: Is Gromit 3.9.5 is out?] by [[Frank Schneider]], [[CCC]], July 14, 2002</ref>, and became predecessor of [[Anaconda]].  
+
Gromit and GromitChess played several [[IPCCC|IPCCCs]], the [[WMCCC 1995]], [[WCCC 1999]] in Paderborn and the [[WMCCC 2001]] in Maastricht, where it won the title of the Amateur World Microcomputer Chess Champion.  Early versions (1.2) were standalone engines with an own [[GUI]], later versions (> 2.0) were [[WinBoard]]/[[XBoard]] compatible, a dedicated version (3.1) was sold along with other [[ChessBase#YoungTalents|Young Talents]] by [[ChessBase]], running under their [[ChessBase (Database)|Database]] or [[Fritz#FritzGUI|Fritz GUI]] <ref>[https://www.stmintz.com/ccc/index.php?id=207034 Re: Anyone using the Gromit engine?] by [[Frank Schneider]], [[CCC]], January 13, 2002</ref>. GromitChess (3.10.3) emphasized its ambitions going commercial while incorporated into the [[PocketGrandmaster]] for [[Pocket PC]] <ref>[https://www.stmintz.com/ccc/index.php?id=202624 PocketGrandmaster 1.1 released] by [[Frank Schneider]], [[CCC]], December 19, 2001
 +
</ref> <ref>[https://www.stmintz.com/ccc/index.php?id=240495 Re: Is Gromit 3.9.5 is out?] by [[Frank Schneider]], [[CCC]], July 14, 2002</ref>, and became predecessor of [[Anaconda]].  
  
 
=Description=  
 
=Description=  
 
given in 1999 from the [[ICGA]] tournament site <ref>[https://www.game-ai-forum.org/icga-tournaments/program.php?id=89 GromitChess' ICGA Tournaments]</ref>:
 
given in 1999 from the [[ICGA]] tournament site <ref>[https://www.game-ai-forum.org/icga-tournaments/program.php?id=89 GromitChess' ICGA Tournaments]</ref>:
  GromitChess is a [[Cpp|C++]]-program, developed in a [[Linux]]-environment (Emacs, gcc). It searches about 25000 to 50000 [[Nodes per Second|nodes per second]] on a K6/200 and tries to be intelligent rather than fast. [[Attack and Defend Maps|Attacktables]] are the primary datastructure ([[[Piece-Sets|16 bit]] for every square and player; bit n is set if piece n attacks the square). The search uses [[Iterative Deepening|iterative deepening]], [[Principal Variation Search|PVS]], [[Transposition Table|transposition tables]], [[Killer Heuristic|killer]]- and [[History Heuristic|history heuristic]], [[Null Move Pruning|nullmove]] ([[Depth Reduction R|R]]=2), about 10 chess-specific [[Extensions|extensions]] and some [[Pruning|pruning heuristics]]. The [[Quiescence Search|quiescence]] uses a [[Static Exchange Evaluation|static exchange evaluator]] and includes some checks and other threatening moves. Parts of the [[Evaluation|evaluation]] are initialized at the [[Root|root]] but most of the work is done at the [[Leaf Node|leafnodes]]. You can find more information and executables in the WWW.  
+
  GromitChess is a [[Cpp|C++]]-program, developed in a [[Linux]]-environment (Emacs, gcc). It searches about 25000 to 50000 [[Nodes per Second|nodes per second]] on a K6/200 and tries to be intelligent rather than fast. [[Attack and Defend Maps|Attacktables]] are the primary datastructure ([[Piece-Sets|16 bit]] for every square and player; bit n is set if piece n attacks the square). The search uses [[Iterative Deepening|iterative deepening]], [[Principal Variation Search|PVS]], [[Transposition Table|transposition tables]], [[Killer Heuristic|killer]]- and [[History Heuristic|history heuristic]], [[Null Move Pruning|nullmove]] ([[Depth Reduction R|R]]=2), about 10 chess-specific [[Extensions|extensions]] and some [[Pruning|pruning heuristics]]. The [[Quiescence Search|quiescence]] uses a [[Static Exchange Evaluation|static exchange evaluator]] and includes some checks and other threatening moves. Parts of the [[Evaluation|evaluation]] are initialized at the [[Root|root]] but most of the work is done at the [[Leaf Node|leafnodes]]. You can find more information and executables in the WWW.  
  
 
=Copy Make=
 
=Copy Make=
Line 20: Line 21:
 
  - you can compare the current position with previous positions in the search tree
 
  - you can compare the current position with previous positions in the search tree
 
  An alternative would use a mix of copied and static data structures.  
 
  An alternative would use a mix of copied and static data structures.  
 
+
 
=See also=
 
=See also=
 
* [[Anaconda]]
 
* [[Anaconda]]
Line 41: Line 42:
 
* [https://www.stmintz.com/ccc/index.php?id=186009 Goliath Light, Gromit, Patzer, SOS, etc. commercially sold] by [[Theo van der Storm]], [[CCC]], August 28, 2001
 
* [https://www.stmintz.com/ccc/index.php?id=186009 Goliath Light, Gromit, Patzer, SOS, etc. commercially sold] by [[Theo van der Storm]], [[CCC]], August 28, 2001
 
* [https://www.stmintz.com/ccc/index.php?id=186640 The Crazy Bishop 0046 and Gromit 3.8.2] by [[Federico Andrés Corigliano|Federico Corigliano]], [[CCC]], August 31, 2001 » [[The Crazy Bishop]]
 
* [https://www.stmintz.com/ccc/index.php?id=186640 The Crazy Bishop 0046 and Gromit 3.8.2] by [[Federico Andrés Corigliano|Federico Corigliano]], [[CCC]], August 31, 2001 » [[The Crazy Bishop]]
 +
* [https://www.stmintz.com/ccc/index.php?id=202624 PocketGrandmaster 1.1 released] by [[Frank Schneider]], [[CCC]], December 19, 2001
 
* [https://www.stmintz.com/ccc/index.php?id=207016 Anyone using the Gromit engine?] by Jonathan Parle, [[CCC]], January 12, 2002
 
* [https://www.stmintz.com/ccc/index.php?id=207016 Anyone using the Gromit engine?] by Jonathan Parle, [[CCC]], January 12, 2002
 
* [https://www.stmintz.com/ccc/index.php?id=207297 Re: Gromit 3.8.2 (wb) released!] by [[Frank Schneider]], [[CCC]], January 14, 2002
 
* [https://www.stmintz.com/ccc/index.php?id=207297 Re: Gromit 3.8.2 (wb) released!] by [[Frank Schneider]], [[CCC]], January 14, 2002
Line 48: Line 50:
 
==2010 ...==
 
==2010 ...==
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=51588 ChessBase native engines (freeware)] by [[Norbert Raimund Leisner]], [[CCC]], March 13, 2014
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=51588 ChessBase native engines (freeware)] by [[Norbert Raimund Leisner]], [[CCC]], March 13, 2014
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72596 Gromit 2.20 Correct Configuration] by [[Brendan J. Norman]], [[CCC]], December 17, 2019
  
 
=External Links=  
 
=External Links=  
Line 54: Line 57:
 
* [http://kirr.homeunix.org/chess/engines/Norbert's%20collection/GromitChess%20(Compilation)/ Index of /chess/engines/Norbert's collection/GromitChess (Compilation)] by [[Norbert Raimund Leisner]], hosted by [[Kirill Kryukov]]
 
* [http://kirr.homeunix.org/chess/engines/Norbert's%20collection/GromitChess%20(Compilation)/ Index of /chess/engines/Norbert's collection/GromitChess (Compilation)] by [[Norbert Raimund Leisner]], hosted by [[Kirill Kryukov]]
 
: [http://kirr.homeunix.org/chess/engines/Norbert%27s%20collection/GromitChess%20%28Compilation%29/v1.2%20%28standalone%20application%29/NEWS.TXT New features in GromitChess 1.2]
 
: [http://kirr.homeunix.org/chess/engines/Norbert%27s%20collection/GromitChess%20%28Compilation%29/v1.2%20%28standalone%20application%29/NEWS.TXT New features in GromitChess 1.2]
 +
* [http://scleinzell.schachvereine.de/p_spielprogramme/youngtal_b.shtml Young Talents, Teil 2] by [[Peter Schreiner]], Mai 2000, hosted by [http://scleinzell.schachvereine.de/home/news.shtml Schachclub Leinzell] (German)
 
==Misc==
 
==Misc==
 
* [http://www.wallaceandgromit.com/ Wallace & Gromit - The Official Site]
 
* [http://www.wallaceandgromit.com/ Wallace & Gromit - The Official Site]
Line 63: Line 67:
 
[[Category:WinBoard]]
 
[[Category:WinBoard]]
 
[[Category:XBoard]]
 
[[Category:XBoard]]
 +
[[Category:Commercial]]
 +
[[Category:ChessBase]]
 +
[[Category:68000]]
 +
[[Category:8086]]
 +
[[Category:X86]]
 +
[[Category:Amiga]]
 +
[[Category:PC]]
 +
[[Category:Linux]]
 +
[[Category:Windows]]
 
[[Category:Comics]]
 
[[Category:Comics]]
 +
[[Category:Fiction]]

Latest revision as of 14:27, 19 December 2019

Home * Engines * GromitChess

GromitChess, (Gromit, Gromit Chess)
a chess engine by Frank Schneider and Kai Skibbe. Gromit, later renamed to GromitChess, was initially written by Frank. In 1999 former tester Kai Skibbe joined the development [2]. Gromit and GromitChess played several IPCCCs, the WMCCC 1995, WCCC 1999 in Paderborn and the WMCCC 2001 in Maastricht, where it won the title of the Amateur World Microcomputer Chess Champion. Early versions (1.2) were standalone engines with an own GUI, later versions (> 2.0) were WinBoard/XBoard compatible, a dedicated version (3.1) was sold along with other Young Talents by ChessBase, running under their Database or Fritz GUI [3]. GromitChess (3.10.3) emphasized its ambitions going commercial while incorporated into the PocketGrandmaster for Pocket PC [4] [5], and became predecessor of Anaconda.

Description

given in 1999 from the ICGA tournament site [6]:

GromitChess is a C++-program, developed in a Linux-environment (Emacs, gcc). It searches about 25000 to 50000 nodes per second on a K6/200 and tries to be intelligent rather than fast. Attacktables are the primary datastructure (16 bit for every square and player; bit n is set if piece n attacks the square). The search uses iterative deepening, PVS, transposition tables, killer- and history heuristic, nullmove (R=2), about 10 chess-specific extensions and some pruning heuristics. The quiescence uses a static exchange evaluator and includes some checks and other threatening moves. Parts of the evaluation are initialized at the root but most of the work is done at the leafnodes. You can find more information and executables in the WWW. 

Copy Make

Frank Schneider on Gromit's Copy-Make approach [7]:

I think it depends on your program and the board representation. Gromit uses copy+update and >1KB is copied every move (which is maybe too much). When I decided to do it that way (on an Amiga) I only considered clock cycles, but on a PC the low memory-bandwidth is the real problem. Since Gromit's evaluation and search heuristics use most of the processor time I never tried update+take back, because I guess it would give me less than 10% speedup, probably being slower than copy+update.
There are some advantages of copy+update:
- it is easy to program
- it is easier to do some 'clever' things that would be difficult to take back
- you can compare the current position with previous positions in the search tree
An alternative would use a mix of copied and static data structures. 

See also

Forum Posts

1997 ...

2000 ...

2010 ...

External Links

Chess Engine

New features in GromitChess 1.2

Misc

References

Up one level