Difference between revisions of "Jazz"

From Chessprogramming wiki
Jump to: navigation, search
 
Line 9: Line 9:
 
=Description=
 
=Description=
 
Jazz uses [[Bitboards|bitboards]], first [[Rotated Bitboards|rotated bitboards]], later [[Kindergarten Bitboards|Kindergarten bitboards]] to determine [[Sliding Piece Attacks|sliding piece attacks]] <ref>[http://www.eglebbk.dds.nl/program/chess-design.html Chess (Jazz & Sjaak) design]</ref>.
 
Jazz uses [[Bitboards|bitboards]], first [[Rotated Bitboards|rotated bitboards]], later [[Kindergarten Bitboards|Kindergarten bitboards]] to determine [[Sliding Piece Attacks|sliding piece attacks]] <ref>[http://www.eglebbk.dds.nl/program/chess-design.html Chess (Jazz & Sjaak) design]</ref>.
It performs [[Fail-Soft|fail-soft]] [[Alpha-Beta|alpha-beta]] with [[Null Move Pruning|null move pruning]] and [[Check Extensions|check extensions]].  
+
It performs [[Fail-Soft|fail-soft]] [[Alpha-Beta|alpha-beta]] [[Principal Variation Search|principal variation search]] with [[Quiescence Search|quiescence]], [[Null Move Pruning|null move pruning]] and [[Check Extensions|check extensions]]. [[Move Ordering|Move ordering]] considers [[Hash Move|hash move]], [[Mate Killers|mate killers]], and along with a [[Static Exchange Evaluation|SEE]], [[Captures|winning captures]] and [[Promotions|promotions]]. Further, beside the [[Killer Heuristic|killer heuristic]] and [[Countermove Heuristic|countermove heuristic]], a so called '''Combo Move''' heuristics is used to possibly refute opponent moves along similar lines <ref>[http://www.eglebbk.dds.nl/program/chess-search.html Chess (Jazz & Sjaak) search]</ref>.
[[Move Ordering|Move ordering]] considers [[Hash Move|hash move]], [[Mate Killers|mate killers]], [[Captures|winning captures]] and [[Promotions|promotions]].  
 
Further, beside the [[Killer Heuristic|killer heuristic]] and [[Countermove Heuristic|countermove heuristic]], a so called '''Combo Move''' heuristics is used to possibly refute opponent moves along similar lines <ref>[http://www.eglebbk.dds.nl/program/chess-search.html Chess (Jazz & Sjaak) search]</ref>.
 
 
The implementation of a [[Thread|multithreaded]] [[Parallel Search|parallel search]] along the [[Young Brothers Wait Concept]] with [[Shared Hash Table#Lockless|lock-less hashing]] was elaborated by Evert Glebbeek in a April 2013 [[CCC]] posting <ref>[http://www.talkchess.com/forum/viewtopic.php?t=47820 Implementation of multithreaded search in Jazz] by [[Evert Glebbeek]], [[CCC]], April 20, 2013</ref>. Jazz' [[Evaluation|evaluation]] takes [[Material|material]], [[Piece-Square Tables|piece-square tables]], [[Pawn Structure|pawn structure]], [[Mobility|mobility]], and [[King Safety|king safety]] into account.
 
The implementation of a [[Thread|multithreaded]] [[Parallel Search|parallel search]] along the [[Young Brothers Wait Concept]] with [[Shared Hash Table#Lockless|lock-less hashing]] was elaborated by Evert Glebbeek in a April 2013 [[CCC]] posting <ref>[http://www.talkchess.com/forum/viewtopic.php?t=47820 Implementation of multithreaded search in Jazz] by [[Evert Glebbeek]], [[CCC]], April 20, 2013</ref>. Jazz' [[Evaluation|evaluation]] takes [[Material|material]], [[Piece-Square Tables|piece-square tables]], [[Pawn Structure|pawn structure]], [[Mobility|mobility]], and [[King Safety|king safety]] into account.
 +
 +
=See also=
 +
* [[Sjaak (Glebbeek)|Sjaak]]
 +
* [[Leonidas]]
  
 
=Forum Posts=  
 
=Forum Posts=  

Latest revision as of 11:33, 11 May 2019

Home * Engines * Jazz

Origin of the word jazz [1]

Jazz,
an open source engine under the GNU General Public Licence by Evert Glebbeek, written in C, first released in February 2011 [2]. Jazz supports both, the Universal Chess Interface and Chess Engine Communication Protocol, and using appropriate compiles, runs on Windows, Linux and Mac OS X boxes.

Description

Jazz uses bitboards, first rotated bitboards, later Kindergarten bitboards to determine sliding piece attacks [3]. It performs fail-soft alpha-beta principal variation search with quiescence, null move pruning and check extensions. Move ordering considers hash move, mate killers, and along with a SEE, winning captures and promotions. Further, beside the killer heuristic and countermove heuristic, a so called Combo Move heuristics is used to possibly refute opponent moves along similar lines [4]. The implementation of a multithreaded parallel search along the Young Brothers Wait Concept with lock-less hashing was elaborated by Evert Glebbeek in a April 2013 CCC posting [5]. Jazz' evaluation takes material, piece-square tables, pawn structure, mobility, and king safety into account.

See also

Forum Posts

External Links

Chess Engine

Jazz

References

Up one Level