Not logged inRybka Chess Community Forum
Up Topic The Rybka Lounge / Computer Chess / "Sampled search" ?
- - By albitex (***) [it] Date 2016-02-23 22:25
What is the "sampled search" function? It is implemented in Fritz 15 gui.
Parent - - By Dragon Mist (****) [hr] Date 2016-02-23 22:43
Bottom part of the window on your screen, supposed to show where exactly is engine at any given moment in its search within the next iteration. What you see though, depends on the engine you use. It was originaly designed by V. Rajlich and if you use later Rybka's or new Fritz 15, you'll be able to see a lot. Other engines show less information. Here is 5-years old example of R3 and SS, blue number would start from the far right (end of PV) in the begining of the next iteration/depth, and would progress to the left (would also show fail highs, and fail lows). Once to the far left, you knew that new PV is about to be spewed out.
Parent - - By Hamster (**) [ch] Date 2016-02-24 13:44
I understand it is interesting but how is it useful, e.g. in correspondence chess? :confused:
Parent - By Dragon Mist (****) [hr] Date 2016-02-24 15:53
Time saver: at last you have some information how long before the next PV
Peek preview: you know if PV has changed (and how) before it is being finished
Fail high/low: you can tell (need to watch closely, though) where in PV and why it happened
Etc.
Parent - - By albitex (***) [it] Date 2016-02-24 16:51 Edited 2016-02-24 16:55
Ljubicic the world champion correspondence in his interview , states :
"I have seen the latest ChessBase features such as Cloud, LiveBook and Let’s Check, and I find them exciting. They might be somewhat too “light” for elite correspondence chess players, but coupled with the amazing “Sampled Search” in Rajlich’s Fritz 15 they offer very exciting insights and help any chess player to enter the world of computer aided chess - highly recommendable for any OTB or casual CC player! In fact, I consider “Sampled Search” the biggest invention in computer chess ever.":slim:
But if it is as you say (the function), seems to me not a big news. This was already a function present in Zappa and even in the old engine "Nimzo 8" (window out engine).

Link to full interview to world champion corrispondente: http://en.chessbase.com/post/better-than-an-engine-leonardo-ljubicic-1-2
Parent - - By Dragon Mist (****) [hr] Date 2016-02-24 17:22
What exactly is your point? I am entitled to an opinion just like anyone else. And my opinion is that Sampled Search (having used in day-to-day for 3 years) is the biggest invention in computer chess. I believe I even wrote something like this on this forum several years ago. Not a big news, of course, but CB asked for my opinion on their software's features and I spoke my mind.
I have no experience with Zappa and/or Nimzo regarding Sampled Search, sorry.
Parent - - By Felix Kling (Gold) [de] Date 2016-02-24 20:56
It's OK, they make advertisement for their latest Fritz and of course they do not mention that other software does support this as well. But it's clear that Chessbase news promote software from ... Chessbase :-)
Parent - - By Dragon Mist (****) [hr] Date 2016-02-24 21:24
Ah, now I got it. Well, the whole interview was done as a set of questions for which I provided my answers. The article is now published and it looks like there were just one or 2 questions, and the rest is just me big mouth. Not true. So, among others, I was also asked a question "if I have seen the latest features such as Let's Check, etc. and what do I think of them". It is not that I just started to talk about them on my own. Editor's cut I guess. :grin:
Parent - By Felix Kling (Gold) [de] Date 2016-02-25 11:02
:-)

I remember an "interview" with the guys from chessgames.com published on chessbase.com, where they made chessgames.com look stupid by praising the chessbase database with millions of games and pointing out that chessgames.com offers much less, which is, of course, not the focus of that website. I also remember "interviews" with the Fritz (?) developer stating that other engines may have higher ratings but fritz (?) is better for analysis.

Anyway, I think the guys at Chessbase know what they are doing and that's part of their "news" concept, otherwise it wouldn't make that much sense for them to run these news pages.
Parent - - By Hamster (**) [ch] Date 2016-02-25 10:20
Using Aquarium you still need either Rybka (bit old by now) or Fritz15 to enjoy Sampled Search?
Parent - By Felix Kling (Gold) [de] Date 2016-02-25 10:50
well, the engine needs to support it, so you need in any case a GUI support as well as engine support. I guess for both Fritz and Aquarium it works with Rybka only, but I'm not sure about it.
Parent - - By h.g.muller (****) [nl] Date 2016-02-25 21:45
So how is this implemented at the UCI level? Does the engine just emit extra 'info pv' commands whenever the move changes in a deeper PV node (instead of only when it changes in the root)? How would the GUI know where to put the score in this PV? Just by comparing it against the previous PV is received, or is there some extra keyword in the info command that explicitly indicates the ply level of the active node?

I guess I could implement this in WinBoard/XBoard by displaying the the PV samples in the message field above the board, and the normal PVs in the Engine Output window.
Parent - - By bob (Gold) [us] Date 2016-02-26 01:29
Here's an odd thought.

What if the hash table was created as a shared memory object.  Program runs and updates it normally.  A user could run a second engine that attaches to that object (one could use mmap(), or shmget()/shmat() or whatever) and then you could query that "leach" and trigger a search that accesses the shared table to play a "what if this happens?" and get some useful feedback from what the primary engine has already searched.  Used to not be very useful, but the computers out search humans so badly OTB that this might give some insight to an in-progress game...
Parent - - By Sesse (****) Date 2016-02-26 12:02
Yes, this is what I alluded to in an earlier comment. My theory, though, is that there are too many cutoffs. Super-frustrating for a human to go through “well, this line here looks interesting, why can't I play move A?” and get “sorry Dave, I can't let you know that; that's a fail-high”.

/* Steinar */
Parent - By Dragon Mist (****) [hr] Date 2016-02-26 17:39

> and get “sorry Dave, I can't let you know that; that's a fail-high”.
>


:grin:
Parent - - By Felix Kling (Gold) [de] Date 2016-02-26 10:43
This is done by calling the engine not with "uci", but with "cbr3" instead. The info comes with "info sample" lines. I piped some output from Rybka 3:

option name cbr3_randomizer_threshold type spin default 8 min 1 max 512
option name cbr3_randomizer_mode type check default false
option name cbr3_randomizer_reset type button
cbr3ok
info depth 1
info depth 2
info depth 2 score cp 26 time 6 nodes 42 nps 7168 pv g1f3
info depth 2 time 7 nodes 51 nps 7460

info depth 3
info depth 3 score cp 9 time 10 nodes 65 nps 6656 pv g1f3
info depth 3 time 32 nodes 114 nps 3648

info depth 4
info depth 4 score cp 13 time 42 nodes 142 nps 3462 pv g1f3
info depth 4 time 51 nodes 190 nps 3814

info depth 5
info depth 5 score cp 9 time 68 nodes 267 nps 4020 pv g1f3 g8f6
info depth 5 time 85 nodes 426 nps 5132

info depth 6
info depth 6 score cp 6 time 123 nodes 722 nps 6010 pv g1f3 g8f6 b1c3
info depth 6 time 170 nodes 1243 nps 7487

info depth 7
info depth 7 score cp 10 time 201 nodes 1553 nps 7911 pv g1f3 g8f6 b1c3 b8c6
info depth 7 time 256 nodes 2284 nps 9136

info depth 8
info sample g1f3 issearching
info sample g1f3 g8f6 icp 6 b1c3 b8c6 d2d3
info depth 8 score cp 6 time 450 nodes 3507 nps 7980 pv g1f3 g8f6 b1c3 b8c6 d2d3
info sample isworse b1c3 g8f6
info sample b1c3 isunclear
info sample isworse e2e3 g8f6
info sample isworse d2d3 g8f6
info sample isworse d2d4 g8f6
info sample d2d4 isunclear
info sample isworse b2b4 g8f6
info sample isworse a2a4 g8f6
info sample isworse a2a3 g8f6
info sample isworse b2b3 g8f6
info sample isworse c2c4 g8f6
info sample c2c4 isunclear
info sample isworse c2c3 g8f6
info sample isworse e2e4 b8c6
info sample isworse f2f4 b8c6
info sample isworse f2f3 b8c6
info sample isworse g2g4 b8c6
info sample isworse g2g3 b8c6
info sample isworse h2h4 b8c6
info sample isworse h2h3 b8c6
info sample isworse b1a3 g8f6
info sample isworse g1h3 g8f6
info depth 8 time 714 nodes 5569 nps 7986

info depth 9
info sample g1f3 issearching
info sample g1f3 g8f6 b1c3 icp 8 b8c6 d2d3 e7e6
info sample g1f3 g8f6 b1c3 icp 8 [ e2e3 isunclear ]
info sample g1f3 g8f6 b1c3 icp 8 [ isbetter e2e3 ]
info sample g1f3 g8f6 b1c3 icp 8 [ c2c4 isunclear ]
info sample g1f3 g8f6 b1c3 icp 8 [ isbetter c2c4 ]
info sample g1f3 g8f6 c2c4 icp 9 b8c6 d2d3 e7e6
info sample g1f3 g8f6 icp 9 c2c4 b8c6 d2d3 e7e6
info sample g1f3 g8f6 icp 9 [ d7d5 isunclear ]
info depth 9 score cp 9 time 2115 nodes 12333 nps 5971 pv g1f3 g8f6 c2c4 b8c6 d2d3 e7e6
info sample isworse b1c3 g8f6
info sample isworse e2e3 g8f6
info sample isworse d2d3 g8f6
info sample isworse d2d4 g8f6
info sample isworse b2b4 g8f6
info sample isworse a2a4 g8f6
info sample isworse a2a3 g8f6
info sample isworse b2b3 g8f6
info sample isworse c2c4 g8f6
info sample isworse c2c3 g8f6
info sample isworse e2e4 b8c6
info sample isworse f2f4 b8c6
info sample isworse f2f3 b8c6
info sample isworse g2g4 b8c6
info sample isworse g2g3 b8c6
info sample isworse h2h4 b8c6
info sample isworse h2h3 g8f6
info sample isworse b1a3 g8f6
info sample isworse g1h3 g8f6
info depth 9 time 2214 nodes 13723 nps 6347

info depth 10
info sample g1f3 issearching
info sample g1f3 g8f6 c2c4 b8c6 icp 9 b1c3 e7e6 d2d4
info sample g1f3 g8f6 c2c4 b8c6 icp 9 [ e7e6 isunclear ]
info sample g1f3 g8f6 c2c4 b8c6 icp 9 [ isbetter e7e6 ]
info sample g1f3 g8f6 c2c4 icp 9 b8c6 b1c3 e7e6 d2d4
info sample g1f3 g8f6 c2c4 icp 9 [ b1c3 isunclear ]
info sample g1f3 g8f6 c2c4 icp 9 [ g2g3 isunclear ]
info sample g1f3 g8f6 icp 9 c2c4 b8c6 b1c3 e7e6 d2d4
info depth 10 score cp 9 time 3853 nodes 23105 nps 6140 pv g1f3 g8f6 c2c4 b8c6 b1c3 e7e6 d2d4
info sample isworse b1c3 g8f6
info sample isworse e2e3 g8f6
info sample isworse d2d3 g8f6
info sample isworse d2d4 g8f6
info sample isworse b2b4 g8f6
info sample isworse a2a4 g8f6
info sample isworse a2a3 g8f6
info sample isworse b2b3 g8f6
info sample isworse c2c4 g8f6
info sample isworse c2c3 g8f6
info sample isworse e2e4 b8c6
info sample isworse f2f4 b8c6
info sample isworse f2f3 b8c6
info sample isworse g2g4 b8c6
info sample isworse g2g3 b8c6
info sample isworse h2h4 b8c6
info sample isworse h2h3 g8f6
info sample isworse b1a3 g8f6
info sample isworse g1h3 g8f6
info depth 10 time 4248 nodes 28295 nps 6820

info depth 11
info sample g1f3 issearching
info sample g1f3 g8f6 c2c4 b8c6 b1c3 icp 11 e7e6 d2d4 f8d6
info sample g1f3 g8f6 c2c4 b8c6 b1c3 icp 11 [ d2d4 isunclear ]
info sample g1f3 g8f6 c2c4 b8c6 b1c3 icp 11 [ isbetter d2d4 ]
info sample g1f3 g8f6 c2c4 b8c6 d2d4 icp 22 d7d5 c4d5 d8d5 b1c3
info sample g1f3 g8f6 c2c4 b8c6 icp 22 d2d4 d7d5 c4d5 d8d5 b1c3
info sample g1f3 g8f6 c2c4 b8c6 icp 22 [ d7d6 isunclear ]
info sample g1f3 g8f6 c2c4 b8c6 icp 22 [ isbetter d7d6 ]
info sample g1f3 g8f6 c2c4 d7d6 icp 12 b1c3 c7c5 d2d3 b8c6
info sample g1f3 g8f6 c2c4 b8c6 icp 12 [ c7c5 isunclear ]
info sample g1f3 g8f6 c2c4 b8c6 icp 12 [ e7e6 isunclear ]
info sample g1f3 g8f6 c2c4 b8c6 icp 12 [ isbetter e7e6 ]
info sample g1f3 g8f6 c2c4 e7e6 icp 3 g2g3 f8e7 f1g2 d7d5
info sample g1f3 g8f6 c2c4 icp 3 e7e6 g2g3 f8e7 f1g2 d7d5
info sample g1f3 g8f6 c2c4 icp 3 [ b1c3 isunclear ]
info sample g1f3 g8f6 c2c4 icp 3 [ isbetter b1c3 ]
info sample g1f3 g8f6 b1c3 icp 9 b8c6 d2d4 d7d5 a2a3 f6e4
info sample g1f3 g8f6 c2c4 icp 9 [ g2g3 isunclear ]
info sample g1f3 g8f6 c2c4 icp 9 [ isbetter g2g3 ]
info sample g1f3 g8f6 icp 9 b1c3 b8c6 d2d4 d7d5 a2a3 f6e4
info depth 11 score cp 9 time 7431 nodes 58177 nps 8016 pv g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 a2a3 f6e4
info sample isworse b1c3 g8f6
info sample b1c3 isunclear
info sample b1c3 isbetter
info sample isbetter b1c3 g8f6 d2d4 d7d6 e2e4 icp 14 h7h6 g1f3 g7g5
info sample isbetter b1c3 g8f6 d2d4 d7d6 e2e4 icp 14 [ e2e3 isunclear ]
info sample isbetter b1c3 g8f6 d2d4 d7d6 icp 14 e2e4 h7h6 g1f3 g7g5
info sample isbetter b1c3 g8f6 d2d4 d7d6 icp 14 [ c7c6 isunclear ] g1f3
info sample isbetter b1c3 g8f6 d2d4 d7d6 icp 14 [ d7d5 isunclear ]
info sample isbetter b1c3 g8f6 d2d4 d7d6 icp 14 [ isbetter d7d5 ]
info sample isworse b1c3 g8f6 d2d4 icp --
info sample isworse b1c3 g8f6 d2d4 icp -- [ e2e3 isunclear ]
info currmove e2e3 currmovenumber 3
info sample isworse e2e3 g8f6
info sample e2e3 isunclear
info currmove d2d3 currmovenumber 4
info sample isworse d2d3 g8f6
info currmove d2d4 currmovenumber 5
info sample isworse d2d4 g8f6
info sample d2d4 isunclear
info sample d2d4 isbetter
info sample isworse d2d4 g8f6 b1c3 d7d5 c1f4 icp --
info sample isworse d2d4 g8f6 b1c3 d7d5 c1f4 icp -- [ h2h3 isunclear ] b8c6
info sample isworse d2d4 g8f6 b1c3 icp --
info currmove b2b4 currmovenumber 6
info sample isworse b2b4 g8f6
info currmove a2a4 currmovenumber 7
info sample isworse a2a4 g8f6
info currmove a2a3 currmovenumber 8
info sample isworse a2a3 g8f6
info currmove b2b3 currmovenumber 9
info sample isworse b2b3 g8f6
info currmove c2c4 currmovenumber 10
info sample isworse c2c4 g8f6
info currmove c2c3 currmovenumber 11
info sample isworse c2c3 g8f6
info currmove e2e4 currmovenumber 12
info sample isworse e2e4 b8c6
info currmove f2f4 currmovenumber 13
info sample isworse f2f4 b8c6
info currmove f2f3 currmovenumber 14
info sample isworse f2f3 b8c6
info currmove g2g4 currmovenumber 15
info sample isworse g2g4 b8c6
info currmove g2g3 currmovenumber 16
info sample isworse g2g3 c7c5
info sample g2g3 isunclear
info currmove h2h4 currmovenumber 17
info sample isworse h2h4 b8c6
info currmove h2h3 currmovenumber 18
info sample isworse h2h3 g8f6
info currmove b1a3 currmovenumber 19
info sample isworse b1a3 g8f6
info currmove g1h3 currmovenumber 20
info sample isworse g1h3 g8f6
info depth 11 time 15803 nodes 112897 nps 7315

info depth 12
info currmove g1f3 currmovenumber 1
info sample g1f3 issearching
info sample g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 icp 10 c1f4 c8f5 e2e3
info sample g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 icp 10 [ e7e6 isunclear ]
info sample g1f3 g8f6 b1c3 b8c6 d2d4 icp 10 d7d5 c1f4 c8f5 e2e3
info sample g1f3 g8f6 b1c3 b8c6 icp 10 d2d4 d7d5 c1f4 c8f5 e2e3
info sample g1f3 g8f6 b1c3 icp 10 b8c6 d2d4 d7d5 c1f4 c8f5 e2e3
info sample g1f3 g8f6 icp 10 b1c3 b8c6 d2d4 d7d5 c1f4 c8f5 e2e3
info depth 12 score cp 10 time 19155 nodes 136785 nps 7312 pv g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 c1f4 c8f5 e2e3
info currmove b1c3 currmovenumber 2
info sample isworse b1c3 g8f6
info currmove e2e3 currmovenumber 3
info sample isworse e2e3
info currmove d2d3 currmovenumber 4
info sample isworse d2d3 g8f6
info currmove d2d4 currmovenumber 5
info sample isworse d2d4 g8f6
info currmove b2b4 currmovenumber 6
info sample isworse b2b4 g8f6
info currmove a2a4 currmovenumber 7
info sample isworse a2a4 g8f6
info currmove a2a3 currmovenumber 8
info sample isworse a2a3 g8f6
info currmove b2b3 currmovenumber 9
info sample isworse b2b3 g8f6
info currmove c2c4 currmovenumber 10
info sample isworse c2c4 g8f6
info currmove c2c3 currmovenumber 11
info sample isworse c2c3 g8f6
info currmove e2e4 currmovenumber 12
info sample isworse e2e4 b8c6
info currmove f2f4 currmovenumber 13
info sample isworse f2f4 b8c6
info currmove f2f3 currmovenumber 14
info sample isworse f2f3 b8c6
info currmove g2g4 currmovenumber 15
info sample isworse g2g4 b8c6
info currmove g2g3 currmovenumber 16
info sample isworse g2g3 e7e5
info currmove h2h4 currmovenumber 17
info sample isworse h2h4 b8c6
info currmove h2h3 currmovenumber 18
info sample isworse h2h3 g8f6
info currmove b1a3 currmovenumber 19
info sample isworse b1a3 g8f6
info currmove g1h3 currmovenumber 20
info sample isworse g1h3 g8f6
info depth 12 time 21560 nodes 151908 nps 7214

info depth 13
info currmove g1f3 currmovenumber 1
info sample g1f3 issearching
info sample g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 c1f4 icp 18 c8f5 e2e3 e7e6
info sample g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 icp 18 c1f4 c8f5 e2e3 e7e6
info sample g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 icp 18 [ d7d6 isunclear ]
info sample g1f3 g8f6 b1c3 b8c6 d2d4 d7d5 icp 18 [ e7e6 isunclear ]
info sample g1f3 g8f6 b1c3 b8c6 d2d4 icp 18 d7d5 c1f4 c8f5 e2e3 e7e6
info sample g1f3 g8f6 b1c3 b8c6 icp 18 d2d4 d7d5 c1f4 c8f5 e2e3 e7e6
info sample g1f3 g8f6 b1c3 b8c6 icp 18 [ d7d6 isunclear ]
info sample g1f3 g8f6 b1c3 b8c6 icp 18 [ c7c6 isunclear ]
info sample g1f3 g8f6 b1c3 b8c6 icp 18 [ d7d5 isunclear ]
info sample g1f3 g8f6 b1c3 b8c6 icp 18 [ isbetter d7d5 ]
info sample g1f3 g8f6 b1c3 d7d5 icp 13 d2d4 e7e6 g2g3 b8c6 f1g2 f8d6
info sample g1f3 g8f6 b1c3 icp 13 d7d5 d2d4 e7e6 g2g3 b8c6 f1g2 f8d6
info sample g1f3 g8f6 b1c3 icp 13 [ g2g3 isunclear ]
info sample g1f3 g8f6 icp 13 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 f1g2 f8d6
info depth 13 score cp 13 time 31813 nodes 242692 nps 7811 pv g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 f1g2 f8d6
info currmove b1c3 currmovenumber 2
info sample isworse b1c3 g8f6
info currmove e2e3 currmovenumber 3
info sample isworse e2e3 g8f6
info currmove d2d3 currmovenumber 4
info sample isworse d2d3 g8f6
info currmove d2d4 currmovenumber 5
info sample isworse d2d4 g8f6
info currmove b2b4 currmovenumber 6
info sample isworse b2b4 g8f6
info currmove a2a4 currmovenumber 7
info sample isworse a2a4 g8f6
info currmove a2a3 currmovenumber 8
info sample isworse a2a3 g8f6
info currmove b2b3 currmovenumber 9
info sample isworse b2b3 g8f6
info currmove c2c4 currmovenumber 10
info sample isworse c2c4 g8f6
info currmove c2c3 currmovenumber 11
info sample isworse c2c3 g8f6
info currmove e2e4 currmovenumber 12
info sample isworse e2e4 b8c6
info currmove f2f4 currmovenumber 13
info sample isworse f2f4 b8c6
info currmove f2f3 currmovenumber 14
info sample isworse f2f3 b8c6
info currmove g2g4 currmovenumber 15
info sample isworse g2g4 b8c6
info currmove g2g3 currmovenumber 16
info sample isworse g2g3 b8c6
info sample g2g3 isunclear
info currmove h2h4 currmovenumber 17
info sample isworse h2h4 b8c6
info currmove h2h3 currmovenumber 18
info sample isworse h2h3 g8f6
info currmove b1a3 currmovenumber 19
info sample isworse b1a3 g8f6
info currmove g1h3 currmovenumber 20
info sample isworse g1h3 g8f6
info depth 13 time 36324 nodes 287282 nps 8098

info depth 14
info currmove g1f3 currmovenumber 1
info sample g1f3 issearching
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 icp 18 f1g2 f8d6 e1g1 e8g8 c3b5 h7h6
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 icp 18 [ f8d6 isunclear ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 icp 18 [ a7a6 isunclear ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 icp 18 [ c8d7 isunclear ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 icp 18 [ f8e7 isunclear ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 g2g3 icp 18 b8c6 f1g2 f8d6 e1g1 e8g8 c3b5 h7h6
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 icp 18 g2g3 b8c6 f1g2 f8d6 e1g1 e8g8 c3b5 h7h6
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 icp 18 [ c7c6 isunclear ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 icp 18 [ h7h6 isunclear ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 icp 18 [ isbetter h7h6 ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 e7e6 icp 18 [ d8d6 isunclear ]
info sample g1f3 g8f6 b1c3 d7d5 d2d4 icp 18 e7e6 g2g3 b8c6 f1g2 f8d6 e1g1 e8g8 c3b5 h7h6
info sample g1f3 g8f6 b1c3 d7d5 icp 18 d2d4 e7e6 g2g3 b8c6 f1g2 f8d6 e1g1 e8g8 c3b5 h7h6
info sample g1f3 g8f6 b1c3 icp 18 d7d5 d2d4 e7e6 g2g3 b8c6 f1g2 f8d6 e1g1 e8g8 c3b5 h7h6
info sample g1f3 g8f6 icp 18 b1c3 d7d5 d2d4 e7e6 g2g3 b8c6 f1g2 f8d6 e1g1 e8g8 c3b5 h7h6
info sample g1f3 g8f6 icp 18 [ b8c6 isunclear ]
Parent - - By h.g.muller (****) [nl] Date 2016-02-26 11:19
OK, thank you. This is very helpful. So it is basically a different protocol, which presumably is identical to UCI, except that in this mode it shows a few extra options, and it switches on the emission of the 'info sample' commands. (I wonder why this design was chosen, rather than just sticking to UCI and enabling the 'info sample' emission by a regular UCI option. It seems a disadvantage that the engine has no way now to inform the GUI that it does support that feature before it is already committed to either use or not use it...)

Does "icp N" in a PV indicate that the score of the following move sequence is N centi-Pawn? I imagine that "isworse" or "isbetter" indicate the preceding move failed low or high, respectively. The meaning of "isunclear" is unclear to me, however. Does it mean that a reduced search gave an unacceptable result, and that a re-search is now in progress?

Anyway, it does not seem very difficult to put a command-line option on Polyglot that instructs it to use cbr3 protocol instead of UCI (only affecting the emission of "uci" and the recognition of "cbr3ok" in the initial handshake), and have it pass the "info sample" output as regular Thinking Output to the GUI. And then have the latter recognize it by the isbetter/isworse/isunclear/icp keywords in it, to keep it out of the Engine Output window and display it in a suitable format elsewhere.
Parent - By Labyrinth (*****) [us] Date 2016-02-26 12:06

>The meaning of "isunclear" is unclear to me, however.


Such a great sentence :-p Very few scenarios where it could occur.
Parent - - By Felix Kling (Gold) [de] Date 2016-02-26 14:51 Edited 2016-02-26 15:04
About using cbr3 instead of uci: That had the "advantage" that other GUIs couldn't use sampled search before this syntax was made public.

About the meaning: Yes, I think that is the way it is. Is unclear may be displayed with "!?".

About implementation: Yes, shouldn't be too difficult.

I attache an image of how it looks in Aquarium.
Parent - - By Dragon Mist (****) [hr] Date 2016-02-26 17:49
Bottom part looks to me more like Rybka log (can't remember the exact name), the parameter you could turn on in engine settings, which you could later read and see basicaly a rudimentary game analysis by engine (it was not easy readable, though).
Parent - By Felix Kling (Gold) [de] Date 2016-02-27 00:10
no, this is sampled search, chessbase has just a different way of displaying it, in this particular case the Aquarium output doesn't look that nice, but in general I like this way of displaying it more than what chessbase does.
Parent - - By Felix Kling (Gold) [de] Date 2016-02-27 22:19
btw., it's nice that sampled search gets some attention now, because I really miss it when using stockfish :-)
Parent - - By Dragon Mist (****) [hr] Date 2016-02-27 22:38
That was exactly my intention! It would be so useful if SF could have functional SS capability now that fail high/lows are shortened.
Parent - - By Leto (***) [us] Date 2016-03-05 19:43
I would love to see sampled search in Stockfish and Komodo.  If they can't get it to work, maybe another method of letting the user know how close the program thinks it is to reach the next depth would be good.  A timer telling you the estimated time to next depth would be lovely.
Parent - - By Dragon Mist (****) [hr] Date 2016-03-05 20:05

> A timer telling you the estimated time to next depth would be lovely.


I don't see this ever happening. It is simply impossible to make any prediction how long will engine take to resolve possible fail highs/lows.
Parent - - By Felix Kling (Gold) [de] Date 2016-03-06 22:09
mmh, I guess a simple exponential (?) fit would be possible without much trouble (plot ln(time) vs. depth and do a linear regression). For a rough estimation it would be good enough.
Parent - - By Dragon Mist (****) [hr] Date 2016-03-06 23:07
Number of fail highs/lows varies with complexity of the position, so what you suggest would be a very, very rough estimation.
Parent - By Felix Kling (Gold) [de] Date 2016-03-07 10:17
not that rought though, here's a plot ln(time) vs. depth for the start position for stockfish 5, ignoring the first depths (I'm not sure what the issue is, but I guess they come so quickly that they need to be ignored) it's pretty linear.
Parent - By Felix Kling (Gold) [de] Date 2016-03-07 12:25
just to add that you would redo the plot for every position, that is you wait for the first depths and then do a linear regression for the current position.
Parent - - By cma6 (****) Date 2016-04-07 00:20
A question for the experts Dragon Mist, Felix and Leto:
  Is SS available in Aquarium, as I've never seen it using Komodo or SF?
  So to see SS for the latter two engines, is that impossible in Aquarium?
  If SS is available only in Fritz 15, does the latter GUI allow engines other than Fritz, e.g., SF and Komodo?
Parent - - By Dragon Mist (****) [hr] Date 2016-04-08 19:49
As per several posts in this thread, first the engine needs to have SS implemented, and I am not sure if Komodo has it. SF doesn't have it for sure. Next, you also need a GUI that supports it. I don't remember if Aquarium supports it (from the little time I was using it), but Felix says it does ("well, the engine needs to support it, so you need in any case a GUI support as well as engine support. I guess for both Fritz and Aquarium it works with Rybka only, but I'm not sure about it. ")
Parent - By cma6 (****) Date 2016-04-08 20:13
Dragon:
Thanks for the tip. It looks like both the SF and Komodo team have to implement this very valuable SS tool; and probably also Chess OK to format output like that in Fritz15.
Parent - - By Felix Kling (Gold) [de] Date 2016-02-24 09:48
it is implemented in Aquarium as well. First Chessbase and Convekta had the possibility to tell Vas a special feature they wanted for Rybka 3. Chessbase chose sampled search, Convekta accessing the hash tables. After some time, Convekta displayed sampled search as well in their Aquarium GUI. I think you need to enter "cbr3" in the terminal to start Rybka 3 with sampled search output.
Parent - - By Sesse (****) [ch] Date 2016-02-24 22:13
You could access the hash tables? How'd that work; could you query it for free while the engine was searching (supposedly including a lot of fail-highs and -lows!)? Or just save and load?

/* Steinar */
Parent - - By Felix Kling (Gold) [de] Date 2016-02-25 10:48
It was during search like some kind of tree. You were also able to change the hash values to direct search. However, this feature wasn't very popular and in the end Aquarium implemented sampled search and I don't know if this hash feature still exists in latest Aquarium versions.
Parent - - By Sesse (****) Date 2016-02-25 11:48
Changing the hash values sounds like dangerous brain surgery :-P Actually looking at the tree sounds interesting, especially in a situation where you have ~1k people watching the same analysis (so simply going out and changing the position on the board wouldn't be feasible), but perhaps it's not that useful due to all the cutoffs, collisions and pruning.

/* Steinar */
Parent - - By Felix Kling (Gold) [de] Date 2016-02-25 13:30
yes, changing hash entries is also not that helpful in most situations. In theory the hash output could provide something similar to an IDeA tree, but unfortunately the quality of the entries is difficult to judge and in the end you do not gain much.
Parent - By gsgs (***) [de] Date 2017-10-14 04:14
every few seconds you could report the first -say- 3 moves
of the last line that was written to hash.
This could just be in the format of a new fail-high, fail-low,
so the UCI needn't be changed, but just displays this over the last
"<=" line which is usually short anyway.

(thinking about Droidfish)
Up Topic The Rybka Lounge / Computer Chess / "Sampled search" ?

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill