10

I am doing endgame training with LucasChess (LC), but the problem is not really related to LC, but to chess engines in general.

I have this problem: See picture. When I move Kh6 in this position, the engine in LC moves Ke8. Probably this is the move with which white needs the most moves until mate.position: w:Kh5, Pg6, Pg4, b:Kf8, white to move

But it is also the move which makes things easy for white. It would be harder for white if black would move Kg8, trying to block the pawn until it is no longer possible and maybe provoking a stalemate. Instead of blocking, black flees in direction to the center.

I assume the engine sees that with fleeing to the center it is maybe a mate in 20 and without fleeing and trying to block it is maybe a mate in 16. So it makes the "optimal" move with which the distance to mate is the longest.

But this is not the best human like move. Because it makes it easier for white to queen its pawn. It clears all possibilities for white to make mistakes and in this way it takes away an important part of the training effect.

I have seen this behaviour in nearly all pawn endings, not only this one; and also in other endings.

All engines I've tried show this behaviour. (Komodo, Stockfish, Gull, Gaviota, Fruit)

So my question is: Do you know a free engine or some settings for an engine which plays endgames human-like, trying to block pawns as long as possible instead of fleeing with the king to the center?

Update: konsolas found an engine (Leela or Lc0) which treats the given position well and so at first I accepted his answer as the answer. In between I've tested Lc0 more and came to the conclusion that it is absolutely not usable for endgame training, because it plays most endings catastrophically. When accepting the answer, I couldn't even imagine any engine playing endgames so bad.

So I want to clarify my question: Do you know a free engine or some settings for an engine which, with movetime 1s or below, without needing a graphics card, plays endgames human-like, trying to block pawns as long as possible instead of fleeing with the king to the center?

Lc0 with current nets or dkappe's distilled nets do not qualify, because these play most endgames horribly and absolutely non-human-like on a PC without graphics card. And from all what I've read a graphics card even won't help for its endgame play.

Update 2: I'd like to clarify that it is not only the position above, but a lot of others, too. Engines play the move which makes distance to mate biggest, assuming perfect play of the opponent. Example 8/8/8/6K1/8/8/3Q2kp/8 b - - 4 9, see second picture. Engines play Kf3, which makes it very easy for W. What B should play is Kg1, and now it's much harder for W to win. W then needs to know or find that he has to allow B to queen.8/8/8/6K1/8/8/3Q2kp/8 b - - 4 9

  • 2
    The same problem occurs sometimes when practicing tactics on lichess. Often, the engine will not play the most testing defence as with best play it is inferior to a defence that is easy to refute. – Qudit Mar 8 at 21:41
  • 1
    No offense...But 1.Kh6 Kg8 2.g7 is pretty straightforward. – Jossie Calderon Mar 15 at 17:06
  • @ Jossie C.: Yes, if you know the type of position, if you know a draw is lurking behind the corner. But in the similar pos, (5k2/8/6P1/7K/6P1/8/8/8 w - - 2 2) after 1.Kh6, Kg8 opens the possibility for White to make the mistake g5? with draw. If you know the position well, you won't make the mistake. ...But then you also don't need to train this type of postion. But if you like to train this position and you won't ever run into this draw during training, you have not learned much. Worse still. then you have learned that there is nothing to be aware about here. – Wickie Mar 18 at 14:48
  • Addendum: (5k2/8/6P1/7K/6P1/8/8/8 w - - 2 2) is not a similar pos, it is my original pos. – Wickie Mar 18 at 15:02
  • 1
    One way to 'solve' this problem is to force the computer to stop searching at a depth just slightly more than your own effective search depth. That way, it will be unlikely to miss something you can see, but will also not make a move for a reason only it can see. – user21820 Sep 26 at 10:15
5

Alpha-beta engines, in many endgame positions, will quickly find a mate and therefore will pick the move which prolongs the mate for the longest.

Engines which use Monte Carlo Tree Search, however, pick the line with the greatest winning/drawing chances. For example, Lc0, a neural network engine which uses MCTS, suggests Kg8 as you wanted in your position:

8/6k1/6P1/7K/6P1/8/8/8 b - - 0 1

1...Kg8 2.Kh6 Kh8 3.Kg5 Kg7 4.Kf5 Kg8 5.Kf6 Kf8

Lc0 does not play endgames as well as alpha-beta engines, but it tends to play them in a much more human manner.

I would also suggest taking a look at Komodo 12 MCTS, which may also exhibit this type of behaviour.

  • Indeed, I've treid Lc0 with weights 36089 and it plays those endgames much better than any other engine I've tried (and I've tried dozens more in between). On the other hand, it does not know how to mate with KQ-Q. So it might not be the best engine for endgame training. Nevertheless, my original question has been answered. – Wickie Mar 9 at 20:00
  • 1
    @Wickie what is KQ-Q? – Pedro A Mar 10 at 1:40
  • @Pedro KQ-Q is a mistake by my side. I meant KQ-K. King and Queen against King. – Wickie Mar 10 at 20:36
  • 2
    What are you even talking about? Leela can mate 100% of the time with a KQ vs K. It's been able to do this for over a year: docs.google.com/spreadsheets/d/… – NoseKnowsAll Mar 14 at 21:50
  • 1
    @NoseKnowsAll Yeah, it evetually can mate with KQ-K, if you have the nerves to wait for 30 moves or longer. At least with my configuration (no graphics card, 1 sec movetime, core duo cpu 2.4 GHz), all the nets I have tried play horribly in the endgame. I'm getting stomach cramps by looking at them. I have tried 36089 and dkappes distilled networks 11258-48x5, 11258-64x6 and 11258-80x7. – Wickie Mar 16 at 13:23
1

Freechess.org has a bot called endgamebot you can play against.

It knows up to 6-man endgames.

  • 3
    But does it play human-like, which is the OP's question? – Glorfindel Mar 15 at 17:39
  • @Glorfindel: Yes. – Jossie Calderon Mar 16 at 0:05
  • @ Jossie Calderon: I would like to try that out. I have got a fics account and BabasChess. How can I train a certain position with this bot? (help bot or help endgamebot has no results.) – Wickie Mar 16 at 13:28
  • @ Jossie Calderon: I have found it myself: tell endgamebot help – Wickie Mar 16 at 13:53
  • 2
    @ Jossie Calderon: It does not :-( After 1. Kh6, Kg8 opens the possibility for white's mistake g5 with draw. The endgamebot does play Ke7 there, the typical fleeing to the center. – Wickie Mar 18 at 14:57
0

It depend which chess engine LC is using, nowadays engines play very similarly to human type moves, download stockfish 9 and attach it LC you will what he is playing. There is also one important point, sometimes training app uses built in moves to play with, so make sure engine is playing and not just replying moves from notation

  • I've tried many engines in LC, all show the behaviour of the fleeing king. Aside of Leela or Lc0 which has other deficiencies. – Wickie Mar 18 at 14:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.