Best feature?
Posted:
02 Mar 2006, 19:21
by smcracraft
This is a poll.
What are the top strength-creating features of your chess program?
For my program, I believe they are (in no particular order).
null move
static exchange evaluation in quiescence
check-evasion in the quiescence search
good king safety
pawn structure including pawn structure hashing
(Because this question cannot easily be pre-encapsulated in the
poll-format this board offers you, I will leave it open-ended.)
Stuart
Re: Best feature?
Posted:
02 Mar 2006, 19:47
by H.G.Muller
Ha, I can only tell you the main weakness-creating features of my engine!
The strength-creating features yet have to be implemented...
Lack of King safety is killing micro-Max. In my serious engine I now consider basing a King-safety evaluation term on the number of attacked squares next to the King (which is revealed when the move generation produces the King moves anyway). Does anyone have experience with this type of King safety?
Re: Best feature?
Posted:
02 Mar 2006, 19:49
by Reinhard Scharnagl
As for SMIRF:
a) one single engine (< 60K) for 10x8 and 8x8 chess variants
b) covering random chess variants like Chess960
c) good strength for a first playing engine, actual about >2400 (?) Elo
d) an own multivariant GUI (I have been forced to build it)
Regards, Reinhard.
http://www.chessbox.de/Compu/schachsmirf_e.html (Beta download)
(Support SMIRF by making a PayPal donation - and get a permanent key set)
Re: Best feature?
Posted:
02 Mar 2006, 20:10
by Alessandro Scotti
Bug hunting! Last (huge) bug I fixed got me 100+ elo... I think only null-move as a feature gives me that much...
Re: Best feature?
Posted:
02 Mar 2006, 20:51
by Thomas Mayer
Hi,
well, where to start here ?
1. Alpha-Beta
that changes the branching factor from 40 to something like 7...
2. Null-Move
and the branching factor got down from 7 to something around 3...
3. Hashtable
I think the difference of having hashtables or not is also around 100 Elo, so quite near to nullmove
4. Eval
first Quarks had a very strange eval, once I did only work on eval (I believe it was just after my implementation of null-move) and I gained also about 100 Elo here... so you may say that 2-4 is more or less in strength gain the same
5. speed improvements
move generator, check detection etc. gets here in mind. Since the beginning of Quark I have doubled the speed here for sure... but since around version 1.76 or so I have started to use every % I gained in speed to put it in the eval. So since then Quarks nps haven't changed.
But of course you can't see anything as single, it is always the combination of it all that makes an engine strong or not so strong.
Greets, Thomas
Re: Best feature?
Posted:
02 Mar 2006, 21:11
by YvesLejeail
Hi!
Better code structure for me, I recently implemented MakeMove and UnMakeMove functions, instead at Copying the whole board in a tmp array in order to Copy it back after the search, so that the code seems to have less overhead now !!!
Yves