On Tue, Nov 16, 2010 at 02:55:03PM +0100, joost.t.h...@planet.nl wrote: > From: Ville Hakulinen [mailto:ville.hakuli...@iki.fi] > Sent: Tue 16-11-2010 13:40 > > Hi, > > > Hi all, > > > > Currently I'm using Scid's training feature to collect lines > > to a repertoire database and this works fine, but it would > > be nice to be able to easily get the most common line that's > > not covered by the repertoire. > > > > So let's say I have two databases: A is built up from a game > > collection and B (repertoire database for black) contains > > just one game with the moves (1.e4 c5) in it. And let's also > > say that in database A 1.e4 occurs 46.7% of the time, 1.d4 > > occurs 35.3% of the time and after 1.e4 c5 2.Nf3 occurs > > 81.3% of the time. > > How about games in A with the move order 1.Nf3 c5 2.e4?
That's a good question, which I have decided to ignore for the simplicity of discussion. > > So 1.e4 c5 2.Nf3 occurs in 46.7% * 81.3% of the games > > Hm, I do not think so. What about al those black alternatives > to 1... c5? These are included in the 46.7%, right? Or are all > games in A that start 1.e4 already filtered to Sicilians only > (obviously your choice of play with black)? I wasn't being too clear about this. So the database B represents the current black repertoire, which tries to say that 1... c5 is played as a reply to 1. e4 100% of the time. Of course the repertoire B might contain multiple moves for black in a particular position, so this needs some way of handling. > > which is about 38%. So when asked to play the most common > > line not in B, Scid would play 1.e4 c5 2.Nf3 since that's > > more common than 1.d4. > > What does "play" mean? Play in the sense of the training mode in the tree window. Except that here Scid might play multiple moves in succession. > > > > So let's assume we insert a game with 1.e4 c5 2.Nf3 d6 into > > B. Now we see that 1.e4 c5 2.Nc3 occurs about 3.9% of the > > time and 1.e4 c5 2.Nf3 d6 3.d4 occurs about 30.8% of the > > time, so this time Scid would ask for a reply to 1.d4. > > Do you mean 3.d4 (30.8%), or 1.d4 (35.3%) indeed? > > So far words and statistics ... > > Your story sounds pretty interesting, but I do not get it > completely. > > What is the ultimate goal of the operation? Build a collection > of games in B? Build a single game with variations (a tree) in > B? Well, how I'm currently using the Training Mode of Scid is that I start with an empty game, let Scid play a random moves from A and then I pick my replies from an opening book. When I've gone deep enough I add this game (containing a single variation) to my repertoire database. I would expect one could do the same here. > Assuming you go for the tree model for B, I understand that, > looking from a certain position in B, you want to add the most > frequently occurring position from the tree of A that is not > yet in B, into B. Right? > Your percentages are confusing, since what does represent 100% > in your case? Is it all games in A, or all games having the > current position in A? It seems to be the latter, so your > search algorithm has a strong preference to include those long > only-move (drawing) lines as soon as they appear on the > horizon. Funny. Well in the case where black repertoire B contains only the line 1.e4 c5, that is 1.e4 is always replied with 1... c5, then the percentages of replies to 1... c5 weighted with the percentage of 1.e4 together with percentages for first moves other than 1.e4 would add up to 100% > I am also not sure where the operation is supposed to look in > the B-tree. This is caused by the start of your scenario. > Let's start with an empty tree B. What would happen then? > > I guess the operation will - from the initial position (IP) - > first add 1.e4 to B; and then? Should it compare 1.d4 (next > best IP) to 1...c5 (best 1.e4)? In addition to A and B we need to know whether we are building a repertoire for white or black. So with an empty B, Scid would move 1.e4 and wait for a reply. Say we reply with 1... c5. We now have a game that we can store in some database, most probably in B to accumulate the repertoire. When we start from the initial position again, Scid would play 1.e4 c5 2.Nf3, since this is now the most common position in A that hasn't been handled in B. > What should make the operation stop? I think it could be configurable. The user might want to just add one move to the repertoire or a longer variation. In the latter case Scid would just show the most common reply to any move that the user inputs. > How should transpositions be handled? I would think that whenever transpositions occur in B they have to be accounted for by adding the percentages of all the variations in B that end up in the same position. > Do you need any meta-data from A in B? > > I did not even experiment yet with tree masks, but they seem > to be powerful. Could they mean something for you? I'll check them out. -- Ville ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today http://p.sf.net/sfu/msIE9-sfdev2dev _______________________________________________ Scid-users mailing list Scid-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/scid-users