Hello!
At last I have a new version of Andscacs. I have writed again near everything with the idea of winning a lot of speed. It was not very difficult to achieve improvements because the previous versions had a lot of things that where done in a very basic way, consequence of being my first engine.
Here it is:
http://www.andscacs.com/andscacs070.zip
So for example the previous version 0.64 arrived at 550000 nps in my computer, and this new one at 920000 nps.
Some of the changes:
* Most parts of the engine are done again from scratch, with the objective of speed gain in critical points.
* Now uses 16 bits to store the moves, and 32 bits to store jointly the values of opening and endgame to not having to treat them separately.
* Now uses magic bitboards to speed the attack calculations.
* Detected some bugs that now are not in this new version.
* Separated the move generation in phases (hash, captures, non captures) instead of generating all in each iteration.
* Improved See adding x-ray.
* Now a move can be pruned because of See.
In elo may be is between 20 and 100 stronger, I really have no idea in long time controls. Let's see what it's able to do!
I'm sorry there is not 32 bit version for the moment. It crashes badly. I will try to arrange it.
Thanks.
Andscacs - New version 0.70
Moderators: hgm, Rebel, chrisw
-
- Posts: 2204
- Joined: Sat Jan 18, 2014 10:24 am
- Location: Andorra
Andscacs - New version 0.70
Daniel José - http://www.andscacs.com
-
- Posts: 4833
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Andscacs - New version 0.70
Version comparison on 15 STS sets, at 100 ms per position. There is general increase in points overall.
From result summary file.
Sample log from sts1.epd, the failed positions has been greatly reduced.
And the log on 9 failed positions from, andscacs-0.70-x64-popcnt_STS1_epd_wrong.txt
From result summary file.
Code: Select all
engine, points, max_points, ratio, thinking_time, positions_not_solved, total_time, test_name, test_filename.
Code: Select all
Andscacs 0.64,649,1000,64.9%,100ms,25,23.6s,id "Undermine.100",STS1.epd
Andscacs 0.70,733,1000,73.3%,100ms,9,20.7s,id "Undermine.100",STS1.epd
Andscacs 0.64,696,1000,69.6%,100ms,13,23.7s,id "STS(v10.0) Simplification.100",STS10.epd
Andscacs 0.70,725,1000,72.5%,100ms,11,20.0s,id "STS(v10.0) Simplification.100",STS10.epd
Andscacs 0.64,575,1000,57.5%,100ms,29,24.0s,id "STS(v11.0) King Activity.100",STS11.epd
Andscacs 0.70,583,1000,58.3%,100ms,30,21.6s,id "STS(v11.0) King Activity.100",STS11.epd
Andscacs 0.64,462,1000,46.2%,100ms,39,23.9s,id "STS(v12.0) Center Control.100",STS12.epd
Andscacs 0.70,494,1000,49.4%,100ms,34,20.6s,id "STS(v12.0) Center Control.100",STS12.epd
Andscacs 0.64,709,1000,70.9%,100ms,20,24.0s,id "STS(v13.0) Pawn Play in the Center.100",STS13.epd
Andscacs 0.70,733,1000,73.3%,100ms,18,20.9s,id "STS(v13.0) Pawn Play in the Center.100",STS13.epd
Andscacs 0.64,714,1000,71.4%,100ms,18,23.8s,id "STS(v14.0) 7th Rank.100",STS14.epd
Andscacs 0.70,650,1000,65.0%,100ms,23,20.7s,id "STS(v14.0) 7th Rank.100",STS14.epd
Andscacs 0.64,527,1000,52.7%,100ms,29,23.6s,id "STS(v15.0) AT.100",STS15.epd
Andscacs 0.70,522,1000,52.2%,100ms,29,19.7s,id "STS(v15.0) AT.100",STS15.epd
Andscacs 0.64,595,1000,59.5%,100ms,30,23.9s,id "STS(v2.2) Open Files and Diagonals.100",STS2.epd
Andscacs 0.70,704,1000,70.4%,100ms,22,20.4s,id "STS(v2.2) Open Files and Diagonals.100",STS2.epd
Andscacs 0.64,745,1000,74.5%,100ms,16,23.9s,id "STS: Knight Outposts/Repositioning/Centralization.100",STS3.epd
Andscacs 0.70,633,1000,63.3%,100ms,24,20.4s,id "STS: Knight Outposts/Repositioning/Centralization.100",STS3.epd
Andscacs 0.64,646,1000,64.6%,100ms,21,24.1s,id "STS(v4.0) Square Vacancy.100",STS4.epd
Andscacs 0.70,706,1000,70.6%,100ms,17,18.6s,id "STS(v4.0) Square Vacancy.100",STS4.epd
Andscacs 0.64,674,1000,67.4%,100ms,21,18.9s,id "STS(v5.0) Bishop vs Knight.100",STS5.epd
Andscacs 0.70,720,1000,72.0%,100ms,19,20.1s,id "STS(v5.0) Bishop vs Knight.100",STS5.epd
Andscacs 0.64,949,1000,94.9%,100ms,4,22.9s,id "STS(v6.0) Recapturing.100",STS6.epd
Andscacs 0.70,974,1000,97.4%,100ms,2,17.9s,id "STS(v6.0) Recapturing.100",STS6.epd
Andscacs 0.64,633,1000,63.3%,100ms,25,21.5s,id "STS(v7.0) Simplification.100",STS7.epd
Andscacs 0.70,664,1000,66.4%,100ms,20,20.6s,id "STS(v7.0) Simplification.100",STS7.epd
Andscacs 0.64,569,1000,56.9%,100ms,29,22.6s,id "STS(v8.0) AKPC.100",STS8.epd
Andscacs 0.70,575,1000,57.5%,100ms,30,21.0s,id "STS(v8.0) AKPC.100",STS8.epd
Andscacs 0.64,500,1000,50.0%,100ms,34,24.6s,id "STS(v9.0) Advancement of a/b/c pawns.100",STS9.epd
Andscacs 0.70,537,1000,53.7%,100ms,26,16.8s,id "STS(v9.0) Advancement of a/b/c pawns.100",STS9.epd
Code: Select all
engine id name: Andscacs 0.64
file: STS1.epd
sts name: id "Undermine.100"
total pos: 100
time/pos: 100ms
best1: 55, points: 550
best2: 9, points: 46
best3: 5, points: 24
best4: 6, points: 29
best5: 0, points: 0
best6: 0, points: 0
best7: 0, points: 0
best8: 0, points: 0
fails: 25, points: 0
total points: 649
max points: 1000
ratio: 64.9%
Elapsed time: 23.6s
engine id name: Andscacs 0.70
file: STS1.epd
sts name: id "Undermine.100"
total pos: 100
time/pos: 100ms
best1: 60, points: 600
best2: 10, points: 44
best3: 9, points: 43
best4: 12, points: 46
best5: 0, points: 0
best6: 0, points: 0
best7: 0, points: 0
best8: 0, points: 0
fails: 9, points: 0
total points: 733
max points: 1000
ratio: 73.3%
Elapsed time: 20.7s
Code: Select all
1r1b2k1/2r2ppp/p1qp4/3R1NPP/1pn1PQB1/8/PPP3R1/1K6 w - - bm g6; id "Undermine.008"; c0 "g6=10, Ka1=2, Nd4=2, Rd3=2";
1rr3k1/1q3pp1/pnbQp2p/1p2P3/3B1P2/2PB4/P1P2RPP/R5K1 w - - bm f5; id "Undermine.022"; c0 "f5=10, Qa3=3, Rd1=2, h3=2";
r2qkb1r/1b1n1ppp/p3pn2/1pp5/3PP3/2NB1N2/PP3PPP/R1BQ1RK1 w kq - bm d5; id "Undermine.041"; c0 "d5=10, Be3=3, a3=2, e5=3";
3bn3/3r1p1k/3Pp1p1/1q6/Np2BP1P/3R2PK/8/3Q4 w - - bm h5; id "Undermine.048"; c0 "h5=10, Bf3=6, Rd4=6, g4=6";
4q1k1/pb5p/Nbp1p1r1/3r1p2/PP1Pp1pP/4P1P1/1BR1QP2/2R3K1 w - - bm b5; id "Undermine.057"; c0 "b5=10, Ba1=3, Kg2=3, a5=3";
k1qbr1n1/1p4p1/p1p1p1Np/2P2p1P/3P4/R7/PP2Q1P1/1K1R4 w - - bm d5; id "Undermine.073"; c0 "d5=10, Ra4=3, Rdd3=4, g4=3";
r3k2r/ppq2p1p/2n1p1p1/3pP3/5PP1/2P1Q3/PP2N2P/3R1RK1 b k - bm h5; id "Undermine.086"; c0 "h5=10, O-O=3, Qb6=1, Rc8=1, Rc8=3";
r4r2/1p2pbk1/1np1qppp/p7/3PP2P/P1Q2NP1/1P3PB1/2R1R1K1 w - - bm h5; id "Undermine.091"; c0 "h5=10, Qc5=5, Qe3=3, b4=2";
rr3n1k/q3bpn1/2p1p1p1/2PpP2p/pP1P1N1P/2BB1NP1/P2Q1P2/6RK w - - bm g4; id "Undermine.100"; c0 "g4=10, Kh2=4, Qc1=2, a3=3";
-
- Posts: 41473
- Joined: Sun Feb 26, 2006 10:52 am
- Location: Auckland, NZ
-
- Posts: 2204
- Joined: Sat Jan 18, 2014 10:24 am
- Location: Andorra
Re: Andscacs - New version 0.70
Thanks! It's very interesting. I will try to improve Andscacs with these results.Ferdy wrote:Version comparison on 15 STS sets, at 100 ms per position.
As always, thanks for your great effort!Graham Banks wrote:Looking forward to testing it.
Daniel José - http://www.andscacs.com
-
- Posts: 2204
- Joined: Sat Jan 18, 2014 10:24 am
- Location: Andorra
Re: Andscacs - New version 0.70
Hi again.
I was curious about the strength that Andscacs will have at long time controls, and I have done a little gauntlet of 1000 seconds + 1 to have an idea:
I was curious about the strength that Andscacs will have at long time controls, and I have done a little gauntlet of 1000 seconds + 1 to have an idea:
Code: Select all
Rank Name Elo + - games score oppo. draws
1 Gull 1.2 x64 162 75 69 48 74% 1 31% (2927 ccrl)
2 Gaviota v1.0 49 69 68 48 57% 1 31% (2854 ccrl)
3 Andscacs 0.70 1 32 31 235 50% 1 29%
4 Naraku 1.4 -50 71 73 48 43% 1 19% (2777 ccrl)
5 DiscoCheck 5.2 -52 70 72 44 42% 1 34% (2913 ccrl)
6 cheng4 0.36c -110 69 73 47 33% 1 32% (2803 ccrl)
Daniel José - http://www.andscacs.com
-
- Posts: 2204
- Joined: Sat Jan 18, 2014 10:24 am
- Location: Andorra
Re: Andscacs - New version 0.70
I just added the 32 bit version to the zip file.
Daniel José - http://www.andscacs.com
-
- Posts: 4833
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Andscacs - New version 0.70
That's a good result. BTW any interest on a compilation for android? My next release will include for that os.cdani wrote:Hi again.
I was curious about the strength that Andscacs will have at long time controls, and I have done a little gauntlet of 1000 seconds + 1 to have an idea:
Code: Select all
Rank Name Elo + - games score oppo. draws 1 Gull 1.2 x64 162 75 69 48 74% 1 31% (2927 ccrl) 2 Gaviota v1.0 49 69 68 48 57% 1 31% (2854 ccrl) 3 Andscacs 0.70 1 32 31 235 50% 1 29% 4 Naraku 1.4 -50 71 73 48 43% 1 19% (2777 ccrl) 5 DiscoCheck 5.2 -52 70 72 44 42% 1 34% (2913 ccrl) 6 cheng4 0.36c -110 69 73 47 33% 1 32% (2803 ccrl)
Rating list is here.
http://chesstroid.blogspot.com/2014/06/ ... or_18.html
-
- Posts: 4468
- Joined: Fri Apr 21, 2006 4:19 pm
- Location: IASI - the historical capital of MOLDOVA
- Full name: SilvianR
Re: Super !
A very good new version !cdani wrote:I just added the 32 bit version to the zip file.
Thank you, Maestro Daniel !
SilvianR
-
- Posts: 2204
- Joined: Sat Jan 18, 2014 10:24 am
- Location: Andorra
Re: Andscacs - New version 0.70
Thanks. Yes I'm happy of how all the programming has gone.Ferdy wrote: That's a good result. BTW any interest on a compilation for android? My next release will include for that os.
Rating list is here.
http://chesstroid.blogspot.com/2014/06/ ... or_18.html
For the moment I will continue to try to improve it. But of course I like the idea of compiling for Android sooner or later.
Daniel José - http://www.andscacs.com
-
- Posts: 61
- Joined: Thu Oct 22, 2009 1:50 am
- Location: Barcelona Spain
Re: Andscacs - New version 0.70
Congratulations for your new version and all the good work you are doing.
Best
Best
--------------------------------------------------
Jorge García de Andrés
http://dynchess.blogspot.com.es
http://www.bitacoradelasalud.blogspot.com.es
http://www.mytechit.blogspot.com.es
Jorge García de Andrés
http://dynchess.blogspot.com.es
http://www.bitacoradelasalud.blogspot.com.es
http://www.mytechit.blogspot.com.es