New Giraffe

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

Moderator: Ras

matthewlai
Posts: 793
Joined: Sun Aug 03, 2014 4:48 am
Location: London, UK

Re: New Giraffe

Post by matthewlai »

Laskos wrote:
matthewlai wrote:
Laskos wrote:I did some quick tests, and found quite a good match strength-wise for new Giraffe -- LittleThought 1.052 (2455 ELO CCRL). They are almost equal in strength, Giraffe came +15 ELO points stronger in a test from 2moves_v1.epd openings file (1000 games). It seems you can train the network more extensively on endgame positions. From and endgame epd file, Giraffe came -80 ELO points weaker than LittleThought (1000 games). It is confirmed by the results of test suites STS (general) and MES (endgames). 1s/position.

STS:
Giraffe: 803/1500
LT: 766/1500

MES:
Giraffe: 238/400
LT: 258/400
That is very good to know! I had plans to train different networks for different phases, but haven't gotten around to that yet.

It could be because I'm using EGTB in training, so it doesn't learn how to play end games without one (assuming you aren't using one).
I didn't use EGTBs.
Hmm doesn't seem to be the case.

Code: Select all

Rank Name               Elo    +    - games score oppo. draws 
   1 Giraffe baseline     1    9    9  1344   50%    -1   20% 
   2 Giraffe no_gtb      -1    9    9  1344   50%     1   20%
Disclosure: I work for DeepMind on the AlphaZero project, but everything I say here is personal opinion and does not reflect the views of DeepMind / Alphabet.
User avatar
MikeB
Posts: 4889
Joined: Thu Mar 09, 2006 6:34 am
Location: Pen Argyl, Pennsylvania

Re: New Giraffe

Post by MikeB »

JoshPettus wrote:
MikeB wrote:
matthewlai wrote:
MikeB wrote:Thank you Matthew -

Below is a link to a MacOS exe version

https://www.dropbox.com/s/89emxa87zyqx2 ... S.zip?dl=1

source is here:
https://bitbucket.org/waterreaction/giraffe/overview
Thanks Mike! I am so sorry but I just realized there's one last change that I forgot to push. It fixed a bug that made Giraffe quite a lot weaker. Didn't think someone would grab the sources that quickly!

Would be really nice if you can pull and do another build!

Thanks!

PS. The Windows version is fine. It was already built with the fix.
Not a problem - MacOS exe updated - same link as before - timestamped 11/23/16 2:53 PM ET.
Hey Mike, Thanks! But it looks like you forgot to statically compile in libgcc

Code: Select all

dyld: Library not loaded: /opt/local/lib/libgcc/libgomp.1.dylib
Didn't clang implement openmp in v3.7? Was there anything else stopping it from being viable?
Joshua - try again - the link is the same.
carldaman
Posts: 2284
Joined: Sat Jun 02, 2012 2:13 am

Re: New Giraffe + test game

Post by carldaman »

Thanks, Matthew. It is a relief to see that Giraffe, the self-taught engine, is not an abandoned project, as many of us had feared. :)

I found Giraffe's playing style original and different from that of a typical engine, and with touch of human-like play at times. Sparring against the previous version from last year was usually a very difficult proposition for me.

Whenever a new version of an interesting engine is released, I like to roll it out by playing one or two test games against it, to get a feel for its strengths and weaknesses. However, I am very surprised and puzzled at the ease with which I, not being a real anti-engine specialist, was able to get a winning position against the new version in the one game I tried against it. Giraffe's play looked very much like computer-chess from the old days, with aimless, passive piece shuffling and lacking in king safety awareness.

Here's the game below. Maybe some insights can be gleaned from it.

[pgn]
[Event "Arena rated test game 5m20s"]
[Date "2016.10.24"]
[White "Carl"]
[Black "Giraffe_161023_x64"]
[Result "*"]
[ECO "A06"]
[WhiteElo "2100"]
[BlackElo "2550?"]
[PlyCount "51"]
[TimeControl "300+20"]

1. Nf3 d5 {[%eval -74,21] [%emt 0:00:50]} 2. e3 c5 {[%eval -66,21] [%emt 0:00:
19]} 3. b3 Nf6 {[%eval -7,21] [%emt 0:00:23]} 4. Bb5+ Nc6 {[%eval -1,21] [%emt
0:00:18]} 5. Ne5 Qc7 {[%eval 36,20] [%emt 0:00:18]} 6. Bb2 Bf5 {[%eval 34,19]
[%emt 0:00:17]} 7. O-O e6 {[%eval 51,20] [%emt 0:00:18]} 8. f4 Be7 {[%eval 60,
18] [%emt 0:00:22]} 9. d3 O-O {[%eval 70,19] [%emt 0:00:21]} 10. Bxc6 bxc6 {
[%eval 45,21] [%emt 0:00:21]} 11. Nd2 Bg6 {[%eval 30,18] [%emt 0:00:22]} 12.
Ndf3 Bf5 {[%eval -16,19] [%emt 0:00:26]} 13. Qe1 h6 {[%eval -25,18] [%emt 0:00:
15]} 14. h3 Rab8 {[%eval -91,20] [%emt 0:00:22]} 15. g4 Bh7 {[%eval -185,21]
[%emt 0:00:18]} 16. g5 hxg5 {[%eval -189,21] [%emt 0:00:21]} 17. Nxg5 c4 {
[%eval -115,20] [%emt 0:00:19]} 18. Rd1 cxd3 {[%eval -113,19] [%emt 0:00:25]}
19. cxd3 a6 {[%eval -118,18] [%emt 0:00:27]} 20. Kh1 Rb5 {[%eval -122,18]
[%emt 0:00:20]} 21. Rg1 Bf5 {[%eval -189,18] [%emt 0:00:29]} 22. e4 Bh7 {
[%eval -265,18] [%emt 0:00:29]} 23. Nxh7 Nxh7 {[%eval -417,19] [%emt 0:00:15]
White forfeits on time just as he was about to play...} 24. Rxg7+ $3 Kxg7 (
24... Kh8 25. Qg3 $18) 25. Qg3+ $140 Kh8 (25... Kf6 26. Nd7#) (25... Kh6 26.
Rg1 (26. Ng4+)) (25... Ng5 26. Nf3+) 26. Nxf7# *
[/pgn]

Giraffe's play clearly feels "out of character" when compared to the previous version. I guess we'll learn and know more when we see more tests.

Cheers,
CL
mcostalba
Posts: 2684
Joined: Sat Jun 14, 2008 9:17 pm

Re: New Giraffe

Post by mcostalba »

matthewlai wrote: * The biggest change is porting the neural network code from my own DIY framework to Torch
I would have expected Tensorflow here :-)

https://research.googleblog.com/2016/04 ... rflow.html

BTW, congratulations for this! It is really fascinating, I am glad you have not given up with Giraffe.
supersharp77
Posts: 1262
Joined: Sat Jul 05, 2014 7:54 am
Location: Southwest USA

Re: Giraffe 20161023 w32 Tested....

Post by supersharp77 »

Giraffe 20161023 w32 plays and tests pretty well..a series of interesting and unusual wins and losses as follows... :) :wink:

Giraffe Test Games pgn
http://s000.tinyupload.com/?file_id=960 ... 8013968799

Giraffe RR Gauntlet Test 2016

Giraffe 20161023 w32. 2300 - Knightcap 24 ja wb. 2200 ½-½
Giraffe 20161023 w32. 2300 - Comet A98 wb. 2500 *1-0
Giraffe 20161023 w32. 2300 - Crafty 18.15mpc wb. 2400 0-1
Giraffe 20161023 w32. 2300 - Chessterfield i4b wb. 2300 *1-0
Giraffe 20161023 w32. 2300 - neuroStock 2.0.1. 1800 1-0
Giraffe 20161023 w32. 2300 - Brainless-32 W2U. 2300 *0-1
Giraffe 20161023 w32. 2300 - BabyChess 11.1 wb. 1600 1-0
Giraffe 20161023 w32. 2300 - Simple 0048 (Treemap) 2100 *1-0
Giraffe 20161023 w32. 2300 - Dancing Dragon 1.5055. 2100 1-0
Giraffe 20161023 w32. 2300 - Skotz 1800 *1-0
Giraffe 20161023 w32. 2300 - Raffaela 0.14 W2U 2000 1-0
Giraffe 20161023 w32. 2300 - Talvmenni Java wb. 1600 *1-0
Giraffe 20161023 w32. 2300 - Golem 0.1 wb. 1800 1-0
Giraffe 20161023 w32. 2300 - Clownfish_01 wb. 2000 *1-0
Giraffe 20161023 w32. 2300 - Thinker 3.0c wb. 2000 1-0
Giraffe 20161023 w32. 2300 - UsurpatorII Emu wb. 2000 *1-0
Giraffe 20161023 w32. 2300 - Geko 0.43 wb. 1800 1-0
Giraffe 20161023 w32. 2300 - ROBOKewlper 0.047a wb 1600 *1-0
Giraffe 20161023 w32. 2300 - DreamChess 0.2.0 wb. 1800 1-0
Giraffe 20161023 w32. 2300 - Soberango 0083 wb. 1000 *1-0

Wins= 17
Draws=1
Losses=2
17.5/20 points


==============================================

Engine Matches 1, 5'+5 2016

Giraffe 20161023 w32. 2300 - Sjeng 12.7 wb 2500 0.5 - 1.5 +0/-1/=1 25.00%
Giraffe 20161023 w32. 2300 - Junior 7 2625 0.5 - 1.5 +0/-1/=1 25.00%
Giraffe 20161023 w32. 2300 - Fritz 5.32 2575 1.0 - 1.0 +1/-1/=0 50.00%
Giraffe 20161023 w32. 2300 - Hermann 1.3.5. 2400 0.0 - 2.0 +0/-2/=0 0.00%
Giraffe 20161023 w32. 2300 - Der Bringer 1.4 wb. 2350 2.0 - 0.0 +2/-0/=0 100.00%
Giraffe 20161023 w32. 2300 - Brainless-32 W2U. 2300 2.0 - 0.0 +2/-0/=0 100.00%
Giraffe 20161023 w32. 2300 - HIARCS Paderborn 2007 SP 2650 0.0 - 2.0 +0/-2/=0 0.00%


Wins=5
Draws=2
Losses=7
6/14 points
Lyudmil Tsvetkov
Posts: 6052
Joined: Tue Jun 12, 2012 12:41 pm

Re: New Giraffe + test game

Post by Lyudmil Tsvetkov »

carldaman wrote:Thanks, Matthew. It is a relief to see that Giraffe, the self-taught engine, is not an abandoned project, as many of us had feared. :)

I found Giraffe's playing style original and different from that of a typical engine, and with touch of human-like play at times. Sparring against the previous version from last year was usually a very difficult proposition for me.

Whenever a new version of an interesting engine is released, I like to roll it out by playing one or two test games against it, to get a feel for its strengths and weaknesses. However, I am very surprised and puzzled at the ease with which I, not being a real anti-engine specialist, was able to get a winning position against the new version in the one game I tried against it. Giraffe's play looked very much like computer-chess from the old days, with aimless, passive piece shuffling and lacking in king safety awareness.

Here's the game below. Maybe some insights can be gleaned from it.

[pgn]
[Event "Arena rated test game 5m20s"]
[Date "2016.10.24"]
[White "Carl"]
[Black "Giraffe_161023_x64"]
[Result "*"]
[ECO "A06"]
[WhiteElo "2100"]
[BlackElo "2550?"]
[PlyCount "51"]
[TimeControl "300+20"]

1. Nf3 d5 {[%eval -74,21] [%emt 0:00:50]} 2. e3 c5 {[%eval -66,21] [%emt 0:00:
19]} 3. b3 Nf6 {[%eval -7,21] [%emt 0:00:23]} 4. Bb5+ Nc6 {[%eval -1,21] [%emt
0:00:18]} 5. Ne5 Qc7 {[%eval 36,20] [%emt 0:00:18]} 6. Bb2 Bf5 {[%eval 34,19]
[%emt 0:00:17]} 7. O-O e6 {[%eval 51,20] [%emt 0:00:18]} 8. f4 Be7 {[%eval 60,
18] [%emt 0:00:22]} 9. d3 O-O {[%eval 70,19] [%emt 0:00:21]} 10. Bxc6 bxc6 {
[%eval 45,21] [%emt 0:00:21]} 11. Nd2 Bg6 {[%eval 30,18] [%emt 0:00:22]} 12.
Ndf3 Bf5 {[%eval -16,19] [%emt 0:00:26]} 13. Qe1 h6 {[%eval -25,18] [%emt 0:00:
15]} 14. h3 Rab8 {[%eval -91,20] [%emt 0:00:22]} 15. g4 Bh7 {[%eval -185,21]
[%emt 0:00:18]} 16. g5 hxg5 {[%eval -189,21] [%emt 0:00:21]} 17. Nxg5 c4 {
[%eval -115,20] [%emt 0:00:19]} 18. Rd1 cxd3 {[%eval -113,19] [%emt 0:00:25]}
19. cxd3 a6 {[%eval -118,18] [%emt 0:00:27]} 20. Kh1 Rb5 {[%eval -122,18]
[%emt 0:00:20]} 21. Rg1 Bf5 {[%eval -189,18] [%emt 0:00:29]} 22. e4 Bh7 {
[%eval -265,18] [%emt 0:00:29]} 23. Nxh7 Nxh7 {[%eval -417,19] [%emt 0:00:15]
White forfeits on time just as he was about to play...} 24. Rxg7+ $3 Kxg7 (
24... Kh8 25. Qg3 $18) 25. Qg3+ $140 Kh8 (25... Kf6 26. Nd7#) (25... Kh6 26.
Rg1 (26. Ng4+)) (25... Ng5 26. Nf3+) 26. Nxf7# *
[/pgn]

Giraffe's play clearly feels "out of character" when compared to the previous version. I guess we'll learn and know more when we see more tests.

Cheers,
CL
Man, you need a bulldozer, not a Giraffe to play against. :)
User avatar
Sylwy
Posts: 4816
Joined: Fri Apr 21, 2006 4:19 pm
Location: IAȘI - the historical capital of MOLDOVA
Full name: Silvian Rucsandescu

Re: It works perfectly in Windows XP w32 !

Post by Sylwy »

Thank you, man ! :lol:

Image
matthewlai
Posts: 793
Joined: Sun Aug 03, 2014 4:48 am
Location: London, UK

Re: New Giraffe + test game

Post by matthewlai »

carldaman wrote:Thanks, Matthew. It is a relief to see that Giraffe, the self-taught engine, is not an abandoned project, as many of us had feared. :)

I found Giraffe's playing style original and different from that of a typical engine, and with touch of human-like play at times. Sparring against the previous version from last year was usually a very difficult proposition for me.

Whenever a new version of an interesting engine is released, I like to roll it out by playing one or two test games against it, to get a feel for its strengths and weaknesses. However, I am very surprised and puzzled at the ease with which I, not being a real anti-engine specialist, was able to get a winning position against the new version in the one game I tried against it. Giraffe's play looked very much like computer-chess from the old days, with aimless, passive piece shuffling and lacking in king safety awareness.

Here's the game below. Maybe some insights can be gleaned from it.

[pgn]
[Event "Arena rated test game 5m20s"]
[Date "2016.10.24"]
[White "Carl"]
[Black "Giraffe_161023_x64"]
[Result "*"]
[ECO "A06"]
[WhiteElo "2100"]
[BlackElo "2550?"]
[PlyCount "51"]
[TimeControl "300+20"]

1. Nf3 d5 {[%eval -74,21] [%emt 0:00:50]} 2. e3 c5 {[%eval -66,21] [%emt 0:00:
19]} 3. b3 Nf6 {[%eval -7,21] [%emt 0:00:23]} 4. Bb5+ Nc6 {[%eval -1,21] [%emt
0:00:18]} 5. Ne5 Qc7 {[%eval 36,20] [%emt 0:00:18]} 6. Bb2 Bf5 {[%eval 34,19]
[%emt 0:00:17]} 7. O-O e6 {[%eval 51,20] [%emt 0:00:18]} 8. f4 Be7 {[%eval 60,
18] [%emt 0:00:22]} 9. d3 O-O {[%eval 70,19] [%emt 0:00:21]} 10. Bxc6 bxc6 {
[%eval 45,21] [%emt 0:00:21]} 11. Nd2 Bg6 {[%eval 30,18] [%emt 0:00:22]} 12.
Ndf3 Bf5 {[%eval -16,19] [%emt 0:00:26]} 13. Qe1 h6 {[%eval -25,18] [%emt 0:00:
15]} 14. h3 Rab8 {[%eval -91,20] [%emt 0:00:22]} 15. g4 Bh7 {[%eval -185,21]
[%emt 0:00:18]} 16. g5 hxg5 {[%eval -189,21] [%emt 0:00:21]} 17. Nxg5 c4 {
[%eval -115,20] [%emt 0:00:19]} 18. Rd1 cxd3 {[%eval -113,19] [%emt 0:00:25]}
19. cxd3 a6 {[%eval -118,18] [%emt 0:00:27]} 20. Kh1 Rb5 {[%eval -122,18]
[%emt 0:00:20]} 21. Rg1 Bf5 {[%eval -189,18] [%emt 0:00:29]} 22. e4 Bh7 {
[%eval -265,18] [%emt 0:00:29]} 23. Nxh7 Nxh7 {[%eval -417,19] [%emt 0:00:15]
White forfeits on time just as he was about to play...} 24. Rxg7+ $3 Kxg7 (
24... Kh8 25. Qg3 $18) 25. Qg3+ $140 Kh8 (25... Kf6 26. Nd7#) (25... Kh6 26.
Rg1 (26. Ng4+)) (25... Ng5 26. Nf3+) 26. Nxf7# *
[/pgn]

Giraffe's play clearly feels "out of character" when compared to the previous version. I guess we'll learn and know more when we see more tests.

Cheers,
CL
Thanks Carl! That's very good feedback. This version does seem to be quite a bit weaker than I had expected from self-play result. I'm not sure why. It's possible that it has learned to play "anti-Giraffe" chess. I'll have to investigate this.
Disclosure: I work for DeepMind on the AlphaZero project, but everything I say here is personal opinion and does not reflect the views of DeepMind / Alphabet.
matthewlai
Posts: 793
Joined: Sun Aug 03, 2014 4:48 am
Location: London, UK

Re: It works perfectly in Windows XP w32 !

Post by matthewlai »

Sylwy wrote:Thank you, man ! :lol:

Image
Thanks Ruxy!
Disclosure: I work for DeepMind on the AlphaZero project, but everything I say here is personal opinion and does not reflect the views of DeepMind / Alphabet.
matthewlai
Posts: 793
Joined: Sun Aug 03, 2014 4:48 am
Location: London, UK

Re: Giraffe 20161023 w32 Tested....

Post by matthewlai »

supersharp77 wrote:Giraffe 20161023 w32 plays and tests pretty well..a series of interesting and unusual wins and losses as follows... :) :wink:

Giraffe Test Games pgn
http://s000.tinyupload.com/?file_id=960 ... 8013968799

Giraffe RR Gauntlet Test 2016

Giraffe 20161023 w32. 2300 - Knightcap 24 ja wb. 2200 ½-½
Giraffe 20161023 w32. 2300 - Comet A98 wb. 2500 *1-0
Giraffe 20161023 w32. 2300 - Crafty 18.15mpc wb. 2400 0-1
Giraffe 20161023 w32. 2300 - Chessterfield i4b wb. 2300 *1-0
Giraffe 20161023 w32. 2300 - neuroStock 2.0.1. 1800 1-0
Giraffe 20161023 w32. 2300 - Brainless-32 W2U. 2300 *0-1
Giraffe 20161023 w32. 2300 - BabyChess 11.1 wb. 1600 1-0
Giraffe 20161023 w32. 2300 - Simple 0048 (Treemap) 2100 *1-0
Giraffe 20161023 w32. 2300 - Dancing Dragon 1.5055. 2100 1-0
Giraffe 20161023 w32. 2300 - Skotz 1800 *1-0
Giraffe 20161023 w32. 2300 - Raffaela 0.14 W2U 2000 1-0
Giraffe 20161023 w32. 2300 - Talvmenni Java wb. 1600 *1-0
Giraffe 20161023 w32. 2300 - Golem 0.1 wb. 1800 1-0
Giraffe 20161023 w32. 2300 - Clownfish_01 wb. 2000 *1-0
Giraffe 20161023 w32. 2300 - Thinker 3.0c wb. 2000 1-0
Giraffe 20161023 w32. 2300 - UsurpatorII Emu wb. 2000 *1-0
Giraffe 20161023 w32. 2300 - Geko 0.43 wb. 1800 1-0
Giraffe 20161023 w32. 2300 - ROBOKewlper 0.047a wb 1600 *1-0
Giraffe 20161023 w32. 2300 - DreamChess 0.2.0 wb. 1800 1-0
Giraffe 20161023 w32. 2300 - Soberango 0083 wb. 1000 *1-0

Wins= 17
Draws=1
Losses=2
17.5/20 points


==============================================

Engine Matches 1, 5'+5 2016

Giraffe 20161023 w32. 2300 - Sjeng 12.7 wb 2500 0.5 - 1.5 +0/-1/=1 25.00%
Giraffe 20161023 w32. 2300 - Junior 7 2625 0.5 - 1.5 +0/-1/=1 25.00%
Giraffe 20161023 w32. 2300 - Fritz 5.32 2575 1.0 - 1.0 +1/-1/=0 50.00%
Giraffe 20161023 w32. 2300 - Hermann 1.3.5. 2400 0.0 - 2.0 +0/-2/=0 0.00%
Giraffe 20161023 w32. 2300 - Der Bringer 1.4 wb. 2350 2.0 - 0.0 +2/-0/=0 100.00%
Giraffe 20161023 w32. 2300 - Brainless-32 W2U. 2300 2.0 - 0.0 +2/-0/=0 100.00%
Giraffe 20161023 w32. 2300 - HIARCS Paderborn 2007 SP 2650 0.0 - 2.0 +0/-2/=0 0.00%


Wins=5
Draws=2
Losses=7
6/14 points
Thanks! I had expected it to be a bit stronger and definitely shouldn't lose against Brainless. More investigation is needed.
Disclosure: I work for DeepMind on the AlphaZero project, but everything I say here is personal opinion and does not reflect the views of DeepMind / Alphabet.