Итеративное углубление

Также известно как: Поиск с итеративным углублением

Стратегия, повторяющая поиск с растущими ограничениями, чтобы всегда иметь завершённый результат.

Объяснение

Итеративное углубление заставляет сначала выполнить поиск с небольшим ограничением, а затем повторять анализ с постепенно увеличивающимися границами. В шахматах глубина обычно измеряется в полуходах, где один полуход является ходом одной стороны.

Сначала это кажется расточительным, поскольку близкие к началу позиции посещаются многократно. Однако ранние итерации дают ценную информацию: предварительный лучший ход, главный вариант, то есть линию, считающуюся лучшей в данный момент, сохранённые результаты и данные для . Исследование перспективных вариантов первыми в следующей итерации часто позволяет быстрее прекращать больше ветвей и компенсирует значительную часть повторной работы.

Самое очевидное практическое преимущество состоит в управлении временем. Если часы вынуждают движок остановиться во время более глубокой итерации, у него всё равно остаётся полный результат предыдущей. Ему не приходится рисковать всем ради поиска, который может остаться незавершённым.

Итеративное углубление не означает расширение только одной предпочтительной линии. Каждая итерация снова рассматривает начальную позицию с большей границей, хотя селективные методы могут назначать разные локальные глубины внутри дерева. Оно также отодвигает , но не устраняет его.

Употребление и контекст

Интерфейсы часто показывают глубину текущей итерации, но большее число само по себе не доказывает, что два разных движка выполнили сопоставимую работу.

Распространённые заблуждения

Бесполезное повторение

Предыдущая работа предоставляет порядок ходов, главный вариант и сохранённые сведения поиска, поэтому следующая итерация фактически не начинается с нуля.

Углубление и селективное расширение

Итеративное углубление повышает общую границу между проходами, а расширение добавляет локальный поиск в отдельных линиях.

Источники

  1. 1.Depth-first iterative-deepening: An optimal admissible tree search, Artificial Intelligence / Elsevier
  2. 2.Iterative Deepening, Chess Programming Wiki
  3. 3.search.cpp, Stockfish

Связанные термины

© 2026 MindZug