• XG doubling window

    From Raymond Kershaw@21:1/5 to All on Wed Sep 29 09:46:23 2021
    If I understand correctly, XG uses some equations by Rick Janowski to decide where in the doubling window a double should be offered.

    Would it be possible for XG to dispense with these equations and instead train itself by rolling out positions many times, with and without a double having been offered?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Timothy Chow@21:1/5 to Raymond Kershaw on Wed Sep 29 22:23:26 2021
    On 9/29/2021 12:46 PM, Raymond Kershaw wrote:
    If I understand correctly, XG uses some equations by Rick Janowski to decide where in the doubling window a double should be offered.

    Would it be possible for XG to dispense with these equations and instead train itself by rolling out positions many times, with and without a double having been offered?

    This is possible in principle. As I understand it, it would
    require a huge increase in computational effort and might not
    gain that much. But maybe we should hear from people who have
    actually programmed backgammon bots.

    ---
    Tim Chow

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Frank Berger@21:1/5 to All on Thu Sep 30 14:55:22 2021
    Tim is right. IIRC Xavier said recently that you more or less have to train a net for each scores, e.g. just think about -2:-4 vs. PostCrawford vs... Interesting was that he said training took about half a year so multiply this with a two digit number of
    nets.

    The training would have the advantage that you don't have to estimate the liveness of the cube (still guesswork) but additionally I believe it will slow down learning and/or detrimental to the playing strength. E.g. let's say the bot learned to double
    correctly (assuming self learning as BGBlitz does. No idea what Xavier does. GnuBG is more or less supervized learning) he wont learn/unlearn/train what comes after the drop. Maybe you can use that for anti bot play (as maybe currently superdeep
    backgames) because the bot doesn't now (anymore) what to do then.

    It is a pity that only so few people are writing bots for BG :( A little fresh air and communication about ideas would be nice.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From MK@21:1/5 to Frank Berger on Thu Sep 30 22:26:13 2021
    On September 30, 2021 at 3:55:23 PM UTC-6, Frank Berger wrote:

    It is a pity that only so few people are writing bots for BG :(

    Even if 100 people developed BG bots, it wouldn't make any
    difference if they all use Jackowski formulas, match equity
    tables, etc. concocted by humans. You would end up with
    the next versions of the current bots.

    What we need is bot developers who can do the Fosbury Flop.

    A little fresh air and communication about ideas would be nice.

    Here is an idea for you: (in a way combining the discussion
    from another thread about Hypergammon and Hypestgammon
    vs. Alpha-Hypergammon and Alpha-Hypestgammon)

    What if Ray had asked the same question about Hypergammon?

    (BTW: Gnubg is superior to XG in that it can play 1,2,3-checker
    Hypergammon).

    Surely we have the computer power to answer his question in
    a matter of few months, no?

    Even easier would be to ask and answer the same question in
    my Hypestgammon (essentially 1-checker Hypergammon with
    rolling only 1 die). With all checker moves being "forced" so to
    speak, there is no "checker skill" at all in Hypestgammon. It's a
    pure "cube skill" game. What more perfect way to test "cubing
    window" science-fiction?

    If Alpha-Hypestgammon cubeful equities don't exactly match
    the ones of Chow's "solved Hypestgammon", then you will know
    that you have a problem already. If they match exactly, it won't
    be quite enough of a proof yet and you can move a notch up to
    Hypergammon.

    If Alpha-Hypergammon cubeful equities don't exactly match
    the ones of Keith's "solved Hypergammon", then you will also
    know that you have a problem with your cube-skill fantasies.
    In this case, you will also know that your bots' checker play
    is as sterile and boring as a toy train on a single track going
    around the xg-mas tree in circles...

    If they match exactly, it still won't be an absolute proof either
    but at least it will be a strong enough indication that the current
    bot algorithms may be headed in the right direction. After that,
    it will be just a matter of a certain length of waiting until we get
    the needed computer power to have a Alpha-Backgammon to
    compare the current Backgammon bots. That time may already
    be here but if not, it will arrive soon enough.

    MK

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Timothy Chow@21:1/5 to All on Fri Oct 1 07:44:29 2021
    On 10/1/2021 1:26 AM, MK wrote:
    What if Ray had asked the same question about Hypergammon?

    My friend/colleague did manage to do a few experiments with this
    before he put the project on hold. What he said was that the bot
    would double very aggressively, because there was no easily
    perceived penalty for doing so. So the cube would get exponentially
    high. But that would mean that games with high cube values would
    be disproportionately weighted, making it hard for the bot to tell
    what was luck and what was skill. So it would never learn how to
    play well. We knew that it was playing poorly because it would
    get trounced by the "solved" bot.

    The way around this would be to implement match scores so that
    there was a limit on the cube size, but that was around the time
    my friend put the project on hold.

    ---
    Tim Chow

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From MK@21:1/5 to Tim Chow on Fri Oct 1 16:31:58 2021
    On October 1, 2021 at 5:44:33 AM UTC-6, Tim Chow wrote:

    On 10/1/2021 1:26 AM, MK wrote:

    What if Ray had asked the same question about Hypergammon?

    My friend/colleague did manage to do a few experiments with this
    before he put the project on hold. What he said was that the bot
    would double very aggressively, because there was no easily
    perceived penalty for doing so. So the cube would get exponentially
    high. But that would mean that games with high cube values would
    be disproportionately weighted, making it hard for the bot to tell
    what was luck and what was skill.

    This an interesting bit of information. Not much yet but better
    than nothing we ever had and hopefully will lead to more.

    If I understand correctly, the experiments were 1-point money
    games?

    Interestingly, here you talk about the bot as if it could perceive
    things as a human, like you all do when discussing positions
    and "ask the bot to whether pay now or later".

    "Easily" or not, the bot doesn't need to nor can "perceive penalty"
    for playing in any manner that it does. It just makes the moves
    that it learned to be most likely to win.

    Similarly, the bot needs not to "tell what was luck and what was
    skill" either. It has played 4 billion random games. Luck evened
    out. And the "best" moves have bubbled up. It doesn't make any
    decisions so to speak but just pulls up the best move from its
    bag at each position.

    I don't understand what you mean by "games with high cube
    values would be disproportionately weighted". The bot can't
    know nor cares what humans perceive and interpret how. It
    just executes. The results are the results. That's it.

    So it would never learn how to play well. We knew that it was
    playing poorly because it would get trounced by the "solved" bot.

    How well did you train the bot? How many games they played?

    How did you "know!" without completing the experiments? You
    are just trying to confirm your denial. I will argue that if the bot
    is sufficiently trained and allowed to play a sufficient number
    of games against your "solved bit", it will trounce it instead.

    The way around this would be to implement match scores so that
    there was a limit on the cube size, but that was around the time
    my friend put the project on hold.

    From even this little experimenting, it looks like things are going
    in the direction that I had predicted. It's just a matter of time
    that I will be proven right. Here are a few examples of what I had
    said in the past:

    1) ================================================== https://groups.google.com/g/rec.games.backgammon/c/-Y9AWXOFwrc/m/gkJ0UUXBajQJ

    Murat clearly plays an aggressive cube against the Bot.

    I never liked the cube but once I submitted to the fact
    that I had to live with it, I came to believe/practice
    that you should use it, almost as another checker, not
    just let it sit there.
    --------------------------------------------------------

    "Use the cube almost as another checker"? What a novel idea! :)

    And "Don't just let it sit there". In fact, I remember making a pun
    using the word "incubate" to say don't sit on it if you have access
    to the cube. Your colleague's alpha-bot must have heard me. ;) =====================================================

    2) ================================================== https://groups.google.com/g/rec.games.backgammon/c/4VxyU97HmO4/m/92tzL48MVx4J

    Let's cut it short and jump to where we lose contact... At that point
    I'm ahead by 1 pip and I'm on roll, (i.e. I'm ahead by about 9+ pips).

    By the coin tossing logic and strategy, I already won, right...??? :))

    I mean, after 4 billions of games starting at this very position, I
    would win more and on top of that, the cube is yet at a measly 4
    in a looong 64-point match...
    .................
    Remember, if we you are playing with the cube, "use it"...! Don't
    just let the silly thing sit there...
    ......
    Not necessarily... I played so many series of long matches for
    so many purposes... I'm not ashamed to admit that I even played
    making random cube decisions, similar to the experiments
    they had done with old ladies in quilting-clubs and monkeys to
    play the stock market...

    If some monkeys did just as good with the cube as your much
    adored book-writing-world-class-clowns, you guys would have
    been heart-broken much more than me... :)) --------------------------------------------------------

    Yes, I had even experimented with playing like Alpha-Murat... :)

    I guess it has always been easier for me to be more open minded
    and have the courage to speak out my mind here because I have
    been free of the peer pressure that most of you may be crippled by. =====================================================

    3) ================================================== https://groups.google.com/g/rec.games.backgammon/c/j1zzL5M67QQ/m/Kwtuy5-OepsJ

    Albert Silver wrote:
    I recall your writing this elsewhere but don't understand
    it. Although one could easily double at 51%, it would be
    a colossal blunder to drop such a cube, since the classic
    .....
    P.S. Just to clarify that my above arguments apply only
    to reducing the effect of "cube skill" passively, by
    dampening it. Otherwise, my view of cube ownership is
    almost the opposite based on the fact that your opponent
    has access to and thus "owns" the cube anyway. So, don't
    let it just sit there but use it as soon as you can, as
    often as you can. After early cubes, there is still lots
    of checker play left to favor the stronger player...
    --------------------------------------------------------

    These ideas of mine have in time evolved to argue that the player
    who gains the first/earliest advantage in a game will never lose
    it (that is statistically, in 4 billion trials).

    I had predicted that an alpha-bot would do just that: perhaps
    double as soon as after the first roll and as often thereafter, so
    that the cube would reach the match limit only after a few moves.

    After that, I had even suggested that people playing backgammon
    for gambling shouldn't bother playing past the opening roll, since
    winning the opening roll creates and advantage that will never be
    lost for the rest of the match (that is statistically, in 4 billion trials). And so, I had also suggested that they may save time and be more
    efficient by giving up backgammon for taking up coin tossing to
    gamble for money.
    =====================================================

    Anyway, this subject had been discussed long and hard over
    many years. I don't wnat to go forever with reminding you of
    what was said. I'm sure you'll remember enough of it to see
    you all are just in demial and only delaying the obvious to come.

    MK

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Timothy Chow@21:1/5 to All on Fri Oct 1 20:16:10 2021
    On 10/1/2021 7:31 PM, MK wrote:
    "Easily" or not, the bot doesn't need to nor can "perceive penalty"
    for playing in any manner that it does. It just makes the moves
    that it learned to be most likely to win.

    How does it learn without scoring the results of previous games?

    I don't think this discussion will go anywhere until you learn
    something about how deep learning actually works.

    ---
    Tim Chow

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From MK@21:1/5 to Tim Chow on Wed Oct 13 00:54:57 2021
    On October 1, 2021 at 6:16:10 PM UTC-6, Tim Chow wrote:

    On 10/1/2021 7:31 PM, MK wrote:

    "Easily" or not, the bot doesn't need to nor can "perceive penalty"
    for playing in any manner that it does. It just makes the moves
    that it learned to be most likely to win.

    How does it learn without scoring the results of previous games?

    Learn what? That there should be a penalty for doubling aggressiverly?

    If you are talking about money games, this is the case of a millionaire
    playing against a guy with only $100 in his pocket...

    You also said "So it would never learn how to play well. We knew that
    it was playing poorly because it would get trounced by the "solved" bot".

    My goal is to see if the bot can debunk human fantasies like dounling
    window, etc. and thus to teach ud to play well and then better.

    But, of course, you guys already know all there is to know and want to
    "teach the bot to play well" (by tweaking the weights of games with
    high/low cube values, etc.)

    You only run "a few" experiments and already conclude that your "solved
    bot" *would* trounce the "alpha-bot" because it can't learn to play well
    by itself, unless you intervene and teach it how.

    I don't think this discussion will go anywhere until you learn
    something about how deep learning actually works.

    What we are discussing has nothing to do with technical aspects of deep learning or whatever else "rocket science". In fact, one of my goals is to
    show that you can't play backgammon well with fancy math formulas, etc.

    If you want to bail out of the discussion, nobody can force you to continue against your will and you don't need any excuses.

    To me it sounds like you and your colleague aborted and abandoned your experiments too soon because the results weren't going your way...

    Why don't you drop talking big and just answer some easy factual questions
    that I had asked?

    How long did you train your alpha-hypestgammon bot?

    How many games or matches did you make it play against your solved bot?

    What was the outcome?

    Share some statisctics and post the actual entire games or matches from
    your experiments so that we can see how the bots doubled and played.

    MK

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)