Author: Vincent Diepeveen
Date: 13:34:57 08/05/02
Go up one level in this thread
On August 05, 2002 at 11:28:38, Miguel A. Ballicora wrote: >On August 05, 2002 at 11:14:53, Gian-Carlo Pascutto wrote: > >>On August 05, 2002 at 08:04:25, Bas Hamstra wrote: >> >>>I have played with it. I am convinced it has possibilities, but one problem I >>>encountered was the cause-effect problem. For say I am a piece down. After I >>>lost the game TD will conclude that the winner had better mobility and will tune >>>it up. However worse mobility was not the *cause* of the loss, it was the >>>*effect* of simply being a piece down. In my case it kept tuning mobility up and >>>up until ridiculous values. >> >>Similar things will happen with passed pawn bonusses. > >From the comments of everybody it looks like this TDLeaf procedure is cute way >to do a regression analysis of the parameters of the evaluation to fit a >humongous amount of data. >In a general sense, when you do any kind of non linear regression analysis, this >kind of things happen (parameters that go crazy) when you have parameters that >are not independent. This is a message to the researcher to express the equation >in a different manner to have parameters that are "more" independent or to fix >one of those. >I have never applied the method that you are describing but to me it looks like >that failure is an extremely useful information because it tells that the layout >of the parameters in the evaluation is probably not the optimal (at least for >that procedure). Or in normal words: learners that don't optimize parameter for parameter are doomed to fail, because the error margin of a single parameter is not acceptible to chess programs. You don't put 'passed pawn bonus' into a program in order to get a negative penalty for example. You don't put the pawn value in front of the king at +1.2 in order to find out that the autotuner tunes it at +12.0, because you by accident used a tactical testset :) In diep parameters are accurate at 1/1000 of a pawn. All automatic tuning methods however are not capable to tune within 0.25 of a pawn. At a big set deviations of 2 to 3 pawns occur. That's a too rude granularity, especially if +0.25 gets -1.0 or 0.10 getting 1.5 The lack of domain dependant knowledge automatically means that the only form of tuning is to tune each parameter independant. I doubt whether that's possible within O (n log n). More logical assumption is O (n*n*n) and we will forget about the problem of determining things in 1/1000 of a pawn then, because n^3 is already a too big factor. If you consider that some bonuses i give are 0.001 pawn and other penalties are 5 pawns, then we realize that between -5000 to +5000 = 10000 values, tuning within that isn't easy. However you can try to do it binary. the log out of 10000 values is neglectible at (n^3) which is needed to tune each parameter. Nevertheless to spare myself reading a long story on how good it is nowadays and that it is possible in perhaps O (n log n) in the future, even n log n is already too many millions of hours of system time. Best regards, Vincent >Regards, >Miguel >> >>-- >>GCP
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.