Live data from Hacker News

Grandmaster-level chess without search

github.com

161–170 of 171 posts

Re: Grandmaster-level chess without search

#161
post #20

OT: what's the state of the art in non-GM level computer chess? Say I want to play chess with an opponent that is at about the same skill level as me, or perhaps I want to play with an opponent about 100 rating points above me for training. Most engines let you dumb them down by cutting search depth, but that usually doesn't work well. Sure, you end up beating them about half the time if you cut the search down enoug…

> What I want is a computer opponent that plays at a level of my choosing but plays a game that feels like that of a typical human player of that level.

Chess.com’s NPC players feel fairly in line with what you are asking for.

Re: Grandmaster-level chess without search

#162
post #32

Earlier quoted context omitted.

We do know this, there are many positions (primarily sharp middle game one's) where SF/lc0 will significantly change their evaluation as they go deeper. This problem gets better the more time they spend on one position but it's an inevitable consequence of the horizon effect and it's why (except for 8 pieces or less), chess is far from solved.

Far from strongly solved but i would wager current SF will not lose half of its white games against any future engine

hah, disagree strongly tbh, there may be an adversarial engine that specifically finds positions that stockfish doesn't evaluate well. they did the same to AlphaGo:

https://arstechnica.com/information-technology/2023/02/man-b...

Re: Grandmaster-level chess without search

#163
post #20

OT: what's the state of the art in non-GM level computer chess? Say I want to play chess with an opponent that is at about the same skill level as me, or perhaps I want to play with an opponent about 100 rating points above me for training. Most engines let you dumb them down by cutting search depth, but that usually doesn't work well. Sure, you end up beating them about half the time if you cut the search down enoug…

As a complete amateur I'd love a chess engine that can point out my mistakes, explain its own moves, and suggest better moves, in human terms. Like, this move would pin the white bishop. I don't know if this would be AI based or simply a search-based engine that scores in abstracted ways such as giving points for tactics like pins and forks, controlling the center, protecting the king, etc. (Typical chess search just…

I recommend a chess club for that.

Re: Grandmaster-level chess without search

#164
post #72

Earlier quoted context omitted.

I'm happy you enjoyed it! There are definitely a few rough edges, yes. Since the whole thing is executed in the browser (including the model) there aren't a ton of secrets for me to keep. Essentially it is expectation maximization: the bot tries to find the move with the highest value. What is "value"? Essentially, it is the dot product between the probability distribution coming out of the model and the centipawn ev…

Thank you for the explanation! I completely understand the rough edges, I have some rough ideas out there myself. Would it be alright if I add a link to your site to our chess club's list of online resources? I can also make a note of it privately and check back in with you in the future. I found it pretty remarkable that it played a human-like response to some niche openings - I actually ended up checking against St…

Sure, go ahead!

Re: Grandmaster-level chess without search

#165
post #94

Earlier quoted context omitted.

"Sure, you end up beating them about half the time if you cut the search down enough but it generally feels like they were still outplaying you for much of the game and you won because they made one or two blunders." That is what winning in chess is. Minimising blunders.

“The winner of a game is the one who makes the second-to-last blunder.” (Also this has come up in computer chess; it's more important to improve the quality of your worst moves than your average moves)

I believe that observation is borne out in the statistics too, but traditional chess training usually centers around finding the best, hard-to-find move in a position rather than avoiding blunders. I think it would be great if there was more blunder-avoidance training. In other words, a normal position where a blunder looks attractive but the player needs to avoid it.

Re: Grandmaster-level chess without search

#166

Earlier quoted context omitted.

Far from strongly solved but i would wager current SF will not lose half of its white games against any future engine

hah, disagree strongly tbh, there may be an adversarial engine that specifically finds positions that stockfish doesn't evaluate well. they did the same to AlphaGo: https://arstechnica.com/information-technology/2023/02/man-b...

True that's a reasonable possibility. But in go the top engines are far from perfection but it's not clear in chess

Re: Grandmaster-level chess without search

#167
post #44

You can actually get solid performance with pretrained chat models: https://raw.sh/posts/chess_puzzles On lichess puzzles gpt4o with the compiled prompt is around 70%, I think the 270M transformer is around 95%

It depends on the difficulties of the puzzles. If you read the article of the Leela author, (link cited by other comment), then you will see a much different picture: the new DeepMind is better then AlphaZero but much worse than the best open source model. Not specially trained transformer like ChatGPT4o (and even 5o) has absolutely no chance to solve the more difficult puzzles.

Re: Grandmaster-level chess without search

#168

I wonder if you could creatively combine this model with search algorithms to advance the state of the art in computer chess? I wouldn't be surprised to see such a bot pop up on tcec in a couple years.

Leela, the open source model already (and always) does that and is already much better then the new DeepMind model. No, neural networks are basically curve fitting. You can only do so much approximation without overfitting and there are always positions, which are different enough from the “mainstay” positions that NN can not learn them. DeepMind as always want to impress the public by creating artificial conditions to show its product under better light. But the reality is:

- The Leela open source community had already used transformer architecture to train Lc0 long before the paper (and published it, too!) and got much better result than new DeepMind massive model

- The top engines with with search (Stockfish NNUE, Lc0) beat DeepMind’s model by margins under normal competition’s conditions

- Speaking about efficiency, Stockfish NNUE can run on a commodity PC with only slightly lower ELO. AlphaZero or DeepMind’s new model can not even run to begin with.

Re: Grandmaster-level chess without search

#169

This repository provides an implementation of our paper Grandmaster-Level Chess Without Search. https://arxiv.org/abs/2402.04494 The recent breakthrough successes in machine learning are mainly attributed to scale: namely large-scale attention-based architectures and datasets of unprecedented scale. This paper investigates the impact of training at scale for chess. Unlike traditional chess engines that rely on comple…

However, the Lichess blitz ELO vs bots is about 700 points lower than vs humans.

Re: Grandmaster-level chess without search

#170

Earlier quoted context omitted.

Maia does this reasonably well! You can play against it on Lichess. I have gotten a few "feels like a human" moments when playing against it - for example, getting it to fall into a trap that could trick a human but would easily be seen by a traditional search algorithm. It's not adjustable but there are a few different versions with different ratings (although it's not a very wide range). https://www.maiachess.com/…

Piggy-backing off this - does anyone know of a quick way to evaluate the maia weights from python or js for a single board state? I'm trying to hack something together with my own search func intended for human play and I can't quite figure it out from the cpp in Lc0.

A bit late, but I wrote up an example inference script here: https://gist.github.com/mcognetta/7a98e50859664b8efbb4ec094a...

It is a bit roundabout, since it involves converting maia models to onnx before loading into pytorch and some outdated versions of libraries (maia/lc0 are a little old). We were using this for transfer learning for a competition, so we needed some flexibility that we didn't know how to do quickly/easily in TF.

Hope this helps.

------------------

Personal note: given your interest in chess ai and your starcraft username, I think we would have a lot of shared interests. Feel free to reach out (info is in my profile).

Post reply on HN