Hacker News new | ask | show | jobs
by sd8f9iu 1792 days ago
Computers are far stronger than humans and win every game. They cannot be artificially weakened as they do not play like weaker humans, but rather make a mixture of incredibly strong moves and random mistakes. As such, it would be a tournament of trying to lose the best game against a computer, which is not an accurate simulation of what human-human chess is like.
2 comments

This isn’t really how most engines work. Reducing the depth that engines calculate to, or altering how they weight certain aspects of evaluation, are both perfectly natural ways to reduce an engine’s strength. They still won’t play like a human, but they don’t need to be forced into random mistakes.
Your experience with engines then is very different from my own and that of the wider chess community. The general consensus is that playing computers at any strength is both counterproductive and unfulfilling. They do indeed make random blunders if you lower their search depth. The engine will play brilliant moves for any tactic that falls within the search depth, but fail miserably for tactics that fall one ply outside of it. Humans function very differently to computers: they evaluate a fraction of the positions, but use a much more sophisticated evaluation function. There is no way of emulating human weakness with such a vastly different style of computation.

Here is a game I just played that illustrates this phenomenon:

https://lichess.org/PiIFqI2c/black

The engine plays well before making a series of random blunders no human would make. You can try this yourself by playing the different Stockfish levels on lichess.org. You will be unable to find a level that makes for an enjoyable game. There are some new engines that use neural networks to try and play similarly to how humans do [1]. I can't comment on their success, but their lack of wide adoption by the chess community signals to me that it is still incomparable to humans.

[1] https://maiachess.com/

I was answering the “they can’t be artificially weakened” point. I’m not saying they play like humans.
Ok, the implication in my comment was that they can't be weakened like humans, not that they cannot be weakened at all. The phenomenon of random mistakes does not need to be programmed in the engine, it is a byproduct of lowering the search depth or eval function.
Gotcha, apologies for the misread. I do think it’s an interesting problem space and worthy of more resources, there are all sorts of things that weaker, more human engines _could_ be helping humans with right now beyond traditionally just helping to memorise optimal lines. I don’t think this even means things like Maia that are perhaps human level but opaque, but rather being able to fit the kinds of heuristics humans use in eval or candidate move ordering. It would be great to be able to generate lines for specific opponent weaknesses (certain endgames, pawn structures, missed tactics etc). Even using engines to find things like forced draws from certain positions is harder than it should be right now. I’d love to see more chess _tooling_ rather than more pure engine research. If and when I retire from analytics in other sports this is what I’d like to spend my idle hours on.
Yup I agree, I think there's tremendous opportunity for computer tools to aid chess. Things like Lichess's recent ability to automatically categorize puzzles by the type of tactic was very cool, and only scratching the surface.
Sorry if I misunderstood but it sounds like you're saying engines aren't programmed to make random mistakes in order to lower playing strength, but this is how Stockfish works. Lowering the calculation depth and calculation time is used to reduce difficulty, but in addition to those it is programmed to make mistakes:

> Internally, MultiPV is enabled, and with a certain probability depending on the Skill Level a weaker move will be played.

Within the constraints of the depth and calculation times it determines the best move, but depending on MultiPV it will deliberately not play that move and play an inferior one instead.

This still doesn’t mean that engines can’t be made to play weaker moves without making deliberate mistakes, which is the only point I was making.
Maia plays like a human: https://maiachess.com