Older Version Newer Version

GerdIsenberg GerdIsenberg Feb 7, 2016

**[[Home]] * [[Engines]] * Ifrit**
|| [[image:196px-Brooklyn_Museum_-_Arghan_Div_Brings_the_Chest_of_Armor_to_Hamza.jpg link="https://commons.wikimedia.org/wiki/File:Brooklyn_Museum_-_Arghan_Div_Brings_the_Chest_of_Armor_to_Hamza.jpg"]] ||~ || **Ifrit**, (Ифрит)
an [[UCI]] compliant [[Open Source Engines|open source chess engine]] by [[Andrey Brenkman]] written in [[Cpp|C++]], distributed under the [[Free Software Foundation#GPL|GNU General Public License]], with executables built to run under [[Windows]], [[Linux]], and [[Android]], 64, and 32 bit. The development started in 2006, as suggested by the copyright notice inside the source files, the most recent version m1.8 published on [[https://en.wikipedia.org/wiki/Bitbucket|Bitbucket]] on June 14, 2012. Ifrit used several [[Board Representation|board representations]] and implementations in four series, namely [[0x88]] in series "c" , [[Bitboards]] in "b",  object oriented Bitboards in series "j", and finally, [[Magic Bitboards]] in series "m". The [[Search|search]] does not perform [[Negamax]], but indirect [[Recursion|recursion]] with White as max-player and Black as min-player. Some routines, such as [[BitScan|bitscan]], are instantiated in multiple source files, bitboard constants are defined as decimals rather than more intuitive [[https://en.wikipedia.org/wiki/Hexadecimal|hexadecimal]] for board pattern. ||
|| An Ifrit named Arghan Div <ref>"An Ifrit named Arghan [[https://en.wikipedia.org/wiki/Daeva|Div]] brings the chest of armor to [[https://en.wikipedia.org/wiki/Hamzanama|Hamza]]", unknown artist, between 1562 and 1577, [[https://en.wikipedia.org/wiki/Brooklyn_Museum|Brooklyn Museum]], [[https://en.wikipedia.org/wiki/Wikimedia_Commons|Wikimedia Commons]], [[https://en.wikipedia.org/wiki/Ifrit|Ifrit from Wikipedia]]</ref> ||~ ||^ ||
[[toc]]
=Features=
<ref>Based on Ifrit_m1_9_Beta_24_June_2012, [[https://bitbucket.org/abrenkman/ifrit_chess_engine/src|abrenkman / Ifrit_chess_engine / source / — Bitbucket]]</ref>
==[[Move Generation]]==
* [[Magic Bitboards#Plain|Plain Magic Bitboards]]
* [[BitScan#DeBruijnMultiplation|BitScan Forward by De Bruijn Multiplication]] <ref>[[BitScan#DeBruijnMultiplation|Bitscan forward by De Bruijn Multiplication]] with De Bruijn constant from CPW, 0x03F79D71B4CB0A89, used as decimal magic 285870213051386505, implementation (decimal conversion?) credited to [[Jim Ablett]], routine by [[Charles Leiserson]], [[Harald Prokop]] and [[Keith H. Randall]], end of [[https://bitbucket.org/abrenkman/ifrit_chess_engine/src/159ff9cab144e4fb6d63f208550566b3d2ed4f81/move_generation.cpp?fileviewer=file-view-default|abrenkman / Ifrit_chess_engine / source / move_generation.cpp — Bitbucket]], also instantiated elsewhere</ref>
* [[BitScan#DoubleConversionBSR|BitScan Reverse by Double Conversion]]
* [[Population Count#SWARPopcount|SWAR-Popcount]]
==[[Search]]==
* [[Iterative Deepening]]
* [[Principal Variation Search]]
* [[Transposition Table]]
* [[Zobrist Hashing]]
* [[Move Ordering]]
** [[History Heuristic]]
** [[Killer Heuristic]]
** [[MVV-LVA|MVV/LVA]]
* [[Selectivity]]
** [[Check Extensions]]
** [[Null Move Pruning]]
** [[Late Move Reductions]]
** [[Futility Pruning]]
** [[Razoring]]
** [[Quiescence Search]]
** [[Delta Pruning]]
==[[Evaluation]]==
* [[Material]]
* [[Piece-Square Tables]]
* [[Pawn Structure]]
* [[Evaluation of Pieces]]
* [[King Safety]]
** [[King Safety#PawnShield|Pawn Shield]]
** [[King Safety#SquareControl|Square Control]]

=See also=
* [[Djinn]]
* [[Genie]]
* [[Various Classifications#Metaphysics|Metaphysics]]
* [[Various Classifications#Mythology|Mythology]]

=Forum Posts=
* [[http://www.talkchess.com/forum/viewtopic.php?t=18427|Ifrid??]] by Tony Thomas, [[CCC]],  December 17, 2007
* [[http://www.talkchess.com/forum/viewtopic.php?t=18525|Ifrit]] by [[Gabor Szots]], [[CCC]],  December 24, 2007
* [[http://www.talkchess.com/forum/viewtopic.php?t=32163|Ifrit Updated]] by [[Swaminathan Natarajan]], January 29, 2010
* [[http://www.talkchess.com/forum/viewtopic.php?t=35800|[STS 1-10] Ifrit 3.6]] by [[Swaminathan Natarajan]], August 14, 2010

=External Links=
==Chess Engine==
* [[http://andchess2006.narod.ru/|Шахматная программа Ифрит]]
* [[https://bitbucket.org/abrenkman/ifrit_chess_engine/src|abrenkman / Ifrit_chess_engine / source / — Bitbucket]]
* [[http://kirr.homeunix.org/chess/engines/Jim%20Ablett/IFRIT/|Index of /chess/engines/Jim Ablett/IFRIT]] by [[Jim Ablett]] hosted by [[Kirill Kryukov]]
* [[http://www.computerchess.org.uk/ccrl/4040/cgi/compare_engines.cgi?family=Ifrit&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|Ifrit]] at [[CCRL|CCRL 40/40]]
==Misc==
* [[https://en.wikipedia.org/wiki/Ifrit|Ifrit from Wikipedia]]
> [[https://ru.wikipedia.org/wiki/%D0%98%D1%84%D1%80%D0%B8%D1%82|Ифрит — Википедия]]
* [[http://www.britannica.com/topic/ifrit|ifrit | Islamic mythology | Britannica.com]]
* [[https://github.com/tedsuo/ifrit|GitHub - tedsuo/ifrit: a simple process model for go]]

=References= 
<references />
=What links here?= 
[[include page="Ifrit" component="backlinks" limit="40" ]]
**[[Engines|Up one Level]]**