Hacker News new | past | comments | ask | show | jobs | submit login

Is that actually the case, or perhaps humans try a lot of sub-optimal opening lines?



The engine dislikes the King Gambit, which has a pretty lengthy history, dating back to the 1600s [1]. However, it's not played much anymore at very top levels, and much has been written about its weaknesses [2]. So in some sense, humans have been "trying" the King's Gambit for centuries and have only recently come to the conclusion that it's not optimal.

Many players enjoy using the opening simply because it leads to dangerous and exciting games, so it makes sense that Stockfish and other engines would prefer conservative opening lines.

[1] https://en.wikipedia.org/wiki/King's_Gambit

[2] http://chess.stackexchange.com/questions/94/why-is-the-kings...


So what happens when you force Stockfish to play itself in a Kings Gambit opening?


I have a GM friend who regularly practices against a computer with the opening repertoire turned off. One of his comments : "The bloody thing is absolutely clueless in the opening, and I still can't win. It's just so good at defending a worse position, and in the end, I will make a mistake."


I think the case is more that opening theory is very deep. A computer without an opening book is having to work out what humans have spent hundreds of years learning/memorizing. It may also be that since the eval function of an AI can skip opening/endgame with tables, it doesn't need to focus on some of those concepts as much in favor of being optimized for general midgame positions


Sub optimal from the perspective of the AI, some positions that seem easy for an AI looking 10 moves ahead might be tricky for your opponent.


Sorry, but this makes my head hurt.

>>> best chess engines are still worse at analyzing openings than humans.

>> Is that actually the case, or perhaps humans try a lot of sub-optimal opening lines?

> Sub optimal from the perspective of the AI

There's no perspective involved: optimal play is perfect play, assuming the opponent also plays perfectly. If a move is sub-optimal for White that means White has a better move, no matter what the opponent plays.

Sure, in practice a non-perfect-player might do better playing a sub-optimal move A rather than a better move B, because they don't know how to continue after B or because their non-perfect opponent ends up replying even more sub-optimally to A.

But just because I can manage to pull a fool's mate on someone that doesn't make it an optimal opening. One could say I might be "optimizing" for fun or for time, but if you redefine optimality arbitrarily then the original claim might as well be "chess engines are worse than humans at analyzing openings because they play better than humans".

PS: I'm not claiming that chess engines are better or worse than humans. And, incidentally, playing an inferior move while hoping the opponent makes a mistake is bad even if it works, as it really hinders your progress.


Of course there's perspective involved.

Restricting yourself to perfect opponents is very silly firstly, because there are no perfect opponents because chess is unsolved. So right out of the gate our definition assumes the counterfactual for all chess games every played and is both inaccurate (does not describe actual chess) and impractical (cannot be implemented)

Secondly, if there were such an opponent (which is not at all clear there ever will be), there is no way within the rules of chess to detect whether or not we face it in a given game. Imperfect opponents are allowed to play chess, and assuming they are all perfect while a defensible strategy is merely one of several.

Thirdly, it leads to very counterintuitive results. Consider the case in which chess is solved and well-balanced (e.g. a perfect opponent P can force a draw). We modify P to create opponent NP. NP behaves as follows: if NP's opponent is consistent with P, NP will implement P (e.g. force a draw), if NP's opponent deviates from P, NP will lose (forefeit or make bad moves). Therefore everyone can beat NP except "optimal" algorithm P, which can only force a draw. So now we have an "optimal" algorithm with a 0 tournament rating.

In reality the whole "perfect opponent" thing is mostly a notational convenience for Zermelo's Theorem. Which is very interesting and useful if you are writing a proof, less interesting if you are trying to win a chess tournament. A more practical definition of "optimal" is something like "wins a lot of games".


You're going off a tangent here. There's nothing in my argument that relies on having an optimal opponent only; forget about the "assuming the opponent also plays perfectly" part for a moment, the key part is getting the best move no matter what the opponent plays.


Exactly. In my opinion, chess at its core is all about presenting challenging puzzles to your opponent and solving the puzzles put to you by your opponent. An engine may show that one side is way ahead but it could all depend on finding one series of precise moves and therefore not be much of an advantage at all for a human under the pressure of the clock.


Isn't positional play all about recognizing that some positions are better by virtue of giving some soft advantages that will only be realized further down the line?


If your goal is to win, wouldn't you want to play the move that always leads to a win 10 moves ahead, rather than a move that looks immediately tricky but is actually escapable for the other player?

And given that you want to become a better chess player, isn't it better to start learning the best lines from the start?


If your goal is to win, you should play moves that lead to situations where you will do significantly better than your opponents, given what you know of their strengths and weaknesses. Whether they are good or bad from an 'optimal play' perspective doesn't matter.

For example, if chess is a win for white, you play black, and you have a halfway decent opponent, he will know what black's best defense looks like (that is: the one that takes him the most moves to win). Replaying that gives you zero chance of winning or drawing. Deviating from the beaten path cannot decrease that chance, and may increase it.

It is similar when chess, played optimally by both players, turns out to be a draw, and you want to win, but in that case, you may not want to give up your assurance of a draw, so you may play less weird moves. You still will want to play moves that lead to plays your opponent is weak at, though.


> If your goal is to win, wouldn't you want to play the move that always leads to a win 10 moves ahead

Sure, but the King's Gambit is just an opening, and you'd have to rely on lazy mistakes to guarantee a win 10 moves ahead that early in the game.


Right, but game theory tells us that for every single position, perfect play either leads to a win for one player or a draw, and for every position, there is a best reply.

To the extent that an AI approaches perfect play more closely than a novice or masters from the 19th century, shouldn't we go learn from the AI?

One interpretation of Stockfish here is 'I don't think this is a very strong opening'. To the extent that it's correct, stronger players will not play that opening very much, so spending time to learn it seems potentially wasteful.


Chess engines (I suppose that could be called AI) as well as databases of games have developed opening chess theory very significantly because of these reasons.

For perspective, Bobby Fischer created a version of chess which randomized the game because even in his day, he was annoyed that some players that he felt were far inferior at playing chess, could actually better memorize opening lines and enter the mid game with an advantage.

So the answer is that players very well have been learning from AI.

>To the extent that an AI approaches perfect play more closely than a novice or masters from the 19th century

AI has become better than even the top chess players of today.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: