Not logged inRybka Chess Community Forum
Up Topic The Rybka Lounge / Computer Chess / Grafty vs Crafty
1 2 Previous Next  
- - By marcelk (***) Date 2015-04-21 08:07 Edited 2015-04-21 08:50 Upvotes 5
Out of curiosity, I took crafty 24.1, wrapped Evaluate() and added a popen() to stockfish6, send it the fen (fen code ripped from option.c), and read back the evaluation, sscanf it
and return it as if it were Evaluate's own. 1 hour effort, no error handling and it could be done prettier. Crafty's own eval is still called for any side-effects that might be needed, but the return value gets thrown out.

It looks like this:

int Evaluate(TREE * RESTRICT tree, int ply, int wtm, int alpha, int beta) {

    // Do regular Crafty evaluation first
    int value = Evaluate_crafty(tree, ply, wtm, alpha, beta);

    // Connect to Stockfish, if not already connected
    static FILE *sf = NULL;
    if (sf == NULL) sf = popen("stockfish", "r+");

    // Send board and request evaluation
    fputs("position fen ", sf);
    printfen(sf, tree, ply, wtm);
    fputs("\neval\n", sf);
    fflush(sf);

    // Read evaluation
    for (;;) {
      size_t len;
      char *line = fgetln(sf, &len);
      double feval;
      if (1 == sscanf(line, "Total Evaluation: %lf", &feval)) {
        value = (int) round(100 * ((wtm) ? feval : -feval));
        break;
      }
    }

    return value;
}


NPS suffers by approximately a factor 200. Very bad. So the next step is to equalise NPS by doing this trick in both versions: only after both evaluations are in, select which one will be used and pass it back to search.

Then I pitted the frankensteined crafty (renamed as "Grafty", sorry, I couldn't resist given the circumstances) against the, equally slowed-down, original in xboard on my laptop. TC=120+1, no pondering. Both programs report 7-9 plies. Both use the same book.bin from here: http://www.craftychess.com/book.bin (1.1MB book). No TBs. Single core. Other cores were running another load for the night. When I woke up the score was W:40 L:11 D:11 for grafty.

los 40 11 11
Winning fraction: 0.733871
Elo difference: +176.211
p-value: 0.999976

Rank Name          Elo    +    - games score oppo. draws
   1 Grafty-24.1    86   80   80    62   73%   -86   18%
   2 Crafty-24.1   -86   80   80    62   27%    86   18%

Patch, logging and PGN here: http://marcelk.net/chess/grafty/

I will let it finish the 100 game match and update the results. I don't plan more work on it with this program. But this might be a nice method to compare evaluations and I will certainly use it to benchmark my own program.

EDIT: I might have to redo, because there is an error message about not able to find the book file. So the games could be dependent. It is a bit strange, because the openings seem to be played very fast.

EDIT2: False alarm. The complaint it is about "books.bin", but "book.bin" is there, and used.
Parent - By Banned for Life (Gold) Date 2015-04-21 09:23 Upvotes 1
NPS suffers by approximately a factor 200. Very bad. So the next step is to equalise NPS by doing this trick in both versions: only after both evaluations are in, select which one will be used and pass it back to search.

Very clever and unimpeachable!

Then I pitted the frankensteined crafty (renamed as "Grafty", sorry, I couldn't resist given the circumstances)

:yell: Long live Grafty! :lol:
Parent - - By Labyrinth (*****) Date 2015-04-21 10:55
Am I understanding this right? You crudely wired Stockfish's eval into Crafty and the result was +176 Elo?
Parent - - By marcelk (***) Date 2015-04-21 11:50
Yes, roughly. If Hyatt were to integrate SF's evaluation properly into Crafty, it would also cost some NPS, because Crafty's old eval does almost nothing. That negative effect is not shown here. On the other hand, there is something to claw back also (elo-wise, not cycle-wise) by re-tuning the search after the transplant, because otherwise it would still be tuned against Crafty's old eval. All in all, 150-200 elo is the ball park figure.
Parent - - By Banned for Life (Gold) Date 2015-04-21 14:45
Incredible testing effort! A lot of people might have guessed that Crafty's eval would come in second, but I doubt anyone would have anticipated by how much.

Any idea how much more time, percentage wise, the stockfish static eval takes, relative to Crafty's?
Parent - - By Alkelele (****) Date 2015-04-21 15:06
I have little doubt that Bob will soon explain that this is because Stockfish puts things in eval that really should be taken care of by search. This explanation has two benefits:

1) It explains why Stockfish eval is better (because it "cheats" by examining things that should really be handled by search).

2) It explains why Crafty search is worse (because it has to take care of the things that really belongs in search and not in eval, unlike the cheating engine Stockfish).

Ultimately, Bob's blanket idea that "this or that is something search should take care of" is ridiculous, which we quickly see when taken to the extreme: A "proper" eval would just care about stalemate and checkmate, the rest is "tactics" that search should take care of...

On a(nother) serious note, I suspect that Bob has made some kind of split in his mind where "material" is a "real" thing just like checkmate, and that the material count is the "real" eval of a position, while mobility and other softer eval terms are "cheats" and improper "tricks". And hence, ideally we want search to really figure out "for real" what is the resulting "real" material count, unpoluted by "temporary" things like mobility.

He does not understand that this results in an extremely inefficient search tree, and he does not understand that if shallow searches tend to give evals much different than deeper searches, then the eval is pretty much by definition a poor eval. [In accordance with the fact that a purely material eval is indeed a poor eval.]

Generally speaking, Bob simply does not understand what an eval is. He does not understand how search behaves. And he certainly does not understand the total picture.
Parent - By Ugh (*****) Date 2015-04-21 15:40
And he certainly does not understand the total picture.

yes, that's it. all the component parts he has (he can read source code), it's the merging them together into a cohesive whole that's his problem.
Parent - - By marcelk (***) Date 2015-04-21 16:30
I'm most surprised it worked first time. There is a lot of stuff that could have gone wrong but didn't (or did, but didn't do a lot of damage apparently). I don't know the SF eval cost, but it is bounded by its NPS. I did quickly check that there is no search hidden in it. I believe it is clear.

The potential problem with the remaining search gap is that search and eval go hand in hand. A lot of stuff doesn't work well when the eval is working against the grain of the tree. It could even be that at deeper depths / longer time controls the elo gap already widens by itself. But that should all be measured.
Parent - By Alkelele (****) Date 2015-04-21 16:45
What would be interesting to see is whether "poor search behaviour" will be less frequent when the eval is replaced with the Stockfish eval.

For one thing, Bob claimed that observed huge discrepancies in pv-eval over several moves (up to 8) were down to a difference in search. While there may be a (huge) difference in the search trees, I find it very likely that this will often be due to a difference in eval (leading to a radically different search tree quality). So I expect that we can observe the same thing in games between Crafty and Grafty, especially at higher depths.

Another thing that will be interesting to see is whether the Grafty search will seem more stable than the Crafty search.

A third thing: I predict that Grafty will have a lower branching factor than Crafty, due to the better eval leading to a better build of the search tree. [Recall that Bob always only talks about "improving move ordering" in order to lower the branching factor, as if this is independent of having the search guided by a high quality eval.]
Parent - - By Venator (Silver) Date 2015-04-21 14:53
Great test, thanks! Perhaps Bob is finally going to accept the inescapable fact, after seeing these cold and hard figures :lol:

Anyway, it confirms what everybody could see here playing through all the test games that were published: Crafty's eval is clearly worse than Stockfish's.
Parent - - By Fulcrum2000 (****) Date 2015-04-21 14:55
Yes, it's much worse, but if the gap between the programs is indeed 700 ELO it also means crafty looses 500(!) ELO on search compared to SF.
Parent - By Venator (Silver) Date 2015-04-21 15:29
The current gap appears to be near 600 elo, but these gaps are always difficult to measure. In any case, it seems quite safe to conclude that Bob's search is around 350-400 elo worse than the search of team Stockfish.
Parent - - By marcelk (***) Date 2015-04-21 12:06 Edited 2015-04-21 12:09 Upvotes 2
The full 100 game match has just ended:



los 67 17 16 # (W L D)
Winning fraction: 0.75
Elo difference: +190.849
p-value: 1

BayesElo:

Rank Name          Elo    +    - games score oppo. draws
   1 Grafty-24.1    96   65   65   100   75%   -96   16%
   2 Crafty-24.1   -96   65   65   100   25%    96   16%

Data updated: http://marcelk.net/chess/grafty/

This concludes two sub-threads for me:
http://talkchess.com/forum/viewtopic.php?t=53199&topic_view=&start=10
http://rybkaforum.net/cgi-bin/rybkaforum/topic_show.pl?pid=542073#pid542073

Ultimately I hope that this might help guide Crafty's development a bit. It is healthier to have more competition in the top. But as it likely requires a sacrifice in NPS, and an implicit acknowledgement that the qualitative feedback from Jeroen has a lot of merit, those might be mental obstacles to progression. We'll see.
Parent - - By Rebel (****) Date 2015-04-21 15:54 Upvotes 2
Prediction (1) - Not convincing, Crafty eval on par and SF is only better because of superior search.

Prediction (2) - The error bar dummy!

Prediction (3) - Can't be, this is not a job of hours, days, weeks, but months.

Well done Marcel
Parent - - By Venator (Silver) Date 2015-04-21 16:12 Edited 2015-04-21 16:15 Upvotes 2
Prediction (4) - as we speak, Bob is feverously implementing the same setup on his own cluster and will report to us within a few hours it is only 20 elo +/-15 using his own testset :lol:
Parent - - By Banned for Life (Gold) Date 2015-04-21 16:23
It will be 20 Elo +/- 50 Elo to leave open the possibility that Crafty's evaluation is better! :lol:
Parent - - By marcelk (***) Date 2015-04-21 16:39
Possible, but mind that nobody has a monopoly on these test results. I provided all code, logs and background to repeat it. If nobody can reproduce this, then I will take another look. It is always possible I messed up. I did double-check if I didn't swap the names, though. :grin: (But maybe I should have checked it once more?)
Parent - By Banned for Life (Gold) Date 2015-04-21 16:57
I laughed so hard when I saw the name 'Grafty' that I nearly gave myself a coronary! :lol:

It looks like a strong case. As you pointed out, the games show both engines getting the same number of plies, on average, and assuming Crafty hasn't been otherwise crippled, the Stockfish evaluation is clearly outperforming it. I'm guessing that tuning the search to work better with the Stockfish eval would more than compensate for the extra time required for the more robust Stockfish eval, leaving a difference of close to a couple hundred Elo...
Parent - By Venator (Silver) Date 2015-04-21 18:13 Edited 2015-04-21 18:37
Maybe you can do some additional tests, using the same testsets I have been using in the Crafty-Stockfish matches? Then we have some comparable results.

Here are a few of them:



Attachment: ShortlinesTestsuite.pgn (5k)
Attachment: NoomenTestsuite2014.pgn (9k)
Parent - - By Nick (*****) Date 2015-04-21 19:35
This is an excellent piece of work!  Love the name :lol:

I applied the patch ok and managed to compile grafty (had to add BSD support and link with -lbsd on my Ubuntu system, for fgetln to work).  Still, the resulting binary did not work on my system:

nick@3930k:~/data/chess/chess-testing/linux$ valgrind ./grafty
==12304== Memcheck, a memory error detector
==12304== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==12304== Using Valgrind-3.10.0.SVN and LibVEX; rerun with -h for copyright info
==12304== Command: ./grafty
==12304==
unable to open book file [./book.bin].
book is disabled
unable to open book file [./books.bin].

Crafty v24.1 (1 cpus)

White(1): e4
              time used:   3.10
==12304== Conditional jump or move depends on uninitialised value(s)
==12304==    at 0x40CBA6: Evaluate_crafty (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x40CF58: Evaluate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x430FC8: RootMoveList (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x458858: Book (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x451CA9: Iterate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x403A39: main (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==
==12304== Conditional jump or move depends on uninitialised value(s)
==12304==    at 0x40CC03: Evaluate_crafty (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x40CF58: Evaluate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x430FC8: RootMoveList (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x458858: Book (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x451CA9: Iterate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x403A39: main (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==
==12304== Invalid read of size 4
==12304==    at 0x55D8DA0: fwrite (iofwrite.c:41)
==12304==    by 0x40CF7C: Evaluate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x430FC8: RootMoveList (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x458858: Book (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x451CA9: Iterate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x403A39: main (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
==12304==
==12304==
==12304== Process terminating with default action of signal 11 (SIGSEGV)
==12304==  Access not within mapped region at address 0x0
==12304==    at 0x55D8DA0: fwrite (iofwrite.c:41)
==12304==    by 0x40CF7C: Evaluate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x430FC8: RootMoveList (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x458858: Book (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x451CA9: Iterate (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==    by 0x403A39: main (in /home/nick/data/chess/chess-testing/linux/grafty)
==12304==  If you believe this happened as a result of a stack
==12304==  overflow in your program's main thread (unlikely but
==12304==  possible), you can try to increase the size of the
==12304==  main thread stack using the --main-stacksize= flag.
==12304==  The main thread stack size used in this run was 8388608.
==12304==
==12304== HEAP SUMMARY:
==12304==     in use at exit: 98,838,068 bytes in 1,032 blocks
==12304==   total heap usage: 1,114 allocs, 82 frees, 98,855,326 bytes allocated
==12304==
==12304== LEAK SUMMARY:
==12304==    definitely lost: 144 bytes in 1 blocks
==12304==    indirectly lost: 0 bytes in 0 blocks
==12304==      possibly lost: 0 bytes in 0 blocks
==12304==    still reachable: 98,837,924 bytes in 1,031 blocks
==12304==         suppressed: 0 bytes in 0 blocks
==12304== Rerun with --leak-check=full to see details of leaked memory
==12304==
==12304== For counts of detected and suppressed errors, rerun with: -v
==12304== Use --track-origins=yes to see where uninitialised values come from
==12304== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
Segmentation fault (core dumped)
Parent - - By marcelk (***) Date 2015-04-22 09:16 Edited 2015-04-22 09:21
I'm sorry I have no idea why it says this. I used this on the Mac only. Just to be sure I haven't overlooked anything, I re-applied it on a freshly unzipped 24.1. I just get one compile warning:

./evaluate.c:379:9: warning: unused variable 'crafty_value' [-Wunused-variable]
    int crafty_value = Evaluate_crafty(tree, ply, wtm, alpha, beta);
        ^
1 warning generated.


This is what I want of course. The 'go' command runs ok. I don't have a ubuntu box idle right now to try it there. The code looks normal to me. Does it run? This is my output on a small search:

Grafty 24.1 (patched)

White(1): sd 6
search depth set to 6.
White(1): go
        time surplus   0.00  time limit 30.00 (3:00)
        depth     time       score   variation (1)
          6->   0.61/27.00    0.07   1. d4 d5 2. Nf3 Nf6 3. Nc3 Nc6
        time=0.61(100%)  n=11087(11.1K)  fh1=92%  50move=0  nps=18.2K
        ext=47  pruned=415  qchks=390  predicted=0
        LMReductions: 1/380  2/223 
        null searches (R): 3/269 
        splits=0  aborts=0  data=0%  probes=0  hits=0
White(1): d4
              time used:   0.61
note: scores are for the white side
                        +-----------white----------+-----------black----------+
material.......  -0.05  |    comp     mg      eg   |    comp     mg      eg   |
pawns..........   0.21  |    0.09    0.09    0.37  |    0.12    0.12   -0.20  |
passed pawns...   0.00  |    0.00    0.00    0.00  |    0.00    0.00    0.00  |
knights........   0.00  |   -0.58   -0.58   -0.58  |    0.58    0.58    0.58  |
bishops........   0.14  |    0.00    0.00    0.36  |    0.14    0.14   -0.22  |
rooks..........   0.00  |   -0.38   -0.38   -0.38  |    0.38    0.38    0.38  |
queens.........   0.00  |    0.00    0.00    0.00  |    0.00    0.00    0.00  |
kings..........   0.00  |   -0.45   -0.45   -0.40  |    0.45    0.45    0.40  |
development....   0.00  |   -0.60   -0.60    0.00  |    0.60    0.60    0.00  |
pawn races.....   0.00  +--------------------------+--------------------------+
total..........   0.80


For reference: Crafty 24.1 (unmodified)

White(1): sd 6
search depth set to 6.
White(1): go
        time surplus   0.00  time limit 30.00 (3:00)
        depth     time       score   variation (1)
          6->   0.01/27.00    0.05   1. Nf3 Nc6 2. Nc3 Nf6 3. e3 d6
        time=0.01(100%)  n=6700(6.7K)  fh1=96%  50move=0  nps=670.0K
        ext=4  pruned=139  qchks=52  predicted=0
        LMReductions: 1/258  2/193 
        null searches (R): 3/222 
        splits=0  aborts=0  data=0%  probes=0  hits=0
White(1): Nf3
              time used:   0.01
note: scores are for the white side
                        +-----------white----------+-----------black----------+
material.......  -0.05  |    comp     mg      eg   |    comp     mg      eg   |
pawns..........   0.00  |   -0.12   -0.12    0.20  |    0.12    0.12   -0.20  |
passed pawns...   0.00  |    0.00    0.00    0.00  |    0.00    0.00    0.00  |
knights........   0.48  |   -0.10   -0.10   -0.10  |    0.58    0.58    0.58  |
bishops........   0.00  |   -0.14   -0.14    0.22  |    0.14    0.14   -0.22  |
rooks..........   0.10  |   -0.28   -0.28   -0.28  |    0.38    0.38    0.38  |
queens.........   0.00  |    0.00    0.00    0.00  |    0.00    0.00    0.00  |
kings..........   0.00  |   -0.45   -0.45   -0.40  |    0.45    0.45    0.40  |
development....   0.00  |   -0.60   -0.60    0.00  |    0.60    0.60    0.00  |
pawn races.....   0.00  +--------------------------+--------------------------+
total..........   0.53
Black(1): Nc6 [pondering]
        time surplus  29.99  time limit 30.50 (3:03)
        depth     time       score   variation (5)
          6->   0.00/36.60    0.40   2. e3 e6 3. Bd3 Nf6 4. O-O Bd6
        time=0.00(100%)  n=9201(9.2K)  fh1=90%  50move=1  nps=920.1K
        ext=10  pruned=303  qchks=81  predicted=0
        LMReductions: 1/771  2/193  3/1 
        null searches (R): 3/282 
        splits=0  aborts=0  data=0%  probes=0  hits=0


EDIT: what might be the case is that if you don't have "stockfish" in your PATH, the code goes wrong. There is no error checking or recovery of any kind in the patch. Second: I don't know if on Linux popen supports bidirectional pipes. (The "r+" flag to popen). I don't see that in the Linux manpage, and this is important.
Parent - - By Nick (*****) Date 2015-04-22 09:46

> (The "r+" flag to popen). I don't see that in the Linux manpage, and this is important.


Thanks for your reply Marcel, indeed there seems no "r+" for popen on my Linux.  With mode "r+" I get a null pointer to sf, but with "r" (and "w") I do get a valid handle and stockfish starts.  However, with "r" I get an error when grafty tries to touch the output from Stockfish (this line of code: printf("Line is %c", line); ).

If I set the mode to "w", grafty does get the first eval back from Stockfish and then a segfault.  Linux does support bi-directional pipes but perhaps not with popen.  On Linux, might the call to popen need to be replaced with the full fork/dup/dup2? I didn't realize BSD was so good. My daughter won't let me on her Apple Mac :grin:
Parent - By marcelk (***) Date 2015-04-22 09:55
Ok, that must be it then. I wasn't aware of the existence of "r+" until this week. Normally I use the long route indeed (pipe/fork/dup2/execv etc etc etc), but this seemed like a nice shortcut. Just one + more :-)
Parent - - By APassionforCriminalJustice (***) Date 2015-04-21 17:39 Edited 2015-04-21 17:42
He can refute what he wants. Facts are facts. But anybody with any sort of intelligence can understand that it is never just one thing that truly makes something better; it is the cohesive whole, the synergy that makes things tick. Should nearly 200 ELO with the evaluation function alone be this surprising? This entire nonsense by Bob that the search is the only facto in Stockfish's strength over his engine is pretty sad coming from someone who should understand engines better than almost anyone.

It would be very interesting to see where Komodo’s evaluation function would stand given that it is considered to be the strongest out there.
Parent - - By Banned for Life (Gold) Date 2015-04-21 18:00
I don't think Larry will be excited about helping to create Grafty+! :lol:
Parent - - By APassionforCriminalJustice (***) Date 2015-04-21 18:39
Probably not. Hahahahahahaha. But I can seem him thinking it to be an interesting idea.
Parent - - By Banned for Life (Gold) Date 2015-04-21 19:51
Actually, come to think of it, it doesn't matter if Larry likes the idea or not. If Komodo has a UCI eval command with a FEN argument, it should be possible to do a graftyK with it. I suspect that this would be significantly stronger than the current grafty (based on Larry's use of computer like heuristics for his own play).
Parent - - By APassionforCriminalJustice (***) Date 2015-04-21 20:15
That would be really cool. I do not remember if Komodo in fact has a UCI eval command. It would be awesome if someone savvy in this stuff could figure it out - of course if possible.
Parent - - By Banned for Life (Gold) Date 2015-04-21 20:32
I don't own K8. Run K8 from the console and type in uci and return. All the supported uci commands should be listed. Look for something that might be static eval...
Parent - - By Alkelele (****) Date 2015-04-21 20:37
This is impossible. It will take months to complete.
Parent - - By Banned for Life (Gold) Date 2015-04-21 20:41
:lol:
Parent - By APassionforCriminalJustice (***) Date 2015-04-21 20:51
I will take a look when I get back to the PC. Hahahahahahaha.
Parent - - By Nick (*****) Date 2015-04-21 20:53
You had a pretty cool idea.  I don't see anything in Komodo's UCI options to help, but then again the "eval" command is not listed in response to Stockfish's UCI command (and no reply to "eval" from komodo).
Parent - By Banned for Life (Gold) Date 2015-04-21 21:08
but then again the "eval" command is not listed in response to Stockfish's UCI command

Wow, you're right! There are a number of uci functions that were added to facilitate debug that are not in the list:

      else if (token == "flip")       pos.flip();
      else if (token == "bench")      benchmark(pos, is);
      else if (token == "d")          sync_cout << pos << sync_endl;
      else if (token == "eval")       sync_cout << Eval::trace(pos) << sync_endl;
      else if (token == "perft")

"d" provides the FEN for the current position along with its hash key.
"perft" gives legal moves.
Parent - By Banned for Life (Gold) Date 2015-04-21 20:47
As an aside, many people have noted that one of the main reasons that Larry is so good with generating rule based evaluations (rather than pattern based evaluations favored by most people), is that his pattern recognition skills are just awful. Larry has related that when he leaves the board during a game to use the restroom, he doesn't recognize his opponent when he returns...

Personally, I'd like to see people take another look at using neural networks to do both static eval and q-search. There are GPL software packages available for the NN code and to facilitate NN training (I've used FANN and there are many others). I think the NN could easily do a better job than the rule based static eval heuristics that are ubiquitous in current engines, but it would be substantially slower. This might be OK though if the NN also did a good job with q-search (which I believe is very possible).
- By Banned for Life (Gold) Date 2015-04-21 09:00
Let's take a look! :lol:

OK, max text length exceeded. So only the first games...

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "1"]
[White "Grafty-24.1"]
[Black "Crafty-24.1"]
[Result "1/2-1/2"]
[TimeControl "120+1"]
[Annotator "11. +0.01   11... -0.01"]

1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8.
c3 O-O 9. h3 Bb7 10. d4 Re8 11. Ng5 {+0.01/9 8} Rf8 {-0.01/8 3} 12. Nf3
{+0.01/10 4} Re8 13. Ng5 {+0.01/11 21} Rf8 {-0.01/11 6} 14. Nf3
{+0.01/11 6}
{Drawn by 3-fold repetition} 1/2-1/2

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "2"]
[White "Crafty-24.1"]
[Black "Grafty-24.1"]
[Result "1/2-1/2"]
[TimeControl "120+1"]
[Annotator "11. +0.32   11... +0.38"]

1. Nf3 Nf6 2. g3 g6 3. Bg2 Bg7 4. O-O O-O 5. c4 d6 6. d4 Nc6 7. Nc3 a6 8.
b3 Rb8 9. Bb2 b5 10. cxb5 axb5 11. d5 {+0.32/7 4} Na7 {+0.38/8 7} 12. a4
{+0.37/8 21} b4 {-0.19/9 4} 13. Na2 {+0.20/9 5} c5 {-0.07/9 4} 14. dxc6
{+0.57/9 5} Nxc6 {-0.06/8 3} 15. Rc1 {+0.54/8 2.8} Bd7 {-0.14/7 3} 16. e3
{+0.44/7 5} Na5 {-0.03/8 6} 17. Ng5 {+0.56/7 3} e6 {+0.05/8 9} 18. Qd3
{+0.75/6 2.6} e5 {+0.08/7 3} 19. Rfd1 {+0.84/6 3} h6 {-0.20/8 8} 20. Ne4
{+0.59/8 3} Bf5 {-0.09/8 6} 21. Nxf6+ {+0.93/8 2.6} Bxf6 {+0.17/9 6} 22.
Qa6 {+0.78/9 4} Be7 {+0.21/9 4} 23. Bd5 {+0.78/8 2.4} Bf6 {+0.25/9 9} 24.
Rd2 {+1.02/8 7} Re8 {+0.12/8 3} 25. Qe2 {+0.80/8 6} Qb6 {+0.17/8 8} 26. e4
{+0.82/8 2.6} Be6 {+0.17/8 2.0} 27. Bxe6 {+0.68/9 5} Rxe6 {+0.23/8 1.9} 28.
Rd3 {+0.69/8 2.1} h5 {+0.20/8 5} 29. Qd2 {+0.83/8 6} Qb7 {+0.26/7 6} 30. f3
{+0.83/6 2.6} Ree8 {+0.20/7 3} 31. Kg2 {+0.92/7 5} Red8 {+0.24/6 1.6} 32.
Kf1 {+0.81/6 5} Kg7 {+0.17/8 13} 33. Ba1 {+0.63/7 13} Qb6 {-0.11/7 2.8} 34.
Kg2 {+0.64/7 1.5} h4 {-0.26/7 1.5} 35. Bb2 {+0.80/6 1.2} Rh8 {-0.16/7 1.4}
36. gxh4 {+0.85/7 1.3} Be7 {-0.18/8 2.4} 37. f4 {+0.85/6 1.2} Bf6
{+0.16/5 2.8} 38. Rxd6 {+0.91/5 4} Nxb3 {+0.97/6 3} 39. Rxb6 {+1.49/7 2.2}
Nxd2 {+1.19/7 1.3} 40. Rxf6 {+1.52/7 1.3} Kxf6 {+1.40/7 1.6} 41. Bxe5+
{+1.79/7 1.1} Ke6 {+1.45/8 1.1} 42. Rc6+ {+1.79/7 1.2} Ke7 {+1.01/6 1.6}
43. Rc7+ {+1.49/7 3} Ke6 {+1.03/8 1.4} 44. Nxb4 {+1.38/8 2.5} Rhc8
{+0.48/8 1.7} 45. Na6 {+1.33/9 1.6} Rxc7 {+0.26/8 1.0} 46. Nxc7+
{+1.34/8 1.0} Kd7 {+0.14/9 1.0} 47. Nd5 {+1.24/8 1.0} Rb3 {+0.03/8 2.2} 48.
h5 {+1.00/9 3} gxh5 {-0.23/8 1.1} 49. Nf6+ {+1.00/7 2.6} Kc6 {-0.19/8 1.3}
50. h4 {+0.15/8 5} Ra3 {-0.77/8 1.0} 51. a5 {+0.14/8 1.4} Rxa5
{-0.67/8 2.4} 52. Kf2 {+0.01/7 1.5} Ra4 {-0.89/7 1.0} 53. Ke3 {+0.11/8 0.8}
Nc4+ {-0.88/6 1.0} 54. Kd4 {+0.11/7 0.8} Nd6+ {-0.86/8 2.4} 55. Kd3
{+0.01/8 0.8} Ra3+ {-0.78/8 0.9} 56. Kd4 {-0.06/8 1.8} Rh3 {-0.67/9 0.9}
57. Nxh5 {+0.01/9 1.2} Rxh4 {-0.67/8 1.7} 58. Nf6 {+0.04/7 0.8} Rh1
{-0.65/8 1.9} 59. Ke3 {-0.09/7 1.7} Rh3+ {-0.62/7 1.4} 60. Kd4
{+0.01/9 0.8} Ra3 {-0.69/7 1.2} 61. Bxd6 {+0.01/9 0.9} Kxd6 {-0.69/8 0.9}
62. e5+ {+0.01/8 0.9} Ke6 {-0.72/7 0.9} 63. Ke4 {+0.00/9 1.3} Ra4+
{-0.79/9 0.9} 64. Kf3 {+0.00/9 1.0} Kf5 {-0.77/10 0.9} 65. Nd5
{-0.17/9 1.1} Ra3+ {-0.77/10 1.9} 66. Ne3+ {-0.03/10 0.8} Ke6
{-0.77/13 0.9} 67. Ke4 {+0.00/9 0.8} Ra4+ {-0.77/12 0.9} 68. Kf3
{+0.00/10 0.8} Rb4 {-0.77/11 1.0} 69. Kg4 {+0.00/8 0.9} Rb1 {-0.66/7 1.0}
70. Kg5 {+0.01/8 1.2} Rb8 {-0.77/7 3} 71. Ng4 {+0.01/11 1.3} Rg8+
{-1.11/7 0.9} 72. Kh5 {+0.01/10 0.8} Rg6 {-1.00/9 2.1} 73. Ne3
{+0.01/9 0.8} Rg3 {-1.00/9 1.8} 74. Ng4 {-0.02/9 0.9} Kd5 {-0.85/9 2.1} 75.
Nh6 {+0.01/9 2.0} Rg7 {-0.79/9 0.9} 76. Nf5 {+0.01/10 0.8} Rg1
{-0.84/8 0.8} 77. Nh6 {+0.01/10 1.2} Ke6 {-0.89/8 0.8} 78. Kh4
{-0.19/11 1.7} Rg7 {-0.86/9 2.3} 79. Kh5 {-0.20/11 1.0} Rg2 {-0.79/9 1.8}
80. Ng4 {+0.01/10 0.8} Rg1 {-0.61/9 2.4} 81. Kg5 {+0.01/15 0.9} Rf1
{-0.65/8 1.0} 82. Nf6 {+0.01/16 0.9} Ra1 {-0.77/8 0.6} 83. Ne4
{+0.01/9 1.3} Rg1+ {-0.90/7 1.5} 84. Kh4 {+0.01/10 1.0} Rg7 {-0.53/9 1.3}
85. Kh3 {+0.01/8 1.1} Kd5 {-0.69/8 1.8} 86. Nd6 {+0.01/9 1.4} Kc6
{-0.55/7 0.6} 87. Nf5 {+0.15/8 2.2} Rh7+ {-0.36/6 0.6} 88. Kg4
{+0.28/7 0.6} Kd7 {-0.42/8 1.0} 89. Kg5 {+0.40/9 0.7} Ke6 {-0.31/7 0.6} 90.
Nd4+ {+0.22/8 1.1} Kd5 {-0.10/8 1.4} 91. Nb5 {+0.30/8 0.9} Rg7+
{-0.21/7 1.8} 92. Kf5 {+0.34/9 1.8} Rg8 {-0.01/8 1.0} 93. Nd6 {+1.09/9 1.3}
Rg7 {-0.01/9 0.6} 94. Kf6 {+0.65/10 0.9} Rg6+ {-0.01/9 0.5} 95. Kxf7
{+0.68/10 0.8} Rg4 {-0.02/7 0.6} 96. Ke7 {+0.01/11 0.8} Rxf4 {-0.11/8 0.6}
97. e6 {+0.01/10 0.6} Ra4 {-0.10/7 0.6} 98. Nb5 {+0.42/8 1.3} Rb4
{-0.09/7 1.9} 99. Nc7+ {+0.01/9 0.7} Kc6 {-0.09/7 1.5} 100. Ne8
{+0.01/11 0.7} Re4 {-0.07/8 1.3} 101. Nd6 {+0.01/11 0.8} Re1 {-0.07/5 0.6}
102. Nf5 {+0.01/11 0.7} Kd5 {-0.09/7 0.8} 103. Ng7 {+0.01/12 0.7} Re2
{-0.07/7 1.2} 104. Kf6 {+0.01/12 0.8} Rf2+ {-0.07/8 1.4} 105. Kg6
{+0.01/11 0.8} Kd6 {-0.21/7 0.4} 106. Kh5 {+0.01/10 1.2} Ke7 {-0.31/9 1.6}
107. Kh4 {-0.20/9 1.8} Rh2+ {-0.25/8 0.5} 108. Kg3 {-0.20/11 1.2} Rh7
{-0.25/9 0.7} 109. Nf5+ {-0.20/10 0.7} Kxe6 {-0.25/9 0.7} 110. Kg4
{-0.20/9 0.8} Ke5 {-0.21/7 0.8} 111. Nh4 {-0.19/8 0.8} Rg7+ {-0.25/7 0.6}
112. Kf3 {-0.19/7 0.8} Rg1 {-0.25/7 0.6} 113. Ke3 {-0.19/9 1.3} Rg3+
{-0.25/9 1.8} 114. Ke2 {-0.20/10 1.0} Ke4 {-0.31/10 1.5} 115. Kf2
{-0.20/10 0.8} Rd3 {-0.27/10 0.6} 116. Ke2 {-0.20/12 0.8} Ra3
{-0.27/10 0.6} 117. Kf2 {-0.20/11 0.8} Ra2+ {-0.27/11 0.6} 118. Kg3
{-0.20/12 0.8} Ra8 {-0.27/12 0.6} 119. Ng2 {-0.20/11 0.8} Rf8
{-0.27/12 0.7} 120. Nh4 {-0.20/12 0.8} Rg8+ {-0.27/13 0.7} 121. Kf2
{-0.20/14 0.8} Rg5 {-0.27/13 0.7} 122. Ng2 {-0.20/13 0.8} Ra5
{-0.29/14 0.7} 123. Nh4 {-0.20/12 0.8} Rc5 {-0.27/12 1.0} 124. Ng2
{-0.20/11 1.2} Rc2+ {-0.27/12 0.8} 125. Kg3 {-0.20/14 0.8} Rc3+
{-0.29/12 0.8} 126. Kg4 {-0.20/15 0.8} Rc7 {-0.29/15 0.8} 127. Kg3
{-0.20/14 0.8} Rf7 {-0.29/15 0.8} 128. Nh4 {-0.20/13 0.8} Rf8
{-0.29/14 0.8} 129. Ng2 {-0.20/14 0.8} Rf3+ {-0.29/16 0.8} 130. Kg4
{-0.20/17 0.8} Rf1 {-0.29/16 0.8} 131. Kg3 {-0.20/14 0.8} Rf5
{-0.29/14 0.9} 132. Kg4 {-0.20/17 0.8} Rf7 {-0.29/17 0.8} 133. Kg3
{-0.20/15 1.5} Rf6 {-0.27/16 4} 134. Nh4 {-0.20/11 0.8} Rf4 {-0.27/14 0.8}
135. Ng2 {-0.20/15 0.8} Rf1 {-0.27/13 0.7} 136. Kg4 {-0.20/16 0.8} Rf3
{-0.27/15 0.9} 137. Nh4 {-0.19/12 0.8} Rf4+ {-0.27/15 0.7} 138. Kg5
{-0.19/13 0.8} Rf1 {-0.27/17 0.8} 139. Ng6 {-0.19/12 0.8} Rf5+
{-0.27/16 0.8} 140. Kg4 {-0.19/14 0.8} Rf7 {-0.23/16 3} 141. Kg5
{-0.19/14 0.9} Rf1 {-0.23/11 0.6} 142. Ne7 {-0.19/12 0.9} Rf2
{-0.23/12 1.4} 143. Ng6 {-0.19/13 0.9} Rf3 {-0.23/13 0.7} 144. Nh8
{-0.19/12 0.9} Rf5+ {-0.29/7 1.2} 145. Kg4 {-0.19/13 0.9} Rf2
{-0.23/11 2.0} 146. Kg5 {-0.19/11 0.9} Rg2+ {-0.23/12 0.6} 147. Kf6
{-0.19/11 0.9} Rb2 {-0.23/12 0.6} 148. Nf7 {-0.19/8 1.0} Kd5 {-0.25/8 1.8}
149. Nh6 {-0.20/9 0.9} Rf2+ {-0.29/7 1.3} 150. Kg5 {-0.20/8 0.9} Ke6
{-0.29/9 0.7} 151. Ng4 {-0.20/8 0.9} Rf5+ {-0.29/9 0.7} 152. Kg6
{-0.20/9 0.9} Rb5 {-0.29/8 0.8} 153. Nf6 {-0.20/8 1.0} Rb1 {-0.25/10 1.4}
154. Kg5 {-0.19/9 0.9} Rg1+ {-0.25/11 0.7} 155. Ng4 {-0.19/11 0.9} Rf1
{-0.25/10 0.7} 156. Ne3 {-0.02/10 0.9} Rb1 {-0.08/11 1.6} 157. Kf4
{+0.01/14 0.9} Rc1 {-0.07/13 2.0} 158. Ng4 {+0.01/18 0.9} Rc4+
{-0.07/13 0.7} 159. Kf3 {+0.01/20 0.9} Rxg4 {-0.01/14 0.5} 160. Kxg4
{+0.01/24 0.9}
{Xboard adjudication: Insufficient mating material} 1/2-1/2

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "3"]
[White "Grafty-24.1"]
[Black "Crafty-24.1"]
[Result "1-0"]
[TimeControl "120+1"]
[Annotator "8. +0.21   8... -0.05"]

1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. f4 Nbd7 7. a4 g6 8.
h3 {+0.21/7 12} Nc5 {-0.05/9 7} 9. Bd3 {-0.07/8 7} Bg7 {-0.05/8 8} 10. O-O
{-0.06/7 5} e5 {-0.18/9 5} 11. Nde2 {-0.02/8 14} O-O {-0.21/7 3} 12. Be3
{+0.12/7 2.7} Qa5 {-0.36/7 7} 13. Rb1 {+0.00/7 5} Nxa4 {-0.51/6 2.8} 14.
Nxa4 {-0.28/9 12} Qxa4 {-0.78/8 3} 15. c4 {-0.33/8 5} Qc6 {-0.73/9 7} 16.
fxe5 {+0.21/9 3} dxe5 {-0.64/10 5} 17. Nc3 {+0.26/9 3} Bd7 {-0.52/9 7} 18.
Nd5 {+0.28/7 2.4} Rfe8 {-0.45/8 5} 19. Qf3 {+0.87/6 2.1} Re6 {+1.15/8 5}
20. Bg5 {+1.84/8 4} Nh5 {+0.69/8 6} 21. Qxf7+ {+0.76/8 6} Kh8 {+0.69/2 0.6}
22. Qf2 {+0.92/9 2.0} Rf8 {+0.71/7 5} 23. Qe3 {+0.83/8 2.0} Rxf1+
{+0.82/8 8} 24. Rxf1 {+1.00/8 1.8} Nf4 {+0.96/8 2.4} 25. b4 {+1.05/8 3}
Nxd3 {+0.55/7 1.9} 26. Qxd3 {+1.01/7 2.0} Be8 {+0.59/8 4} 27. Kh2
{+1.03/7 7} b6 {+0.49/8 3} 28. Qc3 {+1.07/7 5} Qd6 {+0.64/7 4} 29. Ra1
{+1.54/8 2.2} h6 {+1.08/9 6} 30. Be3 {+1.42/9 5} b5 {+1.05/9 1.5} 31. c5
{+1.36/8 1.9} Qc6 {+0.99/8 1.5} 32. h4 {+1.43/8 4} h5 {+1.19/9 4} 33. Rf1
{+1.53/8 2.7} Kh7 {+1.12/9 6} 34. Bg5 {+1.50/8 3} Kh8 {+1.23/8 2.3} 35. Kg1
{+1.59/8 3} Qb7 {+1.18/8 6} 36. Qh3 {+1.61/7 3} Qd7 {+1.16/7 2.6} 37. Qe3
{+1.61/8 3} Qb7 {+1.41/8 2.7} 38. Qb3 {+1.64/7 2.2} Bf7 {+1.25/9 2.3} 39.
Qg3 {+1.50/8 3} Be8 {+1.50/7 2.3} 40. Bf6 {+1.78/7 1.2} Kh7 {+1.74/8 2.2}
41. Bxg7 {+1.63/7 0.9} Qxg7 {+1.51/8 1.0} 42. Rf2 {+1.69/7 3} Bc6
{+1.52/9 2.2} 43. Qg5 {+1.65/7 2.6} Kh8 {+2.06/8 1.4} 44. Rf3 {+1.89/7 0.8}
Bd7 {+2.06/9 2.2} 45. Kf2 {+1.85/7 2.5} Bc6 {+1.60/8 0.9} 46. Rg3
{+1.68/8 4} Qf8+ {+1.38/7 3} 47. Kg1 {+1.67/7 0.9} Qg7 {+1.45/7 1.3} 48.
Ra3 {+1.69/7 1.3} Be8 {+1.56/7 2.8} 49. Qd8 {+1.87/7 0.9} Qd7 {+1.51/8 1.1}
50. Qa8 {+1.86/9 2.0} Qc6 {+1.38/8 0.9} 51. Qb8 {+1.91/8 0.6} Kg8
{+1.61/8 2.0} 52. Qd8 {+2.38/8 1.9} Qd7 {+2.57/8 2.4} 53. Nf6+
{+3.29/7 0.9} Rxf6 {+2.57/8 0.8} 54. Qxf6 {+3.42/7 0.6} Qd4+ {+2.83/7 1.5}
55. Kh2 {+3.97/6 1.3} Qxb4 {+2.53/7 1.9} 56. Rf3 {+5.30/6 1.2} Qxe4
{+9.60/7 1.9} 57. Qe6+ {+9.58/8 1.0} Kh7 {+12.10/9 1.6} 58. Qe7+
{+9.97/9 0.6} Kh6 {+13.19/8 1.0} 59. c6 {+5.85/6 1.3} Qxc6 {+8.01/7 1.4}
60. Qxe5 {+3.96/6 0.7} Qb7 {+8.21/6 1.4} 61. Qxe8 {+4.48/6 0.8} Qc7+
{+4.65/5 0.6} 62. g3 {+8.44/7 1.1} Qg7 {+9.64/8 1.6} 63. Rf7 {+9.09/7 0.9}
Qb2+ {+9.67/7 0.6} 64. Kh3 {+9.23/7 0.9} Qg7 {+11.36/7 0.7} 65. Rxg7
{+9.97/7 0.9} Kxg7 {+11.36/7 0.7} 66. Qe7+ {+10.00/6 0.7} Kg8
{+11.49/7 1.2} 67. Qf6 {+10.64/5 1.1} g5 {+12.12/5 1.3} 68. Qxg5+
{+10.81/4 0.9} Kf7 {+12.43/5 0.6} 69. Qxh5+ {+11.02/4 0.8} Kg7
{+12.77/5 1.0} 70. Qe5+ {+50.84/6 1.8} Kf7 {+14.44/6 0.9} 71. Kg4
{+50.88/7 2.4} Kg8 {+14.69/5 1.4} 72. Qe6+ {+51.03/5 1.1} Kg7
{+14.88/6 0.9} 73. Qe7+ {+327.58/6 0.7} Kg8 {+14.67/6 1.0} 74. h5
{+327.62/7 1.3} Kh8 {+327.63/7 0.7} 75. h6 {+327.64/7 1.0} a5
{+327.65/7 0.6} 76. Qg7# {+327.66/5 0.5}
{Xboard adjudication: Checkmate} 1-0

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "4"]
[White "Crafty-24.1"]
[Black "Grafty-24.1"]
[Result "0-1"]
[TimeControl "120+1"]
[Annotator "11. +0.28   11... +0.24"]

1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. e3 O-O 5. Bd3 c5 6. Nf3 d5 7. O-O cxd4 8.
exd4 dxc4 9. Bxc4 b6 10. Bg5 Bb7 11. Rc1 {+0.28/7 10} Nbd7 {+0.24/7 8} 12.
g3 {+0.09/6 15} Rc8 {-0.45/7 9} 13. Bd3 {+0.08/5 3} h6 {-0.45/7 3} 14. Bf4
{-0.07/7 5} Nd5 {-0.42/7 7} 15. Bd2 {-0.10/7 3} Be7 {-0.38/7 4} 16. a3
{-0.09/7 5} Nxc3 {-0.24/8 5} 17. Rxc3 {-0.09/8 2.9} Rxc3 {-0.60/8 2.9} 18.
Bxc3 {-0.38/9 4} Qc7 {-0.60/8 3} 19. Bd2 {-0.32/8 5} Qc6 {-0.95/9 2.8} 20.
Kg2 {-0.62/8 5} Rc8 {-1.13/8 4} 21. Re1 {-0.63/8 4} Nf6 {-1.00/7 2.7} 22.
Qe2 {-0.73/9 5} Qd5 {-1.29/8 4} 23. Ba6 {-0.56/10 4} Rc2 {-0.95/9 2.6} 24.
Bxb7 {-0.73/9 2.6} Qxb7 {-0.83/10 2.6} 25. b4 {-0.68/9 2.2} a5 {-0.84/10 7}
26. Qd3 {-0.35/8 2.3} Ra2 {-0.79/10 4} 27. Rc1 {-0.53/9 6} Ne4 {-1.01/8 6}
28. Rc2 {-0.47/8 2.1} Ra1 {-0.77/9 8} 29. Bf4 {-0.54/7 4} Qa8 {-0.86/9 13}
30. Rc7 {-0.36/7 4} Bf8 {-0.93/8 2.5} 31. Qc4 {-0.75/7 14} axb4 {-1.13/8 6}
32. axb4 {+0.03/6 2.2} Qa2 {-1.14/8 1.6} 33. Be3 {-0.14/7 1.8} Qb1
{-1.28/8 2.2} 34. Ne5 {+0.17/6 1.9} Nd6 {-2.03/8 1.8} 35. Qc6 {-0.17/6 3}
Qf1+ {-1.86/7 5} 36. Kf3 {+0.69/2 0.5} Qh1+ {-2.12/7 4} 37. Kg4 {-0.85/6 4}
Qxh2 {-3.11/7 1.5} 38. Nd3 {-1.65/6 4} g6 {-5.15/8 4} 39. Bc1 {-3.16/7 4}
Qh5+ {-5.97/7 1.6} 40. Kf4 {-3.16/2 0.6} Qe2 {-6.53/7 4} 41. g4 {-6.29/7 4}
Qxd3 {-7.11/7 1.4} 42. Be3 {-7.13/8 2.5} g5+ {-7.98/7 5} 43. Kg3
{-7.50/8 2.4} Ne4+ {-9.53/7 1.2} 44. Kf3 {-7.61/6 1.6} Nd2+ {-11.56/8 1.7}
45. Kg3 {-9.62/7 2.7} Nf1+ {-11.90/6 1.7} 46. Kh3 {-12.67/7 2.3} Nxe3
{-12.43/7 1.0} 47. Rc8 {-14.26/7 2.0} Nxg4+ {-327.54/8 3} 48. Kg2
{-327.55/6 1.5} Qf1+ {-327.56/6 1.1} 49. Kg3 {-327.57/6 1.1} Qxf2+
{-327.58/6 1.3} 50. Kh3 {-327.59/6 1.3} Qh4+ {-327.60/6 3} 51. Kg2
{-327.61/2 0.7} Qh1+ {-327.62/6 4} 52. Kg3 {-327.63/2 0.6} Rg1+
{-327.64/5 1.1} 53. Qg2 {-327.65/2 0.6} Qxg2# {-327.66/5 0.9}
{Xboard adjudication: Checkmate} 0-1

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "5"]
[White "Grafty-24.1"]
[Black "Crafty-24.1"]
[Result "0-1"]
[TimeControl "120+1"]
[Annotator "11. +0.15   11... -0.08"]

1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Nxe4 6. d4 b5 7. Bb3 d5 8.
dxe5 Be6 9. c3 Bc5 10. Nbd2 O-O 11. Bc2 {+0.15/9 16} Bf5 {-0.08/8 8} 12.
Nb3 {+0.12/9 5} Bb6 {-0.05/8 3} 13. Nbd4 {+0.16/7 4} Nxd4 {-0.06/7 4} 14.
Nxd4 {+0.27/7 4} Bg6 {+0.31/8 5} 15. Be3 {-0.01/8 7} Re8 {-0.01/7 8} 16. f3
{-0.07/7 6} Nd6 {-0.10/8 4} 17. Bxg6 {-0.07/7 2.7} hxg6 {-0.09/8 2.9} 18.
exd6 {-0.14/8 4} Rxe3 {-0.08/8 3} 19. a4 {-0.25/8 8} cxd6 {-0.67/8 9} 20.
Qd2 {-0.26/8 2.7} Re7 {-0.48/8 10} 21. Rf2 {-0.18/8 5} Qe8 {-0.84/8 5} 22.
a5 {-0.46/9 4} Bc5 {-0.97/8 2.4} 23. Rd1 {-0.47/9 12} Rc8 {-0.92/9 2.9} 24.
h3 {-0.52/8 2.0} Re3 {-1.17/7 2.2} 25. Kf1 {-0.58/9 14} Qe7 {-1.41/8 7} 26.
Kg1 {-0.67/7 1.6} Qe5 {-1.37/7 2.5} 27. f4 {-0.80/8 7} Qe8 {-1.47/7 5} 28.
Kh2 {-0.80/8 2.5} Re4 {-1.44/8 4} 29. Re2 {-0.73/8 1.4} Rc7 {-1.40/8 5} 30.
Rde1 {-0.46/7 2.6} Rce7 {-1.40/8 1.8} 31. Kg3 {-0.47/8 1.5} Kh7 {-1.45/8 3}
32. b4 {-0.57/8 2.4} Bxd4 {-1.66/10 3} 33. Rxe4 {-1.59/10 2.0} Rxe4
{-1.92/11 1.6} 34. Rxe4 {-1.65/9 1.3} dxe4 {-2.13/11 1.6} 35. cxd4
{-1.75/11 2.2} e3 {-2.45/9 1.7} 36. Qe2 {-1.80/10 1.2} Qe4 {-2.63/9 1.9}
37. d5 {-1.83/10 4} Qxb4 {-2.71/8 1.5} 38. Qxe3 {-2.09/9 4} Qxa5
{-2.89/8 1.5} 39. Qe8 {-2.40/8 7} Qc3+ {-3.22/9 3} 40. Kh2 {-2.49/8 1.3}
Qf6 {-3.33/9 1.9} 41. Kg3 {-2.59/8 1.8} b4 {-3.49/7 1.8} 42. Qb8
{-3.01/8 4} Qc3+ {-4.80/7 4} 43. Kf2 {-4.44/8 4} b3 {-6.41/6 4} 44. Qd8
{-6.10/5 3} Qd2+ {-11.11/7 2.6} 45. Kf3 {-5.29/6 1.1} Qd1+ {-11.73/7 2.7}
46. Kf2 {-10.16/7 1.8} b2 {-12.11/7 1.6} 47. Qh4+ {-11.12/7 1.2} Qh5
{-12.96/7 1.2} 48. Qxh5+ {-11.38/7 1.0} gxh5 {-13.41/7 1.2} 49. g4
{-11.43/6 1.2} b1=Q {-13.57/7 1.2} 50. Ke3 {-11.64/5 0.9} Qc1+
{-14.12/7 2.1} 51. Ke4 {-12.49/6 1.1} Qc4+ {-14.44/6 1.8} 52. Ke3
{-12.16/6 1.0} Kg6 {-14.96/8 6} 53. Kf3 {-12.37/5 1.2} Qxd5+ {-15.24/5 1.0}
54. Ke3 {-12.83/5 1.7} a5 {-15.56/7 2.8} 55. Kf2 {-13.22/5 1.0} a4
{-18.58/6 4} 56. gxh5+ {-13.81/5 0.9} Qxh5 {-20.12/6 4} 57. Ke3
{-14.18/4 0.6} a3 {-24.06/5 1.3} 58. Kf2 {-52.92/6 1.4} a2 {-25.92/5 0.8}
59. Kg3 {-327.59/6 0.5} a1=Q {-327.60/6 0.8} 60. Kf2 {-327.61/5 1.1} Qd4+
{-327.62/4 2.1} 61. Kg2 {-327.63/5 0.8} Qe2+ {-327.64/5 1.3} 62. Kg3
{-327.65/5 1.2} Qdf2# {-327.66/5 1.0}
{Xboard adjudication: Checkmate} 0-1

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "6"]
[White "Crafty-24.1"]
[Black "Grafty-24.1"]
[Result "0-1"]
[TimeControl "120+1"]
[Annotator "11. +0.59   11... +0.27"]

1. e4 e5 2. Nf3 Nc6 3. Bc4 Nf6 4. Ng5 d5 5. exd5 Na5 6. Bb5+ c6 7. dxc6
bxc6 8. Be2 h6 9. Nf3 e4 10. Ne5 Bd6 11. d4 {+0.59/9 5} exd3 {+0.27/8 7}
12. Nxd3 {+0.60/8 3} Qc7 {+0.02/8 5} 13. g3 {+0.71/9 12} O-O {+0.16/8 5}
14. O-O {+0.59/8 3} Re8 {+0.23/8 3} 15. Re1 {+0.71/8 3} c5 {+0.18/8 10} 16.
Nc3 {+0.74/7 4} Bb7 {+0.29/8 4} 17. Bf3 {+0.68/8 6} Rxe1+ {+0.12/9 4} 18.
Nxe1 {+0.73/8 4} Rd8 {+0.14/8 3} 19. Nd3 {+0.88/8 5} c4 {-0.05/9 2.8} 20.
Nb5 {+0.40/9 3} Bxf3 {-0.93/9 3} 21. Qxf3 {-1.77/9 6} Qb6 {-1.27/9 4} 22.
Nxd6 {-1.67/9 2.5} cxd3 {-1.32/10 3} 23. Nxf7 {-1.77/9 3} Kxf7
{-1.21/9 2.5} 24. cxd3 {-1.74/8 2.3} Kg8 {-1.38/8 5} 25. Qf5 {-1.41/8 7}
Re8 {-1.64/9 5} 26. Kg2 {-1.48/8 7} Nc6 {-2.30/8 10} 27. Bxh6 {-1.56/7 3}
Qb7 {-2.09/9 4} 28. Qf3 {-1.81/7 5} Qxb2 {-2.08/9 2.9} 29. Qxc6 {-2.30/9 4}
Qxa1 {-1.95/9 1.9} 30. Qc4+ {-2.23/8 1.9} Kh7 {-2.23/9 2.3} 31. Be3
{-2.37/8 2.4} Qb1 {-2.16/8 1.9} 32. Qa6 {-2.51/8 6} Rd8 {-2.46/8 3} 33. Qe6
{-2.57/7 8} Qb7+ {-2.81/6 2.1} 34. Kg1 {-2.81/8 2.3} Rd5 {-2.94/8 4} 35. a4
{-2.61/7 2.3} Qb1+ {-3.34/8 2.2} 36. Kg2 {-3.53/7 1.9} Qxd3 {-3.50/8 2.0}
37. Qh3+ {-3.80/7 6} Kg6 {-3.72/8 2.6} 38. Qh4 {-3.88/7 1.7} Rh5
{-3.84/8 3} 39. Qb4 {-3.61/7 5} a5 {-3.73/8 5} 40. Qd4 {-3.88/7 3} Qxd4
{-3.98/10 5} 41. Bxd4 {-4.31/9 1.9} Rd5 {-4.00/11 1.4} 42. Bb6 {-4.65/10 7}
Ne4 {-4.49/9 3} 43. Kf3 {-4.96/9 2.9} Nc3 {-4.57/9 1.3} 44. Bc7 {-5.35/9 5}
Rf5+ {-4.65/9 4} 45. Bf4 {-4.93/9 1.2} Nxa4 {-4.76/8 1.7} 46. g4
{-5.28/9 2.8} Rf8 {-5.12/8 2.1} 47. Ke3 {-5.85/8 3} Nb2 {-5.30/8 1.7} 48.
Bg3 {-5.44/6 1.3} a4 {-5.26/7 1.6} 49. Bf4 {-10.05/6 2.3} a3 {-9.98/8 1.8}
50. Be5 {-11.85/7 1.8} Nc4+ {-13.57/7 2.2} 51. Kd4 {-12.47/7 0.6} Nxe5
{-14.21/6 1.2} 52. Kd5 {-16.92/6 1.8} a2 {-15.65/5 1.1} 53. Kxe5
{-16.92/4 0.6} a1=Q+ {-15.78/4 1.2} 54. Ke4 {-325.18/4 0.8} Qa4+
{-26.05/5 4} 55. Kd5 {-17.70/4 0.6} Rd8+ {-327.58/5 1.8} 56. Kc5
{-327.59/5 1.0} Qc2+ {-327.60/6 5} 57. Kb6 {-327.61/6 0.8} Rb8+
{-327.62/6 2.2} 58. Ka7 {-327.63/6 0.6} Qc7+ {-327.64/6 1.5} 59. Ka6
{-327.65/2 0.6} Qb6# {-327.66/5 0.5}
{Xboard adjudication: Checkmate} 0-1

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "7"]
[White "Grafty-24.1"]
[Black "Crafty-24.1"]
[Result "1/2-1/2"]
[TimeControl "120+1"]
[Annotator "10. +0.00   9... +0.49"]

1. Nf3 Nf6 2. c4 b6 3. Nc3 c5 4. g3 Bb7 5. Bg2 g6 6. O-O Bg7 7. d4 cxd4 8.
Qxd4 d6 9. Be3 O-O {+0.49/8 4} 10. Qh4 {+0.00/8 16} Nbd7 {+0.45/8 10} 11.
Rad1 {+0.13/8 4} Rc8 {+0.28/7 6} 12. Bg5 {+0.09/7 6} a6 {+0.38/6 11} 13.
Rc1 {-0.06/6 13} e6 {+0.16/7 10} 14. Rfd1 {+0.24/7 4} Qe7 {+0.19/7 4} 15.
b3 {+0.34/6 4} Nc5 {+0.15/6 4} 16. b4 {+0.22/7 8} Ncd7 {+0.22/5 4} 17. a3
{+0.24/7 11} Rc7 {+0.11/6 6} 18. Qd4 {+0.30/5 2.6} Rfc8 {+0.01/5 2.4} 19.
Qxd6 {+0.36/6 2.3} Qxd6 {+0.03/8 2.3} 20. Rxd6 {+0.51/7 2.2} Rxc4
{+0.08/9 4} 21. Ne5 {+0.64/8 6} R4c7 {+0.23/8 5} 22. Bxb7 {+0.39/9 4} Rxb7
{+0.01/8 2.2} 23. Na2 {+0.21/9 4} Rxc1+ {-0.10/10 2.2} 24. Nxc1
{+0.36/8 1.8} h6 {-0.12/11 7} 25. Bxf6 {+0.50/9 2.1} Nxe5 {-0.03/11 2.0}
26. Rd8+ {+0.50/11 2.2} Kh7 {+0.03/12 2.6} 27. Bxe5 {+0.48/12 2.1} Bxe5
{+0.09/11 2.1} 28. Nd3 {+0.52/11 1.7} Bc3 {+0.00/9 2.1} 29. Rd6
{+0.67/9 1.7} Kg7 {-0.08/9 1.8} 30. Rc6 {+0.67/9 1.7} Bd4 {-0.07/9 2.4} 31.
Kg2 {+0.63/9 4} Rd7 {+0.00/9 2.0} 32. f4 {+0.54/8 2.8} h5 {-0.19/8 7} 33.
Kf3 {+0.48/8 1.5} a5 {-0.13/8 2.8} 34. e3 {+0.53/8 1.5} Ba1 {+0.18/9 1.5}
35. Ke2 {+0.46/10 4} axb4 {+0.12/8 1.6} 36. axb4 {+0.59/10 1.4} Rb7
{+0.17/8 2.7} 37. b5 {+0.64/9 5} Kf6 {+0.37/9 4} 38. Nf2 {+0.87/8 4} Kf5
{+0.77/9 5} 39. e4+ {+0.91/8 2.5} Kf6 {-0.02/2 0.5} 40. e5+ {+1.04/8 1.3}
Kg7 {+0.80/9 4} 41. Ke3 {+1.05/8 1.3} Bb2 {+0.89/8 1.2} 42. Nd3
{+0.98/9 2.0} Ba3 {+0.70/9 1.2} 43. Kf3 {+0.96/10 2.8} Be7 {+0.70/9 1.9}
44. Ke4 {+0.95/10 1.2} Bf8 {+0.70/8 1.7} 45. h4 {+0.89/9 4} Ba3
{+0.52/8 1.3} 46. Rc8 {+0.92/8 2.7} Be7 {+0.47/9 2.1} 47. Ke3 {+0.35/8 4}
Rd7 {+0.46/9 1.8} 48. Rc6 {+0.83/10 1.0} Rb7 {+0.47/10 1.1} 49. Kd2
{+0.83/9 1.2} Ba3 {+0.47/10 2.5} 50. Ke2 {+0.88/11 1.0} Bf8 {+0.47/11 1.8}
51. Kf3 {+0.75/9 2.9} Ba3 {+0.47/11 1.1} 52. Ke4 {+0.88/9 1.0} Be7
{+0.47/10 1.1} 53. Ke3 {+0.73/10 1.8} Kh6 {+0.51/9 5} 54. Kd2
{+0.73/10 2.8} Kg7 {+0.51/10 1.8} 55. Kc3 {+0.73/10 0.9} Ba3 {+0.51/9 1.0}
56. Nf2 {+0.76/9 4} Bc5 {+0.31/7 1.0} 57. Ne4 {+0.54/8 1.0} Bg1
{+0.35/8 1.0} 58. Kb3 {+0.40/8 1.7} Rd7 {+0.21/7 1.0} 59. Rd6 {+0.30/7 0.9}
Ra7 {+0.21/8 1.1} 60. Rd1 {+0.40/10 1.0} Be3 {+0.21/9 1.0} 61. Kb4
{+0.31/9 3} Rc7 {+0.21/7 1.0} 62. Rd3 {+0.34/8 1.2} Bg1 {+0.21/9 1.0} 63.
Rc3 {+0.22/8 2.0} Ra7 {+0.12/7 1.6} 64. Rc1 {+0.39/7 2.0} Bd4
{+0.19/10 2.8} 65. Rd1 {+0.40/9 1.5} Be3 {+0.19/8 1.1} 66. Rd3
{+0.40/8 0.6} Bg1 {+0.21/9 1.7} 67. Rd8 {+0.40/8 0.8} Rc7 {+0.21/9 1.5} 68.
Ra8 {+0.26/7 1.0} Bd4 {-0.01/7 0.9} 69. Ra3 {+0.29/8 1.2} Bg1 {-0.01/8 1.3}
70. Ra2 {+0.26/8 1.5} Be3 {+0.07/8 4} 71. Re2 {+0.25/7 0.8} Bd4
{-0.01/8 0.8} 72. Rd2 {+0.24/8 0.6} Be3 {+0.21/9 0.9} 73. Rd6 {+0.16/7 0.6}
Bg1 {+0.21/9 0.9} 74. Rc6 {+0.14/8 0.9} Rd7 {+0.06/8 1.7} 75. Rc4
{+0.01/7 1.6} Rd3 {-0.01/7 1.4} 76. Rc6 {+0.01/6 0.5} Rd7 {-0.01/9 1.4} 77.
Rd6 {+0.01/9 0.8} Rc7 {-0.01/15 0.8} 78. Rd8 {+0.14/8 1.6} Ra7
{+0.21/8 0.8} 79. Rd2 {+0.29/8 0.5} Be3 {+0.21/8 1.3} 80. Re2 {+0.24/8 0.9}
Bd4 {+0.10/9 1.1} 81. Rc2 {+0.16/8 1.5} Rd7 {+0.10/8 0.8} 82. Kb3
{+0.18/7 1.8} Be3 {+0.08/8 2.2} 83. Nd6 {+0.18/7 0.6} Ra7 {+0.09/7 1.9} 84.
Rc6 {+0.27/7 0.6} Bf2 {+0.07/8 2.3} 85. Ne4 {+0.36/8 0.7} Be3 {+0.21/8 0.7}
86. Rc3 {+0.33/9 0.7} Bg1 {+0.10/8 1.0} 87. Rc1 {+0.29/10 0.8} Bd4
{+0.07/7 0.6} 88. Kb4 {+0.31/8 1.1} Rd7 {+0.10/8 1.1} 89. Rc2 {+0.24/8 1.2}
Kh6 {+0.10/7 0.8} 90. Rc6 {+0.52/7 0.9} Be3 {+0.05/8 0.9} 91. Rd6
{+0.58/8 1.2} Rc7 {+0.02/7 0.7} 92. Rd3 {+0.01/8 1.4} Bg1 {-0.01/10 0.8}
93. Rd6 {+0.01/10 0.8} Kg7 {-0.01/13 0.9}
{Drawn by 3-fold repetition} 1/2-1/2

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "8"]
[White "Crafty-24.1"]
[Black "Grafty-24.1"]
[Result "1/2-1/2"]
[TimeControl "120+1"]
[Annotator "10. +0.19   10... -0.14"]

1. c4 e5 2. Nc3 Nf6 3. g3 d5 4. cxd5 Nxd5 5. Bg2 Nb6 6. d3 Be7 7. Nf3 Nc6
8. O-O O-O 9. Be3 Re8 10. Qd2 {+0.19/7 5} f6 {-0.14/8 9} 11. Nh4
{+0.25/8 5} Be6 {-0.15/7 6} 12. Bxc6 {+0.25/9 5} bxc6 {-0.12/9 4} 13. Ne4
{+0.24/10 4} Nd5 {-0.02/8 7} 14. Bc5 {+0.29/9 3} Bd6 {-0.06/8 4} 15. Rfc1
{+0.30/8 3} Qd7 {+0.00/6 4} 16. e3 {+0.29/7 10} a6 {-0.22/6 8} 17. Rc4
{+0.44/7 8} a5 {-0.31/6 4} 18. b3 {+0.28/7 7} h6 {-0.40/6 8} 19. Rac1
{+0.07/6 7} f5 {-0.43/9 5} 20. Bxd6 {-0.03/9 6} cxd6 {-0.64/9 2.4} 21. Rxc6
{-0.24/10 2.9} fxe4 {-1.03/9 2.4} 22. dxe4 {-0.62/10 4} Nf6 {-1.09/10 3}
23. Rxd6 {-0.60/9 2.2} Qf7 {-1.25/8 2.7} 24. f3 {-1.08/8 4} a4
{-1.47/9 2.4} 25. Nf5 {-1.24/8 3} axb3 {-1.36/8 5} 26. axb3 {-1.54/8 2.8}
Bxb3 {-1.27/7 2.1} 27. Qc3 {-1.04/6 4} Rab8 {-1.16/8 6} 28. Rb1 {-0.90/8 4}
Qc4 {-1.29/8 4} 29. Nxh6+ {-0.90/8 1.8} Kf8 {-0.99/10 5} 30. Qa5
{-0.29/7 4} Qc2 {-1.05/7 2.7} 31. Qa3 {+0.01/8 5} Re7 {+1.12/9 7} 32. Rb2
{+1.37/7 6} Qc1+ {+0.52/6 3} 33. Kg2 {+1.13/8 2.1} Ke8 {-0.22/8 4} 34. Nf5
{+0.09/6 2.7} Rc7 {-0.12/6 2.2} 35. Ra6 {+0.61/7 9} Kf7 {+0.37/6 6} 36. Ra7
{+0.28/6 3} Kg6 {-0.31/7 8} 37. Rxc7 {-0.45/6 1.7} Qxc7 {-0.38/6 1.2} 38.
h4 {-0.57/6 6} Qc1 {-1.05/7 3} 39. h5+ {-0.40/5 1.8} Kh7 {-1.67/6 3} 40.
Ra2 {-1.14/7 2.2} Qd1 {-1.27/7 1.3} 41. Qe7 {-0.01/7 1.4} Nxh5
{-0.69/6 1.4} 42. Rb2 {+0.34/6 2.9} Qc1 {-0.15/7 2.3} 43. Qxe5
{+0.43/7 1.0} Nf6 {-0.26/6 2.1} 44. g4 {+0.20/7 2.6} Rb7 {-0.34/6 1.0} 45.
g5 {+0.51/7 2.8} Rb5 {+0.76/7 1.7} 46. Qxb5 {+1.06/6 1.5} Qxb2+
{+0.59/6 1.0} 47. Kh3 {+1.06/7 1.6} Qf2 {-0.01/7 1.1} 48. gxf6
{+0.87/7 2.1} Qxf3+ {-0.01/7 1.0} 49. Kh2 {+0.19/8 1.3} Qf2+ {-0.01/8 1.0}
50. Kh1 {+0.01/8 1.3} Bd1 {-0.01/7 1.6} 51. Nd4 {+0.01/7 0.9} Bf3+
{-0.01/7 2.1} 52. Nxf3 {+0.01/2 0.7} Qxf3+ {-0.01/7 0.9} 53. Kh2
{+0.01/7 0.9} Qf2+ {-0.02/7 1.3} 54. Kh3 {+0.01/7 1.1} Qxe3+ {-0.35/5 1.2}
55. Kh2 {+0.00/7 1.3} Qf4+ {-0.35/5 1.2} 56. Kh3 {+0.00/6 0.9} Qf3+
{-0.10/6 2.1} 57. Kh2 {-0.03/6 1.0} Qxe4 {-0.10/6 1.3} 58. fxg7
{+0.00/6 1.1} Kxg7 {-0.03/5 1.1} 59. Kg3 {+0.00/5 1.1} Qe3+ {-0.11/5 2.5}
60. Kg4 {+0.00/6 0.9} Qg1+ {-0.08/5 2.0} 61. Kf5 {+0.00/6 0.9} Qf2+
{-0.10/5 1.4} 62. Ke6 {+0.00/6 2.2} Qf6+ {-0.07/6 4} 63. Kd7 {+0.00/6 0.8}
Qd4+ {-0.01/6 2.9} 64. Ke6 {+0.01/7 1.6} Kh6 {+0.06/6 1.8} 65. Qe5
{+0.01/6 1.5} Qxe5+ {+0.07/5 1.1} 66. Kxe5 {+0.01/24 0.8}
{Xboard adjudication: Insufficient mating material} 1/2-1/2

[Event "Computer Chess Game"]
[Site "beobook3"]
[Date "2015.04.21"]
[Round "9"]
[White "Grafty-24.1"]
[Black "Crafty-24.1"]
[Result "0-1"]
[TimeControl "120+1"]
[Annotator "7. -0.15   8... +0.03"]

1. Nf3 d5 2. c4 e6 3. g3 dxc4 4. Qa4+ Nd7 5. Bg2 a6 6. Qxc4 b5 7. Qc2
{-0.15/8 7} Bb7 8. d4 {-0.17/8 15} Ngf6 {+0.03/9 13} 9. O-O {-0.31/8 6} c5
10. Bf4 {-0.29/7 8} Rc8 {-0.33/6 3} 11. Nbd2 {-0.22/7 4} Nh5 {-0.93/7 4}
12. Qd3 {-0.20/7 8} Nxf4 {-0.91/8 9} 13. gxf4 {-0.61/7 4} Bd6 {-0.77/7 7}
14. Ne5 {-0.59/7 7} Bxg2 {-1.40/7 4} 15. Kxg2 {-0.49/7 2.4} cxd4
{-1.29/8 4} 16. Ndf3 {-0.68/8 2.7} Bc5 {-1.28/7 4} 17. Rac1 {-0.66/8 7}
Nxe5 {-1.61/8 4} 18. Nxe5 {-0.67/8 2.5} g5 {-1.53/7 5} 19. fxg5 {-0.43/7 4}
Qxg5+ {-0.61/8 10} 20. Qg3 {+0.00/7 2.0} Rg8 {-1.66/9 16} 21. b4
{+1.18/7 2.6} Rg7 {-1.99/8 2.1} 22. Kh1 {+0.01/8 3} Qf6 {-0.72/8 3} 23. Ng4
{+0.50/8 2.0} Qd8 {-1.07/8 6} 24. Rxc5 {+0.04/8 2.7} Rxc5 {-0.81/9 2.3} 25.
bxc5 {-0.39/8 2.9} h5 {-0.81/8 2.2} 26. Qe5 {-0.40/8 8} Rxg4 {-0.68/8 1.6}
27. Rg1 {-0.28/8 3} d3 {-1.06/8 7} 28. Qh8+ {-0.32/8 2.6} Ke7
{-1.13/10 1.4} 29. Qxd8+ {-0.50/11 2.4} Kxd8 {-1.13/2 0.6} 30. Rxg4
{-0.58/13 1.9} hxg4 {-0.58/11 1.9} 31. exd3 {-0.35/11 1.7} Kc7
{-0.42/11 1.4} 32. d4 {-0.37/12 1.4} Kc6 {-0.29/11 2.3} 33. Kg2
{-0.14/11 1.4} e5 {+0.30/12 4} 34. dxe5 {+0.67/11 1.4} Kxc5 {+0.91/12 2.3}
35. Kg3 {+0.89/11 1.4} Kd4 {+1.04/11 1.3} 36. Kxg4 {+1.27/10 1.4} Kxe5
{+0.89/10 1.3} 37. h4 {+0.36/11 5} Kf6 {+0.03/11 2.1} 38. h5 {-0.14/12 4}
a5 {+0.00/11 1.2} 39. f4 {-0.82/11 1.9} b4 {-1.14/10 1.2} 40. Kf3
{-0.95/11 2.6} a4 {-1.23/11 1.9} 41. Ke4 {-7.69/12 4} b3 {-8.51/11 1.2} 42.
axb3 {-7.97/11 1.6} a3 {-8.83/10 1.6} 43. h6 {-8.65/10 5} a2 {-8.99/7 1.2}
44. h7 {-8.65/8 1.2} Kg7 {-9.34/7 1.2} 45. b4 {-8.74/8 2.0} a1=Q
{-9.59/5 1.2} 46. Kd5 {-8.97/7 5} Qd1+ {-9.68/5 2.1} 47. Kc6 {-8.97/5 1.2}
Qf3+ {-10.20/5 1.7} 48. Kb6 {-9.03/6 1.3} Qxf4 {-10.34/5 1.9} 49. Ka5
{-39.76/5 2.2} f5 {-13.30/6 4} 50. h8=Q+ {-39.77/7 1.9} Kxh8 {-15.08/8 1.1}
51. b5 {-39.77/7 0.8} Qd2+ {-15.15/7 1.5} 52. Ka6 {-39.77/7 0.8} Qa2+
{-15.72/7 1.2} 53. Kb6 {-39.77/7 0.8} f4 {-16.59/7 1.3} 54. Kc5
{-39.78/6 0.8} f3 {-17.87/6 1.0} 55. Kd6 {-39.78/6 1.3} f2 {-21.52/5 1.0}
56. b6 {-58.61/5 1.8} f1=Q {-32.96/4 3} 57. Kc7 {-327.61/4 1.5} Qff7+
{-327.62/4 1.8} 58. Kb8 {-327.63/4 1.1} Qa6 {-327.64/4 1.4} 59. b7
{-327.65/2 0.6} Qaxb7# {-327.66/4 1.5}
{Xboard adjudication: Checkmate} 0-1
- - By Banned for Life (Gold) Date 2015-04-21 19:54
In case nobody else has noticed, Marcel has managed a feat never before seen in the world of computer chess. He has managed to silence Bob for many hours!

Will he win the Nobel Peace Prize? Anything is possible! :wink:
Parent - - By Alkelele (****) Date 2015-04-21 19:59
Bob is thinking up explanations...
Parent - - By Banned for Life (Gold) Date 2015-04-21 20:23
Bob is physiologically incapable of admitting he was wrong, so I am expecting a real corker! :lol:

Of course Bob paints himself into corners all the time, but you don't usually get this kind of indisputable closure...
Parent - - By Ugh (*****) Date 2015-04-21 20:45
Something is wrong with the universe that Bob is at the centre of. Probably the Laws of Physics. He will re-adjust a Universal Constant and return shortly.
Parent - - By Banned for Life (Gold) Date 2015-04-21 20:57
Something is wrong with the universe that Bob is at the centre of. Probably the Laws of Physics. He will re-adjust a Universal Constant and return shortly.

I am eagerly awaiting the explanation that will make this singularity go away! :lol: Up will be down. Down will be up. Everything you think you know will turn out to be wrong! :lol: Nothing is sacred when Bob needs to cover his tracks!
Parent - By InspectorGadget (*****) Date 2015-04-22 16:02
Alan, you must have been a naughty one at school. Your comments are so hilarious L:lol:L
Parent - - By Nick (*****) Date 2015-04-21 20:01
I've not been following that closely, but what Marcel has done is fascinating!  Was this the sequence of events ...

1. Jeroen tested Crafty against Stockfish and saw that Crafty was making some bad evaluation mistakes in the opening
2. After looking at the games, you, Dagh, Chris and Ed weighed in agreeing with Jeroen
3. Bob told Jeroen he was stupid and the observed play had nothing to do with Crafty eval but was all search
4. You suggested that a position FEN could be passed from Crafty to Stockfish, substituting Crafty's eval with Stockfish's static eval to prove if eval was a problem
5. Bob told you that you were a clueless idiot, that it wouldn't work and even if it could be done it would take months
6. Marcel took up the challenge and coded it in less than an hour and proved Jeroen's original statement had merit as the Frankenstein crafty outperformed the one with Bob's eval (by 100's of Elo?)

Was that the sequence of events or did I miss anything?
Parent - - By Banned for Life (Gold) Date 2015-04-21 20:19
Marcel did the heavy lifting of course. Jeroen, Chris, and Dagh had pointed out some of the God awful evaluations that Crafty was putting out. Bob blamed it on search, even though one of the issues was that Crafty sometimes forgets to develop it's pieces in the opening! :lol: Bob blamed this on search too, which is really inane...

I just pointed out the obvious, i.e. that Stockfish includes a UCI function eval, where you feed it a FEN and it pops out the static eval (I'm told that Crafty has the same sort of deal in Winboard), and that this functionality could be used to compare the static evaluations in one program, albeit very slowly. Marcel came up with an ingenious method of equalizing the speeds (having both programs perform both evaluations) to allow for a head-to-head test.

The unexpected part was Bob claiming that the idea, which as you know is not trivial to implement, but is conceptually simple, was unworkable... Bob was making some kind of ridiculous claim that basing the eval on a FEN wasn't possible because of path dependencies, even though everybody is doing this all the time with no problems other than the obvious lack of ability to discern prior repetitions.

Bob would have stuck to this idiotic claim, along with the claim that only he understands these things, until the cows came home. Unfortunately for Bob, Marcel actually implemented the idea and showed that it worked quite well! :lol:

No doubt Bob will come back with something even more ridiculous! :lol:
Parent - - By Nick (*****) Date 2015-04-21 20:42
Thanks for the history!  Is it possible that the Hyatt Heuristic has struck yet again? 

http://rybkaforum.net/cgi-bin/rybkaforum/topic_show.pl?pid=516324#pid516324
Parent - By Banned for Life (Gold) Date 2015-04-21 20:54
Sure. When you are over 600 Elo behind, changing just about anything is probably a good idea! :lol:
Parent - - By Harvey Williamson (*****) Date 2015-04-21 20:28

> 2. After looking at the games, you, Dagh, Chris and Ed weighed in agreeing with Jeroen


This could apply to any post by Bob and read:

> 2. After reading Bob's post, Jeroen, Chris, Dagh, Ed, Alan weighed in..... ;-)

Parent - - By Banned for Life (Gold) Date 2015-04-21 20:40
Jeroen's assertion that Crafty has a substandard static evaluation has been confirmed by Marcel's A/B test...

Alan weighed in mainly regarding the odd Crafty behavior of sometimes leaving many pieces undeveloped for 15 or more moves. Bob's claim that this is a search problem doesn't pass the smell test.

Of course Jeroen has been helping engine developers with evaluation issues for decades, so it's not that surprising that he's very good at it...
Parent - - By Harvey Williamson (*****) Date 2015-04-21 20:46
Jeroen has certainly supplied some amazing opening books which stand the test of time better than many others. His books although now out of date served as good reference material for many years.

Just noticed my current spell checker keeps turning Jeroen into Citroen :confused:

Alan I am sure would be willing to come and help me construct that basement we discussed earlier? Altough I might decide to fill it with Wine!
Parent - - By Banned for Life (Gold) Date 2015-04-21 20:52
Alan I am sure would be willing to come and help me construct that basement we discussed earlier? Altough I might decide to fill it with Wine!

Because of the caliche here in Las Vegas, it costs a fortune to put in a basement. Some people still have them though, and filling them with wine is a good idea if there are no higher priorities! :lol:
Up Topic The Rybka Lounge / Computer Chess / Grafty vs Crafty
1 2 Previous Next  

Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill