Computer Chess Club Archives


Search

Terms

Messages

Subject: What are your "bad" ideas?

Author: Ricardo Gibert

Date: 19:06:26 07/26/02


We don't very often hear about new ideas in chess programming at this forum. I
think this is true for 2 basic reasons:
(1) Programmers do not want to part with their good ideas. They keep them as a
secret weapon against other chess programs.
(2) The idea is discarded as bad.

I don't realistically expect programmers to share their good ideas. So what I am
requesting here is they share their "bad" ideas instead. Why? The expression,
"One persons junk is another persons treasure." The following may be possible
with "bad" ideas:
(a) It may be that a "bad" idea can be transformed into a good idea with some
modification.
(b) It may be that 2 "bad" ideas can be combined into one good idea.
(c) It may be the idea does not work well for the game they are interested in,
but may work very well in another game. Null move is an example of this.
(d) The idea is truly bad and sharing and discussing it can save other people
time and effort when they get the same idea.


I'll offer the following to get things started with an idea I'm not sure is bad,
but I don't consider it particularly promising in any case. I'd be happy to be
wrong. The idea is basically this:

Have the program perform a search that is super selective for one side, but is
conservative for the other side and interpret the score returned as an upper
bound for the conservative side. You then repeat this search in a 2nd search by
switching conservative and selective sides to obtain a lower bound. The idea is
you make a gamble. If both return the same PV and score, the gamble pays off and
you have saved yourself from searching a lot of nodes you would have otherwise
have had to search.

If both return a different PV and score, you use the bounds for an aspiration
search. You end up searching more slowly overall in this case, but you make the
gamble that this won't happen very often. You hope for a net gain on average. If
you are short of time and the bounds are close together, you can skip the
aspiration search and just assume the lower bound score is correct and use the
best move from the 2nd search. The 2nd search will probably be more accurate,
since it benefits from the results of the first search via the hash table.

So how to search super selectively for one side and conservatively for the
other? You can use null move with R=2 for the conservative side and null move
with perhaps R=6 for the super selective side.

A variation on the above would be to make it "adaptive". If the gambles are
paying off almost all the time, the super selective side can automatically
increment R. For example an R=6 would increment to R=7. If the gambles are not
paying off often enough, the program can lower R a notch for the super selective
side.


So what are your "bad" ideas?



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

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