Difference between revisions of "Typhoon"

From Chessprogramming wiki
Jump to: navigation, search
(Created page with "'''Home * Engines * Typhoon''' FILE:Typhoon Mike 11 nov 1990 2221Z.jpg|border|right|thumb|220px| [https://en.wikipedia.org/wiki/Typhoon_Mike Typhoon Mike...")
 
Line 7: Line 7:
  
 
=Description=
 
=Description=
Like [[Monsoon]], Typhoon represent the board as [[0x88]] array, where the [[0x88#SquareRelations|difference of two square coordinates]] has unique [[Direction|direction]] and [[Distance|distance]] relationship, extensively using [[Vector Attacks|vector delta tables]] for [[Check|in check]] detection, [[Move Generation|move generation]], [[X-ray|X-ray attack]] detection, [[Portable Game Notation|PGN]] file parsing for [[Opening Book|book]] creation, [[Static Exchange Evaluation|static exchange evaluation]], and [[Evaluation|position evaluation]].  
+
Like [[Monsoon]], Typhoon represents the board as [[0x88]] array, where the [[0x88#SquareRelations|difference of two square coordinates]] has unique [[Direction|direction]] and [[Distance|distance]] relationship, extensively using [[Vector Attacks|vector delta tables]] for [[Check|in check]] detection, [[Move Generation|move generation]], [[X-ray|X-ray attack]] detection, [[Portable Game Notation|PGN]] file parsing for [[Opening Book|book]] creation, [[Static Exchange Evaluation|static exchange evaluation]], and [[Evaluation|position evaluation]].  
 
It performs a [[Principal Variation Search|principal variation search]] with [[Null Move Pruning|nullmove pruning]], various [[Extensions|extensions]] and [[Transposition Table|transposition table]].  
 
It performs a [[Principal Variation Search|principal variation search]] with [[Null Move Pruning|nullmove pruning]], various [[Extensions|extensions]] and [[Transposition Table|transposition table]].  
 
For [[Evaluation|evaluation]] purpose, Typhoon keeps track of [[Piece-Square Tables|piece-square]] and [[Material|material balance]] [[Incremental Updates|incrementally]]. Utilizing a [[Pawn Hash Table|pawn hash table]] with some pawn [[Bitboards|bitboards]], it considers the [[Pawn Structure|pawn structure]] along with multiple features for [[King|king]] and [[Evaluation of Pieces|pieces]], such as [[King Safety|king safety]] and [[Mobility|mobility]] to name a few.  
 
For [[Evaluation|evaluation]] purpose, Typhoon keeps track of [[Piece-Square Tables|piece-square]] and [[Material|material balance]] [[Incremental Updates|incrementally]]. Utilizing a [[Pawn Hash Table|pawn hash table]] with some pawn [[Bitboards|bitboards]], it considers the [[Pawn Structure|pawn structure]] along with multiple features for [[King|king]] and [[Evaluation of Pieces|pieces]], such as [[King Safety|king safety]] and [[Mobility|mobility]] to name a few.  

Revision as of 16:44, 24 May 2019

Home * Engines * Typhoon

Typhoon,
an open source chess engine by Scott Gasch, as successor of Monsoon also written in C and compliant to the Chess Engine Communication Protocol.

Description

Like Monsoon, Typhoon represents the board as 0x88 array, where the difference of two square coordinates has unique direction and distance relationship, extensively using vector delta tables for in check detection, move generation, X-ray attack detection, PGN file parsing for book creation, static exchange evaluation, and position evaluation. It performs a principal variation search with nullmove pruning, various extensions and transposition table. For evaluation purpose, Typhoon keeps track of piece-square and material balance incrementally. Utilizing a pawn hash table with some pawn bitboards, it considers the pawn structure along with multiple features for king and pieces, such as king safety and mobility to name a few. Typhoon supports Nalimov Tablebases and has various simple interior node recognizers for wrong color bishop endgames and trivially won KPK games. These recognizers are based on Thorsten Greiner's program Amy [2] [3].

Parallel Search

While running on a multi-processor machine, Typhoon uses a tree splitting algorithm somewhat similar to principal variation splitting to search in parallel with multiple threads. Splitting occurs after the first move has been searched at PV-nodes or if the first N moves at All-nodes [4] [5].

See also

Forum Posts

External Links

Chess Engine

Misc

Pacific typhoon season

References

Up one level