An EPD test suite generator.

Programming Topics (Computer Chess) and technical aspects as test techniques, book building, program tuning etc

Moderator: Andres Valverde

An EPD test suite generator.

Postby Michael Sherwin » 02 Dec 2005, 08:23

Hi,
I would like an EPD test suite subset generator for christmas! It would work like this. An existing open source engine would be modified to search each position of an EPD set, twice. First with all extentions (except for standard null move with verification search) turned off and a second time with selected extensions turned on. If the engine found the correct move with the extensions turned off then that position is omitted from the new EPD file. If the engine with the extensions turned on, did not find the correct move then that position is also omitted. An engine speed factor control may be added so that one could adjust the node rate or time allotted of the engine to match thier own engine. In this way, testing of engines could be made faster and more productive. Any thoughts?
User avatar
Michael Sherwin
 
Posts: 168
Joined: 21 Jul 2005, 06:10
Location: USA

Re: An EPD test suite generator.

Postby Dann Corbit » 02 Dec 2005, 19:58

Not hard to accomplish. But I do not think this will solve the problems that you think it might.

I have written something highly similar. It requires a parameter driven evaluation function like that of Beowulf or Scorpio. Programs that can use personality files are good candidates. Anyway, what I do is take every adjustable paramter and solve a test set of ~12000 EPD positions at some given depth for many values of the parameter. For example, a Knight might go from 250 to 375 centipawns in 6 iterations. It continues like this for each parameter until all of them are analyzed. Then, I increase the search depth by one ply and repeat the experiment until I run out of time.

I do a linear least squares fit to calculate a parabola and then find the maximum of the parabola (if it is not a maximum, then something is wrong).


Here is some data for scorpio analysis:
piece_v[pawns]

(parameter value, solution ratio)
(50,0.470508)
(65,0.479786)
(80,0.485829)
(95,0.495787)
(110,0.498511)
(125,0.499362)
(140,0.495106)
(155,0.495191)
(170,0.487956)
(185,0.487786)
y=-4.37604e-006*x*x +0.00113274*x + 0.425025
depth = 5 parm 0 = 129.425344 (best) with std of 0.002435
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 127.212672

Resetting pawn value to 100 for standardization

piece_v[knights]

(parameter value, solution ratio)
(148,0.462678)
(192.4,0.474253)
(236.8,0.48702)
(281.2,0.497234)
(325.6,0.489488)
(370,0.456549)
(414.4,0.427015)
(458.8,0.396715)
(503.2,0.377138)
(547.6,0.361307)
y=-1.52552e-006*x*x +0.00074894*x + 0.391803
depth = 5 parm 1 = 245.470566 (best) with std of 0.013982
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 263.335283

piece_v[bishops]

(parameter value, solution ratio)
(172.5,0.414503)
(224.25,0.450506)
(276,0.484211)
(327.75,0.496723)
(379.5,0.485829)
(431.25,0.475189)
(483,0.464039)
(534.75,0.45723)
(586.5,0.452719)
(638.25,0.448379)
y=-9.67539e-007*x*x +0.000793423*x + 0.32167
depth = 5 parm 2 = 410.021361 (best) with std of 0.014909
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 368.885680

piece_v[rooks]

(parameter value, solution ratio)
(254,0.471274)
(330.2,0.481998)
(406.4,0.485318)
(482.6,0.489659)
(558.8,0.486254)
(635,0.483445)
(711.2,0.480296)
(787.4,0.4797)
(863.6,0.477402)
(939.8,0.475615)
y=-1.00166e-007*x*x +0.000115436*x + 0.452679
depth = 5 parm 3 = 576.219557 (best) with std of 0.003381
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 529.409778

piece_v[queens]

(parameter value, solution ratio)
(589.5,0.479956)
(766.35,0.486254)
(943.2,0.488722)
(1120.05,0.489063)
(1296.9,0.488467)
(1473.75,0.488722)
(1650.6,0.488637)
(1827.45,0.488637)
(2004.3,0.488552)
(2181.15,0.488467)
y=-7.15393e-009*x*x +2.29479e-005*x + 0.471333
depth = 5 parm 4 = 1603.864712 (best) with std of 0.001594
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 1361.957356

knight_mobility

(parameter value, solution ratio)
(5,0.483445)
(6.5,0.484637)
(8,0.487616)
(9.5,0.488637)
(11,0.489318)
(12.5,0.489914)
(14,0.487105)
(15.5,0.486169)
(17,0.480722)
(18.5,0.477743)
y=-0.000202181*x*x +0.00438775*x + 0.465641
depth = 5 parm 5 = 10.851063 (best) with std of 0.000893
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 11.675532

bishop_mobility

(parameter value, solution ratio)
(3,0.491872)
(3.9,0.491872)
(4.8,0.491106)
(5.7,0.491616)
(6.6,0.489318)
(7.5,0.489914)
(8.4,0.482935)
(9.3,0.480211)
(10.2,0.473998)
(11.1,0.474083)
y=-0.000394841*x*x +0.00310841*x + 0.486041
depth = 5 parm 6 = 3.936290 (best) with std of 0.001809
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 3.468145

rook_mobility

(parameter value, solution ratio)
(1.5,0.488893)
(1.95,0.488893)
(2.4,0.492723)
(2.85,0.492723)
(3.3,0.491872)
(3.75,0.491872)
(4.2,0.489233)
(4.65,0.489233)
(5.1,0.485488)
(5.55,0.485488)
y=-0.00126731*x*x +0.00782491*x + 0.479923
depth = 5 parm 7 = 3.087211 (best) with std of 0.001168
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 2.743606

queen_mobility

(parameter value, solution ratio)
(0.5,0.489659)
(0.65,0.489659)
(0.8,0.489659)
(0.95,0.489659)
(1.1,0.492723)
(1.25,0.492723)
(1.4,0.492723)
(1.55,0.492723)
(1.7,0.492723)
(1.85,0.492723)
y=-0.00206336*x*x +0.00782014*x + 0.48554
depth = 5 parm 8 = 1.895000 (best) with std of 0.000846
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 1.497500

knight_outpost list multiplier

(parameter value, solution ratio)
(2,0.491021)
(2.6,0.492382)
(3.2,0.491701)
(3.8,0.490765)
(4.4,0.492638)
(5,0.492638)
(5.6,0.489829)
(6.2,0.491106)
(6.8,0.491021)
(7.4,0.491106)
y=-6.448e-005*x*x +0.000459098*x + 0.490879
depth = 5 parm 9 = 3.560000 (best) with std of 0.000965
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 3.980000

qr_on_7thrank list multiplier

(parameter value, solution ratio)
(1,0.489744)
(1.3,0.489659)
(1.6,0.49085)
(1.9,0.491191)
(2.2,0.49051)
(2.5,0.49085)
(2.8,0.490935)
(3.1,0.490425)
(3.4,0.49068)
(3.7,0.491021)
y=-0.000329565*x*x +0.00187393*x + 0.488247
depth = 5 parm 10 = 2.843043 (best) with std of 0.000410
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 2.371522

rook_on_hopen list multiplier

(parameter value, solution ratio)
(4,0.489403)
(5.2,0.489999)
(6.4,0.488297)
(7.6,0.491191)
(8.8,0.491106)
(10,0.488042)
(11.2,0.485914)
(12.4,0.487105)
(13.6,0.483445)
(14.8,0.482509)
y=-0.000118213*x*x +0.00155182*x + 0.484964
depth = 5 parm 11 = 6.563636 (best) with std of 0.001326
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 7.081818

dobled_penalty list multiplier

(parameter value, solution ratio)
(2,0.493148)
(2.6,0.493233)
(3.2,0.492978)
(3.8,0.491191)
(4.4,0.490595)
(5,0.492127)
(5.6,0.491872)
(6.2,0.489914)
(6.8,0.489318)
(7.4,0.491276)
y=9.13467e-005*x*x +-0.00142436*x + 0.495971
depth = 5 parm 12 = 7.796471 (WORST) with std of 0.000968
(+) for leading coefficient of quadrati
Your evaluation function is BROKEN for this parameter.
Instead of maximizing -- we found a MINIMUM!!!
Check the sign of the term in your evaluation function

Using maximum value found at 2.600000

isolated_penalty list multiplier

(parameter value, solution ratio)
(4,0.488722)
(5.2,0.49068)
(6.4,0.489063)
(7.6,0.492382)
(8.8,0.492127)
(10,0.49068)
(11.2,0.490425)
(12.4,0.489403)
(13.6,0.486935)
(14.8,0.48302)
y=-0.00019053*x*x +0.00316197*x + 0.47872
depth = 5 parm 13 = 8.297861 (best) with std of 0.001020
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 7.948931

weak_penalty list multiplier

(parameter value, solution ratio)
(2,0.489063)
(2.6,0.489233)
(3.2,0.490084)
(3.8,0.491361)
(4.4,0.491276)
(5,0.492553)
(5.6,0.493489)
(6.2,0.491616)
(6.8,0.491021)
(7.4,0.491191)
y=-0.000310758*x*x +0.0033957*x + 0.482916
depth = 5 parm 14 = 5.463573 (best) with std of 0.000714
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 5.531787

side_bonus list multiplier

(parameter value, solution ratio)
(2,0.491957)
(2.6,0.491957)
(3.2,0.491872)
(3.8,0.491872)
(4.4,0.492893)
(5,0.492893)
(5.6,0.492808)
(6.2,0.492638)
(6.8,0.492467)
(7.4,0.492467)
y=-6.62711e-005*x*x +0.000772542*x + 0.490412
depth = 5 parm 15 = 5.828649 (best) with std of 0.000316
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 5.114324

passed_bonus list multiplier

(parameter value, solution ratio)
(6,0.492553)
(7.8,0.493744)
(9.6,0.492893)
(11.4,0.49468)
(13.2,0.491106)
(15,0.491787)
(16.8,0.489999)
(18.6,0.491021)
(20.4,0.489063)
(22.2,0.487361)
y=-2.85583e-005*x*x +0.000461163*x + 0.491359
depth = 5 parm 16 = 8.074077 (best) with std of 0.001052
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 9.737038

bishop_pair_1

(parameter value, solution ratio)
(15,0.492297)
(19.5,0.492297)
(24,0.492382)
(28.5,0.492297)
(33,0.492297)
(37.5,0.492297)
(42,0.492212)
(46.5,0.492212)
(51,0.492297)
(55.5,0.492297)
y=4.7763e-008*x*x +-4.85749e-006*x + 0.492393
depth = 5 parm 17 = 50.850000 (WORST) with std of 0.000049
(+) for leading coefficient of quadrati
Your evaluation function is BROKEN for this parameter.
Instead of maximizing -- we found a MINIMUM!!!
Check the sign of the term in your evaluation function

Using maximum value found at 24.000000

bishop_pair_2

(parameter value, solution ratio)
(15,0.492808)
(19.5,0.492808)
(24,0.492723)
(28.5,0.493404)
(33,0.492808)
(37.5,0.492723)
(42,0.492978)
(46.5,0.493489)
(51,0.492808)
(55.5,0.492893)
y=-3.82104e-007*x*x +3.12943e-005*x + 0.49238
depth = 5 parm 18 = 40.950000 (best) with std of 0.000298
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 43.725000

bishop_pair_3

(parameter value, solution ratio)
(10,0.492893)
(13,0.492893)
(16,0.491531)
(19,0.493148)
(22,0.491616)
(25,0.489914)
(28,0.49068)
(31,0.489574)
(34,0.489829)
(37,0.488382)
y=-2.36427e-006*x*x +-5.24008e-005*x + 0.493759
depth = 5 parm 19 = -11.081818 (best) with std of 0.000744
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 3.959091

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-35,0.492127)
(-31,0.492127)
(-27,0.492127)
(-23,0.492127)
(-19,0.492127)
(-15,0.492127)
(-11,0.492127)
(-7,0.492127)
(-3,0.492127)
(1,0.492127)
depth = 5 badfit parm 20

Using default value of -15.000000

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-38,0.493148)
(-32.4,0.492808)
(-26.8,0.492893)
(-21.2,0.492808)
(-15.6,0.492638)
(-10,0.492127)
(-4.4,0.491957)
(1.2,0.492467)
(6.8,0.492553)
(12.4,0.492893)
y=9.9722e-007*x*x +1.54884e-005*x + 0.492406
depth = 5 parm 21 = -7.765773 (WORST) with std of 0.000248
(+) for leading coefficient of quadrati
Your evaluation function is BROKEN for this parameter.
Instead of maximizing -- we found a MINIMUM!!!
Check the sign of the term in your evaluation function

Using maximum value found at -38.000000

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-41,0.491872)
(-33.8,0.491957)
(-26.6,0.492212)
(-19.4,0.492553)
(-12.2,0.492893)
(-5,0.493148)
(2.2,0.492382)
(9.4,0.492808)
(16.6,0.492893)
(23.8,0.492893)
y=-4.16682e-007*x*x +8.37991e-006*x + 0.492842
depth = 5 parm 22 = 10.055522 (best) with std of 0.000254
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 2.527761

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-44,0.492297)
(-35.2,0.492893)
(-26.4,0.492978)
(-17.6,0.492808)
(-8.8,0.492382)
(0,0.492382)
(8.8,0.492127)
(17.6,0.493063)
(26.4,0.492297)
(35.2,0.491446)
y=-3.45548e-007*x*x +-1.23025e-005*x + 0.492641
depth = 5 parm 23 = -17.801446 (best) with std of 0.000417
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at -0.100723

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-47,0.491701)
(-36.6,0.491616)
(-26.2,0.491446)
(-15.8,0.491531)
(-5.4,0.491531)
(5,0.492382)
(15.4,0.492127)
(25.8,0.492212)
(36.2,0.491191)
(46.6,0.491957)
y=-9.53846e-008*x*x +3.33465e-006*x + 0.491855
depth = 5 parm 24 = 17.480000 (best) with std of 0.000407
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 11.240000

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-50,0.489914)
(-38,0.491021)
(-26,0.49034)
(-14,0.490935)
(-2,0.491787)
(10,0.492212)
(22,0.491957)
(34,0.492553)
(46,0.49434)
(58,0.492723)
y=-2.68667e-008*x*x +3.20681e-005*x + 0.491682
depth = 5 parm 25 = 596.800000 (best) with std of 0.000659
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 321.400000

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-53,0.480466)
(-39.4,0.482339)
(-25.8,0.484552)
(-12.2,0.487871)
(1.4,0.491872)
(15,0.492553)
(28.6,0.489488)
(42.2,0.488127)
(55.8,0.484807)
(69.4,0.478679)
y=-3.13929e-006*x*x +6.24459e-005*x + 0.490565
depth = 5 parm 26 = 9.945875 (best) with std of 0.001641
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 12.472937

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-56,0.477487)
(-40.8,0.486169)
(-25.6,0.488297)
(-10.4,0.49034)
(4.8,0.491446)
(20,0.490935)
(35.2,0.492808)
(50.4,0.485914)
(65.6,0.486424)
(80.8,0.481913)
y=-2.48526e-006*x*x +7.62273e-005*x + 0.491347
depth = 5 parm 27 = 15.335879 (best) with std of 0.001771
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 25.267939

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-59,0.471189)
(-42.2,0.480637)
(-25.4,0.487616)
(-8.6,0.488127)
(8.2,0.491957)
(25,0.49068)
(41.8,0.488808)
(58.6,0.481828)
(75.4,0.474764)
(92.2,0.466763)
y=-3.92263e-006*x*x +9.08677e-005*x + 0.490943
depth = 5 parm 28 = 11.582504 (best) with std of 0.001157
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 9.891252

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-62,0.475189)
(-43.6,0.478594)
(-25.2,0.485914)
(-6.8,0.487531)
(11.6,0.490765)
(30,0.491361)
(48.4,0.49051)
(66.8,0.489148)
(85.2,0.484041)
(103.6,0.480977)
y=-1.96263e-006*x*x +0.000119829*x + 0.489242
depth = 5 parm 29 = 30.527627 (best) with std of 0.001030
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 30.263814

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-65,0.472721)
(-45,0.481828)
(-25,0.485829)
(-5,0.486595)
(15,0.488978)
(35,0.491361)
(55,0.493404)
(75,0.49068)
(95,0.491106)
(115,0.486339)
y=-1.3033e-006*x*x +0.000136248*x + 0.488593
depth = 5 parm 30 = 52.270254 (best) with std of 0.001539
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 53.635127

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-58,0.482339)
(-36.4,0.487616)
(-14.8,0.491106)
(6.8,0.49051)
(28.4,0.49468)
(50,0.493574)
(71.6,0.491531)
(93.2,0.489914)
(114.8,0.488467)
(136.4,0.486254)
y=-9.45309e-007*x*x +8.45484e-005*x + 0.491376
depth = 5 parm 31 = 44.720000 (best) with std of 0.001240
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 36.560000

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-51,0.485573)
(-27.8,0.489148)
(-4.6,0.492382)
(18.6,0.49434)
(41.8,0.495532)
(65,0.493659)
(88.2,0.492978)
(111.4,0.493319)
(134.6,0.495446)
(157.8,0.493574)
y=-4.24684e-007*x*x +7.53505e-005*x + 0.491668
depth = 5 parm 32 = 88.713738 (best) with std of 0.001524
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 65.256869

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-54,0.43842)
(-29.2,0.44974)
(-4.4,0.461827)
(20.4,0.471359)
(45.2,0.485233)
(70,0.493659)
(94.8,0.493829)
(119.6,0.487616)
(144.4,0.481232)
(169.2,0.475019)
y=-2.57432e-006*x*x +0.000480974*x + 0.467693
depth = 5 parm 33 = 93.417846 (best) with std of 0.003865
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 94.108923

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-47,0.478594)
(-20.6,0.483871)
(5.8,0.487786)
(32.2,0.487956)
(58.6,0.491787)
(85,0.493829)
(111.4,0.493744)
(137.8,0.49417)
(164.2,0.490765)
(190.6,0.489744)
y=-5.99042e-007*x*x +0.00013192*x + 0.486285
depth = 5 parm 34 = 110.109560 (best) with std of 0.001033
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 123.954780

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-45,0.476551)
(-17,0.480126)
(11,0.48336)
(39,0.488042)
(67,0.493999)
(95,0.49417)
(123,0.49417)
(151,0.493319)
(179,0.49085)
(207,0.487276)
y=-7.29924e-007*x*x +0.000170182*x + 0.483912
depth = 5 parm 35 = 116.574986 (best) with std of 0.001510
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 105.787493

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-48,0.483275)
(-18.4,0.488637)
(11.2,0.491106)
(40.8,0.492808)
(70.4,0.495702)
(100,0.496127)
(129.6,0.491701)
(159.2,0.49085)
(188.8,0.489148)
(218.4,0.486424)
y=-5.57842e-007*x*x +0.000100737*x + 0.490077
depth = 5 parm 36 = 90.292137 (best) with std of 0.001285
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 95.146069

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-44,0.486765)
(-12.8,0.488382)
(18.4,0.491191)
(49.6,0.491787)
(80.8,0.494255)
(112,0.494936)
(143.2,0.493914)
(174.4,0.492893)
(205.6,0.492723)
(236.8,0.493233)
y=-2.16934e-007*x*x +6.20616e-005*x + 0.489783
depth = 5 parm 37 = 143.042809 (best) with std of 0.000843
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 127.521405

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-33,0.489659)
(-0.2,0.490425)
(32.6,0.492297)
(65.4,0.493659)
(98.2,0.493489)
(131,0.491701)
(163.8,0.492382)
(196.6,0.492553)
(229.4,0.492382)
(262.2,0.491361)
y=-1.12677e-007*x*x +3.03864e-005*x + 0.490988
depth = 5 parm 38 = 134.838298 (best) with std of 0.000803
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 100.119149

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-20,0.493744)
(14.4,0.496298)
(48.8,0.496042)
(83.2,0.49468)
(117.6,0.493744)
(152,0.494085)
(186.4,0.49451)
(220.8,0.494851)
(255.2,0.49434)
(289.6,0.493744)
y=-1.14427e-008*x*x +-4.08972e-007*x + 0.494979
depth = 5 parm 39 = -17.870476 (best) with std of 0.000947
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at -1.735238

tking_attack[parm_no-20]

(parameter value, solution ratio)
(-5,0.488978)
(31,0.491531)
(67,0.493233)
(103,0.493999)
(139,0.49417)
(175,0.494425)
(211,0.49434)
(247,0.494766)
(283,0.495361)
(319,0.494766)
y=-9.10482e-008*x*x +4.33765e-005*x + 0.489965
depth = 5 parm 40 = 238.206557 (best) with std of 0.000605
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 260.603279

tking_attack[parm_no-20]

(parameter value, solution ratio)
(112,0.494255)
(149.6,0.495191)
(187.2,0.49434)
(224.8,0.493914)
(262.4,0.49417)
(300,0.49468)
(337.6,0.494255)
(375.2,0.495276)
(412.8,0.495702)
(450.4,0.495361)
y=2.66812e-008*x*x +-1.18227e-005*x + 0.495618
depth = 5 parm 41 = 221.554188 (WORST) with std of 0.000464
(+) for leading coefficient of quadrati
Your evaluation function is BROKEN for this parameter.
Instead of maximizing -- we found a MINIMUM!!!
Check the sign of the term in your evaluation function

Using maximum value found at 412.800000

tking_attack[parm_no-20]

(parameter value, solution ratio)
(204,0.495191)
(243.2,0.494936)
(282.4,0.495446)
(321.6,0.495446)
(360.8,0.495702)
(400,0.495702)
(439.2,0.495702)
(478.4,0.496298)
(517.6,0.495787)
(556.8,0.495446)
y=-1.36376e-008*x*x +1.24283e-005*x + 0.492984
depth = 5 parm 42 = 455.664000 (best) with std of 0.000255
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 467.032000

tking_attack[parm_no-20]

(parameter value, solution ratio)
(221,0.495702)
(261.8,0.495787)
(302.6,0.496127)
(343.4,0.495446)
(384.2,0.495957)
(425,0.496212)
(465.8,0.496127)
(506.6,0.495872)
(547.4,0.495361)
(588.2,0.495617)
y=-1.18142e-008*x*x +9.15548e-006*x + 0.494213
depth = 5 parm 43 = 387.477377 (best) with std of 0.000279
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 406.238689

tking_attack[parm_no-20]

(parameter value, solution ratio)
(218,0.495532)
(260.4,0.495617)
(302.8,0.495787)
(345.2,0.495532)
(387.6,0.495617)
(430,0.496212)
(472.4,0.495872)
(514.8,0.495957)
(557.2,0.496298)
(599.6,0.495787)
y=-3.22802e-009*x*x +4.00182e-006*x + 0.494772
depth = 5 parm 44 = 619.857778 (best) with std of 0.000227
(-) {GOOD! We found a maximum!}

Using average of maximum value found and parabolic min at 588.528889



Here is some Beowulf data:
bishop_score=375 at 2; stddev=5.260952
knight_score=321 at 2; stddev=5.729267
queen_score=1100 at 2; stddev=1.804753
TIME rook_score=502 at 2; stddev=1.845185
TIME avoidance_depth_razor=10 at 2; stddev=1.309664
TIME back_rank_unsafe=6 at 2; stddev=1.373553
TIME backward_pawn_2=22 at 2; stddev=1.172593
TIME bishop_enprise=25 at 2; stddev=1.117213
bishop_pinned=14 at 2; stddev=2.887966
TIME bishop_pinned=17 at 2; stddev=1.000000
bishop_trapped=8 at 2; stddev=11.801636
centre_pawn_bonus=5 at 2; stddev=1.852247
TIME check_extend=2 at 2; stddev=1.985987
connected_rooks=0 at 2; stddev=6.733237
TIME dangerous_pp=103 at 2; stddev=1.279194
defended_pawn=0 at 2; stddev=20.124147
defended_q_attack=7 at 2; stddev=2.717087
doubled_pawns=6 at 2; stddev=5.125241
TIME doubled_pawns=44 at 2; stddev=1.056349
TIME doubled_pawns_iso=9 at 2; stddev=1.242091
drive_away_short=20 at 2; stddev=5.766423
TIME drive_away_short=16 at 2; stddev=1.618195
early_queen=0 at 2; stddev=3.745877
early_queen_penalty=3 at 2; stddev=3.549200
TIME early_queen_penalty=5 at 2; stddev=1.018698
early_rook_penalty=7 at 2; stddev=1.382093
TIME early_rook_penalty=6 at 2; stddev=1.276175
TIME easy_move_margin=500 at 2; stddev=1.198638
extra_minor=251 at 2; stddev=3.223356
TIME game_length=63 at 2; stddev=1.145497
half_open_file=14 at 2; stddev=5.771010
half_open_file_k=0 at 2; stddev=6.701958
half_open_file_q=5 at 2; stddev=5.387191
hostile_blockade=9 at 2; stddev=2.599027
TIME isolated_pawn=28 at 2; stddev=1.248013
king_safety=36 at 2; stddev=1.271517
TIME king_safety=33 at 2; stddev=2.292843
knight_pinned=5 at 2; stddev=5.824025
TIME knight_pinned=39 at 2; stddev=0.949868
knight_trapped=10 at 2; stddev=2.926294
late_queen_bonus=2 at 2; stddev=0.743975
TIME lone_queen=40 at 2; stddev=0.908248
TIME loss_scale=150 at 2; stddev=1.145497
TIME max_qui=2 at 2; stddev=1.510068
TIME min_left=32 at 2; stddev=1.066947
TIME no_centre_pawns=16 at 2; stddev=1.619936
TIME no_pawns=7 at 2; stddev=1.034522
onereply_extend=8 at 2; stddev=5.223800
open_file=17 at 2; stddev=4.700907
open_file_k=8 at 2; stddev=1.518870
open_file_q=1 at 2; stddev=2.096126
overstretched=18 at 2; stddev=1.959778
TIME overstretched=20 at 2; stddev=1.425820
TIME pawnpush_extend=10 at 2; stddev=1.294325
piece_blockade=0 at 2; stddev=4.836995
TIME pp_attacked=9 at 2; stddev=1.596531
TIME pp_storm=20 at 2; stddev=1.117213
queen_7th_rank=24 at 2; stddev=1.608946
queen_attack=4 at 2; stddev=3.551222
TIME queen_enprise=60 at 2; stddev=1.529332
queen_immobile=7 at 2; stddev=0.743975
queen_pinned=10 at 2; stddev=1.248013
queen_trapped=1 at 2; stddev=19.465194
TIME queen_trapped=5 at 2; stddev=1.323754
TIME razor_harsh=166 at 2; stddev=1.056349
TIME razor_margin=10 at 2; stddev=1.331069
TIME razor_scale=43 at 2; stddev=1.359125
revcheck_extend=15 at 2; stddev=1.231925
reward_castle=26 at 2; stddev=4.453600
rook_7th_rank=6 at 2; stddev=1.399735
TIME rook_7th_rank=50 at 2; stddev=1.207107
rook_blocked=0 at 2; stddev=6.106968
TIME rook_blocked=4 at 2; stddev=1.709093
rook_boxed_in=0 at 2; stddev=1.888730
TIME rook_trapped=48 at 2; stddev=1.406327
TIME shield_zero=0 at 2; stddev=3.683834
TIME side_attack=4 at 2; stddev=2.058387
spoilt_castle_1=11 at 2; stddev=1.056349
spoilt_castle_2=14 at 2; stddev=1.000000
two_bishops=17 at 2; stddev=4.240066
TIME two_bishops=35 at 2; stddev=22.395586
undeveloped=1 at 2; stddev=6.851790
TIME v_dangerous_pp=75 at 2; stddev=4.198455
bishop_score=359 at 3; stddev=9.149938
knight_score=320 at 3; stddev=17.540917
queen_score=1100 at 3; stddev=2.765161
rook_score=517 at 3; stddev=4.816359
TIME rook_score=534 at 3; stddev=2.031417
TIME avoid_null_mat=21 at 3; stddev=1.790994
TIME avoid_null_pieces=11 at 3; stddev=1.513085
TIME back_rank_unsafe=10 at 3; stddev=2.606961
TIME backward_pawn_2=28 at 3; stddev=1.921351
TIME backward_pawn_3=51 at 3; stddev=1.690238
TIME bishop_enprise=36 at 3; stddev=2.158312
bishop_pinned=14 at 3; stddev=4.140055
bishop_trapped=11 at 3; stddev=10.257611
TIME block_pawns=17 at 3; stddev=2.037236
centre_pawn_bonus=4 at 3; stddev=2.651411
TIME centre_pawn_bonus=3 at 3; stddev=1.787301
TIME check_extend=11 at 3; stddev=5.464853
connected_rooks=5 at 3; stddev=4.662691
TIME connected_rooks=0 at 3; stddev=15.666431
defended_pawn=0 at 3; stddev=15.953463
TIME defended_pawn=10 at 3; stddev=4.033850
defended_pawn=0 at 3; stddev=25.792338
defended_pawn=3 at 3; stddev=72.317145
TIME defended_pawn=9 at 3; stddev=2.549971
defended_pawn=2 at 3; stddev=9.999123
defended_q_attack=8 at 3; stddev=2.815836
TIME defended_q_attack=5 at 3; stddev=1.655216
defended_pawn=2 at 3; stddev=9.637182
defended_q_attack=8 at 3; stddev=2.815836
TIME defended_q_attack=6 at 3; stddev=2.035299
doubled_pawns=21 at 3; stddev=5.442527
TIME doubled_pawns_iso=16 at 3; stddev=1.905699
doubled_rooks=5 at 3; stddev=2.427624
drive_away_long=4 at 3; stddev=1.675139
drive_away_short=10 at 3; stddev=8.332244
early_queen=3 at 3; stddev=5.117513
early_queen_penalty=3 at 3; stddev=2.333550
TIME early_queen_penalty=3 at 3; stddev=2.202239
TIME easy_move_margin=556 at 3; stddev=1.831844
eval_futility=6535 at 3; stddev=11.234901
TIME extend_scale=11 at 3; stddev=2.019498
extra_minor=151 at 3; stddev=7.879992
TIME extra_minor=131 at 3; stddev=1.959778
TIME game_length=75 at 3; stddev=1.659844
half_open_file=12 at 3; stddev=3.438720
TIME half_open_file=18 at 3; stddev=1.309575
half_open_file_k=2 at 3; stddev=11.730804
half_open_file_q=0 at 3; stddev=3.296256
TIME half_open_file_q=5 at 3; stddev=1.554366
TIME ignore_zugzwang=80 at 3; stddev=1.457427
king_safety=31 at 3; stddev=1.023268
TIME king_tropism=11 at 3; stddev=1.901839
knight_pinned=30 at 3; stddev=4.507434
TIME knight_pinned=20 at 3; stddev=0.962910
TIME knight_trapped=50 at 3; stddev=1.798809
TIME late_queen_bonus=7 at 3; stddev=1.831844
lone_queen=60 at 3; stddev=1.087570
TIME max_extend=21 at 3; stddev=1.809307
TIME min_left=41 at 3; stddev=1.690238
TIME no_centre_pawns=21 at 3; stddev=1.447009
TIME no_pawns=14 at 3; stddev=1.546536
TIME onereply_extend=9 at 3; stddev=2.248469
open_file=21 at 3; stddev=3.828270
open_file_k=3 at 3; stddev=2.604700
open_file_q=1 at 3; stddev=1.695727
TIME open_file_q=7 at 3; stddev=2.396111
TIME overstretched=26 at 3; stddev=1.984042
pawn_block=3 at 3; stddev=6.390819
TIME pawn_block=7 at 3; stddev=1.787378
pawnpush_extend=18 at 3; stddev=1.117213
piece_blockade=6 at 3; stddev=3.721949
TIME piece_blockade=12 at 3; stddev=1.338082
TIME queen_7th_rank=31 at 3; stddev=1.650569
queen_attack_def=7 at 3; stddev=3.198324
TIME queen_attack_def=18 at 3; stddev=2.439870
TIME queen_immobile=21 at 3; stddev=2.054563
TIME queen_mobile=21 at 3; stddev=1.563462
queen_pinned=36 at 3; stddev=1.023268
TIME queen_pinned=36 at 3; stddev=1.831844
queen_trapped=5 at 3; stddev=14.268062
TIME queen_trapped=-4 at 3; stddev=2.242330
TIME razor_harsh=225 at 3; stddev=2.629722
razor_margin=10 at 3; stddev=0.785631
razor_scale=37 at 3; stddev=0.743975
recap_extend=4 at 3; stddev=16.610851
TIME recap_extend=4 at 3; stddev=5.969613
TIME revcheck_extend=21 at 3; stddev=1.563462
reward_castle=16 at 3; stddev=7.401518
TIME rook_attack=16 at 3; stddev=2.093140
rook_behind_pp=8 at 3; stddev=2.389822
rook_blocked=2 at 3; stddev=8.020607
TIME rook_boxed_in=91 at 3; stddev=1.926785
TIME rook_enprise=87 at 3; stddev=1.719875
TIME rook_occupied=88 at 3; stddev=1.675139
TIME rook_trapped=66 at 3; stddev=2.232051
shield_one=9 at 3; stddev=2.380350
TIME shield_one=7 at 3; stddev=1.649534
shield_zero=0 at 3; stddev=0.500000
TIME shield_zero=7 at 3; stddev=1.423714
space_defended=0 at 3; stddev=0.500000
TIME space_defended=12 at 3; stddev=1.818806
space_won=0 at 3; stddev=0.500000
TIME space_won=3 at 3; stddev=1.845025
undeveloped=20 at 3; stddev=7.064696
unstoppable_pp=748 at 3; stddev=1.294325
TIME window=87 at 3; stddev=6.370629
bishop_score=348 at 3; stddev=15.388874
knight_score=314 at 3; stddev=5.108481
queen_score=1100 at 3; stddev=3.056504
TIME queen_score=1008 at 3; stddev=4.315694
rook_score=489 at 3; stddev=3.288155
TIME rook_score=580 at 3; stddev=1.822876
avoidance_depth_razor=6 at 3; stddev=0.500000
TIME avoidance_depth_razor=11 at 3; stddev=1.480473
TIME avoid_raz_num=9 at 3; stddev=2.872963
TIME back_rank_unsafe=10 at 3; stddev=1.990046
TIME backward_pawn_2=28 at 3; stddev=3.553491
bishop_trapped=14 at 3; stddev=7.875958
block_pawns=15 at 3; stddev=2.788689
TIME block_pawns=0 at 3; stddev=1.494030
centre_pawn_bonus=5 at 3; stddev=2.397367
TIME check_extend=11 at 3; stddev=8.665109
connected_rooks=6 at 3; stddev=5.797294
TIME connected_rooks=6 at 3; stddev=11.044231
defended_pawn=3 at 4; stddev=21.876723
defended_q_attack=9 at 4; stddev=3.011166
doubled_pawns=28 at 4; stddev=3.677300
TIME doubled_pawns_iso=16 at 4; stddev=30.470411
doubled_rooks=7 at 4; stddev=2.651760
drive_away_long=6 at 4; stddev=4.108192
TIME drive_away_long=6 at 4; stddev=1.776621
drive_away_short=20 at 4; stddev=6.000216
early_queen_penalty=0 at 4; stddev=4.747408
bishop_score=341 at 5; stddev=10.606575
knight_score=312 at 5; stddev=14.461256
queen_score=998 at 5; stddev=3.111786
rook_score=510 at 5; stddev=6.534622
avoidance_depth_razor=13 at 5; stddev=2.238412
TIME avoid_null_pieces=11 at 5; stddev=2.917255
TIME avoid_raz_num=9 at 5; stddev=2.031417
TIME back_rank_unsafe=10 at 5; stddev=2.723521
TIME backward_pawn_1=12 at 5; stddev=22.512133


Unfortunately, the parameter maximums for solving test sets are not the same as the values for best game play. If you use the test set parameters, they will solve test sets better and faster than before, but they will play OTB like doggy-doo.
Dann Corbit
 

Re: An EPD test suite generator.

Postby Uri Blass » 02 Dec 2005, 20:18

Michael Sherwin wrote:Hi,
I would like an EPD test suite subset generator for christmas! It would work like this. An existing open source engine would be modified to search each position of an EPD set, twice. First with all extentions (except for standard null move with verification search) turned off and a second time with selected extensions turned on. If the engine found the correct move with the extensions turned off then that position is omitted from the new EPD file. If the engine with the extensions turned on, did not find the correct move then that position is also omitted. An engine speed factor control may be added so that one could adjust the node rate or time allotted of the engine to match thier own engine. In this way, testing of engines could be made faster and more productive. Any thoughts?


I do not understand why do you think that it can be productive.

It seems that you want the test suite to include only positions that extension help to solve them and I do not understand your reasons.

Uri
User avatar
Uri Blass
 
Posts: 727
Joined: 09 Oct 2004, 05:59
Location: Tel-Aviv

Re: An EPD test suite generator.

Postby Michael Sherwin » 02 Dec 2005, 22:42

Dann Corbit wrote:
>Unfortunately, the parameter maximums for solving test sets are not
>the same as the values for best game play. If you use the test set >parameters, they will solve test sets better and faster than before, but >they will play OTB like doggy-doo.

Hi Dann,
This is my opinion about EPD test suites as well. The better that Romi does against the test sets, the worse Romi plays against other engines. The version with history reductions did fantastic against the test suites, but is weaker against most programs.
THANKS
Mike

Uri Blass wrote:
>I do not understand why do you think that it can be productive.

>It seems that you want the test suite to include only positions that >extension help to solve them and I do not understand your reasons.

>Uri

Hi Uri,
A lot of time is used in chess programming working on extentions. A lot of time is wasted on EPD positions that any program can solve. A lot of time is wasted on positions that no program can solve. I want a small quick set of EPD positions so that it is easy to measure progress. And fast
to run.
THANKS
Mike
User avatar
Michael Sherwin
 
Posts: 168
Joined: 21 Jul 2005, 06:10
Location: USA


Return to Programming and Technical Discussions

Who is online

Users browsing this forum: No registered users and 42 guests