From Chessprogramming wiki
Jump to: navigation, search

Home * Engines * WChess

a commercial chess program by David Kittinger, running on x86 PCs in 32-bit real mode under the MS-DOS operating system. WChess participated at the ACM 1994, the Harvard Cup 1994 with sensational 5/6, the UPCCC 1994 winning ahead of HIARCS and MChess, and the WCCC 1995. WChess is the chess engine of Sierra's Power Chess [1], market since 1996 as Windows 95 program [2], and of Interplay's USCF Chess from 1998 [3].


Wchess 10.gif

WChess inside DOSBox [4]



given in 1995 from the ICGA tournament site [5]:

WChess received world-wide attention after it scored 5 out of 6 against some of the strongest American grandmasters in the Intel Harvard Cup Man v Machine tournament held in October 1994. The program consolidated its position as one of the top micro-computer chess programs by winning the 1994 Uniform Platform Computer Chess Tournament held in London. WChess uses an iterative, depth first alpha-beta search with forward pruning and a tactical swap-off evaluation to limit the growth of the search tree. The evaluator is somewhat primitive and is not currently as dynamic as the author would like. Positional information is communicated to the search mainly by piece value tables. The current version of the program only implements end game databases for KPK although the author is looking into adding more databases.


David Kittinger on WChess in a forum post, April, 2012 [6]:

Goal with WChess was to have a program in high level language (C) whilch would facilitate testing new search and eval ideas. This was a continual process over probably 10 years. A funny thing, I had tried NULL move but sort of messed up the implementation and hence did not find it better than the static forward pruning I had been using, so never switched over. WChess also used piece value tables and in fact used a high level PVT generator written under contract by Don Dailey and Larry Kaufman. Larry also contributed some opening books, although this was also an ongoing process in my 'lab'. Experimented and adopted Singular Extensions, One reply to check. Spent lots of time looking at things like recapture extensions, k safety extensions, p to 8th extensions and all manner of pruning ideas.

Major drawbacks of the programs:

  1. dependence on PVTs for bulk of chess knowledge. Led to weaker play at deeper levels as PVT knowledge generated from root position became less relevant/accurate as depth increased.
  2. insufficient eval of passed pawn threats - I saw in Stockfish that they tested control of queening sqs, I guess easier to do w/bitboards .
  3. pawn structure eval was never very strong.

Just for the record, I did have some collaborators over the years besides Don and Larry as mentioned above. I think Hal Bogner was first 'chess contributor', he helped with testing and input for evaluation ideas back when I worked in Van Nuys. After Hal, Scott McDonald contributed chess knowledge and reviewed literally hundreds of autotest games looking for weaknesses and improvements. When I moved to Mobile, Al, James Parker worked with me off and on for several years. James is s very bright fellow and wrote a Shogi program for Novag. He also contributed to the chess efforts and the Chinese Chess program as I recall. There were also a number of ideas adopted as result of conversations with various programmers at the computer chess tournaments I attended.

... and on the difference of 0x88 coordinates [7]

The whole 0x88 is pretty obvious. In fact, another big benefit is that you could take the difference of two sqs and use that to look into a table to see the legal piece types that could be attackers. Having bit 3 cleared prevented wrap arounds on this look up. Hence, for most my programs the basic capture routine iterated from largest to smallest captured piece, using smallest to largest capturing piece, taking the difference of the sqs, looking up in att_table and seeing if nz, if nz, then if & with attacker type bit nz then just had to check if slider and had path clear. Of course, w and b pawns had different type bits. Made for a decently fast and ordered capture search.

WChess 2000

The further developed WChess 2000 was incorporated as game AI in Majestic Chess, released in 2003 by Sierra and Vivendi [8], and inside Sierra's Disney's Aladdin Chess Adventures in 2004 [9].

See also


Forum Posts

1995 ...

Re: Wchess 2000 and Zarkov 5 by Bert Seifriz, CCC, January 16, 1999 » Zarkov

2000 ...

2010 ...

External Links


Up one level