Author: Will Singleton
Date: 14:12:46 12/24/98
Go up one level in this thread
On December 24, 1998 at 14:36:40, Andrew Williams wrote: >On December 21, 1998 at 22:09:22, Will Singleton wrote: > >> >>Perhaps you could share some of your implementation details. You know, >>extension triggers, search method, etc. I'd be interested. >> > >Hi Will, > >PostModernist is an MTD(f)-based program. It uses null move with a depth >reduction of 2. For a while I used the Extended Futility Pruning method >advocated by Ernst Heinz in JICCA, but the program was weaker with it than >without it. Subsequent discussion here suggested that this was because at >blitz time controls it wasn't searching deep enough to support this heuristic. >I recently ditched killer-moves, but subsequently found a horrendous bug >elsewhere which might have been causing the killers not to work properly. I'll >be trying them again in the near future. I use the history heuristic. > I wonder show many progs use mtd(f). I've heard that it's difficult to get convergence; though KnightCap, I believe, has addressed that issue. Hey, whatever happened to KnightC on ICC? >PostModernist recreates its PV from the transposition table and ponders in the >normal way. The TT is probably over complex; it keeps upper and lower bound >scores plus a draft for each bound. The rules for updating a TT entry are >complicated; it seems to work at the moment, so I'm leaving it alone. There's >a normal TT, plus an "always-store" TT, plus a pawn score TT. The latter seems >pretty inefficient compared to some of the figures quoted here for other >programs. When you say that you recreate the PV from hash, do you mean that you stuff the PV into the table prior to each iteration, then let the table follow the PV? > >A few months ago, you asked a question here about "encouraging" certain types >of moves by giving ply 1 bonuses. I was doing this too, until the advice came >back that this was a bad idea. Right, and I haven't changed my code on this yet. I'm doing so much of it that I expect it will be a semi-major change, and it'll affect the hash tables etc. I guess the method to use is to set up pc-sq tables at the root, to encourage/discourage certain moves. > >I spent a lot of time on search extensions and at the moment I extend on check, >pawn landing on 7th rank and equal capture/re-capture on same square. > >PostModernist's opening book is created from the games in TWIC 141-199 (I'm >planning to get the TWIC CD soon, so I'll expand it then). It does NO learning, >although I've been looking at Steffen's (Hossa) approach, which he talked about >here some time ago. > My opening book is really small. It's taken from the fischer.txt collection of pgn games, found on the U Pitt archive. Does the twic CD have text-file pgn games? >Hope this is helpful. What about the rest of you? > > >>Regarding the auto-rematch issue, what I do is keep a list of opponents played >>during the current session, and when 4 games have been played by the same >>opponent, I decline any other games with it (him). This seems to work out >>pretty well, along with the noplay list. >> >>Perhaps you winboard guys can't easily get your opponent names to stuff in an >>array. Don't know about that. > >I used to do this (it's easy to find out who you are playing). I had a load of >problems with it so I stopped. I'll have to put it back in. An aside: I used to have the var Lag in my formula, till I found it didn't work very well for seeks. That is, if you seek f, and the formula has lag < 1200, for example, the seek will convert that term to true or false at the time of the seek. So if the lag is 600ms at the time of the seek, and after the seek it changes to 3000ms, the seek will still think it's 600ms. So I just read the lag and seek or match based on that. Will
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.