DiscoCheck 4.2

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

lucasart
Posts: 3241
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: DiscoCheck 4.2

Post by lucasart »

noctiferus wrote:Thx for explanation.
I'm unable to reproduce the game, and, moreover, cannot see how to post here the evals, if you were interested. In this case, tell me if you want to see them via PM.
ciao
e
It's OK, when I click on "quote" to answer your post, I can see the actual PGN with the eval in the comments. Here are the general rules I use for endgames, in case you are interested:
* when the stronger side has no pawns, half the eval. So if the stronger side is up by +4, then it's only +2. This is nice and general and manages to solve a lot of specific cases without having to write specific code, that would slow down the general case, we well as make source code more complex and harder to maintain. So I like it.
* opposite color bishop situation (ie. both sides have exactly one bishop and the two bishops are on opposite color squares): multiply the eval by 0.5 if there are no other pieces (only King, Pawns, and the two Bishops) and by 0.75 otherwise. These endgames are typically drawish unless other important factors are enough to make a win.

PS: I hope it manages to win some games against Texel, because it got ruthlessly spanked in that one :cry:
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
Mike S.
Posts: 1480
Joined: Thu Mar 09, 2006 5:33 am

Re: DiscoCheck 4.2

Post by Mike S. »

The game also reveals a problem with Texel: Too short mate announcements, in the end. E.g. the following position is a -#9 but Texel gives -#4 (59th move):

[d]8/8/8/8/r4k2/8/2K5/8 b - - 0 59

Code: Select all

[Event "discocheck  tex"]
[Site "UTENTE-PC"]
[Date "2013.05.21"]
[Round "1"]
[White "DiscoCheck 4.2"]
[Black "Texel 1.01 JA 64-bit"]
[Result "0-1"]
[ECO "E09"]
[WhiteElo "2800"]
[BlackElo "2800"]
[Annotator "-0.13;0.19"]
[PlyCount "134"]
[EventDate "2013.??.??"]
[TimeControl "60+2"]

{Intel(R) Core(TM) i7 CPU Q 720 @ 1.60GHz 1600 MHz W=23.9 ply; 626kN/s;
HS-Variety.ctg B=16.0 ply; 1.236kN/s; HS-Variety.ctg} 1. Nf3 {0.00/0 0} Nf6 {
0.00/0 0} 2. d4 {0.00/0 0} d5 {0.00/0 0} 3. c4 {0.00/0 0} e6 {0.00/0 0} 4. g3 {
0.00/0 0} c6 {0.00/0 0} 5. Nbd2 {0.00/0 0} Nbd7 {0.00/0 0} 6. Bg2 {0.00/0 0}
Be7 {0.00/0 0} 7. O-O {0.00/0 0} b6 {0.00/0 0} 8. Qc2 {0.00/0 0} Bb7 {0.00/0 0}
9. e4 {0.00/0 0} O-O {0.00/0 0} 10. Rd1 {0.00/0 0} c5 {0.00/0 0 Both last book
move} 11. cxd5 {-0.13/15 5} exd5 {0.19/14 3} 12. e5 {-0.13/15 5} Ne8 {0.40/14
4 (Nxe5)} 13. Nb3 {0.15/15 5 (Bh3)} a5 {0.39/14 3 (Nc7)} 14. Bd2 {-0.03/14 5 
(a4)} a4 {0.16/14 3} 15. Nc1 {0.04/16 4} Nc7 {0.03/13 3 (a3)} 16. Ne2 {-0.04/
14 4} f6 {0.17/12 4 (cxd4)} 17. Rac1 {0.18/13 4 (Be3)} fxe5 {0.18/13 3 (Kh8)}
18. dxe5 {0.23/13 2 (Nxe5)} g5 {0.06/13 4 (d4)} 19. g4 {0.28/14 4} Ne6 {0.00/
14 3} 20. Re1 {-0.05/15 4} c4 {-0.09/14 3} 21. Ned4 {-0.04/15 5 (Nfd4)} Ndc5 {
-0.03/13 3} 22. Nxe6 {-0.04/14 6 (Rcd1)} Nxe6 {-0.52/14 3} 23. Red1 {-0.31/13
4 (Qd1)} Nf4 {-0.79/14 4} 24. Bxf4 {-0.52/15 4} Rxf4 {-0.54/16 3} 25. h3 {-0.
74/14 4} Bc5 {-0.78/14 6 (Qf8)} 26. Rd2 {-0.67/12 4 (a3)} Qe7 {-1.06/14 3 (a3)}
27. Qd1 {-0.88/13 4} Kh8 {-1.47/14 10} 28. Rxd5 {-1.09/14 5 (a3)} Bxd5 {-2.11/
14 3} 29. Qxd5 {-1.18/16 5} Qd8 {-1.96/15 3 (Rd8)} 30. Qxd8+ {-1.30/15 3} Rxd8
{-1.92/17 3} 31. Rc2 {-1.51/15 4} h6 {-2.35/16 3} 32. Kh2 {-1.47/15 3} a3 {-2.
60/18 3} 33. bxa3 {-1.56/17 3} Rd3 {-2.80/18 3} 34. Kg3 {-1.71/16 3} c3 {-3.01/
18 3} 35. h4 {-1.78/16 4 (Re2)} Bd4 {-3.60/16 3 (Bxa3)} 36. Re2 {-2.80/16 3} c2
{-4.66/16 3} 37. Rxc2 {-2.81/16 2} Bxe5 {-4.99/17 3} 38. hxg5 {-3.14/15 2}
Rfxf3+ {-5.00/16 3} 39. Kh4 {0.01/0 0} hxg5+ {-5.10/16 3} 40. Kxg5 {-3.20/14 2}
Rf8 {-5.08/16 2} 41. Rc6 {-3.16/15 3} Rd4 {-5.15/14 4 (Rxf2)} 42. Rxb6 {-2.31/
12 2} Rxf2 {-6.37/15 2 (Bf4+)} 43. Re6 {-2.58/13 4} Rxg2 {-7.66/16 2} 44. Rxe5
{-2.71/13 2} Rdxg4+ {-9.00/15 2} 45. Kf6 {-2.80/15 3} Ra4 {-9.02/13 2 (Rg6+)}
46. Re8+ {-2.87/15 3 (Re7)} Kh7 {-9.08/15 2} 47. Re7+ {-2.91/15 3 (Re3)} Kh6 {
-9.16/15 2} 48. Re3 {-2.91/16 3} Ra6+ {-9.24/15 2} 49. Ke5 {-2.96/16 3} Rg5+ {
-9.40/18 2 (Ra5+)} 50. Ke4 {-2.99/19 3 (Kf4)} Re6+ {-9.55/18 3} 51. Kd3 {-3.01/
18 3} Rxe3+ {-9.48/17 3} 52. Kxe3 {-3.03/18 1} Rg3+ {-9.56/19 2} 53. Ke2 {-3.
06/18 3 (Kd4)} Rxa3 {-9.56/20 2} 54. Kd2 {-3.14/19 3} Rxa2+ {-9.64/21 2} 55.
Ke3 {-3.21/21 3 (Kd3)} Kg5 {-#39/22 2} 56. Kf3 {-3.37/17 3 (Kd3)} Kf5 {-#6/25
2 (Ra3+)} 57. Ke3 {-3.39/17 3} Ra4 {-#6/22 2 (Ra3+)} 58. Kd3 {-3.38/18 3} Kf4 {
-#5/21 2 (Kg4)} 59. Kc2 {307.91/17 3 (Kd2)} Ke3 {-#4/18 1} 60. Kb3 {307.93/19 3
} Rg4 {-#4/16 0 (Re4)} 61. Kc3 {307.91/18 3} Ke2 {-#3/14 0 (Rf4)} 62. Kc2 {307.
83/19 3} Rg3 {-#3/12 0} 63. Kc1 {307.79/81 3} Kd3 {-#2/10 0} 64. Kb2 {307.77/
127 0} Kd2 {-#2/8 0} 65. Kb1 {307.75/127 0} Kc3 {-#1/6 0} 66. Ka2 {307.73/127 0
} Rg1 {-#1/4 0 (Kc2)} 67. Ka3 {0.01/0 0} Ra1# {#0/2 0} 0-1
Regards, Mike
User avatar
geots
Posts: 4790
Joined: Sat Mar 11, 2006 12:42 am

Thank You For the New DoubleCheck Version!!

Post by geots »

It is much appreciated.


Best,
User avatar
geots
Posts: 4790
Joined: Sat Mar 11, 2006 12:42 am

Re: DiscoCheck 4.2

Post by geots »

SzG wrote:
lucasart wrote:Here's a new, and hopefully better, version of DiscoCheck.

Contempt option added. The default value of 25cp has the good property of significantly reducing the draw rate, while not losing any elo. Thanks to contempt, DiscoCheck will avoid draws and would rather fight to the death than accept a 3-repetition draw in a +/- equal position.

UCI stop command implemented. This means that infinite analysis is finally possible, as well as stopping the engine while it's searching in game play.

No skill level yet, but the recommend way to do that is to limit the number of nodes searched. Now even small values will never crash. For example, you can try 256 nodes, 512 nodes, 1024 nodes, etc. until you find the suitable strength opponent for you.

Just click the link in my signature, and you will find:
* source code in 'src' folder
* compiles for Linux and Windows (64-bit, SSE 4.2) in the 'bin' folder

Regarding ELO, I reckon about +20 ELO compared to DiscoCheck 4.1.

Enjoy!
Although I preferred the old name, I decided to download Disco but I am embarrassed to admit that I can't find the file. I am at a place where I am told 'Binary file not shown'.
I found another location which is called View Raw, there I can download an exe but it does not run (32-bit system).

Once I could program in sevral languages. Now I am not even able to download a file from the internet. Total collapse.



Now you know how I feel every day I wake up.


Best,
User avatar
geots
Posts: 4790
Joined: Sat Mar 11, 2006 12:42 am

Re: DiscoCheck 4.2

Post by geots »

lucasart wrote:
noctiferus wrote:Thx for explanation.
I'm unable to reproduce the game, and, moreover, cannot see how to post here the evals, if you were interested. In this case, tell me if you want to see them via PM.
ciao
e
It's OK, when I click on "quote" to answer your post, I can see the actual PGN with the eval in the comments. Here are the general rules I use for endgames, in case you are interested:
* when the stronger side has no pawns, half the eval. So if the stronger side is up by +4, then it's only +2. This is nice and general and manages to solve a lot of specific cases without having to write specific code, that would slow down the general case, we well as make source code more complex and harder to maintain. So I like it.
* opposite color bishop situation (ie. both sides have exactly one bishop and the two bishops are on opposite color squares): multiply the eval by 0.5 if there are no other pieces (only King, Pawns, and the two Bishops) and by 0.75 otherwise. These endgames are typically drawish unless other important factors are enough to make a win.

PS: I hope it manages to win some games against Texel, because it got ruthlessly spanked in that one :cry:





Look, your previous version had an SSE exe. In console mode- this one mentions nothing about pop or SSE. Is neither there?



Best,

george
User avatar
geots
Posts: 4790
Joined: Sat Mar 11, 2006 12:42 am

Re: DiscoCheck 4.2

Post by geots »

SzG wrote:Well, it does not run in my 64-bit environment as well. I have an Q6600 and Vista.

If you can't provide a working executable for my system, DiscoCheck and I will have to part ways, which we would both regret.



What is the size of your executable. Just guessing you may not have the right one.


gts
lucasart
Posts: 3241
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: DiscoCheck 4.2

Post by lucasart »

PS: The only compiles provided are SSE 4.2. Sorry I didn't mention it in the executable filename. I can do non SSE ones for older CPUs, if anyone needs those (of course they will be slower, but more compatible).
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
lucasart
Posts: 3241
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: DiscoCheck 4.2

Post by lucasart »

SzG wrote:Well, it does not run in my 64-bit environment as well. I have an Q6600 and Vista.

If you can't provide a working executable for my system, DiscoCheck and I will have to part ways, which we would both regret.
I googled your Q6600, and it appears to be SSE3 compatible, but not SSE 4.2, which is why my compiles don't work for you.

I've posted some SSE3 compiles now, so anyone with SSE >= 3 can run those.
* Linux: https://github.com/lucasart/chess/raw/m ... k_4.2_sse3
* Windows: https://github.com/lucasart/chess/raw/m ... 2_sse3.exe

I also suffixed the "normal" compiles with sse4.2, in order to clarify:
* Linux: https://github.com/lucasart/chess/raw/m ... 4.2_sse4.2
* Windows: https://github.com/lucasart/chess/raw/m ... sse4.2.exe

Of course SSE 4.2 is preferred when the CPU can support it (it runs 8% faster on my i7-3770k).
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
User avatar
geots
Posts: 4790
Joined: Sat Mar 11, 2006 12:42 am

Re: DiscoCheck 4.2

Post by geots »

lucasart wrote:PS: The only compiles provided are SSE 4.2. Sorry I didn't mention it in the executable filename. I can do non SSE ones for older CPUs, if anyone needs those (of course they will be slower, but more compatible).



Thanks- but it is not for me I ask. I am worried that Gabor cannot get it to work. But I think he had 4.1 running- and that was sse., so I don't know. But thanks, Lucas.


Best,
tpetzke
Posts: 686
Joined: Thu Mar 03, 2011 4:57 pm
Location: Germany

Re: DiscoCheck 4.2

Post by tpetzke »

Hi,

what made your engine play 3. ... Na6. This looks like a very weak move even given the search limit of 1000 nodes. It doesn't really move the knight to a good spot and it also does not help to increase the mobility of the other pieces.

I just had a look at my (much weaker) engine. I have not implemented a search node limit but a ply 3 search uses about 1000 nodes in that position and it suggests 3. ... e6

It probably doesn't save the day but looks more natural. If you look into this you might get some ideas to further improve your monster.

Thomas...