Chess engines do weird stuff

(girl.surgery)

75 points | by admiringly 2 hours ago

6 comments

  • mpolson64 1 hour ago
    I'm no expert on chess engine development, but it's surprising to me that both lc0 and stockfish use SPSA for "tuning" the miscellaneous magic numbers which appear in the system rather than different black box optimization algorithms like Bayesian optimization or evolutionary algorithms. As far as I am aware both of these approaches are used more often for similar tasks in non-chess applications (ex. hyperparameter optimization in ML training) and have much more active research communities compared to SPSA.

    Is there something special about these chess engines that makes SPSA more desirable for these use cases specifically? My intuition is that something like Bayesian optimization could yield stronger optimization results, and that the computational overhead of doing BO would be minimal compared to the time it takes to train and evaluate the models.

    • sscg13 31 minutes ago
      Engines like Stockfish might have over 100 "search parameters" that need to be tuned, to my best knowledge SPSA is preferred because the computational cost typically does not depend on the number of parameters.

      Or, if attempting to use SPSA to say, perform a final post-training tune to the last layers of a neural network, this could be thousands of parameters or more.

  • incognito124 1 hour ago
    Please be careful when visiting the homepage
    • pavel_lishin 1 hour ago
      This really reminds me of the web as I remember it from the mid-to-late 90's; I feel like I'm just a click away from the old deoxy.org, if anyone remembers that. (Don't go there now; the domain appears to have been long-ago hijacked.)
      • incognito124 1 hour ago
        or kittens on encyclopediabrittanica
    • NooneAtAll3 43 minutes ago
      as always, genius and insanity are only 1 step apart
      • hmmmmmmmmmmmmmm 27 minutes ago
        Load of bullshit. Let's not romanticise mental illness.

        You now have a generation of people who think it is cool to be mentally ill.

        • tqpcharlie 13 minutes ago
          or a generation of people who feel comfortable talking candidly about their mental ilness(es) and feel safe seeking help among others like them??
          • hmmmmmmmmmmmmmm 9 minutes ago
            You mean the people marketing their mental health issues online?
        • Retric 5 minutes ago
          Mental illness has always been common and often been cool in one form or another.

          Serial killers get fan mail, that’s true now and it was true 100 years ago.

        • simlevesque 7 minutes ago
          I mean, some of the things on that homepage are truly the works of a genius IMO
    • WesolyKubeczek 1 hour ago
      It gave me serious vibes of the old internet homepages of highly eccentric people that became a part of the internet folklore, whether in a good way or a bad way.

      The video is probably the least bizarre thing there, if that's what you are warning about.

      • uncivilized 1 hour ago
        What were you browsing where someone cutting off their own testicles is not as bizarre as other things? I didn't watch the video but atleast there was a warning.

        Feds this guy right here ^^

        • pavel_lishin 1 hour ago
          > What were you browsing where someone cutting off their own testicles is not as bizarre as other things?

          One of my formative early internet experiences was loading up a video of a man being beheaded with a knife.

          Luckily, I realized what was about to happen, and didn't subject myself to the whole thing.

        • ASalazarMX 19 minutes ago
          Looks at the chain of comments, then at the URL domain

          Thanks for the warnings, kind strangers.

        • WesolyKubeczek 21 minutes ago
          There's some distance between setting pubes on fire and cutting testicles off, dare I say.

          Although, setting any kind of hair on fire in public should be punishable, primarily because of stench of the burnt hairs.

  • t1234s 32 minutes ago
    The homepage for this site is defiantly NSFW.
  • RivieraKid 1 hour ago
    AFAIK chess is has been "solved" for a few years in the sense that Stockfish running on modern laptop with 1 minute per move is unbeatable from the starting position.
    • helloplanets 1 hour ago
      This is not true. Stockfish is not unbeatable by another engine, or another copy of Stockfish.

      Chess engines have been impossible for humans to beat for well over a decade.

      But a position in chess being solved is a specific thing, which is still very far from having happened for the starting position. Chess has been solved up to 7 pieces. Solving basically amounts to some absolutely massive tables that have every variation accounted for, so that you know whether a given position will end in a draw, black win or white win. (https://syzygy-tables.info)

      • sscg13 5 minutes ago
        Hypothetically, what reward would be worth the cost for you to attempt to beat Stockfish 18, 100 million nodes/move, from the starting position?
      • LeifCarrotson 40 minutes ago
        The parent is using a different definition, so they put "solved" in quotes. What word would you suggest to describe the situation where the starting position with 32 pieces always ends in either a draw or win for white, regardless of the compute and creativity available to black?

        I haven't verified OP's claim attributed to 'someone on the Stockfish discord', but if true, that's fascinating. There would be nothing left for the engine developers to do but improve efficiency and perhaps increase the win-to-draw ratio.

        • helloplanets 31 minutes ago
          Yea that's true, it's a pretty overloaded word. From what I remember though, even the top players thought that there wasn't anywhere left to go with chess engines, before Alpha Zero basically ripped the roof off with a completely different play style back in 2017, beating Stockfish.

          And the play style of Alpha Zero wasn't different in a way that needs a super trained chess intuition to see, it's outrageously different if you take a look at the games.

          I guess my point is, that even if the current situation is basically a 'deadlock', it's been proven that it's not some sort of eternal knowledge of the game as of yet. There's still the possiblity that a new type of approach could blow the current top engines out of the water, with a completely different take on the game.

          • sscg13 21 minutes ago
            However, it is true that Elo gain on "balanced books" has stalled somewhat since Stockfish 16 in 2023, which is also reflected on the CCRL rating lists.

            IMO AlphaZero was partially a result of the fact that using more compute also works. Stockfish 10 running on 4x as many CPUs would beat Stockfish 8 by a larger margin than AlphaZero did. To this day, nobody has determined what a "fair" GPU to CPU comparison is.

        • gowld 1 minute ago
          It's a strange definition of "solved".

          War was "solved" when someone made a weapon capable of killing all the enemy soldiers, until someone made a weapon capable of disabling the first weapon.

      • RivieraKid 1 hour ago
        Do you have a source? I remember asking on the Stockfish Discord and being told that Stockfish on a modern laptop with 1 min per move will never lose against Stockfish with 1000 min per move from the starting position.

        But I'm not sure whether that guy was guessing or confident about that claim.

        • LogicalRisk 25 minutes ago
          Here's a game from a month ago where Stockfish loses to Lc0, played during the TCEC Cup. https://lichess.org/S9AwOvWn

          Chess is a 2 player game of perfect, finite information, so by Zermelo's theorem either one side always wins with optimal play or it's a draw with optimal play. The argument from the Discord person simply says that Stockfish computationally can't come up with a way to beat itself. Whether this is true (and it really sounds like a question about depth in search) is separate from whether the game itself is solved, and it very much is not.

          Solving chess would be a table that simply lists out the optimal strategy at every node in the game tree. Since this is computationally infeasible, we will certainly never solve chess absent some as yet unknown advance in computation.

          • RivieraKid 12 minutes ago
            What I meant by "solved" is "never loses from the starting position against Stockfish that has infinite time per move".

            In the TCEC game, I see "2. f4?!", so I'm guessing Stockfish was forced to played some specific opening, i.e. it was forced to make a mistake.

          • sscg13 19 minutes ago
            Surely it is apparent to you that the first few moves are not independently chosen by the engine, but rather intentionally chosen by the TCEC bookmakers to create a position on the edge between a draw and a decisive result.

            For what it's worth, Stockfish wins the rematch also. https://tcec-chess.com/#game=13&round=fl&season=cup16

        • helloplanets 43 minutes ago
          There's the TCEC [0] which is a big thing in some circles. Stockfish does lose every now and then against top engines. [1] Usually it's two different engines playing against one another, though. Like Leela Chess Zero [2] vs. Stockfish.

          In that hypothetical of running 2 instances of Stockfish against one another on a modern laptop, with the key difference being minutes of compute time, it'd probably be very close to 100% of draws. Depending on how many games you run. So, if you run a million games, there's probably some outliers. If you run a hundred, maybe not.

          When it comes to actually solved positions, the 7-piece tables take around 1TB of RAM to even run. These tablebases are used by Stockfish when you actually want to run it at peak strength. [3]

          [0]: https://tcec-chess.com [1]: https://lichess.org/broadcast/tcec-s28-leagues--superfinal/m... [2]: https://lczero.org [3]: https://github.com/syzygy1/tb

          • NooneAtAll3 41 minutes ago
            doesn't TCEC use opening book?

            I remember hearing that starting position is so draw-ish that it's not practical anymore

            • LogicalRisk 24 minutes ago
              TCEC does force different openings yes. Engines play both sides.
        • MengerSponge 56 minutes ago
          That just means that Stockfish doesn't get stronger with more than 1 minute per move on a modern computer. It doesn't say anything about other engines.
          • RivieraKid 42 minutes ago
            Stockfish with 1000 minutes per move is an approximation of a perfect chess player. So if Stockfish with 1 minute per move will never lose against a perfect player, it is unbeatable by any chess engine.
    • sscg13 7 minutes ago
      You can run Stockfish single threaded in a deterministic manner by specifying nodes searched instead of time, so in principle it is possible to set some kind of bounty for beating Stockfish X at Y nodes per move from the start position, but I haven't seen anyone willing to actually do so.
    • bee_rider 43 minutes ago
      “Solved” is a term of art. Defining it in some other way is not really wrong (since it is a definition) but it seems… unnecessary.
    • altruios 1 hour ago
      Even by a stockfish running on a modern laptop with 2 minutes per move (provided they are going second)?!
      • RivieraKid 1 hour ago
        Yes, that's what "unbeatable from the starting position" means.
  • GaggiX 1 hour ago
    https://cosmo.tardis.ac/files/2026-02-12-az-rl-and-spsa.html

    Response from the author of Viridithas, there is a link to this engine in her webpage.

    • dang 1 hour ago
      Thanks! I've put that link in the toptext as well.
  • oldpersonintx 1 hour ago
    [dead]