Computer Chess Club Archives




Subject: CCT3 day2

Author: Frank Phillips

Date: 03:04:45 05/28/01

CCT3 Reflections: second and final day.

SearcherX versus Hiarcs8x  0-1
Down to earth with a bump.  Hiarcs always dominated.  Dreams of a possible draw
were soon dispelled by the amazing 48.. d3 sacrificing a bishop for the passed
pawn, which win the game.  This and the quiet Kg6 rather than taking the passed
b pawn seems to show the gulf between the two programs.  Even when I show
Searcher the moves, it still does not understand.  (DeepFritz beats Ferret to go

Watcherz versus SearcherX  0-1
New, old enemy.  It was over two years before my program was good enough to
consistently beat GNUchess (version 4).  Watcherz (GNUchess5) had had a good
tournament (including beating Lambchop), showing it is not as weak as some
think.  Its attack down the h-file looked menacing, but Searcher threaded its
way through to better passed pawns that finished the game quickly in its favour.
 At least not a whole day without a win.

SearcherX versus ShredderX  1-0
Pinch me for I am dreaming.  Resigned to my fate against the World Champion, I
watch Searcher quickly get into what seems to a me a bad position: backward c
pawn on half open file, isolated e pawn, no f pawn and then black knight on g3
supported by black pawn on h4.  IM Schroer describes white's pieces as awkwardly
placed.  I am waiting for the disaster, even though Searcher thinks it is not
too bad.  A fews moves on the tables seem to be turning: a plus score.  Bruce
Moreland comments that Shredder will lose.  More moves and the score quickly
jumps to +4 then +5.  Searcher wins. I am astonished.

DeepFritz versus SearcherX 1/2-1/2
Everyone is wrong.  Bruce is happy.
After the Shredder win and my restlessness up to the final round, my wife joins
me - probably fearing I may have a heart attack.  I am a child again. What is
the score?  Can I be champion?  No.  It is late (10 o'clock), the house is
otherwise quiet and we both watch the game. Of course, I predict disaster, but
she has heard this all before by now.  Searcher loosens its king and Fritz
quickly develops an attack.  ICC comments predict a win.  Fritz liquidates to a
rook and pawn ending 2 pawn up, 3 pawns versus my one.  IM Schroer and others
announce the game is all but over.  Everyone offers commiseration to Bruce who
has won his game but needs Fritz to not win to tie for first place.  Second for
him yet again - it seems.  My game progresses.  Strangely despite predictions,
Searcher's score stays fixed at -2.24 for tens of moves.  Eventually Fritz's
score starts reducing, it gives up a pawn and we enter a drawn R+2P versus R+P
position.  Searcher says -0.74 which becomes -0.42 and finally 0.00.
Nailbiting.  Could Fritz have won, I have no idea.  And do not care! I am 5.5/8
equal third to sixth, beating Shredder, drawing with Fritz - and even beating
GNU :))

Many thanks to James Swafford for organising the event  and ICC for hosting and
the free account.

Too much emotion: I get angry.
My wife is delighted knowing this is the culmination of four years effort in
every spare moment.  I am angry because of an earlier comment from bigamateur at
the start of the final game "hey searcher tell us about stand pat" (or similar).
More angry perhaps at myself for reacting so badly.  I say "Why ask me.  But I
do it in my Qsearch sometimes."  Later, enraged I tell bigamateur my stand pat

if (score > alpha)
  if (score >= beta)
      return (score);

All standard stuff.

And for about one hour after the tournament is over Will and I swap tells were I
talk increasingly incoherently about my program.   (Typing into a one line
telnet box not helping.).   He has set himself up as judge and I have foolishly
allowed it, wanting recognition for what I feel I have achieved.  I offer to
email the logfiles and even contemplate sending him the code.  He declines
saying that I must make him understand how what I have done is possible.
Eventually my wife (astonished by what is being said and my insistence on
responding) drags me to bed at 1:30.   Will perhaps still unconvinced that this
is actually my program and not some Crafty clone.  He apparantly cannot
understand how Searcher has suddenly burst onto the scene.

So here is a potted history for the curious.  The first thing to realise is that
internet access has only recently become affordable in England with the
introduction of fixed monthly pricing.  Before, all access was charged per
minute (ie the telephone bill) and so the cost prevented me from playing on
servers.  My testing until the last six months, has been playing GNU, Crafty,
Comet etc under Winboard on my own PC.  For about six months I have been on FICS
as siliconslayer and searcher on, where my rating is a step down from
Crafty.  I have however beaten it and others there at G5 or similar.  Very
recently with my free pre-tournament account on ICC, I have also beaten (and
lost to) many of the amateur competitors in CCT3 at similar time controls,
usually on faster hardware than they had though.  Oh and been smashed hopelessly
by Ferret a few times.  (It and Tiger seem so different.).

My chess program (before then there was a knight tour, connect4, simple othello
and others to learn recursion and search etc) started as my expanded
interpretation of TSCP, helped by articles on the internet (particularly
Marsland's excellent summary of the anatomy of a chess program) and of course by
members of CCC and particulalry Bob Hyatt.  Now its origins are unrecognisable,
although mailbox is still used to precompute move tables - simply because I had
already written that code.  The last major rewrite, two years or so ago
introduced bitboards (because they looked interesting and Bob is always talking
about them) to use mainly in evaluation.  Move generation, king attacks, is a
square attacked, SEE etc is a mixture of bitboards for the easy cases (knights,
pawns, king) and offset precomputed arrays for the sliders.   Like Dan Newman (I
think), I also use bitboards to screen for _potential_ slider attacks etc to
reduce work, but do not precompute the rank, file or diagonal states to give an
index to a bitboard of the first square attacked.  Full and rotated bitboards
implementation next time.  Maybe after an IQ transplant, or to get cheap
mobility.  Move generation is not a massive drain in my program, so bitboards
are more valuable for their other benefits.  Search is pretty standard Crafty
type approach.  Tried and discarded Dark Thought type pruning.  But will try
again after listening to Bruce on CCT3.  Extensions as recommended by Bob and
limited as recommend by Bruce, although I still have recapture extension because
it seems to help me and do a bit extra for passed pawns.  Tested other and other
variations of extensions without much impact.  All sorts of daft ideas.
Trans/ref hash and hashing of basic pawn structure elements.  Nalimov EGTBs (3
years to generate all 5 man on and off, on a variety of machines.  Thanks
Eugene), primitive book learning and positional learning. The evaluation has
become increasingly sophisticated (voluminous anyway) with time. Playing on the
chess servers, even for a brief time, has certainly caused me to add stuff.

So plain vanilla roll your own chess program (built to the standard receipe laid
down by those giants who went before) helped by a 1.2GHz PC.  But it is mine
and, at least for me, my effort has been rewarded by its modest success at CCT3.
 Of course it was lucky, but when I started on this madness I never imagined I
could even write a program that played legal chess.  Take heart, if you are the
same.   Bob and others will help.  Thanks Bob, Bruce, Tim, Eugene,

But beware, like chess it is a drug.  Before the tournment I think someone
(Mint?) pulled out because they wanted to escape the trap and get their life
back.  I know that feeling well.  GM NDShort from my old chess club said
something similar to "Losing hurts more than winning is nice".  My hurt was
largely postponed for a while today.  From Will's comments maybe his was not.

This page took 0.03 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.