Version
History:
TRACE 1.37a - Nov 17 2006
RELEASE
- Just a minor patch realease to
avoid an infinite loop in the evaluation code.
Thanks to Leo for
reporting this _before_ WBEC started!
- Slight change to qsearch hashing to
make it search slightly faster (3%)
- Connected passers bonus increased
slightly
TRACE 1.37 - Nov 9 2006 RELEASE
- This is mainly a bug fix release
(and it SHOULD be stronger than 1.36)
- Fixed a STUPENDOUS passed pawn
evaluation bug where white was rewarded for
possessing an unstoppable
passer ONLY if white had no pieces....
- Fixed another HORRENDOUS bug in
passed pawn scoring where black was
not rewarded correctly for
having an unstoppable passer.
- As a sidenote the two bugs above
caused T1.36 to do some very dumb things and
I'm 99% sure they cost her
a playoff in the Australian Championships. But that's my
fault - who else is to
blame???
A big THANKS to Guenther
Simon (RWBC Tournaments) for pointing out the bug(s) and providing
a test position.
- Fixed an analysis mode i/o bug
under Arena (and probably other GUIs as well)
- Queen value reduced to cure some
bad misevaluations of material imbalances
- Added encouragement to trade down
pieces when winning
- Tweaked backward pawn scoring
- Improved bishop and pawn
coordination
- Increase Rook value as pawns
disappear
- Decrease Knight value as pawns
disappear
- Added increasing bonus for wing
majorities as pieces disappear
- Passed pawn values tweaked.
- Some small code optimisations...
TRACE 1.36 NC3 - Aug 21 2006 RELEASE
- This version came =2nd at the
Australian Chess Championships 2006.
I had intended for TRACE
2.00 to be entered but was forced due to time constraints to
make some improvements
instead to 1.35...
- The list of changes below is only a
summary of the highlights...
- Extends moves that give check and
also detects and extends single replies to check
- Transpositional opening book
(book.bin). Untuned but surely better than the old book.txt
- Implemented Late
Move Reductions
popularised by always helpful Tord Romstad.... so
now TRACE's average search
depth is about a ply or two deeper.
- Improved backward pawn detection
- Passed pawn code reworked to take
into account pieces and not just pawns
- Piece value tuning... Q v RR was
giving an excessive bonus to the Q...
- Time management improved to use
more time in the first half of the game.
- Pruning is disallowed for moves
that will probably alter alpha... so TRACE sees more tactics.
- Extensions are more strict... ie.
only _safe_ passed pawn moves are extended
- Move legality is tested before
makemove... so she is faster now.
- Nullmove reduction is now a mix of
R=3 and R=2. Previous versions only used R=2.
- Search blindness due to lazy eval
and delta pruning reduced.
- Quiescent move generator
additionally generates 'interesting' pawn moves.
- Fixed some more analyze mode i/o
lockups under Arena...
- Hard to give an exact figure but my
tests show >40 Elo improvement over 1.35
- On an AMD64 Athlon 4000+ TRACE
attains >1600000 nodes per second when running the built in
benchmark. Type 'bench 13'
at the prompt to test this yourself.
TRACE 1.35 - Aug 22 2005 RELEASE
- Removed experimental code that was meant to help hash table from 'log
jamming'.
It ruined searches > 4 seconds by wrecking move
ordering and reducing hash table
consistency. I guess you could say the experiment failed. :-)
- Changed input/output to buffered.
- EGTB: Limited to <= 5 man tables now... and TRACE.EXE shrinks
from 680K to 300K. Ugh.
- Fixed 'analyze mode' problems under Arena with i/o lockups.
- Stopped 'analyze mode' re-searching when max ply depth exceeded (61
ply).
- WacNew on P3-600Mhz scores 299/300 @ 15 secs/pos
- bench 7 on P3-600Mhz: nodes=278130, secs=1.28, nps=216950
pv=b2b3 c8a6 g5e4 d6c6 c2e2 f7f6 e2g4
TRACE 1.34 -
Aug 11 2005 RELEASE
- This is 'almost'
the same version which
competed at NC3 2005.
- Less likely to run out of time when
using incremental time controls
- Pondering is now predictive.
Prior versions simply pondered on
the current
position (to saturate the hash table).
- Improved move
ordering, optimized history and killer table usage
- Tweaks to
pawn scoring
- Threat extension tuning
- Hash pruning
relaxed for PV nodes.
- Qsearch recognizes stalemates before
standing pat.
- Hash table allows depth entries to be
overwritten during deep searches
- Many evaluation changes.
Some glitches fixed... 999,999 more to go...
- SEE (static
exchange evaluator) performance improvements
- Piece values
adjusted
- Two bishops bonus increased.
- Bad trade
penalty adjustments.
- King shuffling in middle-game reduced
-
Weak back rank detection
- Compiled for Athlon/P4 performance
-
WacNew on P3-600Mhz scores 299/300 @ 15 secs/pos
- bench 7 on
P3-600Mhz: nodes=278130, secs=1.28, nps=216780
pv=b2b3 c8a6 g5e4 d6c6 c2e2 f7f6 e2g4
Version
1.33B - Dec 7 2004
RELEASE
- This is IDENTICAL to 1.33 except
for these 2 bug
fixes.
- Bugfix: CPU not being fully
relinquished when
waiting for more input.
It was using Sleep(0),
apparently Sleep(1)
was needed.
This affected only one
engine (Spike) as
far as I know.
- Bugfix: This one evaded detection
for a very
long time. I am thrilled
to
fix it: Searches exceeding
4 Giganodes
would crash the
engine.
- MES400New @ 15secs on P3-450Mhz
scores 335/400
Version
1.33 - Nov 21 2004
RELEASE
-
Bishop fianchetto bonus
reduced :-)
-
Root EGTB moves are made
without searching to avoid time losses
-
Bugfix: pondering was broken
-
bench 7 on P3-450Mhz:
nodes=506383, secs=4.54, nps=111611
pv=h2h4 f8d8 h4h5 g6f8 g5e4 d6e7
Version
1.32 - Nov 15 2004
RELEASE
-
Some small optimisations...
5% faster overall.
-
Infamous trapped bishop code
added.
-
Mate threat and recapture
extension fixes/tweaks.
-
Backward pawn penalty
increased.
-
Bishop fianchetto bonus
increased.
-
All output sent via WIN32
WriteFile().
-
Search is now aborted using
C++ try/catch blocks.
-
Updated the EGTB code to
Eugene's latest... now the exe is huge...
-
Bugfix: In extreme time
trouble it could fail to find a move.
-
Bugfix: Eval without EGTB
returned draw for K vs K+R. (Thx to Mihail Croitor)
-
Bugfix: Input parsing of
promotions was broken. (Thx to my daughter Leah!)
-
Bugfix: "st x" and "sd x"
commands were broken.
-
Bugfix: Analyze mode no
longer researches when maxply reached...
-
Bugfix: Mate scores in
WB/Arena corrected
-
Bugfix: PV output could
overflow into next field during long searches.
-
WacNew on P3-450Mhz scores
298/300 @ 20 secs
-
bench 7 on P3-450Mhz:
nodes=500333, secs=4.46, nps=112232 score=81
pv=h2h4 f8d8 h4h5 g6f8 g5e4 d6e7
Version
1.31 - Oct 2
2004 19:04:46
-
Threaded input polling
(Many thanks to
Alessandro Scotti for his code)
-
King safety improvements
-
Fianchetto bishop scoring
(needs more work)
-
Various small optimizations
-
Fewer 'Pawn on 7th'
extensions
-
Nullmove counts as a ply now
-
Repetition optimization
-
Changes to hashing... no
nullmove hash signature
-
Improved support for Arena
analyze mode
-
WacNew on P3-450Mhz scores
297/300 @ 27 secs
-
bench 7 on P3-450Mhz:
nodes=414049, secs=3.73, nps=111124 score=70
pv=h2h4 f8d8 h4h5 g6f8 g5e4 d6e7 c1g5
Version
1.30 - Aug 4
2004 13:14:02
-
an updated logo - much
faster now ;-)
-
Using MSVC++ compiler (so
TRACE runs ~16% faster)
-
mainly qsearch
enhancements...
generates checks at 1st
ply of qsearch
detects mates and
repetitions in qsearch
some tactics found a
ply earlier solves WAC 141 in 1
second now... 1.29 took 223 secs!
-
bugfix... exposed backward
pawn penalty was broken
-
WacNew on P3-450Mhz scores
298/300 @ 27 secs
-
bench 7 on P3-450Mhz:
nodes=324128, secs=2.56, nps=126365 score=71
pv=h2h4 h7h6 h4h5 h6g5 h5g6 f7f6 g2f3
Version
1.29 - Jun
8 2004 11:31:46
-
Bugfix! doubled pawn eval
was asymmetric
-
using too much time early in
game
-
hashing in qsearch
re-enabled, for now.
-
king tropism bonus added to
rook on open file scoring
-
WacNew on P3-450Mhz scores
296/300 @ 27 secs
-
bench 7 on P3-450Mhz:
nodes=432020, secs=3.29, nps=131273 score=48
pv=h2h4 f8d8 h4h5 g6f8 g5e4 d6c7
Version
1.28 - Jun
7 2004 13:14:56
-
Fixed startup problems when
running under Arena.
-
Fixed analyze command under
Arena
-
Arena users be aware that
"engine.ini" has an error -
The config file is
called "trace.cfg" (not trace.cgf)
Next version of Arena
should correct this.
-
Added pawn hash tables...
finally! Pawn eval needs work though.
-
New command 'hashp x' allows
sizing/resizing of pawn hash table
where x is the maximum
size in Mbytes
The number is rounded
down to one of the following : 0, 1, 2, 4, 7, 14, 28.
I recommend adding the
following line to TRACE.CFG:
hashp 4
which will allocate
about 3.5 Mb for pawn hashing.
-
Detects rookpawn and bishop
draws much earlier now.
-
Fixed incremental time usage
- it was ignoring the increment.
-
Added some opposite castling
knowledge eg. pawn storms
-
Revised trade down bonuses
and ending evaluations... more work needed.
-
Lazy eval tuning.
-
Rewrote evaluation, added
outpost scoring and cramped piece penalties
-
Tweaked repetition detection
-
Removed qsearch hashing and
mate/stalemate detection.
-
Fixed rare unreported bug
where hash tables could contain corrupt data and cause a crash.
Usually in endgames or long searches.
-
Using better zobrist keys so
hash usage is more effective.
-
Incremental piece/square
values in makemove()
-
Makemove cleaned up and
optimised
-
Some king safety changes -
much more work required
-
Improvements to Internal
Iterative Deepening - smaller trees now.
-
Nodes counted differently
now. I just count every legal makemove as a node.
This means NPS will
appear lower than previous versions.
-
WacNew on P3-450Mhz scores
~295/300 @ 27 secs
-
bench 7 on P3-450Mhz:
nodes=467112, secs=3.57, nps=130807 score=46
pv=h2h4 f8d8 h4h5 g6f8 g5e4 d6c7 c1g5
Version
1.27 - Feb 27 2004
12:42:28
-
Auto-resign bug fix (Resign
flag wasn't being reset for next game)
Thankyou to Hartmut
Woldeit for the bug report.
-
book bug fix
The 'book' command will
now toggle book usage and display the new setting.
This had a bug where it
would only switch book usage OFF.
-
help
This command now waits
for a keypress after displaying first page of help.
-
WacNew on P3-450Mhz scores
~295/300 @ 27 secs
-
bench 7 on P3-450Mhz:
nodes=630484, msec=3070, nps=205369 score=25
pv=h2h4 d5f6 c2a4 d6c7 g5e4 f6e4 g2e4
Version
1.26 - Feb 25 2004
21:35:06
-
Added internal iterative
deepening...
-
Reduced futility pruning...
to cure some tactical blindspots
-
Improved time management
-
Tradedown bonuses
-
Fewer EGTB lookups...
-
Bug fix (memory overwrite
problem)
-
WacNew on P3-450Mhz scores
~295/300 @ 27 secs
-
bench 7 on P3-450Mhz:
nodes=630484, msec=3130, nps=201432 score=25
pv=h2h4 d5f6 c2a4 d6c7 g5e4 f6e4 g2e4
Version
1.25 - Oct 17 2003
00:00:05
-
BugFix: Quiesce futility
pruning was mishandling promotions.
-
Bugfix: Recapture value
table was unsigned yet it contained signed values.
So, capture extensions were working only for recaptures
to the same square.
-
Removed hashp command from
'help' until fully implemented.
-
Some knowledge about rooks
and isolated pawns added
-
Added 'good bishop' knowledge
-
Value of queen increased
relative to rooks to avoid bad trades
-
bench 7 on P3-450Mhz:
nodes=571182, msec=2960, nps=196282 score=25
pv=h2h4 d5f6 c2a4 d6c7 g5e4 f6e4 g2e4
Version
1.24 Sep 23 2003
-
NO MORE COMMAND-LINE
PARAMETERS!
-
The text file TRACE.CFG
contains the program settings.
TRACE will look for it
in her install directory.
If not found it will be
created with default values. Edit this
file to suit
your needs.
It will be read as a
sequential list of commands.
-
supports WB 'analyze' mode
-
supports WB 2 commands eg.
setboard, ping, features etc
-
configurable resign
option.... Hi Leo! :-)
The following line in
TRACE.CFG will cause TRACE to resign when
she's behind by >6
pawns.
resign 6
-
Hash table is now 2 tiered -
depth-based and always overwrite
-
Corrected bad compiler
switch... gained 15% more speed
-
Coding tweaks made attack()
function 20% faster.
-
QSearch now uses SEE...
slower, but tree is considerably smaller
-
Internal piece
representation changed to one array indexed by type.
Consequently,
probe_egtb(), eval(), attack() and gen() are more efficient.
-
Reduced frequency of EGTB
probes... only probes when necessary.
-
Bugfix: hash_to_pv() was
writing garbage to pv.
-
Bugfix: array bounds error
could cause a crash - fixed...
-
millisecond timer now uses
U64 variables to avoid U32 rollover problems
-
fixed hard-coded random
numbers used for zobrist keys, bit 47 and 63 were
never used... :o)
-
removed mobility scoring for
rooks and bishops
-
added internal node
recognition code
-
added more evaluation
knowledge concerning passed pawns,draws
-
Source code cleanup, source
control system implemented.
-
WacNew on P3-450Mhz scores
~292/300 @ 27 secs
-
MES400 on P3-450Mhz scores
~320/400 @ 15 secs (using some 5 man EGTBs)
-
bench 7 on P3-450Mhz:
nodes=397565, msec=2030, nps=195844 score=27
pv=h2h4 d5f6 c2a4 d6c7 g5e4 f6e4 g2e4
Version
1.23 21st July
2003 (Unreleased, =3rd in Aust. CC Champs.)
-
fractional ply extensions
implemented
-
improved incremental time
management
-
improved blitz time
management
-
uses hard coded zobrist keys
for compiler independence
-
two lines added to opening
book
-
added mobility scoring for
rooks and bishops
-
added bonuses for attacking
key squares around enemy king
Version
1.22 29th June 2003
-
fixed commandline crash
problem
-
reverted to 1.20 extension
logic (so we can accurately measure the EGTBs)
-
WacNew on P3-450Mhz scores
~290/300 @ 27 secs
-
MES400 on P3-450Mhz scores
~318/400 @ 15 secs (using some 5 man EGTBs)
-
bench 7 on P3-450Mhz:
nodes=1553029, msec=7580, nps=204885
pv=h2h4 d5f6 c2e2 c8a6 h4h5 g6e7 c1e3
Version
1.21 28th June 2003
-
Added NALIMOV EndGame
TableBase probing. Supports up to 6 man tables.
-
WacNew on P3-450Mhz scores
~291/300 @ 27 secs
-
MES400 on P3-450Mhz scores
~318/400 @ 15 secs (using some 5 man EGTBs)
-
Added command-line
parameters /EGPATH and /EGSIZE (case insensitive)
EGPATH specifies
the folder where the EGTBs reside.
EGSIZE specifies the
size of the cache (in MB) for accessing them.
The default for EGSIZE
is 8Mb (recommended)
The default for EGPATH
is .\tb
Example: TRACE.EXE
/HASH 64 /EGPATH e:\tb /EGSIZE 8
-
Slightly reduced bonus for 2
bishops
-
Improved draw detection with
minors vs minors+pawns
-
Negascout added to qsearch,
forgot to add it to 1.20 (oops!!)
-
Increased penalty for lost
castling rights.
-
bench 7 on P3-450Mhz:
nodes=1128127, msec=5490, nps=205487
pv=h2h4 d5f6 c2e2 c8a6 h4h5 g6e7 c1e3