ThothFish 1.1

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Damir
Posts: 2801
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

ThothFish 1.1

Post by Damir »

Can be downloaded from here: http://mzchessforum.altervista.org/down ... hp?id=2436
You can read more about it here, what kind of changes were made: http://mzchessforum.altervista.org/view ... 962#p38962
Eduard
Posts: 1439
Joined: Sat Oct 27, 2018 12:58 am
Location: Germany
Full name: N.N.

Re: ThothFish 1.1

Post by Eduard »

Yes, the author has published version 1.1 of the MZ Chess Forum. I would like to post the download link here, but I do not know if that suits the author, and why he does not do it himself?

There are very interesing Changes:
- updated to 31 March stockfish development
- .bin opening book support (copied and implemented from Brainfish)
- MagicTacticSolver renamed to FastTacticSolver
- 3 available versions of engine (modern, bmi2, old)
- made cute logo in inksacpe
- different equation for dynamic contempt (as an option to choose or not to choose)
- Analysis Toolbox
- some simplifications
majkelnowaq
Posts: 28
Joined: Fri Aug 10, 2018 4:07 pm
Full name: D.S.

Re: ThothFish 1.1

Post by majkelnowaq »

"and why he does not do it himself" good point :D

links to download:
https://www73.zippyshare.com/v/h02mFoZb/file.html
http://www.mediafire.com/file/aueqmaoco ... 1.zip/file

description:
"
//Introduction

ThothFish is a Stockfish derivative. Author is from Poland, the info shown from chess gui - "modified by An. Eg. Go" isn't a real name of author. It means Ancient Egyptian Gods and refers to name of derivative (Thoth - Egyptian god of wisdom and magic).

Stength of ThothFish v1.1 in comparison to Stockfish is almost equal. 'Almost' because some incomplete tests shown slightly better and some - slightly worse performance than standard Stockfish.

Personally, as a creator of this derivative, I think that Thothfish v1.1 could be possibly few elo weaker in general meaning. Reason of this can be an amateur process of compiling (I'm not even a programmer) and additions included in Thothfish which maybe slow it down a bit. On the other hand under some circumstances (hardware, time controls and settings) it can be for sure stronger.

Anyway I performed many tests with good results. Sometimes it seems to have better understanding of positional playing and sees more than Stockfish. I mean Thothfish can be still good choice because by using its options and giving it enough time You will have great opportunity for chess analysis/creating opening books/creating different styles of engine play and a lot more.

Some of options changes engine preferences of opening choice and calculating score. Sometimes You could be suprised when for example Stockfish would show quite big positive score against ThothFish and later lose a game to ThothFish. The more important thing is - Thothfish is for sure competitive to Stockfish and other engines.


// Specific info

Version 1.1 is based on Stockfish development version from March 31 2019.

Added Uci options:

* FastTacticSolver - really fast solves hard chess poistions. Usable for looking for mate or tactic hit in complex poisitions, shouldn't be in use for normal play.

* Analysis Toolbox - some options which can be useful for many purposes like correspondence games and others:
- Neutral - is neutral so does nothing and is default.

- SF-1R, SF-2R and SF-3R decrease Stockfish depth reductions by 1, 2 or 3, gives more precision but engine naturally slower attains next depths.

- FutilityP, NullmoveP, Probcut, MovecountP, CountermovesP, Futility2P, NegativemovesP, Negativemoves2P. Letter "P" refers to pruning. Picking some of these would disable appropriate type of pruning. So if You for example choose NullmoveP - it will turn off null move pruning. It's not so noticable (at least not in all positions) as decreasing reduction during observation when engine reaches next depths but it should be more noticable in selfdepths and long runs. There are FutilityP and Futility2P or NegativemovesP and Negativemoves2P (btw it means pruning moves with negative evaluation) because it connects to different parts of code.

- DeepAnalysis would disable Futility pruning, null move, moveCountPruning, NegativemovesP, Negativemoves2P - all together and decreases reductions by 3 too. It should be enough for most positions.

-VeryDeepAnalysis turns off all kind of pruning and decreases reductions by 8. It could find probably all good/tactic/mate moves in any positions without multipv or other additions, but takes a lot of time.

* SwapDC - it's experimental option. It changes dynamic contempt equation. For now it's hard to say is it good or bad in matter of engine strength. In some quick tests Thothfish seemed to play better with this option checked, like only wins and draws, no defeats in dozens of games against Stockfish. But there were runs when it was mainly losing and drawing through many games (or results in complete different performance on various machines and various time control). I think it's not properly tuned yet due to lack of time for testing. Anyway it affects engine playstyle and even if it doesn't increase its strength - doesnt weaken it much too. If You don't want to try it - just uncheck this option and dynamic contempt will be as it is in original Stockfish.

* Pawn Exchange and next to Queen Exchange refer to engine tendency for exchanging pieces. For example very high value for Queen Ex. cause engine would try to exchange queens as soon as possible, usuelly before 20 moves of game. Low (negative) values cause that Thothfish sacrfice much only to keep piece on the chessboard as long as possible. Of course the more negative values in exchanging options the more close positions engine would prefer, high values bring open play and quick swaping of pieces. Contempt has possibilty to set in range from -2000 to 2000, it should be useful for compensate score too if You pick very high or very low values, with small changes don't have to care about contempt setting.

* Own book and others below are of course for support opening books in .bin, it's a known solution from among others - Brainfish.

//Last words

There are 3 versions of compiled engine. Version popcnt for modern CPU, should work without problems on most computers nowadays.
Version bmi2 is a bit faster and usuelly needs Intel CPU. Last version - nopopcnt should work for some older machines.

In src folder are source files so everyone can compile it on one's own. If I could compile it without programming skills and knowledge - You can try too and maybe add some code from yourself.

In the end just look at ThothFish logo, it's pretty nice :) "
majkelnowaq
Posts: 28
Joined: Fri Aug 10, 2018 4:07 pm
Full name: D.S.

Re: ThothFish 1.1

Post by majkelnowaq »

Quick tests of released new version of ThothFish.

- default options of engines, hash 256 mb;
- no tablebases;
- all games from initial position;
- no adjudication from chess gui, games naturally ended as win/lose or draw;
- time 1min for game and + 1sec. for every move.

First test ThothFish v1.1 bmi2 vs Stockfish_19033111_x64 bmi2
pc - Intel i3-6006U, 3 of 4 cores in use, average n/s in start position about 2000 k n/s.
30 games played

ThothFish v.1.1 bmi2 - Stockfish_19033111_x64_bmi2 : 17,0/30 6-2-22 (==1=1=10=0=========1==1======1) 57% +49
Stockfish_19033111_x64_bmi2 - ThothFish v.1.1 bmi2 : 13,0/30 2-6-22 (==0=0=01=1=========0==0======0) 43% -49

Second test ThothFish v1.1 popcnt vs Stockfish_19033111_x64 modern
pc - AMD FX-6100 Six-Core, 4 of 6 cores in use, average n/s in start position about 3000 k n/s.
30 games played

Stockfish_19033111_x64_modern - ThothFish v.1.1 popcnt : 15,5/30 5-4-21 (=0====1=10===1======00==1==1==) 52% +14
ThothFish v.1.1 popcnt - Stockfish_19033111_x64_modern : 14,5/30 4-5-21 (=1====0=01===0======11==0==0==) 48% -14

Games:
https://www95.zippyshare.com/v/8DIhzhpg/file.html