Not logged inRybka Chess Community Forum
Up Topic Rybka Support & Discussion / Rybka Discussion / Save Hash & Persistent Hash tips
- - Date 2009-08-05 01:47
Parent - - By Dragon Mist (****) Date 2009-07-06 18:53

> I'll save the hash so that higher depth is reached faster, you're free to start DPA at the point you stopped it.


This actually works??!! I thought that the whole Persistent Hash is bugy.
Parent - - By Vempele (Silver) Date 2009-07-06 18:58
Save Hash != Persistent Hash.
Parent - - By Dragon Mist (****) Date 2009-07-06 19:44
Can this actualy be used for correspondence games? Storing the couple of hours of IA, then reloading it after next moves (2 plies) have been played, and saving the time for the initial n-2 plies (or so) of IA?
Parent - - By Dragon Mist (****) Date 2009-07-06 19:56
No, it does not work at all. Tried a couple of minutes IA (previously checked Preserve Analysis, and named a file A.rsh), then played bestsofar, reloaded the game, pressed "load hash", hit Infinite, and nothing, it started to analyse from scratch.
Parent - - By titanium cranium (***) Date 2009-07-06 20:05
Sounds right to me.
Parent - - By Dragon Mist (****) Date 2009-07-06 20:21
That this doesn't work at all, that sounds right to you?
Parent - - By titanium cranium (***) Date 2009-07-06 20:26
Yes, that's been my experience to-date.
Parent - By Dragon Mist (****) Date 2009-07-06 21:46
Ah, that makes sense. :-)
Parent - - By Banned for Life (Gold) Date 2009-07-06 20:42
Checking Preserve Analysis is a mistake. This mode keeps higher depth entries in hash longer and is useful for working backwards through a game. It is not appropriate for IA analysis going forward in a game.

You need to enter a file name and hit the Save Hash button after you finish your IA analysis. Then hit the Load Hash button after you implement your move and your opponent's move.
Parent - - By Vempele (Silver) Date 2009-07-06 20:48
To verify it's working, try to compress the saved hash file. If the resulting file is crazy small, it didn't work at all.
Parent - - By Dragon Mist (****) Date 2009-07-06 21:49
A.rsh = 262,144 KB
A.rar = 157 KB
Parent - - By Vempele (Silver) Date 2009-07-06 21:52
That would seem crazy small. How long did you run Rybka?
Parent - - By Dragon Mist (****) Date 2009-07-06 21:57
5-6 minutes on Core 2 Duo laptop @ 2 GHz, 256 MB RAM.
Parent - By Vempele (Silver) Date 2009-07-06 22:30
Definitely not working.
Parent - By keoki010 (Silver) Date 2009-07-06 20:52

> You need to enter a file name and hit the Save Hash button after you finish your IA analysis. Then hit the Load Hash button after you implement your move and your opponent's move.


Hey, that makes sense.  I've been trying to see if I could save it under diff names but I was letting it save itself, <I thought>. Your suggestion makes more sense though.  I'll try it.
Parent - By Dragon Mist (****) Date 2009-07-06 21:48
Hm, I'll try this, thanks for the advice.
Parent - - By keoki010 (Silver) Date 2009-07-06 21:57
Alan, thanks for that tip! I've tried it and it works just like you said.  I didn't realize the p hash wasn't getting saved automatically. Now if I can figure out a system to keep all my corr. games seperated I'll be in great shape.  Again thanks... :grin:
Parent - By Dragon Mist (****) Date 2009-07-06 21:59

> Now if I can figure out a system to keep all my corr. games seperated I'll be in great shape.


Do let me know, that's exactly what I am looking for.
Parent - By Banned for Life (Gold) Date 2009-07-07 00:03
Can't help you there. My games are a tangled mess right now! :-D
Parent - By Uly (Gold) Date 2009-07-07 03:05

> Now if I can figure out a system to keep all my corr. games seperated


Why would you want that? "Tangled mess" is the way to go, you have no benefit whatsoever for having them separated, and cons like tons of wasted space, or no transpositions for similar games (if you force them.)
Parent - - By Dragon Mist (****) Date 2009-07-06 21:58

> You need to enter a file name and hit the Save Hash button after you finish your IA analysis.


Just one question, so first I stop engine, then properties and Save hash (previously I entered a filename)? Or I do Save hash during the IA?
Parent - - By Vempele (Silver) Date 2009-07-06 22:26

> Just one question, so first I stop engine, then properties and Save hash (previously I entered a filename)


Yes.
Parent - - By andrew_cz (**) Date 2009-07-31 15:33 Edited 2009-07-31 15:37
Do you keep the same filename for all games (against different correspondence players for example) or do you have a separate .rph file for each different player?

Also, I don't know why you're saying to save hash manually with PH.  For me, with PH on, it always remembers what it already searched (it's automatic).  The only problem I have with that is the next time I do IA (after my opponent made his move) it takes many hours, sometimes days, before it finds a new line.

If you're not using PH then what you're saying works and is expected (saving/loading saved hash manually).

And isn't .rph mean for persistent hash while .rsh is for saved hash?
Parent - - By Uly (Gold) Date 2009-07-31 15:54
If you're talking to me:

>Do you keep the same filename for all games


Yes.

> For me, with PH on, it always remembers what it already searched (it's automatic).


To me too. Actually, I get weird behavior if I try to use Save/Load hash together with PH, so I don't combine them.

>The only problem I have with that is the next time I do IA (after my opponent made his move) it takes many hours, sometimes days, before it finds a new line.


It may be due to the wrong move ordering bug, instead of analyzing the best move, Rybka will pick a move pseudorandomly and will start analyzing it at the current depth. Normally Rybka would prune this move, so you lose a lot of time examining it and giving it an exact score, and more if it fails low and more if the next ordered move is better but worse than best because once again Rybka will analyze it to current depth (and this keeps going until it's the turn to analyze the best move.)

So this bug must be avoided, when continuing an analysis session of Persistent Hash, make sure that you put to analyze the previous position (the same when you stopped analyzing) to feed normal hash, and then make move by move to the new position (if Rybka shows nothing so that you don't know if she's analyzing the wrong move, switch to multi-PV 2 until you see something, and then switch back, this avoids the bug.)

>And isn't .rph mean for persistent hash while .rsh is for saved hash?


The name you give to the file doesn't matter, I don't give extension to mine.
Parent - By andrew_cz (**) Date 2009-07-31 17:19 Edited 2009-07-31 17:29
Excellent advice.  I actually understand it this time (I read someone say this before but didn't understand it about the multipv switching).

The only thing I'm still not clear on is that you said "...if Rybka shows nothing so that you don't know if she's analyzing the wrong move..." Do you mean completely nothing? For me, it usually shows one move...like 24.d6 but sometimes also a full line, but either way, it'll just sit on that for hours/days before it starts to change. 

To avoid the bug, instead of seeing nothing (or just a single move) I should analyze at the previously stopped position, move forward until new position, stop engine, change multi-pv from 1 to 2 until I see a line (instead of just one ply), stop the engine again, change back from 2 to 1 and continue analyzing again from new position.  Is that right? I think I've tried this before though and it would still just show a single move in the analysis window and it'd sit there for hours.  I'll try it now once more though.

So do you use PH or just SH for your correspondence games? If I understood your right, you're saying that for SH I should keep saving over the same filename and doing a load on the next game.  But this doesn't seem to work because I just tried it on two games.  I analyzed on the 1st game, it got to a depth of 21.  I saved the hash as GAME.rsh.  I then moved to game #2, loaded the saved hash and started to analyze.  It would get to a depth of say 18 in this game and I'd save it to GAME.rsh.  Now, I load the 1st game, expecting it to continue from depth 21 but instead it starts from like depth 10...I'd go back to game #2 and reload the GAME.rsh hash and it would continue from depth 18. I tried this about 3 times and once it worked for both games, the other two times it failed on one of the games (had to start analyzing from scratch).  Any idea why?

Thanks for your help.
Parent - - By andrew_cz (**) Date 2009-07-31 17:37
Ok.  I just tried it like you said...using only PH and it would still just show me 24.d6 and sit on that.  Nothing would change in the analysis window for a couple of minutes, it would then finally begin to change...a line is now formed...however, it still hasn't added this line to the next depth level...(still at depth 18 instead of it adding the line to depth 19).  So it still seems very slow.  And I bet if I were to analyse for hours, make the suggested move, then make my opponents move and do the multipv trick from 1 to 2 then back it would take hours again before the analysis window would start to change.  This has been a problem for me as far back as I could remember.

Btw, what PH size do you use for all your games? And should the size increase over time? It never does for me.  If I set it to 14 gigs, it's always exactly 14 gigs (right to the last byte).
Parent - - By Uly (Gold) Date 2009-08-01 00:46

>To avoid the bug, instead of seeing nothing (or just a single move) I should analyze at the previously stopped position, move forward until new position, stop engine, change multi-pv from 1 to 2 until I see a line (instead of just one ply), stop the engine again, change back from 2 to 1 and continue analyzing again from new position.  Is that right?


You don't need to stop the engine for the switching, you just switch.

>I tried this about 3 times and once it worked for both games, the other two times it failed on one of the games (had to start analyzing from scratch).  Any idea why?


Yes, the implementation of save/load hash is not optimal, so that you end saving a few minutes of analysis per hour, or a few hours per day (in theory), but the time saved isn't drastic, if the engine finds a better move or your opponent plays an expected move the time saved will be even less, I think PH is superior in that it reaches current depth immediately.

>I just tried it like you said...using only PH and it would still just show me 24.d6 and sit on that.  Nothing would change in the analysis window for a couple of minutes, it would then finally begin to change...a line is now formed...however, it still hasn't added this line to the next depth level...(still at depth 18 instead of it adding the line to depth 19).  So it still seems very slow.


But it should be much faster than if a wrong move ordering hits, the problem is you don't know if the bug hit, so it's not clear if you should do the switch or not. Your problem of "it may take days to reach the next ply" may be due to too high depth, after some time Rybka isn't going to come with something useful relative to the time taken to get there, for such cases I'd suggest "simulating higher depth", that is, if you assume that the PV line that Rybka shows is best, you can force the moves.

If you force 10 half moves and reach depth 19 on the tail position, it's as if you reached depth 39 on the root position, at least for this line. It's likely that the line isn't best and it falls either way, but this is a really quick way to know, so that you can take back the moves and search for alternatives for the side that seemed to play worse.

At what depth you search will depend on your hardware and the position, but eventually you'll come with analysis lines much better than what Rybka would do by herself, and much faster. That's how I analyze, and people interact differently with the position, but it's clear that interacting with it is much superior than letting Rybka sit on the same position for days.

Just remember that Persistent Hash is bugged, so you'll need to visit all positions between your analyzed position and the root, and switch to Multi-PV 2 and back on them, and probably do it again, just make sure that the new score of the tail of the position appears on the current one, this is backward propagation and without it the time it takes to propagate the analysis would eventually take days.

>Btw, what PH size do you use for all your games?


256MB. Apparently this is big enough that I will not have any overwriting till Rybka 4 is out.

>If I set it to 14 gigs, it's always exactly 14 gigs (right to the last byte).


That's normal, and actually, you have a big balloon of hot air in there, if you want to know the real size of the file, zip it.
Parent - - By andrew_cz (**) Date 2009-08-03 13:04 Edited 2009-08-03 13:10
"You don't need to stop the engine for the switching, you just switch."

Tried that several times.  It doesn't seem to make any difference as nothing changes.

Are you sure you don't have to stop the engine? Here' what you answered to a guy in this thread when he asked the same question:

    > Just one question, so first I stop engine, then properties and Save hash (previously I entered a filename)

"Yes."

"At what depth you search will depend on your hardware and the position, but eventually you'll come with analysis lines much better than what Rybka would do by herself, and much faster. That's how I analyze, and people interact differently with the position, but it's clear that interacting with it is much superior than letting Rybka sit on the same position for days."

How do YOU interact with it? Simply changing the position to a few positions forward or are you feeding it moves that you think may be better? If it's the ladder then that's useless for me because if I thought a move was better than what Rybka suggests I probably wouldn't be using Rybka 3 in the first place :-)

"Just remember that Persistent Hash is bugged, so you'll need to visit all positions between your analyzed position and the root, and switch to Multi-PV 2 and back on them, and probably do it again, just make sure that the new score of the tail of the position appears on the current one, this is backward propagation and without it the time it takes to propagate the analysis would eventually take days."

Unfortunately, regardless of what I do, my problem is always there.  Sitting at a line or move for hours/days without much or any movement in the engine analysis window.  I've tried changing Multipv from 1 to 2 and waiting for it to change before switching back to 1.  No difference.  When you move ahead through your analyzed moves, how long do you sit at each move before reaching the end of the line and clicking back to the current position? Just curious, as it doesn't seem to make a difference for me anyway unless I reach the end of the line where the engine needs new analysis and shows it's working hard again.

Also, you said that we should use Preserve Analysis off.  Although I noticed Rybka 3 is MUCH faster with it off, I also noticed it's not writing to the PH file because I can see the modification date of the PH file unchanged.

So I'm resorting to PA off (for the nice speed boost) but I lose about 10-15 mins. when I load the Saved Hash file because when you load this file, and you're using the full 6-man TB like I do, then it takes about 10-15 mins before the engine starts analyzing.  And you lose that 10-15 mins. each time you load the SH file.  Still, I guess that's faster then using PH when PH doesn't even change for many hours.
Parent - - By Uly (Gold) Date 2009-08-04 01:45

>> Just one question, so first I stop engine, then properties and Save hash (previously I entered a filename)
>
> "Yes."


That's save/load hash and it's unrelated to Persistent Hash.

>Simply changing the position to a few positions forward or are you feeding it moves that you think may be better?


Both.

> If it's the ladder then that's useless for me because if I thought a move was better than what Rybka suggests I probably wouldn't be using Rybka 3 in the first place


I guess that'd require intuition, how it works is that you look at the incoming positions, and check for ideas for both sides, specially those that cause a big change in the evaluation (where 0.20 of evaluation is relatively big if the alternatives of past moves were <0.10 than mainline and this is killing it), i.e. if advancing the c pawn causes that "big" shift, you can check if it could have been advanced on precious moves. If you find that the c pawn could have been advanced from the root position and it's really 0.20 better than what you thought, you've found a "Z" move that Rybka would have pruned for several hours, much faster (or maybe Rybka wouldn't have found it at all.)

You also check for similar lines where one move worked to refute the variation in one, and doesn't in another, it's important to understand what is going on in a position that you're analyzing with Rybka, specially when she doesn't know what's going on, and your guidance becomes critical. An OTB player could have seen from the root that the plan was to advance the c pawn, and found the move better than Rybka much faster, but I don't have high chess skills yet I've been able to find such moves, so it's possible to be better than Rybka with her help.

> Unfortunately, regardless of what I do, my problem is always there.


The workaround only avoids the bug, if it's still taking you days to reach the next depth is because your current depth is very high,  already answered to this.

>When you move ahead through your analyzed moves, how long do you sit at each move before reaching the end of the line and clicking back to the current position? Just curious


To depth 16, unless I'm on a line where one side has made mistakes and it's taking too long to reach the next ply, in such case I'd cut it as short as 40 seconds. Keep in mind that searching at such low depth requires you to check for alternative moves manually, such as if a move is very close to main line score, you force and explore it, it may become mainline even though Rybka may have pruned it at high depth (that's why doing it manually is more useful than say, reaching depth 21.) My technique is probably non-optimal, I'm still learning and keep experimenting/finding new ways to analyze. Take it as an example.

> So I'm resorting to PA off (for the nice speed boost) but I lose about 10-15 mins. when I load the Saved Hash file because when you load this file, and you're using the full 6-man TB like I do, then it takes about 10-15 mins before the engine starts analyzing.  And you lose that 10-15 mins.


That's save/load hash and is not related to Persistent Hash.
Parent - - By andrew_cz (**) Date 2009-08-04 17:16 Edited 2009-08-04 17:23
"That's save/load hash and is not related to Persistent Hash."

Ok.  So with PH, do I keep Preserve Analysis on or off? I think I saw you mention somewhere that either you use Preserve Analysis (PA), PH or SH and not combine any of them so I assume you mean leave Preserve Analysis and SH off when using Persistent Hash.

Is your Kn/s much faster too when using PHash and PA is set to off? For me it's often a dramatic speed increase.  Like from 240 Kn/s to 380 or even 510 Kn/s.

"...check for ideas for both sides, specially those that cause a big change in the evaluation (where 0.20 of evaluation is relatively big if the alternatives of past moves were <0.10 than mainline and this is killing it)..."

I'm not sure how you'd determine which move in a line is the one that improves your score/evaluation by 0.20.  Many times the line for each depth is repeated with the exact same moves, yet the score increases or decreases.  For example, say R3 shows this in your analysis window:

(-5.30) d=18  14... Qf5 35. c6 Rxe1 36. Rxe1 Kc4 37. Nd2 Kd5 {(1:50:44) 2907280kN}
(-5.10) d=17  14... Qf5 35. c6 Rxe1 36. Rxe1 Kc4 37. Nd2 Kd5 {(0:44.27) 1307287kN}

I doubt you can tell that had I moved c6 at root (instead of Qf5) then my score would be -5.30 now (assuming I'm black) and I'd have gained the extra +0.20 on my opponent.

Even if the lines were slightly different such as:

(-5.30) d=18  14... Qf5 35. c6 Rxe3 36. Rxe3 Kc3 37. Nd1 Bc4 {(1:50:44) 2907280kN}
(-5.10) d=17  14... Qf5 35. c6 Rxe3 36. Rxe3 Kc3 37. Nd1 Bc4 {(0:44.27) 1307287kN}

It's still just as hard to determine that c6 is THE move for you now, insteading of Qf5 or some of the other ones deeper in the line.

Regardless, the few times I've tried this tactic, the line evaluation changes dramatically by scores such as from +1.50 to +1.75 or to -5.40 or to +0.80 or whatever.  Of course, this may have evened out or increased your score after a few more hours of analysis but when you feed a move that R3 hasn't considered, and you're not a GM, it makes me believe that I've probably given it a bad move, especially when the move I made keeps getting worse in the analysis as time progresses even if only by a few points.

On another note.  Notice in the above example the score: -5.10 at depth 17.  I get this all too often if I'm up on an opponent by such a score.  It either shows -5.10 or -5.12 at depth 17, then it may find a line with -10.45 at depth 18, before going back to -5.10 at depth 19, then depth 20 and it'll just sit there analysing a position such as d6 (12/48) for hours or days...and the engine was analysing from scratch before I started to analyze so it wasn't the PH bug.  Do you get that too sometimes?
Parent - - By Uly (Gold) Date 2009-08-05 01:47

>> Ok.  So with PH, do I keep Preserve Analysis on or off?


OFF, but you can mix Preserve analysis with save/load hash, no problem.

>Is your Kn/s much faster too when using PHash and PA is set to off?


With PH ON (and/or PA on presumably) Rybka isn't counting the nodes of the hash, so you don't get a meaningful node count anymore, it may even look as 0/kn even though it's not so (not that you get meaningful count anyway, it's only useful for comparing hardware, but otherwise you can ignore it.)

>(-5.30) d=18  14... Qf5 35. c6 Rxe1 36. Rxe1 Kc4 37. Nd2 Kd5 {(1:50:44) 2907280kN}
>(-5.10) d=17  14... Qf5 35. c6 Rxe1 36. Rxe1 Kc4 37. Nd2 Kd5 {(0:44.27) 1307287kN}


Ok, some points on this:

1. The analysis I'm talking about is to get some sort of winning advantage like that, but breaks after a certain point (1.50 or so I believe), where you no longer should focus on finding the best move in the position, or optimal etc., when you reach high scores is important to take measures to know if you're really winning, and if so, keep finding moves that keep winning (usually when the score keeps going up with higher depth, but you have to make sure that you don't hit a no progress wall.) Whatever you were trying to do previously, you're already there, now, focus on scoring the game home.

2. On won positions the score is going up no matter what, there are probably many moves that win, so the approach of finding the best move no longer works, and finding the best defense is harder (because delaying the lose as much as possible may not be the best strategy.) Just make sure that you see progress on the position.

3. Due to a bug Rybka is specially bad and slow at winning positions, but if they're really winning her output moves will win anyway. If you want to play the fastest win or something, you'd like to use a different engine (such as freeware Rybka that doesn't have the bug.)

4. Rybka's missing knowledge makes her think that some drawn positions are won, so what should be a 0.00 score looks like a 5.12 one or so, reaching higher depth or any analysis method isn't going to help, you'd have to use a different engine or your own knowledge to check that the score is real.

So, let's talk about <1.50 positions or so, where you are still trying to win.

>when you feed a move that R3 hasn't considered, and you're not a GM, it makes me believe that I've probably given it a bad move


If you force a move for white and white's score increases (at same relative depth), you've found a better move than Rybka, it's that easy. I forgot to say, if you see Rybka taking much longer on an alternative than on the other moves, force it, I've found these moves in where Rybka gets stuck are likely to be better than Rybka's best move and are worth investigating.
Parent - - By andrew_cz (**) Date 2009-08-05 20:26 Edited 2009-08-05 20:32
"With PH ON (and/or PA on presumably) Rybka isn't counting the nodes of the hash, so you don't get a meaningful node count anymore, it may even look as 0/kn even though it's not so (not that you get meaningful count anyway, it's only useful for comparing hardware, but otherwise you can ignore it.)"

So which count and speed is the correct one? And I was referring to PA, not PH.  With PA on (and PH off) I often get much faster speeds.  With PA on and PH off, I then get much slower speeds.  So the question is, which one should I trust more?

"If you force a move for white and white's score increases (at same relative depth), you've found a better move than Rybka, it's that easy."

You may be right but that's hard to say for sure because for example.  Let's say you've analyzed for 5 minutes and you stopped the analysis at depth 18 with a score of +0.25 for White.  You then go with a different move then what the analysis was showing as the best move at that time.  You wait until you get to depth 18 again and get a score of +0.50 for White.  But had you waited until a higher depth than 18, say 25, you'd find out that it actually puts White at -0.10.

The same example can be used on higher depths.  So you see.  I now would be scratching my head and wondering, was the move that R3 suggested better or was my better? The only way to find out would be to reanalyze the original R3 move at higher depth...wasting valuable time.

On one other topic that I've always been unsure of which way to go.  With a book, let's use the Jeroen aquarium book.  Many opening moves are green, sometimes multiple moves are green.  Which move do you tend to select as what you believe to be the better move for R3:



White to move.  Which one would you select?

Are you better off going with Na3 because it has the most games played and a 33% Play probability or do you go with Be2 because it's slightly higher Success Rate but more importantly, Rybka scores it as +0.26.

Or do you go with the red if Nbd2 was scored by Rybka as +0.45?

How about this example?



I'd probably go with Bg5 but Bc4 looks tempting with a nice Rybka score of +0.41!

And which is better anyway? Selecting the move with a higher Rybka score or CAP score? What if there is no Rybka score but there is a CAP score? Is that more important? My guess is Rybka is the more important of the two as long as you're using R3.

So what I'm getting at is, when you have more than one move available in the opening book, how would you base your decisions? And I don't mean selecting a move to throw an opponent off...I don't think it's wise to select such a move hoping that your opponent isn't prepared for it or doesn't even know it.  I would think the Rybka score together with a green move would be the most important to base your decision on...unless of course the # of games is much lower on that move.
Parent - - By Uly (Gold) Date 2009-08-05 23:52

>So which count and speed is the correct one?


None, for speed look at the depth reached, or time to solution, nodes per second is only used for comparing hardware, where having PH ON or OFF shouldn't matter but it'd be recommended to test it with off just because you wouldn't need to transfer the hash to the other computer.

"Nodes per second" is not speed, and it's clear that Persistent Hash is faster (if you don't hit the wrong move ordering bug - if you do it's [potentially] much slower, and it could be slower if you take measures to avoid the bug every time, so the effectiveness comes from warming up the Persistent Hash with as much useful positions as possible, so even when you avoid the bug it's still faster to reach higher depth.)

>You wait until you get to depth 18 again and get a score of +0.50 for White.  But had you waited until a higher depth than 18, say 25, you'd find out that it actually puts White at -0.10.


That's why interaction is needed. In most cases +0.50 is going to stay, and that's why forcing moves is useful, try it.

>The only way to find out would be to reanalyze the original R3 move at higher depth...wasting valuable time.


If a 0.50 move fell to -0.10 is likely that a 0.25 will fall too, or worse, and you could even find a third move that goes way up to at least 0.20 again, you just don't know, that's why interaction is needed, Rybka is going to prune blindly (e.g. she pruned the 0.50 move that was better at current depth) if you don't guide her.

Positions where 0.50 move fail low to -0.10 are very complex, returning to previous positions to extend them is not a waste of time, you'd like to go back and check for what's third best move and to force the 0.25 move to explore it even if 0.50 doesn't fall to -0.10. If you go too deep instead of wide, eventually the opponent is going to play a surprise move that throws all your analysis to the waste.

For example, let's reverse it, imagine that you're black on this position, and the opponent plays that 0.50 move, but it doesn't fall to -0.10, now you're worse by 25cp just because you didn't examine the incoming positions thoroughly.

> White to move.  Which one would you select?


You can't choose a move just by empirical information, move color, games, success, CAP etc. information is only there to work as a reference, so you know how people that played such moves have performed in the past, but just looking at that information isn't enough to decide on a move.

What I'd do is force the likely moves to see where they lead to, and once statistics are unreliable see how the engine scores the position, that could be your "out of book" position, are you willing to play it? If not, you go back and play a different move from your side, until you find an "out of book" position you like. It's like taking take-backs, statistics are just there so you find moves much faster than the engine (e.g. red moves should be pruned by default.)

This (or similar) is what centaurs do on the opening, that's one reason they perform better than automated engines, picking a move only based on statistics is like playing a move randomly based on Play% (or as ineffective.)
Parent - By andrew_cz (**) Date 2009-08-07 16:19
"That's why interaction is needed. In most cases +0.50 is going to stay, and that's why forcing moves is useful, try it."

I've been trying it.  Unfortunately it's usually either a worse move or just as good.  Never got lucky yet where it turns out to score significantly better :-(

"You can't choose a move just by empirical information, move color, games, success, CAP etc. information is only there to work as a reference"

Of course...It's just that I sometimes see opponents take a red move which statistically is supposed to be a worse move (doesn't mean it is).  And often that red move, I think they chose it because it gives them a better score.  So even if I work through the book and/or do analysis on it...you can't conclusively say that their book was good or bad...you'd have to go much deeper into the game to determine and even then you don't know if it's because of that red move early in the game or because of a small error in the middle game.  My point is, I'd have to analyze for many hours or days and even then, in the opening, that doesn't do much for you.  I tried it already.
Up Topic Rybka Support & Discussion / Rybka Discussion / Save Hash & Persistent Hash tips

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill