Алгоритм генерации логических головоломок в современных играх может включать несколько этапов: 1
- Создание головоломки. 1 Генератор располагает в случайных квадратах числа, например от двух до пяти. 1 Этот процесс не всегда создаёт решение, но он довольно быстрый, поэтому для генерации уровня его могут повторить несколько раз. 1
- Оценка сложности. 1 Головоломке присваивают оценку интересности и сложности. 1 Чем больше ходов требуется для решения головоломки, тем она сложнее. 1 Также учитывается количество допустимых ходов, которые есть у игрока. 1
- Оптимизация. 1 Оптимизатор создаёт пул, в котором содержится несколько вариантов головоломки. 1 На каждой итерации он выбирает из пула одну головоломку и выполняет её мутацию. 1 Мутация удаляет все точки, а затем немного изменяет числа. 1 Можно применить к полю одновременно несколько мутаций. 1
- Добавление точек. 1 Затем в головоломку добавляют достаточное количество точек, чтобы она снова стала решаемой. 1
- Повторный запуск солвера. 1 Солвер отслеживает глубину дерева решений, частоту необходимости разных видов правил и ширину дерева решений в разные моменты времени. 1 Головоломка оценивается на основании определённых критериев. 1
- Добавление новой головоломки. 1 В пул добавляется новая головоломка. 1
Для генерации головоломок также используют алгоритмы возврата, метод грубой силы или генерацию на основе шаблонов. 4