It seems just the other way arounde from which I thought: KHP is a win vs KAAE, but not KAEE. I have the 2-attackers-vs-defense EGT generator working now, so that I could build KHPKd. (The resulting EGT are 20MB at 1 byte/position, as I confine the attackers to the enemy board half.) This gave the following result:
Code: Select all
mated mate
King captures 0
mates 51722 ( 0.28 sec)
in-1 30190 137125 ( 0.35 sec)
in-2 32338 100376 ( 0.43 sec)
in-3 40776 114091 ( 0.51 sec)
in-4 54486 146382 ( 0.60 sec)
in-5 72731 177029 ( 0.69 sec)
in-6 102150 222172 ( 0.79 sec)
in-7 132398 267745 ( 0.89 sec)
in-8 143822 323397 ( 1.01 sec)
in-9 145760 347313 ( 1.14 sec)
in-10 134970 336270 ( 1.26 sec)
in-11 128800 300744 ( 1.39 sec)
in-12 132386 277681 ( 1.51 sec)
in-13 152048 274138 ( 1.64 sec)
in-14 155373 292446 ( 1.76 sec)
in-15 136581 274273 ( 1.87 sec)
in-16 111988 235924 ( 1.99 sec)
in-17 96766 191702 ( 2.10 sec)
in-18 97728 177591 ( 2.20 sec)
in-19 107940 173119 ( 2.30 sec)
in-20 117918 178749 ( 2.42 sec)
in-21 128966 181677 ( 2.52 sec)
in-22 132438 180296 ( 2.64 sec)
in-23 129573 181116 ( 2.74 sec)
in-24 114151 175852 ( 2.85 sec)
in-25 89317 145878 ( 2.94 sec)
in-26 55831 106220 ( 3.03 sec)
in-27 27474 66353 ( 3.11 sec)
in-28 10668 35445 ( 3.18 sec)
in-29 5516 18879 ( 3.25 sec)
in-30 4801 11632 ( 3.31 sec)
in-31 6032 9075 ( 3.37 sec)
in-32 9283 11226 ( 3.43 sec)
in-33 14764 17834 ( 3.50 sec)
in-34 19047 25279 ( 3.56 sec)
in-35 21480 28998 ( 3.63 sec)
in-36 22573 31696 ( 3.71 sec)
in-37 27889 35574 ( 3.78 sec)
in-38 32828 42929 ( 3.85 sec)
in-39 32261 44926 ( 3.92 sec)
in-40 25743 41946 ( 3.98 sec)
in-41 20003 36512 ( 4.06 sec)
in-42 13956 30994 ( 4.12 sec)
in-43 10522 23050 ( 4.20 sec)
in-44 7939 17919 ( 4.26 sec)
in-45 5530 12444 ( 4.33 sec)
in-46 4171 9586 ( 4.39 sec)
in-47 2831 6746 ( 4.45 sec)
in-48 1812 4553 ( 4.51 sec)
in-49 1643 2907 ( 4.56 sec)
in-50 1513 2586 ( 4.64 sec)
in-51 1172 2053 ( 4.70 sec)
in-52 917 1779 ( 4.77 sec)
in-53 735 1111 ( 4.83 sec)
in-54 559 902 ( 4.89 sec)
in-55 602 898 ( 4.95 sec)
in-56 513 1225 ( 5.01 sec)
in-57 572 770 ( 5.07 sec)
in-58 390 737 ( 5.13 sec)
in-59 278 456 ( 5.19 sec)
in-60 264 380 ( 5.25 sec)
in-61 215 382 ( 5.31 sec)
in-62 202 284 ( 5.37 sec)
in-63 154 204 ( 5.43 sec)
in-64 95 170 ( 5.49 sec)
in-65 40 90 ( 5.54 sec)
in-66 13 74 ( 5.61 sec)
in-67 3 10 ( 5.67 sec)
in-68 0 3 ( 5.73 sec)
won: 6099923 (29.1%)
lost: 3166150 (15.1%)
avg: 18.5 moves
Then I took statistics by defensive composition. (The left column is 2*DTM+6; code 0 here means draw, code 2 illegal (King stare), code 4 broken (coinciding pieces).)
Code: Select all
- E EE A AE AEE AA AAE AAEE
0. 3032 45138 260060 20886 382286 2852836 36858 1131980 5642106
2. 15504 103360 294576 60542 401316 1136514 90408 594624 1669176
4. 2745 29705 119931 19678 185682 696852 48780 426830 1527270
6. 2108 980 2038 902 3242 7184 2678 10368 22222
8. 4442 1848 2168 1544 2210 4364 1608 4268 7738
10. 8335 3745 3914 3291 1736 2103 2360 3318 3536
12. 9168 7360 5634 6826 2843 2232 3088 2552 1073
14. 6989 11383 7895 12321 5216 3110 5006 2004 562
16. 2144 17608 9006 20329 8239 4256 8243 1994 912
18. 208 26741 11758 27028 13750 5537 13845 2365 918
20. 0 35403 13731 27952 20182 7842 22721 3959 608
22. 0 32839 14709 20698 28684 7622 32529 6235 506
24. 0 22876 14702 13172 38070 7249 39299 9654 738
26. 0 13305 13219 5587 47930 6684 33757 13888 600
28. 0 7052 10431 1826 61548 7797 23038 16451 657
30. 0 4948 8971 390 76985 8984 13462 17503 1143
32. 0 5981 8763 22 93847 11130 10749 20315 1241
34. 0 5485 9746 6 93025 13620 9196 23027 1268
36. 0 4304 11358 0 66701 17082 9726 25962 1448
38. 0 1856 13735 0 39919 17192 8158 29668 1460
40. 0 552 16050 0 25761 14868 6025 32220 1290
42. 0 118 18689 0 23396 14172 2676 37156 1521
44. 0 52 21706 0 23058 14410 906 45825 1983
46. 0 44 24888 0 20402 14422 134 56059 1969
48. 0 30 26486 0 15610 13899 0 70806 2135
50. 0 12 24404 0 10761 12071 0 82408 2782
52. 0 0 18021 0 6068 10398 0 90628 4458
54. 0 0 12392 0 1745 8392 0 85502 6120
56. 0 0 8604 0 26 7162 0 67362 6163
58. 0 0 4937 0 46 5371 0 40318 5159
60. 0 0 2154 0 34 4680 0 16805 3801
62. 0 0 1245 0 64 3440 0 3784 2135
64. 0 0 1785 0 114 2431 0 252 934
66. 0 0 2680 0 86 1702 0 135 198
68. 0 0 4407 0 80 1385 0 109 51
70. 0 0 7337 0 28 1797 0 93 28
72. 0 0 11331 0 36 3278 0 87 32
74. 0 0 13494 0 36 5406 0 80 31
76. 0 0 13745 0 76 7490 0 72 97
78. 0 0 13327 0 46 9037 0 48 115
80. 0 0 16557 0 62 11087 0 24 159
82. 0 0 18704 0 38 13940 0 12 134
84. 0 0 15195 0 10 16823 0 0 233
86. 0 0 8528 0 6 16694 0 0 515
88. 0 0 3814 0 0 15620 0 0 569
90. 0 0 1190 0 0 12293 0 0 473
92. 0 0 160 0 0 9804 0 0 558
94. 0 0 0 0 0 7452 0 0 487
96. 0 0 0 0 0 5293 0 0 237
98. 0 0 0 0 0 3960 0 0 211
100. 0 0 0 0 0 2632 0 0 199
102. 0 0 0 0 0 1699 0 0 113
104. 0 0 0 0 0 1596 0 0 47
106. 0 0 0 0 0 1465 0 0 48
108. 0 0 0 0 0 1151 0 0 21
110. 0 0 0 0 0 908 0 0 9
112. 0 0 0 0 0 734 0 0 1
114. 0 0 0 0 0 558 0 0 1
116. 0 0 0 0 0 596 0 0 6
118. 0 0 0 0 0 499 0 0 14
120. 0 0 0 0 0 567 0 0 5
122. 0 0 0 0 0 389 0 0 1
124. 0 0 0 0 0 276 0 0 2
126. 0 0 0 0 0 262 0 0 2
128. 0 0 0 0 0 210 0 0 5
130. 0 0 0 0 0 201 0 0 1
132. 0 0 0 0 0 152 0 0 2
134. 0 0 0 0 0 89 0 0 6
136. 0 0 0 0 0 37 0 0 3
138. 0 0 0 0 0 10 0 0 3
140. 0 0 0 0 0 2 0 0 1
lost 33394 204522 473608 141894 731716 416798 249204 823316 91698
won 51926 350872 934869 222590 1398547 2816530 374947 1979539 3199113
all 54675 382725 1148175 243000 1701000 5103000 425250 2976750 8930250
The last 3 lines give the number of positions lost with the weak side to move, won with the strong side to move, and the total (including all broken and illegal). The full-defense column has a clear draw signature, with only ~1% of the positions lost. For generally won end-games this is typically around 50%. For AEE this statistic is 8%, however, and for AAE 28%, so these are neither dead draws, nor sure wins.
To get a better insight I split out the stats by Pawn rank, as it is well-known that a 9th-rank Pawn in Xiangqi is practically worthless. I counted the number of 0 codes here (draws with either side to move):
Code: Select all
Draws by Pawn rank:
rank - E EE A AE AEE AA AAE AAEE
9 4 583 86163 202 105446 480540 362 231812 843616
8 0 322 1332 162 2744 234558 378 193819 851084
7 0 626 3296 148 4828 223893 308 137534 746544
6 0 286 1198 108 1773 301109 239 3512 909646
5 0 466 2196 112 2655 353568 236 5054 861077
total 10935 76545 229635 48600 340200 1020600 85050 595350 1786050
The 'total' line gives the number of positions with the Pawn on that rank including all illegal and broken ones. Aparently even a last-rank Pawn is still useful to defeat a single Elephant (which Horse alone cannot do). KHPKAEE seems a draw no matter where the Pawn is; that the number of puredraws is only ~30% of the total number of positios is likely because so many positions are illegal or won with the strong side to move because of a hanging defender (both KHPKAE and KHPKEE seem to be general wins, so such captures are usually winning). Even against full defense only about half of the positions are not pure draws. KHPKAAE seems to be won, however, when the Paw is still in front of the Palace!
There is one caveat here: the generator is a bit pessimistic, and insists on winning without sacrifice. So as soon as the weak side captures something, (which would convert to another table), it assumes a draw. This was rigurously true when there was only a single attacker, but wrong now there are two. This for instance causes the 4 draws in KHPK, where the bare King forks a Pawn and a Horse (Ke8, Pe9, Hf8), which in reality of course are still wins, because you rescue the Horse, and KHK is a sure win. This discards winning methods where you trade the Pawn for some defenders. Against KAAE or KAEE (the only cases where this could be needed) you would have to trade it for two defenders, however, and leave no Elephants, which does seem asking for a lot. I will investigate it further, though.