Dann Corbit wrote:Sure, but I think it would be difficult to generate a lot more promotion choices than that setup.
You can certainly add a few.
[D]rnbqqbnr/PPPPPPPP/8/3ppp2/3pkp2/3N1N2/4K3/8 w - - 0 1
If the goal is to test your move generator, then no problem. If the goal is to try to blow up your search, change the two white Knights to Rooks, as the current position is Mate in 1 (Nf2).
[D]rnbqqbnr/PPPPPPPP/8/3ppp2/3pkp2/3R1R2/4K3/8 w - - 0 1
I let Stockfish think for three minutes (on a very slow machine, relatively) and it still couldn't find mate, although the score is +51.75.
jm
It is a mate in 8 according to Chest:
rnbqqbnr/PPPPPPPP/8/3ppp2/3pkp2/3R1R2/4K3/8 w - - acn 48259749; acs 81; bm fxe8=Q; ce 32752; dm 8; pv fxe8=Q Rxh7 Rxf4+ Kxf4 Rxd4+ e4 cxb8=Q+ Rxb8 axb8=Q+ Qc7 Qxc7+ Kg4 Qg6+ Kh4 Qh2#;
Your version of the position was also much prettier than mine.
Interesting. Well, using 2.1.1 on a 32-bit machine, I was getting about 365Kns and no mate was announced as of depth 15. And even though I waited for several more minutes, this was the last output I got:
perft could be rigged to track the maximum number of moves from a position in a way that has some practical meaning. Of course it can only cover a tiny subset of the search space, but it would be interesting to know from the perft(13) test what the maximum number of moves seen going out to depth 13 from the opening position. It would probably be either reassuring or alarming from the point of view of programs which have fixed size move lists.
You are not likely to get positions with 80, 90, 100+ legal moves (in a standard chess program) unless you specifically set it up. To have a wide open position and MAINTAIN it without captures is very unlikely in a modern chess program which tries very hard not to spend much time on unlikely positions. So as soon as the position gets open the capture tree tends to be explored first and this keeps things sane.
I set Komodo up to notice the most move rich position and it had a difficult time finding positions in it's normal search that exceeded 60 moves. It had to do an 18 ply search to find the first position with over 60 moves for one side. It did not try to count moves in positions where there was a cutoff as most of those don't get generated anyway. Also, most under-promotions do not get counted.
Here is a position found during a 23 ply search with 65 moves possible for white:
[d]r1bq1rk1/pp2bppp/2n1pn2/7Q/3N4/2NBP3/PP1B1PPP/R3K2R w - - 0 1[/d]
A couple of things I noticed is that first of all the position does not look that complicated and I was surprised to see a bishop that was not very mobile. But the knights were highly mobile and together have a non-trivial number of legal moves.