|
|
Line 1: |
Line 1: |
− | '''[[Main Page|Home]] * [[Engines]] * Djinn'''
| |
− |
| |
− | [[FILE:Kitab al-Bulhan --- devils talking.jpg|border|right|thumb|240px| King of the djinns, Al-Malik al-Aswad <ref>The black king of the djinns, Al-Malik al-Aswad, from the late 14th century [https://en.wikipedia.org/wiki/Book_of_Wonders Book of Wonders], [https://en.wikipedia.org/wiki/Bodleian_Libraries Bodleian Libraries] Shelfmark; MS. Bodl. Or. 133. Fol. 30b, [https://en.wikipedia.org/wiki/Wikimedia_Commons Wikimedia Commons]</ref> ]]
| |
− |
| |
− | '''Djinn''',<br/>
| |
− | a [[Chess Engine Communication Protocol]] compliant chess engine by [[Tom Likens]], written in [[Cpp|C++]] with some [[Assembly#InlineAssembly|inline assembly]], first released in December 2003 <ref>[http://www.open-aurec.com/wbforum/viewtopic.php?f=18&t=45757 Djinn 0.815 Available] by [[Tom Likens]], [[Computer Chess Forums|Winboard Forum]], December 25, 2003</ref>.
| |
− | Djinn utilizes [[Bitboards|bitboards]] to represent its [[Chessboard|chess board]] and [[Pieces|pieces]].
| |
− | As relatively slow searcher, Djinn spends most of its time in the [[Evaluation|evaluation]]. Executables are available to run under [[Windows]] and [[Linux]], [[Đorđe Vidanović]] has provided Djinn's [[Opening Book]]. Djinn played the [[CCT6]] and [[CCT8]].
| |
− |
| |
− | =Techniques and Algorithms=
| |
− | Djinn uses most of the following techniques and [[Algorithms|algorithms]] in one form or another <ref>[https://web.archive.org/web/20180220175920/http://webpages.charter.net/tlikens/tech.html Computer Chess Programming Topics] ([https://en.wikipedia.org/wiki/Wayback_Machine Wayback Machine])</ref>:
| |
− | * [[Time Management]]
| |
− | * [[Minimax]] [[Search]]
| |
− | ** [[Negamax]] Searching
| |
− | * [[Alpha-Beta|Alpha-beta]]
| |
− | ** [[NegaScout|Negascout]]
| |
− | ** [[Principal Variation Search|PVS]]
| |
− | * [[Iterative Deepening]]
| |
− | ** [[Aspiration Windows|Aspiration Search]]
| |
− | * [[Null Move Pruning]]
| |
− | ** [[Zugzwang]]
| |
− | ** [[Null Move Pruning#ZugzwangVerification|Verified Null-move Search]]
| |
− | ** [[Null Move Pruning#AdaptiveNullMovePruning|Adaptive Null-move Search]]
| |
− | * [[Quiescence Search]]
| |
− | ** [[Quiescence Search#Checks|Checks]] in [[Quiescence Search]]
| |
− | * [[Internal Iterative Deepening]]
| |
− | * [[Principal Variation#CollectionDuringSearch|Collecting]] the [[Principal Variation|Principal Variation]]
| |
− | * [[Extensions]]
| |
− | ** [[Check Extensions]]
| |
− | ** [[Mate Threat Extensions]]
| |
− | ** [[Passed Pawn Extensions]]
| |
− | ** [[Recapture Extensions]]
| |
− | ** [[Singular Extensions]]
| |
− | * [[Reductions|Reductions]]/[[Pruning]]
| |
− | * [[Repetitions|Repetition Check]]
| |
− | * [[Bitboards]]
| |
− | ** [[BitScan|FirstOne]]
| |
− | ** [[Population Count|Population (or Bit) Counting]]
| |
− | ** [[Assembly#InlineAssembly|Inline Assembly]]
| |
− | * [[Rotated Bitboards]]
| |
− | * [[Magic Bitboards]]
| |
− | * [[Move Generation]]
| |
− | ** [[MVV-LVA|MVV/LVA]]
| |
− | ** [[Static Exchange Evaluation|Static-Exchange Evaluation (SEE)]]
| |
− | ** [[Perft]]
| |
− | ** [[Check|In-Check Evasion]]
| |
− | * [[Move Ordering|Move ordering]]
| |
− | ** [[Move Ordering#Root|Ordering moves at the root]]
| |
− | ** [[Hash Move|Hash move]]
| |
− | ** [[Killer Move|Killer moves]]
| |
− | ** [[Mate Killers|Killer mate moves]]
| |
− | ** [[History Heuristic]]
| |
− | * [[Evaluation]]
| |
− | ** [[Piece-Square Tables]]
| |
− | ** [[Opening]]
| |
− | *** [[Development]]
| |
− | *** [[Castling]]
| |
− | *** [[Center Control|Control of the Center]]
| |
− | ** [[Middlegame]]
| |
− | *** [[Bishop Pair|Two-Bishops Bonus]]
| |
− | *** [[Rook on Seventh|Rooks on the 7th Rank]]
| |
− | ** [[Endgame]]
| |
− | *** [[Bishops of Opposite Colors|Opposite-colored bishops]]
| |
− | *** [[Passed Pawn]]
| |
− | *** [[Rule of the Square|Rule-of-the-Square]]
| |
− | *** [[Bahr's Rule]]
| |
− | ** [[King Safety]]
| |
− | *** [[King Safety#PawnShield|Defects]]
| |
− | *** [[King Safety#KingTropism|Enemy Piece Tropism]]
| |
− | *** [[Castling|Delayed Castling]]
| |
− | *** [[King Safety#SquareControl|Control of the Squares Around the King]]
| |
− | ** [[Interior Node Recognizer|Interior-Node Recognizers]]
| |
− | ** [[Endgame Bitbases|Bitbases]]
| |
− | * [[Transposition Table|Hash Tables]]
| |
− | ** [[Zobrist Hashing|Zobrist Keys]]
| |
− | ** Adjusting [[Score#MateScores|Mate Scores]] and [[Bound|Bounds]]
| |
− | ** [[Pawn Hash Table|Pawn Hash Tables]]
| |
− | ** [[Evaluation Hash Table]]
| |
− | * [[Internal Iterative Deepening]]
| |
− | * [[Opening Book]]
| |
− | * [[Learning]]
| |
− | ** [[Book Learning|Opening Book Modification]]
| |
− | ** [[Persistent Hash Table|Position Learning]]
| |
− | * [[Endgame Tablebases]]
| |
− | ** [[Nalimov Tablebases|Nalimov format]]
| |
− | * [[XBoard]]/[[WinBoard]]
| |
− |
| |
− | =Selected Games=
| |
− | [[CCT6]], round 7, [[Hossa]] - [[Djinn]] <ref>[http://www.vrichey.de/cct6/ CCT6 - PGN download] hosted by [[Volker Richey]]</ref>
| |
− | <pre>
| |
− | [Event "CCT6"]
| |
− | [Site "Internet Chess Club"]
| |
− | [Date "2004.02.01"]
| |
− | [Round "7"]
| |
− | [White "Hossa"]
| |
− | [Black "Djinn"]
| |
− | [Result "0-1"]
| |
− |
| |
− | 1.e3 e5 2.d4 exd4 3.exd4 d5 4.Nf3 c6 5.Bd3 Qe7+ 6.Be3 Qb4+ 7.Nfd2 Nf6 8.O-O Be7
| |
− | 9.c3 Qd6 10.Re1 Ng4 11.Nf3 Nxe3 12.Rxe3 O-O 13.Nbd2 g6 14.c4 Be6 15.c5 Qc7 16.Ne5
| |
− | Nd7 17.Nxd7 Qxd7 18.Qc2 b6 19.b4 bxc5 20.bxc5 Bg5 21.Ree1 Bf4 22.Rab1 Rfe8 23.Nf3
| |
− | Bg4 24.Ne5 Bxe5 25.dxe5 Rab8 26.Rxb8 Rxb8 27.a3 Bf5 28.f4 Rb5 29.Rc1 Bxd3 30.Qxd3
| |
− | h5 31.Qd2 Qf5 32.a4 Rb1 33.a5 Rxc1+ 34.Qxc1 Qe4 35.g3 Qb4 36.a6 Kf8 37.Kf2 Qd4+
| |
− | 38.Kg2 Qe4+ 39.Kf2 Qd3 40.e6 Qd4+ 41.Kg2 Qb4 42.exf7 Kxf7 43.Kf2 Qa5 44.Qc2 Qxa6
| |
− | 45.f5 Qa1 46.fxg6+ Kg7 47.Qe2 Qd4+ 48.Kf1 Qc4 49.Qxc4 dxc4 50.Ke2 Kxg6 51.h3 Kf5
| |
− | 52.Ke3 Ke5 53.Kd2 Kd4 54.Kc1 c3 55.Kc2 Kc4 56.Kd1 Kd3 57.Ke1 c2 58.Kf2 c1=Q 59.g4
| |
− | Qf4+ 60.Kg2 Ke3 61.g5 Qxg5+ 62.Kf1 Qg3 63.h4 Qf2# 0-1
| |
− | </pre>
| |
− |
| |
− | =See also=
| |
− | * [[Genie]]
| |
− | * [[Ifrit]]
| |
− |
| |
− | =Forum Posts=
| |
− | * [http://www.open-aurec.com/wbforum/viewtopic.php?f=18&t=45757 Djinn 0.815 Available] by [[Tom Likens]], [[Computer Chess Forums|Winboard Forum]], December 25, 2003
| |
− | * [https://www.stmintz.com/ccc/index.php?id=364245 Re: Can any program find this thematic move? (Djinn 0.781)] by [[Tom Likens]], [[CCC]], May 08, 2004
| |
− | * [http://www.talkchess.com/forum/viewtopic.php?t=45572 Djinn 0.967 is now available for download] by [[Tom Likens]], [[CCC]], October 15, 2012
| |
− | * [http://www.talkchess.com/forum/viewtopic.php?t=45662 Djinn 0.969 Released (64-bit + 32-bit)] by [[Tom Likens]], [[CCC]], October 20, 2012
| |
− | * [http://www.talkchess.com/forum/viewtopic.php?t=45928 New Djinn 0.971 (time management fix)] by [[Tom Likens]], [[CCC]], November 10, 2012
| |
− | * [http://www.talkchess.com/forum/viewtopic.php?t=47046 Djinn 0.979 Available (Win x64, 32 and Linux x64)] by [[Tom Likens]], [[CCC]], January 30, 2013
| |
− | * [http://www.talkchess.com/forum/viewtopic.php?t=50618 Djinn 1.006] by [[Tom Likens]], [[CCC]], December 24, 2013
| |
− | * [http://www.talkchess.com/forum/viewtopic.php?t=51972 Djinn 1.021] by [[Tom Likens]], [[CCC]], April 12, 2014
| |
− |
| |
− | =External Links=
| |
− | ==Chess Engine==
| |
− | * [https://web.archive.org/web/20180112023028/http://webpages.charter.net/tlikens/index.html Djinn] by [[Tom Likens]] ([https://en.wikipedia.org/wiki/Wayback_Machine Wayback Machine])
| |
− | : [https://web.archive.org/web/20161231040908/http://webpages.charter.net/tlikens/docs/Users_guide.html Djinn User Guide]
| |
− | * [http://kirill-kryukov.com/chess/kcec/cgi/engine_details.cgi?print=Details&each_game=1&eng=Djinn%200.925x Djinn 0.925x] in [[KCEC]]
| |
− | * [http://www.computerchess.org.uk/ccrl/404/cgi/compare_engines.cgi?family=Djinn&print=Rating+list&print=Results+table&print=LOS+table&print=Ponder+hit+table&print=Eval+difference+table&print=Comopp+gamenum+table&print=Overlap+table&print=Score+with+common+opponents Djinn] in [[CCRL|CCRL 40/4]]
| |
− | * [http://www.computerchess.org.uk/ccrl/4040/cgi/compare_engines.cgi?family=Djinn&print=Rating+list&print=Results+table&print=LOS+table&print=Ponder+hit+table&print=Eval+difference+table&print=Comopp+gamenum+table&print=Overlap+table&print=Score+with+common+opponents Djinn] in [[CCRL|CCRL 40/40]]
| |
− | ==Misc==
| |
− | * [https://en.wikipedia.org/wiki/Jinn Djinn from Wikipedia]
| |
− | * [https://en.wikipedia.org/wiki/Djinn_%28disambiguation%29 Djinn (disambiguation) from Wikipedia]
| |
− | * [https://en.wikipedia.org/wiki/Jinn_%28disambiguation%29 Jinn (disambiguation) from Wikipedia]
| |
| '''[[Main Page|Home]] * [[Engines]] * Djinn''' | | '''[[Main Page|Home]] * [[Engines]] * Djinn''' |
| | | |