lukasmonk / lucaschess

Chess GUI
http://lucaschess.pythonanywhere.com/
GNU General Public License v2.0
338 stars 77 forks source link

Engines is forcing a draw in winning position #99

Open tssvl opened 5 years ago

tssvl commented 5 years ago

Hi. Installed latest version and noticed that I am not able to play anymore. Checked this for several times. When I got with trainer's help winning position like +5/+10 and etc. Or trainer see checkmate in 10 moves then he suddenly trying force a draw. Seems like bug. If engine can easily win - it should.

An example (every move was made with "Help me to move"):

1.g4 {-0.45 очков : 1.g4 e5 2.d4 exd4 3.Nf3 d5 4.g5 Nc6 5.Nxd4 h6 6.gxh6 Nxh6 7.Nxc6 bxc6 8.Qd4} (1.e4 {+0.38 очков} d5 2.exd5 Nf6 3.Nf3 e6 4.dxe6 Bxe6 5.d4 c5 6.Nc3 Nc6 7.Be3 cxd4 8.Nxd4) d5 2.Bg2 {-0.61 очков : 2.Bg2 Nc6 3.d4 Bxg4 4.Nf3 e6 5.Nc3 Nf6 6.O-O Bd6 7.Qd3} (2.h3 {-0.39 очков} e5 3.d3 Nc6 4.Nf3 d4 5.Nbd2 Nf6 6.e3 Bd6 7.Nc4 O-O 8.Bd2) Bxg4 3.c4 e6 4.cxd5 exd5 5.Qb3 Nf6 6.Qxb7 Nbd7 7.Qc6 Bc5 8.h3 Be6 9.Nf3 Ne4 10.d4 Bb4+ 11.Nbd2 Rb8 12.O-O Nxd2 13.Nxd2 Bxd2 14.Bxd2 Rxb2 15.Qc3 Qb8 16.Bc1 Rb4 17.Ba3 Ra4 18.Rab1 Qc8 19.Rfc1 Kd8 20.Qg3 g6 21.Rb2 h6 22.e4 dxe4 23.Bxe4 Ra5 24.d5 Bxd5 25.Qc3 Rh7 26.Rd2 Rb5 27.Bxd5 c5 28.Re1 Rb8 29.Bb7 Rxb7 30.Bxc5 Rb8 31.Qf6+ Kc7 32.Bd6+ Kb6 33.Bc5+ Kc7 34.Bd6+ Kb6 35.Bc5+ {Черным мат в 11 : 35.Qb2+ Kc6 36.Qc3+ Kb7 37.Rb2+ Nb6 38.Qf3+ Ka6 39.Qa3+ Kb7 40.Re7+ Qd7 41.Rxd7+ Kc6 42.Rc7+ Kd5 43.Qc5+ Ke4 44.Qe3+ Kd5 45.Qe5#} (35.Bc5+ {Черным мат в 10} Kc7 36.Qf4+ Kb7 37.Qf3+ Ka6 38.Qa3+ Kb5 39.Rb1+ Kc6 40.Qf3+ Kc7 41.Qf4+ Kd8 42.Qf6+ Kc7 43.Bd6+ Kc6 44.Qf3#) Kc7 1/2-1/2

Sorry for the russian language but: {Черным мат в 11} means Black will be checkmated in 10 moves. pic

version 11.15

lukasmonk commented 5 years ago

Hi,

It is a threefold repetition: 31...Kc7, 33...Kc7 35...Kc7

Cheers

tssvl commented 5 years ago

Yes. But the question is why. There is checkmate sequence in 10 moves. It means just win. I push button "advice me the best move here" and it leads me to a draw. This is my the only concern. I did couple of random moves in very beginning of the game but rest of moves I just pushing button "Help me to make a move". I think it should give the best possible move in this position.

lukasmonk commented 5 years ago

Problem is that program doesn't send all moves to the tutor to calculate best move, then threefold draw is not detected. I take note to fix in the future.

tssvl commented 5 years ago

Got it. Thanks.