Changes

Jump to: navigation, search

Paladin

5,443 bytes added, 18:03, 14 March 2019
Created page with "'''Home * Engines * Paladin''' [[FILE:Rolandfealty.jpg|border|right|thumb| Charlemagne and his Paladin <ref>[https://en.wikipedia.org/wiki/Roland Roland] re..."
'''[[Main Page|Home]] * [[Engines]] * Paladin'''

[[FILE:Rolandfealty.jpg|border|right|thumb| Charlemagne and his Paladin <ref>[https://en.wikipedia.org/wiki/Roland Roland] receives the sword [https://en.wikipedia.org/wiki/Durendal Durendal] from [https://en.wikipedia.org/wiki/Holy_Roman_Emperor Holy Roman Emperor] [https://en.wikipedia.org/wiki/Charlemagne Charlemagne]. From a manuscript of a [https://en.wikipedia.org/wiki/Chanson_de_geste chanson de geste]. [https://en.wikipedia.org/wiki/Paladin Paladin from Wikipedia], [https://en.wikipedia.org/wiki/Wikimedia_Commons Wikimedia Commons]</ref> ]]

'''Paladin''',<br/>
an experimental [[UCI]] compliant [[:Category:Open Source|open source chess engine]] by [[Ankan Banerjee]], written in [[Cpp|C++]].
Paladin is intended as testbed for various [[Bitboards|bitboard]] techniques concerning [[Space-Time Tradeoff|space-time tradeoff]], more or less suited for various architectures, such as [[GPU]] friendly [[Kogge-Stone Algorithm|Kogge-Stone algorithms]] versus [[Magic Bitboards#Fancy|fancy]] or even [[Magic Bitboards#Plain|plain magic bitboards]] to determine [[Sliding Piece Attacks|sliding piece attacks]]. Paladin features a set of [https://en.wikipedia.org/wiki/Compile_time compile time] switches to control the [[Search|search]], to use intrinsics for [[Population Count|population count]] and [[BitScan|bitscan]], and as mentioned, to determine computation versus lookup techniques <ref>[https://github.com/ankan-ban/chess_cpu/blob/master/switches.h chess_cpu/switches.h at master · ankan-ban/chess_cpu · GitHub]</ref>. While not officially released nor announced, the testing community exploited the publicly available sources from [https://en.wikipedia.org/wiki/GitHub GitHub] providing its author with a [https://en.wiktionary.org/wiki/fait_accompli fait accompli] <ref>[http://www.talkchess.com/forum/viewtopic.php?t=60328&start=10 Re: New engine?] by [[Ankan Banerjee]], [[CCC]], July 11, 2016</ref>.

=Description=
==Board Representation==
Paladin's [[Board Representation|board is represented]] by a dense hexa bitboard suited for a [[Copy-Make|copy-make approach]], that is six [[Bitboards|bitboards]] for white pieces, pawns, knights, diagonal and orthogonal sliding pieces, and kings. The base ranks of the pawn bitboard are even used to encode game state data such as [[Castling Rights|castling rights]], [[En passant|en passant]] target square and [[Halfmove Clock|halfmove clock]] <ref>[https://github.com/ankan-ban/chess_cpu/blob/master/chess.h chess_cpu/chess.h at master · ankan-ban/chess_cpu · GitHub]</ref>.

==Search==
The [[Search|search]] is basic [[Alpha-Beta|alpha-beta]] with [[Transposition Table|transposition table]] inside an [[Iterative Deepening|iterative deepening]] loop without [[Aspiration Windows|aspiration]] <ref>[https://github.com/ankan-ban/chess_cpu/blob/master/main.cpp chess_cpu/main.cpp at master · ankan-ban/chess_cpu · GitHub]</ref> <ref>[https://github.com/ankan-ban/chess_cpu/blob/master/search.cpp chess_cpu/search.cpp at master · ankan-ban/chess_cpu · GitHub]</ref>, enhanced by [[Null Move Pruning#AdaptiveNullMovePruning|adaptive null move pruning]], [[Late Move Reductions|LMR]] and a few [[Extensions|extensions]]. [[Move Ordering|Move ordering]] is due to [[Hash Move|hash move]] and [[Internal Iterative Deepening|IID]], [[MVV-LVA|MVV/LVA]] and [[Static Exchange Evaluation|SEE]] for [[Captures|captures]], and [[Killer Heuristic|killer heuristic]] and [[History Heuristic|history heuristic]] otherwise.

==Evaluation==
Paladin's rudimentary [[Evaluation|evaluation]] is based on the [[Simplified Evaluation Function|simplified evaluation function]] by [[Tomasz Michniewski]] with [[Point Value|point values]] partly taken from [[Larry Kaufman|Larry Kaufman's]] material imbalance article <ref>[http://www.danheisman.com/evaluation-of-material-imbalances.html The Evaluation of Material Imbalances] by [[Larry Kaufman]]</ref> <ref>[https://github.com/ankan-ban/chess_cpu/blob/master/eval.cpp chess_cpu/eval.cpp at master · ankan-ban/chess_cpu · GitHub]</ref>.

=Forum Posts=
* [http://www.talkchess.com/forum/viewtopic.php?t=60328 New engine?] by [[Günther Simon]], [[CCC]], May 31, 2016
: [http://www.talkchess.com/forum/viewtopic.php?t=60328&start=10 Re: New engine?] by [[Ankan Banerjee]], [[CCC]], July 11, 2016

=External Links=
==Chess Engine==
* [https://github.com/ankan-ban/chess_cpu GitHub - ankan-ban/chess_cpu: Ankan's new chess engine]
* [http://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?print=Details&eng=Paladin%200.1%2064-bit#Paladin_0_1_64-bit Paladin 0.1 64-bit] in [[CCRL|CCRL 40/4]]
==Misc==
* [https://en.wiktionary.org/wiki/paladin paladin - Wiktionary]
* [https://en.wikipedia.org/wiki/Paladin Paladin from Wikipedia]
* [https://en.wikipedia.org/wiki/Paladin_(disambiguation) Paladin (disambiguation) from Wikipedia]
: [https://en.wikipedia.org/wiki/Paladin_(comics) Paladin (comics) from Wikipedia]
: [https://en.wikipedia.org/wiki/Paladin_(character_class) Paladin (character class) from Wikipedia]
* [http://www.progarchives.com/artist.asp?id=1292 Paladin] - The Fakir I (1971), [https://en.wikipedia.org/wiki/YouTube YouTube] Video
: {{#evu:https://www.youtube.com/watch?v=7ii4ZVmsCb4|alignment=left|valignment=top}}

=References=
<references />
'''[[Engines|Up one Level]]'''
[[Category:Open Source]]
[[Category:Comics]]
[[Category:Fiction]]
[[Category:Military]]

Navigation menu