Солверы и решения

Онлайн-решатель слайдинг-пазла — соберите любую доску 3×3, 4×4 и 5×5

Введите свою доску, нажмите «Решить» — и получите кратчайшую последовательность ходов. Бесплатно, в браузере, без загрузки. Ниже под инструментом — шесть алгоритмов, на которых может работать решатель слайдинг-пазла, и какой из них использует именно этот.

Обновлено 2026-07-27 8 мин чтения

Решатель пятнашек

Нажмите «Перемешать» для случайной доски или «Изменить», чтобы ввести свою. «Решить» проигрывает ходы по шагам. Решения 3×3 — оптимальные.

Как пользоваться решателем

Инструмент выше оптимально решает любую решаемую доску 3×3 или 4×4 — ответ, который он возвращает, это кратчайшая возможная последовательность ходов, а не просто рабочая.

  1. Нажмите Изменить и введите свою доску: пронумеруйте плитки так, как они должны читаться в собранном пазле (левая верхняя — 1), и расставьте их туда, где они стоят сейчас. Решаете пазл с картинкой — из игры, фотоприложения, деревянной игрушки? Сначала мысленно пронумеруйте собранную картинку слева направо, сверху вниз.
  2. Нажмите Решить. Список ходов появляется мгновенно для 3×3 и за считанные мгновения для 4×4.
  3. Повторяйте ходы на своём реальном пазле, по одному.

Если решатель говорит, что доска нерешаема, это не баг — ровно половину всех расстановок собрать невозможно, и никакая последовательность допустимых ходов их не исправит. Хотите освоить технику, а не зачитывать ходы? Метод для человека — здесь.

Как работает решатель слайдинг-пазла — сравнение шести алгоритмов

Если вы реализуете солвер слайдинг-пазла и не знаете, какой алгоритм выбрать, эта статья сравнивает шесть известных по скорости, памяти, сложности кода и удобному размеру доски. Ответы разные для 3×3, 4×4 и 5×5.

1. Breadth-first search (BFS)

Самый глупый корректный алгоритм. Исследовать состояния по уровням, пока не найдёте цель.

2. A* с манхэттенским расстоянием

Первый настоящий алгоритм. Та же структура, что у BFS, но состояния достаются из приоритетной очереди, упорядоченной по f = g + h, где h — это манхэттенская эвристика.

3. A* с Manhattan + linear conflict

Добавьте 2 хода в эвристику за каждую пару плиток в одной строке, обе принадлежащих этой строке, но в неправильном порядке (аналогично для столбцов). Им придётся разойтись, что Manhattan не видит.

4. IDA* с Manhattan + linear conflict

Iterative-deepening A*. Делает DFS с ограничением по f-стоимости, поднимая порог каждую итерацию. Меняет память на время через повторное исследование.

5. IDA* с walking distance

Walking distance — более плотная эвристика. Предварительно посчитайте, для каждой конфигурации плиток проекции только на строки, минимальное число операций «своп-строки», чтобы поставить каждую плитку в правильную строку. То же для столбцов. Сложите.

Она ловит то, чего Manhattan не видит: плитки в одной строке, «дерущиеся» за один слот.

6. IDA* с аддитивными непересекающимися базами шаблонов

Сильнейшая известная эвристика для слайдинг-пазлов. Разбейте плитки на непересекающиеся группы (распространённое разбиение 15-puzzle — 7+8 или 5+5+5). Для каждой группы предварительно посчитайте стоимость перестановки плиток группы в их целевые позиции по всем возможным конфигурациям этой группы. Во время поиска сложите вклад каждой группы.

Сводные рекомендации

Если вы пишете солвер сегодня:

А машинное обучение?

Разумный вопрос в 2026 году. Нейросетевые эвристики изучают как минимум с 2014 года, и они могут давать быстрые эвристики для слайдинг-пазлов. Подвох в том, что они обычно не допустимы — могут переоценивать, что означает, что получившийся алгоритм больше не гарантирует оптимальность. Для разработчиков приложений, которым нужны гарантированно оптимальные решения для калибровки сложности, классические базы шаблонов остаются правильным инструментом.

Для исследовательского интереса базы шаблонов, обученные нейросетью, дают небольшое ускорение на самых сложных 15-puzzle инстансах. Полезно для академических статей, маргинально для отгружаемого ПО.

Что попадает в реальное приложение

Отгружаемое мобильное приложение, которому нужен солвер для подсказок, почти всегда приходит к:

Это правильный прагматичный стек для спокойного телефонного приложения. Кнопка подсказки в Slide Puzzle работает именно так.