Wing

Home * Engines * Wing



Wing, a WinBoard compliant chess engine by Stef Luijten written in C++, first released in October 2004. Initially influenced by Crafty, Wing was released as open source in December 2010 to demonstrate the basics of chess programming , shortly before Stef Luijten started his Winglet tutorial Writing a Chess Program in 99 Steps.

=Description=

Board Representation
Wing is a bitboard engine and determines sliding piece attacks using rotated bitboards. The inner six bits optimization yields to four lookup tables of 64x64x8 bytes, that is 32-KiB each or 1/8 MiB in total for ranks, files, diagonals and anti-diagonals. Interestingly, this attack table layout was preserved in Winglet, when line-wise occupied states were rotated on the fly by magic multiplication and shift right.

Search
Wing performs a negamax alpha-beta search with conditional compiled (default on) PVS inside the iterative deepening framework without aspiration windows. The recent version has a always replace transposition table using Zobrist keys, while earlier versions used an additional depth-preferred replacement table. As stated by its author in 2006, Wing has gained over 100 ELO points from adding history pruning, while the published sources lack LMR.

Selectivity

 * Check Extensions
 * Null Move Pruning
 * Quiescence Search
 * Recapture Extensions
 * Passed Pawn Extensions
 * Threat Extensions
 * Futility Pruning
 * Extended Futility Pruning
 * Razoring

Move Ordering

 * Principal Variation Extraction from TT
 * Killer Heuristic
 * History Heuristic
 * MVV-LVA

Evaluation

 * Material Balance
 * Piece-Square Tables
 * Development
 * Mobility
 * Pawn Structure
 * Backward Pawn
 * Doubled Pawn
 * Isolated Pawn
 * Passed Pawn
 * Connected Passed Pawns


 * Pawn Hash Table
 * Bishop Pair
 * Rook on Open File
 * King Safety in Opening, Middlegame
 * Pawn Shield
 * King Tropism


 * King Centralization in Endgame

=See also=
 * Crafty
 * Little Wing
 * Winglet

=Forum Posts=
 * Wing exit from Winboard! by Pablo, Winboard Forum, October 25, 2004
 * wing engine files by Adam Wilks, CCC], November 01, 2005
 * Hash table hit rate by Stef Luijten, Winboard Forum, November 16, 2005 » Transposition Table
 * Re: history pruning/ late move pruning by Stef Luijten, Winboard Forum, March 02, 2006

=External Links=

Chess Engine

 * Wing from CCRL 40/4
 * Download List from Ron Murawski's Computer-Chess Wiki
 * Index of /chess/engines/Jim Ablett/WING by Jim Ablett, hosted by Kirill Kryukov

Chess

 * Wing Gambit from Wikipedia

Misc

 * Wing from Wikipedia
 * Wing (disambiguation) from Wikipedia
 * Wing (building) from Wikipedia
 * Focus - Angle Wings, Live at Old Grey Whistle Test 1976, YouTube Video
 * Line-up: Thijs van Leer, Philip Catherine, Bert Ruiter, David Kemper

=References= Up one Level