Minor thought, but one of the things I love about high level AI chess, like Stockfish vs AlphaZero, is seeing how their ratings of positions change over the course of the game.
I had realized a while ago that, as a human, the computer will give your position a score, and then you make a move, and your score can pretty much only stay the same (if you make a "perfect" move) or go down. Much of the time, it goes down.
Two humans playing each other, it's just a question: who's score goes down less each time they make a move? It became a little sad. It seemed like either you can make the right move, or you make a sub-optimal move, and the winner is simply the one who makes the fewer sub-optimal moves.
But when AlphaZero plays, and you watch Stockfish's score, the reason it wins is that it makes moves Stockfish thinks is poor, so it rates AlphaZero's moves poorly, and then all of a sudden it has an oh shit! moment when it realises that AlphaZero is actually ahead, and its score jumps. It's really a look inside the computer's head while it's being beaten by a better player.
In a game of perfect information and no randomness, there are ultimately only two kinds of moves: those that preserve your current best forcible outcome (win or draw in chess*), and those that blunder that into a worse result given continued perfect play by the opponent.
Everything else like a positional score or centipawns or even classic material points is an abstraction, that we use to summarize because we don't have unbounded or sufficient computing power to solve all possible continuations. That score apparently going down is only an artifact of our limited ability to evaluate it; the only real scores are 0/½/1 for lose/draw/win. If you make mistakes, your score will evetually drop by those quantizations; we just typically don't know exactly when, except in endgame situations pared down enough to be computationally tractable.
And it's impossible to raise your estimated score, because that estimation assumes you continue to play perfectly. There's no such concept as a better-than-perfect move to raise your expectation over what was already calculated, since that calculation already includes all your best possible moves.
* (Other gradiations between win/lose/draw are possible in such a game. Chess doesn't have such, but imagine playing Go for a dollar per point, where nuances smaller than swinging a win or draw still matter.)
> And it's impossible to raise your estimated score,
No, what I was saying is that it's absolutely possible to raise your estimated score, because your estimated score is only an estimation of who has the best position.
If AlphaZero is better than Stockfish, then by definition it will make moves that sometimes raise its estimated score, because Stockfish is only as good as its ability to estimate the score of a position better. So Stockfish must occasionally underestimate a position, and then later (after another move or two) is forced to reevaluate (because while it's worse, it's not stupid).
AlphaZero wins because, and precisely because, it believes some positions are more favorable than Stockfish does. You can almost see it as an arbitrage between the two estimations. That's what I was finding cool, and the point of my post.
You're right, of course. What we're really talking about is the fallibility of estimations (and arbitraging between them) - you can't raise your score as projected by an omniscient computing power, but you can as estimated by real engines limited by their fallibility (and AlphaZero is less fallible.)
Mostly I'm pointing out that these estimations represent the best guess of an ultimately limited engine. People tend to treat those engine evaluations as actual numbers, like scores in a sport like baseball or some such, but they're not.
There is a way to objectively distinguish moves from the same category though (drawing ones or losing ones). It's similar to Kolmogorov complexity. Let's say moves A and B both draw but the shortest algorithm that draws vs A is much longer then one that draws against B. We can say A is objectively a better move.
In practice instead of formal definition we could use a benchmark engine. What's minimum CPU time/RAM requirements for an engine to draw the resulting positions (or convert them to a win in case of losing moves).
A move that requires serious hardware to defend against is better than one a 10 years old laptop can hold a draw against.
In a world with perfect play this is true, but in the real world there could still be moves that are good assuming imperfect play by the opponent. That's where things get really interesting.
For example I remember the original alphazero model that had been trained specifically against stockfish, would often take a material sacrifice for some advantage that stockfish couldn't see (e.g. sacrifice a pawn, but their bishop gets locked out of the game). I don't know if these moves were objectively good given perfect play, but they could be the only way to win now (chess is very drawish at the top computer level).
> Two humans playing each other, it's just a question: who's score goes down less each time they make a move? It became a little sad. It seemed like either you can make the right move, or you make a sub-optimal move, and the winner is simply the one who makes the fewer sub-optimal moves.
What you describe is when a perfect chess-playing computer (approx AlphaZero) observes two humans playing. What humans observe watching two humans playing (including the participating humans) is very similar to what you described AlphaZero vs Stockfish as. The only difference is we don't ask human players to ascribe a score to their opponent's move (and wouldn't expect it to be accurate)
This depends on the level of the player observing the game, compared to the players level. It's pretty common to have a strong player at a masters level pointing out subtle positional or tactical mistakes, but the enemy is not skilled enough to exploit those - so the mistakes do not matter at that level.
This is also something to keep in mind to not get discouraged: Just because every move is terrible to a 3500+ chess engine at some level, it does not mean these concerns always apply to you at half that rating.
> But when AlphaZero plays, and you watch Stockfish's score, the reason it wins is that it makes moves Stockfish thinks is poor, so it rates AlphaZero's moves poorly, and then all of a sudden it has an oh shit! moment when it realises that AlphaZero is actually ahead, and its score jumps. It's really a look inside the computer's head while it's being beaten by a better player.
That's more or less a description of what happens when two humans are playing over the board.
Right. Think about all the times you would answer “no” to “would you like to switch sides with your opponent right now?”, even as you are about to lose a few moves later.
> Two humans playing each other, it's just a question: who's score goes down less each time they make a move? It became a little sad. It seemed like either you can make the right move, or you make a sub-optimal move, and the winner is simply the one who makes the fewer sub-optimal moves.
It’s also evaluating your own position vs someone else’s - humans and computers are the same in that both will make the move they think is best, and will only have an oh shit moment when their opponent has provided a reply they didn’t expect.
The only difference is computers can see further, so while an oh shit moment for a human might be 4 moves out, with a computer it might be 20.
The "technical" term for what you describe is blundering. The winner amongst two humans playing each other is mostly defined by who blunders first. Some of these are sometimes so obvious that we have a take-back rule amongst friends for obvious giveaways. Mind you, its not "can I take this move back", its "you want to make another move, this one is too stupid"
What they are describing is that feeling you get when you suddenly realize you are losing even though you are even in pieces, because you suddenly see your opposition has superior positioning and board control
It's not a blunder, because there wasn't one particular move where the game slipped away.
The "oh shit" move doesn't necessarily make your position suddenly way worse, it can be just the moment when you realize how much better your opponents position has been for a while.
Hence why I talked about the feeling you get when you realise you have mis-evaluated rather than trying to define it precisely.
From the OP:
> But when AlphaZero plays, and you watch Stockfish's score, the reason it wins is that it makes moves Stockfish thinks is poor, so it rates AlphaZero's moves poorly, and then all of a sudden it has an oh shit! moment when it realises that AlphaZero is actually ahead, and its score jumps. It's really a look inside the computer's head while it's being beaten by a better player.
If you watch from here in game one you can see the "oh shit" moment, as Stockfish's evaluation drops from +1 to even to -1: https://youtu.be/Q5EPqM8gS7k?t=255
There were blunders in the first round of games. I remember this vividly because I went through all the games with the exact same version of Stockfish with the same time controls and it thought some of its own moves were blunders. This is partly why people were so puzzled by the setup that led to this.
A blunder is when someone makes a wrong move then and there that costs them the game. At AI levels, there are very few, if any, blunders. I think parent commenter means a strategic mistake, where they made a mistake about 5 moves in advance.
True. The technical definition of a blunder on lichess and chess.com is that it puts you in a losing position. You can blunder further while in the losing position. And your opponent can blunder which puts them in the losing position, only to be reversed by your blunder.
A mistake is like a blunder but you're still winning, but it could be a blunder in a worse position. An inaccuracy is a bad move that doesn't cost you.
At least on lichess, the blunder/mistake/inaccuracy distinction is based only on how much the evaluation moves. Going from +10 to +6 is still a blunder.
At the highest level, chess becomes an endurance sport. Magnus is so great because he can squeeze water from a stone. That is definitely admirable, but somewhat deflating compared to idea of the one brilliant move or insane positional play. Give a man bionic legs and it is no longer about how fast he can run but rather what new places he can go.
I agree, only because the ideas and brilliance/depth that they demonstrate is so breathtaking to behold. I love the chess.com Game of the Day playlist on YouTube, which occasionally has amazing computer chess games with early sacrifices for long-term positional compensation: https://www.youtube.com/watch?v=A-vNq61KfLs&list=PL-qLOQ-OEl....
Its kind of more interesting because you can find out more about whats happening 'under the hood'. When two people play its just 'clever brain vs clever brain' with no engineering details. When two AIs play you can say its this many racks of servers and teraflops and the other one has a model thats trained itself from scratch for a few hours or whatever and so when one of them starts to trample the AI opposition we actually learn something other than 'this person has a brain thats good at chess'.
I like the AI-Augmented humans. Kasparov has said that the AI advances are exciting for training. I heard Magnus Carlsen would observe the AI more than humans and infer how to play the game from them, rather than use more traditional methods. The Play Magnus Group invests a lot in AI-backed training tools.