Учитывая, что глубина рекурсии может быть неизвестна, вы можете остановиться до разумного предела, например, за 10 ходов и/или игнорировать деревья с более низким значением полезности. Добавляя дополнительные ограничения, такие как эти, вы также можете гарантировать, что решение будет найдено быстро, без необходимости интенсивно оптимизировать.
Как отражено другими, это звучит так, будто у вас, вероятно, есть ошибка при большом количестве итераций. Можно было бы подрезать из различных правил или выбрать другую стратегию поиска, чтобы уменьшить число итераций, такие как iterative deepenning, A* или, возможно, Genetic Algorithm для удовольствия,
Было бы гораздо лучше, чтобы вернуть результат даже если он не идеален, а не терпит неудачу после слишком глубокого поиска дерева.
Удачи.
Вы уверены, что у вас не просто пустая рекурсия? вам нужно будет отправить код или более подробную информацию для ответа. – twolfe18
«1 000 000 раз для каждого узла» - звучит немного чрезмерно ... –