Как научиться решать сложные судоку


Как решать судоку - способы, методы и стратегия

Содержание статьи

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

Правила судоку

Данная головоломка занимает мало места, в отличие от сканвордов, кроссвордов и так далее. Игровое поле, состоящее из 81 квадратов, ячейки разбиты на малые блоки, размером 3*3. Его можно легко уместить на листке бумаги. Задание выглядит в виде выборочно заполненных клеток, которые необходимо дополнить значениями и заполнить всю табличку. В судоку правила игры очень просты и позволяют исключить множественные решения. В каждой строке или столбце проставляются цифры от 1 до 9. Также значения не повторяются в рамках одного малого блока.

Как играть и выигрывать судоку

Судоку (и его предшественники) играли уже более ста лет. Когда он только появился, людям приходилось решать головоломки, используя только свой разум. Теперь у нас есть компьютеры! (Хорошо, так что большинство людей все еще просто думают ...)

В этой статье вы узнаете, как играть и выигрывать судоку. Но что еще более важно, вы узнаете, как использовать машинное обучение, чтобы легко решать любую головоломку судоку. Кому нужно думать, если вы можете позволить компьютеру думать за вас.😉

Питер Норвиг разработал элегантную программу с использованием Python для победы в судоку с использованием распространения ограничений и поиска. Решение Норвига считается классическим и часто упоминается, когда люди разрабатывают собственный код для игры в судоку. Изучив судоку и некоторые стратегии, я пошагово разберу код Норвига, чтобы вы могли понять, как он работает.

Что такое судоку?

Судоку - это головоломка с расстановкой чисел, которая бывает нескольких разных типов. Эта статья о самом популярном типе.

Задача состоит в том, чтобы заполнить сетку 9x9 цифрами (1-9) так, чтобы каждый столбец, строка и каждая из девяти подсеток 3x3 (также называемых прямоугольниками) содержали каждую из цифр от 1 до 9. Головоломки начинаются. с некоторыми числами уже в сетке, и вы должны заполнить другие числа.

На изображении ниже из игры Судоку число, которое должно быть в выделенном синим квадрате, не может находиться ни в одном из желтых квадратов, соответствующих столбцу, строке и квадрату 3x3.

Как решать судоку

Решая головоломку судоку, вы должны постоянно делать две вещи.Первое, что вам нужно сделать, это удалить числа из строк, столбцов и полей (подсетки 3x3). Второе, что вам следует сделать, это найти единого кандидата.

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

После исключения номеров можно искать отдельных кандидатов.Это означает найти квадрат, в котором может быть только одно возможное число. В приведенном ниже примере два выделенных желтым квадрата должны содержать 1 и 8 , потому что все остальные цифры удалены, поскольку они уже появляются в столбце, строке или поле квадрата.

Теперь, когда выделены два квадрата

.

Как решить головоломку судоку. Способы решения и помощь.

Определения.

Головоломка Судоку представляет собой сетку из квадратов 9 x 9, разделенных на 9 областей по 3 x 3 квадрата. Каждый квадрат содержит одно число от 1 до 9. Каждая строка, столбец и область 3 x 3 включают эти 9 чисел. Следовательно, каждая строка, столбец и регион, взятые по отдельности, не могут содержать несколько одинаковых значений более одного раза.

Судоку Терминология для этого веб-сайта:

«Сетка » - это головоломка, находящаяся в процессе решения, или решаемая головоломка, или любой тип головоломки, а также пустая головоломка...
" Судоку головоломка " - это неполная сетка, содержащая только одно решение.


Судоку Решение

« строка » представляет собой горизонтальную линию из девяти квадратов.
« столбец » представляет собой вертикальную линию из девяти квадратов.
« область » представляет собой блок размером 3 x 3 квадрата.

« группа » относится к строке, столбцу или региону.

Каждый квадрат принадлежит трем разным группам. Например, центральный квадрат принадлежит к следующим трем группам:

Таким образом, три разные группы квадрата подчиняются одним и тем же ограничениям: каждая из них содержит числа от 1 до 9, которые нельзя использовать. больше чем единожды.

Три группы


Методы решения.

Ниже перечислены основные методы решения головоломок.Другие методы будут добавлены по мере обновления программного обеспечения.

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

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

Чтобы упростить решение головоломки, рекомендуется начинать с решения максимального количества квадратов визуально, чтобы закончить с минимальным количеством кандидатов, которые нужно написать.

Четыре основных метода:

Метод включения
• Визуально или путем чтения кандидатов
Метод исключения
• Визуально или путем чтения кандидатов
Метод эксклюзивными парами
• Читая кандидатов
Множественный выбор
• Путем чтения кандидатов



Метод включения

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

Визуальный подход:
Пример: три группы фиолетового квадрата L4C9 уже включают восемь чисел зеленого цвета: 7,2,3,4,6,1,5 и 9. Таким образом, 8 является единственным решение для этого квадрата.


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

В этой сетке второй квадрат использует решение по включению. Вы можете это найти?

Чтение выделенных кандидатов:
Квадрат, имеющий только одну возможность, естественно, использует эту возможность как свое решение. У фиолетового квадрата L4C9 есть только один кандидат, что подтверждает использованный выше визуальный подход.


Вы нашли второй квадрат ?!

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



Метод исключения

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

Этот метод решается визуально или путем изучения выделенных кандидатов.

Возможны три типа случаев:
• Метод исключения в области
• Метод исключения в строке
• Метод исключения в столбце

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


Метод исключения в области


Сетка подтвержденных уровней № 7218:

Пример, показанный на диаграмме справа, показывает, как число 2 исключено из оранжевой области, за исключением фиолетовая ячейка L4C2.
В результате фиолетовый квадрат - единственная ячейка в этой области, которая принимает значение 2. Таким образом, это решение для этого квадрата.
Глаз должен научиться анализировать числа таким образом, чтобы строить прямую линию.

Сетка подтвержденных уровней № 7218:

Слева выделенные кандидаты в серой области подтверждают, что число 2 присутствует только в этой области в фиолетовом квадрат L4C2.

В этой головоломке второй квадрат принимает решение путем включения. Вы можете это найти? Решение показано ниже.


Метод исключения в столбце

Сетка подтвержденных уровней № 7218:

В примере слева все девятки исключены из квадратов столбца 2, за исключением тех, что находятся в фиолетовой ячейке L7C2.:
Вы также должны иметь привычку осматривать регион.

Сетка подтвержденных уровней № 7218:

Справа, если посмотреть на выделенных кандидатов в сером столбце, число 9 присутствует только в этой группе внутри фиолетового квадрата L7C2.



Метод исключения в строке

Сетка экспертного уровня N ° 10000:

В примере слева все 9 исключены из квадратов строки 2, кроме фиолетовой ячейки L2C7.Здесь глаз должен смотреть на пять зон:
Первые две области, два столбца справа, а также строка 2.

Сетка экспертного уровня № 10000:

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

Вы заметите, что квадрат L2C7 может быть решен, несмотря на шесть возможных вариантов.



Метод исключительных пар

Этот метод требует наблюдения за всеми выделенными кандидатами в сетке и предполагает два предположения.
1-е условие: В группе, если два квадрата содержат одну и ту же пару чисел, эти числа могут быть исключены из других квадратов в этой группе.
2-е условие: Если в результате этого исключения окажется, что в одном квадрате есть только один возможный кандидат, то этот кандидат является решением для квадрата.

Возможны два типа.
• Исключение числа.
• Исключение двух чисел.


Эксклюзивная пара с одним номером

Сетка экспертного уровня № 2616 в процессе решения.

Обратите внимание на столбец 4.

Два зеленых квадрата L3C4 и L9C4 содержат кандидатов 3 и 7. Это единственные два квадрата в этой группе, которые имеют эту пару кандидатов. Следовательно, 3 и 7, естественно, являются решениями для них. два квадрата.
Таким образом, фиолетовая ячейка L1C4 исключает 7.
Как следствие, 6 оказывается единственным выбором для этого квадрата.
Итак, 6 - это решение для L1C4.



Эксклюзивная пара с двумя числами

Сетка экспертного уровня № 8131 в процессе решения.

Проанализировать строку 5.

Два зеленых квадрата, L5C1 и L5C2, содержат кандидатов 4 и 8. Это единственные квадраты в этой группе, которые имеют эту пару кандидатов. Следовательно, 4 и 8 являются решениями для этих двух квадратов.
Таким образом, 4 и 8 удаляются из фиолетового квадрата L5C7. Следовательно, 7 становится единственной возможностью для этого квадрата, поэтому 7 - это решение для L5C7.


Множественный выбор

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

Пример, показанный слева, представляет собой головоломку под названием «Al Escargot». По сей день эта головоломка известна как самая сложная для решения судоку.
Указанные номера головоломки показаны синим цветом. Серый квадрат L8C3 - это первый квадрат, принимающий решение, номер 1, путем исключения.
В этой ситуации обратите внимание на приведенную ниже сетку, которая включает возможных кандидатов.

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

Оказывается, в этом случае необходимо выбрать случайным образом одного из кандидатов одного из квадратов, имеющего наименьшее возможное количество кандидатов.Здесь это 4 или 6 в L2C3, иначе 3 или 4 в L5C3.

Если кто-то нашел способ решить один из представленных здесь квадратов, напишите нам.
Эту технику мы с удовольствием процитируем на сайте.


Методы решения, еще не использованные сайтом

x-exclusives . Включает в себя все такие, как исключительные пары, тройки, четверные исключительные и т. Д.

Перекрещенные решения или решения, называемые уровнем «x».
Пара или один исключающий x может удалить некоторых кандидатов в квадрате «a», фактически не решая его. Однако это может привести к решению другого квадрата «b», связанного с ранее упрощенным квадратом «a» ...

.

Судоку - продвинутые методы

Продвинутые методы

Краткое предупреждение

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

Во избежание информационной перегрузки, я бы порекомендовал вам остановиться здесь и пойти и попрактиковаться в том, что вы уже узнали.

У меня две причины для этого:

  1. В настоящее время у вас достаточно знаний, чтобы решить 95% или более головоломок судоку, опубликованных в газетах, книгах и журналах
  2. Более продвинутые методы, которые следуют ниже, необходимы только для решать сложные головоломки очень высокого уровня
Если вы уже практиковали и освоили все техники до сих пор, или вы просто слишком увлечены этим, чтобы прислушаться к моему предупреждению, то непременно читайте дальше! Некоторые из самых захватывающих логик еще впереди

В разделе:


.

Как решать головоломки судоку - реальные советы и рекомендации (часть 1)

Вот настоящая сетка судоку уровня «для начинающих» от Sudoku.com, которая иллюстрирует несколько ключевых стратегий решения головоломок судоку. Мы пройдем через процесс решения этой головоломки, чтобы наметить некоторые ключевые ходы и мыслительные процессы, которые можно использовать для ее решения.

Ищите «Низко висящие фрукты».

Головоломки судоку можно решить с помощью логического процесса исключения - размещения чисел в соответствующих квадратах на сетке, исходя из того, какие числа уже есть.В этой головоломке есть один квадрат (средний ряд, левый столбец), в котором с самого начала уже размещены 8 из 9 чисел, и только один пустой квадрат. Просто подсчитав числа в квадрате, мы можем увидеть, что единственное отсутствующее число - это число 9.

Итак, мы можем пойти дальше и поместить 9 в этот квадрат. А теперь, прежде чем мы продолжим, давайте поищем больше «низко висящих фруктов» - о, смотрите! Есть ряд (горизонтально проходящий через средний ряд квадратов), в котором уже размещены 8 из 9 чисел! Единственное отсутствующее число - 1, поэтому мы можем поместить и это число.

Теперь сетка судоку выглядит так:

Посмотрите в соседних квадратах

Поместив 9 в квадрат в среднем ряду в левом столбце, мы можем взглянуть на еще один кусочек «низко висящего фрукта» - квадрат. в среднем ряду, средний столбец, в котором уже размещены все, кроме 3, из 9 номеров (размещены числа 1, 2, 4, 5, 7 и 8).

Это означает, что единственные числа, которые все еще нужно разместить в этом квадрате, - это 3, 6 и 9.

Из соседних квадратов слева и снизу мы знаем, как решить этот средний квадрат.Мы знаем, что нам нужно разместить 3, 6 и 9. Посмотрев на соседние квадраты, мы можем увидеть 6 (левый, средний квадрат, верхний ряд) и 3 (нижний, средний квадрат, правый ряд). Это означает, что в верхнем правом углу среднего квадрата мы можем поставить 9 - в процессе исключения мы знаем, что 3 и 6 не могут быть помещены в этот квадрат, поэтому 9 - единственная оставшаяся возможность.

Затем, снова в процессе исключения, мы знаем, куда поместить 3 и 6 в среднем квадрате сетки.Поскольку у квадрата слева уже есть 6 в верхнем ряду, это означает, что верхний ряд среднего квадрата также не может содержать 6 - поэтому в верхнем ряду среднего квадрата мы можем разместить 3. Тогда мы можем поместите тройку в нижний ряд среднего квадрата. Внезапно при поиске «низко висящих фруктов» два квадрата среднего ряда сетки оказываются заполненными.

Головоломки судоку могут быть сложными, но один из первых уроков, которые необходимо усвоить начинающим судоку, заключается в том, что игра часто предлагает несколько простых подсказок.Если вы начнете с «низко висящих фруктов» - самых простых частей головоломки, которые уже дает вам сетка, - вы можете строить из них, чтобы завершить более сложные области.

.

Смотрите также