Skipper engine: No Progress part 3

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

Moderators: hgm, Rebel, chrisw

Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Skipper engine: No Progress part 3

Post by Henk »

Analysis of initial position giving this principal variation after searching through 8 million nodes:

Code: Select all

23    0.0700    129.25     8153576   b1a3 g8h6 a3b5 h8g8 b5d4 g8h8 d4b5 h8g8 
Anyone interested in opening book constructed using Skipper engine solely.
Sven
Posts: 4052
Joined: Thu May 15, 2008 9:57 pm
Location: Berlin, Germany
Full name: Sven Schüle

Re: Skipper engine: No Progress part 3

Post by Sven »

Henk wrote:Analysis of initial position giving this principal variation after searching through 8 million nodes:

Code: Select all

23    0.0700    129.25     8153576   b1a3 g8h6 a3b5 h8g8 b5d4 g8h8 d4b5 h8g8 
Anyone interested in opening book constructed using Skipper engine solely.
Result of no evaluation?
Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Skipper engine: No Progress part 3

Post by Henk »

No, evaluation containing five terms probably making it play even worse than with no evaluation. I have to create a match to make sure.


It also counts material. So it probably will play much better than without evaluation.

Best would be to play a match if both sides at least count material.
Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Skipper engine: No Progress part 3

Post by Henk »

Here is another one. Looks like maximum depth worsened now and it does not even count king safety.

Code: Select all

 
20    0.0700    173.31    11050455   c2c4 e7e5 d2d4 f8b4 c1d2 b4d2 d1d2 e5d4 d2d4 g8f6 b1d2 h8g8 d4e5 e8f8 e5g5 g8h8 g5e5 h8g8 
jdart
Posts: 4366
Joined: Fri Mar 10, 2006 5:23 am
Location: http://www.arasanchess.org

Re: Skipper engine: No Progress part 3

Post by jdart »

I have said it before, but if your engine is not bug-free, or nearly so, then tuning things like eval or search is fairly pointless.

Some things to try:
1. Verify correct perft results for a variety of positions. See
https://github.com/jdart1/arasan-chess/ ... c/unit.cpp

2. Verify eval is symmetrical (white/black) for a range of positions.

3. Compile with gcc 7 and use:
compile flags: -fsanitize=bounds-strict -fsanitize=address
link flags: -fsanitize=bounds-strict -fsanitize=address --fuse-ld=gold
run the application and note any errors.

4. If you are open source you can use Coverity Scan (static analyzer) for free. Otherwise Clang has one: https://clang-analyzer.llvm.org/

--Jon
Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Skipper engine: No Progress part 3

Post by Henk »

Already disabled transposition table cut-offs for it is causing bugs and I am not able to find out what is going on. This is the main reason why it searches less deep than before. It even goes wrong when only using exact scores.

Only using TT table now for getting a first move without search. Advantage is that it can show complete PVs. But disadvantage is that search is much slower than before.
Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Skipper engine: No Progress part 3

Post by Henk »

TTable change. Now I get this one:

Code: Select all

20    0.0200     93.91     5874374   c2c4 c7c6 e2e4 e7e5 d2d4 e5d4 d1d4 f8b4 e1e2 f7f6 e4e5 f6e5 d4e5 e8f8 e5f4 g8f6 e2f3 h8g8 f4h4 g8h8 
e1e2: Time to add King safety term.
Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Skipper engine: No Progress part 3

Post by Henk »

jdart wrote:I have said it before, but if your engine is not bug-free, or nearly so, then tuning things like eval or search is fairly pointless.

Some things to try:
1. Verify correct perft results for a variety of positions. See
https://github.com/jdart1/arasan-chess/ ... c/unit.cpp

2. Verify eval is symmetrical (white/black) for a range of positions.

3. Compile with gcc 7 and use:
compile flags: -fsanitize=bounds-strict -fsanitize=address
link flags: -fsanitize=bounds-strict -fsanitize=address --fuse-ld=gold
run the application and note any errors.

4. If you are open source you can use Coverity Scan (static analyzer) for free. Otherwise Clang has one: https://clang-analyzer.llvm.org/

--Jon
Basically all tuning is wasting time. With each change you have to start all over again. Unless it was an independent unit and that does not happen often.