Author: Andrew Williams
Date: 07:31:58 08/06/00
Go up one level in this thread
On August 06, 2000 at 09:38:18, Vincent Diepeveen wrote: >On August 05, 2000 at 11:37:01, Larry Griffiths wrote: > >>Which Algorithm is considered the best now-adays. > >Depends upon what kind of program you make. > >If you have an evaluation function that has patterns which all deliver >very small penalties and bonusses, from which the summation also adds up >to a near to material only evaluation, then MTD is an interesting >alternative. PostModernist uses MTD. It would be incorrect to describe its evaluation as being "near to material-only". This opinion (on MTD) is one that Vincent has expounded before, without much in the way of supporting evidence. > >If the evaluation function is either big, using a pawn as being >worth 1000 points instead of 1 point, the eval is huge, or having high scores >for for example king safety and or passers, >then you have only 1 option that outperforms >*anything*, and that's nullwindow search also called principal variation >search which is pretty easy to implement. > >Usually at the start of your program MTD looks interesting, if your >program gets better (more knowledge in eval, less bugs in search and >better move ordering), then PVS usually outperforms anything. > I don't think there is any evidence anywhere that supports Vincent's opinion about MTD. Just stating an opinion does not make it true :-) >My advice is to start with PVS and not look to the rest. > >>NegaScout? MTD? PVS? Others? I am looking to implement one of the best search >>type algorithms in my program. I would like to get it into the 2000 rated range >>as this has been my lifetime goal. Then, maybe install winboard or something so >>it can compete against other programs to get a rating. >>I dont like MTD as it seems to be complex. >> >>Larry. My advice would be to get a straight alpha-beta search working, starting with bounds of -inf..+inf. This won't be terribly competitive, but you can use it as a stable reference when you move on to more sophisticated approaches. When you're happy with your alpha-beta search, try implementing an aspiration-search, which is like alpha-beta except that you start with bounds of score-50 .. score+50, where score is the value returned from the previous iteration. You will need to provide some way of handling the case where the returned score from *this* search falls outside this "window". Once you've got your aspiration search working properly, you'll be in a strong position to decide where you want to go with your program. Above all, have fun with your program! Andrew Williams
This page took 0.02 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.