Thanks. 10 parameters to form a psq table is already a lot.
For the queen I have only one that scales the piece centralization bonus relatively to material value and mobility.
Texel 1.03
Moderator: Ras
-
tpetzke
- Posts: 686
- Joined: Thu Mar 03, 2011 4:57 pm
- Location: Germany
-
RJN
- Posts: 303
- Joined: Fri Jun 21, 2013 5:18 am
- Location: Orion Spiral Arm
Re: Texel 1.03
Fantastic, I'll be importing this into your excellent DroidFish app!
-
Sylwy
- Posts: 4943
- Joined: Fri Apr 21, 2006 4:19 pm
- Location: IAȘI - the historical capital of MOLDOVA
- Full name: Silvian Rucsandescu
Re: An impressive chess engine - Texel 1.03 !
Here is my test:
http://www.talkchess.com/forum/viewtopi ... 981#553981
Congratulations to the author !
SilvianR
http://www.talkchess.com/forum/viewtopi ... 981#553981
Congratulations to the author !
SilvianR
-
petero2
- Posts: 730
- Joined: Mon Apr 19, 2010 7:07 pm
- Location: Sweden
- Full name: Peter Osterlund
Re: Texel 1.03
Good idea! DroidFish is actually the reason I implemented MultiPV support in texel. It may be a little known feature of DroidFish, but if you long press on the analysis area while the engine is analyzing, a menu pops up. There you can select "More Variations" to enable MultiPV mode.RJN wrote:Fantastic, I'll be importing this into your excellent DroidFish app!
I should warn you though that SMP support is currently disabled in texel for android. For some reason the engine crashes quickly inside locking primitives when I let it use more than one thread. I don't know if this is because of a bug in texel or because of a bug in the C++11 / std::thread implementation on android. I believe texel is "helgrind clean" on linux, even though some false positives are reported because helgrind does not understand std::atomic and the locking used by std::shared_ptr.
-
petero2
- Posts: 730
- Joined: Mon Apr 19, 2010 7:07 pm
- Location: Sweden
- Full name: Peter Osterlund
Re: Texel 1.03
Ten parameters is no problem for my optimization program. I decided to implement separate MG/EG PSTs for the queen. I added 34 new parameters and optimized them together with the old evaluation parameters. After 5-6 hours a local optimum was found. I then played a 32000 game match against texel 1.03 using time control 1+0.08. The result according to bayeselo was:tpetzke wrote:Thanks. 10 parameters to form a psq table is already a lot.
For the queen I have only one that scales the piece centralization bonus relatively to material value and mobility.
Code: Select all
Rank Name Elo + - games score oppo. draws
1 TexelHead 5.1 3.1 2.2 32000 51.6% -5.1 39.8%
2 Texel103 -5.1 2.2 3.1 32000 48.4% 5.1 39.8%
1 TexelHead 5.1 32000.0 (16514.5 : 15485.5)
32000.0 (16514.5 : 15485.5) Texel103 -5.1
2 Texel103 -5.1 32000.0 (15485.5 : 16514.5)
32000.0 (15485.5 : 16514.5) TexelHead 5.1
Tex Tex
TexelHead 999
Texel103 0
-
tpetzke
- Posts: 686
- Joined: Thu Mar 03, 2011 4:57 pm
- Location: Germany
Re: Texel 1.03
Wow, 5-6 hrs is really really fast. I'm using a kind of genetic algorithm for parameter tuning but it is 50 times slower, as I'm using real matches as fitness function, and this takes time. Everything else than playing games failed so far for me.
Congratulations
Thomas...
Congratulations
Thomas...
-
michiguel
- Posts: 6401
- Joined: Thu Mar 09, 2006 8:30 pm
- Location: Chicago, Illinois, USA
Re: Texel 1.03
I filled up my application to the club around 2006 but I truly submitted around 2008, I think. As with any prestigious club, they give you a fancy jacket. This is the one:tpetzke wrote:Welcome to the clubI have developed a special optimization program that computes all parameters in the texel evaluation function. Not a single value was decided by me. Even though I sometimes felt the urge to "correct" some of the values that looked weird to me, I managed to resist.
Thomas...

After a while, it feels really comfortable, seriously!!
Miguel
-
michiguel
- Posts: 6401
- Joined: Thu Mar 09, 2006 8:30 pm
- Location: Chicago, Illinois, USA
Re: Texel 1.03
Congratulations!petero2 wrote:Version 1.03 of my chess engine Texel is now available for download from http://dl.dropboxusercontent.com/u/89684995/texel103.7z
The largest user visible changes are SMP support, MultiPV support and a re-tuned evaluation function which makes the engine play more aggressively.
There are 7 compiled versions included:
texel-arm : For the armv7-a architecture. Should work on most modern android devices.
texel32.exe : For 32-bit windows systems with SSE42 and POPCOUNT.
texel32old.exe : For 32-bit windows systems without SSE42 and POPCOUNT.
texel64 : For 64-bit linux intel systems with SSE42 and POPCOUNT.
texel64.exe : For 64-bit windows intel systems with SSE42 and POPCOUNT.
texel64amd.exe : For 64-bit windows systems with SSE42 and POPCOUNT.
texel64old.exe : For 64-bit windows systems without SSE42 and POPCOUNT.
Texel 1.03 scores about 66% (+112 elo) against Texel 1.02 on my linux computer at very fast time controls, using one core.
Changes meant to improve playing strength:
- Multi-threaded (SMP) search.
- Remove moves before the last zeroing move from the repetition history list before starting search.
- Removed bogus transposition table store in Search::iterativeDeepening().
- Disable aspiration window logic when searching for a faster mate.
- Added null move verification search.
- Prefetch entries from the main transposition table.
- Bonus for candidate passed pawns.
- Skip move ordering after enough moves to trigger LMP have been searched.
- Implemented pawn storm bonus for opposite castling positions.
- Removed the Botvinnik-Markoff extension.
- More aggressive LMR.
- Added knowledge for KBpKB, KNpKB, KBpKN and KNpK endgames.
- Store endgame flag in material hash table.
- Optimized lots of evaluation function parameters.
- More consistent evaluation of different classes of pawnless endgames. KQK, KRK, KQKM, KBBK, KBNK, KQKR, KQKMM, KMMKM (M = B or N).
Other changes:
- MultiPV-support.
- Mate distance pruning.
- Evaluation correction for 7 knights vs 3 queens.
- Display engine evaluation using "info string" when starting search in analysis mode.
- Changed internal parameter handling to make it easier to switch between UCI parameters and compile-time constants.
Enjoy!
I can't wait to re-build the gauntlet I use to test Gaviota and include 1.03, which seems it will be stronger than the (soon to be released) Gaviota version I have now. No so simple to find many good stable opponents in Linux and Texel has been always excellent.
Miguel
-
RJN
- Posts: 303
- Joined: Fri Jun 21, 2013 5:18 am
- Location: Orion Spiral Arm
Re: Texel 1.03
Hi Peter, are there any plans to add the ability to run more than one engine at a time in DroidFish, so that engines can compete against each other?petero2 wrote:Good idea! DroidFish is actually the reason I implemented MultiPV support in texel. It may be a little known feature of DroidFish, but if you long press on the analysis area while the engine is analyzing, a menu pops up. There you can select "More Variations" to enable MultiPV mode.RJN wrote:Fantastic, I'll be importing this into your excellent DroidFish app!
I should warn you though that SMP support is currently disabled in texel for android. For some reason the engine crashes quickly inside locking primitives when I let it use more than one thread. I don't know if this is because of a bug in texel or because of a bug in the C++11 / std::thread implementation on android. I believe texel is "helgrind clean" on linux, even though some false positives are reported because helgrind does not understand std::atomic and the locking used by std::shared_ptr.
Thanks for the tip about MultiPV, I didn't know that.
While I have your attention, how does one disable opening books in DroidFish? Minimum setting is 5 moves, and I don't see where it's possible to select no book. Also, are tablebase hits displayed anywhere in the engine output, or am I missing where that is shown? I have Critter and Gaviota engines installed, which should use the TBs, but never show any hits displayed. However, I do see the TB stats on a square when I press on a piece in an endgame position, so assume tablebases are configured correctly. (I have put all the 5-piece Gaviota on my smartphone in the default folder)
-
petero2
- Posts: 730
- Joined: Mon Apr 19, 2010 7:07 pm
- Location: Sweden
- Full name: Peter Osterlund
Re: Texel 1.03
There are currently no plans to add support for engine matches. You can use chess for android for that feature though.RJN wrote:Hi Peter, are there any plans to add the ability to run more than one engine at a time in DroidFish, so that engines can compete against each other?
Thanks for the tip about MultiPV, I didn't know that.
While I have your attention, how does one disable opening books in DroidFish? Minimum setting is 5 moves, and I don't see where it's possible to select no book. Also, are tablebase hits displayed anywhere in the engine output, or am I missing where that is shown? I have Critter and Gaviota engines installed, which should use the TBs, but never show any hits displayed. However, I do see the TB stats on a square when I press on a piece in an endgame position, so assume tablebases are configured correctly. (I have put all the 5-piece Gaviota on my smartphone in the default folder)
You can not disable the opening book in droidfish, but you can create an empty polyglot book and use it. Creating an empty polyglot book is very easy as all you have to do is create an empty file and rename it so the filename ends with .bin