Loading ...
Sorry, an error occurred while loading the content.

Just some thoughts.

Expand Messages
  • Jens Yllman
    Hello eveybody. I just have some thoughts about how to make and handle problem sets with SGF. What I mean is SGF files that starts with some AB[] and AW[] to
    Message 1 of 3 , Dec 24, 1998
    • 0 Attachment
      Hello eveybody.

      I just have some thoughts about how to make and handle problem sets with
      SGF. What I mean is SGF files that starts with some AB[] and AW[] to set up
      a position.

      When you have set up a position, how do you tell the program that
      black/white is the next move? If the problem contains solutions, both bad
      and good. How and where should I put the mark that a solution is good or
      bad, so that the program know which one to show as the "correct" solution.
      I guess you can order the variations that the good one is always first and
      thing like that. And good commentary should help the user.

      The other thing is that problems is often local. Do you only want to
      diplay the relevant portion of the board. How's the best way to do that?
      And how do the normal programs handle that?

      I'm just looking for a good way to build problem sets for training. I'm
      also working on some go programs. And I'm thinking of making a problem
      training module. But I don't know if I'm to use SGF or make my own format.
      If anyone has some good experience with SGF and problem sets let me know.

      Jens Yllman
      ------------------------------------------------------------
      Jens Yllman http://www.uniweb.se/~jens
    • David Fotland
      I use AW and AB to set up the position. I use PL[W] in the root node if white is to play first. I use TE[3] (nonstandard, please don t kill me :) to mark a
      Message 2 of 3 , Dec 24, 1998
      • 0 Attachment
        I use AW and AB to set up the position.

        I use PL[W] in the root node if white is to play first.

        I use TE[3] (nonstandard, please don't kill me :) to mark
        a correct solution node. I used to use TE[2], but now I translate
        that automatically to "Very Good Move", so I wanted something different.
        I'm open to suggestions here. It's easy to change for a few months.
        Maybe I should go back to using TE[2]? That's what the current shipping
        version of Many Faces uses if you create a problem.

        The next version of Many Faces will include hopefully a couple of thousand
        problems in .sgf format, and a very easy to use problem set editor, so
        it would be nice to standardize, so we can swap problem sets.

        An sgf problem set for me is just a collection of sgf game trees concatenated
        into a single file.

        I don't like ordering the variations, since sometimes the user will
        turn on next-move lettering so he can see the choices. In this case
        I don't always want the correcet answer to be 'A'.

        I use the WR or BR properties to give the strength level of the problem.

        I use the C[] property for commentary.

        I always display a whole board. For problem sets the default board size
        is 13x13, same as in Graded Go Problems. This is big enough for most
        problems.

        David Fotland

        At 01:14 PM 12/24/98 +0100, Jens Yllman wrote:
        >From: Jens Yllman <jens.yllman@...>
        >
        > Hello eveybody.
        >
        > I just have some thoughts about how to make and handle problem sets with
        >SGF. What I mean is SGF files that starts with some AB[] and AW[] to set up
        >a position.
        >
        > When you have set up a position, how do you tell the program that
        >black/white is the next move? If the problem contains solutions, both bad
        >and good. How and where should I put the mark that a solution is good or
        >bad, so that the program know which one to show as the "correct" solution.
        >I guess you can order the variations that the good one is always first and
        >thing like that. And good commentary should help the user.
        >
        > The other thing is that problems is often local. Do you only want to
        >diplay the relevant portion of the board. How's the best way to do that?
        >And how do the normal programs handle that?
        >
        > I'm just looking for a good way to build problem sets for training. I'm
        >also working on some go programs. And I'm thinking of making a problem
        >training module. But I don't know if I'm to use SGF or make my own format.
        >If anyone has some good experience with SGF and problem sets let me know.
        >
        > Jens Yllman
        >------------------------------------------------------------
        >Jens Yllman http://www.uniweb.se/~jens
        >
        >------------------------------------------------------------------------
        >To unsubscribe from this mailing list, or to change your subscription
        >to digest, go to the ONElist web site, at http://www.onelist.com and
        >select the User Center link from the menu bar on the left.
        >------------------------------------------------------------------------
        >SGF spec: http://www.sbox.tu-graz.ac.at/home/h/hollosi/sgf/
        >Moderator: Arno Hollosi <ahollosi@...>
        >
        >
      • mueller@xxx.xx.xxxxxxxxxxxxxxxxxx)
        ... Agree. For completeness you could use PL[B] in the other case, but I think everybody will default to B if no player is specified (Arno: is it specified in
        Message 3 of 3 , Dec 25, 1998
        • 0 Attachment
          >From: David Fotland <fotland@...>

          >I use PL[W] in the root node if white is to play first.
          >
          Agree. For completeness you could use PL[B] in the other case, but I think
          everybody will default to B if no player is specified (Arno: is it
          specified in the standard whose turn it is to play by default after a setup
          property?)


          >I use TE[3] (nonstandard, please don't kill me :) to mark
          >a correct solution node. I used to use TE[2], but now I translate
          >that automatically to "Very Good Move", so I wanted something different.
          >I'm open to suggestions here. It's easy to change for a few months.
          >Maybe I should go back to using TE[2]? That's what the current shipping
          >version of Many Faces uses if you create a problem.

          TE[3] will break everyone else's code I'm afraid. I just use TE[1] for good
          move. I consider that the most natural :)
          One strange thing I noticed in your problems is that you mark not only the
          winning side's moves by TE, but also the losing side's moves. However,
          these moves are usually bad ones. So if anything they should be marked as
          BM[1].

          >An sgf problem set for me is just a collection of sgf game trees concatenated
          >into a single file.
          >
          I find it messy to have hundreds or thousands of tiny games. So I usually
          put a reasonable amount of problems into the same tree. That way you can
          structure problems e.g. 10 at a time. Example:

          (;GM[1]SZ[19]DT[1998-03-23]FF[3]GN[Fuseki Test]
          (;N[1-10]
          (;N[1]AB[pd][jd][fq][qp]AW[dc][ci][dn][dp]
          (;B[pj]N[7])
          (;B[kq]N[10])
          (;B[ei]N[5])
          (;B[ce]N[5]))
          (;N[2]AW[dc][ce][dn][dp]AB[fq][pq][qk][pd]
          (;B[jd]N[6])
          (;B[pg]N[5])
          (;B[jp]N[10])
          (;B[cj]N[5]))
          (;C[nodes 3..10 omitted to save space]))
          (;N[11-20]
          (;N[11]AW[dc][cd][ck][dp][fq][qj]AB[cf][ci][oq][qp][ql][pd]
          (;B[jc]N[7])
          (;B[jp]N[8])
          (;B[qg]N[10])
          (;B[ei]N[6]))
          (;N[12]AW[dc][ce][jc][qj][cp][do]AB[pd][qp][op][eq][cm][cj]
          (;B[lc]N[7])
          (;B[jq]N[8])
          (;B[cr]N[10])
          (;B[cg]N[6]))
          )
          ; C[rest omitted to save space]
          )

          >From: Jens Yllman <jens.yllman@...>

          >> I just have some thoughts about how to make and handle problem sets with
          >>SGF. What I mean is SGF files that starts with some AB[] and AW[] to set up
          >>a position.

          A setup property such as AB or AW does not need to be in the root node. You
          can set up many problems within the same file. See the example above.

          >> The other thing is that problems is often local. Do you only want to
          >>diplay the relevant portion of the board. How's the best way to do that?
          >>And how do the normal programs handle that?

          If you want you can use the view property:
          http://www.sbox.tu-graz.ac.at/home/h/hollosi/sgf/DD_VW.html
          Usually I find it too bothersome to set this up. People can find the
          problem on the board without trouble. If it is embedded in a messy full
          board situation, you can mark some stones or groups and then give a comment
          such as C[How can B capture/connect/save/attack/etc. the marked stones?]

          >> I'm just looking for a good way to build problem sets for training. I'm
          >>also working on some go programs. And I'm thinking of making a problem
          >>training module. But I don't know if I'm to use SGF or make my own format.
          >>If anyone has some good experience with SGF and problem sets let me know.

          I have had good experiences with using SGF for problem sets.

          Happy holidays!

          Martin
        Your message has been successfully submitted and would be delivered to recipients shortly.