adfasdfadsfasdf

Untitled

Mar 2nd, 2023
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 49.87 KB | None | 0 0
  1. Starting tuning
  2.  
  3. Starting thread pool...
  4. Getting initial parameters...
  5. Got 75 parameters
  6. Initial parameters:
  7. const int material[] = {S(82, 94), S(337, 281), S(365, 297), S(477, 512), S(1025, 936), 0};
  8. const int passed pawns = S(10, 10);
  9. const int isolated pawns = S(-8, -16);
  10. const int bishop bonus = S(30, 60);
  11. const int knight mobility[] = {S(-31, -38), S(-27, -28), S(-6, -15), S(-1, -8), S(1, 3), S(6, 6), S(10, 8), S(14, 10), S(36, 25)};
  12. const int bishop mobility[] = {S(-24, -28), S(-10, -24), S(7, -4), S(14, 6), S(20, 10), S(25, 20), S(26, 28), S(30, 28), S(31, 32), S(34, 36), S(39, 39), S(41, 43), S(45, 44), S(48, 49)};
  13. const int rook mobility[] = {S(-30, -41), S(-12, -7), S(0, 8), S(1, 21), S(2, 36), S(7, 50), S(10, 51), S(15, 61), S(20, 66), S(20, 69), S(20, 75), S(22, 80), S(28, 82), S(29, 85), S(33, 87)};
  14. const int queen mobility[] = {S(-20, -30), S(-10, -20), S(-5, -5), 0, S(10, 20), S(10, 30), S(10, 30), S(15, 35), S(20, 35), S(25, 50), S(30, 50), S(35, 50), S(35, 60), S(35, 65), S(35, 65), S(35, 65), S(35, 70), S(25, 70), S(37, 70), S(40, 75), S(45, 75), S(50, 85), S(50, 85), S(55, 85), S(55, 90), S(55, 90), S(55, 95), S(60, 100)};
  15.  
  16. Loading /Users/archishmaan/Documents/CodeProjects/data/quiet-labeled.epd...
  17. [0s] Loaded 100000 entries...
  18. [0s] Loaded 200000 entries...
  19. [0s] Loaded 300000 entries...
  20. [0s] Loaded 400000 entries...
  21. [1s] Loaded 500000 entries...
  22. [1s] Loaded 600000 entries...
  23. [1s] Loaded 700000 entries...
  24. [1s] Loaded 725000 entries from /Users/archishmaan/Documents/CodeProjects/data/quiet-labeled.epd, 725000 total
  25. Data loading complete
  26.  
  27. Dataset statistics:
  28. Total positions: 725000
  29. White: 363859 (50.1874%)
  30. White 1.0: 110511 (15.2429%)
  31. White 0.5: 100224 (13.824%)
  32. White 0.0: 153124 (21.1206%)
  33. White avg: 0.441443
  34. Black: 361141 (49.8126%)
  35. Black 1.0: 162090 (22.3572%)
  36. Black 0.5: 98560 (13.5945%)
  37. Black 0.0: 100491 (13.8608%)
  38. Black avg: 0.585284
  39.  
  40. Initial parameters:
  41. const int material[] = {S(82, 94), S(337, 281), S(365, 297), S(477, 512), S(1025, 936), 0};
  42. const int passed pawns = S(10, 10);
  43. const int isolated pawns = S(-8, -16);
  44. const int bishop bonus = S(30, 60);
  45. const int knight mobility[] = {S(-31, -38), S(-27, -28), S(-6, -15), S(-1, -8), S(1, 3), S(6, 6), S(10, 8), S(14, 10), S(36, 25)};
  46. const int bishop mobility[] = {S(-24, -28), S(-10, -24), S(7, -4), S(14, 6), S(20, 10), S(25, 20), S(26, 28), S(30, 28), S(31, 32), S(34, 36), S(39, 39), S(41, 43), S(45, 44), S(48, 49)};
  47. const int rook mobility[] = {S(-30, -41), S(-12, -7), S(0, 8), S(1, 21), S(2, 36), S(7, 50), S(10, 51), S(15, 61), S(20, 66), S(20, 69), S(20, 75), S(22, 80), S(28, 82), S(29, 85), S(33, 87)};
  48. const int queen mobility[] = {S(-20, -30), S(-10, -20), S(-5, -5), 0, S(10, 20), S(10, 30), S(10, 30), S(15, 35), S(20, 35), S(25, 50), S(30, 50), S(35, 50), S(35, 60), S(35, 65), S(35, 65), S(35, 65), S(35, 70), S(25, 70), S(37, 70), S(40, 75), S(45, 75), S(50, 85), S(50, 85), S(55, 85), S(55, 90), S(55, 90), S(55, 95), S(60, 100)};
  49.  
  50. Using predefined K = 2.5
  51. K = 2.5
  52. Initial error = 0.0685031
  53. [2s] Epoch 100 (259.74 eps), error 0.0636393, LR 1
  54. const int material[] = {S(132, 97), S(454, 368), S(448, 375), S(642, 692), S(1343, 1267), 0};
  55. const int passed pawns = S(1, 36);
  56. const int isolated pawns = S(-30, -19);
  57. const int bishop bonus = S(40, 69);
  58. const int knight mobility[] = {S(-7, -42), S(11, 13), S(27, -3), S(29, 20), S(67, 19), S(75, 51), S(70, 65), S(70, 91), S(84, 82)};
  59. const int bishop mobility[] = {S(-5, 68), S(24, 12), S(43, 12), S(56, 31), S(66, 50), S(63, 66), S(69, 74), S(71, 80), S(79, 94), S(84, 89), S(86, 104), S(87, 98), S(100, 108), S(126, 104)};
  60. const int rook mobility[] = {S(-24, -16), S(-10, 28), S(-11, 45), S(-8, 59), S(1, 76), S(13, 82), S(20, 88), S(26, 99), S(32, 109), S(51, 108), S(66, 113), S(72, 116), S(95, 116), S(94, 116), S(82, 126)};
  61. const int queen mobility[] = {S(49, 94), S(51, 119), S(58, 77), S(61, 73), S(69, 76), S(82, 44), S(80, 15), S(76, 44), S(75, 38), S(77, 66), S(76, 85), S(67, 128), S(56, 154), S(56, 181), S(58, 194), S(47, 213), S(52, 216), S(56, 232), S(65, 238), S(54, 254), S(65, 252), S(88, 243), S(122, 245), S(142, 235), S(138, 237), S(155, 254), S(113, 207), S(133, 252)};
  62.  
  63. [2s] Epoch 200 (258.065 eps), error 0.0636168, LR 1
  64. const int material[] = {S(136, 98), S(473, 371), S(470, 380), S(677, 703), S(1399, 1310), 0};
  65. const int passed pawns = S(1, 36);
  66. const int isolated pawns = S(-31, -20);
  67. const int bishop bonus = S(35, 74);
  68. const int knight mobility[] = {S(3, -60), S(20, 11), S(35, -3), S(37, 22), S(76, 21), S(84, 53), S(78, 68), S(79, 94), S(93, 85)};
  69. const int bishop mobility[] = {S(3, 92), S(33, 11), S(53, 11), S(65, 30), S(76, 49), S(73, 66), S(79, 74), S(81, 80), S(89, 94), S(94, 90), S(96, 104), S(97, 99), S(119, 105), S(163, 97)};
  70. const int rook mobility[] = {S(-23, -4), S(-8, 31), S(-9, 48), S(-6, 61), S(4, 78), S(16, 84), S(24, 90), S(30, 101), S(36, 111), S(56, 109), S(72, 114), S(78, 117), S(102, 117), S(101, 117), S(91, 126)};
  71. const int queen mobility[] = {S(60, 158), S(61, 200), S(69, 105), S(72, 91), S(80, 85), S(95, 23), S(93, -2), S(87, 55), S(86, 48), S(88, 77), S(86, 97), S(77, 143), S(65, 172), S(66, 196), S(68, 207), S(57, 227), S(62, 229), S(66, 247), S(75, 252), S(63, 269), S(70, 272), S(91, 263), S(118, 272), S(151, 252), S(149, 254), S(174, 270), S(142, 252), S(154, 290)};
  72.  
  73. [2s] Epoch 300 (257.069 eps), error 0.0636172, LR 1
  74. const int material[] = {S(138, 97), S(480, 370), S(478, 379), S(691, 702), S(1423, 1316), 0};
  75. const int passed pawns = S(1, 36);
  76. const int isolated pawns = S(-31, -20);
  77. const int bishop bonus = S(34, 75);
  78. const int knight mobility[] = {S(7, -77), S(23, 9), S(39, -4), S(40, 21), S(79, 20), S(87, 52), S(82, 67), S(83, 94), S(97, 84)};
  79. const int bishop mobility[] = {S(6, 96), S(37, 10), S(56, 9), S(69, 29), S(80, 48), S(77, 65), S(83, 73), S(85, 79), S(93, 93), S(98, 88), S(100, 103), S(101, 98), S(127, 102), S(180, 93)};
  80. const int rook mobility[] = {S(-22, -3), S(-7, 31), S(-8, 47), S(-5, 61), S(5, 78), S(18, 84), S(25, 89), S(31, 100), S(37, 111), S(57, 109), S(74, 114), S(80, 116), S(104, 117), S(104, 117), S(94, 126)};
  81. const int queen mobility[] = {S(64, 214), S(65, 265), S(73, 121), S(77, 99), S(85, 86), S(101, 7), S(98, -12), S(92, 52), S(90, 45), S(93, 74), S(91, 95), S(81, 141), S(69, 171), S(70, 194), S(72, 205), S(61, 225), S(66, 227), S(70, 245), S(79, 251), S(67, 267), S(74, 271), S(94, 263), S(114, 277), S(152, 254), S(152, 255), S(182, 268), S(155, 258), S(160, 294)};
  82.  
  83. [3s] Epoch 400 (255.428 eps), error 0.0636178, LR 1
  84. const int material[] = {S(138, 97), S(484, 368), S(482, 377), S(697, 699), S(1439, 1314), 0};
  85. const int passed pawns = S(1, 36);
  86. const int isolated pawns = S(-31, -19);
  87. const int bishop bonus = S(33, 76);
  88. const int knight mobility[] = {S(9, -91), S(24, 8), S(40, -5), S(42, 21), S(81, 20), S(89, 51), S(83, 67), S(84, 93), S(99, 84)};
  89. const int bishop mobility[] = {S(8, 95), S(38, 9), S(58, 8), S(71, 28), S(82, 47), S(78, 64), S(85, 72), S(87, 78), S(95, 92), S(100, 88), S(102, 102), S(103, 97), S(130, 101), S(188, 90)};
  90. const int rook mobility[] = {S(-21, -3), S(-6, 30), S(-8, 47), S(-4, 60), S(6, 77), S(18, 83), S(26, 89), S(32, 100), S(38, 110), S(58, 109), S(75, 113), S(81, 116), S(105, 116), S(105, 116), S(95, 125)};
  91. const int queen mobility[] = {S(66, 265), S(66, 321), S(76, 131), S(80, 101), S(88, 83), S(104, -4), S(102, -19), S(95, 47), S(94, 40), S(96, 68), S(94, 89), S(85, 136), S(72, 165), S(73, 188), S(75, 199), S(64, 220), S(70, 222), S(73, 240), S(82, 246), S(70, 263), S(77, 266), S(96, 258), S(113, 276), S(152, 250), S(153, 251), S(188, 262), S(162, 253), S(162, 291)};
  92.  
  93. [3s] Epoch 500 (255.754 eps), error 0.0636186, LR 1
  94. const int material[] = {S(139, 97), S(486, 367), S(485, 376), S(701, 698), S(1453, 1310), 0};
  95. const int passed pawns = S(1, 36);
  96. const int isolated pawns = S(-32, -19);
  97. const int bishop bonus = S(33, 76);
  98. const int knight mobility[] = {S(10, -101), S(25, 8), S(41, -5), S(42, 20), S(82, 19), S(89, 51), S(84, 66), S(85, 93), S(99, 83)};
  99. const int bishop mobility[] = {S(9, 93), S(39, 8), S(59, 8), S(72, 27), S(83, 46), S(79, 64), S(86, 71), S(88, 78), S(95, 92), S(101, 87), S(102, 102), S(104, 96), S(132, 100), S(191, 89)};
  100. const int rook mobility[] = {S(-21, -3), S(-6, 30), S(-7, 46), S(-4, 60), S(6, 77), S(19, 83), S(26, 89), S(32, 99), S(38, 110), S(59, 108), S(75, 113), S(81, 115), S(106, 116), S(105, 115), S(96, 124)};
  101. const int queen mobility[] = {S(68, 314), S(68, 370), S(78, 138), S(82, 101), S(90, 78), S(107, -13), S(104, -25), S(98, 41), S(96, 34), S(99, 63), S(97, 84), S(87, 130), S(75, 160), S(76, 183), S(78, 194), S(67, 214), S(72, 217), S(76, 235), S(85, 240), S(73, 257), S(79, 261), S(99, 253), S(114, 272), S(154, 246), S(154, 247), S(194, 255), S(169, 246), S(163, 286)};
  102.  
  103. [4s] Epoch 600 (255.864 eps), error 0.0636196, LR 1
  104. const int material[] = {S(139, 97), S(487, 367), S(486, 376), S(703, 696), S(1466, 1305), 0};
  105. const int passed pawns = S(2, 36);
  106. const int isolated pawns = S(-32, -19);
  107. const int bishop bonus = S(32, 76);
  108. const int knight mobility[] = {S(11, -109), S(26, 7), S(41, -5), S(43, 20), S(82, 19), S(90, 51), S(85, 66), S(86, 93), S(100, 83)};
  109. const int bishop mobility[] = {S(9, 92), S(40, 8), S(60, 8), S(72, 27), S(83, 46), S(80, 63), S(87, 71), S(88, 77), S(96, 91), S(101, 87), S(103, 101), S(105, 96), S(133, 99), S(193, 89)};
  110. const int rook mobility[] = {S(-21, -3), S(-5, 30), S(-7, 46), S(-3, 60), S(6, 77), S(19, 83), S(26, 88), S(32, 99), S(39, 109), S(59, 108), S(76, 112), S(82, 115), S(106, 115), S(106, 115), S(96, 124)};
  111. const int queen mobility[] = {S(69, 361), S(69, 414), S(80, 142), S(84, 100), S(93, 74), S(109, -20), S(107, -31), S(100, 36), S(99, 29), S(101, 57), S(99, 78), S(90, 125), S(78, 154), S(79, 177), S(80, 189), S(69, 209), S(75, 212), S(78, 230), S(87, 235), S(75, 252), S(82, 255), S(101, 248), S(116, 267), S(155, 241), S(156, 243), S(199, 248), S(175, 239), S(164, 282)};
  112.  
  113. [4s] Epoch 700 (256.035 eps), error 0.0636208, LR 1
  114. const int material[] = {S(139, 97), S(488, 366), S(487, 375), S(705, 695), S(1478, 1301), 0};
  115. const int passed pawns = S(2, 36);
  116. const int isolated pawns = S(-32, -19);
  117. const int bishop bonus = S(32, 77);
  118. const int knight mobility[] = {S(12, -115), S(26, 7), S(42, -6), S(43, 20), S(83, 19), S(90, 50), S(85, 66), S(86, 92), S(100, 83)};
  119. const int bishop mobility[] = {S(10, 91), S(40, 8), S(60, 7), S(73, 27), S(84, 46), S(80, 63), S(87, 71), S(89, 77), S(97, 91), S(102, 86), S(104, 101), S(105, 96), S(133, 99), S(193, 88)};
  120. const int rook mobility[] = {S(-21, -3), S(-5, 29), S(-7, 46), S(-3, 60), S(6, 76), S(19, 82), S(27, 88), S(33, 99), S(39, 109), S(59, 108), S(76, 112), S(82, 114), S(107, 115), S(106, 115), S(96, 124)};
  121. const int queen mobility[] = {S(70, 407), S(70, 452), S(82, 143), S(86, 97), S(95, 69), S(112, -26), S(109, -37), S(103, 31), S(101, 24), S(103, 52), S(102, 73), S(92, 120), S(80, 149), S(81, 173), S(83, 184), S(71, 204), S(77, 207), S(80, 225), S(89, 231), S(77, 248), S(84, 251), S(103, 243), S(118, 263), S(157, 237), S(157, 238), S(204, 242), S(182, 231), S(166, 277)};
  122.  
  123. [4s] Epoch 800 (256.164 eps), error 0.0636222, LR 1
  124. const int material[] = {S(139, 97), S(489, 366), S(488, 374), S(706, 694), S(1489, 1296), 0};
  125. const int passed pawns = S(2, 36);
  126. const int isolated pawns = S(-32, -19);
  127. const int bishop bonus = S(32, 77);
  128. const int knight mobility[] = {S(12, -119), S(26, 7), S(42, -6), S(44, 20), S(83, 19), S(91, 50), S(85, 66), S(86, 92), S(101, 82)};
  129. const int bishop mobility[] = {S(10, 91), S(40, 8), S(60, 7), S(73, 26), S(84, 45), S(81, 63), S(87, 70), S(89, 77), S(97, 91), S(102, 86), S(104, 101), S(105, 95), S(133, 99), S(194, 88)};
  130. const int rook mobility[] = {S(-21, -3), S(-5, 29), S(-7, 46), S(-3, 59), S(7, 76), S(19, 82), S(27, 88), S(33, 99), S(39, 109), S(59, 107), S(76, 112), S(82, 114), S(107, 115), S(106, 115), S(97, 124)};
  131. const int queen mobility[] = {S(71, 450), S(72, 486), S(84, 143), S(88, 94), S(97, 65), S(113, -31), S(111, -42), S(104, 26), S(103, 19), S(105, 48), S(103, 69), S(94, 115), S(82, 145), S(83, 168), S(84, 180), S(73, 200), S(78, 203), S(82, 221), S(91, 226), S(79, 243), S(86, 247), S(105, 239), S(120, 259), S(159, 233), S(159, 234), S(209, 236), S(188, 224), S(168, 273)};
  132.  
  133. [5s] Epoch 900 (256.118 eps), error 0.0636236, LR 1
  134. const int material[] = {S(139, 96), S(489, 365), S(488, 374), S(708, 693), S(1499, 1293), 0};
  135. const int passed pawns = S(2, 36);
  136. const int isolated pawns = S(-32, -19);
  137. const int bishop bonus = S(32, 77);
  138. const int knight mobility[] = {S(13, -122), S(27, 7), S(42, -6), S(44, 20), S(83, 18), S(91, 50), S(86, 65), S(87, 92), S(101, 82)};
  139. const int bishop mobility[] = {S(10, 90), S(41, 7), S(61, 7), S(73, 26), S(85, 45), S(81, 63), S(88, 70), S(90, 76), S(97, 90), S(102, 86), S(104, 100), S(106, 95), S(134, 98), S(194, 88)};
  140. const int rook mobility[] = {S(-21, -3), S(-5, 29), S(-7, 46), S(-3, 59), S(7, 76), S(20, 82), S(27, 88), S(33, 98), S(39, 109), S(60, 107), S(76, 112), S(82, 114), S(107, 115), S(106, 114), S(97, 123)};
  141. const int queen mobility[] = {S(72, 492), S(73, 516), S(85, 142), S(90, 90), S(98, 61), S(115, -36), S(112, -46), S(106, 22), S(104, 15), S(107, 44), S(105, 64), S(96, 111), S(83, 141), S(84, 164), S(86, 176), S(75, 196), S(80, 199), S(84, 217), S(93, 223), S(81, 239), S(88, 243), S(107, 235), S(122, 255), S(161, 229), S(161, 230), S(214, 230), S(194, 217), S(169, 269)};
  142.  
  143. [5s] Epoch 1000 (256.279 eps), error 0.063625, LR 1
  144. const int material[] = {S(140, 96), S(490, 365), S(489, 374), S(709, 693), S(1509, 1289), 0};
  145. const int passed pawns = S(2, 36);
  146. const int isolated pawns = S(-32, -19);
  147. const int bishop bonus = S(32, 77);
  148. const int knight mobility[] = {S(13, -124), S(27, 6), S(43, -6), S(44, 20), S(83, 18), S(91, 50), S(86, 65), S(87, 92), S(101, 82)};
  149. const int bishop mobility[] = {S(11, 90), S(41, 7), S(61, 7), S(74, 26), S(85, 45), S(81, 63), S(88, 70), S(90, 76), S(97, 90), S(103, 86), S(104, 100), S(106, 95), S(134, 98), S(195, 88)};
  150. const int rook mobility[] = {S(-21, -3), S(-5, 29), S(-6, 45), S(-3, 59), S(7, 76), S(20, 82), S(27, 87), S(33, 98), S(39, 109), S(60, 107), S(76, 111), S(83, 114), S(107, 114), S(106, 114), S(97, 123)};
  151. const int queen mobility[] = {S(73, 532), S(73, 542), S(87, 140), S(91, 87), S(100, 57), S(117, -41), S(114, -50), S(108, 18), S(106, 11), S(109, 40), S(107, 61), S(97, 107), S(85, 137), S(86, 160), S(88, 172), S(76, 193), S(82, 195), S(85, 213), S(94, 219), S(82, 236), S(89, 239), S(108, 232), S(124, 251), S(163, 225), S(162, 227), S(218, 225), S(201, 211), S(171, 265)};
  152.  
  153. [6s] Epoch 1100 (256.41 eps), error 0.0636264, LR 1
  154. const int material[] = {S(140, 96), S(490, 365), S(490, 373), S(710, 692), S(1518, 1286), 0};
  155. const int passed pawns = S(2, 36);
  156. const int isolated pawns = S(-32, -19);
  157. const int bishop bonus = S(32, 77);
  158. const int knight mobility[] = {S(14, -126), S(27, 6), S(43, -6), S(44, 19), S(84, 18), S(92, 50), S(86, 65), S(87, 92), S(102, 82)};
  159. const int bishop mobility[] = {S(11, 89), S(41, 7), S(61, 7), S(74, 26), S(85, 45), S(82, 62), S(88, 70), S(90, 76), S(98, 90), S(103, 86), S(105, 100), S(106, 95), S(134, 98), S(195, 87)};
  160. const int rook mobility[] = {S(-20, -3), S(-5, 29), S(-6, 45), S(-3, 59), S(7, 76), S(20, 82), S(27, 87), S(33, 98), S(40, 108), S(60, 107), S(77, 111), S(83, 114), S(107, 114), S(107, 114), S(97, 123)};
  161. const int queen mobility[] = {S(73, 570), S(74, 566), S(88, 138), S(93, 83), S(101, 54), S(118, -45), S(115, -54), S(109, 15), S(107, 8), S(110, 36), S(108, 57), S(98, 104), S(86, 133), S(87, 157), S(89, 169), S(78, 189), S(83, 192), S(87, 210), S(95, 216), S(83, 233), S(90, 236), S(110, 229), S(125, 248), S(165, 221), S(164, 223), S(223, 220), S(207, 205), S(173, 262)};
  162.  
  163. [6s] Epoch 1200 (256.41 eps), error 0.0636279, LR 1
  164. const int material[] = {S(140, 96), S(491, 364), S(490, 373), S(711, 692), S(1526, 1283), 0};
  165. const int passed pawns = S(2, 36);
  166. const int isolated pawns = S(-32, -19);
  167. const int bishop bonus = S(32, 77);
  168. const int knight mobility[] = {S(14, -127), S(27, 6), S(43, -6), S(45, 19), S(84, 18), S(92, 50), S(86, 65), S(87, 92), S(102, 82)};
  169. const int bishop mobility[] = {S(11, 89), S(41, 7), S(61, 6), S(74, 26), S(85, 45), S(82, 62), S(89, 70), S(90, 76), S(98, 90), S(103, 85), S(105, 100), S(107, 95), S(135, 98), S(195, 87)};
  170. const int rook mobility[] = {S(-20, -3), S(-5, 29), S(-6, 45), S(-3, 59), S(7, 76), S(20, 81), S(27, 87), S(33, 98), S(40, 108), S(60, 107), S(77, 111), S(83, 113), S(107, 114), S(107, 114), S(97, 123)};
  171. const int queen mobility[] = {S(74, 607), S(75, 586), S(89, 136), S(94, 80), S(102, 50), S(119, -48), S(117, -57), S(110, 11), S(109, 4), S(111, 33), S(109, 54), S(100, 101), S(87, 130), S(88, 154), S(90, 166), S(79, 186), S(84, 189), S(88, 207), S(96, 213), S(85, 230), S(92, 233), S(111, 226), S(126, 244), S(166, 218), S(166, 220), S(227, 215), S(214, 198), S(176, 258)};
  172.  
  173. [6s] Epoch 1300 (256.511 eps), error 0.0636292, LR 1
  174. const int material[] = {S(140, 96), S(491, 364), S(491, 373), S(712, 691), S(1534, 1280), 0};
  175. const int passed pawns = S(2, 36);
  176. const int isolated pawns = S(-32, -19);
  177. const int bishop bonus = S(32, 77);
  178. const int knight mobility[] = {S(14, -128), S(27, 6), S(43, -6), S(45, 19), S(84, 18), S(92, 49), S(87, 65), S(88, 91), S(102, 82)};
  179. const int bishop mobility[] = {S(11, 88), S(41, 7), S(61, 6), S(74, 26), S(86, 45), S(82, 62), S(89, 69), S(90, 76), S(98, 90), S(103, 85), S(105, 100), S(107, 94), S(135, 98), S(195, 87)};
  180. const int rook mobility[] = {S(-20, -3), S(-5, 29), S(-6, 45), S(-3, 59), S(7, 75), S(20, 81), S(27, 87), S(34, 98), S(40, 108), S(60, 106), S(77, 111), S(83, 113), S(108, 114), S(107, 114), S(97, 123)};
  181. const int queen mobility[] = {S(74, 643), S(76, 604), S(90, 133), S(95, 77), S(103, 47), S(120, -52), S(118, -61), S(111, 8), S(110, 2), S(112, 30), S(110, 51), S(101, 98), S(89, 127), S(89, 151), S(91, 163), S(80, 183), S(85, 186), S(89, 204), S(97, 210), S(86, 227), S(93, 230), S(112, 223), S(127, 242), S(168, 215), S(167, 217), S(231, 211), S(220, 192), S(178, 255)};
  182.  
  183. [7s] Epoch 1400 (256.551 eps), error 0.0636306, LR 1
  184. const int material[] = {S(140, 96), S(492, 364), S(491, 373), S(713, 691), S(1541, 1277), 0};
  185. const int passed pawns = S(2, 36);
  186. const int isolated pawns = S(-32, -19);
  187. const int bishop bonus = S(32, 77);
  188. const int knight mobility[] = {S(14, -129), S(28, 6), S(43, -6), S(45, 19), S(84, 18), S(92, 49), S(87, 65), S(88, 91), S(102, 81)};
  189. const int bishop mobility[] = {S(11, 88), S(42, 7), S(62, 6), S(75, 25), S(86, 45), S(82, 62), S(89, 69), S(91, 76), S(98, 90), S(104, 85), S(105, 100), S(107, 94), S(135, 98), S(195, 87)};
  190. const int rook mobility[] = {S(-20, -3), S(-5, 29), S(-6, 45), S(-2, 59), S(7, 75), S(20, 81), S(28, 87), S(34, 98), S(40, 108), S(60, 106), S(77, 111), S(83, 113), S(108, 114), S(107, 113), S(97, 123)};
  191. const int queen mobility[] = {S(74, 678), S(76, 620), S(91, 131), S(96, 74), S(104, 45), S(121, -55), S(119, -63), S(112, 6), S(110, -1), S(113, 28), S(111, 48), S(102, 95), S(89, 125), S(90, 148), S(92, 160), S(81, 181), S(86, 184), S(90, 202), S(98, 208), S(87, 225), S(93, 228), S(113, 221), S(129, 239), S(169, 213), S(169, 214), S(235, 207), S(226, 187), S(180, 251)};
  192.  
  193. [7s] Epoch 1500 (256.63 eps), error 0.0636319, LR 1
  194. const int material[] = {S(140, 96), S(492, 364), S(492, 372), S(714, 690), S(1547, 1275), 0};
  195. const int passed pawns = S(2, 36);
  196. const int isolated pawns = S(-32, -19);
  197. const int bishop bonus = S(32, 77);
  198. const int knight mobility[] = {S(14, -129), S(28, 6), S(44, -7), S(45, 19), S(84, 18), S(93, 49), S(87, 65), S(88, 91), S(102, 81)};
  199. const int bishop mobility[] = {S(12, 88), S(42, 7), S(62, 6), S(75, 25), S(86, 44), S(82, 62), S(89, 69), S(91, 76), S(99, 89), S(104, 85), S(106, 99), S(107, 94), S(135, 98), S(195, 87)};
  200. const int rook mobility[] = {S(-20, -3), S(-5, 29), S(-6, 45), S(-2, 58), S(7, 75), S(20, 81), S(28, 87), S(34, 98), S(40, 108), S(60, 106), S(77, 111), S(83, 113), S(108, 114), S(107, 113), S(97, 122)};
  201. const int queen mobility[] = {S(74, 711), S(77, 634), S(92, 129), S(97, 72), S(105, 42), S(122, -57), S(119, -66), S(113, 3), S(111, -4), S(114, 25), S(112, 46), S(102, 93), S(90, 122), S(91, 146), S(93, 158), S(82, 178), S(87, 182), S(91, 199), S(99, 205), S(87, 222), S(94, 225), S(114, 218), S(129, 237), S(170, 210), S(170, 212), S(238, 203), S(232, 181), S(182, 248)};
  202.  
  203. [7s] Epoch 1600 (256.287 eps), error 0.0636332, LR 1
  204. const int material[] = {S(140, 96), S(493, 363), S(492, 372), S(715, 690), S(1553, 1273), 0};
  205. const int passed pawns = S(2, 36);
  206. const int isolated pawns = S(-32, -19);
  207. const int bishop bonus = S(32, 77);
  208. const int knight mobility[] = {S(14, -129), S(28, 6), S(44, -7), S(45, 19), S(85, 18), S(93, 49), S(87, 65), S(88, 91), S(103, 81)};
  209. const int bishop mobility[] = {S(12, 88), S(42, 7), S(62, 6), S(75, 25), S(86, 44), S(82, 62), S(89, 69), S(91, 75), S(99, 89), S(104, 85), S(106, 99), S(107, 94), S(135, 97), S(196, 87)};
  210. const int rook mobility[] = {S(-20, -3), S(-4, 29), S(-6, 45), S(-2, 58), S(7, 75), S(20, 81), S(28, 87), S(34, 97), S(40, 108), S(60, 106), S(77, 111), S(83, 113), S(108, 113), S(107, 113), S(97, 122)};
  211. const int queen mobility[] = {S(75, 742), S(77, 646), S(93, 126), S(97, 70), S(106, 40), S(123, -60), S(120, -68), S(114, 1), S(112, -6), S(115, 23), S(113, 43), S(103, 91), S(91, 120), S(92, 144), S(93, 156), S(82, 176), S(87, 180), S(91, 197), S(100, 203), S(88, 220), S(95, 223), S(114, 216), S(130, 235), S(171, 208), S(171, 209), S(242, 199), S(239, 176), S(185, 245)};
  212.  
  213. [8s] Epoch 1700 (256.217 eps), error 0.0636344, LR 1
  214. const int material[] = {S(140, 96), S(493, 363), S(492, 372), S(715, 690), S(1558, 1272), 0};
  215. const int passed pawns = S(2, 36);
  216. const int isolated pawns = S(-32, -19);
  217. const int bishop bonus = S(32, 77);
  218. const int knight mobility[] = {S(15, -130), S(28, 6), S(44, -7), S(45, 19), S(85, 18), S(93, 49), S(87, 65), S(88, 91), S(103, 81)};
  219. const int bishop mobility[] = {S(12, 87), S(42, 7), S(62, 6), S(75, 25), S(86, 44), S(83, 62), S(89, 69), S(91, 75), S(99, 89), S(104, 85), S(106, 99), S(107, 94), S(135, 97), S(196, 87)};
  220. const int rook mobility[] = {S(-20, -3), S(-4, 29), S(-6, 45), S(-2, 58), S(7, 75), S(20, 81), S(28, 87), S(34, 97), S(40, 108), S(61, 106), S(77, 111), S(83, 113), S(108, 113), S(107, 113), S(97, 122)};
  221. const int queen mobility[] = {S(75, 773), S(77, 656), S(93, 124), S(98, 67), S(106, 38), S(123, -62), S(121, -71), S(114, -1), S(112, -8), S(115, 21), S(113, 41), S(104, 88), S(91, 118), S(92, 142), S(94, 154), S(83, 174), S(88, 178), S(92, 195), S(100, 201), S(88, 218), S(96, 221), S(115, 214), S(131, 233), S(172, 206), S(172, 207), S(245, 196), S(245, 170), S(187, 242)};
  222.  
  223. [8s] Epoch 1800 (256.228 eps), error 0.0636356, LR 1
  224. const int material[] = {S(140, 96), S(493, 363), S(493, 372), S(716, 689), S(1562, 1270), 0};
  225. const int passed pawns = S(2, 36);
  226. const int isolated pawns = S(-32, -19);
  227. const int bishop bonus = S(32, 77);
  228. const int knight mobility[] = {S(15, -130), S(28, 6), S(44, -7), S(45, 19), S(85, 18), S(93, 49), S(87, 64), S(88, 91), S(103, 81)};
  229. const int bishop mobility[] = {S(12, 87), S(42, 7), S(62, 6), S(75, 25), S(86, 44), S(83, 62), S(90, 69), S(91, 75), S(99, 89), S(104, 85), S(106, 99), S(108, 94), S(135, 97), S(196, 87)};
  230. const int rook mobility[] = {S(-20, -3), S(-4, 29), S(-6, 45), S(-2, 58), S(8, 75), S(20, 81), S(28, 87), S(34, 97), S(40, 108), S(61, 106), S(77, 110), S(83, 113), S(108, 113), S(107, 113), S(97, 122)};
  231. const int queen mobility[] = {S(74, 803), S(77, 665), S(94, 122), S(98, 66), S(107, 36), S(124, -64), S(121, -72), S(115, -3), S(113, -10), S(116, 19), S(114, 40), S(104, 87), S(92, 116), S(93, 140), S(94, 152), S(83, 173), S(88, 176), S(92, 194), S(101, 200), S(89, 217), S(96, 220), S(115, 213), S(131, 231), S(172, 204), S(173, 205), S(248, 193), S(251, 165), S(190, 239)};
  232.  
  233. [9s] Epoch 1900 (256.237 eps), error 0.0636367, LR 1
  234. const int material[] = {S(140, 96), S(493, 363), S(493, 372), S(716, 689), S(1566, 1269), 0};
  235. const int passed pawns = S(2, 36);
  236. const int isolated pawns = S(-32, -19);
  237. const int bishop bonus = S(32, 77);
  238. const int knight mobility[] = {S(15, -130), S(28, 6), S(44, -7), S(46, 19), S(85, 18), S(93, 49), S(88, 64), S(88, 91), S(103, 81)};
  239. const int bishop mobility[] = {S(12, 87), S(42, 6), S(62, 6), S(75, 25), S(86, 44), S(83, 62), S(90, 69), S(91, 75), S(99, 89), S(104, 85), S(106, 99), S(108, 94), S(136, 97), S(196, 87)};
  240. const int rook mobility[] = {S(-20, -3), S(-4, 29), S(-6, 45), S(-2, 58), S(8, 75), S(20, 81), S(28, 87), S(34, 97), S(40, 108), S(61, 106), S(77, 110), S(84, 113), S(108, 113), S(107, 113), S(97, 122)};
  241. const int queen mobility[] = {S(74, 831), S(78, 673), S(94, 120), S(99, 64), S(107, 34), S(124, -66), S(121, -74), S(115, -5), S(113, -11), S(116, 17), S(114, 38), S(104, 85), S(92, 114), S(93, 138), S(95, 151), S(84, 171), S(89, 174), S(93, 192), S(101, 198), S(89, 215), S(96, 218), S(116, 211), S(132, 229), S(173, 202), S(174, 203), S(250, 190), S(257, 160), S(192, 236)};
  242.  
  243. [9s] Epoch 2000 (256.279 eps), error 0.0636377, LR 1
  244. const int material[] = {S(140, 96), S(494, 363), S(493, 372), S(717, 689), S(1570, 1268), 0};
  245. const int passed pawns = S(2, 36);
  246. const int isolated pawns = S(-32, -19);
  247. const int bishop bonus = S(32, 77);
  248. const int knight mobility[] = {S(15, -130), S(28, 5), S(44, -7), S(46, 19), S(85, 17), S(93, 49), S(88, 64), S(89, 91), S(103, 81)};
  249. const int bishop mobility[] = {S(12, 87), S(42, 6), S(62, 6), S(75, 25), S(86, 44), S(83, 62), S(90, 69), S(91, 75), S(99, 89), S(104, 85), S(106, 99), S(108, 94), S(136, 97), S(196, 86)};
  250. const int rook mobility[] = {S(-20, -3), S(-4, 29), S(-6, 45), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(77, 110), S(84, 113), S(108, 113), S(107, 113), S(97, 122)};
  251. const int queen mobility[] = {S(74, 859), S(78, 679), S(94, 119), S(99, 62), S(107, 33), S(124, -68), S(122, -76), S(115, -6), S(114, -13), S(116, 16), S(114, 36), S(105, 83), S(93, 113), S(93, 137), S(95, 149), S(84, 170), S(89, 173), S(93, 190), S(101, 197), S(90, 214), S(97, 217), S(116, 210), S(132, 228), S(173, 201), S(175, 201), S(253, 187), S(263, 155), S(194, 234)};
  252.  
  253. [9s] Epoch 2100 (256.348 eps), error 0.0636387, LR 1
  254. const int material[] = {S(140, 96), S(494, 363), S(493, 371), S(717, 689), S(1573, 1267), 0};
  255. const int passed pawns = S(2, 36);
  256. const int isolated pawns = S(-32, -19);
  257. const int bishop bonus = S(32, 77);
  258. const int knight mobility[] = {S(15, -130), S(28, 5), S(44, -7), S(46, 19), S(85, 17), S(93, 49), S(88, 64), S(89, 91), S(103, 81)};
  259. const int bishop mobility[] = {S(12, 87), S(42, 6), S(62, 6), S(75, 25), S(87, 44), S(83, 62), S(90, 69), S(92, 75), S(99, 89), S(104, 85), S(106, 99), S(108, 94), S(136, 97), S(196, 86)};
  260. const int rook mobility[] = {S(-20, -3), S(-4, 29), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(77, 110), S(84, 113), S(108, 113), S(107, 113), S(97, 122)};
  261. const int queen mobility[] = {S(74, 885), S(78, 685), S(94, 117), S(99, 61), S(107, 31), S(125, -69), S(122, -77), S(116, -8), S(114, -14), S(116, 14), S(115, 35), S(105, 82), S(93, 111), S(94, 135), S(95, 148), S(84, 168), S(89, 172), S(93, 189), S(101, 195), S(90, 212), S(97, 215), S(116, 208), S(132, 226), S(174, 199), S(176, 199), S(255, 184), S(268, 151), S(197, 231)};
  262.  
  263. [10s] Epoch 2200 (256.41 eps), error 0.0636397, LR 1
  264. const int material[] = {S(140, 96), S(494, 363), S(493, 371), S(718, 688), S(1576, 1267), 0};
  265. const int passed pawns = S(2, 36);
  266. const int isolated pawns = S(-32, -19);
  267. const int bishop bonus = S(32, 77);
  268. const int knight mobility[] = {S(15, -130), S(28, 5), S(44, -7), S(46, 19), S(85, 17), S(93, 49), S(88, 64), S(89, 91), S(103, 81)};
  269. const int bishop mobility[] = {S(12, 87), S(42, 6), S(63, 6), S(75, 25), S(87, 44), S(83, 62), S(90, 69), S(92, 75), S(99, 89), S(104, 85), S(106, 99), S(108, 94), S(136, 97), S(196, 86)};
  270. const int rook mobility[] = {S(-20, -3), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(77, 110), S(84, 113), S(108, 113), S(108, 113), S(98, 122)};
  271. const int queen mobility[] = {S(74, 910), S(78, 689), S(95, 116), S(99, 60), S(108, 30), S(125, -70), S(122, -79), S(116, -9), S(114, -15), S(117, 13), S(115, 34), S(105, 81), S(93, 110), S(94, 134), S(95, 146), S(84, 167), S(89, 170), S(93, 188), S(102, 194), S(90, 211), S(97, 214), S(116, 207), S(132, 225), S(174, 198), S(176, 198), S(257, 182), S(274, 146), S(199, 229)};
  272.  
  273. [10s] Epoch 2300 (256.496 eps), error 0.0636406, LR 1
  274. const int material[] = {S(140, 96), S(494, 363), S(494, 371), S(718, 688), S(1578, 1266), 0};
  275. const int passed pawns = S(2, 36);
  276. const int isolated pawns = S(-32, -19);
  277. const int bishop bonus = S(32, 77);
  278. const int knight mobility[] = {S(15, -130), S(28, 5), S(44, -7), S(46, 19), S(85, 17), S(93, 49), S(88, 64), S(89, 91), S(103, 81)};
  279. const int bishop mobility[] = {S(12, 86), S(42, 6), S(63, 6), S(76, 25), S(87, 44), S(83, 62), S(90, 69), S(92, 75), S(99, 89), S(105, 84), S(106, 99), S(108, 94), S(136, 97), S(196, 86)};
  280. const int rook mobility[] = {S(-20, -3), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(78, 110), S(84, 113), S(108, 113), S(108, 113), S(98, 122)};
  281. const int queen mobility[] = {S(73, 935), S(78, 693), S(95, 115), S(99, 58), S(108, 29), S(125, -72), S(122, -80), S(116, -10), S(114, -17), S(117, 12), S(115, 33), S(105, 80), S(93, 109), S(94, 133), S(95, 145), S(84, 166), S(89, 169), S(93, 187), S(102, 193), S(90, 210), S(97, 213), S(116, 206), S(133, 224), S(174, 197), S(177, 197), S(259, 180), S(280, 142), S(202, 226)};
  282.  
  283. [11s] Epoch 2400 (256.52 eps), error 0.0636414, LR 1
  284. const int material[] = {S(140, 96), S(494, 363), S(494, 371), S(718, 688), S(1581, 1266), 0};
  285. const int passed pawns = S(2, 36);
  286. const int isolated pawns = S(-32, -19);
  287. const int bishop bonus = S(32, 77);
  288. const int knight mobility[] = {S(15, -130), S(28, 5), S(44, -7), S(46, 19), S(85, 17), S(93, 49), S(88, 64), S(89, 91), S(103, 81)};
  289. const int bishop mobility[] = {S(12, 86), S(43, 6), S(63, 6), S(76, 25), S(87, 44), S(83, 62), S(90, 69), S(92, 75), S(99, 89), S(105, 84), S(106, 99), S(108, 94), S(136, 97), S(196, 86)};
  290. const int rook mobility[] = {S(-20, -3), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(78, 110), S(84, 112), S(108, 113), S(108, 113), S(98, 122)};
  291. const int queen mobility[] = {S(73, 958), S(78, 696), S(95, 114), S(99, 57), S(108, 28), S(125, -73), S(122, -81), S(116, -11), S(114, -18), S(117, 11), S(115, 31), S(105, 79), S(93, 108), S(94, 132), S(96, 144), S(84, 165), S(89, 168), S(93, 186), S(102, 192), S(90, 209), S(97, 212), S(116, 205), S(133, 223), S(175, 196), S(177, 195), S(261, 178), S(285, 137), S(204, 224)};
  292.  
  293. [11s] Epoch 2500 (256.594 eps), error 0.0636423, LR 1
  294. const int material[] = {S(140, 96), S(494, 362), S(494, 371), S(718, 688), S(1582, 1266), 0};
  295. const int passed pawns = S(2, 36);
  296. const int isolated pawns = S(-32, -19);
  297. const int bishop bonus = S(32, 77);
  298. const int knight mobility[] = {S(15, -130), S(29, 5), S(44, -7), S(46, 19), S(85, 17), S(93, 49), S(88, 64), S(89, 91), S(103, 81)};
  299. const int bishop mobility[] = {S(12, 86), S(43, 6), S(63, 6), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 94), S(136, 97), S(196, 86)};
  300. const int rook mobility[] = {S(-20, -3), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(78, 110), S(84, 112), S(108, 113), S(108, 113), S(98, 122)};
  301. const int queen mobility[] = {S(73, 981), S(78, 699), S(95, 113), S(99, 57), S(108, 27), S(125, -74), S(122, -82), S(116, -12), S(114, -19), S(117, 10), S(115, 31), S(105, 78), S(93, 107), S(94, 131), S(96, 143), S(84, 164), S(89, 167), S(93, 185), S(102, 191), S(90, 208), S(97, 211), S(116, 204), S(133, 222), S(175, 195), S(177, 194), S(262, 176), S(290, 133), S(207, 221)};
  302.  
  303. [11s] Epoch 2600 (256.638 eps), error 0.0636431, LR 1
  304. const int material[] = {S(140, 96), S(495, 362), S(494, 371), S(719, 688), S(1584, 1266), 0};
  305. const int passed pawns = S(2, 36);
  306. const int isolated pawns = S(-32, -19);
  307. const int bishop bonus = S(32, 77);
  308. const int knight mobility[] = {S(15, -130), S(29, 5), S(44, -7), S(46, 19), S(85, 17), S(94, 49), S(88, 64), S(89, 91), S(103, 81)};
  309. const int bishop mobility[] = {S(12, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 94), S(136, 97), S(196, 86)};
  310. const int rook mobility[] = {S(-20, -3), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(78, 110), S(84, 112), S(108, 113), S(108, 113), S(98, 122)};
  311. const int queen mobility[] = {S(72, 1002), S(78, 701), S(95, 112), S(99, 56), S(108, 26), S(125, -75), S(122, -83), S(116, -13), S(114, -19), S(117, 9), S(115, 30), S(105, 77), S(93, 106), S(94, 130), S(95, 143), S(84, 163), S(89, 167), S(93, 184), S(102, 190), S(90, 207), S(97, 210), S(116, 203), S(133, 221), S(175, 194), S(178, 193), S(264, 174), S(296, 129), S(209, 219)};
  312.  
  313. [12s] Epoch 2700 (256.678 eps), error 0.0636438, LR 1
  314. const int material[] = {S(140, 96), S(495, 362), S(494, 371), S(719, 688), S(1585, 1266), 0};
  315. const int passed pawns = S(2, 36);
  316. const int isolated pawns = S(-32, -19);
  317. const int bishop bonus = S(32, 77);
  318. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(85, 17), S(94, 49), S(88, 64), S(89, 91), S(103, 81)};
  319. const int bishop mobility[] = {S(12, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 94), S(136, 97), S(196, 86)};
  320. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 106), S(78, 110), S(84, 112), S(108, 113), S(108, 113), S(98, 122)};
  321. const int queen mobility[] = {S(72, 1023), S(77, 703), S(95, 111), S(99, 55), S(108, 25), S(125, -75), S(122, -83), S(116, -14), S(114, -20), S(117, 8), S(115, 29), S(105, 76), S(93, 105), S(94, 129), S(95, 142), S(84, 162), S(89, 166), S(93, 183), S(102, 189), S(90, 206), S(97, 209), S(116, 202), S(133, 220), S(175, 193), S(178, 192), S(265, 173), S(301, 125), S(212, 217)};
  322.  
  323. [12s] Epoch 2800 (256.716 eps), error 0.0636445, LR 1
  324. const int material[] = {S(140, 96), S(495, 362), S(494, 371), S(719, 688), S(1586, 1266), 0};
  325. const int passed pawns = S(2, 36);
  326. const int isolated pawns = S(-32, -19);
  327. const int bishop bonus = S(32, 77);
  328. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(85, 17), S(94, 49), S(88, 64), S(89, 91), S(103, 81)};
  329. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 94), S(136, 97), S(196, 86)};
  330. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  331. const int queen mobility[] = {S(71, 1043), S(77, 705), S(94, 111), S(99, 54), S(107, 25), S(125, -76), S(122, -84), S(116, -14), S(114, -21), S(117, 8), S(115, 28), S(105, 75), S(93, 105), S(94, 129), S(95, 141), S(84, 161), S(89, 165), S(93, 182), S(102, 189), S(90, 206), S(97, 209), S(116, 202), S(133, 219), S(175, 192), S(178, 191), S(266, 171), S(306, 122), S(214, 215)};
  332.  
  333. [13s] Epoch 2900 (256.751 eps), error 0.0636452, LR 1
  334. const int material[] = {S(140, 96), S(495, 362), S(494, 371), S(719, 688), S(1587, 1266), 0};
  335. const int passed pawns = S(2, 36);
  336. const int isolated pawns = S(-32, -19);
  337. const int bishop bonus = S(32, 77);
  338. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(85, 17), S(94, 48), S(88, 64), S(89, 91), S(103, 81)};
  339. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 94), S(136, 97), S(196, 86)};
  340. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(40, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  341. const int queen mobility[] = {S(71, 1062), S(77, 706), S(94, 110), S(99, 54), S(107, 24), S(125, -77), S(122, -85), S(116, -15), S(114, -22), S(116, 7), S(115, 27), S(105, 75), S(93, 104), S(94, 128), S(95, 140), S(84, 161), S(89, 164), S(93, 182), S(101, 188), S(90, 205), S(97, 208), S(116, 201), S(133, 219), S(175, 191), S(178, 191), S(267, 170), S(311, 118), S(216, 213)};
  342.  
  343. [13s] Epoch 3000 (256.783 eps), error 0.0636458, LR 1
  344. const int material[] = {S(140, 96), S(495, 362), S(494, 371), S(719, 688), S(1588, 1267), 0};
  345. const int passed pawns = S(2, 36);
  346. const int isolated pawns = S(-32, -19);
  347. const int bishop bonus = S(32, 77);
  348. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(85, 17), S(94, 48), S(88, 64), S(89, 91), S(104, 81)};
  349. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 94), S(136, 97), S(197, 86)};
  350. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  351. const int queen mobility[] = {S(70, 1080), S(77, 707), S(94, 110), S(99, 53), S(107, 24), S(124, -77), S(122, -85), S(115, -16), S(114, -22), S(116, 6), S(114, 27), S(105, 74), S(93, 103), S(93, 127), S(95, 140), S(84, 160), S(89, 164), S(93, 181), S(101, 187), S(90, 204), S(97, 207), S(116, 200), S(132, 218), S(175, 191), S(178, 190), S(268, 169), S(316, 114), S(219, 211)};
  352.  
  353. [13s] Epoch 3100 (256.814 eps), error 0.0636464, LR 1
  354. const int material[] = {S(140, 96), S(495, 362), S(494, 371), S(719, 688), S(1589, 1267), 0};
  355. const int passed pawns = S(2, 36);
  356. const int isolated pawns = S(-32, -19);
  357. const int bishop bonus = S(32, 77);
  358. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(85, 17), S(94, 48), S(88, 64), S(89, 91), S(104, 81)};
  359. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  360. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  361. const int queen mobility[] = {S(70, 1098), S(77, 708), S(94, 109), S(99, 53), S(107, 23), S(124, -78), S(121, -86), S(115, -16), S(113, -23), S(116, 6), S(114, 26), S(105, 73), S(92, 103), S(93, 127), S(95, 139), S(84, 159), S(89, 163), S(93, 181), S(101, 187), S(90, 204), S(97, 207), S(116, 200), S(132, 217), S(175, 190), S(178, 189), S(269, 168), S(320, 111), S(221, 209)};
  362.  
  363. [14s] Epoch 3200 (256.842 eps), error 0.063647, LR 1
  364. const int material[] = {S(140, 96), S(495, 362), S(494, 371), S(719, 688), S(1589, 1267), 0};
  365. const int passed pawns = S(2, 36);
  366. const int isolated pawns = S(-32, -19);
  367. const int bishop bonus = S(32, 77);
  368. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 91), S(104, 81)};
  369. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  370. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 81), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  371. const int queen mobility[] = {S(70, 1114), S(77, 708), S(94, 109), S(98, 52), S(107, 23), S(124, -78), S(121, -87), S(115, -17), S(113, -23), S(116, 5), S(114, 26), S(104, 73), S(92, 102), S(93, 126), S(95, 139), S(84, 159), S(89, 163), S(93, 180), S(101, 186), S(89, 203), S(97, 206), S(116, 199), S(132, 217), S(175, 189), S(178, 188), S(270, 167), S(325, 108), S(223, 207)};
  372.  
  373. [14s] Epoch 3300 (256.869 eps), error 0.0636476, LR 1
  374. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(719, 688), S(1590, 1268), 0};
  375. const int passed pawns = S(2, 36);
  376. const int isolated pawns = S(-32, -19);
  377. const int bishop bonus = S(32, 77);
  378. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 91), S(104, 81)};
  379. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  380. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  381. const int queen mobility[] = {S(69, 1130), S(76, 709), S(94, 108), S(98, 52), S(107, 22), S(124, -79), S(121, -87), S(115, -17), S(113, -24), S(116, 5), S(114, 25), S(104, 72), S(92, 102), S(93, 126), S(95, 138), S(84, 158), S(88, 162), S(92, 179), S(101, 186), S(89, 203), S(96, 205), S(116, 199), S(132, 216), S(175, 189), S(178, 188), S(270, 166), S(329, 104), S(226, 205)};
  382.  
  383. [14s] Epoch 3400 (256.914 eps), error 0.0636481, LR 1
  384. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(719, 688), S(1590, 1268), 0};
  385. const int passed pawns = S(2, 36);
  386. const int isolated pawns = S(-32, -19);
  387. const int bishop bonus = S(32, 77);
  388. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 91), S(104, 81)};
  389. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  390. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  391. const int queen mobility[] = {S(69, 1145), S(76, 709), S(94, 108), S(98, 52), S(107, 22), S(124, -79), S(121, -87), S(115, -18), S(113, -24), S(116, 4), S(114, 25), S(104, 72), S(92, 101), S(93, 125), S(94, 138), S(83, 158), S(88, 162), S(92, 179), S(101, 185), S(89, 202), S(96, 205), S(116, 198), S(132, 216), S(174, 188), S(178, 187), S(271, 165), S(334, 101), S(228, 203)};
  392.  
  393. [15s] Epoch 3500 (256.937 eps), error 0.0636486, LR 1
  394. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(719, 688), S(1591, 1268), 0};
  395. const int passed pawns = S(2, 36);
  396. const int isolated pawns = S(-32, -19);
  397. const int bishop bonus = S(32, 77);
  398. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 90), S(104, 81)};
  399. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  400. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  401. const int queen mobility[] = {S(68, 1160), S(76, 709), S(93, 108), S(98, 51), S(106, 21), S(124, -80), S(121, -88), S(115, -18), S(113, -25), S(115, 4), S(114, 24), S(104, 71), S(92, 101), S(93, 125), S(94, 137), S(83, 158), S(88, 161), S(92, 179), S(101, 185), S(89, 202), S(96, 205), S(115, 198), S(132, 215), S(174, 188), S(178, 187), S(271, 164), S(338, 98), S(230, 202)};
  402.  
  403. [15s] Epoch 3600 (256.959 eps), error 0.0636491, LR 1
  404. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(719, 688), S(1591, 1269), 0};
  405. const int passed pawns = S(2, 36);
  406. const int isolated pawns = S(-32, -19);
  407. const int bishop bonus = S(32, 77);
  408. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 90), S(104, 81)};
  409. const int bishop mobility[] = {S(13, 86), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  410. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  411. const int queen mobility[] = {S(68, 1174), S(76, 710), S(93, 107), S(98, 51), S(106, 21), S(123, -80), S(121, -88), S(114, -19), S(113, -25), S(115, 3), S(113, 24), S(104, 71), S(92, 100), S(93, 124), S(94, 137), S(83, 157), S(88, 161), S(92, 178), S(100, 184), S(89, 201), S(96, 204), S(115, 197), S(132, 215), S(174, 187), S(178, 186), S(272, 163), S(342, 95), S(232, 200)};
  412.  
  413. [16s] Epoch 3700 (256.98 eps), error 0.0636496, LR 1
  414. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(720, 688), S(1591, 1269), 0};
  415. const int passed pawns = S(2, 36);
  416. const int isolated pawns = S(-32, -19);
  417. const int bishop bonus = S(32, 77);
  418. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 90), S(104, 81)};
  419. const int bishop mobility[] = {S(13, 85), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  420. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  421. const int queen mobility[] = {S(68, 1187), S(76, 710), S(93, 107), S(98, 51), S(106, 21), S(123, -80), S(120, -89), S(114, -19), S(112, -26), S(115, 3), S(113, 23), S(104, 71), S(91, 100), S(92, 124), S(94, 136), S(83, 157), S(88, 160), S(92, 178), S(100, 184), S(89, 201), S(96, 204), S(115, 197), S(131, 215), S(174, 187), S(178, 186), S(272, 162), S(346, 92), S(234, 198)};
  422.  
  423. [16s] Epoch 3800 (256.982 eps), error 0.06365, LR 1
  424. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(720, 688), S(1591, 1269), 0};
  425. const int passed pawns = S(2, 36);
  426. const int isolated pawns = S(-32, -19);
  427. const int bishop bonus = S(32, 77);
  428. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 90), S(104, 81)};
  429. const int bishop mobility[] = {S(13, 85), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  430. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  431. const int queen mobility[] = {S(67, 1199), S(75, 710), S(93, 107), S(97, 51), S(106, 20), S(123, -81), S(120, -89), S(114, -19), S(112, -26), S(115, 3), S(113, 23), S(103, 70), S(91, 100), S(92, 124), S(94, 136), S(83, 156), S(88, 160), S(92, 177), S(100, 184), S(88, 201), S(96, 203), S(115, 196), S(131, 214), S(174, 186), S(178, 185), S(272, 162), S(350, 89), S(236, 197)};
  432.  
  433. [16s] Epoch 3900 (257.019 eps), error 0.0636505, LR 1
  434. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(720, 688), S(1592, 1270), 0};
  435. const int passed pawns = S(2, 36);
  436. const int isolated pawns = S(-32, -19);
  437. const int bishop bonus = S(32, 77);
  438. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 90), S(104, 81)};
  439. const int bishop mobility[] = {S(13, 85), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  440. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  441. const int queen mobility[] = {S(67, 1211), S(75, 710), S(93, 106), S(97, 50), S(106, 20), S(123, -81), S(120, -89), S(114, -20), S(112, -26), S(115, 2), S(113, 23), S(103, 70), S(91, 99), S(92, 123), S(94, 136), S(83, 156), S(87, 160), S(91, 177), S(100, 183), S(88, 200), S(96, 203), S(115, 196), S(131, 214), S(174, 186), S(178, 185), S(272, 161), S(354, 87), S(238, 195)};
  442.  
  443. [17s] Epoch 4000 (257.036 eps), error 0.0636509, LR 1
  444. const int material[] = {S(141, 96), S(495, 362), S(494, 371), S(720, 688), S(1592, 1270), 0};
  445. const int passed pawns = S(2, 36);
  446. const int isolated pawns = S(-32, -19);
  447. const int bishop bonus = S(32, 77);
  448. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 90), S(104, 81)};
  449. const int bishop mobility[] = {S(13, 85), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  450. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  451. const int queen mobility[] = {S(67, 1222), S(75, 710), S(92, 106), S(97, 50), S(105, 20), S(123, -81), S(120, -89), S(114, -20), S(112, -27), S(115, 2), S(113, 23), S(103, 70), S(91, 99), S(92, 123), S(93, 135), S(82, 156), S(87, 159), S(91, 177), S(100, 183), S(88, 200), S(95, 203), S(115, 196), S(131, 213), S(174, 186), S(178, 185), S(273, 161), S(358, 84), S(240, 194)};
  452.  
  453. [17s] Epoch 4100 (257.069 eps), error 0.0636513, LR 1
  454. const int material[] = {S(141, 96), S(495, 362), S(495, 371), S(720, 688), S(1592, 1270), 0};
  455. const int passed pawns = S(2, 36);
  456. const int isolated pawns = S(-32, -19);
  457. const int bishop bonus = S(32, 77);
  458. const int knight mobility[] = {S(15, -130), S(29, 5), S(45, -7), S(46, 19), S(86, 17), S(94, 48), S(88, 64), S(89, 90), S(104, 81)};
  459. const int bishop mobility[] = {S(13, 85), S(43, 6), S(63, 5), S(76, 25), S(87, 44), S(83, 61), S(90, 69), S(92, 75), S(100, 89), S(105, 84), S(107, 99), S(108, 93), S(136, 97), S(197, 86)};
  460. const int rook mobility[] = {S(-20, -2), S(-4, 28), S(-6, 44), S(-2, 58), S(8, 75), S(21, 80), S(28, 86), S(34, 97), S(41, 107), S(61, 105), S(78, 110), S(84, 112), S(109, 113), S(108, 113), S(98, 122)};
  461. const int queen mobility[] = {S(66, 1233), S(75, 710), S(92, 106), S(97, 50), S(105, 20), S(123, -82), S(120, -90), S(114, -20), S(112, -27), S(114, 2), S(113, 22), S(103, 69), S(91, 99), S(92, 123), S(93, 135), S(82, 155), S(87, 159), S(91, 176), S(100, 183), S(88, 200), S(95, 202), S(115, 195), S(131, 213), S(173, 185), S(178, 184), S(273, 160), S(361, 82), S(242, 192)};
  462.  
Advertisement
Add Comment
Please, Sign In to add comment