Что я хотел знать, так это то, чего мне следует ожидать?
Это немного сложно понять только на основе предоставленной вами информации. Было бы полезно, если бы вы могли описать, как вы реализовали A *, или если вы профилировали свое приложение и нуждались в помощи в определенных областях, которые были медленными.
Следует отметить одну вещь, которая, вероятно, ускорит ваше среднее время решения: Половина начальных позиций любой головоломки n-плитки никогда не приведет к решению, поэтому вы можете сразу же исключить некоторые конфигурации очень быстро. Например, вы не можете решить головоломку из 8 плиток, которая выглядит следующим образом:
1 2 3
4 5 6
8 7 .
Чтобы понять почему, обратите внимание, что, поскольку пробел должен сместиться обратно туда, где он начался, общее количество ходов «вверх» / «вниз» должно быть одинаковым, как и общее количество «влево» / «вправо» "двигается. Это означает, что общее количество ходов должно быть четным.
Но транспозиция 7/8 здесь - один ход от стартовой головоломки, без изменения пустой позиции! Так что эта головоломка не может быть решена. (Однако, если бы мы сделали две транспонирования, то это было бы снова разрешимо.)