Author: Tom Kerrigan
Date: 15:27:34 12/28/01
Go up one level in this thread
On December 28, 2001 at 17:36:53, Uri Blass wrote: >I agree that it is not a good idea to optimize when you have not enough >positions so if you have only one position or a very small number of positions >with white knight at b8 then it is a bad idea to try to investigate changes in >the piece square table for knight at that sqaure. I doubt you can find a test set large enough that every term of an eval function is represented thoroughly. I mean, how many positions are there with white knights on b8? You can do what the DT guys did--make a test suite from GM games, search the positions deeply, and discard the ones where the deep score didn't agree with the static eval by a certain margin (indicating that something tactical happened). Optimizing against these deep scores has the same local maxima problem that you were all worried about a few posts ago, though. I have also thought of finding positions where you want your program to play a particular move. The program searches the position, and then it searches that move, and it takes the derivative of the evaluation function at each endpoint node and changes the weights of the differing terms until it plays the desired move. This scheme might work well, and AFAIK nobody has tried it, but it would probably screw up for some reason that I haven't thought of. >It is possible that they are useful for chess and the problem is that you need >first to waste hundreds of years of computer time >that is impossible to do by one programmer. If you have to spend hundreds of years doing it, I'd argue that it's not useful. >I agree that by one change you cannot do it but it is possible that by many >small changes it is possible to do it when the problem is to find the right >changes. Yeah, but you have no proof of this statement. Why do you believe it, exactly? >The case that you describe is a case when the program has not the right >knowledge to explain the position. > >It is not the case for the top programs. I think you're giving WAY too much credit to top programs. >I found that Junior5 lost against Fritz3 in the ssdf games because it did not >know that a white knight at h8 is bad and it's knight was trapped at h8. There are positions where having a knight on h8 is perfectly reasonable. If all you do is jack up the penalty for a knight on h8, you will end up with a program that will lose the game trying to force its opponent's knights onto h8. What you really want is a knight trapping term, which no amount of evaluation weight optimization will give you. -Tom
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.