Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Here have some edge cases for chess, fortresses. The first three are "0.0" in the fourth black wins.

8/8/8/1Pk5/2Pn3p/5BbP/6P1/5K1R w - - 0 1 (white can not free the rook)

1B4r1/1p6/pPp5/P1Pp1k2/3Pp3/4Pp1p/5P1P/5K2 b - - 0 1 (the rook can not enter white's position)

kqb5/1p6/1Pp5/p1Pp4/P2Pp1p1/K3PpPp/5P1B/R7 b - - 0 1 (Rook to h1. King to g1, Queen can not enter via a6)

2nnkn2/2nnnn2/2nnnn2/8/8/8/3QQQ2/3QKQ2 w - - 0 1 (the knights advance as block, so that attacked knights are protected twice)

In the first both Stockfish and Lc0 think white is better (slightly on a deep ply). In the second and in the third they think black wins. Lc0 understands the fourth (applause), Stockfish does not.




I'm not surprised that engines aren't tuned / haven't learned to evaluate positions like the last one (and probably most of the others) - there's absolutely no way this kind of position shows up in a real chess game.


The last one, for sure won't happen. The two with the crazy pawn chains are unlikely, but these extremely locked structures do occasionally occur. And the first one is actually pretty plausible. The situation with the king on f1 and the rook stuck in the corner is fairly thematic in some opening.It's just not well suited for engine analysis and fairly trivial for humans because we can eliminate large swathes of game tree via logic.

I.e. Assuming the black bishop and knight never move, we can see the kingside pawns will never move either. And the king will only ever be able to shuffle between f1 and g1. Therefore we can deduce the rook can never make a useful move. Now the only pieces that can make meaningful moves are the two connected passed pawns on the queenside, and the light-square bishop. Assume there was no bishop. The king can simply shuffle between b6 and c5, and the pawns are contained. Can the white bishop change any of this? No, because those two squares are dark squares, and in fact all of the black pieces are on dark squares. So the white bishop is useless. Ergo, no progress can be made. We've eliminated all the possible continuations based on a very shallow search using constraint based reasoning and basic deduction.

Engines can't do any of this. No one has found a generalised algorithm to do this sort of thing(it's something I spend a silly amount of time trying to think up, and I've gotten nowhere with it). All they can do is explore paths to future possible positions, assign them a heuristic evaluation. And choose the best path they find.

Although, I haven't actually tried to analyse position 1 with stockfish. I feel like on sufficient depth, it should find a forced repetition. Or the 50 move rule. Though it might waste a ton of time looking at meaningless bishop moves. Naïvely, I'd expect it to do 49 pointless bishop moves and king shuffles, then move a pawn, losing it, then another 49 moves, lose the other pawn. Then finally another 50 moves until running into 50 move rule. So back of the envelope, it would need to search to 150ply before concluding it's a draw. Although pruning and might actually mean it gets there significantly faster.


> Engines can't do any of this. No one has found a generalised algorithm to do this sort of thing(it's something I spend a silly amount of time trying to think up, and I've gotten nowhere with it).

This is exactly why current AI cannot be said to actually think in the same fashion as humans, and why AI is very unlikey to reach AGI


Well, the fact that Lc0 gives a huge advantage to black in the fourth position (not that it actually figures out good moves XD) gives some hope. Possible that it is just a question of how long we train the AI.




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

Search: