Skip to content

Commit

Permalink
feat: Tune hce from zero with more datasets (#13)
Browse files Browse the repository at this point in the history
Passed STC:

Elo   | 5.71 +- 4.42 (95%)
SPRT  | 8.0+0.08s Threads=1 Hash=16MB
LLR   | 2.96 (-2.94, 2.94) [0.00, 5.00]
Games | N: 16314 W: 6311 L: 6043 D: 3960
Penta | [986, 1425, 3176, 1475, 1095]
https://openbench.chessnibble.com/test/105/

BENCH: 29354484
  • Loading branch information
IbaiBuR committed Jul 12, 2024
1 parent ae85162 commit 17445b7
Showing 1 changed file with 63 additions and 69 deletions.
132 changes: 63 additions & 69 deletions src/eval/eval.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,81 +14,75 @@ constexpr packed_score S(i16 mg, i16 eg) { return {mg, eg}; }
/// @brief Evaluation terms
namespace terms {

template <typename T>
using piece_table = std::array<T, constants::num_piece_types>;
constexpr std::array piece_values = {S(67, 79), S(281, 250), S(256, 233),
S(330, 378), S(622, 693), S(0, 0)};

using piece_square_table = piece_table<std::array<packed_score, constants::num_squares>>;

constexpr piece_table<packed_score> piece_values = {S(61, 93), S(259, 298), S(237, 279),
S(297, 454), S(573, 833), S(0, 0)};

constexpr piece_square_table all_psqt = {
constexpr std::array<std::array<packed_score, 64>, 6> all_psqt = {
{
{S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0),
S(0, 0), S(122, 278), S(155, 270), S(123, 271), S(159, 207), S(141, 202), S(113, 220),
S(36, 274), S(-2, 293), S(21, 196), S(38, 206), S(82, 162), S(88, 136), S(92, 125),
S(121, 106), S(94, 167), S(42, 163), S(1, 108), S(33, 93), S(36, 68), S(39, 57),
S(66, 46), S(55, 51), S(61, 74), S(30, 75), S(-12, 76), S(21, 72), S(20, 50),
S(40, 46), S(40, 44), S(31, 46), S(43, 61), S(15, 51), S(-15, 68), S(17, 71),
S(16, 48), S(17, 63), S(36, 54), S(22, 51), S(61, 58), S(22, 46), S(-17, 73),
S(16, 75), S(9, 57), S(-3, 64), S(22, 72), S(42, 57), S(71, 56), S(11, 47),
S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0),
{S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0),
S(0, 0), S(143, 214), S(158, 215), S(138, 211), S(161, 163), S(152, 162), S(129, 175),
S(48, 226), S(21, 229), S(18, 159), S(43, 160), S(80, 131), S(83, 109), S(90, 99),
S(117, 83), S(96, 129), S(44, 130), S(1, 88), S(33, 77), S(33, 57), S(40, 46),
S(63, 37), S(53, 40), S(61, 59), S(30, 59), S(-13, 65), S(21, 60), S(19, 41),
S(39, 36), S(39, 35), S(30, 37), S(45, 48), S(11, 43), S(-15, 59), S(17, 58),
S(15, 40), S(15, 53), S(34, 45), S(23, 42), S(64, 45), S(23, 38), S(-18, 65),
S(17, 63), S(7, 51), S(-3, 58), S(20, 58), S(43, 47), S(74, 44), S(13, 39),
S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0), S(0, 0),
S(0, 0)},
{S(-86, 43), S(-42, 123), S(37, 141), S(78, 130), S(119, 131), S(41, 102), S(-24, 128),
S(-14, 14), S(87, 120), S(114, 143), S(145, 151), S(165, 147), S(137, 136), S(222, 122),
S(101, 141), S(133, 97), S(104, 140), S(146, 156), S(169, 177), S(182, 178), S(234, 156),
S(226, 152), S(176, 142), S(130, 124), S(96, 153), S(112, 177), S(143, 192), S(168, 195),
S(143, 197), S(177, 189), S(123, 176), S(140, 141), S(77, 152), S(98, 165), S(114, 194),
S(116, 194), S(128, 197), S(121, 185), S(120, 167), S(90, 140), S(52, 130), S(81, 154),
S(95, 167), S(103, 185), S(117, 183), S(100, 161), S(108, 147), S(72, 132), S(36, 119),
S(52, 140), S(72, 152), S(85, 155), S(86, 153), S(92, 148), S(75, 127), S(70, 131),
S(-15, 114), S(45, 92), S(35, 132), S(53, 137), S(58, 137), S(72, 122), S(48, 100),
S(24, 101)},
{S(127, 186), S(107, 197), S(118, 194), S(66, 210), S(79, 202), S(96, 191), S(137, 183),
S(98, 180), S(159, 168), S(192, 191), S(180, 195), S(153, 199), S(196, 187), S(187, 188),
S(183, 196), S(155, 169), S(163, 204), S(193, 196), S(197, 209), S(226, 193), S(204, 201),
S(248, 203), S(214, 196), S(200, 193), S(153, 197), S(169, 216), S(200, 209), S(212, 226),
S(209, 217), S(202, 214), S(169, 213), S(154, 198), S(144, 190), S(161, 212), S(164, 223),
S(194, 218), S(190, 218), S(167, 215), S(161, 208), S(153, 177), S(155, 189), S(164, 203),
S(164, 213), S(165, 212), S(167, 217), S(162, 213), S(167, 190), S(172, 176), S(157, 182),
S(158, 182), S(173, 180), S(145, 200), S(153, 201), S(172, 187), S(177, 190), S(164, 156),
S(131, 165), S(155, 188), S(132, 158), S(127, 187), S(133, 182), S(127, 182), S(162, 166),
S(148, 147)},
{S(243, 383), S(232, 391), S(242, 400), S(248, 394), S(269, 382), S(286, 375), S(263, 377),
S(289, 370), S(224, 385), S(224, 400), S(247, 404), S(272, 391), S(251, 393), S(290, 376),
S(268, 374), S(308, 356), S(196, 388), S(223, 390), S(226, 391), S(230, 387), S(266, 373),
S(266, 366), S(310, 357), S(282, 350), S(176, 391), S(191, 388), S(195, 399), S(208, 393),
S(214, 375), S(212, 369), S(220, 366), S(224, 359), S(150, 380), S(155, 385), S(168, 387),
S(184, 384), S(183, 379), S(161, 377), S(190, 361), S(179, 357), S(140, 373), S(154, 372),
S(163, 371), S(163, 376), S(170, 369), S(164, 361), S(208, 334), S(180, 337), S(137, 365),
S(152, 369), S(171, 370), S(167, 372), S(172, 361), S(174, 356), S(193, 345), S(159, 351),
S(155, 355), S(161, 369), S(172, 379), S(178, 376), S(184, 366), S(168, 359), S(189, 354),
S(156, 343)},
{S(422, 703), S(434, 716), S(474, 735), S(519, 713), S(520, 712), S(525, 708), S(542, 653),
S(470, 698), S(476, 668), S(451, 719), S(459, 757), S(452, 776), S(457, 799), S(502, 754),
S(481, 732), S(528, 703), S(471, 685), S(472, 705), S(471, 753), S(490, 754), S(490, 773),
S(551, 745), S(545, 704), S(542, 684), S(451, 695), S(455, 723), S(463, 740), S(462, 768),
S(465, 782), S(479, 763), S(476, 746), S(483, 720), S(449, 686), S(450, 722), S(448, 732),
S(458, 760), S(459, 753), S(454, 744), S(468, 716), S(472, 700), S(448, 669), S(455, 688),
S(450, 719), S(446, 718), S(452, 721), S(458, 713), S(476, 681), S(469, 666), S(446, 658),
S(452, 664), S(462, 662), S(461, 677), S(459, 680), S(472, 647), S(479, 611), S(496, 569),
S(442, 653), S(432, 661), S(438, 667), S(452, 656), S(446, 662), S(429, 661), S(461, 620),
S(450, 621)},
{S(13, -94), S(10, -35), S(39, -24), S(-133, 37), S(-68, 14), S(-16, 19),
S(38, 7), S(136, -119), S(-124, 22), S(-85, 62), S(-132, 74), S(5, 48),
S(-63, 77), S(-51, 91), S(-26, 83), S(-59, 42), S(-165, 44), S(-36, 66),
S(-111, 88), S(-135, 101), S(-82, 103), S(15, 93), S(-31, 94), S(-67, 53),
S(-121, 28), S(-129, 71), S(-149, 91), S(-201, 107), S(-180, 106), S(-140, 101),
S(-141, 91), S(-180, 59), S(-109, 11), S(-117, 49), S(-154, 79), S(-184, 96),
S(-181, 95), S(-138, 79), S(-147, 65), S(-179, 44), S(-53, -1), S(-30, 25),
S(-101, 51), S(-115, 66), S(-107, 65), S(-106, 54), S(-48, 29), S(-70, 13),
S(60, -33), S(7, 3), S(-9, 18), S(-52, 32), S(-55, 36), S(-31, 22),
S(28, -2), S(41, -27), S(57, -76), S(84, -53), S(46, -28), S(-76, -3),
S(1, -38), S(-43, -8), S(58, -44), S(63, -80)},
{S(-99, 52), S(-15, 100), S(46, 119), S(69, 111), S(133, 101), S(5, 100), S(2, 101),
S(-15, 10), S(77, 97), S(111, 117), S(166, 114), S(162, 121), S(157, 107), S(224, 94),
S(107, 109), S(126, 77), S(107, 109), S(149, 122), S(173, 140), S(188, 142), S(237, 120),
S(233, 121), S(182, 111), S(130, 99), S(105, 120), S(120, 142), S(147, 155), S(175, 156),
S(146, 161), S(179, 152), S(124, 144), S(146, 109), S(86, 119), S(107, 133), S(123, 157),
S(122, 159), S(134, 160), S(128, 149), S(128, 132), S(93, 112), S(63, 100), S(91, 122),
S(104, 132), S(114, 148), S(126, 146), S(107, 129), S(117, 114), S(77, 101), S(47, 91),
S(61, 111), S(82, 119), S(93, 123), S(94, 122), S(102, 115), S(85, 102), S(78, 99),
S(6, 78), S(57, 68), S(43, 104), S(62, 109), S(65, 107), S(80, 94), S(58, 74),
S(31, 75)},
{S(136, 149), S(112, 159), S(123, 156), S(85, 170), S(82, 169), S(97, 159), S(150, 150),
S(114, 150), S(160, 139), S(200, 154), S(183, 161), S(163, 163), S(200, 154), S(204, 152),
S(191, 157), S(169, 134), S(168, 164), S(200, 160), S(210, 167), S(228, 158), S(217, 164),
S(247, 167), S(222, 159), S(207, 154), S(160, 161), S(173, 179), S(207, 169), S(220, 181),
S(214, 178), S(206, 174), S(176, 176), S(163, 160), S(153, 155), S(173, 171), S(174, 181),
S(203, 176), S(201, 176), S(174, 178), S(172, 169), S(161, 147), S(165, 151), S(174, 164),
S(173, 173), S(174, 172), S(177, 178), S(173, 172), S(175, 153), S(179, 143), S(166, 147),
S(168, 146), S(179, 148), S(155, 163), S(162, 165), S(182, 150), S(188, 150), S(171, 126),
S(139, 135), S(162, 148), S(143, 128), S(135, 155), S(140, 149), S(133, 149), S(169, 130),
S(150, 126)},
{S(259, 316), S(248, 325), S(260, 329), S(267, 323), S(285, 315), S(292, 311), S(272, 315),
S(295, 307), S(234, 326), S(233, 336), S(260, 335), S(285, 324), S(264, 326), S(304, 311),
S(282, 312), S(310, 296), S(208, 329), S(230, 328), S(237, 328), S(244, 323), S(279, 310),
S(276, 307), S(313, 298), S(279, 298), S(183, 330), S(196, 329), S(207, 334), S(224, 327),
S(227, 316), S(223, 314), S(230, 309), S(232, 302), S(162, 321), S(171, 323), S(177, 327),
S(196, 323), S(197, 317), S(176, 317), S(200, 303), S(187, 298), S(153, 312), S(167, 312),
S(174, 311), S(179, 313), S(184, 308), S(177, 303), S(219, 279), S(190, 283), S(150, 308),
S(168, 308), S(182, 310), S(183, 309), S(187, 301), S(188, 297), S(205, 288), S(165, 296),
S(167, 300), S(175, 309), S(186, 317), S(192, 315), S(197, 305), S(181, 301), S(197, 298),
S(168, 286)},
{S(449, 600), S(468, 609), S(501, 621), S(538, 605), S(539, 607), S(558, 596), S(560, 557),
S(499, 599), S(488, 576), S(471, 615), S(481, 646), S(474, 665), S(480, 680), S(536, 641),
S(511, 621), S(563, 573), S(487, 580), S(489, 604), S(500, 632), S(514, 635), S(521, 654),
S(575, 624), S(573, 590), S(556, 579), S(473, 589), S(476, 618), S(486, 629), S(488, 651),
S(493, 663), S(500, 653), S(496, 636), S(508, 607), S(469, 585), S(475, 611), S(474, 619),
S(480, 649), S(487, 634), S(481, 629), S(494, 605), S(495, 590), S(469, 565), S(481, 576),
S(476, 607), S(474, 603), S(481, 607), S(485, 599), S(500, 573), S(493, 556), S(467, 560),
S(479, 562), S(487, 558), S(487, 569), S(485, 571), S(499, 538), S(504, 510), S(510, 484),
S(468, 551), S(459, 555), S(465, 560), S(480, 540), S(471, 555), S(455, 548), S(470, 529),
S(468, 524)},
{S(67, -90), S(29, -30), S(54, -26), S(-31, 5), S(20, -6), S(25, 9), S(42, 5),
S(123, -75), S(-54, 6), S(-7, 36), S(-36, 39), S(20, 27), S(5, 41), S(14, 59),
S(-9, 61), S(-36, 26), S(-83, 23), S(20, 42), S(-55, 57), S(-60, 63), S(-33, 65),
S(35, 66), S(1, 71), S(-47, 41), S(-71, 12), S(-74, 48), S(-88, 63), S(-122, 74),
S(-118, 77), S(-84, 73), S(-89, 67), S(-127, 41), S(-75, 1), S(-76, 33), S(-105, 57),
S(-137, 72), S(-133, 72), S(-112, 62), S(-111, 48), S(-133, 27), S(-50, -2), S(-28, 19),
S(-88, 41), S(-100, 52), S(-93, 52), S(-90, 43), S(-44, 23), S(-63, 8), S(46, -27),
S(-1, 3), S(-19, 16), S(-62, 28), S(-60, 29), S(-36, 19), S(22, -4), S(32, -25),
S(36, -57), S(73, -49), S(36, -26), S(-84, -1), S(-4, -33), S(-50, -7), S(48, -40),
S(50, -72)},
}
};

constexpr packed_score tempo = S(25, 28);
constexpr packed_score tempo = S(30, 21);

} // namespace terms

Expand Down

0 comments on commit 17445b7

Please sign in to comment.